User login

Navigation

You are here

Arc length method - Implementation Issues

Hi all,

     i am doing a material nonlinear problem.  I have used NR , which is giving good results till near 'limit point' and after that its giving peaks and troughs.  From the literature  I got to know that I should use arc length method (ALM) instead of NR for strain softening problems.  I am using MATLAB

1) Is there any existing code module for Arc length method which can be directly incorporated in my FE code?  In MATLAB central there is a code but its usable only when we have the analytical expressions.

2)  In my problem, the nonlinear equations are of the form f(R) = 0 where R is a vector. When i want to solve this in ALM,  I need to introduce a scalar  load parameter LAMBDA (say LAM).  I am confused as what to take the value of LAM initially,  and what is the expected value of LAM to be when the residual comes to near zero value? Should I look at the convergence of LAM also or no need of that?

3)  Two methods - Consistent ALM and NON CONSISTENT ALM are given in literatures. The Consistend ALM will have non- banded non symmetric Augmented Tangent stiffness matrix. Is that the only problem with ConsistentALM?? The results given by both the methods are same or different? Which one should be used ideally?

4) I have several questions related to this method. It would be great if anyone help in this regard.

Comments

yawlou's picture

Displacement control should be sufficient for your purposes(as long as you do not have snap back).  See the example and algorithm in the following paper. 

http://people.wallawalla.edu/~louie.yaw/Co-rotational_docs/2Dcorot_truss...

It is for a 2D corotational truss analysis, but the algorithm starting on page 9 for displacement control has all the pieces necessary for you to implement your material nonlinear with NR iterations program.

I'm out of time right now, but later could discuss the arc length control method if needed.

regards,

Louie

hello Mr Yawlou

i read your article about displacement control,and i tried to model this method for my problem (material nonlinearity).i write my code in matlab but in my code the landa parameter exceeded more than 1.should not the landa parameter be less than 1?

And another problem is that i cant undrestand how to change K and D(material stiffness matrix which decrease corresponding to displacement increasing,softening) in each iteration. Should these parameter set to initial value(in its increment start) after each iteration or the previous iteration condition must save for the incoming iteration?

Another problem is that when in an increment the code reach to maxiter and norm(R) isnt less than the tolerance,what should i do? what happen to this increment? start the next increment or repeat the previous increment?

And another thing: in my problem i apply displacemet BC instead of force, so should i set the displacement BC DOF as q?

I have to find the reaction-displacement graph,all the work i have done depends on this graph.

Would you please help me to extracting this graph, for my material nonlinearity problem?

I didnt find any similar flowchart or help near to my problem,everything is about geometrical nonlinearity.

M. Jahanshahi's picture

Hello m.j,

1. You have to be careful about arc length method. If lambda is greater than 1 then the results obtained by arc length method might not be correct. Using full Newton-Raphson method with reasonable step size can be a good substitute if you are not sure of what you are doing.

2. You can consider two tolerances for your algorithm for example 10e-10 and 10e-5. You can enforce the first tolerance in your iterations. If the tolerance obtained after the total iterations are exhausted is greater than the first tolerance but less than the second your results are fairly accurate within the second tolerance and you can move to the next iteration. Otherwise your results are not accurate enough and you have to cease the iterations.

3. You can consult the following book. It is full of algorithms and flow charts which suit your needs:

Computational Methods in Plasticity: Theory and Applications, EA de Souza Neto, D Peric and DRJ Owen, John Wiley & Sons, 2008.

Mohsen

Hello Mr Jahanshahi

Thank you for your attention.

I will read the Owen book certainly and I will apply the Newton Raphson in my code too.

m.jafarzadeh

 

Hello Mr Jahanshahi

I wrote a code by N-R method for my problem (a double cantilever beam which has interface elements between two layer for simulating delamination ), every thing was good, I saw the softening of the material, but there was some problem.

For verifying my answers, the Reaction-displacement of the total system should be plotted,for this reason i should impose displacement boundary condition instead of force.

As you know in the material nonlinearity problem the stiffness matrix (D and after that K) will change in every increment and iteration corresponding to displacement (in the geometrical nonlinearity the displacement changes alter the geometry and after that the total stiffness matrix changes). by changing in the stiffness matrix also the force value will change , because of displacement BC formulation in finite element method.

but in the N-R method the at the beginnig a load apply to the system and then in each increment 1 part of it will impose. In my case the force change with K.

now here is my question: Can i use N-R method for displacement BC problem or I must use the displacement control method?

