Static & Modal analysis of vehicle chassis

  • Last Post 4 weeks ago
  • Topic Is Solved
timescavenger posted this 10 April 2019

Following a previous post, I finally achieved some outcome after getting rid of an unconnected part which was preventing the setup to solve.

In the attached archived file, a non-stressed modal analysis (just to check all parts were connected and no rigid-body movements are present) produces frequency results that look very low:

Is that reasonable/credible? What guidelines can be used to assess it?

Stranger than that is the error in the Static analysis which, apparently, does not prevent the solver to also produce results:

This error looks says "insufficient disk space" although results are visible:

But, apart from eventual build-ups in stress concentration areas, are these results reliable? They look quite weird, don't they?... again, how do you assess reliability of outcomes? (The convergence tool to find mesh-independent results did not achieve the 1% goal either)

Attached Files

Order By: Standard | Newest | Votes
peteroznewman posted this 10 April 2019

1) Delete the stress convergence tool. This geometry is full of stress singularities like sharp interior corners so the stress convergence tool is inappropriate.

2) Delete or move files off the drive until you have a sufficient amount of space > 10 GB.

3) Set the Mesh details to use Adaptive instead of Curvature to reduce the number of elements.

4) Mode 1 shows the sheetmetal anchor to one of the springs passes through the tube frame. This is the reason for the low first natural frequency. You could add bonded contact to prevent this.  After you do that, carefully check the motion (play the animation) of all the modes and look for unconnected motion that should be connected, and add the connection.

timescavenger posted this 10 April 2019

1. Since every model has a lot of stress-concentration areas when it is a bit complex, how/when do you use this convergence tool then? Will it be ok if scoped only to areas containing no singularities?

2. I already have 16GB free in my C. drive and more than 200GB in my D: which is the drive I use to store all my ANSYS files...

3. Did it: certainly many less elements (>400K before) but also worse quality (0.82 average before):

and some extra warnings...:

4. I fixed the beam-bolt instead: reference and mobile were only scoped to holes in the plates but not to holes in the tube.

Anyway, so far is running. Let's see what comes out...

peteroznewman posted this 10 April 2019

1. Only use the stress convergence tool when the highest stress is located on geometry that has smooth blends.

3. If you set the default element size to 5 mm, you will get a nicer looking mesh. The point is, use a fairly coarse mesh while you are verifying the model, finding and correcting mistakes.  After the model is correct, then you can refine the mesh where needed.

  • Liked by
  • timescavenger
timescavenger posted this 10 April 2019

Fair enough! This is what I got this time with the last adjustments:

1. It looks like the modal outcomes are ok: no disconnected parts and, apparently, reasonable deformation modes although frequencies still remain low... ¿?

2. Effectively, the mesh achieved a good quality (0.909 average) with not so many elements (121K) although I find the dispersion still too high (0.133) meaning there are still many elements of low quality: sometime/somewhere I learned you can consider good quality elements above 0.8... is that right? what will be your take on that? Other warnings still appear but I think the mesh could be valid, right?

3. Weak springs had to be added because apparently some bodies may be underconstrained and experiencing rigid-body motion... but I see the 6 dof in 3 points are well restrained and all parts look well connected. When/how do you know if this warning is important or negligible and what to do about it?

4. The solver output text file shows 4 warnings and 0 errors but the Solution object appears uncomplete with the yellow bolt instead of the green mark:

and the Project Schematic shows these 2 error messages and shows also uncomplete:

What/why is this? And, are these results (even if refinable) finally valid/usable? If so, the next step will be how to interpret/use them...

5. I scoped the convergence tool just to the central outer cylindrical shaft (no corners, no sharp blends) just to check how it worked but still sharply diverged...

Enough for today I guess... ;-) Thanks once more.

Attached Files

timescavenger posted this 11 April 2019

Hi Peter, did you see my last post?

peteroznewman posted this 11 April 2019

I didn't see your post till now, probably because I was working at my day job : ) I am only here after hours.

I made the following changes to your archived model, all under Analysis Settings.

a) Turned on Large Deflection, which makes it a nonlinear solution => requires iteration to converge

b) Turned on Auto Time Stepping.

c) Set the Initial Substeps to 5

