precice / precice/tutorials

Introduce a ramp similar to `turek-hron-fsi3` in `perpendicular-flap`?

Open
#612 9 comments 0 reactions 1 assignee View on GitHub

@BenjaminRodenberg is already working on this.

Since Jan 27, 2025.

  • #620 by @BenjaminRodenberg — open
question
Dominant language
C
Stars
142
Forks
167
Avg merge
20h 24m
Merged PRs (30d)
11

Description

I saw that the boundary condition in turek-hron-fsi3 is implemented as a cosine-shaped ramp. Why do we not use a similar kind of boundary condition for the perpendicular flap?

In https://github.com/precice/precice/issues/2172 I studied the case perpendicular-flap and made the observation that not all data equals zero at the beginning with the current boundary and initial conditions.

I implemented https://github.com/precice/precice/pull/2181 to plot the watchpoints at initial time. I get non-zero forces if I set <exchange data="Force" ... initialize="true" />:

  Time  Coordinate0  Coordinate1  Displacement0  Displacement1  Force0  Force1
 0.00000000e+00   0.00000000e+00   1.00000000e+00   0.00000000e+00   0.00000000e+00   2.29427968e+00  -3.02282515e-14

I assume that this is due to the initial condition (IC) where the fluid velocity in x direction is homogeneously set to 10 on the whole domain. However, the cross section of the channel is smaller at the x-coordinate of the flap. Here, one would expect a larger velocity due to mass conservation which makes the given IC unphysical. A ramp should lead to a more realistic scenario.

Additionally, I realized that using a ramp also leads to better results in a subcycling-based experiment I developed for my thesis. See here. I will probably also change this implementation to a cosine shaped ramp since this gives us C0 and C1 continuity in contrast to the piecewise linear ramp that is only C0.

Side note: Looking at the watchpoints I would claim that setting initialize="false" is actually wrong since it ignores the initial forces produced on the OpenFOAM side. Using a ramp "heals" this problem since here we really have zeros for all exchanged quantities. Related issues/PRs: https://github.com/precice/precice/issues/2033, https://github.com/precice/tutorials/pull/540

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.