Teoria 5

Da CdM_unimore.

CALCOLO DEL RAGGIO DI FRONTIERA

Considerare l'equazione dei tubi elastoplastici, e scrivere un programma che determini il raggio di frontiera plastica per una pressione di forzamento nota e per raggi interno ed esterno assegnati, sapendo lo snervamento del materiale.

Utilizzando il Fortran 77:

PROGRAM CALCOLO RAGGIO DI FRONTIERA (RHO)

PRINT*,'INSERISCI Rs, Ri, Re, Pfopt, n' (n: numero di iterazioni massime)

READ*, Rs, Ri, Re, Pfopt, n

EPSI = 1.E-4

RHO = (Re + Ri)/2

Si può calcolare la Pf massima nel seguente modo:

Pf = Rs/2[ 2ln (Re/Ri) + 1 - (Re/Re)^2]

Pf = Rs [ ln (Re/Ri)] (Pf di esplosione)

IF (Pfopt .GE. Rs*LOG(Re/Ri)) THEN

PRINT*,'WARNING: BOOM!'

STOP

Si sarebbe potuto effettuare un ulteriore controllo, sulla pressione minima

corrispondente al raggio minimo, imponendo RHO=Ri, nella formula di Pf, ottenendo un valore Pfm.

ENDIF

DO i = 2,n

Pf = (Rs/2)*(2 LOG (RHO/Ri) + 1 - (RHO/Re)**2)

IF(ABS(Pf-Pfopt) .LT. EPSI) THEN

GOTO 22

ENDIF

IF (Pf .LT. Pfopt) THEN

RHO = RHO + (Re + Ri)/2**i

ELSE

RHO = RHO - (Re + Ri) / 2**i

ENDIF

ENDDO

PRINT*,'WARNING: nmax raggiunto'

STOP

22 IF (RHO .LT. Ri) THEN

PRINT*,'il tubo non plasticizza!'

ELSE

PRINT*,'Raggio di frontiera (RHO) = b', RHO

ENDIF

STOP

END

PORTALI SVOLTI CON MAXIMA

PORTALE INCASTRATO

Program in Maxima

Mf1: P/2*x-C;

Mf2: P/2*l/2-C-N*y;

U1: 1/(2*YM*J)*integrate(Mf1**2, x, 0, l/2);

U2: 1/(2*YM*J)*integrate(Mf2**2, y, 0, l);

U: U1 + U2;

EQN1: diff(U, C);

EQN2: diff(U, N);

solve([EQN1, EQN2], [C, N]);

N=P/8

C=Pl/6

PORTALE INCERNIERATO

Program in Maxima

Mf1: N*x;

Mf2: N*l - P/2 * y;

U1: 1/(2*YM*J)*integrate (Mf1**2, x, 0, l);

U2: 1/(2*YM*J)*integrate (Mf2**2, y, 0, l/2);

U: U1 + U2;

EQN: DIFF(U, N);

LINSOLVE (EQN, N)

PORTALE CARRELATO

Così la struttura è labile e per renderla isostatica si può procedere come sotto:

Analizzando la struttura di partenza ci rendiamo conto che non è iperstatica ma isostatica

Quindi ora utilizziamo il Teorema di Castigliano per trovare gli spostamenti che ha la trave.

La struttura svincolata è la seguente:

Program in Maxima:

Mf1: 0;

Mf2: P/2*x;

U: 1/(2*YM*J)*integrate(Mf2**2,x,0,L/2);

f: diff(U,P/2)