Académique Documents
Professionnel Documents
Culture Documents
Outline
Static algorithms Solving one system... Nonlinear problems Dynamic algorithms What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy Explicit schemes Central dierent schemes Runge-Kutta method Predictor-corrector methods Implicit schemes linear problem Nonlinear problem
Arnaud Delaplace - David Ryckelynck Solvers for Computational Mechanics
Matrix storage
In computational mechanics, K is usually a sparse-symmetric matrix. One needs to store only the non zero-elements (sparse storage, skyline storage...).
Direct solvers
Iterative solvers
Mainly based on the conjugate gradient method family, and a preconditioner Ecient for large system with sparse operator
Algorithm
k k 1. Initialisation: uk arbitrary, g0 = Kuk f k , zk = P1 g0 0 0 0
2. i 1 3. REPEAT
k 4. k = zk + i1 k i i i1 k i i1 = (Kk (zk ,K k ) i1
i1
, k ) i1
5. uk = uk + ik k i+1 i i
k 6. gi+1 = gik + ik K k i k 7. zk = P1 gi+1 i+1
i i ik = (Kk ,k ) i i
(gk ,zk )
8. i i + 1 9. UNTIL convergence
Arnaud Delaplace - David Ryckelynck Solvers for Computational Mechanics
For a nonlinear problem, the solution is obtained with an iterative process, where a succession of linear systems are solved. Examples: Newton-Raphson solver, radial return algorithm (mainly dedicated to plasticity problem)
Newton-Raphson solver
We search for: Fi (x1 , x2 , ..., xN ) = 0 for i = 1, 2, ..., N Taylor series expansion: Fi (x + x) = Fi (x) +
N X Fi xj + O(x2 ) xj j=1
Using the Jacobian matrix Jij = Fi /xj , the matrix notation leads to: F(x + x) = F(x) + Jx + O(x2 ) If the term of order x2 are neglected, one has to solve the system: Jx = F The corrections are added to the solution vector until convergence: xnew = xold + x
Arnaud Delaplace - David Ryckelynck Solvers for Computational Mechanics
For a return mapping algorithm, the rst (trial) solution is computed assuming an elastic step. If the yield criterion is violated, then the solution is projected back to the plastic yield surface to give the updated stress.
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
Dynamic problems
Inertia terms must be included in the equations of equilibrium Wave propagation problems (response governed by high frequency modes) ex.: shock response, impact loading... Inertia problems (response governed by a small number of low frequency modes) ex.: seismic response...
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
Governing equations:
f i (t) + f D (t) + f int (t) = f ext (t) f i (t): inertia forces f D (t): damping forces f int (t): internal forces f ext (t): external forces
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
Initial conditions
u(0) = u0 u(0) = u0 The initial acceleration is obtained using the equations of motion: u0 = M1 (r(0) Cu0 Ku0 )
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
n(u) u
n(u) =
BT ()dV
What is dynamics? Linear structural dynamics Nonlinear structural dynamics Stability and accuracy
Stability
The solution of a problem can be expressed in a recurrence relation form: ut+t = Aut + ... with A the amplication matrix. The stability of the scheme is obtained if the spectral radius of A veries: (A) 1 where (A) = max(i ) and i are the eigenvalues of A.
Accuracy
For a resolution over the time range [t0 , tf ], with a time increment t corresponding to n = (tf t0 )/t, the global error of a scheme is evaluated as: e = utf un The order of accuracy p of the scheme is dened as: e = O(t p ) when t 0
Arnaud Delaplace - David Ryckelynck Solvers for Computational Mechanics
Explicit schemes
Solution at time t + t is obtained from equilibrium equations at time t Do not require the factorization of the stiness matrix ( and no additional storage for a diagonal mass matrix) Ecient for short load durations (impact, explosions...)
But
Conditionally stable Require generally small time steps (inversely proportional to the highest frequency of the discrete system) Central dierent methods, Runge-Kutta methods, Predictor-corrector methods, Taylor series schemes...
ut = ut =
1 (ut+t utt ) t
(4) (5)
1 (ut+t ut + utt ) t 2
Remark
If damping is included, one prefers the backward dierence scheme, where equation (4) is replaced by: ut = Then, ut+t = M1 t 2 (rt n(ut )) tC(ut utt ) + 2ut utt 1 (ut utt ) t
Algorithm
1. Initial calculations
1.1 Initialize u0 and u0 . 1.2 Form structural mass matrix M and damping matrix C. 1.3 Select time step such that t < tcr .
t t t 2 , ut + ut + a0 ) 2 2 4 t 2 a1 ) 2
a3 = u(t + t, ut + t ut +
Self-starting scheme Accurate evaluation of the solution Acceleration vector must be evaluated four times per time step Requires a small time step Generally (computationally) slower than the central dierence scheme
Predictor:
t (3ut utt ) 2 Iterate with the corrector until convergence: up t+t = ut + um+1 = um + t+t t+t t (ut+t + ut ) 2
Implicit schemes
Solution at time t + t involves the velocities and the accelerations at time t + t (Generally) unconditionally stable Ecient for long load durations (seismic loading...)
But
Require the solution of the stiness matrix Require more computational eort per time step Newmark family methods, Wilson- methods, HHT method...
and are the Newmark parameters which determine the stability and accuracy of the algorithm.
Equations of motion
ut+t + n(ut+t ) = rt+t +C t ut + ( 1)ut + t( 2 1)t u 1 1 1 +M (t)2 ut + t ut + ( 2 1)t u
1 M (t)2
C t
(6)
Stability aspects
method type stability Trapezoidal rule implicit 1/4 1/2 unconditional Linear acceleration implicit 1/6 1/2 crit = 2 3 Fox-Goodwin implicit 1/12 1/2 crit = 6 Central dierence explicit 0 1/2 crit = 2 Rem.: all of these methods are 2-order of accuracy. The Newmark family methods are unconditionally stable if 1/2 and ( + 1/2)2 /4. The Newmark family methods are conditionally stable for 1/2, < /2 and t crit
Wilson- method
The acceleration is assumed to be linear from time t to time t + t, with 0. The method is unconditionnaly stable if 1.37. For 0 t + t, ut+ = ut + [t+t ut ] u t 2 [t+t ut ] u 2t
ut+ = ut + ut + ut+ = ut + ut +
2 3 ut + [t+t ut ] u 2 6t
HHT method
Equation of motion
Mt+t + (1 + )Cut+t Cut + (1 + )Kut+t Kut u = (1 + )rt+t rt
1 [1/3, 0] is a dissipative parameter, = 4 (1 )2 and = 1 2
Algorithm (1/2)
1. Initialize u0 , u0 and u0 . 2. Calculate the following constants: a0 = 1/(t 2 ); a1 = /(t); a3 = 1/(2) 1 a4 = / 1; a5 = t/2(/ 2) 3. Form M, C and K. 4. Form the eective stiness matrix, initially assuming a liner behavior: K = a0 M + a1 C + K 5. Form the eective load vector: t+t = rt+t + M(a2 ut + a3 ut ) + C(a4 ut + a5 ut ) n(ut ) r r 6. Solve for the displacement increments: u = K1t+t
Algorithm (2/2)
t+t ui1 = a0 ui1 a2 ut a3 ut 7.3 Evaluate the i-th residual force: i1 t+t t+t = rt+t (Mi1 + Cui1 + n(ui1 ) ut+t t+t
i1 7.4 Solve for the i-th corrected displacement: ui = K1 t+t i = ui1 + ui 7.5 Evaluated the corrected displacement increments: u 7.6 Check for convergence of the iteration process |ui |/|ut + ui |