Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add config visualizations in tutorial descriptions #514

Merged
merged 39 commits into from
Apr 11, 2024
Merged
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
b1c8998
Add a first config visualization as proof-of-concept
MakisH Apr 5, 2024
374f82d
Add a new section
MakisH Apr 5, 2024
9edf3ff
Make Nutils participant `micro-nutils` in the two-scale-heat-conducti…
IshaanDesai Apr 8, 2024
ff45c8c
Update NOTE on runtime of micro-nutils in two-scale-heat-conduction
IshaanDesai Apr 8, 2024
dbff44e
Add more watchpoint plots and source files (#507)
MakisH Apr 8, 2024
8bf7707
Minor cleanup in Nutils participants of two-scale-heat-conduction tut…
IshaanDesai Apr 9, 2024
0debf7a
Add a first draft for a script to visualize configs
MakisH Apr 9, 2024
dc02a5b
Remove draft precice-config.svg
MakisH Apr 9, 2024
00ff616
Add configuration section in README.md files
MakisH Apr 9, 2024
141a3b5
Fix aste-turbine config
MakisH Apr 9, 2024
eb3baae
Create directory if it does not already exist
MakisH Apr 9, 2024
d04be5a
Parallelize script
MakisH Apr 9, 2024
eaec56a
Add a script to check if precice-config.png files have been updated
MakisH Apr 9, 2024
10771e1
Fix shellcheck error in visualize-config.sh
MakisH Apr 9, 2024
88028fb
Fix quickstart image path
MakisH Apr 9, 2024
5dbbe0a
Comment-out section in flow-over-heated-plate-nearest-projection
MakisH Apr 9, 2024
1579943
Update quickstart image
MakisH Apr 9, 2024
6bc5be5
Special case for quickstart filename
MakisH Apr 9, 2024
5892dd9
Add pre-commit checks
MakisH Apr 9, 2024
ab62232
Fix pependicular-flap readme
MakisH Apr 9, 2024
be86069
Merge branch 'develop' into add-config-visualizations
MakisH Apr 9, 2024
141921e
pre-commit: install precice-config-visualizer in venv, check if paral…
MakisH Apr 10, 2024
1e0aea5
Remove pre-commit checks
MakisH Apr 10, 2024
f698112
Fix a typo in another workflow
MakisH Apr 10, 2024
a8d8d85
Add a workflow to check config visualizations
MakisH Apr 10, 2024
53b9441
Add graphviz to the dependencies
MakisH Apr 10, 2024
85570fd
Switch from PNG to SVG, hoping for reproducibility
MakisH Apr 10, 2024
6735874
Publish modified files as build artifacts
MakisH Apr 10, 2024
c3657a6
Always pack and upload artifacts
MakisH Apr 10, 2024
a9fa860
Fix upload-artifacts step
MakisH Apr 10, 2024
f1ee96b
Use dot for the comparisons in the CI
MakisH Apr 10, 2024
79a4c25
Move directory logging into the actually working directories
MakisH Apr 10, 2024
c61511d
Handle partitioned-heat-conduction-direct as special case
MakisH Apr 10, 2024
a0db7e5
Switch from SVG to PNG again
MakisH Apr 10, 2024
4f1e14c
Actually produce PNG files
MakisH Apr 10, 2024
c7b939a
Remove unused mesh from channel-transport-reaction
MakisH Apr 10, 2024
e6ccfc9
Remove unused mesh from elastic-tube-3d
MakisH Apr 10, 2024
e1018ba
Comment-out section in README
MakisH Apr 10, 2024
fd9a639
Remove everything related to checking and CI
MakisH Apr 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/check-style.yml
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ jobs:
check_style:
runs-on: ubuntu-latest
steps:
- name: Checkout preCICE
- name: Checkout the repository
uses: actions/checkout@v4
- name: Setup python
uses: actions/setup-python@v5
6 changes: 6 additions & 0 deletions aste-turbine/README.md
Original file line number Diff line number Diff line change
@@ -15,6 +15,12 @@ Our example consists of a wind turbine blade geometry, which was triangulated us

![Turbine setup](images/tutorials-aste-turbine-setup.png)

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-aste-turbine-precice-config.png)

