Incendio — §3.6¶
Funzioni per le azioni da incendio, esplosione e impatto secondo NTC18 §3.6.
Riferimento normativo¶
NTC18 §3.6, Formule [3.6.1]–[3.6.5]
API¶
pyntc.actions.fire
¶
Azioni eccezionali: incendio, esplosioni, urti — NTC18 §3.6.
Curve nominali di incendio (§3.6.1.5.1), carico d'incendio specifico di progetto (§3.6.1.1), pressione equivalente esplosioni (§3.6.2.3), forze statiche equivalenti urti veicoli (§3.6.3.3.1).
explosion_equivalent_pressure(p_v, A_v, V)
¶
Pressione statica equivalente per esplosioni Cat. 2 [kN/m²].
NTC18 §3.6.2.3, Formule [3.6.5a]-[3.6.5b]: p_d = 3 + p_v p_s = 3 + p_v/2 + 0.04 / (A_v/V)² Risultato = max(p_d, p_s)
Valida per compartimenti con V <= 1000 m³ e 0.05 <= A_v/V <= 0.15 m⁻¹ [3.6.6].
Parameters¶
p_v : float Pressione statica di cedimento aperture di sfogo [kN/m²]. A_v : float Area delle aperture di sfogo [m²]. V : float Volume dell'ambiente [m³]. Deve essere <= 1000.
Returns¶
float Pressione statica equivalente di progetto [kN/m²].
Raises¶
ValueError
Se V > 1000 o rapporto A_v/V fuori range [0.05, 0.15].
Source code in src/pyntc/actions/fire.py
fire_design_load(q_f, delta_q1, delta_q2, delta_n)
¶
Carico d'incendio specifico di progetto q_{f,d} [MJ/m²].
NTC18 §3.6.1.1, Formula [3.6.1]: q_{f,d} = q_f * delta_q1 * delta_q2 * delta_n
Parameters¶
q_f : float Valore nominale del carico d'incendio [MJ/m²]. Deve essere >= 0. delta_q1 : float Fattore rischio incendio per superficie compartimento [-]. >= 1.0. delta_q2 : float Fattore rischio incendio per tipo attivita' [-]. >= 0.8. delta_n : float Fattore misure di protezione antincendio [-]. >= 0.2.
Returns¶
float Carico d'incendio specifico di progetto [MJ/m²].
Raises¶
ValueError Se i parametri sono fuori dai limiti normativi.
Source code in src/pyntc/actions/fire.py
fire_external_curve(t)
¶
Curva nominale di incendio esterna [°C].
NTC18 §3.6.1.5.1, Formula [3.6.4]: theta = 660 * (1 - 0.687exp(-0.32t) - 0.313exp(-3.8t)) + 20
Parameters¶
t : float or np.ndarray Tempo di esposizione [min]. Deve essere >= 0.
Returns¶
float or np.ndarray Temperatura dei gas caldi [°C].
Raises¶
ValueError
Se t < 0.
Source code in src/pyntc/actions/fire.py
fire_hydrocarbon_curve(t)
¶
Curva nominale di incendio per idrocarburi [°C].
NTC18 §3.6.1.5.1, Formula [3.6.3]: theta = 1080 * (1 - 0.325exp(-0.167t) - 0.675exp(-2.5t)) + 20
Parameters¶
t : float or np.ndarray Tempo di esposizione [min]. Deve essere >= 0.
Returns¶
float or np.ndarray Temperatura dei gas caldi [°C].
Raises¶
ValueError
Se t < 0.
Source code in src/pyntc/actions/fire.py
fire_standard_curve(t)
¶
Curva nominale standard di incendio ISO 834 [°C].
NTC18 §3.6.1.5.1, Formula [3.6.2]: theta = 20 + 345 * log10(8*t + 1)
Parameters¶
t : float or np.ndarray Tempo di esposizione [min]. Deve essere >= 0.
Returns¶
float or np.ndarray Temperatura dei gas caldi [°C].
Raises¶
ValueError
Se t < 0.
Source code in src/pyntc/actions/fire.py
impact_forklift_force(W)
¶
Forza statica equivalente per urto da carrello elevatore [kN].
NTC18 §3.6.3.3.1, Formula [3.6.9]: F = 5 * W
Parameters¶
W : float Peso complessivo del carrello elevatore e del massimo carico trasportabile [kN]. Deve essere >= 0.
Returns¶
float Forza orizzontale statica equivalente [kN].
Raises¶
ValueError
Se W < 0.
Source code in src/pyntc/actions/fire.py
impact_vehicle_force(road_type)
¶
Forze statiche equivalenti per urti da traffico veicolare [kN].
NTC18 §3.6.3.3.1, Tab. 3.6.III e Formula [3.6.7]: F_{d,y} = 0.5 * F_{d,x}
Parameters¶
road_type : str
Tipo di strada:
- "highway": autostrade, strade extraurbane (1000 kN)
- "rural": strade locali (750 kN)
- "urban": strade urbane (500 kN)
- "parking_car": parcheggi — automobili (50 kN)
- "parking_truck": parcheggi — veicoli > 3.5 t (150 kN)
Returns¶
tuple[float, float]
(F_dx, F_dy) forze in direzione parallela e ortogonale [kN].
Raises¶
ValueError
Se road_type non e' valido.