d) Changed Solver Type to Direct

e) Deleted the Convergence under the Equiv Stress.

It took 23 iterations to solve.  

The Safety Factor plot relative to Yield Strength shows the tops of the tubes and the arms have exceeded yield.

You can see a discontinuity in the stress along the top tube which is caused by the remote mass being supported at those four circles.

Answers to your questions.

1) If the masses, spring rates and connections are correct, then you can trust the Modal to give an accurate result.

2) I don't spend a lot of time looking at mesh quality. ANSYS meshing has its own limits of acceptable quality.  When meshing fails, then I take action.

3) In a fully constrained model like this, when Modal has no zero frequencies, you can turn off Weak Springs. They are useful when the only thing holding a part is frictional contact, and it helps the solver get started when there is almost no load at the first substep.

4) I didn't get any errors. 

5) This tube has bonded contact to the piece that goes inside this tube. This is causing the stress to be concentrated in a small area. The real assembly would have frictional contact on these two surfaces, and maybe a pin in a hole to prevent the two parts from sliding axially. As you model more detail, you can get to parts that will not have a singularity, but you will need a lot of elements.

timescavenger posted this 11 April 2019

Sure! just wanted to know your take on it. Really grateful once more and will bear your feedback in mind

peteroznewman posted this 11 April 2019

When you support a point mass over widely spaced edges the way you did in this model, you have to be concerned that the connection elements can start to add some stiffness to the frame, since they are creating a bridge from one side to the other. There is a rigid setting that actually makes a rigid frame above the real frame. It might be better to divide the mass by four and put four point masses much closer to each circle.

  • Liked by
  • timescavenger
timescavenger posted this 12 April 2019

All very useful and interesting. I will work on all that and try some other scenarios I devised over this weekend (I am also doing this off my main job ;-). Will keep you posted. Regards

timescavenger posted this 14 April 2019

I went through all the issues discussed so far and this time I got results with no errors (still don´t know what happened before and the reason for the error messages: this kind of "unknowns" use to drive me crazy and sometimes they make me doubt about my understanding of the software workings...). Anyway, just to close the post I'd like to recap with some conclusions and, if possible, have your feedback on them (right or false I mean):

1. The "large-deformation=ON" nonlinear analysis serves to confirm that the "small-deformations hypothesis" linear analysis was acceptable since their outcomes are very similar. So, unless new nonlinearities are introduced in the model, the linear approach is valid to model other possible scenarios (maneuvers).

2. The simplified bike-frame was modelled only with the purpose of establishing more realistically the sidecar-chassis bolted connections to it but, since the bike is not the aim of the analysis and is not correctly represented by this model, the results on it (in particular, the discontinuities as a results of how the mass was attached to the geometry) are negligible. Does this approach make sense or are there better ways to go about it?

3. The weak springs issue still left me a bit hesitant: I ran the case with and without them. The results were similar but in the 1st case a probe on them amounted to some 50N. I thought that a way to confirm they were dispensable was to set them ON and check in the results that a probe on them produced also negligible values (meaning several orders of magnitude less than reactions in BCs supports). Indeed 50N is much less than the 2500N of the smallest reaction force (in the bike rear wheel support) but, can that be considered negligible?... 

4. After the static structural I also ran a pre-stressed modal one using the results of the former. The outcome is very similar to the first natural (unstressed) modal: same modes with very close frequencies. I am not sure how this should be interpreted or used...

5. These results should serve as a first approach diagnosis to identify most stressed areas where a more refined submodel will produce more reliable and accurate results.

6. In any case, this setup should be considered as an approximation to the real case which is dynamic but, since this static analysis forced the wheels axis (specially the front wheel one) to be constrained in their displacement DoFs, the results are somehow more severe than those which will appear in the real life case, where tires friction and shock absorbers will limit (i.e. reduce) stresses and deformations and the (fully) constrained points will be really moving. I.e. the static analysis could be considered as a worse "overstressed" case, right?

7. In relation to this, I wonder whether a "dynamic safety factor" (which I have seen used in some literature) makes sense: should/could be applied? and, if so, exactly why and how? (applied to results or previously to loads)...

Many thanks for your useful help!

