This is an old revision of the document!
Table of Contents
Commit 2018-01-05
Ce commit est pour un petit nettoyage de la routine IterationResolution.
IterationResolution
J'ai fait entrer la ligne de code im.incrementIterationNo() dans le “if/else im.getMaxNbOfIterationsReached()”, ce qui est beaucoup plus cohérent !
void
TimeIntegration::iterationResolution(IterationManager &im,
Field const *dofType, bool &rester)
{
if(im.getMaxNbOfIterationsReached())
{
GW : Error during Step => division du pas de temps et recalcul du step à nouveau.
}
else
{
GW : Calcul de l'inverse de la matrice jacobienne + correction dX + lineSearch éventuellement.
}
im.incrementIterationNo(); // devrait etre dans le "else" du "if(im.getMaxNbOfIterationsReached())"
Ceci rentre dans le "else".
}
J'ai commentarisé la ligne de commande “this→metafor.getDomain().getEqualityDofConstraintsSet().impose();” car ceci est fait plus bas suite à la routine dofsCorrections(). En effet, tant que les valeurs des dofs n'ont pas été changées, il n'est pas nécessaire de faire cette opération !
Line Search - Affichage du résidu
J'ai formalisé la sortie du Line Search comme les itérations mécaniques : notations scientifiques sous forme exponentielle.
Fichiers ajoutés/supprimés
[a]: [r]:
Cas tests ajoutés/supprimés
[a]: [r]:
— gaëtan 2017/01/05 20:00