## Running the tutorial

All necessary steps in order to run the mapping setup are summarized in the `run.sh` script. Have a look at the comments in the run script in order to understand what is happening. In particular, the script executes the following steps:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions aste-turbine/precice-config.xml
Original file line number Diff line number Diff line change
@@ -19,8 +19,6 @@
<use-data name="Data" />
</mesh>

<m2n:sockets acceptor="A" connector="B" exchange-directory="." />

<participant name="A">
<provide-mesh name="A-Mesh" />
<write-data name="Data" mesh="A-Mesh" />
@@ -40,6 +38,8 @@
</mapping:rbf-global-direct> -->
</participant>

<m2n:sockets acceptor="A" connector="B" exchange-directory="." />

<coupling-scheme:parallel-explicit>
<participants first="A" second="B" />
<max-time value="1.0" />
6 changes: 6 additions & 0 deletions breaking-dam-2d/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ The two-dimensional breaking dam case is a free surface problem. A large column

A similar, but not identical, setup is used in [1].

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-breaking-dam-2d-precice-config.png)

## Available solvers

Fluid participant:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions channel-transport-reaction/README.md
Original file line number Diff line number Diff line change
@@ -19,6 +19,12 @@ The geometry is shown below:

The simulation is split into two participants: a Fluid participant that computes the fluid flow and sends the velocity field to the Chemical participant which computes the reaction, diffusion and advection of all chemical species. The coupling is unidirectional (`serial-explicit` with only one data entity being transferred).

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-channel-transport-reaction-precice-config.png)

## Available solvers and dependencies

Both participants run on FEniCS. Install [FEniCS](https://fenicsproject.org/download/) and the [FEniCS-adapter](https://github.com/precice/fenics-adapter) to run this tutorial.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 0 additions & 1 deletion channel-transport-reaction/precice-config.xml
Original file line number Diff line number Diff line change
@@ -19,7 +19,6 @@

<participant name="Flow">
<provide-mesh name="Flow-Mesh" />
<receive-mesh name="Chemical-Mesh" from="Chemical" />
<write-data name="Velocity" mesh="Flow-Mesh" />
</participant>

9 changes: 8 additions & 1 deletion channel-transport/README.md
Original file line number Diff line number Diff line change
@@ -21,7 +21,14 @@ The behavior of the blob over the full 200 timesteps looks as follows:
<source src="images/tutorials-channel-transport-animation.webm" type="video/webm">
Animation of blob over 200 timesteps.
</video>


## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-channel-transport-precice-config.png
)

## Available solvers

Fluid participant:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions elastic-tube-1d/README.md
Original file line number Diff line number Diff line change
@@ -29,6 +29,12 @@ The following parameters have been chosen:

Additionally the solvers use the parameters `N = 100` (number of cells), `tau = 0.01` (dimensionless timestep size), `kappa = 100` (dimensionless structural stiffness) by default. These values can be modified directly in each solver.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-elastic-tube-1d-precice-config.png)

## Available solvers

Both fluid and solid participant are supported in:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions elastic-tube-3d/README.md
Original file line number Diff line number Diff line change
@@ -15,6 +15,12 @@ The expanding tube test case involves a cylindrical fluid domain surrounded by a

The expanding tube test case comes with the interface surface mesh connectivity of the solid domain. This allows the use of nearest-projection mapping of the displacements of the solid domain. In order to run the example with nearest projection mapping, the "node-mesh-with-connectivity" has been specified in the `solid-calculix/config.yml` file. More details can be found in the [CalculiX configuration description](https://www.precice.org/adapter-calculix-config.html#nearest-projection-mapping).

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-elastic-tube-3d-precice-config.png)

## Available solvers

