Chapter 15 | Simulating Ejections


Occupant ejection scenarios can be created easily in Virtual CRASH 3. With its ability to modify vehicle polygon meshes, the user can remove windows or crush pillars to allow for the creation of ejection portals. In this write-up, we will walk through the steps of creating an ejection scenario.

 A video of the resulting simulation can be found below: 

Virtual CRASH 4 Users

Note to Virtual CRASH 4 users regarding alternative methods for creating ejection scenarios: by using the “convert > to rigid body” feature, you hold a multibody occupant in a seated position by using spherical joints and increasing the multibody joint stiffness until the vehicle trips, at which point the spherical joints can be released and multibody joint stiffness values can be reduced. This method works for both animated vehicle rollovers or simulated rollovers. By using this approach, it becomes unnecessary to use the “New Simulation Point” method described below. See the following Blog post for more information:


The Plan of Attack

Rollovers tend to be longer time-scale events compared to simple vehicle collision events. Because of this, special care must be taken to simulate occupant motion within a vehicle involved in a rollover. Most biomechanics-type simulation tools, such as ATB, will treat the occupant model as essentially a flaccid body, with no active muscle control – Virtual CRASH is no different. This works reasonably well at simulating the overall motion of a body in short time-scales, where muscle control over posture can be neglected as the relative velocities increase between the occupant and the cabin, and resulting subsequent contact forces can also be treated, to a reasonable approximation, without regard to the particulars of the occupant’s conscious muscle control over posture; however, for longer time-scale events, this is not case. Simulated occupants will tend to “slump” well out of position before any appreciable relative velocity builds up between the occupant and the cabin, often times creating a nearly useless simulation of the actual accident event.

Virtual CRASH 3 includes the ability to simulate an “optimized” human model that will hold its pre-impact pose until it comes into contact with a surface within the environment, at which time the pose is “released” and the human model is treated as a flaccid body (the user can control joint rigidity). This is a highly desirable feature, especially for pedestrian impact cases. Indeed, one approach to simulating occupant motion is to first pose the occupant in the vehicle, ensuring that there is no contact between any part of the interior and the human model, and then using the optimize feature, to allow the vehicle and model to move together in constant linear motion until an outside force acting on the vehicle causes significant relative motion between the two objects. For rollover events, this is more difficult as there are usually steering inputs involved before the rollover occurs. These steering inputs will cause relative motion between the occupant and cabin, thereby causing contact between the human model and cabin, which will then cause Virtual CRASH to “release” the optimized pose. Our plan of attack for this exercise, therefore, is to create a multi-part simulation, where the occupant is simulated at a particular starting point in the vehicle motion in order to mitigate this specific issue. In what follows below, we will force our vehicle to rollover, causing the driver side window to break, thereby opening an ejection portal out of which our occupant will be thrown.

Place Vehicle into Scene

Let’s start by placing our vehicle into the simulation environment. For this example, let’s choose a Ford F-150 pickup truck.

Input Steering Data

Before placing an occupant into the vehicle, let’s simulate a loss of control, leading to a yaw, trip, and roll scenario. Place the vehicle center-of-gravity (cg) at (x,y) = (0 ft, 0 ft). Change the cg height to 3 feet to facilitate a roll for this example. Next, in the “sequences” menu in the left side control panel, at time = 0 seconds, enter a 30 degree steering input over 0.5 seconds, and at time = 1 seconds, enter a -30 steering angle input over 0.5 seconds (see next two figures below). Note, in sequences, the steering inputs are given the label “deceleration.” Do not be concerned with this since the specified braking rate is 0 ft/s^2.

Increase Maximum Simulation Time

Since rollover events tend to develop over longer time scales compared to simple vehicle collisions, it is useful to increase the simulation’s maximum time. Left-click away from your vehicle environment in the scene window. This should reveal the simulation environment menus in the left side control panel. Left click on “time” and set the “time-max” option to 10 seconds.

Visualize Vehicle Trajectory

For rollover events, it can be useful to visualize the vehicle position and orientation at various distance or time steps, especially in scale diagrams. To accomplish this, left-click on the vehicle, and then left-click on “interpositions” in the left side control panel. Select “step” and choose “distance” criteria. Set the distance to 20 feet to see the vehicle’s position and orientation every 20 feet.

Deselect “step” to disable this feature to continue working on the simulation. Now save your simulation to a file.

Create New Simulation Point

