diff --git a/LDDsimulation.py b/LDDsimulation.py index ce9bdb3eba931d654ae7173b4aef873c64809f29..5f2a8541fdf1f20216cdc06f5208ff6272ff1460 100644 --- a/LDDsimulation.py +++ b/LDDsimulation.py @@ -82,6 +82,8 @@ class LDDsimulation(object): ## Private variables # The number of subdomains are counted by self.init_meshes_and_markers() self._number_of_subdomains = 0 + # variable to check if self.set_parameters() has been called + self._parameters_set = False # list of objects of class DomainPatch initialised by self._init_subdomains() self.subdomain = [] @@ -92,7 +94,7 @@ class LDDsimulation(object): interface_def_points: tp.List[tp.List[df.Point]],# adjacent_subdomains: tp.List[np.ndarray],# mesh_resolution: float,# - viscosity: tp.Dict[int, float],# + viscosity: tp.Dict[int, tp.List[float]],# porosity: tp.Dict[int, float],# L: tp.Dict[int, tp.List[float]],# lambda_param: tp.Dict[int, tp.List[float]])-> None: @@ -107,10 +109,18 @@ class LDDsimulation(object): self.porosity = porosity self.L = L self.lambda_param = lambda_param + self._parameters_set = True def initialise(self) -> None: + """ initialise LDD simulation + + Public method to call all the init methods of the LDD simulation. + """ + if not self._parameters_set: + raise RuntimeError("You forgott to run self.set_parameters(**kwds)") self._init_meshes_and_markers() self._init_interfaces() + self._init_subdomains() ## Private methods @@ -245,7 +255,7 @@ class LDDsimulation(object): mesh = self.mesh_subdomain[subdom_num],# viscosity = self.viscosity[subdom_num],# porosity = self.porosity[subdom_num],# - interfaces = interface_list,# + has_interface = interface_list,# L = self.L[subdom_num],# lambda_param = self.lambda_param[subdom_num]# ))