Internal FSI coupling and mesh overlap

Questions and remarks about code_saturne usage
Forum rules
Please read the forum usage recommendations before posting.
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello,

I am performing a Fluid-Structure interaction calculation by means of the internal coupling of Code_Saturne. The meshed geometry (constituting the fluid domain) is herein joined (1st picture).

Firstly I imposed a displacement on the structure and the simulation worked well with the self-made mesh velocity interpolation (by means of a linear interpolation).

Since the mesh is refined next to the structure boundaries, I have imposed there a high mesh viscosity value in order to prevent apparition of negative volume. But after several trials, the calculation finally crashes because of mesh overlap (2nd picture) where the mesh viscosity is supposed to be high (1e10).

On the listing file, I have remarked that the Rhs norm (by the way what does "Rhs" mean actually ?) of the mesh velocity is too much high (~1e3) and I think that it is probably due to the mesh viscosity repartition over the mesh. Then how good the mesh viscosity could be set and to be sure is the mesh velocity calculated as div(mesh_viscosity(x,y,z)*grad(mesh_velocity(x,y,z)))=0 ? Is the structure displacement maybe too high in the framework of ALE calculation ?

In order to solve this problem, is it possible to impose the node displacement manually according to the structure displacement ?

Thank you in advance for your help.

Best regards,

So_nuc
Attachments
Mesh_1.png
Mesh_overlap.png
Mesh_1.png
Last edited by So_nuc on Mon Apr 15, 2019 4:02 pm, edited 16 times in total.
Yvan Fournier
Posts: 4070
Joined: Mon Feb 20, 2012 3:25 pm

Re: Internal FSI coupling and mesh overlap

Post by Yvan Fournier »

Hello,

You seem to have attached only the first picture.

For the easy question, RhS means "right hand side".

I am not sure how the mesh velocity is computed. I would need to one of the colleagues who worked on this recently. I am not sure of how displacements are prescribed. To my knowledge, it is usually the mesh velocity which is predicted, and I do not know about the displacement.

But checking the example in cs_user_boundary_conditions_ale_base.f90, it seems it is possible to prescribe a vertex displacement. If you access the structures information from within cs_user_boundary_conditions.f90, you may be able to do this (though you will probably have displacement at time n when prescribing the displacement for time n+1).

Best regards,

Yvan
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello Yvan,

Thank you for your reply. I have added the second picture where the mesh problem occurs.

Best regards,

So_nuc
Last edited by So_nuc on Tue Apr 16, 2019 9:21 am, edited 1 time in total.
Yvan Fournier
Posts: 4070
Joined: Mon Feb 20, 2012 3:25 pm

Re: Internal FSI coupling and mesh overlap

Post by Yvan Fournier »

Hello,

Yes, things seem to go wrong near the concave area, which is always the "tricky" part.

Did you try prescribing vertex displacements in cs_user_boundary_conditions.f90 (as per cs_user_boundary_conditions_ale_base.f90) ?

Best regards,

Yvan
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello,

Thank you for this feedback. In a first approach, I have only imposed a high value of the mesh viscosity closed to the borders without imposing any vertex displacement.

Thank you for your support.

Best regards,

So_nuc
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello,

Which boundary condition has to be written in the file cs_user_boundary_conditions_ale.f90 for the boundaries which displacement is imposed by the internal fluid-structure coupling ?

Thank you in advance.

Best regards,

So_nuc
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello,

I tried to impose the displacement of the nodes in the domain using an custom interpolation of the structure displacement from the cs_user_boundary_conditions_ale.f90 but I get a SIGSEGV signal. Is it then compatible to run an internal coupling calculation by imposing displacement of certain nodes ?

Thank you in advance.

Best regards,

So_nuc
Yvan Fournier
Posts: 4070
Joined: Mon Feb 20, 2012 3:25 pm

Re: Internal FSI coupling and mesh overlap

Post by Yvan Fournier »

Hello,

I am not 100% sure, but if you ensure the region where you prescribe displacement is not simultaneously handled with an internal structure (possibly using internal coupling with other boundary zones) it should be ok.

If you have a small test case I can look.

Regards,

Yvan
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello Yvan,

Thank you for your help. You will find enclosed the SRC files for the internal coupling with manual nodes displacement. The code compiles but gives weird results (as if the disale field at time n was not correctly got). The idea is to get the displacement field of the structures defined in cs_fluid_structure_interaction.f90 from cs_user_boundary_conditions_ale.f90 at time n and then to interpolate manually the structure displacement structures over the mesh at time n+1.

I can send you screenshots of the displacement field if it is helpful.

Thanks again.

Best regards,

So_nuc
Attachments
IFS.tar.gz
(53.26 KiB) Downloaded 149 times
So_nuc
Posts: 45
Joined: Wed Sep 05, 2018 12:16 pm

Re: Internal FSI coupling and mesh overlap

Post by So_nuc »

Hello,

The call to the displacement field via call field_get_val_prev_v_by_name("disale",cvar_disale_prev) seems to have a weird beahviour. As depicted in the pictures, I imposed a linear interpolation of the parallel component of the fields displacement between the bottom and top boundaries which are supposed to have the same displacement over (Ox). However, by interpolating between the last negative coordinate and the first positive coordinate with respect to the (Oy) axis, there is a difference in the node displacement, which is not expected.

I also had the same problem with another case by manipulating the pointer to the displacement field: by adding 0.d0 to the pointer, the pointed value changed !

Thank you for your support.

Regards,

So_nuc
Attachments
Mesh_tn.png
Mesh_t0.png
Post Reply