Time Integrators
Implicit Euler¶
- Parameters: None
- Description:
\[\begin{align}
\dot{u}^{t+1} &= \dot{u}^t + h \ddot{u}^{t+1}\\
u^{t+1} &= u^t + h \dot{u}^{t+1}
\end{align}\]
where \(h\) is the time step size.
Implicit Newmark¶
- Parameters:
beta
,gamma
- Description:
\[\begin{align}
\dot{u}^{t+1} &= \dot{u}^t + (1-\gamma)h\ddot{u}^t + \gamma h\ddot{u}^{t+1}\\
u^{t+1} &= u^t + h\dot{u}^t + \tfrac{h^2}{2}((1-2\beta)\ddot{u}^t + 2\beta\ddot{u}^{t+1})
\end{align}\]
where \(h\) is the time step size and by default \(\gamma = 0.5\) and \(\beta = 0.25\).
Note
This is equivalent to the Trapezoidal rule for \(\gamma = 0.5\) and \(\beta = 0.25\).
Backward Differentiation Formula (BDF)¶
- Parameters:
num_steps
- Description:
\[\begin{align}
\dot{u}^{t+1} &= (\sum_{i=0}^{n-1} \alpha_i \dot{u}^{t-i}) + h\beta\ddot{u}^{t+1}\\
u^{t+1} &= (\sum_{i=0}^{n-1} \alpha_i u^{t-i}) + h\beta\dot{u}^{t+1}
\end{align}\]
where \(h\) is the time step size, the coefficients \(\alpha_i\) and \(\beta\) are choosen to make the method \(n\)-th order accurate, and \(n \in \{1, \ldots, 6\}\) is the number of previous steps to consider (default: num_steps=1
). This is equivalent to implicit Euler for \(n=1\).
To initialize the values for \(i > 0\), the method starts from \(n=1\) and successively builds the history, increasing \(n\) by 1 until the \(n\)-th step. However, we know this can result in less than order \(n\) accuracy [Nishikawa 2019].
Last update:
2023-10-03