Claudio Borri
Luca Salvatori
MECCANICA COMPUTAZIONALE
Capitolo 6
Introduzione all’analisi non-lineare
Rev. 12/06/2006
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 1/25
Argomenti trattati nel capitolo 6
Non-linearità fisica e geometrica
Metodi di analisi
Procedura incrementale
Metodi iterativi
Criteri di convergenza
Esempio di non-linearità geometrica: biella in
formulazione lagrangiana totale
Esempio di non-linearità fisica: biella con legame
elastico non-lineare
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 2/25
1
Introduzione
P
Struttura
V
INPUT
Sistema
fisico
OUTPUT
(carichi esterni)
V = V ( P,"t" )
(spostamenti,
deformazioni,
sforzi, …)
sistema di equazioni
(in generale non-lineare)
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 3/25
Caso lineare
V = V ( P,"t" ) = K -1eP
sistema di equazioni lineari
☺ Vantaggi:
soluzione con metodi standard
computazionalmente poco oneroso
vale il “principio” di sovrapposizione degli effetti
(combinazioni di carico, sovrapposizione modale, …)
L’approssimazione lineare non è sempre applicabile!
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 4/25
2
Possibili fonti di non-linearità
Gruppi di equazioni fondamentali
STATICHE
(equilibrio)
COSTITUTIVE
(legame)
CINEMATICHE
(congruenza)
non-linearità fisica
non-linearità
geometrica
(plasticità dell’acciaio,
fessurazione del cls,…)
σ ij
(equilibrio della
struttura deformata:
= σ ij (ε," t ")
l’eq. in conf. indef. è
un controsenso
fisico!!)
1 ⎛ ∂ui ∂u j ∂uk ∂uk ⎞
εij = ⎜ +
+
⎟
2 ⎜⎝ ∂x j ∂xi ∂xi ∂x j ⎟⎠
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 5/25
Condizione di equilibrio di un sistema discreto
e linearizzazione
Immaginiamo di poter scrivere l’equilibrio in forma vettoriale come:
FFint
(V) = P
int(V) = P
condizione di equilibrio
Fint vettore delle forze interne (dipendente dalla struttura)
V spostamenti nodali (incogniti)
P carichi esterni (dati)
Caso lineare: Fint(V)=Klin V
Caso non-lineare: linearizzazione attorno a V0 in equilibrio (Fint(V0)=P0 ):
Fint ( V + Δ V ) = Fint ( V0 ) +
∂ Fint
∂V
Δ V + ... = P0 + Δ P = P
V0
K T ⋅ ΔV P − Fint
K T ( V0 ) =
∂Fint
∂V
equilibrio linearizzato
matrice di rigidezza tangente
V0
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 6/25
3
Obbiettivo dell’analisi non-lineare e
la procedura incrementale-iterativa
Obbiettivo: tracciare la risposta carico-spostamento della struttura.
Si assume il carico dipendente da un solo parametro scalare λ
(moltiplicatore di carico):
P = λ Pref
Come il FEM discretizza la struttura nello spazio, la procedura
incrementale effettua la discretizzazione del percorso caricospostamento: dato uno stato in equilibrio definito dalla coppia (Vi,λi)
la procedura incrementale stabilisce come si debba ricercare il
successivo stato (Vi+1,λi+1).
Poiché le equazioni di equilibrio sono non-lineari, ogni coppia in
equilibrio è ricercata con l’ausilio di un metodo iterativo.
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 7/25
“Ingredienti”
Procedura incrementale (criterio con cui vengono ricercate le coppie (V,λ)):
• Controllo di carico
• Controllo di spostamento
• “A lunghezza d’arco”
Metodo iterativo (metodo con cui si risolvono le equazioni di equilibrio):
• Rigidezza tangente aggiornata (Newton-Raphson o “N-R”)
• Rigidezza tangente non aggiornata (metodi “modificati”)
• Rigidezza elastica (o “rigidezza costante” o “rigidezza lineare”)
• “Rigidezza” secante (quasi-Newton)
Criterio di convergenza (grandezza con cui si misura l’errore e che determina la
fine delle iterazioni):
• Norma dei residui
• Norma degli spostamenti
• Norma energetica
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 8/25
4
Esempio: contr. di carico + N-R + err. ass. residui
Si parte da una posizione di equilibrio nota
(λ0=0,V0=0)
(e.g. supponendo che la struttura scarica
sia in configurazione indeformata).
λi = λi-1+Δλ
All’inizio di ogni passo incrementale si
V*i,0 = Vi-1
assume come prima ipotesi per gli
spostamenti il valore al passo precedente.
Fint = Fint(V*i,k-1)
Con esso si valutano le forze interne e la
KT = KT(V*i,k-1)
rigidezza tangente (metodo di Newton).
Si calcola il vettore dei residui.
Ri,k = λiPref-Fint
Si calcola la correzione degli spostamenti
ciclo
e il relativo valore aggiornato.
ΔV*i,k = KT-1 Ri,k
iterativo
Si verifica la bontà dell’approssimazione
V*i,k = V*i,k-1+ΔV*i,k
(k=1,2,…)
(in questo esempio con l’errore assoluto
misurato sui residui): se non c’è
||Ri,k||<δtoll
convergenza si continua ad iterare,
no
altrimenti si accetta il valore V*i,k come in
sì
equilibrio con il moltiplicatore λi.
Vi = V*i
La procedura ha termine quando si
raggiunge un valore massimo prestabilito
λi ≥ λmax
no
di λ. Il risultato sono le coppie (Vi,λi).
sì
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
ciclo
incrementale
(i=1,2,…)
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 9/25
FINE
Procedura incrementale: controllo di carico
λPref
punto limite (snap-through)
(Vi,λiPref)
(V2,λ2Pref)
(V1,λ1Pref)
V
☺ corrisponde ad un modo “naturale” di applicare il carico per passi
impossibile seguire il percorso di equilibrio oltre il punti limite
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 10/25
5
Procedura incrementale: controllo di spostamento
P
punto limite (snap-through)
(λiVref,Pi)
(λ2Vref, P2)
punto di ritorno
(snap-back)
(λ1Vref,P1)
λVref
Il moltiplicatore si applica agli spostamenti e si ricercano i carichi corrispondenti:
tutti gli spostamenti assegnati devono essere fra loro proporzionali, ciò accade
solo in pochi modelli fisici (e.g. carichi concentrati in prove sperimentali).
☺ consente di superare i punti limite
ma non i punti di ritorno
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 11/25
Procedura incrementale: “a lunghezza d’arco”
λPref
punto limite (snap-through)
A = Δλ 2 + ( cΔV )
(V2,λ2Pref)
(Vi,λiPref)
2
punto di ritorno
(snap-back)
(V1,λ1Pref)
V
non si ha il controllo né sul carico né sugli spostamenti
☺ è possibile seguire ogni percorso di equilibrio
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 12/25
6
Metodi iterativi: Newton-Raphson
λPref
ΚT(V*i,2)
ΚT(V*i,1)
(Vi+1,λi+1Pref)
λi+1Pref
ΚT(Vi)
i,2,Fint
(V*
Ri,1
(V*
i,2))
(V*i,1,Fint(V*i,1))
λiPref
☺
☺ Convergenza
Convergenza
quadratica
quadratica(poche
(poche
iterazioni).
iterazioni).
KKT viene
calcolata ed
T viene calcolata ed
invertita
invertitaad
adogni
ogni
passo
(onere
passo (onere
computazionale).
computazionale).
(Vi,λi)
V
ΔV*i,1 ΔV*i,2 ΔV*i,3
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Ri,2
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 13/25
Metodi iterativi: Newton-Raphson modificato
λPref
ΚT(Vi) ΚT(Vi)
λi+1Pref
ΚT(Vi)
(V*i,2,Fint(V*i,2))
*
i,1,Fint(V i,1))
(V*
λiPref
(Vi,λi)
ΔV*i,1 ΔV*i,2 ΔV*i,3
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
(Vi+1,λi+1Pref)
Ri,1
Ri,2
☺
☺ KKTTviene
vienecalcolata
calcolataed
ed
invertita
una
invertita unasola
solavolta:
volta:
ciascuna
ciascunaiterazione
iterazioneèèpiù
più
rapida.
rapida.
La
Laconvergenza
convergenzadiviene
diviene
lineare
lineareeedunque
dunquesono
sono
necessarie
necessariepiù
piùiterazioni.
iterazioni.
V
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 14/25
7
Metodi iterativi: quasi-Newton (della secante)
λPref
ΚS(V*i,1)
ΚS(V*i,2)
λi+1Pref
ΚT(Vi)
i,2,Fint
(V*
(V*
i,1,Fint
λiPref
(V*
(Vi+1,λi+1Pref)
i,2))
(V*
i,1))
(Vi,λi)
Ri,1
•• KKT viene
calcolata ed invertita solo
T viene calcolata ed invertita solo
alalprimo
passo,
primo passo,aiaipassi
passisuccessivi
successivi
sisiutilizza
la
matrice
utilizza la matricedi
dirigidezza
rigidezza
secante
secante(più
(piùrapida
rapidada
dacalcolare).
calcolare).
•• La
Lavelocità
velocitàdi
diconvergenza
convergenzaèè
intermedia
fra
intermedia fraililmetodo
metododi
diN-R
N-R
standard
e
quello
modificato
standard e quello modificato
V
ΔV*i,1 ΔV*i,2 ΔV*i,3
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Ri,2
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 15/25
Metodi iterativi: rigidezza iniziale
Il metodo della rigidezza iniziale (o elastica o costante) utilizza
sempre la matrice di rigidezza elastica.
Il metodo richiede in genere molte iterazioni e presenta la
convergenza più lenta.
In alcuni casi tuttavia rende l’analisi più stabile.
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 16/25
8
Metodi iterativi applicati
alla procedura “a lunghezza d’arco”
iterazioni lungo arco di
circonferenza
iterazioni lungo normale fissa
Esistono diverse varianti della procedura
“a lunghezza d’arco” che, assieme al tipo di
iterazione con cui vengono implementati,
prendono nomi specifici (e.g. il metodo di
Riks-Wemper-Wessels è una procedura a
controllo di lunghezza d’arco che proietta
lungo la normale, e itera alla Newton
aggiornando le matrici).
iterazioni lungo normale
aggiornata (R-W-W)
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 17/25
Criteri di convergenza
La procedura iterativa termina quando:
errore relativo o assoluto
dell’iterazione corrente
(calcolato dal programma)
δk =
ek
< δ toll
eref
precisione ricercata
(fissata dall’utente)
Le possibili varianti sono:
a) nella scelta della grandezza da normare:
1) norma dei residui (Ri,k)
2) norma delle correzioni degli spostamenti (ΔV*i,k)
3) norma energetica (prodotto di Ri,k per ΔV*i,k)
b) nella scelta del tipo di norma (euclidea, max-abs, sum-abs, …).
c) nella scelta della quantità di riferimento (se si considera l’errore assoluto
è eref = 1.0, se si considera l’errore relativo è eref = e1).
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 18/25
9
Scelta dell’algoritmo
Non è possibile definire a priori l’algoritmo “migliore”,
ma va scelto di volta in volta in base a:
Non-linearità fisica o geometrica
Hardening o softening
Dimensione del problema
Carichi applicati in singoli punti o su intere
superfici
Non-linearità improvvise o graduali
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 19/25
Esempio di elemento geometricamente N-L:
biella in formulazione lagrangiana totale
y
v1
x
coordinate locali
v4
v2
v3
E
Interpolazione degli spostamenti:
derivate degli spostamenti:
A A
⎡1 − ξ
⎡ux ⎤ ⎢ 2
⎢u ⎥ = ⎢
⎣ y⎦ ⎢ 0
⎣⎢
∂u x −u1 + u3
=
∂x
A
⎤ ⎡ v1 ⎤
0 ⎥⎢ ⎥
v2
⎥⎢ ⎥
1 + ξ ⎥ ⎢ v3 ⎥
0
⎢ ⎥
2 ⎦⎥ ⎣⎢ v4 ⎦⎥
∂u y −u2 + u4
=
∂x
A
1+ ξ
2
0
1− ξ
2
,
trascurabile rispetto al termine lineare
∂u x 1 ⎛ ∂u x ⎞ 1 ⎛ ∂u y ⎞
+ ⎜
⎟
⎟ + ⎜
∂x 2 ⎝ ∂x ⎠ 2 ⎝ ∂x ⎠
2
Deformazioni (congruenza non-lineare): ε xx =
Sforzi (legame lineare):
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
2
σ xx = Eε xx
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 20/25
10
Rigidezza elastica e rigidezza geometrica
2
Energia interna:
2
1
1 A
EAA ⎡ ∂u x 1 ⎛ ∂u y ⎞ ⎤
⎢
⎥ =
+ ⎜
U = ∫ σ xx ε xx dV = ∫ EAε xx2 dx =
⎟
2 V
2 0
2 ⎢ ∂x 2 ⎝ ∂x ⎠ ⎥
⎣
⎦
trascurabile rispetto al
2
4
2
termine del terzo ordine
EAA ⎡⎛ ∂u x ⎞ ∂u x ⎛ ∂u y ⎞ 1 ⎛ ∂u y ⎞ ⎤
⎢⎜
=
+
⎜
⎟ + ⎜
⎟ ⎥
⎟
∂x ⎝ ∂x ⎠ 4 ⎝ ∂x ⎠ ⎥
2 ⎢⎝ ∂x ⎠
⎣
⎦
2
2
AE
EA ( v3 − v1 )
N ( v4 − v2 )
( v3 − v1 )
dove: N =
+
A
A
A
2
2
Primo teorema di Castigliano:
∂ 2U
∂vi ∂v j
kij =
⎡1
⎢
AE ⎢ 0
kT = kE + kG =
A ⎢ −1
⎢
rigidezza elastica (si ottiene
⎣0
considerando la congurenza lineare).
Matrice di rigidezza tangente
in coordinate locali:
kE
k G rigidezza geometrica (dipende dallo
0 −1 0 ⎤
⎡0 0
⎥
0 0 0 ⎥ N ⎢⎢0 1
+
0 1 0⎥ A ⎢0 0
⎥
⎢
0 0 0⎦
⎣0 −1
kE
0⎤
0 −1⎥⎥
0 0⎥
⎥
0 1⎦
0
kG
stato di sollecitazione).
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 21/25
Trasformazione di coordinate e commento
Trasformazione di coordinate:
k T glob = Q T k TQ
⎡ c s 0 0⎤
⎢−s c 0 0⎥
⎥
Q=⎢
⎢ 0 0 c s⎥
⎢
⎥
⎣ 0 0 −s c ⎦
con:
Y
⎧c = cos α
⎨
⎩ s = sin α
y
α
x
X
coordinate globali
L’approccio classico appena visto, è formulato in modo tale che l’espressione
delle forze interne abbia la forma approssimata:
fint glob ( v glob ) = k T ( v glob ) v glob
la cui derivata non è kT!
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 22/25
11
Esempio di elemento fisicamente N-L:
legge elastica bi-lineare a trazione
σ
Legame:
se ε ≤ ε 0
⎧ Eε
⎩ Eε 0 + E1 ( ε − ε 0 ) se ε > ε 0
σ =⎨
1
E
E1
1
ε0
Legame
tangente:
D=
ε
∂σ ⎧ E se ε ≤ ε 0
=⎨
∂ε ⎩ E1 se ε > ε 0
σ
Attenzione: in scarico e ricarico segue sempre lo stesso
percorso, NON è un comportamento plastico nel quale i
percorsi di scarico hanno pendenza parallela al tratto iniziale:
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
ε
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 23/25
Biella elastica bi-lineare av trazione
Congruenza (lineare):
Legame (non-lineare):
v −v
ε= 3 1
A
se ε ≤ ε 0
⎧ Eε
σ =⎨
⎩ Eε 0 + E1 ( ε − ε 0 ) se ε > ε 0
Vettore delle forze
interne in coordinate
locali (equilibrio):
⎡− N ⎤
⎡ −1⎤
⎢ 0 ⎥
⎢0⎥
fint = ⎢ ⎥ = Aσ ⎢ ⎥
⎢N ⎥
⎢1⎥
⎢ ⎥
⎢ ⎥
⎣ 0 ⎦
⎣0⎦
Matrice di rigidezza
tangente in coordinate
locali:
⎡1
⎢
∂f
∂f ∂σ ∂ε AD ⎢ 0
=
k T = int = int
∂v
∂σ ∂ε ∂v
A ⎢ −1
⎢
⎣0
2
v1
v4
v3
Linearizzazione del
legame:
D=
∂σ ⎧ E se ε ≤ ε 0
=⎨
∂ε ⎩ E1 se ε > ε 0
0 −1 0 ⎤
0 0 0 ⎥⎥
0 1 0⎥
⎥
0 0 0⎦
Segue la consueta trasformazione in coordinate globali.
Naturalmente è possibile formulare elementi con non-linearità fisiche e
geometriche contemporaneamente!
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 24/25
12
Nel prossimo capitolo
Cenni di stabilità computazionale
Università degli Studi di Firenze
Dipartimento di Ingegneria Civile
Corso di Meccanica Computazionale
Claudio Borri
Luca Salvatori
(rev. 12/06/2006) Capitolo 6: 25/25
13
Scarica

Capitolo 6 - Università degli Studi di Firenze