# Computer programs for shell instability

## Computer programs for shell instability

Appendix III Computer programs for shell instability MISESNP.EXE This computer program calculates the elastic buckling pressure for a perfect circula...

Appendix III Computer programs for shell instability

MISESNP.EXE This computer program calculates the elastic buckling pressure for a perfect circular cylinder subjected to uniform external pressure and simply supported at its ends. The buckling pressures are based on the DTMB formula and the von Mises formula. The program also calculates the Windenburg thinness ratio. The program is interactive, and the data for it should be fed in as follows: L = unsupported length of cylinder A = mean shell radius H = wall thickness of shell E = Young’s modulus of elasticity NU = Poisson’s ratio SIGMAYP = yield stress

NIORDSON.EXE This program calculates the shell instability buckling pressure for a perfect circular conical shell by an approximate method. E = Young’s modulus of elasticity NU = Poisson’s ratio T = wall thickness R1 = mean shell radius at ‘left’ end of cone R2 = mean shell radius at ‘right’ end of cone Lf = unsupported length of conical shell between adjacent ring stiffeners. A listing for MISESNP.BAS is given below: 100 REM VON MISES FORMULA, DTMB FORMULA & THINNESS RATIO 110 REM PROGRAM BY DR C.T.F.ROSS 120 CLS 130 PRINT : PRINT “VON MISES FORMULA, DTMB FORMULA & THINNESS RATIO” 140 PRINT “PROGRAM BY DR.C.T.F.ROSS” 444 © Carl T. F. Ross, 2011

Appendix III

445

150 INPUT “TYPE IN UNSUPPORTED LENGTH OF CYLINDRICAL SHELL ”; L 160 INPUT “TYPE IN MEAN SHELL RADIUS ”; A 170 D = 2 * A 180 INPUT “TYPE IN SHELL THICKNESS ”; H 190 INPUT “TYPE IN YOUNG’S MODULUS OF ELASTICITY ”; E 200 INPUT “TYPE IN POISSON’S RATIO ”; NU 210 INPUT “TYPE IN YIELD STRESS ”; SIGMAYP 215 GOSUB 500 220 C1 = (L / D) ^ 2 230 C2 = (H / D) ^ 3 240 C3 = SIGMAYP / E 250 LAMBDA = SQR(SQR(C1 / C2)) * SQR(C3) 260 PRINT “LAMBDA=”; LAMBDA 270 C1 = (H / D) ^ 2.5 280 C2 = SQR(H / D) 290 C3 = L / D 300 P = 2.6 * E * C1 / (C3 - .45 * C2) 310 PRINT “BUCKLING PRESSURE(DTMB)=”; P 320 P = 1E+20: PI = 3.1415926536# 330 FOR N = 1 TO 200 340 N2 = N * N 350 C1 = PI * A / L 360 NU2 = (1 - NU ^ 2) 370 C2 = (N2 - 1 + C1 ^ 2) ^ 2 380 C2 = H ^ 2 * C2 / (12 * A ^ 2 * NU2) 390 C3 = (N2 * (1 / C1) ^ 2 + 1) ^ 2 400 C4 = N2 - 1 + .5 * C1 ^ 2 410 PCR = E * H / (A * C4) * (1 / C3 + C2) 420 IF P < PCR THEN PRINT “BUCKLING PRESSURE(VON MISES)=”; P; “ LOBES=”; N - 1: GOTO 436 430 P = PCR 435 NEXT N 436 PRINT “Do you want to analyse another vessel ? Type Y or N” 437 INPUT A\$: IF A\$ = “y” THEN A\$ = “Y” IF A\$ = “n” THEN A\$ = “N” IF A\$ = “Y” THEN GOTO 120 ELSE IF A\$ = “N” THEN GOTO 440 GOTO 436 440 END

© Carl T. F. Ross, 2011

446

Pressure vessels

500 PRINT “VON MISES FORMULA, DTMB FORMULA & THINNESS RATIO” 510 PRINT “UNSUPPORTED LENGTH OF SHELL=”; L 520 PRINT “MEAN SHELL RADIUS=”; A 530 PRINT “WALL THICKNESS OF CYLINDER=”; H 540 PRINT “YOUNG’S MODULUS=”; E 550 PRINT “POISSON’S RATIO=”; NU 560 PRINT “YIELD STRESS=”; SIGMAYP 570 RETURN A listing for NIORDSON.BAS is given below: 90 CLS : PRINT “Program for calculating the buckling of thin-walled cones”; PRINT “ under uniform external pressure by DR. C.T.F. Ross” INPUT “young’s modulus=”; e INPUT “poissons’ ratio=”; nu INPUT “wall thickness=”; h INPUT “mean radius at left end=”; ra INPUT “mean radius at right end=”; rb INPUT “unsupported length between frames=”; lf alpha = ATN((rb - ra) / lf) am = (ra + rb) / 2 l = lf / (COS(alpha)) ks2 = (COS(alpha)) ^ 2 ks3 = (COS(alpha)) ^ 3 pcr = 1E+30 pi = 3.1415926536# FOR n = 2 TO 20 con = n ^ 2 + .5 * (pi * am / l) ^ 2 - 1 con = e * h * ks3 / (am * con) con1 = 1 / (n ^ 2 * (l / (pi * am)) ^ 2 + 1) ^ 2 con2 = (h ^ 2 / (12 * am ^ 2 * (1 - nu ^ 2) * ks2) * (n ^ 2 + (pi * am / l) ^ 2 - 1) ^ 2) pmc = con * (con1 + con2) IF pcr > pmc THEN pcr = pmc ELSE GOTO 100 NEXT n 100 PRINT “Niordson buckling pressure=”; pcr; “(”; n - 1; “)” dm = 2 * am ks = COS(alpha) ks15 = ks3 / ks2

© Carl T. F. Ross, 2011

Appendix III

447

ks5 = 1 / SQR(ks) pcr = 2.6 * e * (h / dm) ^ 2.5 * ks15 pcr = pcr / ((l / dm) - .45 * (h / dm) ^ .5 * ks5) PRINT “DTMB buckling pressure=”; pcr 200 INPUT “Do you require to do another calculation ? Type Y or N ”; A\$ IF A\$ = “y” THEN A\$ = “Y” ELSE IF A\$ = “n” THEN A\$ = “N” IF A\$ = “Y” THEN GOTO 90 ELSE IF A\$ = “N” THEN GOTO 210 GOTO 200 210 END

© Carl T. F. Ross, 2011