Side Pole Crash Simulation
OBJECTIVE: Aim of this project is to run the simulation of a BIW structure for a side pole crash test according to the requirement.
ABSTRACT: One of the primary functions of the automobile body is to protect occupants in a collision. Because of the variability of field impacts, many governments have defined standard crash tests and minimum performance levels. For impact tests that influence the overall vehicle structure, these standard tests may be categorized into four major groups: front-impact, side-impact, rear impact, and roll-over resistance. These government standards establish a minimum performance level for the vehicles to be sold in the respective country. The insurance industry and consumer groups have developed tests that evaluate vehicles beyond the minimum government standards. The New Car Assessment Program (NCAP) is one such set of tests. The NCAP evaluation is based on the probability of injury for a specific test, measured with a star scale ranging from one star—the higher probability of injury, to five stars— the lower probability of injury. In this project, I will be running a simulation for side impact with a rigid pole and checking the plots for energies, forces, and displacements.
REQUIREMENTS:
- Check unit system and either follow [Mg mm s] or [Kg mm ms]
- Create an appropriate interface, friction 0.2, and recommended parameters
- Make sure there are no penetration and intersections
- Create a rigid wall with the friction of 0.1
- Add mass to the model to reach the target of 700kg while getting CoG in the required range
- Give an initial velocity of 20mph
- The imposed time step of 0.5 to 0.1 milliseconds
- Run the simulation for 80ms
OUTPUT REQUEST:
- Sectional Force in the cross member
- Intrusions at the B pillar, hinge pillar, and fuel tank intrusions
- Peak velocity of an inner node of the door
PROCEDURE:
Step-1: Checking the unit system. This can be done from the software GUI or from the starter file. I prefer doing it with the latter method. Just open 0000.rad file and check the mentioned unit system. In this case, the default is Kg mm ms which we require.

Step-2: Checking interface, creating new interfaces with recommended properties. In the model, we can see some interfaces which are really not needed for the simulation. So I followed the below process to create a new interface.
- Go to solver browser and delete existing interfaces.
- Right-click in the solver browser > Create > INTER> Type 7
- Rename it as body as it is for the entire body to check self-impact.
- Select slave nodes as all the nodes in the model and master segment as all the elements in the model
- Now insert the required parameters as given below
Interface parameters recommendation:
- Igap: 2 or 3; How the size of the gap is calculated
- Gap(min) <= 0.5mm; Minimum gap for activation of interface
- Inacti: 6; Action it takes if initial penetration exists
- Istf: 4; Affects how the stiffness of the interface is calculated
- Stmin: 1000N/mm; Minimum stiffness to use in the interface
- Idel: 2; What to do with slave nodes and master segment in case of element failure
- Iform: 2; Friction formulation

Step-3: Checking penetrations. In this project, after giving interface 7 contacts for self-impact and for studying the contact forces in the bumper, the penetrations were found to be zero. To check the penetration in the model:
- Go to Tools > Penetration check
- Select the invoke penetration option > select all the components and check if there are any penetrations.

Step-4: Defining a rigid wall. I have followed the following method to create a rigid wall in the model.
- Go to Solver browser > Right-click > Create > Rwall > CYL (For pole)
- As the wall will be at the side of the car, select a node on the side door for reference. Then we can play around with the coordinates to place the pole in a proper position.
- Make sure that there is a small gap between the car and the pole for the crash situation. If this gap is more, the solver will take more time to run the simulation. I have kept a gap of 20-50mm.
- Set the normal in the y-direction as -1. This will change the direction of the search tolerance.
- Select sliding with friction option and keep friction value as 0.1.
- Set the diameter of the pole as
- Keep search tolerance value of 1150-1200. The nodes coming into this region will be considered as slaved for the master rigid wall.


Step-5: Create initial velocity.
- Go to solver browser > Right-click > create > boundary conditions > INIVEL
- Select all the nodes present in the model
- Give an initial velocity of 20MPH (8.9408mm/ms) in a positive y-direction

