Skip to content

two perpendicular flap case#110

Merged
carme-hp merged 31 commits intoprecice:developfrom
carme-hp:two_flap_case
Dec 19, 2020
Merged

two perpendicular flap case#110
carme-hp merged 31 commits intoprecice:developfrom
carme-hp:two_flap_case

Conversation

@carme-hp
Copy link
Copy Markdown
Member

@carme-hp carme-hp commented Oct 22, 2020

Motivation for case tutorials/FSI/two_flap_perp_2D is to test multi-coupling. Instead of one single flap, now we have two flaps, which means that the case involves three participants: Fluid, Solid1 and Solid2. For the first one we use OpenFOAM solver pimpleFoam and for the second we use the deal.II Adapter. In this link you can check the different possible approaches for multi-coupling: https://github.com/precice/precice/wiki/Multi-Coupling-Configuration
In this case we use a fully-implicit multi-coupling scheme.

The geometry of the flaps is defined directly in the deal.II Adapter solver. Because the flaps are located at different positions we need different executables for the solid participants. To obtain them we need to compile https://github.com/precice/dealii-adapter/blob/c332050b5770bf99459b8be596fd6e41f3401a26/linear_elasticity/linear_elasticity.cc#L208-L220 changing the parameters regarding the position of the flap.

  • For Solid1:

      point_bottom =
      dim == 3 ? Point<dim>(-1.05, 0, 0) : Point<dim>(-1.05, 0);  
      point_tip = dim == 3 ? Point<dim>(-0.95, 1, 0.3) : Point<dim>(-0.95, 1); //flap1 
    
  • For Solid2:

      point_bottom =
        dim == 3 ? Point<dim>(0.95, 0, 0) : Point<dim>(0.95, 0);  
      point_tip = dim == 3 ? Point<dim>(1.05, 1, 0.3) : Point<dim>(1.05, 1); // flap2
    

The executables are named linear_elasticity1 and linear_elasticity2 respectively.

In the precice-config.xml we define the communication between the solid participants and the Fluid participant. Here we can select the mapping (see https://github.com/precice/precice/wiki/Mapping-Configuration ).

Current status

  • mapping:nearest-neighbor

  • mapping:rbf-thin-plate-splines

  • linear case

  • non-linear case

  • parallel run

The current priority is to find out why the solver crashes, which happens at t=0.55. If we use the rbf-thin-plate-splines mapping instead, it crashes immediately.

@carme-hp carme-hp changed the base branch from master to develop October 22, 2020 13:53
@carme-hp carme-hp changed the title draft two perpendicular flap case two perpendicular flap case Oct 22, 2020
Copy link
Copy Markdown
Member

@MakisH MakisH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In a good shape already! There are a few points that need fixing or implementation, this review may help.

And we need to make the case work, of course.

Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allclean Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allclean Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allclean Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allrun Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allrun Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/runFluid Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/runSolid1 Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/runSolid2 Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/.gitignore Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/.gitignore Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allclean
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Allrun Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/precice-config.xml Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/README.md Outdated
Copy link
Copy Markdown
Member

@MakisH MakisH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good! A few more small points.

Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Fluid/0/U Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Fluid/constant/polyMesh/boundary Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Fluid/system/displacementProbe Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/Fluid/system/preciceDict Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Copy link
Copy Markdown
Member

@MakisH MakisH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost ready! (you can also change the status of the PR from "draft" to "ready")

I added a few (very picky) language and Markdown-related suggestions in the README, which already looks very good. 👍

Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/wiki.md Outdated
@MakisH
Copy link
Copy Markdown
Member

MakisH commented Nov 26, 2020

I ran the case for 15s and the results look very reasonable: both flaps oscillate back-and-forth, with different frequencies.

Video (unlisted for now): https://youtu.be/ClZNJC3qR6M

@carme-hp carme-hp marked this pull request as ready for review November 29, 2020 08:52
Copy link
Copy Markdown
Member

@MakisH MakisH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks quite clean and nice now!

Dependent on precice/dealii-adapter#39, this runs nicely in serial for the linear case. However, in parallel (with (2 1 1) decomposition) I get this error: precice/precice#919 @carme-hp does it run in parallel for you with the default (2 2 1) and with (2 1 1)? I think it should be working with both.

The nonlinear case also runs nicely in serial.

Comment thread FSI/two_flap_perp_2D/OpenFOAM-deal.II/precice-config.xml Outdated
Copy link
Copy Markdown
Member

@MakisH MakisH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything looks good! Let's merge now and we will revisit this case in the context of the tutorials restructuring. For now it looks consistent with the rest.

@carme-hp carme-hp merged commit 0135e07 into precice:develop Dec 19, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants