Skip to content

Commit

Permalink
Merge pull request #38 from ktbolt/Change-svFSIplus-name-to-svMultiPh…
Browse files Browse the repository at this point in the history
…ysics_35

Change svFSIplus to svMultiPhysics.
  • Loading branch information
ktbolt authored Dec 4, 2024
2 parents 2d27a66 + 080f596 commit f1dfd6e
Show file tree
Hide file tree
Showing 257 changed files with 690 additions and 688 deletions.
2 changes: 1 addition & 1 deletion documentation/flowsolver.html
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@
<a href="flowsolver.html">Simulation</a>
</div>
<div class="navSubLink">
<a href="svfsiplus.html">svFSIplus</a>
<a href="multi_physics.html">MultiPhysics</a>
</div>
<div class="navSubLink">
<a href="simcardio.html">SimCardio</a>
Expand Down
2 changes: 1 addition & 1 deletion documentation/genbc.html
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@
<a href="flowsolver.html">Simulation</a>
</div>
<div class="navSubLink">
<a href="svfsiplus.html">svFSIplus</a>
<a href="multi_physics.html">MultiPhysics</a>
</div>
<div class="navSubLink">
<a href="simcardio.html">SimCardio</a>
Expand Down
2 changes: 1 addition & 1 deletion documentation/meshing.html
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@
<a href="flowsolver.html">Simulation</a>
</div>
<div class="navSubLink">
<a href="svfsiplus.html">svFSIplus</a>
<a href="multi_physics.html">MultiPhysics</a>
</div>
<div class="navSubLink">
<a href="simcardio.html">SimCardio</a>
Expand Down
2 changes: 1 addition & 1 deletion documentation/modeling.html
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@
<a href="flowsolver.html">Simulation</a>
</div>
<div class="navSubLink">
<a href="svfsiplus.html">svFSIplus</a>
<a href="multi_physics.html">MultiPhysics</a>
</div>
<div class="navSubLink">
<a href="simcardio.html">SimCardio</a>
Expand Down
124 changes: 62 additions & 62 deletions documentation/svfsiplus.html → documentation/multi_physics.html

Large diffs are not rendered by default.

File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<h2 id="appendix_vtk_file_format"> VTK File Format </h2>
The <a href="https://docs.vtk.org/en/latest/"> Visualization Toolkit (VTK)</a> compressed XML file format
(see <a href="https://docs.vtk.org/en/latest/design_documents/VTKFileFormats.html"> VTK file formats</a>)
is used by svFSIplus to store
is used by svMultiPhysics to store
<br>
<ul style="list-style-type:disc;">
<li> Finite element mesh </i>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ The file format is
<i>Time_<strong>NumberOfTimePoints</i></strong> <i>Value_<strong>NumberOfTimePoints</strong></i>
</pre>

Example: <a href="https://github.com/SimVascular/svFSIplus/blob/main/tests/cases/fluid/pipe_RCR_3d/lumen_inlet.flow"> Inlet fluid flow rate <a>
Example: <a href="https://github.com/SimVascular/svMultiPhysics/blob/main/tests/cases/fluid/pipe_RCR_3d/lumen_inlet.flow"> Inlet fluid flow rate <a>

<!-- --------------------------------------------------- -->
<!-- ---- Temporal and spatial distribution Data ------- -->
Expand Down Expand Up @@ -129,7 +129,7 @@ The file format is
...
</pre>

Example: <a href="https://media.githubusercontent.com/media/SimVascular/svFSIplus/main/tests/cases/stokes/manufactured_solution/P1P1/bforce/N016/bforce.dat"> Volumetric body force <a>
Example: <a href="https://media.githubusercontent.com/media/SimVascular/svMultiPhysics/main/tests/cases/stokes/manufactured_solution/P1P1/bforce/N016/bforce.dat"> Volumetric body force <a>


<!-- --------------------------------------------------- -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ solver input file keywords used to control how results files are written.
<h3 id="data_file_formats_results_bin"> Binary Results Restart File Format </h3>
The binary results restart file stores state variables and mesh data for a single time step in a custom binary format.
A binary file is a series of sequential bytes, each of which is eight bits in length. The content of this
file is must be accessed by a program (e.g. svFSIplus) that knows how that content is formatted and how to read
file is must be accessed by a program (e.g. svMultiPhysics) that knows how that content is formatted and how to read
the data programmatically using C++ or Python.

Each restart file contains a header of seven integer (4-byte) values containing
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

<h1 id="data_file_formats"> Data File Formats </h1>

This section describes the format of the files svFSIplus uses for the input of data needed for setting
This section describes the format of the files svMultiPhysics uses for the input of data needed for setting
up a simulation (e.g. finite element mesh and boundary condition data) and the output of simulation
results.

Expand Down
32 changes: 32 additions & 0 deletions documentation/multi_physics/developer-guide/commod_class/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<h2 id="developer_commod_class"> ComMod Class</h2>
The <strong>ComMod</strong> C++ class is used to implement the Fortran <strong>COMMOD</strong> module. (A Fortran module is a bit like a C++ class because it can encapsulate both data and procedures.) The svFSI Fortran code used the <strong>COMMOD</strong> module to define data structures and to store data accessed as global variables.