Step-6: Adding mass to the system. The mass of the given model was about 166 Kg, which is very less for a car model. This mass only made sense if we consider the model which is BIW. However, for running a simulation for the crash, we must consider a car model thus we must add mass to this model. We can add mass where other components will sit like the seat and passenger. The aim is to reach 700kg while maintaining a proper Centre of Gravity location.
- Go to Solver browser > Right-click > ADMAS
- Select type 1 which will distribute the given mass over the selected area
- Select the nodes and keep on adding mass till the CoG reaches the desired position.
Old CoG and Mass


New CoG and Mass


Step-7: Minimum time step value of 0.5ms. If the time step falls below this value, the solver will add mass to the node and increase the time step of the model. Basically, this is the mandate by NODA/CST card in this model.
- In model browser > Cards> ENG_DT_NODA
- Change the Tmin value to 0.0005


Step-8: Creating sections. Sections help us to study the forces in a particular part/section of the model. For this project, I have created 2 sections on 2 cross members. Creating sections follows the same procedure.
- Go to Solver browser> Right-click > Create a Frame> MOV
- Define origin point, x-axis and xy-plane
- Go to Solver browser> Right click> SECT> SECT
- Select an N1, N2, and N3. Select frame the one which we created.
- Right-click on grnod_id and create new
- Select elements (usually two rows) to create a section
- Repeat this process for every section

Step-9: Creating springs for intrusions. The intrusions that must be studied for this project are in the area of the B-pillar, hinge pillar, and Fuel tank area. This intrusion will help us get an idea of how much distance the components would move inwards during the crash scene. This is particularly important because we keep passenger safety at the highest point in commercial cars. Studying these intrusions can help me determine if we have to change our design or use different materials that will reduce the intrusions in the car volume.
To calculate the intrusions, we must create springs with suitable properties that will help us in plotting its elongation.
- Go to 1D> Springs
- Select 2 nodes (1 node id is mentioned) to create a spring
- Repeat this for the other spring too.
- Go to model browser> Right click> Create> property
- Rename it as intrusions
- Select card image as P4 spring
- Put mass 0.01kg and stiffness as 1N/mm. Put the value as 0.001 as that value is in KN/mm.
- Go to the component that we created earlier and assign the created property to it.


Step-10: Creating peak velocity. We are checking the velocity of a node near the driver-side inner door to check how fast the node would be moving in. This is studied in reference to the moving skew.
- Go to Solver browser >Right click> Create> Skew> MOV
- Select origin node, x-axis, and xy-plane
- Go to solver browser> Right click> Create> TH> NODE
- Enter node ID 3377733 and select the moving skew under the system

Step-11: Requesting output. By default, the solver gives us some output. But, for the created sections, we must request output from the solver. To keep the process simple, I have deleted the previous TH files.
- Go to the solver browser > Right click> TH
- Under Th, we have a lot of options. For this project, I have requested INTER output for the Type-7 interface, SECTIO option for all the sections, NODE for peak velocity, and SPRING option for intrusions.
- Once we create all these TH cards, we have to select the respective elements for them.
- For example, select spring elements for SPRING, node id for peak velocity, and so on.
- I have kept the variable as 1 and DEF in every card

Step-12: Run the model checker. Once our model is set up properly, we must run a final model checker that shows some errors and warnings that will hamper the simulation. The errors displayed in the checker must be dealt with, while the warnings can be ignored.
- Go to tools> Model checker > Radioss Block
- In the model, checker browser click the green icon on the top right corner to run the checker
- I did not come across any errors after running the checker, however, there are 8 warnings that were ignored.

Step-13: Run the simulation.
- Go to Analysis > Radioss
- Put –nt 4 value in options and hit Radioss to run the simulation
OBSERVATIONS AND RESULTS:
Engine output file
The first thing that we must check to have an idea if the simulation was correct or incorrect is to check out our engine output file. We should check the following things:
- Time-step: it does not drop abruptly. In fact, it is constant at an imposed time step of 0.5ms and does not change at all
- Energy error: it should be under -15% on the negative side and not much on the positive side. The energy error for this simulation is in the range of 0 to -1.8%
- Mass error: it should be within 1-3%. The mass error in the output file starts at 0.4250E-04 and ends at 0.4311E-04 which is very low compared to our acceptable error
- A message with NORMAL TERMINATION in the end
- Total simulation run time is 6990.82s or 1 hour 56 minutes 30 sec

