# Pallazzetto Dello Sport in Rome, by Pier Luigi Nervi # Example taken from 'The art of structural engineering : Vaults' course, # by María Garlock #Data. Units: ft,psf radius = 159 # spherical radius [ft] angle = 38 #angle from the top of the dome to the bottom of the dome # measured along the meridian [degrees] thikness = 5 # shell thickness [in] thikness_ft = 5 * 0.083333333 # shell thickness [ft] q = 120 # uniform vertical load (self weight+insulation+roofing+cupola) [psf] # pallazeto = vault.SphericalDome(sphRadius=radius, alpha=math.radians(angle)) #Meridonial forces per unit length Nphi16 = pallazeto.getMeridonialLinearForce(qVsurf=q, Phi=math.radians(16)) Nphi27 = pallazeto.getMeridonialLinearForce(qVsurf=q, Phi=math.radians(27)) #Hoop forces per unit length Nhoop16 = pallazeto.getHoopLinearForce(qVsurf=q, Phi=math.radians(16)) Nhoop27 = pallazeto.getHoopLinearForce(qVsurf=q, Phi=math.radians(27)) #Meridonial stresses sgphi16 = Nphi16 / thikness_ft sgphi27 = Nphi27 / thikness_ft #Hoop stresses sghoop16 = Nhoop16 / thikness_ft sghoop27 = Nhoop27 / thikness_ft Nphi16_comp = -9728.43 Nphi27_comp = -10089.86
import math from rough_calculations import vaults_rough_calc as vault # Astrodome Sports Complex, Houston TX # Example 1 from 'The art of structural engineering : Vaults' course, # by María Garlock #Data. Units: ft,psf radius = 600 # spherical radius [ft] angle = 32.3 #angle from the top of the dome to the bottom of the dome # measured along the meridian [degrees] q_dead = 30 # uniform vertical dead load [psf] q_live = 15 # uniform vertical live load [psf] # astrodome = vault.SphericalDome(sphRadius=radius, alpha=math.radians(angle)) span = astrodome.getSpan() height = astrodome.getRise() area = astrodome.getSurfArea() q_total = q_dead + q_live Vreaction = astrodome.getVerticalSupportReaction(q_total) Nreaction = astrodome.getMeridionalSupportReaction(q_total) Hreaction = astrodome.getHorizSupportReaction(q_total) Tring = astrodome.getTensionForceRing(q_total) import os from misc_utils import log_messages as lmsg fname = os.path.basename(__file__) if max(abs(span - 641), abs(height - 93), abs(area - 350009), abs(Vreaction - 7819), abs(Hreaction - 12368),