As discussed above, a common problem in simulating occupant kinematics for events with long characteristic times is that there is no good way for a body to be held fixed in place to simulate active muscle tension and movement of the occupant. Therefore, we want to “start” our occupant kinematics simulation at a moment where the relative motion between the cabin and occupant begins to play an important role in the occupant’s overall behavior. Rather than having the human model “slump” over as a gradual steering maneuver is made during the simulation, it is better to simulate the motion of the vehicle first, then select a critical time in which to start simulating the behavior of the occupant. To do this, we will make a “New Simulation Point.” Select the vehicle, and move the time slider to about 2.5 seconds. Next, using the upper toolbar, go to “Create,” “Physics,” and then “New Simulation Point.” This will create a new simulation whose initial values are based on the selected time-step. Save the simulation to a new filename. 

Note the Initial Configuration

Create a report for your vehicle at this stage in our analysis. Take note of the initial parameters at time = 0 seconds. We will be needing these below.

Place the Occupant into Scene

Now place a human model into the scene. Select the “driver” pose.

Next, turn off the physics simulation by left-clicking on “Create,” followed by “Physics,” and finally “Stop Simulation.” Select the human model, and deselect “auto align to plane” so that you can move the human model into the cabin.

Place the Occupant into Vehicle

Using the initial angular data from the report above, position your human model with the same orientation as the vehicle’s at this time-step. If you wish to have the model hold its initial pose as long as possible, then move the human model around within the cabin to ensure no part of the body is in contact with any of the contact surfaces. You may have to modify the articulation angles of various joints to ensure body parts are not in contact with surfaces. This is particularly important in cases where the initial portion of your vehicle’s motion is relatively constant; in such cases, the optimization feature will allow the human model to travel along with the vehicle without acting like a flaccid body until the vehicle’s trajectory change causes enough relative motion of the body within the cabin to trigger an interaction with the body and contact surfaces. At that moment, the optimization tool switches off, and the human model will act as a flaccid body.

Set the Occupant’s Initial Velocity

Using the vehicle’s report data, set the human model’s initial velocity to match the vehicle’s. Note, we’re implicitly assuming that at this stage of the vehicle’s trajectory, rotational effects on the occupant’s body are negligible, and that the occupant is traveling with the same velocity as the vehicle cg. Now restart the simulation by going to Create > Physics > Stop Simulation. You should see a well-behaved human model moving with the occupant cabin as the vehicle overturns.

Create Terrain

Let’s suppose that as the driver side of the vehicle first made contact with the ground, there was a small increase in the terrain’s elevation, which caused the driver side window to break. We can simulate this by creating a “Plane” within our scene and modifying it. Create a plane near the area where the driver side first approaches the ground plane. Use the time slider to better locate the position where this occurs. 

If you haven’t already done so, freeze the vehicle object to prevent accidentally modifying it. With the plane object selected, go to “misc” in the left side control panel. Change the number of length and width segments to 50.

This is setting the “granularity” of our mesh, which we are going to deform below. You can get a better view of the plane’s polygons by using the “Hidden Lines” draw type.

Next, scroll down to “convert” in the left side control panel. Left-click on “to mesh” to convert the plane object into a mesh.

Next, left-click on “Vertices” selection type so that you can manipulate the mesh’s vertices.

Next, select “Proportional Editing.”

Restrict your mouse’s cursor control to be aligned with the z axis.

Left-click on one of the vertices within the mesh. You will notice a red circle around the control grip. This indicates the volume within which other vertices will be simultaneously manipulated; however, because you previously selected “Proportional Editing,” the effect a cursor movement will have on a given vertex will directly depend on the vertex’s distance from the control grip.  Begin moving vertices upward to create a slight elevation that intersects with the vehicle’s driver side.

When you are satisfied with your terrain, deselect “Proportional Editing,” place your cursor control type back to “Move and Rotate,” and change your selection type back to “Object.” With the plane object selected, go to Create > Physics > Make Unyielding / Terrain from Selection. You should now see your vehicle interacting with your terrain.

Save the current simulation. 

You should now see the vehicle interacting with the terrain.

Let’s now suppose that the contact between your terrain and the driver side window causes the driver side window to break, thereby creating an ejection portal. Move your time slider to the point where the window would contact the terrain.

Once again, go to Create > Physics > New Simulation Point. Save the simulation under a new file name. Now, stop the simulation. Choose the “Elements” selection type from the upper tool bar. Freeze the plane and multibody objects so as not to accidentally modify them. Next, left-click on the driver side window. You should see the window object turn red indicating it is currently selected.

Finally, press the delete key on your keyboard to delete the window. Back the camera out of the cabin, place your cursor selection type back to “Object,” and turn the physics simulation back on.

Final Result

Depending on a few settings, you will likely see the human model being ejected from the cabin.

You may have to adjust the human model’s joint stiffness, contact coefficient of friction, and contact coefficient of restitution, depending on your judgment of what is appropriate for your case. You now have three separate simulations associated with the event. One easy approach to make a single animation is simply to render each one separately and combine all three animations in a third-party animation tool.

© 2016 vCRASH, Americas, Inc. All Rights Reserved