Skip to content

Commit 294dbfe

Browse files
committed
Fix for new biv geometry
1 parent d5b83e3 commit 294dbfe

1 file changed

Lines changed: 25 additions & 1 deletion

File tree

demo/time_dependent_land_circ_biv.py

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,30 @@
4646
comm=comm,
4747
folder=geodir,
4848
)
49-
geo.mesh.geometry.x[:] *= 3e-2
49+
# Scale the geometry to meters and adjust the size so that LV and RV volumes are reasonable
50+
geo.mesh.geometry.x[:] *= 1.4e-2
51+
52+
# Now we need to redefine the markers to have so that facets on the endo- and epicardium combine both
53+
# free wall and the septum.
54+
55+
markers = {"ENDO_LV": [1, 2], "ENDO_RV": [2, 2], "BASE": [3, 2], "EPI": [4, 2]}
56+
marker_values = geo.ffun.values.copy()
57+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["LV_ENDO_FW"][0]))] = markers["ENDO_LV"][0]
58+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["LV_SEPTUM"][0]))] = markers["ENDO_LV"][0]
59+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["RV_ENDO_FW"][0]))] = markers["ENDO_RV"][0]
60+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["RV_SEPTUM"][0]))] = markers["ENDO_RV"][0]
61+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["BASE"][0]))] = markers["BASE"][0]
62+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["LV_EPI_FW"][0]))] = markers["EPI"][0]
63+
marker_values[np.isin(geo.ffun.indices, geo.ffun.find(geo.markers["RV_EPI_FW"][0]))] = markers["EPI"][0]
64+
65+
geo.markers = markers
66+
ffun = dolfinx.mesh.meshtags(
67+
geo.mesh,
68+
geo.ffun.dim,
69+
geo.ffun.indices,
70+
marker_values,
71+
)
72+
geo.ffun = ffun
5073

5174
geometry = pulse.HeartGeometry.from_cardiac_geometries(geo, metadata={"quadrature_degree": 6})
5275

@@ -182,6 +205,7 @@ def solve_beat(times, states, dt, p, V_index, Ca_index, Vs, Cais, Tas):
182205
if comm.rank == 0:
183206
np.save(state_file, y)
184207

208+
comm.barrier()
185209
y = np.load(state_file)
186210

187211

0 commit comments

Comments
 (0)