Window

class pypbomb.Window

Methods for the design of viewing windows for optical access.

classmethod minimum_thickness(length, width, safety_factor, pressure, rupture_modulus, unit_registry=<pint.registry.UnitRegistry object>)

Calculates the thickness of a clamped rectangular window which gives the desired safety factor

Parameters:
  • length (pint.Quantity or Tuple[float, str]) – Window unsupported (viewing) length

  • width (pint.Quantity or Tuple[float, str]) – Window unsupported (viewing) width

  • safety_factor (float) – Safety factor

  • pressure (pint.Quantity or Tuple[float, str]) – Design pressure differential across window at which factor of safety is to be calculated

  • rupture_modulus (pint.Quantity or Tuple[float, str]) – Rupture modulus of desired window material

  • unit_registry (pint.UnitRegistry) – Keeps output consistent with parent registry, avoiding conflicts

Returns:

Window thickness

Return type:

pint.Quantity

classmethod safety_factor(length, width, thickness, pressure, rupture_modulus, unit_registry=<pint.registry.UnitRegistry object>)

Calculates the safety factor of a clamped rectangular window given window dimensions, design pressure, and material rupture modulus

Parameters:
  • length (pint.Quantity or Tuple[float, str]) – Window unsupported (viewing) length

  • width (pint.Quantity or Tuple[float, str]) – Window unsupported (viewing) width

  • thickness (pint.Quantity or Tuple[float, str]) – Window thickness

  • pressure (pint.Quantity or Tuple[float, str]) – Design pressure differential across window at which factor of safety is to be calculated

  • rupture_modulus (pint.Quantity or Tuple[float, str]) – Rupture modulus of desired window material

  • unit_registry (pint.UnitRegistry) – Keeps output consistent with parent registry, avoiding conflicts

Returns:

Window factor of safety

Return type:

float