Fluid participant:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 0 additions & 1 deletion elastic-tube-3d/precice-config.xml
Original file line number Diff line number Diff line change
@@ -43,7 +43,6 @@

<participant name="Solid">
<provide-mesh name="Solid-Mesh" />
<receive-mesh name="Fluid-Mesh-Faces" from="Fluid" />
<write-data name="DisplacementDelta" mesh="Solid-Mesh" />
<read-data name="Force" mesh="Solid-Mesh" />
<watch-point mesh="Solid-Mesh" name="Tube-Midpoint" coordinate="0.0;0.005;0.025" />
6 changes: 6 additions & 0 deletions flow-around-controlled-moving-cylinder/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ We simulate a 2D flow around a cylinder. The cylinder is not fixed, but mounted

This case was contributed by Leonard Willeke et al. [1]. To reduce the overall runtime compared to the original contribution, this case uses a larger time step size 2.5e-3 (instead of 1e-3) and the controller switches on at t=2 (instead of t=40). Still, the scenario requires around an hour to complete.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-around-controlled-moving-cylinder-precice-config.png)

## Available solvers

OpenFOAM is used for the `Fluid` participant. The spring-damper system is solved in a separate Python `Solid` participant. Finally, the PID algorithm is calculated in an FMU as participant `Controller`.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions flow-over-heated-plate-nearest-projection/README.md
Original file line number Diff line number Diff line change
@@ -25,6 +25,12 @@ Solid participant:

The solvers are currently only OpenFOAM related. For information regarding the nearest-projection mapping, have a look in the [OpenFOAM configuration section](https://www.precice.org/adapter-openfoam-config.html).

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-over-heated-plate-nearest-projection-precice-config.png)

## Running the Simulation

Open two separate terminals and start each participant by calling the respective run script.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions flow-over-heated-plate-partitioned-flow/README.md
Original file line number Diff line number Diff line change
@@ -18,6 +18,12 @@ Note that it is usually recommended using the fully implicit parallel `coupling-

The flow partitioning is done with the fluid-fluid module of the [preCICE OpenFOAM adapter](https://www.precice.org/adapter-openfoam-overview.html). Because we use buoyantPimpleFoam we have to tell the adapter that the coupled pressure has the name `p_rgh`. The temperature is coupled at the fluid-solid interface by exchanging *Temperature* and *Heat-Flux*, at the fluid-fluid interface it is *FlowTemperature* and *FlowTemperatureGradient*. Note the difference in naming: *Temperature* is used for conjugate heat transfer and *FlowTemperature* for fluid-fluid coupling.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-over-heated-plate-partitioned-flow-precice-config.png)

## Available solvers

The following participants are available:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions flow-over-heated-plate-steady-state/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ The setup for this tutorial is similar to the [flow over a heated plate](https:/
This is a pseudo-2D case, but we still set a 3D `solver-interface` in `precice-config.xml`, because the code_aster case is set up like this at the moment. Contributions here are particularly welcome!
{% endnote %}

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-over-heated-plate-steady-state-precice-config.png)

## Available solvers

Fluid participant:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions flow-over-heated-plate-two-meshes/README.md
Original file line number Diff line number Diff line change
@@ -14,6 +14,12 @@ Get the [case files of this tutorial](https://github.com/precice/tutorials/tree/

The scenario is exactly the same as the one described in the [flow over heated plate tutorial](https://precice.org/tutorials-flow-over-heated-plate.html). However, this tutorial is specialized for the case when heat fluxes and temperatures live on different meshes. This is the case with CalculiX: heat fluxes are written on face centers, while temperatures are read on nodes. This requires updating the `precice-config.xml` file to take this into account. On the fluid side, a single mesh can still be used.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-over-heated-plate-two-meshes-precice-config.png)

## Available solvers

By default, the fluid participant reads heat-flux values and the solid participant reads temperature values for the coupled simulation. The following participants are available:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions flow-over-heated-plate/README.md
Original file line number Diff line number Diff line change
@@ -19,6 +19,12 @@ The test case is two-dimensional and a serial-implicit coupling with Aitken unde

The inlet velocity is $$ u_{\infty} = 0.1 m/s $$, the inlet temperature is $$ T_{\infty} = 300K $$. The fluid and solid have the same thermal conductivities $$ k_S = k_F = 100 W/m/K $$. Further material properties of the fluid are its viscosity $$ \mu = 0.0002 kg/m/s $$ and specific heat capacity $$ c_p = 5000 J/kg/K $$. The Prandtl number $$ Pr = 0.01 $$ follows from thermal conductivity, viscosity and specific heat capacity. The solid has the thermal diffusivity $$ \alpha = 1 m^2/s $$. The gravitational acceleration is $$ g = 9.81 m/s^2 $$.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-flow-over-heated-plate-precice-config.png)

## Available solvers

By default, the fluid participant reads heat-flux values and the solid participant reads temperature values for the coupled simulation. The following participants are available:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions heat-exchanger-simplified/README.md
Original file line number Diff line number Diff line change
@@ -16,6 +16,12 @@ This tutorial extends the [flow over heated plate: Two meshes](https://precice.o

Contrary to the [heat exchanger](https://precice.org/tutorials-heat-exchanger.html) tutorial, which defines Robin-Robin coupling, this case defines a Dirichlet-Neumann coupling, exchanging temperature (from the fluids to the solid) and heat flux (from the solid to the fluids). Additionally, instead of composing two explicit coupling schemes, this tutorial uses a fully-implicit multi-coupling scheme and is transient.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-heat-exchanger-simplified-precice-config.png)

## Available solvers

Fluid participants:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions heat-exchanger/README.md
Original file line number Diff line number Diff line change
@@ -23,6 +23,12 @@ We define the participants `Inner-Fluid`, `Solid`, and `Outer-Fluid` and two int

![Heat exchanger: three participants](images/tutorials-heat-exchanger-participants.png)

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-heat-exchanger-precice-config.png)

## Available solvers

* OpenFOAM. `buoyantSimpleFoam` is used for fluid flow (both participants). This is a solver for steady-state, buoyant, turbulent flow of compressible fluids for ventilation and heat transfer. For more information, have a look at the [OpenFOAM adapter documentation](https://www.precice.org/adapter-openfoam-overview.html).
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions multiple-perpendicular-flaps/README.md
Original file line number Diff line number Diff line change
@@ -25,6 +25,12 @@ The top, bottom and flap are walls with a `noslip` condition.

For a case showing fluid-structure interaction only (no multi-coupling), take a look at the [single perpendicular flap tutorial](https://www.precice.org/tutorials-perpendicular-flap.html).

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-multiple-perpendicular-flaps-precice-config.png)

## Why multi-coupling?

This is a case with three participants: the fluid and each flap. In preCICE, there are two options to [couple more than two participants](https://www.precice.org/configuration-coupling-multi.html). The first option a composition of bi-coupling schemes, in which we must specify the exchange of data in a participant to participant manner. However, such a composition is not suited for combining multiple strong fluid-structure interactions [1]. Thus, in this case, we use the second option, fully-implicit multi-coupling.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions oscillator-overlap/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ This tutorial solves the same problem as the [oscillator tutorial](https://preci

Note that this case applies an overlapping Schwarz-type coupling method and not (like most other tutorials in this repository) a Dirichlet-Neumann coupling. This results in a symmetric setup of the solvers. We will refer to the solver computing the trajectory of $m_1$ as `Mass-Left` and to the solver computing the trajectory of $m_2$ as `Mass-Right`. For more information, please refer to [1].

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-oscillator-overlap-precice-config.png)

## Available solvers

This tutorial is only available in Python. You need to have preCICE and the Python bindings installed on your system.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions oscillator/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ This tutorial solves a simple mass-spring oscillator with two masses and three s

Note that this case applies a Schwarz-type coupling method and not (like most other tutorials in this repository) a Dirichlet-Neumann coupling. This results in a symmetric setup of the solvers. We will refer to the solver computing the trajectory of $m_1$ as `Mass-Left` and to the solver computing the trajectory of $m_2$ as `Mass-Right`. For more information, please refer to [1].

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-oscillator-precice-config.png)

## Available solvers

There are two different implementations:
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-backwards-facing-step/README.md
Original file line number Diff line number Diff line change
@@ -16,6 +16,12 @@ This scenario consists of two incompressible fluid solvers in series. The case i
The key point of this tutorial is the demonstration of custom inlet-outlet OpenFOAM boundary conditions for velocity and pressure. These can dynamically switch their behavior according to the underlying flow direction.
The boundary conditions `coupledVelocity` and `coupledPressure` come with the preCICE OpenFOAM adapter and can be set in the corresponding start time dictionaries for velocity and pressure.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-backwards-facing-step-precice-config.png)

## Available solvers

* OpenFOAM (pimpleFoam) for both participants. For more information, have a look at the [OpenFOAM adapter documentation](https://www.precice.org/adapter-openfoam-overview.html).
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-elastic-beam/README.md
Original file line number Diff line number Diff line change
@@ -15,6 +15,12 @@ We have a rectangular linear elastic beam of dimensions 1 x 1 x 8 m, divided in

![beam setup](images/tutorials-partitioned-elastic-beam-setup.png)

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-elastic-beam-precice-config.png)

## Available solvers

* CalculiX. CalculiX is used for both structural parts. For more information, have a look at the [CalculiX adapter documentation](https://www.precice.org/adapter-calculix-overview.html) for more.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-heat-conduction-complex/README.md
Original file line number Diff line number Diff line change
@@ -20,6 +20,12 @@ This case is an advanced version of `partitioned-heat-conduction`. Some advanced
* The exchanged temperature is still scalar valued, but the heat flux is vector valued.
* You can decide to use a time dependent heat flux and right-hand side to make the problem more challenging.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-heat-conduction-complex-precice-config.png)

## Available solvers and dependencies

See `partitioned-heat-conduction`, only `fenics` is provided as a solver.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-heat-conduction-direct/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ Further minor modifications:

- We use a parallel coupling scheme instead of a serial one to prevent running into the problem where we are trying to add a zero column to the quasi-Newton matrix. For serial coupling, this happens here because one data field converges much faster than the other.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-heat-conduction-direct-precice-config.png)

## Available solvers

Currently only `nutils` is provided as a solver. The data mapping is computed by directly sampling the FEM function representation at the inquired locations.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-heat-conduction-overlap/README.md
Original file line number Diff line number Diff line change
@@ -17,6 +17,12 @@ We solve a partitioned heat equation, but apply an overlapping Schwarz-type doma

Note that this case applies an overlapping Schwarz-type coupling method and not (like most other tutorials in this repository) a Dirichlet-Neumann coupling. This results in a symmetric setup of the solvers.

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-heat-conduction-overlap-precice-config.png)

## Running the simulation

This tutorial is for FEniCS.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions partitioned-heat-conduction/README.md
Original file line number Diff line number Diff line change
@@ -21,6 +21,12 @@ The heat equation is solved on a rectangular domain `Omega = [0,2] x [0,1]` with

This simple case allows us to compare the solution for the partitioned case to a known analytical solution (method of manufactures solutions, see [1, p.37ff]). For more usage examples and details, please refer to [3, sect. 4.1].

## Configuration

preCICE configuration (image generated using the [precice-config-visualizer](https://precice.org/tooling-config-visualization.html)):

![preCICE configuration visualization](images/tutorials-partitioned-heat-conduction-precice-config.png)

## Available solvers and dependencies

You can either couple a solver with itself or different solvers with each other. In any case you will need to have preCICE and the python bindings installed on your system.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading