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 Elmer as a fluid and solid participant to the flow-over-heated-plate tutorial #565

Draft
wants to merge 12 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions flow-over-heated-plate/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ Fluid participant:

* SU2. For more information, have a look at the [SU2 adapter docmentation](https://precice.org/adapter-su2-overview.html).

* Elmer. For more information, have a look at the [Elmer adapter documentation](https://github.com/precice/elmer-adapter).

Solid participant:

* OpenFOAM (laplacianFoam). For more information, have a look at the [OpenFOAM adapter documentation](https://precice.org/adapter-openfoam-overview.html).
Expand All @@ -45,6 +47,8 @@ Solid participant:

* Dune-Fem. For more information, have a look at the [official documentation of Dune-Fem](https://www.dune-project.org/sphinx/dune-fem/). The `run.sh` script installs the solver from [PyPI](https://pypi.org/project/dune-fem/) into a Python virtual environment. Please note that Dune-Fem uses just-in-time compilation: The first time you run the solver script, it will take some time.

* Elmer. For more information, have a look at the [Elmer adapter documentation](https://github.com/precice/elmer-adapter).

It is also possible to use CalculiX as solid solver. In that case, two coupling meshes are needed: CalculiX read/writes temperatures on nodes, but read/writes heat-fluxes on face centers. This requires some adaptation of the `precice-config.xml` file, and [a separate tutorial](tutorials-flow-over-heated-plate-two-meshes.html) has been designed for it.

## Running the Simulation
Expand Down
54 changes: 54 additions & 0 deletions flow-over-heated-plate/fluid-elmer/Fluid-Mesh.geo
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
//+
Point(1) = {0, 0, 0, 1.0};
//+
Point(2) = {1, 0, 0, 1.0};
//+
Point(3) = {1, 0.5, 0, 1.0};
//+
Point(4) = {0, 0.5, 0, 1.0};
//+
Point(5) = {-0.5, 0, 0, 1.0};
//+
Point(6) = {-0.5, 0.5, 0, 1.0};
//+
Point(7) = {3, 0, 0, 1.0};
//+
Point(8) = {3, 0.5, 0, 1.0};
//+
Line(1) = {5, 1};
//+
Line(2) = {1, 2};
//+
Line(3) = {2, 7};
//+
Line(4) = {7, 8};
//+
Line(5) = {8, 3};
//+
Line(6) = {3, 4};
//+
Line(7) = {4, 6};
//+
Line(8) = {6, 5};
//+
Line Loop(1) = {6, 7, 8, 1, 2, 3, 4, 5};
//+
Plane Surface(1) = {1};
//+
Physical Surface("fluid") = {1};
//+
Physical Line("Inlet") = {8};
//+
Physical Line("Outlet") = {4};
//+
Physical Line("Coupling_Interface") = {2};
//+
Physical Line("Pipe_Boundary") = {1, 7, 6, 5, 3};
//+
Transfinite Surface {1} = {5, 7, 8, 6};
//+
Transfinite Line {8, 4, 1, 7} = 5 Using Progression 1;
//+
Transfinite Line {2, 6} = 10 Using Progression 1;
//+
Transfinite Line {3, 5} = 20 Using Progression 1;
Loading