La première chose qu’on propose est d’étendre la projection de Galerkin au cas nonlinéaire
[1.13]. Comme dans le cas linéaire on repart du résidu associé au problème continu en temps
(17.32). Ensuite on va remplacer
\(\bs{x}\) par son approximation affine
(17.76). On pose
\(\tilde{\bs{x}}\) les variables reconstruites:
\begin{equation*}
\tilde{\bs{x}}(t,\bs{\mu}) = \bs{x}_{ref}(\bs{\mu})+D(\hat{\bs{x}}(t,\bs{\mu}))
\end{equation*}
Cela permet de définit le résidu réduit en utilisant \(\frac{d \tilde{\bs{x}}}{dt}=J_d(\hat{\bs{x}})\frac{d\hat{\bs{x}}}{dt}\) avec \(J_d(\hat{\bs{x}})\) la Jacobienne de \(D\text{:}\)
\begin{equation*}
\hat{\mathbf{r}}(\frac{d\hat{\bs{x}}}{dt}, \hat{\bs{x}}, t ; \bs{\mu}):=
\bs{r}\left(J_d(\hat{\bs{x}}) \frac{d\hat{\bs{x}}}{dt}, \bs{x}_{ref}+D(\hat{\bs{x}}),t; \bs{\mu}\right)
\end{equation*}
Si on reprend la définition d’un espace tangent pour une sous-variété dans le cas d’un paramétrage on voit que l’espace tangent en \(\hat{\bs{x}}\) peut être défini par
\begin{equation*}
T_{\hat{\bs{x}}}\mathcal{M}=\operatorname{Img}(J_d(\hat{\bs{x}}))
\end{equation*}
Par conséquent, la projection de Galerkin nonlinéaire peut s’interpréter comme une projection orthogonale sur l’espace tangent de la variété sur lequel vivent nos variables réduites. Dans la foulée comme dans le cas linéaire, on peut en déduire une méthode d’intégration en temps de notre modèle réduit.
Définition 17.43. Méthodes multi-pas pour la méthode NMG.
Une méthode à \(s\) pas s’écrit en deux étapes: une première ou on calcul un résidu solution de:
\begin{equation}
\bs{r}^n(\hat{\bs{w}})=0\tag{17.79}
\end{equation}
avec
\begin{equation}
\bs{r}^n(\hat{\bs{w}})=\alpha_0 \hat{\bs{w}} - \Delta t \beta_0 J_d(\hat{\bs{w}})^{+} \bs{f}
\left(\bs{x}_{ref}+D(\hat{\bs{w}}), t^n ; \bs{\mu}\right)
+ r_{temp}(\hat{\bs{w}})\tag{17.80}
\end{equation}
\begin{equation}
r_{temp}(\hat{\bs{w}})=\sum_{j=1}^{s} \alpha_{j} \bs{x}^{n-j}-\Delta t \sum_{j=1}^{s} \beta_{j} J_d(\hat{\bs{x}}^{n-j})^{+} \bs{f}
\left(\bs{x}_{ref}+D(\hat{\bs{x}}^{n-j}), t^{n-j} ; \bs{\mu}\right), \tag{17.81}
\end{equation}
avec comme condition \(\sum_{j=0}^s\alpha_j=0\) et la solution est donnée par
\begin{equation}
\hat{\bs{w}}_n=\hat{\bs{w}}.\tag{17.82}
\end{equation}
On peut aussi coupler une méthode de Projection de Galerkin nonlinéaire avec un schéma en temps implicite. Cela nécessite d’utiliser des méthodes de Newton ou de quasi-Newton. On veut donc appliquer une méthode de Newton à l’équation
(17.80) -
(17.81). On commence par dériver le résidu:
\begin{equation*}
\frac{ \partial r^n(\hat{\bs{w}})}{\partial \hat{\bs{w}}_i }= \alpha_0 \bs{e}_i - \Delta t \beta_0
\left( \frac{\partial J_d(\hat{\bs{w}})^+}{\partial \hat{\bs{w}}_i } \bs{f}\left(\bs{x}_{ref}+D(\hat{\bs{w}}), t^n ; \bs{\mu}\right)
+J_d(\bs{w})^+ \frac{\partial \bs{f}}{\partial \hat{\bs{w}}_i }\left(\bs{x}_{ref}+D(\hat{\bs{w}}), t^n ; \bs{\mu}\right)
J_d(\hat{\bs{w}})\bs{e}_i \right)
\end{equation*}
par dérivation du produit et de la composition. Ce calcul nécessite de dériver le pseudo-inverse de notre Jacobienne. Pour cela il suffit de développer, ce qui donne:
\begin{align*}
\frac{\partial J_d(\hat{\bs{w}})^+}{\partial \hat{\bs{w}}_i } = \amp- J_d^{+}(\hat{\bs{w}})\frac{\partial J_d(\hat{\bs{w}})}{\partial \bs{w}_i }J_d^{+}(\bs{w})
+J_d^{+}(\hat{\bs{w}})J_d^{+,T}(\hat{\bs{w}})
\frac{\partial J_d^T(\hat{\bs{w}})}{\partial \hat{\bs{w}}_i }(I_d-J_d(\hat{\bs{w}})J_d^{T}(\hat{\bs{w}}))\\
\amp +(I_d-J_d^{+}(\hat{\bs{w}})J_d(\hat{\bs{w}}))\frac{\partial J_d^T(\hat{\bs{w}})}{\partial \hat{\bs{w}}_i }
J_d^{+,T}(\hat{\bs{w}})J_d^{+}(\hat{\bs{w}})
\end{align*}
On doit donc calculer le gradient de \(J_d\) et par conséquent on doit calculer les dérivées seconde du décodeur \(D\text{.}\) Si on décide d’utiliser une méthode de Newton on doit conserver ce terme. Si on le néglige, car il peut être très lourd à calculer on parle de méthode de Quasi-Newton. Dans ce cas on pose:
\begin{equation*}
J_{approx}^n(\hat{\bs{w}})= \alpha_0 - \Delta t \beta_0
\left( J_d(\hat{\bs{w}})^+
\frac{\partial \bs{f}}{\partial \hat{\bs{w}}_i }\left(\bs{x}_{ref}+D(\hat{\bs{w}}), t^n ; \bs{\mu}\right)J_d(\hat{\bs{w}}) \right)
\end{equation*}
Pour résoudre \(\bs{r}^n(\hat{\bs{w}})=0 \) on utilise une méthode de Newton. Pour cela on linéarise autour de \(\bs{x}^n\) donnée par:
\begin{equation*}
J_{approx}^n(\hat{\bs{x}}^{k})\delta^k - r^n(\hat{\bs{x}}^n)=0
\end{equation*}
On obtient un algorithme de Newton dont l’itéré est donné par:
\begin{equation*}
\begin{cases}
J_{approx}^n(\hat{\bs{x}}^{k})\bs{\delta}^k=- r^n(\hat{\bs{x}}^k)\\
\hat{\bs{x}}^{k+1}=\hat{\bs{x}}^{k}+\alpha^k \bs{\delta}^k
\end{cases}
\end{equation*}
La convergence peut être démontrée si
\begin{equation*}
\langle r^n(\hat{\bs{x}}^k) ,J^n(\hat{\bs{x}}^{k})\frac{ \partial r^n(\hat{\bs{x}})}{\partial \hat{\bs{x}}} r^n(\bs{x}^k)\rangle
\end{equation*}
à chaque itération et si on choisit \(\alpha^k\) afin d’assurer qu’on fait bien descendre à chaque itération \(\parallel r^n(\hat{\bs{w}})\parallel_2^2 \text{.}\) Comme pour le cas linéaire on peut aussi définir une méthode de type Runge-Kutta. La principale différence avec le linéaire vient du calcul de la jacobienne qui alourdit encore un peu la méthode.