Ansys Employee

Hi Caleb,

If the boundary is symmetrical on all sides, then this looks wrong.


  • mat data
  • BC's & IC's (boundary, initial conditions)

Then check the interaction (or coupling). 

You may want to follow the following coupling tips.

Hope this helps,

Ian Do


[ 0] PLEASE! Always work with a cleanly and clearly formatted deck with well
     organized KW input structured in a way that facilitates easy reading and 
     understanding of the model ==> so much FASTER and EASIER to debug and
     document your work. 

     (read it into LSPREPOST + SAVE KEYWORD + "ADVANCED" ==> a little manual
      editing ==>  all would take but less than 10 minutes)

     Though optional - this is highly recommended habit. It also helps us help
     you much more efficiently when we need to help you review your model. 
     We will appreciate the efforts very much!

[ 1] PLEASE DELETE ALL  "not ABSOLUTELY required" cards. 
     In general, starting values for most parameters are best left as default.
     Only intentionally change each when you know exactly what each change does.

[ 2] All mat data should be as accurate as possible
         *** Important*** input BC's and IC's should be reasonable
                          and make physical sense.

[ 3] ALWAYS check initial thermodynamic state condition,i.e. *EOS_ def. 
     for each material, to make sure each is defined properly and gives 
     the desired condition at t=0. 

[**] FREQUENTLY USED (and typically best) FSI SETTINGS ...

NQUAD = at least 2 coupling points per ALE elm. NOTE: NQUAD is distributed over
        each Lagr. elm surface. So this depends on relative Lagr-ALE meshes
        resolutions. Excessive NQUAD gives stiff response and instability.
CTYPE = 4 (in most cases), only use 5 when Lagr. solid parts may erode
DIREC = 2 (in most cases. for some special sloshing coupling:
           DIREC=1 may be used). DIREC=3 is rarely appropriate!
MCOUP = -I = negative integer always (see manual for example & note 5)
PFAC  = load curve <== tuning this is the key to FSI *** most important ***
PLEAK = DO NOT CHANGE from default value of 0.1

Some of the ALE parameters above are now handled automatically inside SALE. 
So there are less to be concerned about.

[ 4] Always try to have distinct AMMG IDs on either side of a shell surface.
     Example, even if there is water on both sides of a shell, it is better
     to define each side with a distinct AMMG ID. Then couple each side of
     the shell to each of the AMMG ID. Make sure the NORM parameter is
     defined properly in CLIS card.

     If couple to a solid structure, at least have the AMMG "in front of" 
     the solid LAG part impacting surface to be different from that behind 
     that surface - then couple specifically this AMMG to the LAG part.

[ 5] Always couple to a specific AMMG (ale multi-mat group) that is hitting
     on one side of the Lagr. shell.
     MCOUP = -INTEGER  (see manual). Create dummy parts/AMMGs if you need to.
     See manual for example. You'll need to define

[ 6] All the normals on a shell must point uniformly in the same direction,
     preferrably toward the AMMG it couples to.

[ 7] To use penalty coupling, the user should provide at least a 3 or 4-elm
     layer of ALE domain beyond the Lagrangian shell part/surface. For
     example, to model a tank sloshing, the ALE domain should extend OUTSIDE
     the Lagrangian shell tank. This is to provide the ALE space for the
     AMMGs to flow into and the fluid penetration amount across the shell
     be computed. The shell cannot be located flushed on the free surface of
     the ALE mesh.

[ 8] The first 4 parameters on the 1st lines (slave,master,sstyp,mstyp)
     only tell the code where CONSTRAINED_LAGRANGE_IN_SOLID lcan ook for 
     Lagr mesh to ALE mesh overlap. Where those 2 domains overlap,
     there is a possibility of FSI. This is strictly for geometrical search. 
     It does not tell the code which AMMG (or physical "fluid") is to 
     be coupled to the shell. MCOUP must be defined to specify which 
     AMMG to be coupled to ==> next.

[ 9] Relative resolutions between Lagr and ALE meshes must be as close to 1:1
     as possible  The meshes should be smooth and regular (uniform) with good 
     aspect ratios. Many times leakage occurs due to bad meshes. Sharp corners
     of a LAG container, for example, can leak more easily because there are 2
     (2D) or 3 (for 3D) LAG surfaces residing in 1 single ALE solid elm ==> 
     there is only 1 plane fluid (AMMG) interface in that elm ==> tougher
     for coupling logics to handle. If possible, smooth out cornners.

[10] Make sure there are coupling points in each ALE elm (see remark on NQUAD)

[11] Always try to use PFAC=load curve if the default 0.1 leaks (see manual) or

- x-axis = penetration amount, y-axis = maximum estimated coupling pressure
- point 1: [0.0, 0.0] ==> reads "no penetration, apply no P"
- point 2: 
              x2 ~ estimated as 0.1*min_ALE_elm_width
  To estimate y2:  
-    run the model with PFAC=0.1=default ==> 
-    select only the ALE mesh/domain and plot up P contours. 
-    pick the highest P in the ALE domain  (maybe we can try to pick value near the most intense FSI region).

[12] If fine tuning PFAC is not enough to stop leakage ==> try ILEAK=2

[13] Check TSSF - perhaps it can be reduced (to 0.6 and less if necessary)

[14] When all else fails, go back to simple model to perform conceptual test.
     For example, instead of modeling the shuttle impacting water, model a
     simple plate hitting water at about the same speed to get a feel for the
     pressure, etc.

[15] It is better to couple to deformable LAG parts. Coupling to rigid LAG
     parts sometimes does not work as well.


(a) In general ==> DO NOT use mass scaling with ALE! If you do use it, you must
    know how the model behaves in details.
(b) DO NOT use PRIT=1 (under *CONTROL_ALE) ==> it is not as robust as the
    default approach.
(c) Using air instead of vacuum tends to be more stable due to the 1 atm
    PREF in air.





This means the code tries to couple to all ALE fluids (all AMMGs). This means 
there may not be a more precise fluid interface with respect to which the code 
tracks for penetration of the fluid. It can only try to track the relative 
displacements between the ALE nodes and LAG nodes. The results may not be as 
precise. Consider the case where you have air on both sides of a flag. If you 
define the same AMMGID for the air surrounding the flag and MCOUP=0, then the 
coupling force can still be estimated based on the relative displacements of the 
ALE nodes VS. LAG nodes.

[MCOUP=-123 ...]
Now if you define 2 distinct AMMGIDs for the same physical air, at t=0, say, 
AMMGID=1 on 1 side of the flag (a shell part), and AMMGID=2 on the other side. 
Assume further that your shell part normals ALL point uniformly toward AMMGID=1. 
Then you can now define 2 coupling cards (CLIS), 1 to couple to each of the 
AMMGID on each of the shell surfaces.

That summarizes the differences between the 2 MCOUP approaches. So you may find 
their results to be different, and that is due to these fine points.