Class FireEscapeAnalyzer

java.lang.Object
org.episteme.social.architecture.FireEscapeAnalyzer

public final class FireEscapeAnalyzer extends Object
Analytical engine for fire safety and evacuation planning in architectural designs. It simulates evacuation scenarios using hydraulic flow models to estimate evacuation times, identify bottlenecks, and verify compliance with safety codes.
Since:
1.0
Version:
2.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Method Details

    • analyzeEvacuation

      Calculates the total evacuation time for a set of compartments and exits.
      Parameters:
      compartments - list of rooms/areas
      exits - list of available exits
      Returns:
      an EvacuationResult containing time estimates and bottleneck identification
    • requiredExitWidth

      public static Real requiredExitWidth(int occupancy, double targetEvacTime)
      Calculates the required combined exit width based on occupant load and a target evacuation time.
      Parameters:
      occupancy - total count of people to evacuate
      targetEvacTime - target time in minutes
      Returns:
      required total width in meters
    • checkTravelDistances

      public static Map<String,Boolean> checkTravelDistances(List<FireEscapeAnalyzer.Compartment> compartments, double maxDistance, double maxDeadEnd)
      Verifies that travel distances from any point to the nearest exit stay within code-mandated limits.
      Parameters:
      compartments - list of areas to check
      maxDistance - global maximum travel distance
      maxDeadEnd - maximum distance for areas served by only one exit
      Returns:
      map of compartment IDs to compliance status
    • minimumExitsRequired

      public static int minimumExitsRequired(int occupancy)
      Determines the minimum number of exits required by standard building codes based on occupant load.
      Parameters:
      occupancy - total number of people
      Returns:
      required exit count (1 to 4+)
    • requiredStairWidth

      public static Real requiredStairWidth(int occupantLoad, int numFloors)
      Calculates the required width for a stairwell serving multiple floors.
      Parameters:
      occupantLoad - load per floor
      numFloors - number of floors served
      Returns:
      minimum required width in meters
    • signageRequirements

      public static List<String> signageRequirements(List<FireEscapeAnalyzer.Compartment> compartments, List<FireEscapeAnalyzer.Exit> exits)
      Identifies necessary safety signage and lighting for evacuation routes.
      Parameters:
      compartments - areas served
      exits - exit points
      Returns:
      list of localized signage requirements