Equivalent Thickness Models

Equivalent thickness models are a popular treatment of glass mechanics. The following models are common in practice:

  • monolithic method,

  • non-composite method, and

  • shear transfer coefficient method.

To facilitate these common models MonolithicMethod, NonCompositeMethod, and ShearTransferCoefMethod can be used.

from structuralglass import Q_
import structuralglass.layers as lay
import structuralglass.equiv_thick_models as et

t1nom = Q_(6, "mm")
t2nom = Q_(6, "mm")

# Plys
ply1 = lay.GlassPly.from_nominal_thickness(t1nom)
ply2 = lay.GlassPly.from_nominal_thickness(t2nom)

# Use the monolithic method
package = et.MonolithicMethod([ply1, ply2])
# effective thickness of the package for delfection
package.h_efs[ply1]     # Q_(11.12, "mm")

# Use the non-composite method
package = et.NonCompositeMethod([ply1, ply2])
# effective thickness of the package for delfection
package.h_efs[ply1]     # Q_(7.86, "mm")

These classes are derived from GlassLiteEquiv. Unique formulations of the mechanical behavior can be derived from the abstract class GlassLiteEquiv. When doing so the following abstract methods need to be definded:

The _calc_equiv_thickness() should set the private variables for the packages effective thickness for displacement _h_efw and stress _h_efs.

The _determine_package_E() should set the private variables for the packages elastic modulus _E.

The _validate() should perform an arbitaty validation check on the provided plys. It must return a Tuple(bool, string). The bool is True if the package is valid. If the package is not valid, the bool is False and a string message is returned. The message is used to raise a ValueError.