peteroznewman posted this 14 April 2019

1. If the outcomes are very similar, then you can turn off large deflection and spend less time waiting for the solution. The classic example is a 1m long horizontal cantilevered beam with an end displacement 1 m downward. The linear solution is the tip follows a straight line 1 m down, making the beam lenth over 1.4 m long! The nonlinear solution (large deflection on) is the beam doesn't get any longer, the tip follows a curve on its way down. These two solutions are obviously different.

2. It's fine to have roughly modeled components that are there to provide loads and supports to the components of interest and to ignore the stress results on those components because they are not modeled correctly. The way to ignore the stress on those components is to exclude those bodies when creating a stress result. There is a Scope line that defaults to All Bodies. Select All with a Ctrl-A then with the Ctrl key held, click the body you want to remove, leaving only the bodies of interest and you will only get stress results plotted on those bodies.

However, at some point, it would be worth creating a correct model of the bike frame to check that the new loads on the bike frame are not excessive.

3. If your model solves with weak springs off, then turn them off and you can't look at them. Only if your model will not solve without their help do you have to evaluate their contribution to the solution. I almost never need weak springs. But if you need them, then a 2% contribution would be acceptable.

4. It means there is no stress stiffening in this model. The classic example of stress stiffening is a guitar string. If you have a model of a long thin beam fixed at both ends, it will have an extremely low first natural frequency. If you apply a large amount of tension in a Static Structural model, then link that solution to the Modal setup cell, now you can get high frequencies in the audible range.

5. Yes, but the results are only as good as the inputs, as you mention in point #6.

6. The static model can be a fairly close representation of the peak stress in the frame if you have the right constraints, forces, torques, masses and accelerations applied. 

You had an acceleration load to represent the braking and turning acceleration, but I wonder why the braking and cornering accelerations are so low.  Dividing the number by 9.8 m/s^2 converts it into a G-force scale. You have only 0.02 and 0.01 G of acceleration. That is tiny. Is this to simulate taking your grandmother out for a Sunday drive? If this bike was in a race, it could easily reach braking and cornering accelerations of 0.3 G. I created an acceleration load shown below.

Here is another idea, when turning left while braking, most of the weight would be on the front and outside wheels, while the rear wheel would carry little weight. Therefore, I recommend that the outside wheel take the YZ = 0 constraint, while the rear wheel takes the Z=0 constraint. This lets the front and outside wheel support the sideways cornering force, which puts more stress into the sidecar frame.

The distance of the side-car tire contact point from its axle causes a bending moment into the side-car frame due to cornering accelerations. You should use a remote displacement to the tire contact point instead of at the axle for rueda-webo_YZ=0. Without that offset of the remote displacements, this model is less severe than it should be. I moved the remote point down by 300 mm on the front and rear wheels, and down by 200 mm on the sidecar wheel.

7. Safety factors are used to cover the unknowns in the inputs, the materials, the geometry, the connections, etc. I don't know what to use for that. It depends on the severity of the consequence of failure. Follow the practices in the literature.

  • Liked by
  • timescavenger
timescavenger posted this 15 April 2019

Everything understood. In fact, the low braking and cornering accelerations were incorrect in the model I sent: now they are already corrected. I will also try new runs including your last suggestions... keeps very interesting!

timescavenger posted this 15 April 2019

Peter, I just realized I did not model correctly the two eye-bolts joining the Y-tubes with the plates: the "eye-end" makes a ball-joint so the corresponding spring-end represents it adequately (like it does at both ends of the straight struts) but the other end is threaded to the rigid Y-tube end so the other spring-end does not fit with its behaviour:

I have the feeling I did not understand well your suggestion on how to model this part... could you confirm this and elaborate on how to correctly simplify this? Thxs. 

peteroznewman posted this 16 April 2019

You mean this eye-end?


Put a remote point at the center of that eye, scoped to the circular edge back where you have a midsurface.

On the other side, you have two plates as part of a weldment with holes where a bolt would be supported by the plates and the bolt would go through the eye.  Make a remote point scoped to the two circular edges of the holes in the two plates. Now use a spherical joint to connect the two remote points. This replaces the spring you have currently used in the model which is providing an unwanted degree of freedom.

