tab “Connections”¶
This tab is mandatory.
A connection is connecting two volumes between them. Its geometry and behaviour will define how the mass of air in those volumes will be exchanged between them.
Basically, a connection always connect two volumes (aka vol I and vol J) and is therefore located at an interface.
When defining a connection, take care to always set volume I ID to the lowest ID of both volumes.
Example: let say you have two volumes to connect, ID2 and ID7, Volume I will always be volume ID2 and Volume J will always be volume ID7.
See also
Tutorial #2 is dedicated to decompression features whereas Tutorial #3 is dedicated to doors
Parameters¶
description | default | units | |
---|---|---|---|
id | Connection ID | mandatory | no units |
vol_i | ID of volume I | mandatory | no units |
vol_j | ID of volume J | mandatory | no units |
comments | Free text | no units | |
door | Door Frame Area | 0 | [m^2 | in^2] |
opening_latency | Feature opening latency time | 0 | [sec] |
vent_area_i_to_j | Decompression raw area | 0 | [m^2 | in^2] |
opening_pressure_i_to_j | Pressure Threshold | 0 | [bar | psi] |
opening_time_i_to_j | Feature Opening Time | 0 | [sec] |
cp_i_to_j | Discharge Coefficient | 0 | no units |
vent_area_j_to_i | Decompression raw area | blank | [m^2 | in^2] |
opening_pressure_j_to_i | Pressure Threshold | blank | [bar | psi] |
opening_time_j_to_i | Feature Opening Time | blank | [sec] |
cp_j_to_i | Discharge Coefficient | blank | no units |
exvar | Exploded Volume Area Reduction | 0 | no units |
ovar | Occupied Volume Area Reduction | 0 | no units |
mdot | Fixed mass flow rate | 0 | [kg/sec | lbs/sec] |
fdl | Partial Darcy friction factor fd * L | 0 | [m | in] |
cddyn | Dynamical CD (blank or -1 (default), 0 (never), 1(Jobson) | -1 | no units |
slave_of | Master connection ID | -1 | no units |
slave_k1 | theta_slave = k1 * theta_master + k2 | 1 | no units |
slave_k2 | theta_slave = k1 * theta_master + k2 | 1 | no units |
slave_involved | is slave connection involved in item’s opening | 1 | no units |
Connections/id¶
Flags
Type: Int in range [1; +∞] | Default: None | Mandatory: True | Unique: True
Short description:
Connection ID [no units]
Connections/vol_i¶
Flags
Type: Int in range [0; +∞] | Default: None | Mandatory: True | Unique: False
Short description:
ID of volume I [no units]
Connections/vol_j¶
Flags
Type: Int in range [1; +∞] | Default: None | Mandatory: True | Unique: False
Short description:
ID of volume J [no units]
Connections/comments¶
Flags
Type: Str | Default: | Mandatory: False | Unique: False
Short description:
Free text [no units]
Connections/door¶
Flags
Type: Float in range [0; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Door Frame Area [m^2] or [in^2]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
Decompressing Doors are kind of special venting. Two cases exist: or the full door acts as decompression feature, or the door features an internal decompression panel.
In the first case, the door area (door column) needs to be equal to vent_area_*. This is very often the case of swivel doors. If the doors opens only in one direction, the relevant opening_pressure_* need to be set to an unreachable pressure value, such as it will never open.
In the latter case, the door area will be different from the vent_area_*, and necessarly greater.
Note
For all the cases, the door parameter only deals with opened-doors or closed-doors initial conditions. Only the `vent_area` parameters have a dynamical attribute.
Connections/opening_latency¶
Flags
Type: Float in range [-∞; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Feature opening latency time [sec]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
Connections/vent_area_i_to_j¶
Flags
Type: Float in range [0; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Decompression raw area [m^2] or [in^2]
Connections/opening_pressure_i_to_j¶
Flags
Type: Float in range [0; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Pressure Threshold [bar] or [psi]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
Connections/opening_time_i_to_j¶
Flags
Type: Float in range [0; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Feature Opening Time [sec]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
Connections/cp_i_to_j¶
Flags
Type: Float in range [0; 1] | Default: 0 | Mandatory: False | Unique: False
Short description:
Discharge Coefficient [no units]
Connections/vent_area_j_to_i¶
Flags
Type: Float in range [0; +∞] | Default: nan | Mandatory: False | Unique: False
Short description:
Decompression raw area [m^2] or [in^2]
Connections/opening_pressure_j_to_i¶
Flags
Type: Float in range [0; +∞] | Default: nan | Mandatory: False | Unique: False
Short description:
Pressure Threshold [bar] or [psi]
Connections/opening_time_j_to_i¶
Flags
Type: Float in range [0; +∞] | Default: nan | Mandatory: False | Unique: False
Short description:
Feature Opening Time [sec]
Connections/cp_j_to_i¶
Flags
Type: Float in range [0; 1] | Default: nan | Mandatory: False | Unique: False
Short description:
Discharge Coefficient [no units]
Connections/exvar¶
Flags
Type: Float in range [-∞; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Exploded Volume Area Reduction [no units]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
EXVAR stands for “EXploded Volume vent Area Reduction”. Like “OVAR”, “EXVAR” defines a way to dynamically recalculate the vent area between two volumes when one of the connected volumes (I or J) is the volume where the explosion occurs.
If one of the connected volumes is the one where the explosion occurs, the “i to j” and “j to i” venting area are reduced as follows:
Connections/ovar¶
Flags
Type: Float in range [-∞; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Occupied Volume Area Reduction [no units]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
OVAR stands for “Occupied Volume vent Area Reduction”. The optional column “ovar” (default to 0 if omitted) allows ESonix to dynamically recalculate the vent area for each load case.
This parameter is specially designed to simulate the jam of an opening feature when the incoming volume is occupied. For example, a decompression panel may be blocked by a container in the cargo.
If the connection is leaving an occupied volume (parameters “DEOR” or “VEOR” for the volume #I), the vent area from J to I is reduced by this parameter as follows:
Likewise, if the connection is going to an occupied volume (parameters “DEOR” or “VEOR” for the volume #J), the vent area from I to J is reduced by this parameter as follows:
Connections/mdot¶
Flags
Type: Float in range [-∞; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Fixed mass flow rate [kg/sec] or [lbs/sec]
⚠ This parameter is incompatible with Connections parameters: cddyn
, door
, exvar
, fdl
, opening_latency
, opening_pressure_i_to_j
, opening_time_i_to_j
, ovar
, sonic
⚠ This parameter requires Connections parameters cp_i_to_j
, vent_area_i_to_j
Connections/fdl¶
Flags
Type: Float in range [0; +∞] | Default: 0 | Mandatory: False | Unique: False
Short description:
Partial Darcy friction factor fd * L [m] or [in]
⚠ This parameter is incompatible with Connections parameters: cddyn
, door
, exvar
, mdot
, opening_latency
, opening_pressure_i_to_j
, opening_time_i_to_j
, ovar
, sonic
⚠ This parameter requires Connections parameters cp_i_to_j
, vent_area_i_to_j
The parameter fdl
is used to idealize a pipe as an ESonix connection.
The parameter fdl
partially refers to Darcy Friction factor. Actually the ESonix fdl
parameter equals the Darcy friction factor \(f_d\) multiplied by the pipe’s length (\(\text{fdl} = f_d \times L_{pipe}\)).
The pipe’s internal velocity is then calculated as:
The pipe’s diameter \(D_{pipe}\) is internally retrieved by ESonix by the formula:
Connections/cddyn¶
Flags
Type: Int in range [-1; +∞] | Default: -1 | Mandatory: False | Unique: False
Short description:
Dynamical CD (blank or -1 (default), 0 (never), 1(Jobson) [no units]
⚠ This parameter is incompatible with Connections parameters: fdl
, mdot
The cddyn
flag allows to define the dynamical behavior of
a connection’s discharge coefficient independently from the engine selected.
The flag, if left to blank, is defaulted to -1
. In this case, the selected engine will decide for its value. If set to 0
the connection will not have any dynamical discharge coefficient. In contrary, setting cddyn
to 1
will force the discharge coefficient to a dynamical behavior, whatever the engine.
Connections/slave_of¶
Flags
Type: Int in range [-1; +∞] | Default: -1 | Mandatory: False | Unique: False
Short description:
Master connection ID [no units]
⚠ This parameter requires Connections parameters slave_involved
, slave_k1
, slave_k2
Connections/slave_k1¶
Flags
Type: Float in range [-∞; +∞] | Default: 1 | Mandatory: False | Unique: False
Short description:
theta_slave = k1 * theta_master + k2 [no units]
⚠ This parameter requires Connections parameters slave_of
Connections/slave_k2¶
Flags
Type: Float in range [-∞; +∞] | Default: 1 | Mandatory: False | Unique: False
Short description:
theta_slave = k1 * theta_master + k2 [no units]
⚠ This parameter requires Connections parameters slave_of
Connections/slave_involved¶
Flags
Type: Int in range [0; 1] | Default: 1 | Mandatory: False | Unique: False
Short description:
is slave connection involved in item’s opening [no units]
⚠ This parameter requires Connections parameters slave_of
Preprocessing¶
Right before the actual run is solved, the model the user uploaded is preprocessed (cf. Fig. 6.1). This has a particular meaning for connections and can be described by two different phases:
- Initialisation of the
*_i_to_j
columns.- Symmetrization of the
*_j_to_i
columns.
Step 1: Initialisation¶
Initialisation deals with the *_i_to_j
columns.
This phase does not directly affect the *_j_to_i
ones.
For each row of the model, any empty or blank cell within the *_i_to_j
columns will be set to 0.0
.
Step 2: Symmetrization¶
Symmetrization deals with the *_j_to_i
columns. This phase never
affects the *_i_to_j
ones.
This “symmetrisation” process means that connections are assumed symmetric by default.
The user shall fill the *_i_to_j
columns. *_j_to_i
is not
mandatory. The empty *_j_to_i
columns will be automatically copied
from *_i_to_j
.
A connection may be partially symmetric. For example, a connection may have the same discharge coefficient (cp) for both ways, but different venting area. In this case, only the asymmetric values need to be filled.
Common examples¶
The following examples show the most common connections and propose the best way to idealize them.
Passive vent¶
Passive vents are the most simple connections. Passive vents are always symmetrical (although you may define unsymmetrical venting area).
Example: A connection (ID19) is a passive vent (symmetric) between volumes 2 and 7. The total vent area is 0.3m^2, with a discharge coefficients of 0.4. Such a feature is shown at Fig. 5.5.
The ESonix pre-process phase would prepare the full connection as described
below (in bold the default values determined by ESonix). Pay attention to the
symmetrization process to fill the _j_to_i
columns.
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
19 | 19 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
Default to zero | 0 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
0.3 | 0.3 | |
opening_pressure_i_to_j |
Default to zero | 0 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.4 | 0.4 | |
vent_area_j_to_i |
Default to vent_area_i_to_j |
0.3 | |
opening_pressure_j_to_i |
Default to opening_pressure_i_to_j |
0 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0 | |
cp_j_to_i |
Default to cp_i_to_j |
0.4 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Standard decompression panel (Bi-directionnel)¶
Decompression panels are activated once the delta pressure pushing on it reach a target value. It is most of the time fully symmetric: the same delta pressure threshold triggers the mechanism and the same vent area is cleared.
Example: A decompression panel defines the connection ID19. The total released area is 0.5m^2. The panel opens
for a pressure of 1.5bar, and is assumed to open instantaneously (opening_time
= 0).
Such a feature is shown at Fig. 5.6.
The ESonix pre-process phase would prepare the full connection as described
below (in bold the default values determined by ESonix). Pay attention to the
symmetrization process to fill the _j_to_i
columns.
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
19 | 19 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
Default to zero | 0 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
0.3 | 0.3 | |
opening_pressure_i_to_j |
1.5 | 1.5 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.6 | 0.6 | |
vent_area_j_to_i |
Default to vent_area_i_to_j |
0.3 | |
opening_pressure_j_to_i |
Default to opening_pressure_i_to_j |
1.5 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0 | |
cp_j_to_i |
Default to cp_i_to_j |
0.6 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Unidirectional decompression panel¶
Unidirectional decompression panels are activated only for one direction
Example: Same example as above, but the panel can only open from 7 to 2. Such a feature is shown at Fig. 5.7.
One way to achieve this is to reduce vent_area_i_to_j
to 0 (no vent area
from 2 to 7), and to set vent_area_j_to_i
to 0.3.
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
19 | 19 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
Default to zero | 0 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
Default to zero | 0 | |
opening_pressure_i_to_j |
Default to zero | 0 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.6 | 0.6 | |
vent_area_j_to_i |
0.3 | 0.3 | |
opening_pressure_j_to_i |
1.5 | 1.5 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0 | |
cp_j_to_i |
0.6 | 0.6 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Warning
once the panel is open the air can freely flow in both direction. If the differential pressure inverts the air flow from “i_to_j” will be based on the actual calculated opened area with the discharge coefficient “cp_i_to_j”. Therefore this discharge coefficient should be always specified.
Note
another way of achieving a unidirectional decompression panel opening would be to set an artificially high opening pressure in the opposite direction.
Nested differential decompression panel¶
This particular design is sometimes useful to optimize a decompression layout.
Example. As shown in Fig. 5.8, a decompression feature (let say with ID 23) can open in both directions with the same triggering pressure, but with different area. This would be achieved this way:
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
23 | 23 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
Default to zero | 0 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
0.3 | 0.3 | |
opening_pressure_i_to_j |
1.5 | 1.5 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.6 | 0.6 | |
vent_area_j_to_i |
0.8 | 0.8 | |
opening_pressure_j_to_i |
Default to opening_pressure_i_to_j |
1.5 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0 | |
cp_j_to_i |
Default to cp_i_to_j |
0.6 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Simple non-decompressing door¶
A non-decompressing door is considered as a passive vent when the opened-doors configuration
is ran. No more data except door
and cp_i_to_j
are required (beside
id
, vol_j
and vol_j
!)
Example: A simple 2.2m² door (let say ID9) connects compartments 2 and 7 (cf. Fig. 5.9).
Usually, such a big clean vent is assumed to have a discharge coefficient of 0.8. When the decompression analysis is ran with the closed-doors initial conditions, this venting is ignored (the door is closed and will remain closed) whereas for the opened-doors initial conditions, the full door is opened and will remain opened as a 2.2m² passive vent.
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
9 | 9 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
2.2 | 2.20 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
Default to zero | 0 | |
opening_pressure_i_to_j |
Default to zero | 0 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.8 | 0.8 | |
vent_area_j_to_i |
0 | ||
opening_pressure_j_to_i |
Default to opening_pressure_i_to_j |
0 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0 | |
cp_j_to_i |
Default to cp_i_to_j |
0.8 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Simple decompressing door¶
A decompressing door is considered to clear its full frame area when the \(\Delta_P\) reach the triggering pressure. For an opened-door initial condition run, the decompressing feature will not be active, since the door itself is already opened.
This kind of decompression item is usually not symmetric: the static door frame allows the door to rotate only in one direction.
Example: The same example as above is used, except that the door is able
to open from 7 to 2 when \(\Delta_P\) reaches 1.5bar. Additionnally, an
opening time of 0.3 seconds will be used. Will still need to set the discharge
coefficient for i_to_j
since the door will be opened for the opened-door
initial conditions.
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
9 | 9 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
2.2 | 2.20 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
Default to zero | 0 | |
opening_pressure_i_to_j |
Default to zero | 0 | |
opening_time_i_to_j |
Default to zero | 0 | |
cp_i_to_j |
0.8 | 0.8 | |
vent_area_j_to_i |
2.2 | 2.2 | |
opening_pressure_j_to_i |
1.5 | 1.5 | |
opening_time_j_to_i |
0.3 | 0.3 | |
cp_j_to_i |
Default to cp_i_to_j |
0.8 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |
Door nesting a decompression panel¶
Contrary to the example above (Simple decompressing door), the door has no decompression mechanism, but hosts a nested decompression panel (cf. Fig. 5.11).
For illustration purposes, and to keep a certain level of complexity, the nested panel is considered blind –opening only from volume 2 to volume 7– which is not common.
The door itself will not be triggered with maximum Δp. However its 1.05m² nested panel will, only from volume 2 to volume 7.
Values for i_to_j
data has to be filled, and values for j_to_i
as well,
but set to 0 to avoid symmetrization (at least for the vent_area
),
as shown in Table 5.11).
Warning
It is often a bad idea to define the panel as another item (another row) as the door. Indeed, in the latter case, during an opened-door load case, the panel will still be active and may be triggered, adding a new vent area that shouldn’t be!
Column | User input | Preprocess | Actual input |
---|---|---|---|
id |
9 | 9 | |
vol_i |
2 | 2 | |
vol_j |
7 | 7 | |
door |
2.2 | 2.20 | |
opening_latency |
Default to zero | 0 | |
vent_area_i_to_j |
1.05 | 1.05 | |
opening_pressure_i_to_j |
1.5 | 1.5 | |
opening_time_i_to_j |
0.3 | 0.3 | |
cp_i_to_j |
0.8 | 0.8 | |
vent_area_j_to_i |
0 | 0 | |
opening_pressure_j_to_i |
Default to opening_pressure_i_to_j |
1.5 | |
opening_time_j_to_i |
Default to opening_time_i_to_j |
0.3 | |
cp_j_to_i |
Default to cp_i_to_j |
0.8 | |
comments |
Default to null string | “” | |
ovar |
Default to zero | 0 | |
exvar |
Default to zero | 0 |