Академический Документы
Профессиональный Документы
Культура Документы
Using Code_Aster
Joint béton-rocher
CHARGE : poids propre, 3m, 4m, 5m, 6m, 7m,7.5m, 8m, 8.5m, 9m
EDF R&D : Créer de la valeur et préparer l’avenir
Matériau non-linéaire : béton, acier
La courbe force-déplacement est non-linéaire et dépend de l’histoire
du chargement. Exemple : élasto-plasticité (acier)
F F
B B
t u
A C
A C
Force imposée Réponse
u
B u(C) u(A)
Déformation permanente
(déplacement non nul après
t décharge)
A C
Déplacement
imposé
EDF R&D : Créer de la valeur et préparer l’avenir
Some theoretical elements
div f 0 in
Ω
.n g on g f
u u on Γu
d u
ud
div f 0 in
.n g on g Ω
u u on f
d u Γu
ud
(u )
1
2
u t u u [ u 3 components
div fext 0 | v .n g on g
Intégration par partie de l’équation différentielle résulte en PTV
: v d
f .v d
g
g .vd v
Approximation EF:
l’espace de vecteurs tests v est de dimension finie
La base de vecteurs test est identifiée au maillage
solution discrétisée est un problème vectoriel
: vi d
f .vi d
g
g .vi d
Fint (u) Fext
vi i [0, N ]
div fext 0 | v .n g on g
Intégration par partie de l’équation différentielle résulte en PTV
: vi d
f .vi d
g
g .vi d vi i [0, N ]
u E u (u ) ( , (u ))
Internal variables
New syntaxe F L
Fint (u) F ext
L ( , u ) L 0
int ext
Why parametrization ?
Real boundary conditions should be applied by non-constant values
Non-linear material produced non-linear equation, precision should depends on
incremental step size
An non-linear problem is easier to solve when cut by small step size
f g ud
B B
t t t
A C A C
Prescribed Prescribed Prescribed
volumic force surfacic force displacement
F F
Cutting
<=
u u
L ( , u ) L 0 for t
int ext
Lint
k Lext
k
uk tk k k k
Time t0 t1 t2 t3 t4
t
Step 1 2 3 4
Incremental quantities : uk uk 1 u
21 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
1
x n x n1 n1
F ( x n1
)
F ( x )
Properties :
Quadratic convergence near the solution
n1
Computation of F ( x ) should be very expensive
F ( x n1 ) 0
Lint Lext
K n1 _
u
u u n 1 u n 1
R n1 Lext ,n1 Lint, n1
23 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Global algorithm :
1) Compute internal and external forces
2) Compute tangent matrix
3) Solve linear system
4) Update displacements
5) Evaluate convergence
L
ext
Lint
F*
F0 *
u0 u u
25 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
F1
F0
u0 u1 u *= u 2 u
26 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
L
ext
Lint
F *= F 2
F1
K 1n
F0
u0 u1 n u1 u *= u 2 u
27 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
L
ext
Lint
F *= F 2
u1n
F1
K 1n
F0
u0 u1 u *= u 2 u
28 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
L
ext
Lint
F *= F 2
u1n
F1
K 1n
F0
u0 u1 n u1 u *= u 2 u
29 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
L
ext
Lint
F *= F 2
u1n
F1
R u1n
Lint u1n
K 1n
F0
u0 u1 n u1 u *= u 2 u
30 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem – Newton by graphic
L
ext
Lint L
ext
Lint
F *= F 2 F *= F 2
u1n
F1 F1
K 1n
1 2
K 1n
F0 F0
u0 u1 n u1 u *= u 2 u
u0 u1 n u1 u *= u 2 u
Matrix computation Solve system
L
ext
Lint L
ext
Lint
F *= F 2 F *= F 2
u1n u1n
F1 F1
R u1n
Lint u1n
n
K1 K 1n
3 4
F0 F0
u0 u1 n u1 u *= u 2 u u0 u1 n u1 u *= u 2 u
R
R
L1
L1
u u
MATRICE=‘TANGENTE' MATRICE='ELASTIQUE'
R R
L2
L1
L1
MATRICE=‘TANGENTE'u MATRICE=‘TANGENTE' u
REAC_INCR=1 REAC_ITER=2
4 Evaluate convergence
Absolute (RESI_GLOB_MAXI)
RESUN = STAT_NON_LINE(...
CHAM_MATER = CHMA,
COMPORTEMENT = (
_F( GROUP_MA =‘CABLE',
RELATION ='VMIS_ISOT_TRAC'),
_F( GROUP_MA =‘BETON',
RELATION =‘ENDO_FISS_EXP'),
...)
t
0 2
RAMPE = DEFI_FONCTION(PARA='INST',VALE=(0,0,2,200))
LOAD = AFFE_CHAR_MECA(MODELE=MOD,
PRES_REP=_F(PRES=100.,
GROUP_MA='TOTO'))
RESUN = STAT_NON_LINE(...
EXCIT=_F(CHARGE =LOAD,
FONC_MULT=RAMPE)
...)
L_INST=DEFI_LIST_REEL( DEBUT=0.0,
INTERVALLE=(
_F(JUSQU_A=1.0,NOMBRE=4,),
_F(JUSQU_A=2.0,NOMBRE=3,),
),)
RESUN = STAT_NON_LINE(...
INCREMENT=_F(LIST_INST=L_INST)
...)