The <a href="https://github.com/SimVascular/svMultiPhysics/blob/main/Code/Source/svFSI/ComMod.h"> ComMod.h </a> file defines the <strong>ComMod</strong> class and many of the classes used throughout the code
<ul>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L63"> fcType </a> - Fourier coefficients used for unsteady boundary conditions </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L121"> rcrType </a> - RCR boundary condition </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L143"> bcType </a> - Boundary condition </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L249"> fsType </a> - Function spaces (basis) </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L296"> bfType </a> - Body force </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L326"> fibStrsType </a> - Fiber stress </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L342"> stModelType </a> - Structural model </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f754c50ee0c8fbea28556d61b35da1f24a2df72a/Code/Source/svFSI/ComMod.h#L389"> fluidViscModelType </a> - Fluid viscosity model </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f754c50ee0c8fbea28556d61b35da1f24a2df72a/Code/Source/svFSI/ComMod.h#L414"> solidViscModelType </a> - Solid viscosity model </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L415"> dmnType </a> - Domain </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L447"> adjType </a> - Mesh adjacency (neighboring element for each element) </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L501> faceType </a> - Surface boundary </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L597"> outputType </a> - Output variables </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L620"> lsType </a> - Linear equation solver </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L676"> cntctModelType </a> - Contact </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L734"> cplBCType </a> - Coupled 0D-3D problems </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L790"> mshType </a> - Mesh </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L980"> eqType </a> - Equation </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L1117"> dataType </a> - Used to write data in the VTK files </li>
<li> <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L1147"> rmshType </a> - Remeshing </li>
</ul>

The <a href="https://github.com/SimVascular/svMultiPhysics/blob/f424b7c9d1e575bc5804293bb4c4181a725561cd/Code/Source/svFSI/ComMod.h#L1313"> ComMod </a> class contains member variables storing all of the data used for a simulation.

<div style="background-color: #F0F0F0; padding: 10px; border: 1px solid #d0d0d0; border-left: 6px solid #d0d0d0">
svMultiPhysics does not use any global variables. A C++ module object is passed to each procedure that needs to access its variables. For example, in C++ the ComMod object com_mod is explicitly passed to
</div>
Original file line number Diff line number Diff line change
Expand Up @@ -63,14 +63,14 @@ auto R = com_mod.R;
<!-- --------------- Vector Template ------------------------- -->
<!-- --------------------------------------------------------- -->
<h4 id="developer_dynamic_arrays_vector"> Vector Template </h4>
The <a href="https://github.com/SimVascular/svFSIplus/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Vector.h#L48"> Vector.h</a> template is used to store a 1D array of values accessed using a single index.
The <a href="https://github.com/SimVascular/svMultiPhysics/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Vector.h#L48"> Vector.h</a> template is used to store a 1D array of values accessed using a single index.

<!-- --------------------------------------------------------- -->
<!-- --------------- Array Template ------------------------- -->
<!-- --------------------------------------------------------- -->
<br>
<h4 id="developer_dynamic_arrays_array"> Array Template </h4>
The <a href="https://github.com/SimVascular/svFSIplus/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Array.h#L53"> Array.h </a> template is used to store a 2D array of values. Values are accessed using two indexes.
The <a href="https://github.com/SimVascular/svMultiPhysics/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Array.h#L53"> Array.h </a> template is used to store a 2D array of values. Values are accessed using two indexes.

Example of Array operators
<pre>
Expand Down Expand Up @@ -112,7 +112,7 @@ column data is going to be modified. It can also speed up code that repeatedly e
<!-- --------------- Array3 Template ------------------------ -->
<!-- --------------------------------------------------------- -->
<h4 id="developer_dynamic_arrays_array3"> Array3 Template </h4>
The <a href="https://github.com/SimVascular/svFSIplus/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Array3.h#L45">Array3.h</a> template is used to store a 3D array of values. Values are accessed using three indexes.
The <a href="https://github.com/SimVascular/svMultiPhysics/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Array3.h#L45">Array3.h</a> template is used to store a 3D array of values. Values are accessed using three indexes.

<h5> Extracting a 2D slice of data </h5>
A lot of the code uses a slice of a 3D array passed to a function or used in an expression.
Expand All @@ -132,6 +132,6 @@ slice data is going to be modified. It can also speed up code that repeatedly ex
<!-- --------------------------------------------------------- -->
<br>
<h4 id="developer_dynamic_arrays_tensor4"> Tensor4 Template </h4>
The <a href="https://github.com/SimVascular/svFSIplus/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Tensor4.h#L44"> Tensor4.h </a> template is used to store a 4D array of values. Values are accessed using fours indexes.
The <a href="https://github.com/SimVascular/svMultiPhysics/blob/b92add4a33eea4b6632fb323f484f08d3e62a716/Code/Source/svFSI/Tensor4.h#L44"> Tensor4.h </a> template is used to store a 4D array of values. Values are accessed using fours indexes.
<strong>Tensor4</strong> objects are primarily used in material model code.

Loading

0 comments on commit f1dfd6e

Please sign in to comment.