Structured ALE

Structured ALE solver is a newly added ALE solver targeted to solve ALE problems using structured (rectilinear) mesh. It supports SMP, MPP and MPP Hybrid. It runs faster, uses less memory and more stable.

Easier Mesh Generation: Rectilinear ALE mesh is generated by the *ALE_STRUCTURED_MESH keyword. Mesh nodes and elements are generated at the input phase of the execution. This brings a great reduction in the program I/O and memory needs, especially for large size ALE models.

More Efficient Execution: Same algorithm with a more efficient coding to gain performance. (29% speedup observed here)
1. Targeted to solve multi-material fluids flowing in a rectilinear mesh.
2. More efficient parallelization with newly added SMP support.
3. A leaner solver much easier to maintain and debug.

Identical (almost) Setup:

Same setup as the generic ALE solver. However, there is a big difference in design to make the setup much easier: In S-ALE, part is either mesh part or material part. IT CAN NOT BE BOTH.

Mesh part: mesh only(elements, nodes); no material associated with it; defined through *ALE_STRUCTURED_MESH DPID. In ALL ALE related keywords, PID should be mesh part ID.

Material parts: material properties (*MAT+*EOS+*HG); no mesh at all; defined through *PART. Their IDs only appear in *ALE_MULTI-MATERIAL_GROUP. Any other reference to their PIDs is WRONG.




Keywords

*ALE_STRUCTURED_MESH

MSHID PID NBIDEBID
CPIDX CPIDY CPIDZNID0 LCSID

PID -- Assign a Part ID for the ALE mesh generated
NBID -- Beginning node ID; nodes generated start with this ID
EBID -- Beginning element ID; elements generated start with this ID
CPIDX -- Control_points ID to specify mesh spacing along local x direction.
NID0 -- The origin node ID (optional)
LCSID -- Local coordinate system ID (optional) see *DEFINE_COORDINATE_SYSTEM_NODE

*ALE_STRUCTURED_MESH_CONTROL_POINTS

CPID
N_1 X_1 RATIO_1
... ... ...
N_i X_i RATIO_i
CPID -- Control_points ID
N -- Nth node
X -- Coordinate of Nth node
RATIO -- Ratio for progressive mesh spacing (optional)

Note: Need at least two (N,X) cards. Two cards yeilds an evenly distributed mesh. The following one makes 10 elements spanning from 0. to 1.

1 0.0 0.0
11 1.0 0.0



A much easier 3-step setup

Step 1: Generating mesh

a. 3 control_points cards --> mesh spacing in x,y,z direction.
b. 1 ale_structured_mesh card to generate mesh. --> mesh part

Step 2: Defining multi-materials

a. For each ALE material, define a part card. Each part serves as a wrapper to include *MAT+*EOS+*HOURGLASS. --> material parts
b. List all ALE multi-material part IDs under *ALE_MULTI-MATERIAL_GROUP card.

Step 3: Filling the domain with multi-materials

Use *INITIAL_VOLUME_FRACTION_GEOMETRY to fill the S-ALE mesh part with multi-materials (fluids).

Mesh part and material parts

mesh part: only one; contains mesh (elements+nodes) only. NOT associated with any material.
material parts: multiple; contain material definitions (MAT+EOS+HG). Does NOT contain any mesh.

S-ALE enforces a 1 to 1 correspondence between material parts and ale multi-material groups (ammgs). The material partid should only appear in *ALE_MULTI-MATERIAL_GROUP card and nowhere else.




FAQs

1. How to generate node/segment/solid set in S-ALE?

There are two new options SALEFAC, SALECPT in *SET_NODE/SEGMENT/SOLID_GENERAL. SALEFAC picks all nodes/segments/solids at the S-ALE mesh face. SALECPT picks the entities inside the box (I1,J1,K1) and (I2,J2,K2) in control_points.

NOTE: All other options in *SET_?_GENERAL do not work with S-ALE mesh!

2. How to specify ambient parts in S-ALE?

S-ALE setup doesn't allow for "ambient parts". PART is either a mesh part which contains no material info, or a material parts which has no mesh. A part can not contain both. This is the most significant difference from generic ALE setup.

S-ALE has "ambient elements" instead. Certain part of S-ALE mesh are grouped as solid element set and prescribed as "ambient elements" by using *BOUNDARY_AMBIENT (note: not *BOUNDARY_AMBIENT_EOS).

3. How to specify part(s) in *INITIAL_HYDROSTATIC_ALE or *AMBIENT_HYDROSTATIC_ALE?

In both cards, ALESID could be a set of solid elements. We need to use this option when using S-ALE.

PART is either a mesh part which contains no material info, or a material parts which has no mesh. A part can not contain both. This is the most significant difference from generic ALE setup.

4. Does *ALE_REFERENCE_SYSTEM_GROUP work with S-ALE?

No. It doesn't. Mesh motion in S-ALE is controled by the origin node (translational) and the local coordinate system (rotational).




News

1. Mesh trimming feature added in dev.124272

Mesh trimming is to delete S-ALE elements far away from the user's interest. For details please check the manual and 2018 LS-DYNA Conference paper. Example models here and here.

2. TDEATH to turn off ALE simulation while continuing the rest of calculation

Tdeath in *ALE_STRUCTURED_MESH could delete S-ALE mesh and related *CONSTRAINED_LAGRANGE_IN_SOLID + *ALE_COUPLING_NODAL cards. This will effectively kill the ALE run while keep other Lagrangian parts running.

Available at dev.116748 or later. Check ALE_STRUCTURED_MESH_dev.pdf in manuals section for detailed usage.

3. Lancemore Japan Example models using LS-DYNA

Lancemore Japan has been an active user using LS-DYNA ALE/FSI capabilities. And accumulated lots of animations during the years.

Check LANCEMORE example model No. 456 bubble cavitation analysis using S-ALE and LANCEMORE example model No. 459 Taylor impact analysis using S-ALE. Also See other LS-DYNA models.


Notable points on ALE/FSI

1. The order in *ALE_MULTI-MATERIAL_GROUP

The "material part" serves as a wrapper to encapsulate *MAT+*EOS+*HG. They are listed in *ALE_MULTI-MATERIAL_GROUP card to tell the solver:
1. How many fluids (AMMGs) flow in the ALE domain("mesh part").
2. Each AMMG's material property --> (*MAT+*EOS+*HG)

There is also a function, overlooked very often, that frequently leads to failed ALE/FSI analysis. That is: the order in which those parts are listed in *ALE_MULTI-MATERIAL_GROUP plays a crucial role. It determines the order in which material interfaces are constructed in mixed elements. Simply speaking, in a mixed element, the solver would do interface construction for AMMG1, then AMMG1+AMMG2, then AMMG1+AMMG2+AMMG3, so on and forth.

This means, to correctly reconstuct the fluid interfaces, we need to make sure neighboring materials are listed next to each other under *ALE_MULTI-MATERIAL_GROUP card. Please refer to the slide here for a detailed explanation.

2. FSI: LAG/ALE 1:1 mesh size

We prefer the ALE mesh size to be around the same as the LAG mesh. In interface reconstruction for mixed ALE cells, we only do 1 cut, i.e. we assume the interface is a plane intersecting the ALE cell. So finer LAG mesh won't do any good. Instead it might cause the two interfaces (LAG/ALE) not conciliable.



Unique visits AmazingCounters.com Since 04/27/2017