Skip to content

Commit

Permalink
Some doc updates and fix for mass solve in FSI; added FSI-0D test
Browse files Browse the repository at this point in the history
  • Loading branch information
Marc Hirschvogel committed Jan 13, 2024
1 parent ba688c4 commit 6c5873f
Show file tree
Hide file tree
Showing 69 changed files with 275 additions and 88 deletions.
3 changes: 2 additions & 1 deletion joss/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ bibliography: paper.bib

# Summary

Ambit is an open-source software tool written in Python for parallel multi-physics simulations focusing on -- but not limited to -- cardiac mechanics. Amongst others, it contains re-implementations and generalizations of methods developed by the author for his PhD thesis [@hirschvogel2019disspub]. Ambit makes use of the open-source finite element library [FEniCS/dolfinx](https://fenicsproject.org) [@logg2012-fenics] along with the linear algebra package [PETSc](https://petsc.org) [@balay2022-petsc]. It is constantly updated to ensure compatibility with a recent dolfinx development version, hence guaranteeing a state-of-the-art finite element and linear algebra backend.
Ambit is an open-source multi-physics finite element solver written in Python, supporting solid and fluid mechanics, fluid-structure interaction (FSI), and lumped-parameter models. It is tailored towards solving problems in cardiac mechanics, but may also be used for more general nonlinear finite element analysis. Ambit makes use of the open-source finite element library [FEniCS/dolfinx](https://fenicsproject.org) [@logg2012-fenics] along with the linear algebra package [PETSc](https://petsc.org) [@balay2022-petsc], hence guaranteeing a state-of-the-art finite element and linear algebra backend.
The code encompasses re-implementations and generalizations of methods developed by the author for his PhD thesis [@hirschvogel2019disspub] and beyond. It is constantly updated to ensure compatibility with a recent dolfinx development version.

Ambit is designed such that the user only needs to provide input files that define parameters through Python dictionaries, hence no programming or in-depth knowledge of any library-specific syntax is required.

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ requires = ["setuptools>=61.0.0", "wheel"]

[project]
name = "ambit-fe"
version = "1.2.2"
version = "v1.2.3"
description = "A FEniCS-based cardiovascular multi-physics solver"
authors = [{name = "Marc Hirschvogel", email = "[email protected]"}]
license = {file = "LICENSE"}
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ale/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ale/ale_kinematics_constitutive.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ale/ale_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ale/ale_material.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ale/ale_variationalform.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/ambit_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/base.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/boundaryconditions.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
4 changes: 2 additions & 2 deletions src/ambit_fe/coupling/fluid_ale_flow0d_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down Expand Up @@ -465,7 +465,7 @@ def solve_initial_state(self):
utilities.print_status("Setting forms and solving for consistent initial acceleration...", self.pb.comm, e=" ")

# weak form at initial state for consistent initial acceleration solve
weakform_a = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old
weakform_a = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old - self.pb.pbf0.power_coupling_old

weakform_lin_aa = ufl.derivative(weakform_a, self.pb.pbf.a_old, self.pb.pbf.dv) # actually linear in a_old

Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/fluid_ale_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/fluid_flow0d_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
39 changes: 30 additions & 9 deletions src/ambit_fe/coupling/fsi_flow0d_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down Expand Up @@ -415,23 +415,44 @@ def initialize_nonlinear_solver(self):

def solve_initial_state(self):

# consider consistent initial acceleration
if (self.pb.pbf.fluid_governing_type == 'navierstokes_transient' or self.pb.pbf.fluid_governing_type == 'stokes_transient') and self.pb.pbf.restart_step == 0:
# consider consistent initial acceleration of solid
if self.pb.pbs.timint != 'static' and self.pb.restart_step == 0:

ts = time.time()
utilities.print_status("Setting forms and solving for consistent initial acceleration...", self.pb.comm, e=" ")
utilities.print_status("Setting forms and solving for consistent initial solid acceleration...", self.pb.comm, e=" ")

# weak form at initial state for consistent initial acceleration solve
weakform_a = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old
weakform_a_solid = self.pb.pbs.deltaW_kin_old + self.pb.pbs.deltaW_int_old - self.pb.pbs.deltaW_ext_old + self.pb.work_coupling_solid_old

weakform_lin_aa = ufl.derivative(weakform_a, self.pb.pbf.a_old, self.pb.pbf.dv) # actually linear in a_old
weakform_lin_aa_solid = ufl.derivative(weakform_a_solid, self.pb.pbs.a_old, self.pb.pbs.du) # actually linear in a_old

# solve for consistent initial acceleration a_old
if self.pb.io.USE_MIXED_DOLFINX_BRANCH:
res_a, jac_aa = fem.form(weakform_a, entity_maps=self.pb.pbf.io.entity_maps), fem.form(weakform_lin_aa, entity_maps=self.pb.pbf.io.entity_maps)
res_a_solid, jac_aa_solid = fem.form(weakform_a_solid, entity_maps=self.pb.io.entity_maps), fem.form(weakform_lin_aa_solid, entity_maps=self.pb.io.entity_maps)
else:
res_a, jac_aa = fem.form(weakform_a), fem.form(weakform_lin_aa)
self.solnln.solve_consistent_ini_acc(res_a, jac_aa, self.pb.pbf.a_old)
res_a_solid, jac_aa_solid = fem.form(weakform_a_solid), fem.form(weakform_lin_aa_solid)
self.solnln.solve_consistent_ini_acc(res_a_solid, jac_aa_solid, self.pb.pbs.a_old)

te = time.time() - ts
utilities.print_status("t = %.4f s" % (te), self.pb.comm)

# consider consistent initial acceleration of fluid
if (self.pb.pbf.fluid_governing_type == 'navierstokes_transient' or self.pb.pbf.fluid_governing_type == 'stokes_transient') and self.pb.restart_step == 0:

ts = time.time()
utilities.print_status("Setting forms and solving for consistent initial fluid acceleration...", self.pb.comm, e=" ")

# weak form at initial state for consistent initial acceleration solve
weakform_a_fluid = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old - self.pb.power_coupling_fluid_old - self.pb.pbf0.power_coupling_old

weakform_lin_aa_fluid = ufl.derivative(weakform_a_fluid, self.pb.pbf.a_old, self.pb.pbf.dv) # actually linear in a_old

# solve for consistent initial acceleration a_old
if self.pb.io.USE_MIXED_DOLFINX_BRANCH:
res_a_fluid, jac_aa_fluid = fem.form(weakform_a_fluid, entity_maps=self.pb.io.entity_maps), fem.form(weakform_lin_aa_fluid, entity_maps=self.pb.io.entity_maps)
else:
res_a_fluid, jac_aa_fluid = fem.form(weakform_a_fluid), fem.form(weakform_lin_aa_fluid)
self.solnln.solve_consistent_ini_acc(res_a_fluid, jac_aa_fluid, self.pb.pbf.a_old)

te = time.time() - ts
utilities.print_status("t = %.4f s" % (te), self.pb.comm)
Expand Down
26 changes: 13 additions & 13 deletions src/ambit_fe/coupling/fsi_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down Expand Up @@ -113,18 +113,18 @@ def get_problem_var_list(self):
# defines the monolithic coupling forms for FSI
def set_variational_forms(self):

work_coupling_solid = ufl.dot(self.LM, self.pbs.var_u)*self.io.ds(self.io.interface_id_s)
work_coupling_solid_old = ufl.dot(self.LM_old, self.pbs.var_u)*self.io.ds(self.io.interface_id_s)
work_coupling_fluid = ufl.dot(self.LM, self.pbf.var_v)*self.io.ds(self.io.interface_id_f)
work_coupling_fluid_old = ufl.dot(self.LM_old, self.pbf.var_v)*self.io.ds(self.io.interface_id_f)
self.work_coupling_solid = ufl.dot(self.LM, self.pbs.var_u)*self.io.ds(self.io.interface_id_s)
self.work_coupling_solid_old = ufl.dot(self.LM_old, self.pbs.var_u)*self.io.ds(self.io.interface_id_s)
self.power_coupling_fluid = ufl.dot(self.LM, self.pbf.var_v)*self.io.ds(self.io.interface_id_f)
self.power_coupling_fluid_old = ufl.dot(self.LM_old, self.pbf.var_v)*self.io.ds(self.io.interface_id_f)

# add to solid and fluid virtual work/power
self.pbs.weakform_u += self.pbs.timefac * work_coupling_solid + (1.-self.pbs.timefac) * work_coupling_solid_old
self.pbf.weakform_v += -self.pbf.timefac * work_coupling_fluid - (1.-self.pbf.timefac) * work_coupling_fluid_old
self.pbs.weakform_u += self.pbs.timefac * self.work_coupling_solid + (1.-self.pbs.timefac) * self.work_coupling_solid_old
self.pbf.weakform_v += -self.pbf.timefac * self.power_coupling_fluid - (1.-self.pbf.timefac) * self.power_coupling_fluid_old

# add to solid and fluid Jacobian
self.pbs.weakform_lin_uu += self.pbs.timefac * ufl.derivative(work_coupling_solid, self.pbs.u, self.pbs.du)
self.pbf.weakform_lin_vv += -self.pbf.timefac * ufl.derivative(work_coupling_fluid, self.pbf.v, self.pbf.dv)
self.pbs.weakform_lin_uu += self.pbs.timefac * ufl.derivative(self.work_coupling_solid, self.pbs.u, self.pbs.du)
self.pbf.weakform_lin_vv += -self.pbf.timefac * ufl.derivative(self.power_coupling_fluid, self.pbf.v, self.pbf.dv)

if self.fsi_governing_type=='solid_governed':
self.weakform_l = ufl.dot(self.pbs.u, self.var_LM)*self.io.ds(self.io.interface_id_s) - ufl.dot(self.pbf.ufluid, self.var_LM)*self.io.ds(self.io.interface_id_f)
Expand All @@ -136,8 +136,8 @@ def set_variational_forms(self):
self.weakform_lin_lu = ufl.derivative(self.weakform_l, self.pbs.u, self.pbs.du)
self.weakform_lin_lv = ufl.derivative(self.weakform_l, self.pbf.v, self.pbf.dv)

self.weakform_lin_ul = self.pbs.timefac * ufl.derivative(work_coupling_solid, self.LM, self.dLM)
self.weakform_lin_vl = -self.pbf.timefac * ufl.derivative(work_coupling_fluid, self.LM, self.dLM)
self.weakform_lin_ul = self.pbs.timefac * ufl.derivative(self.work_coupling_solid, self.LM, self.dLM)
self.weakform_lin_vl = -self.pbf.timefac * ufl.derivative(self.power_coupling_fluid, self.LM, self.dLM)

# even though this is zero, we still want to explicitly form and create the matrix for DBC application
self.weakform_lin_ll = ufl.derivative(self.weakform_l, self.LM, self.dLM)
Expand Down Expand Up @@ -403,7 +403,7 @@ def solve_initial_state(self):
utilities.print_status("Setting forms and solving for consistent initial solid acceleration...", self.pb.comm, e=" ")

# weak form at initial state for consistent initial acceleration solve
weakform_a_solid = self.pb.pbs.deltaW_kin_old + self.pb.pbs.deltaW_int_old - self.pb.pbs.deltaW_ext_old
weakform_a_solid = self.pb.pbs.deltaW_kin_old + self.pb.pbs.deltaW_int_old - self.pb.pbs.deltaW_ext_old + self.pb.work_coupling_solid_old

weakform_lin_aa_solid = ufl.derivative(weakform_a_solid, self.pb.pbs.a_old, self.pb.pbs.du) # actually linear in a_old

Expand All @@ -424,7 +424,7 @@ def solve_initial_state(self):
utilities.print_status("Setting forms and solving for consistent initial fluid acceleration...", self.pb.comm, e=" ")

# weak form at initial state for consistent initial acceleration solve
weakform_a_fluid = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old
weakform_a_fluid = self.pb.pbf.deltaW_kin_old + self.pb.pbf.deltaW_int_old - self.pb.pbf.deltaW_ext_old - self.pb.power_coupling_fluid_old

weakform_lin_aa_fluid = ufl.derivative(weakform_a_fluid, self.pb.pbf.a_old, self.pb.pbf.dv) # actually linear in a_old

Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/solid_constraint_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/solid_flow0d_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/coupling/solid_flow0d_periodicref_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/expression.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_2elwindkessel.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_4elwindkesselLpZ.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_4elwindkesselLsZ.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_CRLinoutlink.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_coronary.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_syspul.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_syspulcap.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_syspulcaprespir.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/cardiovascular0D_vad.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/flow0d/flow0d_main.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
2 changes: 1 addition & 1 deletion src/ambit_fe/fluid/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env python3

# Copyright (c) 2019-2023, Dr.-Ing. Marc Hirschvogel
# Copyright (c) 2019-2024, Dr.-Ing. Marc Hirschvogel
# All rights reserved.

# This source code is licensed under the MIT-style license found in the
Expand Down
Loading

0 comments on commit 6c5873f

Please sign in to comment.