×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

can I calculate the memory requirements for Sparse/Direct solver?

can I calculate the memory requirements for Sparse/Direct solver?

can I calculate the memory requirements for Sparse/Direct solver?

(OP)
I have a problem with about 200,000 elements (SOLID186 I believe) in ANSYS Workbench v10, and has about 330,000 nodes.  There are only 2 main bodies in contact with each other, however, there are nearly 100 frictional contacts occurring in the model (it's a spline shaft inside of a female spline, assembly).  My computer has 3 GB of memory, 2 CPU's, and ANSYS Direct solver tries to find a solution, but looking at Windows Task Manager, it appears ANSYS tries to allocate too much RAM memory about an hour into the solution, and a fatal error occurs after it cannot get enough RAM it appears. (I look at memory in task manager, and just before fatal error it tries to allocate more than 3 gigs and fails) I've tried increasing the windows page file and that doesn't seem to help, it looks like it's trying to grab more physical ram that it cannot obtain.

I've tried using the iterative solver on smaller spline problems even, and it NEVER converges, even after 3 or 4 days, it fails miserably to converge.  So I'm stuck with Direct solver here.  Direct solver can solve much simpler spline problems no problem.  Problem is my assembly problems are getting bigger at 200,000 elements or higher due to complexity of models.

I've seen -m commands, do you think I might be able to tweak the memory settings a bit and get it to solve?  or do I need more RAM and can you calculate how much I will need?  Thanks.

here is some pictures showing what the model looks like:
http://members.shaw.ca/coteesh/ansys/spline1.gif

Here is a bit of output from the ANSYS solver...


 SPARSE MATRIX DIRECT SOLVER.
  Number of equations = 971529,    Maximum wavefront =    496
  Memory available for solver =              375.71 MB
  Memory required for in-core =             9661.24 MB
  Optimal memory required for out-of-core = 1137.84 MB
  Minimum memory required for out-of-core =   76.67 MB

*** NOTE ***                            CP =     329.641   TIME= 11:22:55
 Sparse Direct Solver is using the least out-of-core memory.             
  For better CPU performance increase memory by 762 MB using -m option   
 (refer to the Basic Analysis Procedures Guide, Ch.  19).                
 curEqn= 280732  totEqn= 971529 Job CP sec=   2492.875
      Factor Done=  26% Factor Wall sec=   2703.274 rate=  570.2 Mflops
 curEqn= 339993  totEqn= 971529 Job CP sec=   2564.844
      Factor Done=  27% Factor Wall sec=   2740.434 rate=  581.4 Mflops
 curEqn= 342208  totEqn= 971529 Job CP sec=   2701.531

,..............(etc etc....).......

curEqn= 971529  totEqn= 971529 Job CP sec=   8541.109
      Factor Done= 100% Factor Wall sec=  11076.728 rate=  527.8 Mflops
    EQUIL ITER   1 COMPLETED.  NEW TRIANG MATRIX.  MAX DOF INC=  0.3082E-01

...... etc.....

 *** FATAL ***                           CP =    8796.594   TIME= 14:34:05
 Insufficient memory error during solution.  Please reduce your problem  
 size or increase your system swapped space (refer to the Basic          
 Analysis Procedures Guide, Ch.  19).                                    

 ALL CURRENT ANSYS DATA WRITTEN TO FILE NAME= ansabort.db
  FOR POSSIBLE RESUME FROM THIS POINT

RE: can I calculate the memory requirements for Sparse/Direct solver?

Hi,
first of all, verify you have the /3GB switch in the boot.ini.
If already so, then try the Ansys command
BCSOPTION,,default,2500,,,performance

where "2500" is the solver's workspace you want to specify to Ansys (you may need to adjust it following your possibilities, i.e. to the max RAM available before launching the job - see Task Manager), and "performance" is a key to enable additional diagnostic messages.

However, the problem size (9661.24 MB...) is such as to let forecast memory problems at some stage of the solution process...

Hope it helps some way...

Regards

RE: can I calculate the memory requirements for Sparse/Direct solver?

Just wondering if it wouldn't be a help switching to other elements for your model, if it's correct that your model is meshed with SOLID186. That is a 20-node brick element, but by looking at the picture of your spline I surmise it's meshed with tetrahedra - I guess it could be worthy changing your element type to some tethahedral, 10-nodes element (depending on your necessities, SOLID92 or SOLID187).

Doing so you can probably save quite some substantial amount of memory, computational time and disk space.

RE: can I calculate the memory requirements for Sparse/Direct solver?

It sounds like your model is made of SOLID187's now from your node/element numbers given.  Why do you want to use the sparse solver for this?  In my experience with running models with a high count of solid elements iterative solvers are much fasters.  I would use the pcg solver for this.  It is nearly as robust as the sparse solver, typically converges in significantly fewer iterations, and uses less memory.  I would insert the following commands under solution:

eqslv,pcg
pcgopt,auto

I think the PCG should want to allocate about 1.5 GB or thereabouts to this type of job.

Good luck,
-Brian

RE: can I calculate the memory requirements for Sparse/Direct solver?

Hi,
it seems this is one of these cases for whom the Ansys Manual itself (Contact Technology Guide) suggests to use direct solvers instead of iterative. In fact, in particular cases of contact problems, iterative solvers can become extremely unefficient or even not converge at all...
The suggestions about changing elem type are probably the best way to go.

Regards

RE: can I calculate the memory requirements for Sparse/Direct solver?

(OP)
DonTonino, using ANSYS Workbench I'm not sure there is a way to change the element types?

RE: can I calculate the memory requirements for Sparse/Direct solver?

Hi,
coteesh, WB doesn't provide any direct way to change element types. You will have to use a Commands snippet in the Environment of the solution, incorporating something like that:
/PREP7    !accesses the pre-processor
ET,<num>,SOLID92,<keyoptions> !where <keyoptions> have to be specified following your needs, see the Help for SOLID92.
TCHG,SOLID187,SOLID92,<num>
/SOLU

If the TCHG doesn't work, you can try this:
/PREP7
ET,<num1>,SOLID95,<keyopt1>
ET,<num2>,SOLID92,<keyopt2>
ESEL,s,ENAME,SOLID187 !this is in order to select only solid elements, disregarding contacts/targets
EMODIF,all,TYPE,<num1> !change SOLID187 to SOLID95: they are 100% identical in the topological definition
TCHG,SOLID95,SOLID92,<num2>
/SOLU

Hope this helps

Regards

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources