Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

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

Direct Solver vs. Iterative solver

Status
Not open for further replies.

sartorbjk

Mechanical
Nov 12, 2009
55
Hi everyone,

From bachelor years, I have learned that time-step-schemes can be implicit or explicit.

To solve my problem, I have selected DIRECT SOLVER in the STEP options of abaqus (I have a simple problem and a normal simulation takes like 30seconds to finish). I have a total time of 1 sec(let me use units) and I have given several initial, minimum and maximum time steps to see the evolution of the stresses during this 1 sec once the simulation is finished.

Going through the abaqus manual, i am a little bit confused and maybe you can help me to get rid of this confusion.

Now, to solve the Ku=F matrix equation, I am using the direct solver.

1) Does this mean that I am using explicit time-step-schemes?

2) If yes, is the solution procedure like this:
-From the continous integral equations (by discretization) I get a system of equation Ku=F,

for t=t1
Solve it with a method, like Gauss elimination (actually I do not know which method Abaqus is using, could you please tell me which method does Abaqus use?). Once I get the u values (they were the unknowns at t=0). And then, for the next time step, what is changing, K or F? and how do I get the next displacement values for the next time step, t=t2?

I would really appreciate your help. I am really confused.

Best Regards,
Sartor
 
Replies continue below

Recommended for you

Hi,

Theory manual (from Abaqus Documentation) has a chapter on procedures (towards the beginning) that I believe addresses your questions.

I think no decent FE code uses classical Gauss elimination which is would be too slow. FE solvers typically take advantege of sparsiness/bandness of K matrix to use more efficient algorithms.

See for example:


Also, explicit methods do not require solving systems of equations.
 
Direct solver is only related to how Ku=F is solved. Direct solver means doing something like Gauss elimination, but as xerf point out usually some more efficient algorithm is used (e.g. LU decomposition).

The other option is Iterative solvers. This basically means guess u, evaluate Ku-F, adjust u based on this, and repeat until Ku-F~0. This is usually something like conjugate gradient method.
 
xerf:
I have read the related parts in "Procedures" section of the manual.
For my simulation, I am using:
Equation solver
Method: Direct
Matrix Storage: Use solver default
Solution technique
Solution technique: Full Newton

Now, when I look to Full Newton, it is an iterative method in the manual.
I am really confused. If I choose DIRECT SOLVER, how is it possible that I am using an iterative solution technique?

TERIO:
you are totally right. However, I exactly want to know how I solve my Ku=F (gauss elimination, or LU decomposition...) I know how all these methods are working. But, I could not understand which one ABAQUS is using for my problem?



Best Regards,
Sartor
 
Method: Direct

This means that a direct solver (I don't know what type) is used to solve a linear system of equations.

Solution technique: Full Newton

Newton's methods solves a nonlinear system of equations (i.e., K depends on u) iteratively by linearizing it. The direct solver would solve the linear systems generated by Newton's method. If your problem happens to be linear then Newton's method converges on the 1st iteration.
 
In Abaqus,
Direct linear equation solver uses a sparse, Gauss elimination method.
Iterative solver uses the domain-decomposition based methods.

Best Regards,
Sartor
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor