Projet

Général

Profil

Actions

Anomalie #229

ouvert

anisotropie par projection

Ajouté par Julien Troufflard il y a presque 6 ans. Mis à jour il y a presque 6 ans.

Statut:
Résolu
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
04/03/2020
Echéance:
% réalisé:

100%

Temps estimé:

Description

Bonjour Gérard,

ci-joint un exemple pourtant simple qui ne converge pas dès le premier incrément.

C'est un cube en traction selon X. Le repère d'anisotropie est tel que l'axe 1 d'aniso est à 90° de la direction de traction.

Tous les coefficients d'anisotropie sont égaux à 1 sauf A1.
J'ai commencé par A1=2. Le premier incrément n'arrive pas à converger.

J'ai ensuite essayé quelques valeurs pour voir :
- A1 = 1 => OK
- A1 = 1.5 => OK
- A1 = 1.75 => OK
- A1 = 2.25 => ECHEC
- A1 = 10. => ECHEC
- A1 = 1.99 => OK
- A1 = 1.999 => ECHEC

donc en gros vers A1=2 et au-delà => pas de convergence. As-tu une idée de ce qu'il se passe ?


Fichiers

cube.her (341 octets) cube.her Julien Troufflard, 04/03/2020 13:59
test.CVisu (12,6 ko) test.CVisu Julien Troufflard, 04/03/2020 13:59
test.info (2 ko) test.info Julien Troufflard, 04/03/2020 13:59

Mis à jour par Julien Troufflard il y a presque 6 ans

Gérard,

j'ai une piste à creuser. Je pense que l'opérateur tangent n'est plus symétrique.

Par exemple, en élasticité linéaire :

La contrainte de référence est :
=> sigma_ref = C:epsilon
La contrainte projetee est :
=> sigma_proj = H:sigma_ref
La contrainte vaut donc :
=> sigma_proj = H:C:epsilon

Et bien théoriquement, le tenseur H:C n'est pas forcément symétrique.

Je vais tester dans Herezh++ le cas où je mets l'option :
para_syteme_lineaire-----
TYPE_MATRICE BANDE_NON_SYMETRIQUE

Mis à jour par Julien Troufflard il y a presque 6 ans

Gérard,

c'était ça. Les bonnes options sont :

para_syteme_lineaire ----------
TYPE_MATRICE BANDE_NON_SYMETRIQUE_LAPACK
SYMETRIE_MATRICE 0

Donc résolu. Par contre, il faut peut-être le signaler dans la doc théorique et utilisateur.

Mis à jour par Gérard Rio il y a presque 6 ans

  • Statut changé de Nouveau à Résolu

Et bien super ! très bonne intuition.
Effectivement avec une matrice non-symétrique, on peut avoir une non-convergence dans le cas d'une résolution par défaut qui utilise une symétrisation par défaut.
Je vais suivre ton conseil et mettre une info dans la doc.
Merci

Mis à jour par Gérard Rio il y a presque 6 ans

  • % réalisé changé de 0 à 100

Mis à jour par Gérard Rio il y a presque 6 ans

pour information, il est également possible d'utiliser une résolution itérative qui peut se révéler une alternative performante par rapport à une résolution directe.
Je donne un exemple de mise en données qui fonctionne bien.
Je l'ai testé avec un maillage plus conséquent et la résolution itérative est plus rapide que la résolution directe.
@tester à l'occasion
NB: cela m'a permis de corriger un pb de lecture de nb d'itération (le paramètre: NB_ITER_NONDIRECTE) qui était mal lu, il faut donc utiliser la dernière version >= V 6.938

para_syteme_lineaire-----
TYPE_MATRICE CREUSE_COMPRESSEE_COLONNE
SYMETRIE_MATRICE 0
#BI_CONJUG BI_CONJUG_STAB CONJUG_GRAD_SQUARE
#GENE_MINI_RESIDUAL QUASI_MINI_RESIDUAL
TYPE_RESOLUTION CONJUG_GRAD_SQUARE
TYPE_PRECONDITIONNEMENT ICP
NB_ITER_NONDIRECTE 1200
TOLERANCE 1.e-8

Actions

Formats disponibles : Atom PDF

Redmine Appliance - Powered by TurnKey Linux