If you do that in two places, you will have an overconstrained assembly, since in a real assembly, the length between the eyes on one side will not be exactly equal to the length between the plates on the other side, but in a real assembly there is plenty of slop. But in this model, there is no slop, unless you make one joint spherical, and the other joint cylindrical with the axis pointing to the spherical joint. That way, if there is a small error in the CAD model, the joints won't create artificial stress if the lengths aren't exactly equal on both sides and you used two spherical joints.

  • Liked by
  • timescavenger
peteroznewman posted this 16 April 2019

If you change a connection in a model, such as editing a joint, all downstream analyses that use that model will need to be solved again.

  • Liked by
  • timescavenger
timescavenger posted this 16 April 2019

Sure! Sorry, that was a stupid mistake I overlooked... Here are my new results after the last changes. However, I still keep on receiving annoying warnings (some related to rigid-body motion) of which I don´t know how to get rid of...:

Any comments?

Attached Files

peteroznewman posted this 16 April 2019

I haven't looked at your revised model yet, but you can safely ignore the warnings about rigid-body motion because you know that you built a model that has rigid-body motion.  You have joints which make a hinge, and stiff springs to keep the hinge near the initial configuration. The solver detects the freedom in the model and provides a warning, because most static structural models don't have any rigid-body motion. Your model deliberately has that, but the solver doesn't know your intention, it just provides a warning for the users who made a mistake and accidentally have a model with rigid-body motion.

To get rid of the "Two or more remote boundary conditions are sharing a common edge..." warning, create a remote point at each edge you are using in more than one boundary condition and scope the multiple boundary conditions to the remote point instead of using the same edge more than once. That is a best practice.  When it says "boundary condition" that can mean the connections to joints and point masses as well as displacements and forces.

  • Liked by
  • timescavenger
timescavenger posted this 16 April 2019

As you will see, results changed quite a bit from the previous setup and most stressed areas appear now in the front left corner of the chassis. I thought to refine the mesh in this area or maybe define a submodel to investigate it in more detail. I intend to do the same with the most stressed bolts.

I also wonder how the downwards reaction in the bike rear wheel should be interpreted and dealt with: it means the wheel would lift off the ground if not constrained, right? What then? Is this analysis only valid until the moment this happens?

Another consideration: do you think it would be very difficult/worth trying a transient analysis with the same setup in order to compare outcomes from both approaches?

peteroznewman posted this 17 April 2019

I played with the accelerations to find values that would result in the rear wheel having an upward reaction force, to avoid the condition where the bike would do a forward roll if the rear wheel was not nailed to the ground.

By all means do the transient analysis.  In a transient, you can apply a time-dependent acceleration and have actual frictional contact of the tire to the road. I have been on a bike and hit the brakes so hard that the rear wheel started lifting off the ground, but then I released the brakes and it fell back down. It will probably be simpler if you adjust the acceleration to keep that from happening.

  • Liked by
  • timescavenger
timescavenger posted this 17 April 2019

What do you mean by frictional contact in the tire to the road? The tires are not modelled and the bike itself neither... or can this be obtained from the remote boundary conditions as they are currently defined? Any other hints?

peteroznewman posted this 17 April 2019

The lightweight way to create the effect of a tire supported by the road, with the ability to lift off the road is to put a COMBIN40 spring element that can define a gap. Read the online help for this element and read this discussion. This is more like a frictionless contact with the road, but it has the degree of freedom that the remote displacement lacks.

  • Liked by
  • timescavenger
timescavenger posted this 17 April 2019

Wow! That´s hard stuff... very appropriate for the coming Easter week :-) I´ll give it a try

timescavenger posted this 18 April 2019


Put a remote point at the center of that eye, scoped to the circular edge back where you have a midsurface. On the other side, you have two plates as part of a weldment with holes where a bolt would be supported by the plates and the bolt would go through the eye.  Make a remote point scoped to the two circular edges of the holes in the two plates. Now use a spherical joint to connect the two remote points. This replaces the spring you have currently used in the model which is providing an unwanted degree of freedom.


