Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Solver speed 1

Status
Not open for further replies.

dozer

Structural
Apr 9, 2001
506
Mirror, mirror on the wall, who has the fastest solver of them all? What about the slowest?

I recently started using STAAD.Pro (I know, most of folks in this forum use the more high end, general purpose FEA programs) and I'm amazed how slow the solver is. I've got a 6000 node model composed entirely of plate elements and its taking about 10 minutes to solve. This is nothing fancy, no nonlinear, no gaps, no nothing, just linear static analysis.

I've used SAP2000, COSMOS/M and DesignStar (I think the last two have the same solver) and they all would just laugh at a model this size. OK, maybe just snicker. I would like to be able to go to my boss and show him that there are faster solvers out there. Besides people's personal experience that you can share here, are there any resources that compare solver run times?
 
Replies continue below

Recommended for you

Interesting topic. Speed is nice but if the results are garbage then it is all academic. For simple types of analysis like linear static, COSMOS/M is probably the fastest. But they make a lot of assumptions and take many short cuts to make this happen. For example they do not rotate the stiffness matrix to handle a skew boundary condition. Instead they simply add a stiff spring in the direction desired. Certainly this saves time but can cause serious ill-conditioning and a loss of accuracy reducing the confidence in the results. For designers doing preliminary work this seems to be acceptable regardless.

For comparison to your numbers I ran our FEA solver (NE Nastran) for a similar shell model (7524 nodes). The model was a fuel tank so there was some complexity, not just a flat plate. It took 10 seconds for the entire run on my Intel P4 PC. I then ran a large model (1.1 million degrees of freedom, over 340,000 nodes). The model was of a bracket modeled using parabolic (tet10) elements. That run took 250 seconds. For both models I requested stress output. I think the reason NE Nastran is so fast is it using the same basic equation solvers as COSMOS but with different element formulations.

Older FEA programs may still use the slower skyline versus a fully sparse storage format which means more operations on zeros. For large solid models an iterative versus direct solver seems to work a lot better. Other types of analysis like eigenvalue extraction or nonlinear may take a lot more time since they involve multiple solves.

For small models and people on a budget these older, less efficient programs may be acceptable regardless of the solver times.
 
Hi dozer.

Having a lot of experience with "high-end" as you say,I suppose that Natran falls into that category (?), and also having colleges working today with STAAD.Pro.

STAAD.Pro works ok with beams by is extremely slow with plates for som reason. It is not a factor 2 or 5 or even 10, it's worse. That is my experience but I haven't done any serious testing.

I usually advice people that need to stay away from STAAD.Pro for a number of reasons.

Regards

Thomas
 
Fkmeyers, I agree that if you get garbage it doesn't matter how fast the solver. My problem with slow, accurate solvers is that they really take the wind out of your sails for doing a lot of "what ifs?". Also, if the solver is very slow, your more tempted to use larger elements than you ought and cruder models.

Hey, thanks for the comparison. That'll give me some ammo if I want to broach the subject of switching software.

Thomas, care to elaborate on why to stay away from STAAD.Pro? As you can see from my post, I'm having the same speed issues that you mentioned. I'm not emotionally invested in STAAD so you won't hurt my feelings.
 
dozer

I just say in my own post that I missed something.

What I meant to say is that if you need plates, stay away from STAAD.Pro.

Reasons?

Like you said, slow solver but also not at very flexible mesher and limited postprocessing capabilities.
STAAD.Pro works ok with beams and the numerous codes available makes it interresting. But like I said, I don't use it myself much today. So my primary experience is with the older versions.

My primary tool today is Nastran/Femap and that is an altogether different story. We did some tests a few years ago when we had real speed issues with STAAD.Pro. Plates and beams about 25000 nodes I think. For Nastran seconds, for STAAD.Pro hours, a bit exaggerated but the difference was huge.

Just my $0.02

Thomas
 
Thomas

I put some compression only springs in the 6000 node model I mentioned but pared it down to one load case. It took 42 minutes to solve! Unbelievable!

I agree about the postprocessor. It's not very good at all. For instance, the X and Y stresses are only reported in the local system and only the membrane stresses at that. The moments are just that, not the stress in the extreme fiber caused by bending in plate, but a moment per unit length value. What the heck is that? I wanted the stress at the extreme fiber in the local x direction so I had to import the data into a spreadsheet, calc the stress due to bending, then add it to the membrane stress. At least it does maximum principle and von Mises stresses.

Sounds like you've got the same issues with it that I have. I just don't see how they are able to foist this crap on the public. There must not be too many people who actually use plate elements in STAAD.
 
dozer

