Newmark Method: Difference between revisions

From OpenSeesWiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{CommandManualMenu}}
This command is used to construct a Newmark integrator object.   
This command is used to construct a Newmark integrator object.   


{|  
{|  
| style="background:yellow; color:black; width:800px" | '''integrator Newmark $gamma $beta'''
| style="background:lime; color:black; width:800px" | '''integrator Newmark $gamma $beta'''
|}
|}


Line 13: Line 15:


|}
|}


----
----
Line 20: Line 23:


integrator Newmark 0.5 0.25
integrator Newmark 0.5 0.25
----




Line 26: Line 32:
# Two common sets of choices are
# Two common sets of choices are
## Average Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{4}</math>)
## Average Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{4}</math>)
## Constant Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)
## Linear  Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)
# <math> \gamma > \tfrac{1}{2}</math> results in numerical damping proportional to <math> \gamma - \tfrac{1}{2}</math>
# The method is second order accurate if and only if <math>\gamma=\tfrac{1}{2}</math>
# The method is conditionally stable for <math> \beta >= \frac{\gamma}{2} >= \tfrac{1}{4}</math>
 
 
----
 


REFERENCES
REFERENCES
Line 39: Line 52:




The Newmark method is a one step implicit method for solving the transient problem.
The Newmark method is a one step implicit method for solving the transient problem, represented by the residual for the momentum equation:


<math> M \ddot U_{t + \Delta t} + C \dot U_{t + \Delta t} + R(U_{t + \Delta t}) = F_{t + \Delta t} </math>                               
:<math> R_{t + \Delta t} = F_{t+\Delta t}^{ext} - M \ddot U_{t + \Delta t} - C \dot U_{t + \Delta t} + F(U_{t + \Delta t})^{int}</math>                               


Using the Taylor series approximation of <math>U_{t+\Delta t}</math> and <math>\dot U_{t+\Delta t}</math>:
Using the Taylor series approximation of <math>U_{t+\Delta t}</math> and <math>\dot U_{t+\Delta t}</math>:


<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U_t + \tfrac{\Delta t^3}{6} \dot \ddot U_t + \cdots </math>
:<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U_t + \tfrac{\Delta t^3}{6} \dot \ddot U_t + \cdots </math>


<math> \dot U_{t+\Delta t} = \dot U_t + \Delta t \ddot U_t + \tfrac{\Delta t^2}{2} \dot \ddot U_t +  \cdots </math>
:<math> \dot U_{t+\Delta t} = \dot U_t + \Delta t \ddot U_t + \tfrac{\Delta t^2}{2} \dot \ddot U_t +  \cdots </math>


Newton truncated these using the following:
Newton truncated these using the following:


<math> U_{t+\Delta t} = u_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U +  \beta {\Delta t^3} \dot \ddot U </math>
:<math> U_{t+\Delta t} = u_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U +  \beta {\Delta t^3} \dot \ddot U </math>


<math> \dot U_{t + \Delta t} = \dot U_t + \Delta t \ddot U_t + \gamma \Delta t^2 \dot \ddot U </math>
:<math> \dot U_{t + \Delta t} = \dot U_t + \Delta t \ddot U_t + \gamma \Delta t^2 \dot \ddot U </math>


in which he assumed linear acceleration within a time step, i.e.
in which he assumed linear acceleration within a time step, i.e.


<math> \dot \ddot U = \frac{{\ddot U_{t+\Delta t}} -  \ddot U_t}{\Delta t} </math>
:<math> \dot \ddot U = \frac{{\ddot U_{t+\Delta t}} -  \ddot U_t}{\Delta t} </math>


which results in the following expressions:
which results in the following expressions:


<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + [(0.5 - \beta) \Delta t^2] \ddot U_t + [\beta \Delta t^2]  \ddot U_{t+\Delta t}</math>
:<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + [(0.5 - \beta) \Delta t^2] \ddot U_t + [\beta \Delta t^2]  \ddot U_{t+\Delta t}</math>


<math> \dot U_{t+\Delta t} = \dot U_t + [(1-\gamma)\Delta t] \ddot U_t + [\gamma \Delta t ] \ddot U_{t+\Delta t} </math>
:<math> \dot U_{t+\Delta t} = \dot U_t + [(1-\gamma)\Delta t] \ddot U_t + [\gamma \Delta t ] \ddot U_{t+\Delta t} </math>


The variables <math>\beta</math> and <math>\gamma</math> are numerical parameters that control both the stability of the method and the amount of numerical damping introduced into the system by the method. For <math>\gamma=\tfrac{1}{2}</math> there is no numerical damping; for <math>\gamma>=\tfrac{1}{2}</math> numerical damping is introduced. Two well known and commonly used cases are:
The variables <math>\beta</math> and <math>\gamma</math> are numerical parameters that control both the stability of the method and the amount of numerical damping introduced into the system by the method. For <math>\gamma=\tfrac{1}{2}</math> there is no numerical damping; for <math>\gamma>=\tfrac{1}{2}</math> numerical damping is introduced. Two well known and commonly used cases are:
Line 69: Line 82:
# Constant Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)
# Constant Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)


The linearization of the Newmark equations gives:


The advancement of the nonlinear solution from one step to the next requires setting initial conditions at the first trial step<math> U_{t+\Delta t}^0, \dot U_{t+\Delta t}^0, \ddot U_{t+\Delta t}^0</math> linearization of the equation, and solution of the linearized equations and updating. When the displacements are the unknowns this results in the following:
:<math>dU_{t+\Delta t}^{i+1} = \beta \Delta t^2 d \ddot U_{t+\Delta t}^{i+1}</math>


1) Initial Conditions at a time step: For an implicit solution we choose:
:<math>d \dot U_{t+\Delta t}^{i+1} = \gamma \Delta t \ddot U_{t+\Delta t}^{i+1}</math>


<math>U_{t+\Delta t}^0 = U_t</math>
which gives the update formula when displacement increment is used as unknown in the linearized system as:


The values for the velocity and accelerations are determined using the Newmark formulas.
:<math>U_{t+\Delta t}^{i+1} = U_{t+\Delta t}^i + dU_{t+\Delta t}^{i+1}</math>


<math>\dot U_{t+\Delta t}^0 =  (1 - \frac{\gamma}{\beta}) \dot U_t + \Delta t(1 - \frac{\gamma}{2 \beta}) \ddot U_t</math>
:<math>\dot U_{t+\Delta t}^{i+1} = \dot U_{t+\Delta t}^i + \frac{\gamma}{\beta \Delta t}dU_{t+\Delta t}^{i+1}</math>


<math>\ddot U_{t+\Delta t}^0 = - \frac{1}{\beta \Delta t} \dot U_t - (\frac{1}{2 \beta} -1) \ddot U_t </math>
:<math>\ddot U_{t+\Delta t}^{i+1} = \ddot U_{t+\Delta t}^i + \frac{1}{\beta \Delta t^2}dU_{t+\Delta t}^{i+1}</math>
 
2) Linearizing the Newmark formulas
 
<math>dU_{t+\Delta t}^{i+1} = \beta \Delta t^2 d \ddot U_{t+\Delta t}^{i+1}</math>
 
<math>d \dot U_{t+\Delta t}^{i+1} = \gamma \Delta t \ddot U_{t+\Delta t}^{i+1}</math>
 
giving the update formula when displacement increment is used as unknown as:
 
<math>U_{t+\Delta t}^{i+1} = U_{t+\Delta t}^i + dU_{t+\Delta t}^{i+1}</math>
 
<math>\dot U_{t+\Delta t}^{i+1} = \dot U_{t+\Delta t}^i + \frac{\gamma}{\beta \Delta t}dU_{t+\Delta t}^{i+1}</math>
 
<math>\ddot U_{t+\Delta t}^{i+1} = \ddot U_{t+\Delta t}^i + \frac{1}{\beta \Delta t^2}dU_{t+\Delta t}^{i+1}</math>


The linearization of the momentum equation using the displacements as the unknowns leads to the following
The linearization of the momentum equation using the displacements as the unknowns leads to the following
linear equation:


<math> K_{t+\Delta t}^{*i} d U_{t+\Delta t}^{i+1} = P_{t+\Delta t}^i</math>
:<math> K_{t+\Delta t}^{*i} \Delta U_{t+\Delta t}^{i+1} = R_{t+\Delta t}^i</math>


where
where


<math>K_{t+\Delta t}^{*i} = K_t + \frac{\gamma}{\beta \Delta t} C_t + \frac{1}{\beta \Delta t^2} M</math>
:<math>K_{t+\Delta t}^{*i} = K_t + \frac{\gamma}{\beta \Delta t} C_t + \frac{1}{\beta \Delta t^2} M</math>


and
and


<math> P_{t+\Delta t}^i = F_{t + \Delta t} - R(U_{t + \Delta t}^{i-1}) - C \dot U_{t+\Delta t}^{i-1} - M \ddot U_{t+ \Delta t}^{i-1}</math>
:<math> R_{t+\Delta t}^i = F_{t + \Delta t}^{ext} - F(U_{t + \Delta t}^{i-1})^{int} - C \dot U_{t+\Delta t}^{i-1} - M \ddot U_{t+ \Delta t}^{i-1}</math>
 


----
----


Code Developed by: <span style="color:blue"> fmk </span>
Code Developed by: <span style="color:blue"> fmk </span>

Latest revision as of 00:48, 1 June 2013




This command is used to construct a Newmark integrator object.

integrator Newmark $gamma $beta

$gamma <math>\gamma</math> factor
$beta <math>\beta</math> factor



EXAMPLE:


