• Aucun résultat trouvé

Améliorations apportées au modèle

I.3.1. AVANCE EN TEMPS

I.3.1.2 Mise en œuvre

Lors de la mise en œuvre de ce changement de variables, il est intéressant d’insister sur certains aspects que l’on juge importants. Tout d’abord, on définit une nouvelle variable G telle que : G(t) = exp " A(t − t0) # F(t) (I.3.15)

On peut exprimer également F en fonction de G:

F(t) = exp

"

A(t0− t)

#

G(t) (I.3.16)

En introduisant cette nouvelle variable, le système à résoudre est le suivant :

∂G ∂t = exp " A(t − t0) # (N ) G(t0) = F(t0) (I.3.17) La fonction exponentielle matricielle n’étant pas couramment utilisée, nous rappelons ici la forme de celle-ci : exp " A(t − t0) # = " cos [ωij(t − t0)] − sin [ωij(t − t0)] sin [ωij(t − t0)] cos [ωij(t − t0)] #

L’inclusion de cette nouvelle avance en temps implique un certain nombre de changements dans l’algorithme de résolution, qui vont être indiqués ici :

• Avance en temps des représentations modales des quantités d’intérêt (Aηij et Aφs

ij) plutôt que les quantités elles-mêmes.

• Les modes donnent, à un facteur près, F(t) et par conséquent G(t) par l’équation (I.3.15).

• Avance en temps de G grâce à l’équation (I.3.17) par un schéma type Runge-Kutta du

4ème ordre avec pas de temps adaptatif :

– Calcul de N , i.e. termes non-linéaires des CSL dans l’espace de Fourier.

– Évaluation de l’erreur permettant le contrôle du pas de temps se fait sur les variables modifiées (i.e. G).

– Obtention de G(t + ∆t).

• Calcul de F(t + ∆t) et donc des modes Aηij(t + ∆t) et Aφs

ij (t + ∆t).

Il faut remarquer tout d’abord qu’il serait possible d’avancer en temps la quantité G mais on cherche à connaître les représentations modales et/ou physiques des quantités d’intérêt pour les analyses des résultats du calcul. Ceci est la raison pour laquelle on avance en temps les modes dans notre cas.

Il faut ensuite indiquer qu’un surcoût existe pour la mise en place de cette nouvelle for-mulation. Typiquement, il s’agit de 2 FFTs supplémentaires, sur N points, à réaliser à chaque

itération du schéma de Runge-Kutta. Il faut le comparer avec le coût d’évaluation du schéma HOS qui vaut (c.f. section I.2.2) O(M3) FFTs avec traitement anti-repliement complet ou

O(pM2) FFTs avec traitement intermédiaire. On s’aperçoit donc que l’augmentation du temps CPU pour cette nouvelle intégration en temps est négligeable. Or, on verra dans la section suivante que le gain en temps de calcul global est significatif (de par une augmentation des pas de temps pouvant être utilisés).

I.3.1.3 Résultats

Afin de démontrer l’efficacité de cette nouvelle avance en temps, nous allons comparer le schéma initial où on avance en temps η et φs (courbe intitulée Classique) et ce nouveau schéma ou l’avance en temps se fait sur les variables modifiées, intégrant analytiquement la partie li-néaire de l’équation (courbe intitulée Intégration partie lili-néaire). Les 2 figures suivantes repré-sentent, pour le cas-test de la propagation d’une houle régulière modérément cambrée, ka = 0.2, en milieu ouvert :

• Figure I.3.1: Les pas de temps utilisés dans l’avance en temps (RK4 adaptatif) avec

l’erreur maximale fixée à T ol = 107.

• Figure I.3.2: L’erreur évaluée pour un pas de temps fixé à dt = 3.102.

0 5 10 15 20 0 0.02 0.04 0.06 0.08 0.1 0.12 t/T0 P as d e te m p s (s ) Classique

Intégration partie linéaire

Fig. I.3.1 – Comparaison du pas de temps avec une erreur maximale fixée à T ol = 107

