Newmark Methods#
We are looking to approximate second order differential equations of the form
Newmark Equations#
The Newmark-\(\beta\) scheme is defined by the following equations:
for scalar parameters \(\beta\) and \(\gamma\) and the following notation is used:
Remarks#
\(\forall \gamma\) and \(\forall \beta\), the following holds true $\( \begin{gathered} \int_{t_n}^{t_{n+1}} \ddot{\boldsymbol{u}}(\tau) d \tau=(1-\gamma) h \ddot{\boldsymbol{u}}_n+\gamma h \ddot{\boldsymbol{u}}_{n+1}+\mathbf{r}_n \\ \int_{t_n}^{t_{n+1}} \ddot{\boldsymbol{u}}(\tau)\left(t_{n+1}-\tau\right) d \tau=\left(\frac{1}{2}-\beta\right) h^2 \ddot{\boldsymbol{u}}_n+\beta h^2 \ddot{\boldsymbol{u}}_{n+1}+\mathbf{r}_n^{\prime} \end{gathered} \)\( where \)\( \mathbf{r}_n=\left(\frac{1}{2}-\gamma\right) h^2 \boldsymbol{u}^{(3)}(\tilde{\tau})+\mathcal{O}\left(h^3 \boldsymbol{u}^{(4)}\right) ; \quad \mathbf{r}_n^{\prime}=\left(\frac{1}{6}-\beta\right) h^3 \boldsymbol{u}^{(3)}(\tilde{\tau})+\mathcal{O}\left(h^4 \boldsymbol{u}^{(4)}\right) \)\( and \)t_n<\tilde{\tau}<t_{n+1}$
The Newmark-\(\beta\) follows from Taylor’s theorem with explicit remainder which states that the first time derivative can be expressed as:
\[\begin{split} \begin{aligned} \dot{\boldsymbol{u}}_{n+1} &= \dot{\boldsymbol{u}}_n + \Delta t~ \ddot{\boldsymbol{u}}_\gamma \\ \boldsymbol{u}_{n+1} &= \boldsymbol{u}_n + \Delta t~ \dot{\boldsymbol{u}}_n + \begin{matrix} \frac 1 2 \end{matrix} \Delta t^2~ \ddot{\boldsymbol{u}}_\beta. \end{aligned} \end{split}\]for some \(\ddot{\boldsymbol{u}}_\gamma\) and \(\ddot{\boldsymbol{u}}_\beta\) with the form:
\[\begin{split} \begin{aligned} \ddot{\boldsymbol{u}}_\gamma &= (1 - \gamma) \ddot{\boldsymbol{u}}_n + \gamma \ddot{\boldsymbol{u}}_{n+1}~~~~~~~~0\leq \gamma \leq 1\\ \ddot{\boldsymbol{u}}_\beta &= (1 - 2\beta) \ddot{\boldsymbol{u}}_n + 2\beta \ddot{\boldsymbol{u}}_{n+1}~~~~0\leq 2\beta\leq 1 \end{aligned} \end{split}\]\(\gamma=\frac{1}{2}\) and \(\beta=\frac{1}{6}\) corresponds to linearly interpolating \(\ddot{\boldsymbol{u}}\) in \(\left[t_n, t_{n+1}\right]\) $\( \overline{\ddot{\boldsymbol{u}}}_{\text{lin}}(\tau)=\ddot{\boldsymbol{u}}_n+\left(\tau-t_n\right)\left(\frac{\ddot{\boldsymbol{u}}_{n+1}-\ddot{\boldsymbol{u}}_n}{h}\right) \)$
\(\gamma=\frac{1}{2}\) and \(\beta=\frac{1}{4}\) corresponds to averaging \(\ddot{\boldsymbol{u}}\) over \(\left[t_n, t_{n+1}\right]\): $\( \ddot{\boldsymbol{u}}_{\text{avg}}=\frac{\ddot{\boldsymbol{u}}_{n+1}+\ddot{\boldsymbol{u}}_n}{2} \)$ This is known as the constant average acceleration, or mid-point rule
\(\gamma=0.5\) and \(\beta=0\) corresponds to an explicit central difference scheme
Generalized \(\alpha\) Scheme#
The generalized \(\alpha\) scheme imposes equilibrium with the following form:
where
However, the following is also sometimes used: $\( \mathbf{M} \ddot{\boldsymbol{u}}_{n+1}+(1-\alpha) \boldsymbol{p}\left(\boldsymbol{u}_{n+1}, \dot{\boldsymbol{u}}_{n+1}\right)+\alpha \boldsymbol{p}\left(\boldsymbol{u}_n, \dot{\boldsymbol{u}}_n\right)=(1-\alpha) \boldsymbol{f}\left(\boldsymbol{u}_{n+1}, t\right)+\alpha \boldsymbol{f}\left(\boldsymbol{u}_n, t\right) \)$
Implementation#
The Newmark equations allow one to express all three unknowns (i.e., \(a_{n+1}, v_{n+1}\) or \(d_{n+1}\)) in terms of one of these.
The most straight-forward way to implement the Newmark scheme, is to form a single equation in terms of unknown accelerations, \(\boldsymbol{a}_{n+1}\):
for some known matrix \(\mathbf{A}\) and vector \(\boldsymbol{b}\). This is obtained by plugging the Newmark equations into the discrete equilibrium statement at \(t_{n+1}\). However before deriving this, it is useful rewrite equations [@eq:newmark] as follows:
where the tilde variables allow us to collect everything that is known at the start of a time step. Expanding and plugging into the discretized equilibrium equation furnishes the Newmark scheme in “a-form”:
Generalized Unknowns#
Alternatively, the Newmark equations can be manipulated to produce a problem in terms of velocity or displacement.
If \(\boldsymbol{x}_{n+1}\) denotes our chosen unknown we can write the equations in the following form:
This generalizes as follows :
where \(\boldsymbol{y}_i = (\boldsymbol{d}_n, \boldsymbol{v}_n ,\boldsymbol{a}_n)\) coefficients \(c_{yx}\) and \(b_{ij}\) given below, and where \(\tilde{\left(\cdot\right)}_x\) variables encapsulate the information that is known at the start of the time step.
Nonlinear Generalized - \(\alpha\)#
Applying this to a nonlinear problem yields:
Linearizing for \(r_\eta = r(\boldsymbol{x}_{n+1}^i + \eta \, d\boldsymbol{x})\) yields
where
For a chosen unknown \(\boldsymbol{x}\), we can collect coefficients into a “predictor matrix” \(\mathsf{B}_x\), and corrector array \(c_{yx}\) so that any of the other unknowns, \(\boldsymbol{y} \in (\boldsymbol{d}, \boldsymbol{v} ,\boldsymbol{a})\) can be expressed as:
From the Newmark equations, the coefficients \(c_{xy}\) follow as:
The matrix \(\mathsf{B}\) is given for the acceleration formulation (\(\boldsymbol{x} \triangleq \boldsymbol{a}\)) by:
In the velocity formulation (\(\boldsymbol{x} \triangleq \boldsymbol{v}\)):
Finally, for the displacement formulation (\(\boldsymbol{x} \triangleq \boldsymbol{d}\)):
References#
J. Chung, G.M.Hubert. “A Time Integration Algorithm for Structural Dynamics with Improved Numerical Dissipation: The Generalized-\(\alpha\) Method” ASME Journal of Applied Mechanics, 60, 371:375, 1993.