I am in the middle of modeling a curved continuous steel box girder bridge(lots of plates), and am having quite a bit of difficulty pulling off stresses. Reading through staad's manual I have figured out what stresses are output by staad, but like you said "what the heck is a moment per unit length". can you give me any advise on how to calculated stresses from what is output from staad. thanks.
 
A "moment per unit length" is probably just that. For example kNm/m for a slab/plate.
 
Just to clarify, when I said "What the heck is that?" I meant why are they presenting the data this way. I know what it is.

Now, on to your question, kwrohde. To get the stress due to bending divide the moment per unit length by the section modulus per unit length. In other words, divide by (thk^2/6). Don't forget, this is the stress at the extreme fiber due to bending. You still have to add in the membrane stress to get the total stress at the face. Good luck with the signs.

Now, I've got to get back on my high horse. Why should you have to do this? The data is all there so the program could easily give you the bending stress and total stress in the local coordinates. Other programs I've used do.

Oh, you could also look at von Mises stresses, at least these are reported for the top and bottom faces. So are principle stresses.
 
I think there is a very simple explanation for the membrane stress problem. Membrane stress are calculated from membrane force, obviously. What might not be so obvious is that this terminology is from the membrane theory. Basically, the assumptionan that an ideal shell will not have any bending moments, hence bending stress equals zero.

In the software I normally use there is no such thing as membrane stress given. Only Top/Bot Normal stress and I think that is much better.

Regards

Thomas
 
I use STAAD all the time and I have the same complaints on the speed. Right now I am modelling a very complex plate/shell structure (two concrete circular tanks, one inside the other with hydrodynamic loads). I applied the hydrodynamic loads at a node at the center of the tank on each level (every 2 feet) and linked these nodes to the shell so the hydrodynamic load could distrubute to the shell correctly. I specified these elements as tension/compression only elements. It took 9 hours to run and it still the analysis still did not converge when doing the tension/compression iterations!

I feel your pain.
 
Why do you STAAD users stick with this program if it is so slow? There are many better packages out there.
 
dmacx, as for me, I'm new at the company where I work. It's what they were already using. At my previous company we made the decision to jump off the STAAD boat.

Maybe after I build up a little credibility here, I'll suggest that they switch software also.
 
Why do I stay with STAAD?

Because up to this conversation, I thought all other programs had the same speed problem. Definitely a compelling reason to change now that I have this info.
 
On my boring PC the following model solved one static problem in less than 2 hours:

Number of nodes: 72103
Number of elements: 65536
Number of degrees of freedom: 216284
Number of non-zero stiffness terms: 8331680



Cheers

Greg Locock

Please see FAQ731-376 for tips on how to make the best use of Eng-Tips.
 
Greg,

What software are you using?
 
On my P4 2.8GHz with 1 gig of RAM the following model solved one static subcase in less than 4 minutes!

NEiNASTRAN VERSION 8.4.4.328
OPERATING SYSTEM = WINDOWS XP
CPU SPEED = 2806 MHZ
INSTALLED MEMORY = 1024 MEGABYTES

GRID POINTS = 141656
ELEMENTS = 81657

MODEL SIZE = 424968 DEGREES OF FREEDOM
MATRIX SIZE = 15973149 WORDS 182.8 MEGABYTES
SEMIBANDWIDTH = 353 WORDS

TOTAL CPU TIME = 220.9 SECONDS
WALLCLOCK TIME = 238.6 SECONDS

I would recommend a different program unless you like to wait hours for results.
 
It is the internal solver for Hypermesh. I don't think people use it for serious problems, but at least it gives an idea for the performance of modern solvers, even if it is cool factor of 30-60 slower than dmacx's!

Cheers

Greg Locock

Please see FAQ731-376 for tips on how to make the best use of Eng-Tips.
 
NE Nastran seems to handle large models very efficiently. Where we really see a speed up versus other solvers is with large parabolic tet meshes. To be fair to Greg's solver, which is not that bad either, this was a parabolic tet model. I ran some shell/beam models around the same size which took about 12 minutes to complete.
 
If you use STAAD for a model that has several thousands of gridpoints and shell elements then you are definetly in trouble. As far as I know STAAD is primarely useful for spaceframes. It's a structural software with an integrated codecheck. It's not a FEM-software. If you bought it as a FEM-software I would say you didn't do the evaluation properly. But that's just an opinion and I hope I don't offend anybody by saying it.

Personally I use MSC.Nastran and it has better performance than STAAD but no built-in codecheck. I prefer Nastran but for the occasional user who works a lot with structural codes and typically frame (beam) structures with up to say 5000 gridpoints i would say STAAD works just fine.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor