From e0289916b602489dbb665687325c9f6492768ddb Mon Sep 17 00:00:00 2001 From: David Seus <david.seus@ians.uni-stuttgart.de> Date: Wed, 20 Mar 2019 17:34:22 +0100 Subject: [PATCH] add domainPatch.write_pressure_to_interface method --- domainPatch.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/domainPatch.py b/domainPatch.py index 0a5b016..ad563c4 100644 --- a/domainPatch.py +++ b/domainPatch.py @@ -166,13 +166,21 @@ class DomainPatch(df.SubDomain): """ save the interface values of self.pressure to all neighbouring interfaces""" if self.isRichards: for ind in has_interface: - interface[ind].write_dofs(from_function = self.pressure, # - interface_dofs = dofs_on_interface1,# + interface[ind].write_dofs(from_function = self.pressure['wetting'], # + interface_dofs = self._dof_indices_of_interface[ind]['wetting'],# dof_to_vert_map = self.dof2vertex['wetting'],# local_to_parent_vertex_map = self.parent_mesh_index,# phase = 'wetting',# subdomain_ind = self.subdomain_index) else: + for ind in has_interface: + for phase in ['wetting', 'nonwetting']: + interface[ind].write_dofs(from_function = self.pressure[phase], # + interface_dofs = self._dof_indices_of_interface[ind][phase],# + dof_to_vert_map = self.dof2vertex[phase],# + local_to_parent_vertex_map = self.parent_mesh_index,# + phase = phase,# + subdomain_ind = self.subdomain_index) def govering_problem(self, phase: str, iter_num: int = 0) -> tp.Dict[str, fl.Form]: @@ -300,7 +308,7 @@ class DomainPatch(df.SubDomain): self.ds = df.Measure('ds', domain = self.mesh, subdomain_data = self.boundary_marker) def _calc_dof_indices_of_interfaces(self): - """ calculate dof indices """ + """ calculate dof indices of each interface """ V = self.function_space marker = self.boundary_marker for ind in has_interface: -- GitLab