{ 3D_PLATE.PDE
This problem considers the oscillation modes of a glass plate in space
( no mountings to constrain motion ).
-- Submitted by John Trenholme, Lawrence Livermore Nat'l Lab.
}
TITLE 'Oscillation of a Glass Plate'
COORDINATES
cartesian3
SELECT
modes = 5
ngrid=10
errlim = 0.01 { 1 percent is good enough }
VARIABLES
U { X displacement }
V { Y displacement }
W { Z displacement }
DEFINITIONS
cm = 0.01 { converts centimeters to meters }
long = 20 * cm { length of plate along Y axis }
wide = 10 * cm { width of plate along X axis }
thick = 1.2 * cm { thickness of plate along Z axis }
E = 50e9 { Youngs modulus in Pascals }
nu = 0.256 { Poisson's ratio }
rho = 2500 { density in kg/m^3 = 1000*[density in g/cc] }
{ constitutive relations - isotropic material }
G = E/((1+nu)*(1-2*nu))
C11 = G*(1-nu) C12 = G*nu C13 = G*nu
C22 = G*(1-nu) C23 = G*nu C33 = G*(1-nu)
C44 = G*(1-2*nu)/2
{ Strains }
ex = dx(U) ey = dy(V) ez = dz(W)
gxy = dy(U) + dx(V) gyz = dz(V) + dy(W) gzx = dx(W) + dz(U)
{ Stresses }
Sx = C11*ex + C12*ey + C13*ez
Sy = C12*ex + C22*ey + C23*ez
Sz = C13*ex + C23*ey + C33*ez
Txy = C44*gxy Tyz = C44*gyz Tzx = C44*gzx
{ find mean Y and Z translation and X rotation }
Vol = Integral(1)
{ scaling factor for displacement plots }
Mt =0.1*globalmax(magnitude(x,y,z))/globalmax(magnitude(U,V,W))
INITIAL VALUES
U = 1.0e-5 V = 1.0e-5 W = 1.0e-5
EQUATIONS
{ we assume sinusoidal oscillation at angular frequency omega =sqrt(lambda) }
U: dx(Sx) + dy(Txy) + dz(Tzx) + lambda*rho*U = 0 { the U-displacement equation }
V: dx(Txy) + dy(Sy) + dz(Tyz) + lambda*rho*V = 0 { the V-displacement equation }
W: dx(Tzx) + dy(Tyz) + dz(Sz) + lambda*rho*W = 0 { the W-displacement equation }
CONSTRAINTS
integral(U)=0 { eliminate translations }
integral(V)=0
integral(W)=0
integral(dx(V)-dy(U)) = 0 { eliminate rotations }
integral(dy(W) - dz(V)) = 0
integral(dz(U) - dx(W)) = 0
EXTRUSION
surface "bottom" z = -thick / 2
layer "plate"
surface "top" z = thick / 2
BOUNDARIES
region 1 { all sides, and top and bottom, are free }
start( -wide/2, -long/2 )
line to ( wide/2, -long/2 )
line to ( wide/2, long/2 )
line to ( -wide/2, long/2 )
line to close
MONITORS
grid(x+Mt*U,y+Mt*V,z+Mt*W) as "Shape"
report sqrt(lambda)/(2*pi) as "Frequency in Hz"
PLOTS
contour( W ) on z = 0 as "Mid-plane Displacement"
report sqrt(lambda)/(2*pi) as "Frequency in Hz"
grid(x+Mt*U,y+Mt*V,z+Mt*W) as "Shape"
report sqrt(lambda)/(2*pi) as "Frequency in Hz"
summary
report lambda
report sqrt(lambda)/(2*pi) as "Frequency in Hz"
END