On peut remarquer sur la figure I.3.1que, pour une tolérance fixée (dans l’avance en temps du RK4 adaptatif, voir sectionI.2.2.1), le pas de temps correspondant varie sensiblement entre la formulation classique et la nouvelle formulation. En effet, le pas de temps qui peut être utilisé avec cette nouvelle formulation est environ 3 fois supérieur au pas de temps dit classique. On va donc avoir un gain de temps CPU très important en utilisant le processus décrit précédemment (le surcoût du processus en lui-même étant négligeable devant le gain observé, comme on l’a

I.3.1. AVANCE EN TEMPS 0 5 10 15 20 10-10 10-9 10-8 t/T0 E rr eu

r Intégration partie linéaireClassique

Fig. I.3.2 – Comparaison de l’erreur avec un pas de temps fixé à dt = 3.102

remarqué précédemment).

La figure I.3.2 montre de la même manière que précédemment l’efficacité de la méthode utilisée. En effet, en fixant le pas de temps utilisé dans la simulation, on regarde l’erreur d’éva-luation qui serait utilisée dans le calcul du pas de temps adaptatif du RK4 (c.f. section I.2.2.1). Cette erreur est, comme attendu au vu de la figure I.3.1, beaucoup plus importante dans le schéma d’avance en temps classique que dans le nouveau, où elle est réduite d’un facteur envi-ron 85. Noter que sur cette figure, l’erreur est représentée avec une échelle logarithmique afin de faciliter la lecture.

Il semblait ensuite important d’évoquer l’influence de la cambrure sur l’efficacité de ce nou-veau schéma d’intégration en temps. Le changement de variables mis en place, permettant l’intégration analytique de la partie linéaire des CSL, a peut-être un comportement particulier en fonction de la cambrure du champ de vagues résolu. En effet, il convient de rappeler que si cet état de mer est parfaitement linéaire, alors, la résolution de celui-ci sera implicite et exacte de par la construction même du changement de variables. On est donc en droit de se demander quel est le comportement de notre nouveau schéma d’intégration en temps lors de la résolution d’états de mer cambrés (i.e. fortement non-linéaires). On a donc effectué différents tests identiques à ceux présentés dans les figures précédentes (I.3.1&I.3.2) pour des cambrures différentes. Les résultats obtenus à tolérance fixée (T ol = 107) sont reportés dans le tableau suivantI.3.1. On s’intéresse ici au pas de temps moyen dt de chacun des modèles d’intégration temporelle.

On peut donc remarquer, comme attendu, que les pas de temps utilisés dans le schéma d’intégration en temps évoluent en suivant la complexité de la résolution : de plus en plus petits à mesure que l’on augmente la cambrure ka. Mais ce phénomène était également observé avec l’avance en temps utilisée initialement.

Cambrure ka 0.10 0.20 0.30 0.40

dt(Chgmt. var.) 0.195 0.115 0.076 0.049

dt(Chgmt. var.)

dt(Classique) 3.40 2.91 2.81 2.94

Tab. I.3.1 – Influence de la cambrure sur l’intégration temporelle. Pas de temps moyen dt Le rapport dt(Chgmt. var.)

dt(Classique) nous renseigne quant à lui sur l’efficacité comparée des deux sché-mas. On observe alors que l’intérêt du nouveau schéma choisi est toujours des plus grands, même aux cambrures les plus élevées. Un rapport voisin de 3 entre les pas de temps pouvant être utilisés à précision égale est conservé quel que soit la cambrure. Même si ce rapport tend idéalement vers l’infini pour les cambrures les plus faibles (cette influence apparaît faiblement pour le cas modérément cambré, ka = 0.10), le changement de variables est toujours très effi-cace pour la résolution des champs de vagues fortement non-linéaires.

Ainsi, on a bien montré l’efficacité de ce schéma d’avance en temps où la partie linéaire des CSL est intégrée analytiquement. A précision égale, le temps de calcul va pouvoir être réduit de façon très importante et à pas de temps fixé, la précision de la résolution est grandement améliorée. Ce comportement est d’ailleurs très faiblement dépendant de la cambrure du champ de vagues résolu.