1
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 1/42
MECCANICA COMPUTAZIONALEMECCANICA COMPUTAZIONALE
Claudio BorriLuca Salvatori
Capitolo 2
Metodo diretto della rigidezza
Rev. 31 maggio 2006
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 2/42
Argomenti trattati nel capitolo 2
Idealizzazione e discretizzazione
Rigidezza dell’elemento biella (ricavata per via diretta)
Trasformazione di coordinate (locali-globali)
Assemblaggio
Applicazione delle condizioni al contorno
Soluzione
Calcolo variabili secondarie
2
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 3/42
Idealizzazione e discretizzazione(operata dall’utente)
collegamenti
membrature
vincoli
Struttura reale
Struttura idealizzata ediscretizzata
[figure per gentile concessionedel Prof. C. Felippa]
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 4/42
Scomposizione della struttura(teoria del metodo)
Struttura discretizzata
Rimozione di carichi e vincoli
Scomposizione in singoli elementi
Singolo elemento generico
3
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 5/42
Soluzione della struttura(eseguita dal programma)
corrente sup.
corrente inf.montanti e diagonaliFormazione dei singoli
elementi (in coordinate locali)
Rappresentazione in coordinate globali
Assemblaggio (ripristino della congruenza)
Applicazione di vincoli e carichi
Soluzione
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 6/42
L’approccio del FEM è generaleed è lo stesso per tutti i tipi di elemento
Vediamo il metodo passo passo utilizzando elementi semplici!
biella 2D
2 nodi
4 GdL
continuo 3D tri-cubico
64 nodi
192 GdL
4
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 7/42
Struttura “reale”
Sezioni scatolari 0.10 x 0.10 m (s=5 mm)(A = 2.0x10-3 m2)
Acciaio(E = 2.1x10+8 kN/m2)
EA = 420 MN
100 kN
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 8/42
Modello idealizzato
Ipotizziamo di poter:
• trascurare la terza dimensione
• trascurare i momenti agli incastri (struttura reticolare)
• trascurare il peso proprio
• considerare vincoli ideali
5
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 9/42
Numerazione di nodi ed elementi
313322211
Secondo nodo
Primo nodo
Elemento
elemento 2elemen
to 1
elemento 3
nodo 1
nodo 2
nodo 3
Tabella di incidenza
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 10/42
Definizione di sistema di riferimento globale e dei gradi di libertà nodali della struttura
sistema di riferimentoglobale
Y
X
V2y
V2x
V1y
V1x
V3y
V3x
1
1
2
2
3
3
x
y
x
y
x
y
VVVVVV
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
V
vettore degli spostamenti nodali della struttura (parametri
lagrangiani di spostamento)
6
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 11/42
Definizione dei carichi nodaliA ciascun grado di libertà corrisponde un’azione che è quella che compie lavoro con il relativo spostamento generalizzato: traslazioni
rotazioni
“altro”
forze
momenti
ciò che compie lavoro con “altro”
P2y
P2x
P1y
P1x
P3y
P3x
vettore dei carichi nodali della struttura
1
1
2
2
3
3
x
y
x
y
x
y
PPPPPP
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
P
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 12/42
Singolo elemento in coordinate globali
p(1)2y ,v
(1)2y
p(1)2x ,v(1)
2x
p(1)1y ,v
(1)1y
p(1)1x ,v
(1)1x
Y
X
( )
( )
( )
( )
( )
11
1111
2
12
x
y
x
y
v
v
v
v
⎡ ⎤⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
v ( )
( )
( )
( )
( )
11
1111
2
12
x
y
x
y
p
p
p
p
⎡ ⎤⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
p
7
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 13/42
Relazione fra carichi e spostamenti a livello di elemento
Per ogni elemento dobbiamo ricercare una relazione fra carichi espostamenti.
Nelle ipotesi di comportamento lineare questa relazione èesprimibile come:
( ) ( ) ( )e e e= ⋅p k v
Vediamo adesso il caso dell’elemento biella tenendo a mente che per ogni elemento lineare è possibile scrivere una relazione come la precedente e che dunque il procedimento è del tutto generale.
( )
( )
( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( )
( )
( )
11 12 11 1
2 21 22 2 2
1 2
e
e
e ee e e e
e e ee en
e e e e en
e ee e en nn n n n
k k kp v
p k k k v
p vk k k
⎡ ⎤⎡ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥
= ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 14/42
Proprietà degli elementi e sistemi di riferimento locali
y(1) y(
1)
Y
X
y (2)
x (2)y(3)
x(3)
( ) ( )
( )
1 1
1
420MN
2 2m
E A =
=
( ) ( )
( )
2 2
2
420MN
2 2m
E A =
=
( ) ( )
( )
3 3
3
420MN
4m
E A =
=
8
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 15/42
Rigidezza dell’elemento in coordinate locali
y(e)
x(e)
p(e)1x ,v
(e)1x
p(e)1y ,v
(e)1y
p(e)2x ,v(e)
2x
p(e)2y ,v
(e)2y
N.B. per l’analisi lineare la direzione y(1) è ininfluente
equilibrio
legame
congruenza
( )
( )1
2
ex
ex
p NNp
⎡ ⎤ −⎡ ⎤=⎢ ⎥ ⎢ ⎥
⎣ ⎦⎢ ⎥⎣ ⎦
N EA ε= ⋅
( ) ( )2 1
e ex xv vε −Δ
= =
( )
( )
( ) ( )
( )
( )
( )1 1
2 2
1 11 1
e ee ex x
ee ex x
p vE Ap v
⎡ ⎤ ⎡ ⎤−⎡ ⎤=⎢ ⎥ ⎢ ⎥⎢ ⎥−⎣ ⎦⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦
( )ek
N.B.: la matrice è simmetrica (non è un caso: vedremo perché nel cap. 3)
( ) ( ) ( )e e e=p k v
matrice di rigidezza dell’elemento in coordinate locali
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 16/42
Trasformazione degli spostamenti nodali
p(e)1y ,v
(e)1y
p(e)1x ,v
(e)1x
y(e) x(
e)Y
X
p(e) 1x
,v(e) 1x
p(e) 1y
,v(e) 1y
p(e)2y ,v
(e)2y
p(e)2x ,v(e)
2x
p(e) 2x
,v(e) 2x
p(e) 2y
,v(e) 2y
α
cossin
cs
αα
=⎧⎨ =⎩
1
1 1 1 11
2 2 2 2 2
2
0 00 0
x
x x y yx
x x y x x
y
v
v c v s v vv c sc sv c v s v v v
v
⎡ ⎤⎢ ⎥
⎫= ⋅ + ⋅ ⎡ ⎤ ⎢ ⎥⎡ ⎤⎪ ⇒ =⎢ ⎥⎬ ⎢ ⎥⎢ ⎥= ⋅ + ⋅ ⎢ ⎥ ⎣ ⎦⎪ ⎣ ⎦ ⎢ ⎥⎭⎢ ⎥⎣ ⎦
( ) ( ) ( )e e e= ⋅v Q v
9
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 17/42
Trasformazione dei carichi nodali
cossin
cs
αα
=⎧⎨ =⎩
1 1 1
1 1 1 1
2 2 2 2
2 2 2
00
00
x x x
y x y x
x x x x
y x y
p c p p cp s p p ps
cp c p p psp s p p
⎫ ⎡ ⎤= ⋅ ⎡ ⎤⎪ ⎢ ⎥ ⎢ ⎥= ⋅ ⎡ ⎤⎪ ⎢ ⎥ ⎢ ⎥⇒ = ⎢ ⎥⎬ ⎢ ⎥ ⎢ ⎥= ⋅ ⎢ ⎥⎪ ⎣ ⎦⎢ ⎥ ⎢ ⎥⎪ ⎢ ⎥ ⎣ ⎦= ⋅ ⎭ ⎣ ⎦
( ) ( ) ( )Te e e= ⋅p Q p
p(e)1y ,v
(e)1y
p(e)1x ,v
(e)1x
y(e) x(
e)Y
X
p(e) 1x
,v(e) 1x
p(e) 1y
,v(e) 1y
p(e)2y ,v
(e)2y
p(e)2x ,v(e)
2x
p(e) 2x
,v(e) 2x
p(e) 2y
,v(e) 2y
α
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 18/42
Matrici di trasformazioneIl fatto che le matrici di trasformazione siano una la traspostadell’altra può essere provato anche con considerazioni energetiche. Il lavoro fatto dai carichi sugli spostamenti nei due sistemi di riferimento deve essere lo stesso (per brevità di notazione si omette l’apice (e) in tutte le variabili):
si ha:= ⋅v Q v
δ δ= ⋅v Q v
T Tδ δ⋅ = ⋅v p v pAmmesso che:
Sostituendo in (*) e tenendo conto che (AB)T=BTAT, si ha:
( ) ( )T T T T Tδ δ δ 0⋅ = ⋅ ⋅ ⇒ ⋅ − ⋅ =v p v Q p v p Q p
(*)
Poiché la precedente deve valere per ogni , si ottiene:T= ⋅p Q p
δv
10
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 19/42
Rigidezza dell’elemento in coordinate globali
( ) ( ) ( )e e e= ⋅v Q v
( ) ( ) ( )e e e=p k v
( ) ( ) ( )e e e=p k v
( ) ( ) ( ) ( )Te e e e= ⋅ ⋅k Q k Q
( )( ) ( )
( )
2 2
2 2
2 2
2 2
e ee
e
c sc c scsc s sc sE Ac sc c scsc s sc s
⎡ ⎤− −⎢ ⎥− −⎢ ⎥=⎢ ⎥−⎢ ⎥− −⎢ ⎥⎣ ⎦
k
N.B.: il cambiamento di coordinate conserva la simmetria della matrice
( ) ( ) ( )Te e e= ⋅p Q pTrasformazioni di coordinate
Eq. di rigidezzain coord. locali
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 20/42
Equazioni di rigidezza in coordinate globali( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
1 11 1
1 11 1
1 12 2
1 12 2
21
21
22
22
0.5 0.5 0.5 0.50.5 0.5 0.5 0.5210 kN0.5 0.5 0.5 0.5mm20.5 0.5 0.5 0.5
0.5 0.5 0.5 0.50.5210 kN
mm2
x x
y y
x x
y y
x
y
x
y
p v
p v
p v
p v
p
p
p
p
⎡ ⎤ ⎡ ⎤− −⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥− −⎢ ⎥=⎢ ⎥ ⎢ ⎥⎢ ⎥− −⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥− −⎣ ⎦⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎡ ⎤ − −⎢ ⎥⎢ ⎥ −
=⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
21
21
22
22
3 31 1
3 31 1
3 32 2
3 32 2
0.5 0.5 0.50.5 0.5 0.5 0.5
0.5 0.5 0.5 0.5
1 0 1 00 0 0 0kN1051 0 1 0mm
0 0 0 0
x
y
x
y
x x
y y
x x
y y
v
v
v
v
p v
p v
p v
p v
⎡ ⎤⎡ ⎤ ⎢ ⎥⎢ ⎥ ⎢ ⎥−⎢ ⎥ ⎢ ⎥⎢ ⎥− − ⎢ ⎥⎢ ⎥ ⎢ ⎥− −⎣ ⎦ ⎢ ⎥⎣ ⎦⎡ ⎤ ⎡ ⎤−⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥=⎢ ⎥ ⎢ ⎥⎢ ⎥−⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦
11
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 21/42
Il FEM è un metodo generaleIn seguito vedremo come vengono formulati altri elementi, tenendo a mente che si perviene sempre ad un sistema di equazioni analogo a quello visto per la biella:
Vediamo adesso come ricostituire la struttura originale partendodalle equazioni dei singoli elementi.
Il procedimento è detto “assemblaggio” e come si è detto è del tutto indipendente dal tipo di elemento utilizzato.
( )
( )
( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( )
( )
( )
11 12 11 1
2 21 22 2 2
1 2
e
e
e ee e e e
e e ee en
e e e e en
e ee e en nn n n n
k k kp v
p k k k v
p vk k k
⎡ ⎤⎡ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥
= ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 22/42
Assemblaggio delle equazioni degli elementi in equazioni della struttura
L’operazione di assemblaggio ha lo scopo di ricostituire la struttura iniziale collegando i singoli elementi.
Le regole dell’assemblaggio sono:
Congruenza degli elementi nei nodi (gli spostamenti in ogni nodo devono essere gli stessi per tutti gli elementi che sono collegati al nodo stesso).
Equilibrio nei nodi (la somma delle forze esercitate da tutti gli elementi che si collegano in un nodo deve eguagliare il carico esterno sul nodo stesso).
12
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 23/42
Assemblaggio: congruenza
Per la congruenza, gli spostamenti di ogni elemento in coordinate globali devono essere uguali agli spostamenti dei corrispondenti nodi della struttura, ciò è esprimibile come:
( ) ( )e e= ⋅v A V
A è detta matrice topologica, ha tante righe quanti sono i gradi di libertà dell’elemento e tante colonne quanti sono i gradi di libertà della struttura. La j-ma riga contiene tutti 0 ed un solo 1 nella colonna del grado di libertà strutturale corrispondente al j-mo grado di libertàdell’elemento.
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 24/42
Assemblaggio: esempio di matrici topologiche
elemento 2elemen
to 1
elemento 3nodo 1
nodo 2
nodo 3
p(1)2y ,v
(1)2y
p(1)2x ,v(1)
2x
p(1)1y ,v
(1)1y
p(1)1x ,v(1)
1x
V2y
V2x
V1y
V1x
V3y
V3x
( )
( )
( )
( )
( ) ( )
11
1 11
1 2
122
1 32
3
1 1
1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 0
x
x y
y x
yx
xy
y
Vv Vv V
VvVvV
⎡ ⎤⎢ ⎥⎡ ⎤ ⎡ ⎤ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥= ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎣ ⎦⎢ ⎥ ⎢ ⎥⎣ ⎦⎢ ⎥⎣ ⎦
= ⋅v A V
13
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 25/42
Assemblaggio: matrici topologiche dell’esempio
( )
( )
( )
1
2
3
1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 0
0 0 1 0 0 00 0 0 1 0 00 0 0 0 1 00 0 0 0 0 1
1 0 0 0 0 00 1 0 0 0 00 0 0 0 1 00 0 0 0 0 1
⎡ ⎤⎢ ⎥⎢ ⎥=⎢ ⎥⎢ ⎥⎣ ⎦⎡ ⎤⎢ ⎥⎢ ⎥=⎢ ⎥⎢ ⎥⎣ ⎦⎡ ⎤⎢ ⎥⎢ ⎥=⎢ ⎥⎢ ⎥⎣ ⎦
A
A
A
V2y
V2x
V1y
V1x
V3y
V3x
elemento 2elemen
to 1
elemento 3nodo 1
nodo 2
nodo 3
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 26/42
Assemblaggio: equilibrioPer l’equilibrio, in ogni nodo il carico nodale esterno deve eguagliare la somma delle azioni dovute agli elementi che si collegano in quel nodo, èdunque possibile scomporre il carico esterno in una somma di contributi dovuti ai singoli elementi:
( ) ( ) ( ) ( ) ( ) ( ) ( )δ δe e e e e e e= ⋅ = ⋅ ⇒ = ⋅v A V A V v A V
Con ragionamento energetico analogo a quanto fatto per le matrici di rotazione degli elementi si ha:
( )elem
1
Ne
e=
= ∑P P
( ) ( ) ( ) ( )T Tδ δe e e e⋅ = ⋅V P v pSi è visto che:
( ) ( ) ( ) ( ) ( )( ) ( ) ( ) ( )T T T Tδ =δe e e e e e e e⋅ ⋅ ⋅ ⇒ = ⋅V P V A p P A p
Sostituendo in (*) si ha:
(*)
14
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 27/42
Assemblaggio: rigidezze
( )elem
1
Ne
e=
= ∑P P
( ) ( ) ( )Te e e= ⋅P A p
( ) ( ) ( )e e e=p k v
Ricapitolando si ha:
• equilibrio della struttura:
• relazioni fra grandezze a livello di elemento e a livello di struttura:
• equazioni di rigidezza dell’elemento:
Sostituendo si ottiene:
( ) ( ) ( ) ( )elem elem
T
1 1
N Ne e e e
e e= =
⎛ ⎞ ⎛ ⎞= ⋅ ⋅ ⋅ = ⋅ = ⋅⎜ ⎟ ⎜ ⎟
⎝ ⎠ ⎝ ⎠∑ ∑P A k A V K V K V
( )eK K matrice di rigidezza globale della struttura
N.B.: l’assemblaggio conserva la simmetria: K è simmetrica (vedremo perché nel cap. 3)
( ) ( )e e= ⋅v A V
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 28/42
Equazioni risolutive(prima dell’imposizione dei vincoli esterni)
Le equazioni del problema sono dunque espresse in forma matriciale dal sistema di equazioni lineari:
= ⋅P K VGdL
GdL
GdL GdLGdL GdL GdL GdL
11 12 11 1
2 21 22 2 2
1 2
N
N
N NN N N N
K K KP VP K K K V
P VK K K
⎡ ⎤⎡ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥= ⋅⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦⎣ ⎦
La matrice di rigidezza K è ottenuta come somma dei contributi delle rigidezze dei singoli elementi riportate a livello di struttura.
15
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 29/42
Rigidezza degli elementi a livello di struttura
( )
( )
1
2
0.5 0.5 0.5 0.5 0 00.5 0.5 0.5 0.5 0 00.5 0.5 0.5 0.5 0 0210 kN0.5 0.5 0.5 0.5 0 0 mm20 0 0 0 0 00 0 0 0 0 0
0 0 0 0 0 00 0 0 0 0 00 0 0.5 0.5 0.5 0.52100 0 0.5 0.5 0.5 0.520 0 0.5 0.5 0.5 0.50 0 0.5 0.5 0.5 0.5
− −⎡ ⎤⎢ ⎥− −⎢ ⎥⎢ ⎥− −
= ⎢ ⎥− −⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦⎡ ⎤⎢ ⎥⎢⎢ − −
= ⎢ − −⎢⎢ − −⎢
− −⎣ ⎦
K
K
( )3
kNmm
1 0 0 0 1 00 0 0 0 0 00 0 0 0 0 0 kN1050 0 0 0 0 0 mm1 0 0 0 1 0
0 0 0 0 0 0
⎥⎥⎥⎥⎥⎥
−⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
= ⎢ ⎥⎢ ⎥⎢ ⎥−⎢ ⎥⎣ ⎦
K
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 30/42
Rigidezza del sistema( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
1 2 3
1 3 1 3 1 1 3 311 11 12 12 13 14 13 14
1 3 1 3 1 1 3 321 21 22 22 23 24 23 24
1 1 1 2 1 2 2 231 32 33 11 34 12 13 14
1 1 1 2 1 2 2 241 42 43 21 44 22 23 24
3 3 2 2 2 3 2 331 32 31 32 33 33 34 34
3 3 2 241 42 41 42 4
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k
= + + =
+ +
+ +
+ +=
+ +
+ +
K K K K
( ) ( ) ( ) ( )2 3 2 33 43 44 44
1.7071 0.7071 0.7071 0.7071 1.0000 0.00000.7071 0.7071 0.7071 0.7071 0.0000 0.00000.7071 0.7071 1.4142 0.0000 0.7071 0.7071
1050.7071 0.7071 0.0000 1.4142 0.7071 0.70711
k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥ =⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥+ +⎣ ⎦
− − −− −
− − −=
− − −−
kNmm
.0000 0.0000 0.7071 0.7071 1.7071 0.70710.0000 0.0000 0.7071 0.7071 0.7071 0.7071
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥− −⎢ ⎥
− −⎢ ⎥⎣ ⎦
16
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 31/42
Assemblaggio: procedura operativaLe matrici topologiche non vengono in pratica utilizzate nei programmi:
Come si osserva dall’esempio è possibile procedere come segue:- si inizializza la matrice di rigidezza della struttura a zero
- per ogni elemento:
- si scrive la matrice di rigidezza k(e) in coordinate globali
- ogni valore kij(e) della matrice di rigidezza dell’elemento viene sommato
alla rigidezza della struttura nella corrispondente posizione (ricavabile dalla tavola di incidenza dei nodi)
Contengono poche informazioni e occupano molta memoria (in un modello con 10,000 GdL la matrice topologica di una biella sarebbe 4x10,000 contenendo tutti 0.0 e solo 4 valori uguali a 1.0).
Necessitano di pesanti operazioni di moltiplicazione di matrici (e si moltiplica sempre per 0.0 o per 1.0).
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 32/42
Assemblaggio: esempio operativo (elemento 1)
313322211
Secondo nodo
Primo nodo
Elementoelemento 2elemen
to 1
elemento 3
nodo 1
nodo 2
nodo 3
Tabella di incidenza
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
1 1 1 111 12 13 14
1 1 1 121 22 23 24
1 1 1 131 32 33 34
1 1 1 141 42 43 44
k k k k
k k k k
k k k k
k k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
primo nodo
secondo nodo
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
1 1 1 111 12 13 14
1 1 1 121 22 23 24
1 1 1 131 32 33 34
1 1 1 141 42 43 44
0 0
0 0
0 0
0 00 0 0 0 0 00 0 0 0 0 0
k k k k
k k k k
k k k k
k k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
primo nodo
secondo nodo
nodo 1 nodo 2 nodo 3
nodo 1
nodo 2
nodo 3
ElementoStruttura
17
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 33/42
Assemblaggio: esempio operativo (elemento 2)
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
1 1 1 111 12 13 14
1 1 1 121 22 23 24
1 1 1 2 1 2 2 231 32 33 11 34 12 13 14
1 1 1 2 1 2 2 241 42 43 21 44 22 23 24
2 2 2 231 32 33 34
2 2 2 241 42 43 44
0 0
0 0
0 0
0 0
k k k k
k k k k
k k k k k k k k
k k k k k k k k
k k k k
k k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥
+ +⎢ ⎥⎢ ⎥+ +⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
313322211
Secondo nodo
Primo nodo
Elementoelemento 2elemen
to 1
elemento 3
nodo 1
nodo 2
nodo 3
Tabella di incidenza
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
2 2 2 211 12 13 14
2 2 2 221 22 23 24
2 2 2 231 32 33 34
2 2 2 241 42 43 44
k k k k
k k k k
k k k k
k k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
ElementoStruttura
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 34/42
Assemblaggio: esempio operativo (elemento 3)
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( )
1 3 1 3 1 1 3 311 11 12 12 13 14 13 14
1 3 1 3 1 1 3 321 21 22 22 23 24 23 24
1 1 1 2 1 2 2 231 32 33 11 34 12 13 14
1 1 1 2 1 2 2 241 42 43 21 44 22 23 24
3 3 2 2 2 3 2 331 32 31 32 33 33 34 34
3 3 2 2 2 3 241 42 41 42 43 43 44
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k k k k
k k k k k k k
+ +
+ +
+ +
+ +
+ +
+ + ( )344k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
313322211
Secondo nodo
Primo nodo
Elementoelemento 2elemen
to 1
elemento 3
nodo 1
nodo 2
nodo 3
Tabella di incidenza
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
3 3 3 311 12 13 14
3 3 3 321 22 23 24
3 3 3 331 32 33 34
3 3 3 341 42 43 44
k k k k
k k k k
k k k k
k k k k
⎡ ⎤⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
ElementoStruttura
18
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 35/42
Applicazione dei vincoli esterni (1/2)
Si è giunti a scrivere le equazioni risolutive nella forma:
1) GdL il cui valore è incognito. Ad essi corrispondono carichi nodali assegnati.
2) GdL il cui valore è assegnato (nullo nel caso di vincoli perfetti, non nullo nel caso di cedimenti vincolari imposti). Ad essi corrispondono reazioni vincolari incognite.
È possibile dividere i GdL della struttura in due gruppi:
= ⋅P K V
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 36/42
Applicazione dei vincoli esterni (2/2)
Sostituendo nella (**) si ottengono le reazioni vincolari incognite.
Dalla (*) è possibile ricavare gli spostamenti incogniti:
Immaginiamo di riordinare i GdL e di raccogliere nei vettori e gli spostamenti liberi e i corrispondenti carichi noti (entrambi di Nlib componenti), nei vettori e gli spostamenti imposti e le corrispondenti reazioni vincolari incognite (entrambi di NGdL-Nlib). Il cappuccio indica le quantità note. Il sistema diviene:
(*)
(**)
1V 1P̂
2V̂ 2P
1 1 11 1 12 211 121
21 222 2 2 21 1 22 2
ˆ ˆˆˆ ˆ
⎧⎡ ⎤ ⎡ ⎤ = ⋅ + ⋅⎡ ⎤ ⎪= ⇒ ⎨⎢ ⎥ ⎢ ⎥⎢ ⎥= ⋅ + ⋅⎣ ⎦ ⎪⎣ ⎦ ⎣ ⎦ ⎩
V P K V K VK KPK KP V P K V K V
( ) ( )11 11 1 12 2
ˆ ˆ−= ⋅ − ⋅V K P K V
N.B.: La matrice K11 deve essere non singolare. Ciò accade se la struttura è labile!
19
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 37/42
Soluzione
( ) ( )11 11 1 12 2
ˆ ˆ−= ⋅ − ⋅V K P K V
Si è dunque giunti alla soluzione del problema negli spostamenti:
Nella pratica la matrice di rigidezza non viene invertita esplicitamente.
Il sistema lineare:
11 1 1 12 2ˆ ˆ⋅ = − ⋅K V P K V
viene risolto con algoritmi specifici per sistemi simmetrici come la fattorizzazione di Cholesky o metodi iterativi.
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 38/42
Soluzione dell’esempio (1/2)
( )
1
1
3
1.7071 0.7071 0.7071 0.7071 1.0000 0.00000.7071 0.7071 0.7071 0.7071 0.0000 0.0000
0 0.7071 0.7071 1.4142 0.0000 0.7071 0.7071kNkN 105100 0.7071 0.7071 0.0000 1.4142 0.7071mm0
x
y
y
PP
P
− − −⎡ ⎤⎢ ⎥ − −⎢ ⎥⎢ ⎥ − − −⎛ ⎞=⎢ ⎥ ⎜ ⎟− − − −⎝ ⎠⎢ ⎥⎢ ⎥⎢ ⎥⎢ ⎥⎣ ⎦
2
2
3
00
0.70711.0000 0.0000 0.7071 0.7071 1.7071 0.7071
0.0000 0.0000 0.7071 0.7071 0.7071 0.7071 0
x
y
x
VVV
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥− − −⎢ ⎥ ⎢ ⎥
− −⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦
V2y
V2x
V1y
V1x
V3y
V3x1
1
00
x
y
VV
==
3
3
00
x
y
PV
==
100kN
2
2
010kN
x
y
PP
== −
20
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 39/42
Soluzione dell’esempio (2/2)
1
2 1 21 1 22 2 22
3
0.7071 0.7071 1.0000 0.2381 0 0.00ˆ 105 0.7071 0.7071 0.0000 0.9115 0 50.00 kN
0.7071 0.7071 0.7071 0.4762 0 50.00
x
y
y
PPP
⎡ ⎤ − − −⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥= = ⋅ + ⋅ = − − ⋅ + ⋅ =⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥− −⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦
P K V K V K
( ) ( )1
21
1 2 11 1 12 2 12
3
1.4142 0.0000 0.7071 0 0 0.2381ˆ ˆ 105 0.0000 1.4142 0.7071 100 0 0.9115 mm
0.7071 0.7071 1.7071 0 0 0.4762
x
y
x
VVV
−
−
⎛ − ⎞ ⎛ ⎞⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎜ ⎟ ⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥= = ⋅ − ⋅ = ⋅ − − ⋅ = −⎜ ⎟ ⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎜ ⎟ ⎜ ⎟⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥−⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎝ ⎠ ⎝ ⎠
V K P K V K
50 kN 50 kN
1
1
2
2
3
3
00
0.2381mm
0.91150.4762
0
x
y
x
y
x
y
VVVVVV
⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥
=⎢ ⎥ ⎢ ⎥−⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢ ⎥⎢ ⎥ ⎣ ⎦⎣ ⎦
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 40/42
Calcolo delle variabili secondarie
Dai valori degli spostamenti della struttura è possibile calcolare gli spostamenti nodali di ciascun elemento.
Dalla congruenza interna all’elemento si ricavano le caratteristiche di deformazione.
Dalle equazioni costitutive del singolo elemento si ricavano le caratteristiche di sollecitazione.
21
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 41/42
Variabili secondarie nell’esempio
( )
( )
( )
( )
( )
11
11 11
2
12
01 0 0 0 0 0 0 00 1 0 0 0 0 0.2381 0
mm mm0 0 1 0 0 0 0.9115 0.23810 0 0 1 0 0 0.4762 0.9115
0
x
y
x
y
v
v
v
v
⎡ ⎤⎢ ⎥⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥= ⋅ = =⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥−⎢ ⎥⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥⎢ ⎥ −⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦ ⎢ ⎥⎢ ⎥⎣ ⎦
A V
( )
( )( ) ( )
11 11
12
0cos 45 sin 45 0 0 0 0
= mm0 0 cos 45 sin 45 0.2381 0.4761
0.9115
x
x
v
v
⎡ ⎤⎢ ⎥⎡ ⎤ ° °⎡ ⎤ ⎡ ⎤⎢ ⎥= ⋅ =⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎢ ⎥° ° −⎣ ⎦ ⎣ ⎦⎢ ⎥⎣ ⎦ ⎢ ⎥−⎣ ⎦
Q v
( ) ( ) ( ) ( )1 1 1 1 70.71kNN E A ε= ⋅ = −
( )( )
( )
( ) ( )
( )
1 111 2 1 0
001 1
0.4761mm 0.16832.8284m
x xv vε −Δ −= = = = −
spostamenti globali dell’elemento
spostamenti locali
deformazione assiale
sforzo normale
Consideriamo per esempio l’elemento 1:
Verificabile con un semplicissimo calcolo manuale!
Università degli Studi di FirenzeDipartimento di Ingegneria CivileCorso di Meccanica Computazionale
Claudio BorriLuca Salvatori
(rev. 31/05/2006) Capitolo 2: 42/42
Nel prossimo capitolo
Formulazione analitica degli elementi