Indice
Lezione n.3 - Introduzione a wxMaxima e richiami di teoria
a cura di Andrea Gatti e Andrea Deriu
Richiami di teoria
Di seguito viene riportata la struttura presa come esempio:
La struttura è formata da due assi baricentrici che uniscono due corpi rigidi (che quindi non sono tensionati). Questi due corpi sono uno sospeso all'altro (sono collegati) e posso essere assimilati ad un qualunque supporto. In primo luogo si stima la forma della sezione, la quale giacerà su un piano di riferimento ξ - η (da notare che i sistemi di riferimento delle sezioni delle due travi sono orientate in senso opposto), che si deve scegliere per i profilati. Le opzioni prese in considerazione sono una sezione a “C” e una ad “L” (osservare la figura di seguito).
Il criterio utilizzato per la scelta della sezione è quello di ricercare quale sia quella che permette di semplificare di più il problema. Si cerca quella che abbia, ad esempio, gli assi principali d'inerzia, l'eccentricità nulla (quindi il centro di taglio C coincidente col baricentro G), uniformità di materiale. Balza quindi subito all'occhio che la sezione più adatta è quella a “C”. Quello che si vuole ottenere è un'analisi della rigidezza torsionale della struttura. Per farlo, si definisce l'asse della struttura rispetto ai supporti (l'asse di corpo rigido) e si applicano lungo questo asse due coppie torcenti, T, di verso opposto (in figura seguente). I due corpi ruoteranno di due angoli $\theta_1$ e $\theta_2$ e la rotazione relativa i due corpi sarà $\theta_1 + \theta_2$. La rigidezza torsionale della struttura, K_T, risulta quindi
$K_T=\frac{T}{\theta_1 + \theta_2}$
Si ricercano ora i piani di simmetria. Si riporta di seguito la struttura in cui si è definito un sistema di riferimento x, y, z.
Prima di continuare, è necessario fissare la notazioni che si useranno da qui in avanti:
- x, y, z = coordinate;
- u, v, w = spostamenti (rispettivamente lungo x, y, z);
- $\theta$, $\varphi$, $\psi$ = rotazioni (rispettivamente lungo x, y, z);
- U, V, W = componenti delle forze applicate (rispettivamente lungo x, y, z);
- $\Theta$, $\Phi$, $\Psi$ = coppie (rispettivamente lungo x, y, z);
Osservando ora la figura riportata di segutio si nota che la struttura ha 3 piani di simmetria. Il piano x-y è un piano di simmetria se la sezione è simmetrica rispetto a $\xi$. Questo piano, però, risulta scomodo da utilizzare poiché taglia tutte le sezioni a metà e non semplifica la struttura, quindi per questo motivo non è preso in considerazione. Prima di prendere in considerazione gli altri due piani di simmetria, è bene precisare l'importanza del punto di applicazione di una coppia. Se si osserva la figura riportata di seguito,
in cui sono presenti due strutture geometricamente uguali e con due coppie applicate equivalenti ma agenti in in punti diversi, si può facilmente vedere come il punto di applicazione di una coppia altera lo stato deformativo della struttura e quindi il modo in cui essa è sollecitata. Se si prendono le stesse strutture appena descritte ma con le parti evidenziate considerate come corpi rigidi, allora si può assumere che le due strutture abbiano le stesse deformate, essendo equivalenti i carichi applicati. Non si può dire nulla nei confronti della zona caricata. Il punto di applicazione di una coppia è quindi indifferente solo quando si analizza l'equilibrio statico della struttura.
Altro esempio viene riportato nella figura di seguito in cui si considerano due strutture geometricamente uguali con due carichi applicati: uno distribuito e uno concentrato equivalente.
Se si considerano le parti evidenziate in figura come corpi rigidi, le risultanti delle forze all'interno di queste “Black Box” sono staticamente equivalenti. Quindi le parti delle strutture che le precedono, essendo geometricamente uguali, avranno uguali deformazioni e sollecitazioni applicate. Non sempre è possibile fare la sostituzione appena descritta. L'esempio è riportato di seguito che evidenzia come le due strutture, anche avendo i carichi applicati equivalenti, non presentano le stesse deformate e le stesse sollecitazioni poiché la prima, sulla quale è applicato un carico distribuito, non è scarica mentre la seconda, la quale ha un carico concentrato applicato su un carrello, risulta scarica.
Tutto quello appena descritto, può essere applicato alla struttura che si sta analizzando. Sui due corpi rigidi, e quindi indeformabili, è possibile spostare a piacimento il punto di applicazione delle due coppie. Si prendono ora in considerazione gli altri due piani di simmetria:
Come si può notare, la struttura è stata caricata da una parte all'altra del piano di simmetria nei punti A e P (corretto poiché i due corpi dove le coppie sono applicate sono rigidi e quindi per mantenere l'equilibrio della struttura basta che i carichi applicati siano equivalenti). Mettendo in evidenza la zona intorno al punto A (nella figura seguente), si può dire che, siccome la coppia è applicata ad un corpo rigido, ogni sostituzione staticamente equivalente è possibile e indifferente ai fini dell'equilibrio della struttura. Si sostituisce quindi la coppia $\Theta_A$ applicata in A con due coppie staticamente equivalenti di valore $\frac{\Theta_A}{2}$ disposte nei punti A' e A“ lungo la direzione y e distanti rispettivamente un valore pari a $\epsilon$ rispetto ad A (da notare che per $\epsilon$ che tende a zero i carichi sono equivalenti).
Si vuole far notare che se i due componenti della struttura dove sono applicate le coppie fossero stati deformabili, la sostituzione non sarebbe stata possibile poiché le deformate non sarebbero state equivalenti. Quando la struttura non è isostatica, l'uguaglianza è rispettata solo nelle zone lontane alle sostituzioni effettuate (e non in quelle vicine, come evidenziato nella figura seguente).
Le stesse considerazioni posso farle per l'altra coppia applicata al sistema (quella applicata al punto P). Da tutte queste considerazioni, si nota che il piano x-z è un piano di anti-simmetria per i carichi della struttura.
Anche il piano y-z, in questo caso, risulta essere un piano di antisimmetria per i carichi.
Poiché ha la stessa natura del piano x-z, anche il piano x-y risulta essere di anti-simmetria. Avere tre piani di anti-simmetria è una caratteristica degli spettri di carico di sola torsione.
A questo punto si considera la coppia di piani x-z e y-z e ci si limita a studiare il “quarto” di piano in cui si hanno x > 0 e y > 0.
Il punto D rappresenta la mezzeria della trave in cui si interseca l'asse con il piano rigido. Seguendo le sostituzioni fatte in precedenza, si pone la coppia di valore $\frac{\Theta_A}{2}$ nel punto A' (poiché si ha mezza struttura si applica metà coppia). Il senso di questa sostituzione può essere descritto analizzando i seguente esempio:
Le due metà della struttura concorrono ugualmente a supportare la sollecitazione ed è quindi possibile vedere la struttura con due carichi applicati equivalenti (sotto l'ipotesi che le molle abbiano la stessa rigidezza).
Tornando alla figura in cui è rappresentata la parte in cui x > 0 e y > 0, si nota che quella struttura non è equilibrata dato che mancano gli elementi che facciano interfacciare il “quarto” di struttura preso in esame con i restanti $\frac{3}{4}$ di struttura.
Se si considera lo spostamento, in alto rispetto al piano di rappresentazione di seguito, lungo l'asse x della trave (rappresentato di seguito)
poiché il piano è anti-simmetrico, l'immagine si muove in senso opposto. Quindi, poiché la struttura in seguito allo spostamento tenderebbe a dividersi, l'unica condizione per garantire la continuità del materiale è quella di imporre che $U_{//1}\,=\,0$. Per questo motivo, lo spostamento dei punti D e B in direzione z e y sono spostamenti entropiani su piano di anti-simmetria e quindi Vietati.
Parlando ora di rotazioni e osservando la figura riportata di seguito, si nota che la trave ruota di un angolo $\Theta_{\bot}$ e che la rotazione sul piano antisimmetrico sarà opposta quindi, per i motivi prima citati, si dovrà avere $\Theta_{\bot}\,=\,0$.
Nelle apposite tabelle che descrivono i carichi e gli spostamenti simmetrici e anti-simmetrici (generalizzati), si può notare che le relazioni vietate sono contrassegnate dal simbolo “*”.
Per poter soddisfare le condizioni prima espresse e per bloccare quindi un grado di libertà, si impongono le reazioni vincolari sulla struttura:
- $U_A$: è la reazione vincolare in reazioni al divieto di moto nel punto A in direzione x;
- $W_A$: è la reazione vincolare in reazioni al divieto di moto nel punto A in direzione y;
- $\Phi_A$: è la reazione vincolare in reazioni al divieto di rotazione nel punto A in direzione y;
- $V_D$: è la reazione vincolare in reazioni al divieto di moto nel punto D in direzione y;
- $W_D$: è la reazione vincolare in reazioni al divieto di moto nel punto D in direzione z;
- $\Theta_D$: è la reazione vincolare in reazioni al divieto di rotazione nel punto D in direzione x;
Bisogna precisare che sulla sezione dove giace il punto D, conviene che si facciano passare le reazioni $V_D$ e $W_D$ per il centro di taglio C per far si che si possa considerare il momento $\Theta_D$ come un momento torcente $M_t$ per la trave (ovvero per fare in modo che le tante tensioni τ di torsione a cui è sottoposta la sezione siano riassumibili col valore $M_t$) e le reazioni vincolari come delle sollecitazioni di taglio T. Si capisce bene, quindi, l'importanza di scegliere bene il centro di taglio.
Conviene creare un sistema equivalente in cui le reazioni siano applicate sul centro di taglio. Si avrebbero quindi, osservando la figura qui sopra:
- $S_{\eta} = W_D $
- $S_{\xi} = V_D$
- $M_t = \Theta_D - eW_D + fV_D$
In particolare, come si nota dall'ultima relazione, per poter considerare i momenti di trasporto dovuti allo spostamento delle forze sul centro di taglio si sono dovuti aggiungere i termini “$- eW_D$” e “$+ fV_D$”. Senza dover considerare dei momenti di trasporto è quindi molto più comodo far passare tutto (tranne lo sforzo normale N che per essere considerato tale deve passare per l'asse baricentrico della sezione della trave) direttamente dal centro di taglio così che si possa direttamente parlare di momento flettente, momento torcente, sforzo di taglio. Si arriva quindi ad avere:
- $S_{\eta} = W_D $
- $S_{\xi} = V_D$
- $M_t = \Theta_D$
In conclusione si arriva allo schema riportato di seguito,
dove la sollecitazione nota è $\frac{\Theta_A}{2}$ e dove sono presenti 6 equazioni di equilibrio in 6 incognite. La risoluzione di questo si ottiene dall'utilizzo del software “wxMaxima”.
Introduzione a wxMaxima, esempio di calcolo
Maxima è un Computer Algebra System capace di eseguire calcoli numerici, simbolici, grafici e altre operazioni correlate. Il programma è in grado di risolvere complicati calcoli numerici, tuttavia esso risolve solo quello che gli si chiede di risolvere. Se ci dovessero essere degli errori è molto probabile che ci siano degli errori nella digitazione da parte dell’utente, di conseguenza si deve fare molta attenzione nella fase di impostazione nel problema e nella sua digitazione. Per il funzionamento del programma bisogna seguire delle istruzioni di base.
- Se si deve far partire l’istruzione da noi digitata, alla fine di ogni comando si deve inserire “ ; “ o “ $ “ e poi premere “ shift + invio “. Il comando darà poi la risposta
- Se si vuole inserire una cella di testo, per descrivere magari il procedimento a parole, si deve andare su “cell” e cliccare su “ insert text cell”
- Se si vuole avere invece una cella dove digitare il comando, si deve andare sempre su “cell” e cliccare su “insert input cell”
- È importante prima di iniziare la stesura del codice di pulire la memoria attraverso il comando “kill(all);”
Le righe che vengono digitate sono dette espressioni, ogni espressione viene valutata dal programma attraverso delle tabelle presenti nella sua memoria. Esempi: Digitare: “sin ( % pi / 4 )” —– il programma risponderà: 1/√2 . In questo caso il programma ha valutato il comando, lo ha confrontato con le tabelle in memoria e ha fornito la risposta più vicina alla soluzione. La “sin” è la funzione del seno. L’argomento della funzione va sempre dentro la perentesi. Non ci sono vincoli sulla disposizione degli spazi, fatte eccezione per “%pi” che deve essere attaccato altrimenti il programma da errore.
• Digitare: “sin (division ( %pi / 12 ))” —– Il programma ha valutato il comando e controllato le sue tabelle; non avendo riscontrato nessuna corrispondenza ha riscritto l’argomento.
• Digitare: “sin(division ( %pi / somma( 10 + 2 )))” —– il programma risponde con l’argomento.
Soluzione dell’esercizio tramite vxMaxima.
Una volta individuate le equazioni di equilibrio della struttura si può sfruttare il programma per la risoluzione finale; si ricorda che il programma risolve solamente ciò che gli si scrive. Si procede cominciando ad inserire le equazioni di equilibrio del “quarto” di supporto:
• Eqtz : WA + WD = 0 Notare: con il simbolo “:” viene assegnato a “Eqtz” il valore di “WA+WD=0”, in questo modo scrivendo sull’interfaccia “ Eqtz ;” il programma risponderà con “WA+WD=0”. Nell’ipotesi che non si inserisca “= 0” nell’equazione il programma lo aggiungerà automaticamente;
• Eqtx : VA=0 ;
• Eqty : VD=0 ;
Una volta inserite le equazioni di equilibrio, è consigliabile inserire una cella di testo per spiegare il procedimento delle successive equazioni di rotazione:
- Eqrox : Theta×A/2 +ThetaD + VD×0 + UA×0 + WA ×0 + WD×(b+e) =0 ;
Notare: si consiglia di moltiplicare anche le forze con braccio 0 per avere un’equazione più completa ed essere sicuri di non aver fatto errori nella digitazione.
- Eqroy : -WA×a + Phia =0 ;
- Eqroz : 0=0 ;
Una volta scritte le equazioni sull’interfaccia, bisogna definire il sistema di equazioni utilizzando due funzioni: “eqns” e “unks”.
- “eqns: [ Eqtx, Eqty, Eqtz, Eqrox, Eqroy, Eqroz, ]” ;
In questo modo si è definita una lista di equazioni; ogni elemento della lista deve essere separato da virgole.
- “unks: [ VA, WA, Phia, VD, WD, ThetaD ]” ;
In questo modo viene definita una lista di incognite.
Dopo che sono state inserite le liste di equazioni e di incognite, si deve usare la funzione “linsolve” che usa come argomenti le due liste.
- “linsolve ( eqns, unks ) “;
Notare: il primo argomento è la lista di equazioni, il secondo quella delle incognite.
Poiché una delle 6 equazioni è una identità “0 = 0”, il programma provvede ad eliminarla e così definito il sistema presenta ∞^1 soluzioni: si hanno 5 equazioni in 6 incognite e quindi non si può risolvere il sistema. Il programma si inventa un parametro a caso ponendolo nullo, “UA = 0”, e variandolo ricava tutti i valori delle altre incognite. Da questo parametro si capisce che il sistema è iperstatico e non isostatico. Per provvedere a questo problema, è necessario definire manualmente una grandezza parametrica. Si scelga come parametro “ThetaD” e lo si tolga dalla lista di incognite. Prima di attuare i cambiamenti appena descritti, si inserisca un commento specificando che il sistema è a rango non pieno e che quindi si decide di trattare “ThetaD” come parametro ridefinendo la lista delle incognite. Riscrivendo si ottiene:
- “unks: [ UA, WA, Phia, VD, WD ]” ;
Adesso si ha un sistema di 6 equazioni, di cui 5 indipendenti ed un parametro; si riscriva quindi:
- “linsolve ( eqns, unks )” ;
Si ottiene così una lista di identità con i valori che portano alla soluzione del problema; pertanto non si ottiene una soluzione numerica ma un’equazione algebrica che con i parametri a disposizione permetta di arrivare alla soluzione finale. Il valore di UA che risolve l’equazione lo voglio fare apparire, allora posso scrivere:
- “Ev ( UA ) ;”. In questo modo viene valutato il valore di UA; infatti il comando “ev” permette di valutare un’espressione in corrispondenza di valori assegnati delle variabili. Oppure si può scrivere:
- “ev ( UA, UA=0);”. UA viene valutato nell’ipotesi che sia uguale a zero.
- “ev ( UA, %o11);”. UA in questo caso viene valutto secondo le liste ipotizzate precedentemente
Se invece si dà un nome alla funzione “linsolve” si ottiene:
In questo caso dato il nome alla funzione “linsolve”, con la funzione “ev” è possibile valutare il valore di WA. Il programma risponde WA valutata nell’ipotesi di sols.
Sezione a cura del docente
pw.mac, pw.html.pdf: estensione maxima per l'utilizzo di funzioni definite a tratti. Da utilizzarsi includendo nel listato il comando
load (”~/Downloads/pw.mac“);
che carica la libreria dalla cartella in cui è stata scaricata.
Ad uso del docente:camera.py.txt camera.exe.txt
area stoccaggio file condivisa
Discussione
Note ricevute dal revisore 1.
INIZIO MODULO DI REVISIONE
Sono presenti errori di battitura, ortografia, frasi malformulate o di difficile lettura (es. eccessivamente lunghe)? Indicare puntualmente le correzioni richieste.
Le frasi sono formulate in maniera corretta e i periodi sono fluidi, rendendo il testo scorrevole e di facile comprensione logica
Il testo proposto è coerente con gli appunti personali del revisore? Manca qualche passaggio? Qualche passaggio è presentato in forma errata?
Tutti i passaggi affrontati nella lezione sono stati riportati in maniera esaustiva e corretta, costituendo una forma più completa degli appunti presi in aula Indicare se l'aggiunta di una o più figure agevolerebbe la fruibilità del testo.
Sono già state riportate tutte le figure del caso, nonché tutti gli screenshot necessari per capire il funzionamento corretto del programma Maxima
Riuscirebbe uno studente che non ha seguito la lezione a preparare gli argomenti trattati sulla base di questi appunti? Nel caso di lezioni in laboratorio: sono presenti indicazioni sufficienti per replicare passo passo l'esercitazione? Quali modifiche renderebbero gli appunti più fruibili?
Uno studente che non fosse stato presente a lezione sarebbe perfettamente in grado di replicare ogni singolo passaggio svolto, grazia sia alla completa trascrizione dei passaggi e sia ai commenti esplicativi degli stessi. Difficilmente questi appunti potrebbero essere più fruibili di così
Segnalare se si ritiene necessario un intervento diretto del docente, ad esempio nel chiarire un qualche passaggio della trattazione.
Per quanto scritto, tutto pare chiaro e non necessita interventi del docente
Varie ed eventuali.
Nel finale della lezione riportata è stata presentato uno screenshot in cui appare un linsolve che NON restituisce le sols ricercate. Sarebbe utile spiegarlo dato che potrebbe generare l'idea che il comando linsolve lascia sempre delle parentesi quadre vuote e basta
Ore dedicate a questa revisione
1ora e 45 minuti
FINE MODULO DI REVISIONE