Skip to content
Snippets Groups Projects
Commit 28ef3afa authored by David Seus's avatar David Seus
Browse files

add _init_subdomains() to self.initialise() and add defence against forgetting...

add _init_subdomains() to self.initialise() and add defence against forgetting to run self.set_parameters
parent a0e4cdbe
No related branches found
No related tags found
No related merge requests found
......@@ -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]#
))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment