Addressing the Predominant Stairwell Injection Issues - MATLAB (Edition)
In the realm of stairwell system design, fire protection engineers often grapple with a notable challenge - a substantial pressure drop that falls below the 12.4 Pa threshold. This issue persists despite ensuring all stairwell doors remain securely shut, and unfortunately, it fails to meet the stringent standards set forth by the National Fire Protection Association (NFPA). The process of using Excel or manual calculations can be laborious and necessitates careful attention to detail to prevent errors. To streamline this process, we propose the introduction and utilization of MATLAB, a high-level language and interactive environment that enables us to identify and address the issue more efficiently.
MATLAB's coding capabilities offer a more practical solution due to its rapid integration and response time. For instance, consider a 15-story building where the minimum pressure difference is 10 Pa instead of the required 12.4 Pa. Despite the fans being correctly installed and delivering an airflow rate of 1.94 m^3/s, the pressure difference remains inadequate. With an interior temperature of 68 F and an exterior temperature of 30 F, MATLAB's advanced computational abilities can be leveraged to resolve this discrepancy effectively.
Note: We have implemented a default setting where each component's new leakage is increased by 1% of its initial values. However, you have the flexibility to adjust this setting according to your preferences.
W_building = 75;
L_building = 75;
Stairwell_L = 3;
Stairwell_W = 9;
Floor_height = 4;
N_stories = 15;
Door_W = 0.91;
Door_H = 2.01;
Door_knob = 0.076;
Max_Force_opening = 133;
F_door_closing = 20;
T_out = -10; T_out_K = T_out + 273.15;
T_inside = 20; T_inside_K = T_inside + 273.15;
H = N_stories * Floor_height;
Air_density = 1.2;
C = 0.65;
FT = 3460*((1/T_out_K) - (1/T_inside_K));
% Constants
S_leakage = 3.5e-4;
Door_leakage = 0.0152;
Roof_leakage = 5.2e-5;
ExteriorWall_leakage = 3.5e-4;
% Calculate H based on N_stories and Floor_height
H = N_stories * Floor_height;
% Variables with initial values
ExteriorWall_leakage_init = S_leakage; % Initial value for ExteriorWall_leakage
Door_leakage_init = S_leakage; % Initial value for Door_leakage
Roof_leakage_init = S_leakage; % Initial value for Roof_leakage
% Variables to adjust to achieve DeltaP_min > 12.4
ExteriorWall_leakage_adjusted = ExteriorWall_leakage_init;
Door_leakage_adjusted = Door_leakage_init;
Roof_leakage_adjusted= Roof_leakage_init;
Air_density=1.2;
C=0.65;
counter=0;
DeltaP_min=10;
while DeltaP_min <=12.4 && counter<10000
% Adjust the values of each variable here
ExteriorWall_leakage_adjusted = ExteriorWall_leakage_adjusted * 1.01; % Increase by 1%
Door_leakage_adjusted = Door_leakage_adjusted * 1.01; % Increase by 1%
Roof_leakage_adjusted = Roof_leakage_adjusted * 1.01; % Increase by 1%
% Calculate Asb and Abo based on given formulas with adjusted variables
Asb=((Stairwell_W+Stairwell_L)*S_leakage*H)+N_stories*Door_leakage_adjusted;
Abo=0.5*ExteriorWall_leakage_adjusted*((W_building+L_building-(2*(Stairwell_L+Stairwell_W)))*H+(2*Door_leakage_adjusted));
Aso = S_leakage*(Stairwell_W+Stairwell_L)*H;
Roof_total = 2*Door_leakage_adjusted + (Stairwell_L*Stairwell_W*Roof_leakage_adjusted);
FR=1+((Asb/Abo)^2);
Deltap_SBt=(FT/FR)*H+DeltaP_min;
DeltaP_Sbt_avg=0.5*(Deltap_SBt+DeltaP_min);
DeltaP_So=FR*DeltaP_min;
DeltaP_Sot=FR*Deltap_SBt;
DeltaP_So_Avg=0.5*(DeltaP_So+DeltaP_Sot);
M_Sb=C*Asb*sqrt(2*Air_density*DeltaP_Sbt_avg);
M_SO=C*Aso*sqrt(2*Air_density*DeltaP_So_Avg);
M_roof=C*(Roof_total)*sqrt(2*Air_density*(0.5*(DeltaP_Sot+DeltaP_So)));
M_total=M_roof+M_SO+M_Sb;
Density_outside=Air_density*(T_inside_K/T_out_K);
V_vent_min_req=M_total/Density_outside;
DeltaP_min=DeltaP_min+.1;
counter=counter+1;
end
if(DeltaP_min>12.4)
fprintf('The required condition is met after :%d iterations',counter);
else
fprintf('The required condition could not be met after :%d iterations',counter);
end
% Print out final variable values
fprintf('\nFinal Variable Values:\n');
fprintf('Delta P Min: %.2f\n', DeltaP_min);
fprintf('Mass Flow Rate Sb: %.2f\n', M_Sb);
fprintf('Mass Flow Rate SO: %.2f\n', M_SO);
fprintf('Mass Flow Rate Roof Total: %.2f\n', M_roof);
fprintf('Total Mass Flow Rate: %.2f\n', M_total);
fprintf('New Fan Capacity: %.2f\n', M_total/Density_outside);
Therefore, the new values would be
Mass Flow Rate Sb: 1.88 kg/s
Mass Flow Rate SO: 1.85 kg/s
Mass Flow Rate Roof Total: 0.10 kg/s
Total Mass Flow Rate: 3.82 kg/s
New Fan Capacity: 2.86 m^3/s
Consequently, we must re-engineer the entire mass flow to accommodate the requirements of the new values.