This article provides a step-by-step tutorial for the nonlinear structural analysis of a wheel. The objective of this simulation is to analyze the deformation and stress distribution across the wheel in operation mode, including nonlinear phenomena such as hyperelastic material, physical contact, and varying load.
This tutorial teaches how to:
The typical SimScale workflow will be followed:
Learn with the video!
The following tutorial is also available in a video format with all steps described in equal details. Experience this interactive way of learning and let us know your thoughts in the comments section.
To start, you can import a copy of the project into your workbench to follow along the steps by clicking the button below:
The following picture shows what should be visible after importing the tutorial project. You can find the geometries Wheel and Wheel-Quarter and their 3D model displayed. You can interact with the model as with any CAD program.
Did you know?
This simulation leverages the double symmetry of the model for two objectives:
It is always advisable to take advantage of symmetrical models in simulation. You can see the reduced model by selecting the Wheel-Quarter geometry from the tree on the left:
Now the simulation setup can be started. Follow these steps to create a new simulation:
The simulation library window appears. Select the ‘Static‘ analysis type and click the blue ‘Create Simulation’ button at the bottom:
As this structural simulation will include nonlinearities such as physical contact, hyperelastic materials, and varying load, the nonlinear analysis type must be activated. In the global settings panel that opens after creating the simulation, set the Nonlinear analysis toggle:
Now a new tree will be automatically generated in the left panel with all the parameters and settings that are necessary to completely specify such an analysis. All parts that are completed are highlighted with a green check. Parts that need to be specified have a red circle, while the blue circle indicates an optional setting that does not need to be filled out. Check the picture for an example of this:
You can find more details about what characterizes a static analysis here.
The analysis of the wheel will include the following operating conditions:
The following picture summarizes the nonlinear modelling conditions:
Two contact conditions will be specifed:
The bonded contact (1) is automatically detected and created by SimScale. It can be found under the Contact items under the simulation tree as Bonded 1:
Now, the physical contact (2) is created. Follow the instructions shown in the picture:
Click the check mark to finish the setup.
The selection of faces to be assigned the master/slave is performed according to the key points explained in the following article:
Next, add the material models from the material library. For this, we start by clicking the ‘+’ button next to the Materials node in the simulation tree. This opens a material library from which we select the adequate material and click on the ‘Apply’ button. This will then load the standard properties for the selected material.
In the settings panel, the target body that will have the material properties applied is assigned. Accept the selection with the blue checkmark .
Use these instructions to assign the following material to each body in the CAD model:
For the ground body, select the Concrete material from the material library, and assign the ground body (selected from the viewer or the Scene tree on the right), as shown in the picture:
For the wheel rim, select the PP (polypropylene) material from the material library, and assign the Rim body, as shown in the picture:
For the wheel tyre, select the Rubber material from the material library, and assign the mount+tyre body. As this body is so soft and will undergo large deformations due to the load and the physical contact with the ground, a hyperelastic material model is specified. Change the Material behavior to Hyperelastic, and set up the parameters as shown in the picture:
The input values are:
Now, we define the boundary conditions. To create a boundary condition, click on the ‘+’ button next to the Boundary conditions node in the simulation tree, and select the required boundary condition type from the drop-down menu, as shown in Figure 15.
Our first boundary condition will be to fix the ground. Select the Fixed support boundary condition from the boundary conditions drop-down menu. Assign the ground body by first activating Assign Volume from the top bar, as shown on figure 16. Give an appropriate name to the boundary condition, such as ‘Fixed support ground’.
The second boundary condition specifies the restricted normal displacement in the symmetry plane through which the model was cut. Select a Fixed value boundary condition, assign all faces belonging to the symmetry plane and set up the values as shown in the picture:
The second boundary condition specifies the symmetry around the second plane through which the model was cut. Use the same procedure as before and set up the condition as shown in the picture, assigning the corresponding faces:
Fixed Value vs. Symmetry Plane Boundary Conditions
You might have noticed that there is a boundary condition that is called Symmetry Plane, and be wondering, why didn’t we use this instead of a fixed value? There are actually two reasons:
First is that the Symmetry Plane works by creating some additional equations, to be able to restrict the normal deformation in slanted planes. These equations can create a ‘Singular matrix’ error, if there are shared nodes between the contacts and the symmetry plane assignment. Second is for performance reasons. Due to the mentioned additional equations, the computing cost and time increases. Thus, when possible, the Fixed Value should always be preferred.
For the operating load supported by the wheel, select a Force boundary condition. Assign the central cylindrical faces as shown in Figure 8. Then, click the varying load icon as shown in the picture:
The Specify value window will appear for us to input the load curve. In this case, we will use a table input, with the setup as shown in the picture:
Notice that our load force starts at zero, maxes out at \(t = 0.5\ s\) and then goes back down to the mean value at \(t = 1.0\ s\). The negative value indicates the force direction with respect to the Z axis. The load curve can be visualized in the following plot:
Did you know?
This type of load curve allows us to study the history of the deformations, and the amplitude of the operating stresses, which are useful in fatigue analysis and other failure assesments.
Time in nonlinear static analysis
As this is a pseudo-static simulation, the time units are expressed in seconds, but actually do not have physical meaning. It just indicates the sequence of the events. There are no velocity or acceleration effects taken into account in the model, and all phenomena are assumed to happen slowly.
The Numerics section of the simulation tree can be left with the default values, as they are good enough to solve this case. In most cases, you will not have the need to mess with these parameters, due to the carefully tuned default parameters.
For Simulation Control you also do not need to change any parameter. As we assumed the simulation interval to be the default value of 0 to 1, we can proceed without needing to touch this section.
Select the mesh option and change the Fineness setting to 10 as shown in the figure below. You do not need to click the Generate button at this step, as the mesh will be computed as part of the simulation run.
The last thing to do for running this simulation is to create a run. The new run is created by clicking on the ‘+’ button next to Simulation Runs:
In the pop-up window, you can give a meaningful name to the run, then click the ‘Start’ button to start.
The Job status item below the simulation tree updates the status of the run. Also, a Solver log is provided after a few seconds which shows the exact output of the actual computing algorithm. The simulation run should take a few minutes to be carried out. Once the simulation run is Finished, we can post-process the results.
Once the simulation is finished, you can post-process the wheel load results on the platform in one of two ways:
In order to examine the stress results on the wheel, we should change the field assigned to the parts coloring, in the Filters panel:
The parts are now colored according to the levels of stress, but we will perform some tweaking to better visualize the results:
You should end up with the following visualization:
Figure 28 shows the stress distribution on the model of the wheel at the time of maximum load. It can be seen that maximum stress levels of around 38.8 \(MPa\) occur at the rim radius element and at the contact patch between the tire and the ground.
In order to visualize the deformed shape of the wheel, create a Displacement plot:
The details of the deformation of the tire in the region of contact with the ground is well appreciated.
We can visualize the loading and unloading process and the evolution of the deformation by creating an Animation filter, the same way we added the Displacement filter (see Figure 29):
The default parameters are enough for our purpose. Click the ‘Play’ button to start the animation and you should see something as shown:
Animation 1 shows the deformation process and the corresponding contour plot for the von Mises stress. The load curve effect and the points of maximum deformation and stress can be appreciated.
Finally, we can take a look at the load vs. deformation plot, created locally by measuring the displacement of a point at the center of the wheel in post-processing tool Paraview, and using the known force curve:
Figure 32 shows the vertical displacement magnitude of a point at the load application face, versus the applied load magnitude. Here, the nonlinear behavior of the model can be clearly seen, with the curvature of the load vs displacement curve following the hyperelastic behavior on the loading and unloading steps.
If you want to learn more about SimScale’s online post-processor, you can have a look at our dedicated guide:
Congratulations, you finished the differential casing tutorial!
Last updated: August 16th, 2021
We appreciate and value your feedback.