Le calcul des défos ne se fait plus directement par appel au matériau mais via un objet de type StrainCalcMethod, stocké dans VolumeElement, qui définit la méthode de calcul. Il était nécessaire de créer un objet au niveau de l'élément puisque le calcul des défos en un point de Gauss utilise des données calculées pour l'élément et communes à tous les points de Gauss.
C'est la classe StrainCalcMethodBuilder qui crée cet objet en fonction des paramètres utilisateur. Par défaut, c'est un objet de type StrainCalcMethodNormal qui est créé et rien ne change par rapport à l'approche normale. Pour utiliser les ANS, on joue sur le paramètre STRAINCALCMETH de ElementProperties : par exemple, prp.put( STRAINCALCMETH, SCM_ANS1 ).
La seule méthode ANS implantée pour l'instant est celle de Dvorkin-Bathe, disponible dans la classe StrainCalcMethodANS1Hexa.
La structure est conçue pour permettre facilement la définition d'autres éléments ANS, en dérivant StrainCalcMethod.
Par souci de cohérence, le calcul des défos nécessaires aux méthodes conservatives (barStrain, midConfigurationStrain) passe aussi par StrainCalcMethod.
Par effet de bord, dans les fonctions de forme, les fonctions getCellType() sont devenues const.