Files
PINA/pina/geometry/difference_domain.py
Dario Coscia 982af4a04d Solving problems related to Geometry (#118)
* fix and add tests
* minor fix on domain classes

---------

Co-authored-by: Dario Coscia <dariocoscia@cli-10-110-0-208.WIFIeduroamSTUD.units.it>
Co-authored-by: Dario Coscia <dariocoscia@dhcp-040.eduroam.sissa.it>
2023-11-17 09:51:29 +01:00

29 lines
679 B
Python

"""Module for Location class."""
from .location import Location
from ..label_tensor import LabelTensor
class Difference(Location):
"""
"""
def __init__(self, first, second):
self.first = first
self.second = second
def sample(self, n, mode='random', variables='all'):
"""
"""
assert mode == 'random', 'Only random mode is implemented'
samples = []
while len(samples) < n:
sample = self.first.sample(1, 'random')
if not self.second.is_inside(sample):
samples.append(sample)
import torch
return LabelTensor(torch.cat(samples), labels=['x', 'y'])