The Multi-Domain technique aims at optimizing performance of large scale RADIOSS models containing one sub-domain with significant time step discrepancy, often related to mesh refinement differences. It makes it possible to split a whole model into master domain and several sub-domains. Each domain is computed as a separate RADIOSS model, using its own timestep. The force and momentum transfers between them are managed by a separate program insuring stability constraints. The aim of this example is to show how to use the new Multi-Domain Single Input Format and how to prepare a model.
TitleMulti-Domain |
|||||
Number45.1 |
|||||
Brief DescriptionSeparate the whole model into master domain and sub-domain and solve each one with its own timestep. The new Multi-Domain Single Input Format makes the sub-domain part definition with the /SUBDOMAIN keyword. |
|||||
Keywords
|
|||||
Input FileFRAME_MODIFIED: <install_directory>/demos/hwsolvers/radioss/45-multidomain_tied/monodomain/* <install_directory>/demos/hwsolvers/radioss/45-multidomain_tied/multidomain/* |
|||||
Technical / Theoretical LevelAdvanced |
The bumper beam impacts the rigid cylinder (254 mm diameter) with an initial velocity of 5m/s. The crash box behind the bumper is fixed in all directions, except translation in x direction - the pillar is fixed in all directions.
The pillar is fixed in all directions.
Fig 1: Problem description
In order to get more accurate results, use a fine mesh in the area of interest (high deformation location). In this example, the part near the impact area (highlighted in red) where the bumper highly deforms was chosen. The fine mesh size is about 2 mm, whereas the mesh size of the remaining part is about 7 mm. The finely meshed part has 18370 shell elements that represent nearly 50% of the whole model. In explicit analysis the timestep will be controlled by this fine mesh. In order to improve performances, this computation is usually treated with classical mass scaling (/DT/NODA/CST). It is possible to use a small timestep for the fine meshed part and a large timestep for the coarse meshed part using the Multi-Domain technique.
There are two different methods to use the Multi-Domain technique. The first (old) method requests users to build separate Starter and Engine files for each domain and to define a /LINK keyword for the connections between domains.
A new feature was introduced in RADIOSS v11.0.220 called Multi-Domain Single Input Format. Using the keyword /SUBDOMAIN, you can insert the parts, which use a different timestep into the new sub-domain and create an Engine file with its specific timestep. RADIOSS will automatically create the Starter information for the sub-domain and its link for connection between the two domains.
In this example one Starter file with two Engines files are used:
bumper_LL4_0000.rad |
Starter file |
bumper_LL4_0001.rad |
Engine file for master domain |
FINE_MESH_0001.rad |
Engine file for sub-domain |
Only the following two keywords need to be added:
1. | /SUBDOMAIN in bumper_LL4_0000.rad à Starter |
With /SUBDOMAIN defining our sub-domain in Starter file, as shown below:
Fig. 2: Parts of the sub-domain
Remark:
Keep the “subdomain_title” in /SUBDOMAIN the same as the sub-domain Engine file root_name.
In this example, the “subdomain_title” in /SUBDOMAIN is “FINE_MESH”. Therefore, the Engine sub-domain is “FINE_MESH_0001.rad”.
2. | /RAD2RAD/ON must be present in both Engine files: |
In order to use the Multi-Domain technique, /RAD2RAD/ON in both Engine files needs to be defined, so that the Multi-Domain coupling can be established.
Tied contact (/INTER/TYPE2) between sub-domain and master-domain need to be defined. This connection is fully compatible with Multi-Domain single input format and automatically creates the coupling links between domains during RADIOSS Starter run.
In this example, sub-domain will not impact the master domain during the simulation. So, define two self-contacts for each domain. In case the sub-domain impacts the master domain during the simulation, it is recommended to define the following four contact interfaces type 7.
• | Two internal contact interfaces (/INTER/TYPE7) each one treated in its own domain: |
➢ | Contact interface 1: self-contact interface for the master domain |
➢ | Contact interface 2: self-contact interface for the sub-domain |
• | Two contact interfaces (/INTER/TYPE7) for the interaction between domains treated in the sub-domain: |
➢ | Contact interface 3: contact subframe/car – subframe on the slave side |
➢ | Contact interface 4: contact car/subframe – subframe on the master side |
In this case, if all contacts are treated in one single contact (/INTER/TYPE7), every element of the model would impact the sub-domain and all the elements of the model would be duplicated in the sub-domain. If the model is large, the Multi-Domain interface would be huge, the CPU cost of RAD2RAD would be very high; therefore, the performance of the computation is very poor. The warning message “Multi-Domains interface is too big” will be printed by Starter, in this instance.
In order to show the performance of a Multi-Domain, the following two tests were conducted:
• | Test 1: Mono-domain – free DT control |
• | Test 2: Multi-Domain – free DT control |
Table 1: Total calculation time comparison of two tests
Test |
Mono-Domain (1) |
Multi-Domain (2) |
|
---|---|---|---|
Master domain |
Sub-domain |
||
CPU |
1 |
1 |
1 |
Timestep [ms] |
2E-04 |
8E-04 |
2E-04 |
CPU time [s] |
5.93E+03 |
0.67E+03 |
2.64E+03 |
Elapsed time [s] |
5.9E+03 |
3.3E+03 |
For Test 1, the timestep will be controlled by the fine mesh part. In order to avoid small timesteps, use the Multi-Domain approach (Test 2). The master domain (coarse mesh part) has a free timestep of about 8e-4 ms and the sub-domain (fine mesh part) has a timestep of about 2e-4 ms. The total calculation time is only 3.3e-3 s (almost 2 times faster than Test 1). Fig 3 shows the same failure behavior between Test 1 and Test 2. Fig 4 and Fig 5 show exactly the same results between Test 1 and 2. Test 2 is faster and provides the same results quality as in Test 1.
Fig. 3: Failure of crash box in the two tests
Fig. 4: Impactor force of the two tests
Fig. 5: Internal energy of the two tests
When using Multi-Domain, the performance will be more significant for large models or for cases where the fine mesh part represents less than 30% of the whole model (50% here is a lot).
The RADIOSS domains are treated sequentially, which means that only one RADIOSS process is running at a time. The full CPU resource is automatically allocated to the running process and the other is put into a no CPU consuming idle mode.
Fig. 6: RAD2RAD multi-timestep method
By using the Multi-Domain approach, the computation time can be reduced significantly, with preserving high quality results.
The new single input file format makes the Multi-Domain more user friendly, compared to the set-up process in earlier versions.