Animation file (.h3d)
The Solver creates n+1 animation files where n is a number of frames. All these animation files are compiled together in one .h3d file. The animation of the frontal crash can be viewed as followed:
- Select the drop-down on the toolbar containing the hypermesh icon
- Select the Hyperview option to open a new tool
- Under load model, browse for the .h3d file and hit apply
- Now we can see the animation of the crash
We can also view von mises stress or displacement.
- Select the contour option
- Select Von mises (or the required option from the dropdown) and hit apply
- Now we can run the animation and look at how the stresses develop in the model
- Maximum Von Mises stress is 0.3356 GPa.
We can observe from the animation that no stresses developed on the other side of the vehicle, which is expected as there must be no deformations. Further, this crash results bolsters how important B-pillar BIW is and why it should have reinforcements and material of high strength or very high strength. In addition, the cross member deformed to prevent the excess force to enter the cabin.

Time History file (T01)
This file helps us to plot the graph of forces, energies, displacements, accelerations, etc. with respect to the final simulation time in the Hypergraph 2D window.
- Select the drop-down on the toolbar containing the hypermesh icon
- Select the Hypergraph 2D option
- Under the data, file browse for T01 in the simulation folder
- Now we can plot the required graphs
Energy plot:
- We have almost negligible hourglass energy in the plot which is what we require as this energy is not real and just a concoction of solver in case of under integrated elements. As we have used recommended element formulations, there is very low hourglass energy in the model. This presence also explains the energy error of -1.8% as it is not calculated in the total energy.
- Contact energy is negligible as compared to other energies. It starts from zero and reaches the maximum value (gradually).
- The internal energy of the model also starts from zero because initially (before the crash) there are no external forces acting on the body thus there is no resisting energy. As soon as the car crashes into the pole, it starts developing internal energy as a result of resistive forces.
- The kinetic energy starts from its maximum value because of the initial velocity that we created and drops down gradually after the crash as the result of energy transfer.
- The total energy curve is almost constant. This indicates the fact that the energy is conserved. The drop in Kinetic energy is nullified by the gain in internal energy by the elements.
|
Energy |
Max value (Kg*mm^2/ms^2) |
|
Hourglass energy |
27.415 |
|
Contact Energy |
462.07 |
|
Internal Energy |
9520.29 |
|
Kinetic Energy |
17793.72 |
|
Total Energy |
27314 |

Force plots:
Sectional Forces at Cross members: As the pole is positioned exactly at the location of the B-pillar, that area experiences greater deformation. This is evident in this plot. The cross member at the bottom of the B-pillar deformed and developed less resistive forces that the cross member under the front seats.
|
Cross-member |
Max force (KN) |
|
Middle (B-Pillar) |
2.943 |
|
Driver seat |
3.426 |


Total resultant force on the body: From the graph, we can see the total force on the body is zero for the initial few ms and then shoots to the maximum value. This rise resulted from the crash. At this instant, the body of the car made an impact with the pole and develops a force to resist the deformation due to the impact. The force then drops down. We can say that the elements started failing and thus could not resist the impact load.

Rigid wall Forces: Like Total resultant force, the rigid wall force too starts from zero, reaches a maximum at the exact time when the body force was maximum, and then fluctuates throughout the time.

|
Force name |
Force Value (KN) |
|
Total resultant force on the body |
35 |
|
Rigid wall forces |
36 |
Intrusions: Studying intrusions gives us an idea of how much the element would move in during the impact. This is an important parameter keeping the safety of the passengers in mind.
|
Intrusion |
Max value (mm) |
|
Hinger Pillar |
90.25 |
|
B-pillar bottom |
444 |
|
B-pillar top |
301.90 |
|
Fuel-tank |
281.25 |

Peak velocity: We chose a node in the inner part of the driver-side door to see how quickly that node will intrude into the body of the car and move towards the driver. It can be seen from the graph that the node starts at 9mm/ms velocity and reaches the maximum at 9.2 mm/ms and later drops and fluctuates with time.

CONCLUSION: In this project, I was able to apply the classroom knowledge to:
- Create rigid wall and velocity
- Create sections and request outputs
- Check the model and run simulation