integrator Newmark 0.5 0.25




NOTES:

  1. If the accelerations are chosen as the unknowns and <math>\beta</math> is chosen as 0, the formulation results in the fast but conditionally stable explicit Central Difference method. Otherwise the method is implicit and requires an iterative solution process.
  2. Two common sets of choices are
    1. Average Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{4}</math>)
    2. Linear Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)
  3. <math> \gamma > \tfrac{1}{2}</math> results in numerical damping proportional to <math> \gamma - \tfrac{1}{2}</math>
  4. The method is second order accurate if and only if <math>\gamma=\tfrac{1}{2}</math>
  5. The method is conditionally stable for <math> \beta >= \frac{\gamma}{2} >= \tfrac{1}{4}</math>




REFERENCES

Newmark, N.M. "A Method of Computation for Structural Dynamics" ASCE Journal of Engineering Mechanics Division, Vol 85. No EM3, 1959.




THEORY:


The Newmark method is a one step implicit method for solving the transient problem, represented by the residual for the momentum equation:

<math> R_{t + \Delta t} = F_{t+\Delta t}^{ext} - M \ddot U_{t + \Delta t} - C \dot U_{t + \Delta t} + F(U_{t + \Delta t})^{int}</math>

Using the Taylor series approximation of <math>U_{t+\Delta t}</math> and <math>\dot U_{t+\Delta t}</math>:

<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U_t + \tfrac{\Delta t^3}{6} \dot \ddot U_t + \cdots </math>
<math> \dot U_{t+\Delta t} = \dot U_t + \Delta t \ddot U_t + \tfrac{\Delta t^2}{2} \dot \ddot U_t + \cdots </math>

Newton truncated these using the following:

<math> U_{t+\Delta t} = u_t + \Delta t \dot U_t + \tfrac{\Delta t^2}{2} \ddot U + \beta {\Delta t^3} \dot \ddot U </math>
<math> \dot U_{t + \Delta t} = \dot U_t + \Delta t \ddot U_t + \gamma \Delta t^2 \dot \ddot U </math>

in which he assumed linear acceleration within a time step, i.e.

<math> \dot \ddot U = \frac{{\ddot U_{t+\Delta t}} - \ddot U_t}{\Delta t} </math>

which results in the following expressions:

<math> U_{t+\Delta t} = U_t + \Delta t \dot U_t + [(0.5 - \beta) \Delta t^2] \ddot U_t + [\beta \Delta t^2] \ddot U_{t+\Delta t}</math>
<math> \dot U_{t+\Delta t} = \dot U_t + [(1-\gamma)\Delta t] \ddot U_t + [\gamma \Delta t ] \ddot U_{t+\Delta t} </math>

The variables <math>\beta</math> and <math>\gamma</math> are numerical parameters that control both the stability of the method and the amount of numerical damping introduced into the system by the method. For <math>\gamma=\tfrac{1}{2}</math> there is no numerical damping; for <math>\gamma>=\tfrac{1}{2}</math> numerical damping is introduced. Two well known and commonly used cases are:

  1. Average Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{4}</math>)
  2. Constant Acceleration Method (<math>\gamma=\tfrac{1}{2}, \beta = \tfrac{1}{6}</math>)

The linearization of the Newmark equations gives:

<math>dU_{t+\Delta t}^{i+1} = \beta \Delta t^2 d \ddot U_{t+\Delta t}^{i+1}</math>
<math>d \dot U_{t+\Delta t}^{i+1} = \gamma \Delta t \ddot U_{t+\Delta t}^{i+1}</math>

which gives the update formula when displacement increment is used as unknown in the linearized system as:

<math>U_{t+\Delta t}^{i+1} = U_{t+\Delta t}^i + dU_{t+\Delta t}^{i+1}</math>
<math>\dot U_{t+\Delta t}^{i+1} = \dot U_{t+\Delta t}^i + \frac{\gamma}{\beta \Delta t}dU_{t+\Delta t}^{i+1}</math>
<math>\ddot U_{t+\Delta t}^{i+1} = \ddot U_{t+\Delta t}^i + \frac{1}{\beta \Delta t^2}dU_{t+\Delta t}^{i+1}</math>

The linearization of the momentum equation using the displacements as the unknowns leads to the following linear equation:

<math> K_{t+\Delta t}^{*i} \Delta U_{t+\Delta t}^{i+1} = R_{t+\Delta t}^i</math>

where

<math>K_{t+\Delta t}^{*i} = K_t + \frac{\gamma}{\beta \Delta t} C_t + \frac{1}{\beta \Delta t^2} M</math>

and

<math> R_{t+\Delta t}^i = F_{t + \Delta t}^{ext} - F(U_{t + \Delta t}^{i-1})^{int} - C \dot U_{t+\Delta t}^{i-1} - M \ddot U_{t+ \Delta t}^{i-1}</math>

Code Developed by: fmk