When you model the eye-bolts like this you don´t get the chance to define the stiffness like you had with the struts modelled as springs, do you? You can define the remote-points and the spherical-joints behaviour as deformable but, what exactly that means and how does it compare with having the option to introduce a numerical value for the stiffness?

peteroznewman posted this 18 April 2019

If you want to include the flexibility of the length of material between the center of the eye and the first threads in the pipe, use a Free Standing Remote Point, and insert a Beam connection between the remote point and the circular edge of the pipe midsurface. You assign the radius of that solid steel beam. Now the eye-bolt point has the full flexibility of the beam. Unlike a from the end of the pipe, the beam is cantilevered and can support lateral loads as well as axial loads.

You'll have to read the ANSYS Help system to try to find an answer to how exactly a deformable connection to a remote point is defined. 

  • Liked by
  • timescavenger
timescavenger posted this 18 April 2019

Fair enough. Thanks once more. Have a nice Easter

timescavenger posted this 5 weeks ago

It's this what you proposed? Not sure how is the indicated beam end constrained/defined?

Or maybe you meant to keep the spherical-joint and combine it with the beam end corresponding to the eye center? In this case you will have 3 remote points: one at the centre of the pipe edge, a second one at the centre of the eye and coincident with last one the 3rd one; the beam would join 1 and 2 and the spherical joint 2 and 3... Did you mean any of these two or maybe even something else?

timescavenger posted this 4 weeks ago

Hi Peter, nothing to add? didn´t I explain it very good? Sorry if that´s the case

peteroznewman posted this 4 weeks ago

You can try to use a Beam End Release to create the effect of a spherical joint at the eye end of the beam without having to make an actual joint. That is simpler and cleaner. 

If that doesn't work, then you have to put a remote point at the beam eye-end and put a spherical joint between that remote point and the coincident remote point at the center of the support plates.

  • Liked by
  • timescavenger
timescavenger posted this 4 weeks ago

Peter, I tried that but "End Release" option is not enabled for Beam-connections!:

When you place the cursor over the menu a yellow label saying "End Release for Line Bodies" appears! So I guess I will have to use your 2nd suggestion...

This also led me to recall the other question I asked you in this other post: are these two issues somehow related? I mean: what´s the difference between beams defined from line-bodies and beams defined as connections? and, when/what for do you use one or the other? (e.g. if you want to have "ends-released"?)...

peteroznewman posted this 4 weeks ago

There are three levels of Beam available.

1) Line bodies drawn in CAD and imported with Cross-Sections defined. This is the only type of beam that can have a non-circular cross-section and you can get all the beam output results from these beams. You can use Beam End Release on these.

2) Under the Connections Folder, Insert > Beam.  This creates a circular cross-section beam that has a mobile and a reference end with locations defined in the Global Coordinate System (which can be overridden by another csys).  You can get all the beam output results from these beams.  I don't know if you can use Beam End Release on these.

3) Under the Connections Folder, Insert > Manual Contact Region > Type: Bonded Contact > Formulation: Beam.  This also creates a circular cross-section beam. I don't think you can get beam output results from these, but there may be some Contact results.

There is a huge advantage to the third method over the second method when the geometry is linked to a CAD system like SpaceClaim, or in my case NX, and the geometry is edited and the entities the beam was scoped to move to a new location.

In case (3), the beam is scope to the entites and the ends of the beam move with the entities, which is exactly what you want.

In case (2), the beam ends have fixed global coordinates and the beam stays were it is while the entities it is scoped to move. This is not what you want. Say the entities are moved in CAD 1 m over to the side. This results in a model where the beam holding two adjacent entities a few millimeters apart is now 1 meter over to the side. The force from one entity is transmitted 1 meter over by connection elements, then a few millimeters along the beam, then another 1 meter long set of connection elements takes the force to the other scoped entity. This obviously leads to very wrong answers. Before there was such a thing as case (3), the workaround is to scope a local coordinate system to each entity, and select that local coordinate system, before picking the same entity to scope the reference end of the beam to. If you pick the entity then change to the local coodinate system, you get the wrong result. Repeat for the mobile end.  Now when the entities move in CAD, the local coordinate system follows the entity, and so do the beam ends, which is what you wanted in the first place.

  • Liked by
  • timescavenger
Show More Posts