Teoria 13

Da CdM_unimore.

Problemi strutturali

Problema simmetrico

Consideriamo un telaio, composto da una traversa (orizzontale) e due colonne (verticali); è una struttura nota come portale, ovvero un anello che si chiude sul suolo. Come vediamo dalla Figura 1, il portale è caricato da due forze F; quello che vogliamo è comprendere come si deformi la struttura e, in particolare, la traversa.
Figura 1

Per capirlo, possiamo procedere con due tecniche differenti, entrambe di tipo qualitativo, che ci portano ad avere un'idea abbastanza precisa del comportamento, senza però una quantificazione numerica del fenomeno.

Figura 2 - NOOO!! la simmetria rispetto all'asse orizzontale NON sussiste!!

La prima tecnica consiste nel dividere la struttura in due parti: una parte con la traversa e la parte superiore delle colonne, e l'altra con la parte bassa delle colonne, ancorate al suolo (Figura 2).

Dato che il problema è simmetrico( sono simmetrici sia la geometria, sia i vincoli e anche i carichi ), si osserva che anche le caratteristiche di sollecitazione saranno simmetriche. Le forze verticali equiverse (per simmetria), sono non bilanciate: dovendo essere il problema simmetrico, esse sono necessariamente nulle.

Figura 3

Valutando le caratteristiche di sollecitazione residue, sappiamo, ora, che, per qualunque valore delle forze orizzontali incognite, il momento sulla traversa sarà costante. In poche parole, la traversa deforma ad arco di cerchio, inflettendosi con curvatura costante.

Una seconda tecnica prevede, invece, di guardare solo la traversa: questa è un tratto non caricato (considerandola come "tratto aperto") e, pertanto, il momento sarà, al massimo, lineare. Potrà essere nullo, costante o lineare; in questo caso, con problema simmetrico, sarà certamente costante.


Si nota che, in base a queste semplici considerazioni, il grafico del momento flettente sulla trave non potrà essere come quello disegnato in Figura 3: nel primo caso, infatti, il grafico è errato, perché non può descrivere un problema simmetrico come il nostro; anche il secondo grafico non va bene, in quanto presupporrebbe la presenza di una forza concentrata nel mezzo della traversa, visibilmente assente nella nostra struttura.



Problema antisimmetrico

Consideriamo, questa volta, un portale caricato in modo antisimmetrico (forza + coppia), analizzando prima i caricamenti in modo disgiunto, e poi osservando il comportamento globale (figura 4).


Figura 4


Vediamo prima l'azione della sola coppia (figura 5): si noti che le reazioni orizzontali, sulle colonne, devono essere nulle, perché, altrimenti, l'equilibrio alla traslazione in quella direzione non è soddisfatto.


Figura 5


Le forze verticali, invece, non danno coppia (valutando il momento flettente dell'indeformata). Le colonne, quindi, sono sottoposte ad una coppia costante: la deformata avrà una curvatura costante, con assenza di flessi. La traversa, invece, può (teoricamente) avere fino ad un massimo di tre flessi.


Figura 6


Vediamo, in seguito, l'azione della sola forza (figura 6): la deformata che abbiamo disegnato non rispetta la regola dei flessi per le colonne.


Figura 7


Infatti, ci può essere un unico flesso solo se un tratto non è caricato, dato che il momento flettente è, al massimo, di tipo lineare (due segmenti si incontrano in un punto): è il caso della traversa superiore.



La vera deformata, allora, è quella della figura 7; si noti che il momento flettente, in mezzeria della traversa, si annulla per una particolare condizione di forza e coppia agenti sulla struttura.



Applicazione particolare del Teorema di Castigliano sul portale

Troviamo, utilizzando il teorema di Castigliano, un particolare valore del rapporto tra forza e coppia tale che la regola precedente (dei flessi) non sia più valida.

Consideriamo un portale come quello in figura 8, e valutiamo solo metà struttura, disegnando le caratteristiche di sollecitazione, e dividendola in due tratti (1 e 2). Andiamo a trovare il valore del taglio T, in funzione della coppia C e dello sforzo normale P. Facendo i calcoli, si ottiene: .

Procediamo scrivendo prima l'energia interna U, e poi facciamo la derivata rispetto a T, ponendola successivamente pari a zero. In questo modo, come noto, stiamo applicando il Teorema di Castigliano.

Calcoliamo il momento flettente nei due tratti (1 e 2):

Calcoliamo l'energia interna nei due tratti (1 e 2):

Ovviamente, sommiamo i due contributi per ottenere l'energia interna totale:

Figura 8

Il passaggio successivo è quello di fare la derivata di U rispetto a T, da porre uguale a zero:

In questo modo, abbiamo imposto che il punto di mezzeria della traversa non vada né su né giù, per questioni di simmetria strutturale. Adesso, vogliamo studiare se il momento flettente cambia di segno nell'intorno dell'angolo tra la traversa (orizzontale) e la colonna (verticale): è un raro controesempio alla basilare regola dei flessi.

Valutando il momento flettente, si ottiene:

con

Si vede che, in questo raro caso, il momento flettente cambia segno allo spigolo sopra indicato; solitamente, però, un andamento di questo tipo è difficile da avere, pertanto si consigliano ulteriori controlli, per verificare che non vi siano errori.

Uso del Teorema di Castigliano per Linea Elastica della trave

Vediamo come impiegare il Teorema di Castigliano per calcolare la linea elastica della trave, in modo da poter determinare la freccia in ogni suo punto.

E' un'applicazione piuttosto importante, perché è molto spesso l'introduzione ai problemi di contatto, in cui la pressione è incognita, e si deve indagare il fenomeno, chiedendosi quale sia la pressione che porta ad avere un certo tipo di contatto (e tutto ciò che ne consegue).

Consideriamo la figura 9, valutando la situazione con .
Figura 9

Per avere la freccia in un punto, dobbiamo porre una forza concentrata ad una distanza generica.

Distinguiamo due zone di integrazione, chiamate rispettivamente 1 e 2: la prima va da ad , la seconda va da ad . Analogamente a quanto visto in passato, anche qui si richiede l'uso di un doppio sistema di coordinate, con variabile esterna (mi indica a che punto della struttura cerco il momento flettente) e variabile interna (necessario per calcolare i contributi al momento flettente, derivanti dal braccio di ogni forza).

Scriviamo il momento flettente nei due tratti (1 e 2):

con

con

Calcoliamo ora l'energia interna nei due tratti (1 e 2):

Facciamo la somma dei contributi per ottenere l'energia interna totale: .

Calcoliamo adesso la freccia(abbassamento):

, con perché la forza è fittizia.

Considerando , il risultato sarebbe: .

Questa è anche conosciuta come Funzione di Green, oppure funzione di influenza: come già detto, essa descrive bene la risposta di una struttura ad un carico concentrato.

Si avvicina, in effetti, perfettamente al concetto dei problemi di contatto, in cui le forze di contatto si possono vedere come infinite forze infinitesime adiacenti. Si noti che, secondo la tradizione, si dice che soltanto le forze (e non le coppie) concentrate siano responsabili delle reazioni di contatto.

Esempio reale


Figura 10


In Figura 10, consideriamo due travi imbullonate( entrambe di lunghezza e di altezza )per mezzo di tiranti, impiegati per imprimere le forze necessarie a tenere vicine le due travi. Un carico agisce all'estremita. Le forze sono tra loro autoequilibrate. C'è solo una compressione; per la teoria della trave, comunque, non viene neanche considerata, perché non avviene in direzione assiale.

La questione è quella di stabilire se la struttura si comporti come due travi separate oppure come una singola trave.

Possiamo dire che, se la forza di serraggio dei tiranti e il coefficiente di attrito tra le travi sono sufficiente, il comportamento è da trave singola, a patto che non si cerchi di trasmettere una forza superiore a quella limite.

Se sezioniamo la trave, in un punto più o meno lontano dall'incastro, si osserva la nascita di una tagliante, che non si annulla e, piuttosto, diventa massima al piano di taglio (in Figura 11).

Figura 11

Per avere comportamento da trave unica (con altezza ), la si deve poter trasmettere da una parte all'altra mediante il contatto delle due superfici, affinché ciò si verifichi è necessario che la sia sempre minore o al massimo uguale al prodotto tra il carico agente e il coefficiente di attrito. In numeri, si deve verificare che:

.

Si noti che, considerando la struttura come una sola trave unica, oppure come due travi separate, non è uguale ai fini delle considerazioni che si possono fare sulla freccia (abbassamento ). Essa si calcola con la relazione:

ma la formula di varia nei due casi:

(caso di due corpi distinti)

(caso di un corpo unico)

Figura 12


Questa situazione analizzata si presenta come un caso particolare, per il fatto che la non sia applicata all'asse baricentrico, bensì alla superficie superiore (ad una distanza pari ad ); nasce l'esigenza e la necessità di avere (come si vede in Figura 12) una coppia di trasporto, necessaria alla trasmissione della tensione tagliante: in questo caso specifico, si tratta di una coppia distribuita.

Si consiglia sempre di controllare, attraverso l'uso di modelli semplificati, la validità dei principi impiegati in ciò che stiamo facendo, onde evitare di sviluppare un modello complesso che si riveli errato o non correttamente utilizzabile.

Programma numerico agli elementi finiti piani triangolari con solutore per matrice di rigidezza bandata

Analizzando la matrice di rigidezza piena della struttura, si può facilmente osservare che molti elementi (più di metà) sono nulli: in particolare, un elemento è nullo se non esiste un ponte elastico che colleghi un certo gdl (indice di riga) di un nodo e un altro gdl (indice di colonna) di un altro nodo.

Osservando il caso della Figura 13, si può dire che, ad esempio, non essendoci un ponte elastico che leghi il nodo 1 al nodo 3, allora l'elemento alla riga 2 e colonna 5 è nullo.

Figura 13

Vista questa grande presenza di valori nulli, ci potremmo chiedere se convenga comunque stoccare tutti i termini, oppure se si possa risparmiare memoria (e velocizzare il programma) attraverso lo stoccaggio dei soli termini non nulli. La seconda scelta è quella corretta, dato che la matrice di rigidezza della struttura è simmetrica rispetto alla diagonale principale.

In questo modo, posso evitare di stoccare la gran quantità di termini nulli presenti nei " triangoli" in alto a destra e in basso a sinistra della matrice piena, sapendo che i termini non nulli si raggruppano nella zona attorno alla diagonale principale.

Posso, perciò, memorizzare i termini sopradiagonali (diagonale inclusa), inclusi in una banda di lunghezza tale da comprendere tutti i termini non nulli: ad esempio, procedo stoccando come vettori colonna (in numero MBAND), ognuno di n righe. La diagonale principale della matrice piena diventa la prima colonna di quella bandata, la linea sopradiagonale della matrice iniziale diventa la seconda colonna della matrice bandata, e così continuando fino a comporla completamente.

Nella memorizzazione della matrice bandata, la zona triangolare bassa viene riempita con termini nulli; gli zeri sono i valori fuori dalla matrice (che deve essere necessariamente rettangolare) e, pertanto, rappresentano aree di memoria non utilizzate. E' evidente, già a colpo d'occhio, il grande risparmio che si ottiene, in termini di memoria, con l'impiego di tali matrici bandate (Figura 14).

Figura 14

I "casi peggiori" sono quelli in cui l'elemento non nullo si trovi all'ultima diagonale (es. angolo in alto a destra): in questo caso, lo stoccaggio in forma bandata occupa lo stesso spazio di quello standard, per la necessità di tenere la matrice rettangolare. Uno dei peggiori che è possibile incontrare è quello di strutture circolari, per le quali esiste sempre un ponte elastico tra il primo e l'ultimo nodo (in Figura 15).

Figura 15

Inoltre, è chiaro che sarebbe molto difficile bandare una matrice senza averla prima scritta; è vero, d'altronde, che anche scriverla per intero mi penalizza nella quantità di memoria impiegata.

Esiste una formula per definire la banda necessaria allo stoccaggio, e consiste nel definire la massima distanza del ponte elastico che colleghi 2 gdl di due nodi diversi; dalla Figura 16 si evince, per esempio, che l'elemento 1 fa da ponte tra il gdl 1 e il gdl 8: si richiede che MBAND sia almeno di lunghezza 8.

Figura 16

Discorso simile per l'elemento 2, che fa da ponte tra il gdl 3 e il gdl 10, oppure per l'elemento 3, che fa ancora da ponte tra il gdl 3 e il gdl 10. La larghezza di banda richiesta è pari ad 8, sufficiente per collegare un gdl con il gdl che si trova 7 posizioni più avanti. In termini matematici, la relazione si scrive come:

in cui:

rappresenta il numero di gradi di libertà per nodo (es. 2 nel caso dei tria3 pstress) rappresenta l'indice del nodo più grande

rappresenta l'indice del nodo più piccolo


Assemblaggio matrici di rigidezza degli elementi nella matrice di rigidezza bandata della struttura

Appurato che la matrice di rigidezza bandata della struttura contiene soltanto i termini sopradiagonali (compresa la diagonale), è necessario assemblare soltanto i termini della matrice di rigidezza dell'elemento che cadono nella parte sopradiagonale della matrice di rigidezza bandata di struttura.

In realtà, però, non è vero che i termini sopradiagonali della matrice di rigidezza dell'elemento siano assemblati nella zona sopradiagonale della matrice di rigidezza della struttura. Possiamo fare un esempio:se il primo vertice dell'elemento triangolare tocca il nodo 10, il secondo vertice tocca il nodo 2 ed il terzo vertice il nodo 4, allora il termine sopradiagonale della matrice di rigidezza dell'elemento k va assemblato nel termine sottodiagonale della matrice di rigidezza globale K. Questo perché il vettore IPOINT contiene i numeri 19,20,3,4,7,8 (sempre con la stessa regola già nota) e, quindi, si passa da locale a globale.

Detto questo, perciò, è necessario verificare, per ogni termine di k, se l'assemblaggio dei termini sopradiagonali della matrice di elemento avvenga nella zona sopradiagonale della matrice di struttura: se questo avviene, il termine di k viene assemblato, altrimenti no. Come si evince dalla Figura 13, infatti, la regola per assemblaggio di k in K è un po' diversa da quella usata per matrici quadrate piene. Il termine della matrice piena diventa il termine nella matrice bandata; oppure, il termine della matrice piena diventa nella matrice bandata.

Rispetto all'assemblaggio usato per la matrice quadrata, in questo caso dobbiamo tenere il primo indice invariato, mentre il secondo indice sarà costruito facendo:

[secondo indice - primo indice + 1] (della matrice quadrata).

In forma migliore, possiamo scrivere la formula che ci permette di associare i termini (per simmetria) tra matrice piena e matrice bandata:

con diventa

con diventa

Riportiamo ora la routine di assemblaggio (con F77), precisando che:

IND1 , IND2 sono i due indici della matrice quadrata,

IND1 , IND3 sono i due indici della matrice bandata,

MBAND è la larghezza di banda della matrice bandata,

IPOINT è un vettore di interi, e funziona da puntatore, permettendo il passaggio da una posizione di gdl locale ad una posizione di gdl globale,

STRUTK è la matrice stoccata in forma bandata

I10 scorre sulle righe di ELK e I20 scorre sulle colonne di ELK: così sono presi in considerazione tutti i 6x6=36 elementi della matrice. Iniziamo a scrivere la subroutine:


Assemblaggio per matrice bandata con larghezza di banda MBAND


Facciamo due cicli DO






Mettiamo un controllo, con eventuale avviso, su IND3:





Nota: Non ho problemi con IND3, perché esso opera su elementi sopradiagonali; gli altri elementi sono scartati ( e la parte sottodiagonale è ottenibile per simmetria).





 


Vincolamento della matrice di rigidezza bandata e del termine noto

Vediamo, infine, come si effettua il vincolamento in una matrice sparsa simmetrica, di cui si memorizza soltanto la zona triangolare superiore non nulla. Consideriamo, per esempio, la matrice in Figura 17, confrontando il vincolamento tra una matrice piena ed una matrice bandata (con numero di colonne pari ad MBAND).

Figura 17

Se volessi vincolare l’i-esimo grado di libertà nella matrice K, dovrei porre il termine diagonale K(i,i)=1; poi, posso annullare il resto dell’i-esima riga e dell’i-esima colonna. Infine, dovrei andare a sistemare il vettore dei termini noti, come abbiamo visto dalla teoria sulla matrice piena.

Nel caso della matrice bandata KBAND, dovremo porre l'elemento KBAND(i,1)=1, poiché questo elemento è corrispondente a quello sulla diagonale della matrice piena K. Una volta fatto questo, bisogna procedere annullando gli altri termini della i-esima riga, e i termini della diagonale che parte dall’elemento KBAND(i,1) e va a salire con angolo di 45°, come si vede nell'immagine sopra.

Quando si va a modificare il vettore dei termini noti bisogna considerare tre casi principali:

- se il numero della riga vincolata è compreso tra MBAND e (numero equazioni-MBAND+1), compresi gli estremi, bisogna modificare, nel termine noto, (MBAND-1) termini verso l'alto e verso il basso, a partire dalla riga vincolata [esclusa].

- se il numero della riga vincolata minore di MBAND, occorre modificare, nel termine noto, (numero riga vincolata) termini verso l'alto, a partire dalla riga vincolata [inclusa] ed (MBAND-1) termini, a partire dalla riga vincolata [esclusa].

- se il numero della riga vincolata è maggiore di (numero di equazioni-MBAND+1), bisogna modificare, nel termine noto, (MBAND-1) termini verso l'alto, a partire dalla riga vincolata [esclusa] e ({numero di gdl-numero di riga vincolata}+1) termini verso il basso, a partire dalla riga vincolata [inclusa].

Per maggiori approfondimenti, e per la subroutine di vincolamento (in F77), confrontare pagg. 143-151 de "Progettazione assistita di strutture meccaniche", del prof. Antonio Strozzi.

Riferimenti bibliografici

"Progettazione assistita di strutture meccaniche", dalle lezioni del Prof. Antonio Strozzi.