I try displacement control before but I didnt succeed. In this method I have same problems. In displacement control method a first force (not displacement) will introduce, and then a part of force impose in increments. But the base is displacement change. Also In this method the K matrix changes and it is main problem. 

I want a method appropriate for displacement BC problems.

Would you please help me in this topic too?

M.Jafarazadeh

 

M. Jahanshahi's picture

Consider the following partitioned matrix equation (sorry if I could not show it clearly):

|Knn ¦ Knu||un|    |R|

|.......¦.......||....| = |...|              (1)

|Kun ¦ Kuu||uu|    |F|

In this equation un is the vector of specified (and thus known) displacements. This is the specified displacement at certain degrees of freedom in displacement controlled analysis. R is the vector of corresponding reactions at these degrees of freedom. The vector uu is the vector of unknown displacements at other degrees of freedom where no displacement boundary condition is specified. F is the vector of nodal forces at these latter degrees of freedom. From the second row of this equation we can write:

[Kuu][uu]=[F]-[Kun][un]                (2)

which is the equation that should be solved in displacement controlled analysis. Based on this equation, the vector of forces at unconstrained degrees of freedom should be modified by the second term on the right hand side of equation (2). The rest of the analysis is exactly the same as force controlled analysis. Having calculated uu from preceding equation, the vector of reactions at constrained degrees of freedom can be calculated from the first row of equation (1) as

[R]=[Knn][un]+[Knu][uu]          (3)

For more information you can refer to page 187 of the following reference:

 K.J. Bathe, Finite Element Procedures, Prentice-Hall, 1996.

hello Mr Jahanshahi

thank you for your quick answer

I know how to find reaction forces for the case but my problem is how to use displacement control method for displacement BC case, in which the stiffness matrix in each increment and iteration change. In displacement BC by changing stiffness matrix the total force changes too. I should apply a unique force for each increment to use it in all the iteration.

M.Jafarzadeh

 

M. Jahanshahi's picture

Dear Mr. Jafarzadeh,

I already have answered your question. The answer lies in equation (2) above. In the fisrt iteration of each load step (which is displacement controlled) you apply an incremental displacement. Of course your stiffness matrix should be comouted in each iteration due to material nonlinerity. In subsequent iterations the second term on the right hand side of equation (2) is set to zero and iterations continue to equilibrate out of balance force. The iterative procedure is exactly similar to force-controlled except for equation (20). If you pay a good attention to what I siad you should be able to proceed without any problem.

Good Luck

hello Mr Jahanshahi

thank you so much for your attention. 

I will do what you said.

M.Jafarzadeh

Thank you Louie. I will get back after trying with displcement control.

hello

I have same problem with nizanth,I'm trying to model delamination in matlab and by arc length. as you know in delamination the main problem is material nonlinearity,and how to implement arc length in these problems. I tried to extract material nonlinearity case from geometrical nonlinearity arc length codes(for example:codes in "Stability Analysis of Two dimensional Truss Structures" thesis) ,but i did not coverge to an exact answer.

Is here any body know how to model material nonlinearity by arc length method?

Hi, There are several arc-length methods that could be used. But depending on the level of non-linearity, they may or may not be able to trace snap-back exactly.

Geometrical nonlinearity simple arc-length method should be sufficient. But in case of severe strain localization, you would need a method like the one suggested by

Crisfield arc-length method. Try this one, incase this one does not work, I may have other suggestions.

 

Best

hello

In my case there is a material nonlinearity problem, I can not properly impose arc length in nonlinear material. Do you have any experience in it?

 

I have experience with the arc-length methods yes. If you have material nonlinearity, you can either use very small arc-lengths which however limits the use of the method. Are you using the classical arc-length method? It works very well with geometrically non-linear problems, BUT for strong slip localisation causing a global snap-back response, it may fail.  Thats why one may have to use either the crisfield method (Cylindrical arc-length method ) which involves a non-linear constraint for the arc-length. But its numerically very expensive.  If such methods are not available, you may have to implement new methods. There are many arc-length methods with the same underlying principle. The method of chen and schreyer (A numerical solution scheme for softening problems involving total strain control, Computers and structures; 37 (6) ,  1990, pages: 1043-1050) is based on using strain as control parameter. You can also check the method by May and Duan (A local arc-length method for strain softening; Computers and Structures, vol 64 . 1997, pages 297-303)These are non-standard methods which you may have to implement by yourself. Hope it helps

 

Best

Subscribe to Comments for "Arc length method - Implementation Issues"

Recent comments

More comments

Syndicate

Subscribe to Syndicate