/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ /* [ Created with wxMaxima version 0.8.7 ] */ /* [wxMaxima: comment start ] pulisco la memoria [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ kill(all); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ assume( a>0, b>0, l>0 ); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] definisco grandezze ausiliarie [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ ipo : [ l = sqrt(a^2 + b^2) ]; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ l_OA : a $ l_OB : b $ l_AB : l $ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] ipotesi di riferimento utili a definire casi specifici [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ sezione : [ A=%pi*d^2/4 , J=%pi*d^4/64 , eta=111/100 ]; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ sezionecava : [ A=%pi*(d^2 - (d*3/4)^2 )/4 , J=%pi*(d^4 - (d*3/4)^4 )/64 , eta=111/100 ]; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ isotropo : [ G = E/2/(1+nu) ]; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ dim_controllo_FEM:[ a=100, b=50, d=20, nu=0.3, E=1000, P=1000 ]; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] funzioni di forma per interpolare i valori estremali linermente sui tratti [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ N1 : 1-xi $ N2 : xi $ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] xi : s/l e* una ascissa curvilinea adimensionalizzata nel caso di integrazione lungo i tratti, ds = l * dxi [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] inserisco caratteristiche di sollecitazione tratto per tratto in funzione di P, CO, CA, CB [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] |-- P --|---- CB ----|---- CA ----|---- CO ----| [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ N_OB : 0 +P*b/a +0 +CA/a -CO/a$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ N_OA : 0 +P +CB/b +0 -CO/b$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ N_AB : 0 -P*l/a -CB*a/b/l -CA*b/a/l +CO*l/a/b$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ Mf_OB : 0 +0 +0*N1 +CB*N2 +0 +CO*N1+0*N2$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ Mf_OA : 0 +0 +0 +0*N1+CA*N2 +CO*N1+0*N2$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ Mf_AB : 0 +0 +0*N1 +CB*N2 +CA*N1+0*N2 +0$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ T_OB : 0 +0 +CB/b +0 -CO/b$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ T_OA : 0 +0 +0 -CA/a +CO/a$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ T_AB : 0 +0 -CB/l +CA/l +0$ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] calcolo energia potenziale elastica sulla struttura [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ U : integrate( ( Mf_OB^2/2/E/J + N_OB^2/2/E/A + eta*T_OB^2/2/G/A ) *l_OB ,xi,0,1 ) + integrate( ( Mf_OA^2/2/E/J + N_OA^2/2/E/A + eta*T_OA^2/2/G/A ) *l_OA ,xi,0,1 ) + integrate( ( Mf_AB^2/2/E/J + N_AB^2/2/E/A + eta*T_AB^2/2/G/A ) *l_AB ,xi,0,1 ) $ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ U : expand(U); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] calcolo delle reazioni vincolari incognite CB, CO, CA utilizzo il teorema di Castigliano per cui diff(U,CB) = angolo di apertura della cerniera in B = 0 [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ caso_ipe : linsolve( [ diff(U,CB)=0, diff(U,CO)=0, diff(U,CA)=0 ] ,[CB,CO,CA] )$ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] sopra ho definito i valori di CB, CO e CA propri della struttura iperstatica con vincoli di incastro interno tra i membri [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] definisco un analogo caso isostatico con vincoli di cerniera interna sui membri mediante le ipotesi [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ caso_iso : [ CB=0, CO=0, CA=0]; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] sotto queste ipotesi ricavo le due energie potenziali elastiche [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ U_iso : ev(U, caso_iso); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ U_ipe : ev(U, caso_ipe)$ /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] ricavo i cedimenti delle strutture sotto carico P [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ delta_iso : diff(U_iso,P); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ delta_ipe : diff(U_ipe,P); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] confronto con risultati ricavati da modello FEM [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ ev( [ delta_iso , delta_ipe ], dim_controllo_FEM, ipo, sezione, isotropo, infeval ); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ % , numer; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] compariamo la rigidezza della maglia iperstatica rispetto alla sua modellazione a cerniere delta_iso ratio : --------- delta_ipe rapporto tra le rigidezze [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ ratio : delta_iso/delta_ipe; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ myratio : ev(ratio, b=a*1, ipo, sezione, isotropo, nu=3/10, d=alpha*a, infeval )$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ myratio : fullratsimp(myratio)$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ ev(myratio, alpha=1/10, numer); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ myratiocavo : ev(ratio, b=a*1, ipo, sezionecava, isotropo, nu=3/10, d=alpha*a, infeval )$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ myratiocavo : fullratsimp(myratiocavo)$ /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ ev(myratiocavo, alpha=1/10, numer); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] creo un grafico con variabile indipendente alpha e variabile dipendente ratio [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] plotto l'andamento di myratio in myratio ho imposto a=b e altre cose per rendere il risultato funzione solo di alpha=d/a [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ wxplot2d( [myratio,myratiocavo], [alpha,0,1], [legend, "pieno", "cavo di=3/4de"] ); /* [wxMaxima: input end ] */ /* Maxima can't load/batch files which end with a comment! */ "Created with wxMaxima"$