# DNV Python library for Phast Web Services

## Introduction

Welcome to Python PWS - the Python Library for Phast Web Services. Python PWS provides an easy and efficient way of consuming the Phast Cloud APIs from your Python solutions.

## What is Phast?

Phast is the world's most comprehensive process hazard analysis software which models the progress of a potential incident from the initial release to far-field dispersion including modelling of pool spreading and evaporation and resulting flammable and toxic effects. In Phast Web Services we have taken the same state of the art consequence modelling calculations and made them available as web services so you can use them in your own applications.

## Concepts

Phast Web Services have been designed to use "entities" that are easy to grasp conceptually. So you work with physical objects like a vessel or a pipe and associated data objects like leaks, pipe ruptures and weathers. These are used when calling a vessel leak or pipe breach calculation for example.

## Getting started

To jump to the reference documentation please click here.

### Developing with Python

Developing solutions using Python is beyond the scope of this help file. For more information on developing solutions using Python please refer to these useful links:

- Python home
- Downloads for all platforms
- Documentation

### Installing Python PWS

Installation of Python itself is not covered by this documentation but there is significant help available online.

Python PWS can be installed from the Python Package Index (PyPI) which is a repository of software for the Python programming language. You can find the Python PWS package on PyPI here.

To install Python PWS simply type:

pip install pypws

### Registering to get access to Phast Web Services

In order to use Phast Web Services you need to...

### Obtaining an access token

Once registered with Veracity you can download your access token from...

### Registering the access token with Python PWS

### Un-installing

To uninstall Python PWS simply type:

`pip uninstall pypws`

and when prompted select y.

## The basics

## Performing calculations

### Running calculations

## Python PWS Full Reference

The following items are available:

- Constants
- Enums
- Entities
- Calculations

### Constants

The following is a list of available constants.

Name | Value | Description
--- | --- | ---
ABS_TOL_RAD | 0.0000000001 | Absolute tolerance for radiation calculations.
ADJUST_GROUND_FLAME | 1 | Flame shape adjusted if grounded for jet fires.
ATM_EXP_METHOD | 4 | DNV recommended atmospheric expansion method from orifice to final state.
ATM_MOLWT | 28.9505 | Atmospheric molecular weight (kg/kmol).
ATM_PRESSURE | 101325.0 | Atmospheric pressure (Pa).
AWD_FLAG | 3 | Along wind diffusion method for non instantaneous dispersion.
BUND_AREA_MULTIPLIER_FOR_RUPTURE | 1.5 | Bund area multiplier for catastrophic ruptures.
BUND_CANNOT_FAIL | 0 | Bund cannot fail - liquid overspill not possible.
CALC_METHOD_SEP_FIREBALLS | -1 | Calculate surface emissive power for fireballs.
CALC_METHOD_SEP_JET_FIRES | 0 | Calculate surface emissive power for jet fires.
CRIT_SEP_RATIO | 0.2 | Critical separation ratio for concentration grids.
CRIT_WEBER | 12.5 | Critical Webber number used in the droplet size calculations.
DROPLET_METHOD | 6 | Modified CCPS droplet method.
EXPL_LOCATION | 0 | Explosion located at the cloud front (LFL fraction).
FIREBALL_MODEL | 0 | Roberts/TNO hybrid fireball model.
FLAM_AVR_TIME_PHAST_DEFAULT | 18.75 | Default value for flammable averaging time in Phast.
FLAMM_MASS_CALC_METHOD | 2 | Use mass between LFL and UFL for flammable mass estimation in explosion calculations.
FRACTION_TOTAL_TO_KINETIC | 0.04 | Kinetic energy fraction of discharge expansion energy.
HORIZONTAL_OPTION | 0 | Standard method for jet fire horizontal options.
INEX_FLAG | 2 | New standard method for modelling of instantaneous expansion.
JET_FIRE_AVR_TIME | 20.0 | Jet fire averaging time (s).
JET_FIRE_CORRELATION | 0 | Recommended jet fire correlation.
JET_FIRE_EXP_DUR | 20.0 | Jet fire maximum exposure duration (s).
JET_RATE_MOD_FACTOR | 3.0 | Jet fire rate modification factor.
LFL_FRACTION_EXPLOSIONS | 0.5 | LFL fraction used to define the flammable cloud for explosions.
MASS_MOD_FACTOR | 3.0 | Mass modification factor used in calculating the mass of material involved in the fireball.
MAX_DISP_STEP_SIZE | 300.0 | Maximum integration step for dispersion calculations (s).
MAX_DROP_DIAMETER | 0.01 | Upper limit of the droplet diameter (m).
MAX_NUMBER_FLAME_COORDINATES | 10 | Maximum number of flame coordinates for jet fires.
MAX_RELEASE_DURATION | 3600.0 | Maximum release duration (s).
MAX_SEP_FIREBALL | 400000.0 | Maximum surface emissive power for fireballs (W/m2).
MAX_SEP_JET_FIRE | 350000.0 | Maximum surface emissive power for a jet fire (W/m2).
MAX_SEP_POOL_FIRE | 350000.0 | Maximum surface emissive power for pool fires (W/m2).
MAX_TIMESTEPS | 900 | Maximum number of time steps for time varying releases.
MAX_VELOCITY | 100000000.0 | Maximum release velocity (m/s).
MAX_VELOCITY_FLAG | 0 | Fixed velocity capping method.
MAXIMUM_COMPONENT_COUNT | 20 | Maximum number of components.
MAXIMUM_LEAK_DIAMETERS_COUNT | 5 | Maximum number of leak diameters for scenario generation.
MAXIMUM_PT_STEPS | 441 | Maximum number of steps in an iteration over PT space.
MAXIMUM_TEMPERATURE_LIMIT | 1200.0 | Maximum temperature allowed for dispersion calculations (K).
MAXIMUM_WEATHER_COUNT | 10 | Maximum number of weathers.
ME_EXPL_EFFICIENCY_UNCONFINED | 100.0 | Explosion efficiency for unconfined multi-energy explosions (%).
ME_EXPL_EFFICIENCY_UNIFORM_CONFINED | 12.5 | Explosion efficiency for uniform confined multi-energy explosions (%).
MILLER_CROSSWIND_METHOD | 0 | Method for modelling crosswind effects for Miller model: 0 = modified Johnson approach; 1 = Full deflection.
MILLER_FLAME_RAD_FRACTION_METHOD | 0 | Miller jet flame radiative fraction calculation method: 0 = Miller method; 2 = Sandia method.
MILLER_FLAME_TRAJECTORY | 0 | Miller jet flame trajectory: 0 = Line segments; 1 = Curved line.
MILLER_LIFT_OFF_OPTION | 1 | Method for modelling flame lift-off for Miller model: 0 = Miller method; 1 = DNV.
MILLER_NG_FLOWRATE_METHOD | 1 | Miller natural gas flow rate matching method: 0 = Miller (2017); 1 = DNV [similarity approach].
MILLER_RAD_INTENSITY_CAP_METHOD | 2 | Radiation intensity capping method: 0 = No capping; 1 = Max intensity capping; 2 = Stefan Boltzmann's law.
MIN_DROP_DIAMETER | 0.00000001 | Cut-off droplet diameter below which droplets are no longer modelled (m).
MIN_EXPL_MASS | 0.0 | Minimum explosive mass (kg).
MINIMUM_TEMPERATURE_LIMIT | 11.0 | Minimum temperature allowed for dispersion calculations (K).
MIX_LAYER_HEIGHT_FOR_A | 1300 | Mixing layer height for Pasquill stability class A (m).
MIX_LAYER_HEIGHT_FOR_AB | 1080 | Mixing layer height for Pasquill stability class A/B (m).
MIX_LAYER_HEIGHT_FOR_B | 920 | Mixing layer height for Pasquill stability class B (m).
MIX_LAYER_HEIGHT_FOR_BC | 880 | Mixing layer height for Pasquill stability class B/C (m).
MIX_LAYER_HEIGHT_FOR_C | 840 | Mixing layer height for Pasquill stability class C (m).
MIX_LAYER_HEIGHT_FOR_CD | 820 | Mixing layer height for Pasquill stability class C/D (m).
MIX_LAYER_HEIGHT_FOR_D | 800 | Mixing layer height for Pasquill stability class D (m).
MIX_LAYER_HEIGHT_FOR_E | 400 | Mixing layer height for Pasquill stability class E (m).
MIX_LAYER_HEIGHT_FOR_F | 100 | Mixing layer height for Pasquill stability class F (m).
MIX_LAYER_HEIGHT_FOR_G | 100 | Mixing layer height for Pasquill stability class G (m).
N_VTIMES_CONT | 5 | Number of time steps for continuous clouds used in explosion calculations.
N_VTIMES_MAX | 100 | Maximum number of time steps for explosion calculations.
N_VTIMES_TV | 15 | Number of time steps for time-varying clouds used in explosion calculations.
NUM_FIXED_STEPS | 20 | Number of fixed size output steps for dispersion calculations.
NUM_X_VIEW | 21 | Number of steps in the downwind direction per explosion cloud view.
OBSERVER_TYPE | 1 | Planar observer type for radiation modelling.
PIPE_NODES_COUNT | 2 | Number of nodes on the pipe (start, end + intermediate).
RAD_FRAC_GENERAL | 0.4 | Radiative fraction for general pool fires.
RAD_LEVEL_GRID | 1600.0 | The radiation level used for calculating radiation grids. The value is set equal to the lowest default radiation value present in the VesselLeak apps.
RAD_PROBIT_A | -36.38 | Probit value A for radiation.
RAD_PROBIT_B | 2.56 | Probit value B for radiation.
RAD_PROBIT_N | 1.33 | Probit value N for radiation.
RADS_INTEGRATOR_TYPE | 2 | Integration method for multi-point flame sources: 0 = Discrete; 1 = QSIMP; 2 = Gauss-Lobatto.
RADS_NUM_INTEGRATOR_POINTS | 30 | Number of integration points to use for multi-point sources: 30 by default.
REF_HT_WIND_SPEED | 10.0 | Reference height for wind speed.
REPORTING_HEIGHT_FLAG | 1 | Centreline height is used for explosion calculations.
RESULT_GRID_STEP | 10.0 | Flammable result grid step in x-direction (m).
SHORT_DURATION_CUTOFF | 20.0 | Cutoff for short duration effects. Only mass released until this time is used in the fireball calculation (s).
SHORT_PIPE_ROUGHNESS | 0.000045 | Short pipe roughness (m).
STOICH_MASS_FRAC_METHOD | 0 | Use old method (valid for paraffins only) for calculating the stoichiometric mass fraction.
TNO_FLAME_TEMP | 2000.0 | Flame temperature for TNO fireball model (K).
TOXIC_MIN_LETHALITY | 0.001 | Toxics: minimum probability of death.
TOXIC_MIX_CALC_METHOD | 3 | Product of each as the multi component toxic calculation method.
TOXIC_PD_TOLERANCE | 0.01 | Toxics: tolerance on minimum probability of death.
TOXIC_PROBIT_METHOD | 1 | Prefer Probit as the toxic calculation method, i.e. if probit data is available that will be the preferred method to use.
TOXIC_TAIL_TIME | 1800.0 | Tail time for indoor toxic calculations (s).
UDS_MAX_TEMPERATURE | 1200.0 | The absolute maximum temperature allowed for a user-defined source.
UDS_MIN_TEMPERATURE | 11.0 | The absolute minimum temperature allowed for a user-defined source.
UNCONFINED_EXPLOSION_STRENGTH | 2.0 | Unconfined explosion strength (Multi energy method).
UNIFORM_CONFINED_EXPLOSION_METHOD_OPTION | 3 | Uniform confined Multi Energy explosion method.
USE_SHAPE_CORRELATION | -1 | Use shape correlation for fireballs.
USE_SOLAR | 0 | Exclude solar radiation from radiation calculations.
USE_VOLUMES | 2 | Use volumes when specifying size of confined sources.
USER_DEFINED_CONFINED_EXPLOSION_METHOD_OPTION | 1 | Unconfined Multi-Energy explosion method.
USER_INPUT_POST_EXPANSION_VELOCITY | 0 | Velocity for jet fire calculations must be user supplied.
WIND_CUTOFF_HEIGHT | 1.0 | Cut-off height for wind speed calculations.
WIND_PROFILE_FLAG | 2 | Logarithmic wind profile.

Back to reference home

### Enums

The following is a list of available enums.

- AtmosphericStabilityClass
- ContourType
- DayNight
- DesignVariable
- DynamicType
- FireType
- FlammableToxic
- FlashAtOrifice
- FluidSpec
- LuminousSmokyFlame
- MEConfinedMethod
- MessageResultCode
- MixtureModelling
- Phase
- PoolFireType
- PoolSurfaceType
- PropertyTemplate
- RadiationType
- RainoutThermoFlag
- ReleaseDirection
- Resolution
- ResultCode
- Scope
- SolidModelling
- SpecialConcentration
- SurfaceType
- TargetVariable
- TimeVaryingOption
- ToxicResultType
- VesselConditions
- VesselShape

Back to reference home

### AtmosphericStabilityClass

Atmospheric stability classes.

Name | Value | Description
--- | --- | ---
StabilityA | 1 | A.
StabilityAB | 2 | A/B.
StabilityB | 3 | B.
StabilityBC | 4 | B/C.
StabilityC | 5 | C.
StabilityCD | 6 | C/D.
StabilityD | 7 | D.
StabilityE | 8 | E.
StabilityF | 9 | F.
StabilityG | 10 | G.

Back to reference home

### ContourType

Type of contour plot or grid.

Name | Value | Description
--- | --- | ---
Footprint | 1 | Footprint (XY plane).
FootprintAtTime | 2 | Footprint (XY plane) at given time.
FootprintEllipse | 3 | Footprint ellipse (XY plane).
Sideview | 4 | Sideview (XZ plane).
Crosswind | 5 | Crosswind (YZ plane).
FlameFootprint | 6 | Flame shape footprint (XY plane).
FlameSideview | 7 | Flame shape side view (XZ plane).
FlameCrosswind | 8 | Flame shape crosswind (YZ plane).

Back to reference home

### DayNight

Flag to indicate wheather we are in day or nightime.

Name | Value | Description
--- | --- | ---
Unset | 0 | Day/night flag not set.
Day | 1 | Day.
Night | 2 | Night.

Back to reference home

### DesignVariable

Choice of input to vary to achieve target design.

Name | Value | Description
--- | --- | ---
PipeLength | 1 | The length of the flare stack.
PipeDiameter | 2 | The diameter of the flare stack.
OperatingPressure | 3 | The driving pressure in the tank feeding the flare stack.

Back to reference home

### DynamicType

Type of release or cloud.

Name | Value | Description
--- | --- | ---
Unset | 0 | Unset.
Instantaneous | 1 | Instantaneous.
Continuous | 2 | Continuous.
TimeVarying | 3 | Time-varying.

Back to reference home

### FireType

Fire type.

Name | Value | Description
--- | --- | ---
NoFire | 0 | No fire.
Fire_ball | 1 | Fireball.
Pool | 2 | Pool fire.
APIJet | 3 | API jet fire.
ConeJet | 4 | Cone jet fire.
MultiPointSourceJet | 10 | Multi-point [e.g. Miller] source jet fire model.

Back to reference home

### FlammableToxic

Flag to indicate if the material is flammable, toxic, both or inert.

Name | Value | Description
--- | --- | ---
Unset | -99 | Option when this field is unset.
Inert | -2 | Inert.
Toxic | -1 | Toxic.
Both | 0 | Both.
Flammable | 1 | Flammable.

Back to reference home

### FlashAtOrifice

Allow phase change upstream of orifice.

Name | Value | Description
--- | --- | ---
NoFlashAtOrifice | 0 | No phase change to the orifice.
FlashAllowed | 1 | Flashing allowed to the orifice.
DisallowLiquidFlash | 2 | No flashing of liquid (metastable liquid).

Back to reference home

### FluidSpec

Fluid state specification.

Name | Value | Description
--- | --- | ---
PTLf | 0 | Specify all of P,T,LF.
TP | 1 | Specify temperature and pressure.
TBub | 2 | Bubble point at fixed temperature.
PBub | 3 | Bubble point at fixed pressure.
TDew | 4 | Dew point at fixed temperature.
PDew | 5 | Dew point at fixed pressure.
PLf | 6 | Fixed pressure and liquid fraction.
TLf | 7 | Fixed temperature and liquid fraction.

Back to reference home

### LuminousSmokyFlame

Luminous smoky flame.

Name | Value | Description
--- | --- | ---
NonFlammable | -1 | Non flammable.
Luminous | 0 | Luminous flame.
Smoky | 1 | Smoky flame.
General | 2 | General type flame.

Back to reference home

### MEConfinedMethod

Multi-energy confined method.

Name | Value | Description
--- | --- | ---
UserDefined | 1 | User defined method.
UniformConfined | 3 | Uniform confined method.

Back to reference home

### MessageResultCode

A message code used to communicate additional information between the APIs and the client applications.

Name | Value | Description
--- | --- | ---
UserNotAuthorizedToUpgradeEntity | 20000 | Authenticated user is not authorized to upgrade the requested entity.

Back to reference home

### MixtureModelling

Method for modelling a mixture.

Name | Value | Description
--- | --- | ---
PC | 0 | Pseudo-component treatment of mixtures.
MC_SingleAerosol | 1 | Multi-component single aerosol.
MC_MultipleAerosol | 3 | Multi-component multiple aerosol hybrid method.

Back to reference home

### Phase

Fluid phase (vapour, liquid or two-phase).

Name | Value | Description
--- | --- | ---
Unset | 0 | Unset.
Vapour | 1 | Vapour.
TwoPhase | 2 | Two-phase.
Liquid | 3 | Liquid.

Back to reference home

### PoolFireType

Pool fire type.

Name | Value | Description
--- | --- | ---
Immediate | 0 | Immediate pool fire.
Early | 1 | Early pool fire.
Late | 2 | Late pool fire.

Back to reference home

### PoolSurfaceType

Surface type for pools and bunds.

Name | Value | Description
--- | --- | ---
WetSoil | 1 | Wet soil.
DrySoil | 2 | Dry soil.
Concrete | 3 | Concrete.
InsulatedConcrete | 4 | Insulated concrete.
DeepOpenWater | 5 | Deep open water.
ShallowOpenWater | 6 | Shallow open water.
DeepRiver | 7 | Deep river.
ShallowRiver | 8 | Shallow river.

Back to reference home

### PropertyTemplate

Choice of property template.

Name | Value | Description
--- | --- | ---
PhastMC | 100 | The PhastMC is the default Phast template.
Phast64 | 101 | Old default Phast property template.
AcidAssociation | 102 | Acid association template for modelling reactive Hydrogen Fluoride.
SoaveRedlickKwong | 103 | Template using the Soave-Redlich-Kwong cubic equation of state.
PengRobinson | 104 | Template using the Peng-Robinson cubic equation of state.
PRIdealFugacity | 106 | The Peng-Robinson template but with ideal fugacities for improved robustness.
SRKIdealFugacity | 107 | The Soave-Redlich-Kwong template but with ideal fugacities for improved robustness.

Back to reference home

### RadiationType

Radiation type.

Name | Value | Description
--- | --- | ---
Unset | 0 | Radiation type not set.
Dose | 1 | Radiation dose.
Probit | 2 | Radiation probit.
Lethality | 3 | Radiation lethality.
ViewFactor | 4 | View factor.
Intensity | 5 | Radiation intensity.

Back to reference home

### RainoutThermoFlag

Rainout and thermodynamic modelling.

Name | Value | Description
--- | --- | ---
NoRainoutEquilibrium | -1 | No rainout, equilibrium.
RainoutEquilibrium | 1 | Rainout, equilibrium.
RainoutNonEquilibrium | 2 | Rainout, non-equilibrium.

Back to reference home

### ReleaseDirection

Release direction.

Name | Value | Description
--- | --- | ---
Horizontal | 0 | Horizontal.
Vertical | 1 | Vertical.

Back to reference home

### Resolution

Output resolution (and performance).

Name | Value | Description
--- | --- | ---
High | 1 | High.
Medium | 2 | Medium.
Low | 3 | Low.
VeryHigh | 4 | Very high.
Extreme | 5 | Extremely high.

Back to reference home

### ResultCode

Result codes returned from calls to the MDE.

Name | Value | Description
--- | --- | ---
Fail_Validation | -1 | Validation fail.
Success | 0 | Success.
Fail_Execution | 1 | Execution fail.
UnexpectedApplicationError | 21001 | Unexpected application error encountered.
MissingParametersError | 21002 | Missing parameters.
InvalidWorkingDirectoryError | 21003 | No or invalid working directory specified.
InvalidAppRootDirectoryError | 21004 | No or invalid application root directory specified.
InvalidMdeModelsDirectoryError | 21005 | No or invalid MDE models directory specified.
MdeModelDirectoryNotFoundError | 21006 | MDE directory was correctly specified but the directory does not exist.
InvalidPropertySystemDirectoryError | 21007 | No or invalid physical properties directory specified.
InputFileNotSpecifiedError | 21008 | Input file not specified error.
InputFileNotFoundError | 21009 | Input file not found error.
OutputFileNotSpecifiedError | 21010 | Output file not specified error.
ErrorReadingInputFileError | 21011 | Error reading input file error.
FailedToInitialiseMdeErrorReportingError | 21012 | Failed to initialise mde error reporting error.
FailedToInitialisePropertySystemError | 21013 | Failed to initialise property system error.
InvalidAccessTokenError | 21014 | Invalid access token error.
NoDischargeRecordsError | 21100 | No discharge records error.
NoDispersionRecordsError | 21102 | No dispersion records error.
NoFlameRecordsError | 21103 | No flame records error.
MDEInitializationError | 21104 | MDE initialization error.
MDEErrorReportingInitializationError | 21105 | MDE error reporting initialization error.
PhysicalPropertySystemInitializationError | 21106 | Physical property system initialization error.
DischargeCalculationInitializationError | 21107 | Discharge calculation initialization error.
DispersionCalculationInitializationError | 21108 | Dispersion calculation initialization error.
UnableToReadDataError | 21109 | Unable to read data error.
ClientIdNotSpecifiedError | 21110 | Client id not specified error.
JsonReaderError | 21111 | Json reader error.
IndexOutOfRangeError | 21112 | Index out of range error.
DataStorageError | 21113 | Data storage error.
HttpMultipleChoicesError | 30300 | Http multiple choices error.
HttpAmbiguousError | 30300 | Http ambiguous error.
HttpMovedPermanentlyError | 30301 | Http moved permanently error.
HttpMovedError | 30301 | Http moved error.
HttpFoundError | 30302 | Http found error.
HttpRedirectError | 30302 | Http redirect error.
HttpSeeOtherError | 30303 | Http see other error.
HttpRedirectMethodError | 30303 | Http redirect method error.
HttpNotModifiedError | 30304 | Http not modified error.
HttpUseProxyError | 30305 | Http use proxy error.
HttpUnusedError | 30306 | Http unused error.
HttpTemporaryRedirectError | 30307 | Http temporary redirect error.
HttpRedirectKeepVerbError | 30307 | Http redirect keep verb error.
HttpBadRequestError | 30400 | Http bad request error.
HttpUnauthorizedError | 30401 | Http unauthorized error.
HttpPaymentRequiredError | 30402 | Http payment required error.
HttpForbiddenError | 30403 | Http forbidden error.
HttpNotFoundError | 30404 | Http not found error.
HttpMethodNotAllowedError | 30405 | Http method not allowed error.
HttpNotAcceptableError | 30406 | Http not acceptable error.
HttpProxyAuthenticationRequiredError | 30407 | Http proxy authentication required error.
HttpRequestTimeoutError | 30408 | Http request timeout error.
HttpConflictError | 30409 | Http conflict error.
HttpGoneError | 30410 | Http gone error.
HttpLengthRequiredError | 30411 | Http length required error.
HttpPreconditionFailedError | 30412 | Http precondition failed error.
HttpRequestEntityTooLargeError | 30413 | Http request entity too large error.
HttpRequestUriTooLongError | 30414 | Http request uri too long error.
HttpUnsupportedMediaTypeError | 30415 | Http unsupported media type error.
HttpRequestedRangeNotSatisfiableError | 30416 | Http requested range not satisfiable error.
HttpExpectationFailedError | 30417 | Http expectation failed error.
HttpUpgradeRequiredError | 30426 | Http upgrade required error.
HttpInternalServerErrorError | 30500 | Http internal server error error.
HttpNotImplementedError | 30501 | Http not implemented error.
HttpBadGatewayError | 30502 | Http bad gateway error.
HttpServiceUnavailableError | 30503 | Http service unavailable error.
HttpGatewayTimeoutError | 30504 | Http gateway timeout error.
HttpHttpVersionNotSupportedError | 30505 | Http http version not supported error.
NoDischargeRecordsGeneratedWarning | 63001 | No discharge records generated warning.
NoDispersionRecordsGeneratedWarning | 63002 | No dispersion records generated warning.

Back to reference home

### Scope

Determines whether an entity is globally or workspace scoped.

Name | Value | Description
--- | --- | ---
Global | 1 | Entity has global scope.
Workspace | 2 | Entity has workspace scope.

Back to reference home

### SolidModelling

Flag for whether we want to deploy or disable solid modelling. In addition to this flag, each component has its own allowSolids flag.

Name | Value | Description
--- | --- | ---
DisableSolidModelling | 0 | Solid modelling will not be used, even if it is allowed by the component in question.
DeploySolidModelling | 1 | Solid modelling will be deployed if it is supported by the component in question.

Back to reference home

### SpecialConcentration

Concentrations of interest.

Name | Value | Description
--- | --- | ---
NotDefined | 0 | Not Defined.
LFLFraction | 1 | LFL Fraction.
LFL | 2 | LFL.
UFL | 3 | UFL.
Min | 4 | Minimum concentration.

Back to reference home

### SurfaceType

Dispersing surface type (land or water).

Name | Value | Description
--- | --- | ---
Land | 1 | Dispersion over land.
Water | 2 | Dispersion over water.

Back to reference home

### TargetVariable

Type of result for design constraint.

Name | Value | Description
--- | --- | ---
MassFlowRate | 1 | Specify a target mass flow rate.
ExpandedReleaseVelocity | 2 | Specify a target expanded release velocity.
PipeExitPressure | 3 | Specify a target pipe exit pressure.
RadiationLevelTransectEndpoint | 4 | Specify a target radiation level at the endpoint of the radiation transect.

Back to reference home

### TimeVaryingOption

Dynamic modelling of leaks and lines.

Name | Value | Description
--- | --- | ---
InitialRate | 1 | Use initial rate.
TimeVaryingRate | 2 | Use time-varying rates.

Back to reference home

### ToxicResultType

Type of toxic result.

Name | Value | Description
--- | --- | ---
Unset | 0 | Toxic result type not set.
ToxicLethality | 1 | Probability of death.
ToxicProbit | 2 | Toxic probit number.
ToxicDose | 3 | Toxic dose.

Back to reference home

### VesselConditions

The vessel conditions expected by the user.

Name | Value | Description
--- | --- | ---
Unset | 0 | Unset.
PureGas | 1 | Pressurised gas vessel.
HomogeneousVesselType | 2 | Input fluid state expected to be homogenesously mixed two phase.
StratifiedTwoPhaseVessel | 3 | Two phase vessel.
PressurizedLiquidVessel | 4 | Pressurised liquid vessel.
AtmosphericLiquidVessel | 5 | Input fluid state expected to be liquid stored at atmospheric pressure.

Back to reference home

### VesselShape

Vessel shape.

Name | Value | Description
--- | --- | ---
VerticalCylinder | 1 | Vertical cylinder.
HorizontalCylinder | 2 | Horizontal cylinder.
VesselSphere | 3 | Sphere.
VesselCuboid | 4 | Cuboid.

Back to reference home

### Entities

The following is a list of available entities.

- AtmosphericStorageTank
- Bund
- CatastrophicRupture
- ConcentrationRecord
- ConstantMaterialResult
- Constraint
- DischargeParameters
- DischargeRecord
- DischargeResult
- DispersionOutputConfig
- DispersionParameters
- DispersionRecord
- ExplosionConfinedVolume
- ExplosionOutputConfig
- ExplosionOverpressureResult
- ExplosionParameters
- FlameRecord
- FlameResult
- FlammableOutputConfig
- FlammableParameters
- FlareStack
- FlashResult
- Interval
- Leak
- LineRupture
- LocalPosition
- Material
- MaterialComponent
- MaterialComponentData
- MaterialComponentDataItem
- MixtureConstantPropertiesResult
- Pipe
- PipeBreach
- PoolFireFlameResult
- PoolRecord
- PoolVapourisationParameters
- PropertiesDipprPT1
- PropertiesDipprPT2
- PropertiesDipprPT3
- PropertiesDnvPT1
- PropertiesDnvPT2
- PropertiesDnvPT3
- PTRange
- RadiationRecord
- ReliefValve
- ScalarUdmOutputs
- ShortPipeRupture
- State
- Structure
- Substrate
- ThermoPathRecord
- ToxicRecord
- Transect
- Vessel
- VesselLeakMaxFlammableCloudResults
- VesselRuleSet
- VesselSphere
- Weather
- WeatherStationData

Back to reference home

### AtmosphericStorageTank

Atmospheric storage tank.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
State | State (temperature). | State |  |  |
Diameter | Diameter of the tank. | double |  | Length | [m]
Height | Height of the tank. | double |  | Length | [m]
Material | Material. | Material |  |  |
LiquidFillFractionByVolume | Liquid fill fraction by volume. | double | 0.9 | Fraction | [fraction]

Back to reference home

### Bund

Bund.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
BundHeight | Bund height. | double | 0.0 | Length | [m]
BundDiameter | Bund diameter. | double | 0.0 | Length | [m]
SpecifyBund | Specify a bund. | bool | false |  |

Back to reference home

### CatastrophicRupture

Catastrophic rupture of a vessel scenario.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit

Back to reference home

### ConcentrationRecord

Concentration record.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Concentration | Cloud concentration at an x, y, z position. | double |  | Fraction | [fraction]
Position | x, y, z position. | LocalPosition |  |  |

Back to reference home

### ConstantMaterialResult

Constant material properties, i.e. critical pressure, temperature, mole weight.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
CriticalPressure | The critical pressure of the material. | double |  | Pressure | [Pa]
CriticalTemperature | The critical temperature of the material. | double |  | Temperature | [K]
TotalMolecularWeight | The total molecular weight of the material. | double |  | MolecularWeight | [kg/kmol]

Back to reference home

### Constraint

A set of data describing a design constraint. This includes the result target of interest (e.g. mass flow) and the design variable (e.g. stack diameter).

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
TargetVariable | The result type to be prescribed as a design target. | TargetVariable | MassFlowRate |  |
TargetVariableValue | User-defined target value for the chosen result type. | double |  |  |
DesignVariable | The input type to vary to achieve the design target. | DesignVariable | PipeDiameter |  |
PermittedDesignVariableInterval | An interval of permitted values for the design variable. | Interval |  |  |

Back to reference home

### DischargeParameters

Discharge parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
FlashAtOrifice | Flashing at orifice. | FlashAtOrifice | DisallowLiquidFlash |  |

Back to reference home

### DischargeRecord

Discharge results at a given time.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Time | Time. | double |  | Time | [s]
MassFlow | Mass flow rate (continuous and time-varying). | double |  | MassFlowRate | [kg/s]
FinalState | Final fluid state. | State |  |  |
FinalVelocity | Final velocity. | double |  | Velocity | [m/s]
OrificeState | Orifice fluid state. | State |  |  |
OrificeVelocity | Orifice velocity. | double |  | Velocity | [m/s]
StorageState | Storage fluid state. | State |  |  |
DropletDiameter | Representative droplet size. | double |  | Length | [m]
ExpandedDiameter | Expanded diameter. | double | 0.0 | Length | [m]

Back to reference home

### DischargeResult

Scalar discharge results.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ExpansionEnergy | Specific expansion energy (instantaneous releases only). | double |  | Energy | [J]
ReleaseMass | Released mass. | double |  | Mass | [kg]
Height | Release height above ground. | double |  | Length | [m]
Angle | Release angle (non-instantaneous releases only). | double |  | Angle | [Radians]
ReleaseType | Instantaneous, continuous or time-varying. | DynamicType | Unset |  |
HoleDiameter | Diameter of the hole. | double |  | Length | [m]
PreDilutionAirRate | Pre-dilution air rate. | double | 0 | MassFlowRate | [kg/s]

Back to reference home

### DispersionOutputConfig

Dispersion plotting and reporting control parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
DownwindDistance | Downwind distance. | double | 100 | Length | [m]
Time | Time since start of the release. | double | 60 | Time | [s]
Resolution | Output resolution of results and gird. | Resolution | Medium |  |
Elevation | Height of interest above ground level. | double | 1 | Length | [m]
SpecialConcentration | Pre-defined concentration. | SpecialConcentration | Min |  |
Concentration | Concentration (vol fraction). Not used unless SpecialConcentration is undefined. | double | 0 | Fraction | [fraction]
CrosswindDistance | Crosswind distance. | double | 0 | Length | [m]
ContourType | List of view types. | ContourType | Footprint |  |
LFLFractionValue | Value of the lower flammable limit fraction. | double | 0.5 | Fraction | [fraction]
ComponentToTrackIndex | Index of the component to track. | int | -1 |  |
ComponentToTrackName | Name of the property to track. | string |  |  |

Back to reference home

### DispersionParameters

Dispersion Parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
RelativeTolerance | Relative tolerance. | double | 0.001 | Fraction | [fraction]
RainoutThermoFlag | Rainout and equilibrium method. | RainoutThermoFlag | RainoutNonEquilibrium |  |
FixedStepSize | Fixed step size. | double | 0.01 | Time | [s]
OutputStepMultiplier | Ratio to increase step size. | double | 1.2 |  |
MaxDispersionDistance | Absolute maximum distance for dispersion calculations. | double | 50000 | Length | [m]
MaxDispersionHeight | Absolute maximum height for dispersion calculations. | double | 1000 | Length | [m]
NumberOfReleaseObservers | Number of release observers for time-varying releases. | int | 5 |  |
NumberOfPoolObservers | Number of pool observers for rainout cases. | int | 10 |  |
AveragingTime | Core averaging time. | double | 18.75 | Time | [s]
LFLFractionToStop | The lowest LFL fraction of interest. | double | 0.5 | Fraction | [fraction]

Back to reference home

### DispersionRecord

Observer dispersion record at a given time.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ObserverIndex | Id of the observer associated with this record. | int |  |  |
CentrelineConcentration | Centreline concentraton (molar). | double |  | Fraction | [fraction]
DownwindDistance | Distance downwind. | double |  | Length | [m]
Time | Time after the start of the release. | double |  | Time | [s]
CentrelineConcentrationUncorrected | Uncorrected centreline concentraton (molar). | double |  | Fraction | [fraction]
CrosswindRadius | Crosswind radius. | double |  | Length | [m]
VerticalRadius | Vertical radius. | double |  | Length | [m]
CrosswindExponent | Crosswind exponent. | double |  |  |
VerticalExponent | Vertical exponent. | double |  |  |
Theta | Centreline angle from horizontal. | double |  | Angle | [Radians]
CentrelineHeight | Centreline height. | double |  | Length | [m]
LiquidFraction | Liquid mass fraction. | double |  | Fraction | [fraction]
VapourTemperature | Vapour temperature. | double |  | Temperature | [K]
MassConc | Mass concentration. | double |  | Density | [kg/m3]
Velocity | Velocity. | double |  | Velocity | [m/s]
MassFlow | Mass flow rate (non-instantaneous). | double |  | MassFlowRate | [kg/s]
InstCon | Instantanous or continuous (time-varying not permitted). | DynamicType | Unset |  |
ProfileFlag | Profile flag. | int |  |  |
ElevFlag | Elevation flag. | int |  |  |
RhoCloud | Cloud density. | double |  | Density | [kg/m3]
LiqTemp | Liquid temperature. | double |  | Temperature | [K]
EffectiveWidth | Effective width. | double |  | Length | [m]
EffectiveHeight | Effective height. | double |  | Length | [m]
PassTranDist | Passive transition distance. | double |  | Length | [m]
DownwindRadius | Downwind radius. | double |  | Length | [m]
DropletDiameter | Droplet diameter. | double |  | Length | [m]
DropletHeight | Droplet height. | double |  | Length | [m]
DropletDistance | Droplet downwind distance. | double |  | Length | [m]
Mass | Mass (instantaneous). | double |  | Mass | [kg]

Back to reference home

### ExplosionConfinedVolume

Confined explosion volume data.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ConfinedStrength | Explosion strength of confined volume. | double | 7 |  |
ConfinedVolume | Explosion volume of confined source. | double | 1 | Volume | [m3]

Back to reference home

### ExplosionOutputConfig

Explosion output configuration.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
OverpressureLevel | Overpressure of interest for explosions. | double | 2068 | Pressure | [Pa]
MEConfinedMethod | Explosion ME confined method where Uniform Confined = 3, User Defined = 1. | MEConfinedMethod | UniformConfined |  |

Back to reference home

### ExplosionOverpressureResult

Worst case explosion summary results for a given overpressure.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Overpressure | Overpressure for this result. | double |  | Pressure | [Pa]
ExplosionCentre | Centre of the explosion (distance downwind). | double |  | Length | [m]
MaximumDistance | Maximum distance to overpressure (downwind edge). | double |  | Length | [m]
ExplodedMass | Flammable mass used in the explosion. | double |  | Mass | [kg]
IgnitionTime | Time of ignition. | double |  | Time | [s]
Radius | Radius of the explosion at the explosion centre. | double |  | Length | [m]

Back to reference home

### ExplosionParameters

Explosion parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ExplosionUniformStrength | Explosion strength for uniform unconfined (Multi-energy method). | double | 10.0 |  |

Back to reference home

### FlameRecord

Flame geometry description.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
xCoordinate | Distance downwind. | double |  | Length | [m]
zCoordinate | Height above ground. | double |  | Length | [m]
rCoordinate | Flame radius. | double |  | Length | [m]
phiCoordinate | Inclination from vertical. | double |  | Angle | [Radians]

Back to reference home

### FlameResult

Fire results.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Time | Time of fire, or duration if initial rate. | double |  | Time | [s]
SurfaceEmissivePower | Surface emissive power of flame. | double |  | RadiationIntensity | [W/m2]
FireType | Fire type (Fireball, pool, cone jet, API jet, Multi point source jet). | FireType | NoFire |  |
FlameLength | Length of the flame. | double |  | Length | [m]
FlameDiameter | Diameter of the flame. | double |  | Length | [m]

Back to reference home

### FlammableOutputConfig

Fire and radiation output configuration.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Position | Position used for radiation calculations (including contours). | LocalPosition | LocalPosition() |  |
RadiationType | Radiation type. | RadiationType | Intensity |  |
ContourType | Plane orientation for contouring. | ContourType | FootprintEllipse |  |
RadiationLevel | Radiation level (could be dose, probit, intensity, etc). | double | 4000 |  |
RadiationResolution | Spatial resolution for radiation calculations. | Resolution | Medium |  |
Transect | Definition of line segment of interest for radiation transects. | Transect | Transect() |  |
FixedOrientation | If disabled orientation optimized to give maximum radiation. | int | 0 |  |
Orientation | Horizontal angle with respect to the downwind direction. | double | 0 | Angle | [Radians]
FixedInclination | If disabled inclination optimized to give maximum radiation. | int | 0 |  |
Inclination | Angle between the normal to the surface and the horizontal plane. | double | 0 |  |

Back to reference home

### FlammableParameters

Fire and radiation parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
MaxExposureDuration | Maximum exposure duration to radiation effects. | double | 20 | Time | [s]
RadiationRelativeTolerance | Relative tolerance for radiation calculations. | double | 0.01 | Fraction | [fraction]
PoolFireType | Type of pool fire modelling. | PoolFireType | Late |  |
JetFireAutoSelect | Option to automatically select jet fire modelling. | bool | false |  |
TimeAveraging | Average between 0 s and the time of interest?. | bool | true |  |
TimeOfInterest | Time of interest. | double | 20 |  |

Back to reference home

### FlareStack

Contains inputs required for running a flare stack calculation.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
FlareStackMaterial | Material being flared. | Material |  |  |
FlareStackFluidState | Fluid state in flare stack (driving the outflow). | State |  |  |
FlareStackHeight | Flare stack tip height above ground level. | double |  | Length | [m]
FlareStackTipDiameter | Diameter of flare stack tip. | double |  | Length | [m]
FlareStackConditions | Phase of the stored material. | VesselConditions | PureGas |  |

Back to reference home

### FlashResult

Physical properties for a material generated at a particular pressure and temperature.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Pressure | Pressure. | double |  | Pressure | [Pa]
Temperature | Temperature. | double |  | Temperature | [K]
LiquidMoleFraction | Liquid fraction (mole). | double |  | Fraction | [fraction]
LiquidDensity | Density of liquid phase. | double |  | Density | [kg/m3]
VapourDensity | Density of vapour phase. | double |  | Density | [kg/m3]
LiquidEntropy | Entropy of liquid phase. | double |  | Entropy | [J/kg.K]
VapourEntropy | Entropy of vapour phase. | double |  | Entropy | [J/kg.K]
LiquidEnthalpy | Enthalpy of liquid phase. | double |  | SpecificEnergy | [J/kg]
VapourEnthalpy | Enthalpy of vapour phase. | double |  | SpecificEnergy | [J/kg]
FluidPhase | Vapour, liquid or two-phase. | Phase | Unset |  |
BubblePointPressure | Mixture bubble point pressure at given temperature. | double |  | Pressure | [Pa]
BubblePointTemperature | Mixture bubble point temperature at given pressure. | double |  | Temperature | [K]
DewPointPressure | Mixture dew point pressure at given temperature. | double |  | Pressure | [Pa]
DewPointTemperature | Mixture dew point temperature at given pressure. | double |  | Temperature | [K]
TotalFluidDensity | Total fluid density (mass-based). | double |  | Density | [kg/m3]
LiquidMassFraction | Liquid mass fraction. | double |  | Fraction | [fraction]

Back to reference home

### Interval

A range of permitted values for the design variable when carrying out a design optimization workflow.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
LowerBoundary | The lower boundary of the interval. | double |  |  |
UpperBoundary | The upper boundary of the interval. | double |  |  |

Back to reference home

### Leak

Leak scenario.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
HoleDiameter | Diameter of the hole. | double |  | Length | [m]
HoleHeightFraction | Location of the hole above the base of the vessel as a fraction of vessel height. | double | 0.5 | Fraction | [fraction]

Back to reference home

### LineRupture

Line rupture scenario.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
PipeDiameter | Internal diameter of the short pipe. | double |  | Length | [m]
PipeLength | Length of the short pipe. | double |  | Length | [m]
PipeRoughness | Roughness of the short pipe. | double | 0.000045 | Length | [m]
PipeHeightFraction | Location of the pipe connection above the base of the vessel. | double | 0.5 | Fraction | [fraction]

Back to reference home

### LocalPosition

Position with reference to some arbitrary local origin and axes.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
X | X. | double | 0 | Length | [m]
Y | Y. | double | 0 | Length | [m]
Z | Z. | double | 0 | Length | [m]

Back to reference home

### Material

Material.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Name | Material name. | string |  |  |
ComponentCount | Number of components in the material. | int | 1 |  |
Components | Constituent components. | MaterialComponent |  |  |
PropertyTemplate | Property used template for material. | PropertyTemplate | PhastMC |  |

Back to reference home

### MaterialComponent

Constituent component of a material.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Name | Name of the component. | string |  |  |
MoleFraction | Mole fraction of the component in the material. | double | 1 | Fraction | [fraction]

Back to reference home

### MaterialComponentData

Material component data.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Name | Name of the material component data. | string |  |  |
DipprVersion | DIPPR version number. | int |  |  |
CasId | CAS id. | int |  |  |
DataItem | List of data items defining the material component data. | MaterialComponentDataItem |  |  |

Back to reference home

### MaterialComponentDataItem

Material component data item.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Description | Material component data item description. | string |  |  |
EquationNumber | Equation number. | int |  |  |
EquationString | Equation string. | string |  |  |
EquationCoefficients | Equation coefficients. | double |  |  |
CalculationLimits | Calculation limits. | double |  |  |
SupercriticalExtrapolation | Super critical extrapolation flag. | double | 0 |  |
FractionTc | Fraction of critical temperature. | double | 1 |  |

Back to reference home

### MixtureConstantPropertiesResult

Mixture constant properties.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
LowerFlammabilityLimit | Description of new property. | double |  | Fraction | [fraction]
UpperFlammabilityLimit | Description of new property. | double |  | Fraction | [fraction]
CriticalPressure | Critical pressure. | double |  | Pressure | [Pa]
CriticalTemperature | Critical temperature. | double |  | Temperature | [K]
FlammableToxicFlag | Flammable or toxic flag. | FlammableToxic | Inert |  |
FlashPoint | Flash point. | double |  | Temperature | [K]
HeatCombustion | Heat of combustion. | double |  |  |
MaximumBurnRate | Maximum burn rate. | double |  |  |
MaximumSEP | Maximum surface emissive power. | double |  |  |
MolecularWeight | Molecular weight. | double |  | MolecularWeight | [kg/kmol]
BubblePoint | Bubble point at atmospheric pressure. | double |  | Temperature | [K]
PoolFireBurnRateLength | Pool fire burn rate length. | double |  | Length | [m]
LuminousSmokyFlame | Luminous or smoky flame. | LuminousSmokyFlame | General |  |
DewPoint | Dew point at atmospheric pressure. | double |  | Temperature | [K]
EmissivePowerLengthScale | Emissive power length scale. | double |  | Length | [m]
LaminarBurningVelocity | Laminar burning velocity of mixture. | double |  | Velocity | [m/s]

Back to reference home

### Pipe

All pipe types.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Nodes | Pipeline nodes. | LocalPosition |  |  |
NodeCount | Number of nodes. | int |  |  |
Diameter | Pipe diameter. | double |  | Length | [m]
Roughness | Pipe roughness. | double | 4.5e-5 | Length | [m]
Material | Material. | Material |  |  |
State | Fluid state. | State |  |  |
PumpedInflow | Upstream pumped inflow. | double | 0 | MassFlowRate | [kg/s]

Back to reference home

### PipeBreach

Breach in a long pipe (runs GSPP / PBRK).

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
DistanceDownstream | Distance downstream. | double |  | Length | [m]
RelativeAperture | Breach relative aperture. | double | 1 | Fraction | [fraction]

Back to reference home

### PoolFireFlameResult

Pool fire flame result.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
PoolZoneSEP | Surface emissive power from each of the two pool fire zones. | double |  | RadiationIntensity | [W/m2]

Back to reference home

### PoolRecord

Pool results at a given time.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Time | Time since rainout. | double |  | Time | [s]
MassSpilt | Mass spilled. | double |  | Mass | [kg]
MassVaporised | Mass vaporised. | double |  | Mass | [kg]
MassDissolved | Mass dissolved. | double |  | Mass | [kg]
MassRemaining | Mass remaining. | double |  | Mass | [kg]
VapourisationRate | Vapourisation rate. | double |  | MassFlowRate | [kg/s]
SolutionRate | Solution rate. | double |  | MassFlowRate | [kg/s]
EffectiveRadius | Effective radius. | double |  | Length | [m]
Depth | Pool depth. | double |  | Length | [m]
Temperature | Pool temperature. | double |  | Temperature | [K]
SpillRate | Spill rate. | double |  | MassFlowRate | [kg/s]
ActualRadius | Actual pool radius. | double |  | Length | [m]
PoolCentre | Pool centre. | double |  | Length | [m]

Back to reference home

### PoolVapourisationParameters

Pool vapourisation parameters.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ToxicsCutoffRate | Cutoff rate for toxic materials. | double | 0.001 | MassFlowRate | [kg/s]
FlammableCutoffRate | Cutoff rate for flammable materials. | double | 0.1 | MassFlowRate | [kg/s]
RelativeTolerance | Relative tolerance. | double | 0.001 | Fraction | [fraction]

Back to reference home

### PropertiesDipprPT1

Properties DIPPR part 1.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
TotalStepsUsed | Description of new property. | int |  |  |
Pressure | Array of pressure values. | double |  | Pressure | [Pa]
Temperature | Array of temperatures. | double |  | Temperature | [K]
MassComp | Mass of the composition. | double |  |  |
MWComp | Description of new property. | double |  |  |
DangerousToxicLoad | Dangerous Toxic Load. | double |  |  |
PCrit | Critical pressure . | double |  | Pressure | [Pa]
TCrit | Description of new property. | double |  | Temperature | [K]
TMelt | Melting point. | double |  | Temperature | [K]
TBoil | Boiling point. | double |  | Temperature | [K]
TFlash | Flash point. | double |  | Temperature | [K]
HComb | Heat of combustion. | double |  |  |
LFL | Lower flammability limit - vol%. | double |  |  |
UFL | upper flammability limit. | double |  |  |
CombAt | Combustion coefficient At. | double |  |  |
CombCt | Combustion coefficient Ct. | double |  |  |

Back to reference home

### PropertiesDipprPT2

Properties DIPPR part 2.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
IgnitionCategory | Ignotion category. | double |  |  |
LamBurnVelocity | Laminar burn velocity. | double |  | Velocity | [m/s]
RhoLiqSat | Saturated liquid density. | double |  |  |
PVap | Vapour pressure. | double |  |  |
CpIdeal | Ideal gas heat capacity. | double |  |  |
CpLiq | Liquid heat capacity. | double |  |  |
CpRatio | Ratio of specific heat capacities. | double |  |  |
Virial2 | Second virial coefficient. | double |  |  |
MuVap | Vapour viscosity. | double |  |  |
MuLiq | Liquid viscosity. | double |  |  |
KVap | Vapour thermal conductivity. | double |  |  |
KLiq | Liquid thermal conductivity. | double |  |  |
HeatVap | Heat of vaporisation. | double |  |  |
HVapIdeal | Ideal gas enthalpy. | double |  |  |
HLiqSat | Saturated liquid enthalpy. | double |  |  |

Back to reference home

### PropertiesDipprPT3

Properties DIPPR part 3.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
SVapSat | Saturated vapour entropy. | double |  |  |
SLiqSat | Saturated liquid entropy. | double |  |  |
RhoVapSat | Saturated vapour density. | double |  |  |
HVapSat | Saturated vapour enthalpy. | double |  |  |
RhoVapAtm | Vapour density at 1 atm. | double |  |  |
TVapSat | Saturated vapour temperature. | double |  | Temperature | [K]
SurfaceTension | Surface tension. | double |  |  |
RhoLiq | Liquid density. | double |  |  |
HLiq | Liquid enthalpy. | double |  |  |
SLiq | Liquid entropy. | double |  |  |
RhoVap | Vapour density. | double |  |  |
HVap | Vapour enthalpy. | double |  |  |
SVap | Vapour entropy. | double |  |  |
ZVap | Vapour compressibility. | double |  |  |
SonicVelVap | Vapour sonic velocity. | double |  |  |

Back to reference home

### PropertiesDnvPT1

Properties DNV part 1.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
TotalStepsUsed | Total PT steps. | int |  |  |
Pressure | Pressure. | double |  | Pressure | [Pa]
Temperature | Temperature. | double |  | Temperature | [K]
MassComp | Composition. | double |  |  |
FlamTox | Flammable/toxic flag. | double |  |  |
LumSmoky | Luminous smoky flame flag. | double |  |  |
SepMax | Maximum surface emissive power. | double |  |  |
SepLength | Emissive power length scale. | double |  |  |
PoolFireBurnRate | Pool fire burn rate length. | double |  | Length | [m]
BurnRateMax | Maximum burn rate. | double |  |  |
TNTEfficiency | TNT explosion efficiency. | double |  |  |
ERPG1 | ERPG1 concentration. | double |  |  |
ERPG2 | ERPG2 concentration. | double |  |  |
ERPG3 | ERPG3 concentration. | double |  |  |
IDLH | IDLH concentration. | double |  |  |
STEL | STEL concentration. | double |  |  |

Back to reference home

### PropertiesDnvPT2

Properties DNV part 2.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ToxicN | Toxic property N. | double |  |  |
ToxicA | Toxic property A. | double |  |  |
ToxicB | Toxic property B. | double |  |  |
HIntRange | Enthalpy interpolation range. | double |  | Temperature | [K]
LiqWaterSurfTen | Liquid water surface tension. | double |  |  |
SolubilityWater | Solubility in water. | double |  |  |
HeatSolution | Heat of solution. | double |  |  |
WaterReactionFlag | Reaction with water flag. | double |  |  |
AlphaWater | Water heat transfer coefficient. | double |  |  |
ProbDelayedExpCont | Probability of delayed explosion (continuous). | double |  |  |
ProbDelayedExpInst | Probability of delayed explosion (instantaneous & QI). | double |  |  |
ProbDelayedFlashFireCont | Probability of delayed flash fire (continuous). | double |  |  |
ProbDelayedFlashFireInst | Probability of delayed flash fire (instantaneous & QI). | double |  |  |
ProbDelayedIgnition | Probability of delayed ignition (cont., inst. & QI). | double |  |  |
ProbEarlyIgnitionCont | Probability of early ignition (continuous). | double |  |  |

Back to reference home

### PropertiesDnvPT3

Properties DNV part 3.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ProbEarlyIgnitionInst | Probability of early ignition (instantaneous & QI). | double |  |  |
ProbEarlyPoolFire | Probability of early pool fire. | double |  |  |
ProbFireball | Probability of fireball. | double |  |  |
ProbFreeJetExp | Probability of free jet explosion. | double |  |  |
ProbFreeJetFire | Probability of free jet fire. | double |  |  |
ProbLatePoolFire | Probability of late pool fire. | double |  |  |
DimerCoeff | Dimer coefficient. | double |  |  |
TrimerCoeff | Trimer coefficient. | double |  |  |
HexamerCoeff | Hexamer coefficient. | double |  |  |
OctamerCoeff | Octamer coefficient. | double |  |  |
HLiqWater | Liquid water enthalpy . | double |  |  |
PVapSatLn | Natural log of the saturated vap. pressure. | double |  |  |
DPVapSatLnDT | First derivative of the natural log of sat.vap.pres. w.r.t. temp. | double |  |  |
D2PVapSatLnDT2 | Second der. of the natural log. of sat.vap.pres. w.r.t. temp. | double |  |  |

Back to reference home

### PTRange

Range of pressure and temperature.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
PressureLow | Start value of pressure range. | double |  | Pressure | [Pa]
PressureHigh | End value of pressure range. | double |  | Pressure | [Pa]
TempLow | Start value of temperature range. | double |  | Temperature | [K]
TempHigh | End value of temperature range. | double |  | Temperature | [K]
StepsPerVariable | Description of new property. | int | 20 |  |

Back to reference home

### RadiationRecord

Radiation type and level at specific point (x,y,z).

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Position | Cartesian coordinates of a specific point. | LocalPosition |  |  |
RadiationType | Type of radiation result. | RadiationType | Unset |  |
RadiationResult | Radiation level. | double |  |  |

Back to reference home

### ReliefValve

Relief valve scenario.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ReliefValveConstrictionDiameter | Constriction at the upstream end of the pipe. | double |  | Length | [m]
PipeDiameter | Internal diameter of the short pipe. | double |  | Length | [m]
PipeLength | Length of the short pipe. | double |  | Length | [m]
PipeRoughness | Roughness of the short pipe. | double | 0.000045 | Length | [m]
PipeHeightFraction | Location of the pipe connection above the base of the vessel. | double | 0.5 | Fraction | [fraction]

Back to reference home

### ScalarUdmOutputs

Scalar UDM output values required for post processing dispersion results.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ObserverCount | Number of observers. | int |  |  |
RecordCount | Number of records. | int |  |  |
CloudType | Cloud type. | DynamicType | Unset |  |
MinimumConcentration | Minimum concentration. | double |  | Fraction | [fraction]
WindPower | Wind power. | double |  |  |
FrictionVelocity | Friction velocity. | double |  | Velocity | [m/s]
DispersionReleaseDuration | When is the last release observer released?. | double |  | Time | [s]

Back to reference home

### ShortPipeRupture

Short pipe rupture scenario.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
PipeLength | Length of short pipe. | double |  | Length | [m]
PipeDiameter | Inner diameter of the short pipe. | double |  | Length | [m]
PipeRoughness | Roughness of the short pipe. | double | 0.000045 | Length | [m]
PipeHeightFraction | Location of the pipe connection above the base of the vessel. | double | 0.5 | Fraction | [fraction]

Back to reference home

### State

Description of the fluid state.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Pressure | Absolute pressure of the fluid. | double |  | Pressure | [Pa]
Temperature | Temperature of the fluid. | double |  | Temperature | [K]
LiquidFraction | Mole fraction of liquid in the fluid. | double |  | Fraction | [fraction]
FlashFlag | How fluid equilibrium is specified. | FluidSpec | TP |  |
MixtureModelling | Mixture modelling: Pseudo-component (=0), MC single aerosol (=1), MC multiple aerosol (=3). | MixtureModelling | PC |  |

Back to reference home

### Structure

A building or process plant structure.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
ExplosionConfinedVolume | Explosion confined volume. | ExplosionConfinedVolume |  |  |
Location | Location of the structure. | LocalPosition | LocalPosition() |  |

Back to reference home

### Substrate

The ground over which a release is taking place.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
SurfaceRoughness | Surface roughness length. | double | 0.183 | Length | [m]
SurfaceType | Dispersing surface type. | SurfaceType | Land |  |
PoolSurfaceType | Pool or bund surface type. | PoolSurfaceType | Concrete |  |
Bund | Bund data. | Bund | Bund() |  |

Back to reference home

### ThermoPathRecord

Contains a point on the thermodynamic depressurization trajectory for each of isothermal, isentropic and isenthalpic assumptions.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Pressure | Absolute pressure value at specific point on the thermodynamic path. | double |  | Pressure | [Pa]
BubbleTemperature | Bubble point temperature at given pressure. | double |  | Temperature | [K]
DewTemperature | Dew point temperature at given pressure. | double |  | Temperature | [K]
IsentropicTemperature | Temperature at given pressure following isentropic depressurization. | double |  | Temperature | [K]
IsenthalpicTemperature | Temperature at given pressure following isenthalpic depressurization. | double |  | Temperature | [K]
IsothermalTemperature | Temperature at given pressure following isothermal depressurization. | double |  | Temperature | [K]

Back to reference home

### ToxicRecord

Toxic result: dose, probit or lethality.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Position | Cartesian coordinates of a specific point. | LocalPosition |  |  |
ToxicResultType | Type of toxic result. | ToxicResultType | Unset |  |
ToxicResult | Dose, probit or lethality level. | double |  |  |

Back to reference home

### Transect

Definition of transect (line segment).

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
TransectStartPoint | Cartesian coordinates of start point of transect. | LocalPosition | LocalPosition() |  |
TransectEndPoint | Cartesian coordinates of end point of transect. | LocalPosition | LocalPosition() |  |

Back to reference home

### Vessel

All vessel types.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
State | Fluid specification (at liquid surface). | State |  |  |
Diameter | Internal diameter of the vessel. | double | 2 | Length | [m]
Height | Internal height of the vessel. | double | 4 | Length | [m]
Length | Internal length of the vessel. | double | 4 | Length | [m]
Width | Internal width of the vessel. | double | 0.0 | Length | [m]
Shape | Shape. | VesselShape | HorizontalCylinder |  |
Material | Material. | Material |  |  |
VesselConditions | Vessel conditions. | VesselConditions | Unset |  |
LiquidFillFractionByVolume | The liquid fill fraction in the vessel by volume. | double | 0.0 | Fraction | [fraction]

Back to reference home

### VesselLeakMaxFlammableCloudResults

Results for a linked run of vessel leak followed by dispersion and views from the cloud.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
DischargeRate | Leak discharge mass rate. | double |  | MassFlowRate | [kg/s]
ExpandedTemperature | Post atmospheric expansion temperature. | double |  | Temperature | [K]
Phase | Post atmospheric expansion fluid phase. | Phase | Unset |  |
LFLExtent | Maximum downwind distance to LFL. | double |  | Length | [m]
LFLArea | Horizontal area within LFL envelope. | double |  | Area | [m2]
LFLHeight | Height of maximum LFL extent. | double |  | Length | [m]

Back to reference home

### VesselRuleSet

Rule set for generating scenarios from a vessel.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
UseTimeVarying | Use time-varying leaks. | bool | false |  |
IncludeCatastrophicRupture | Include catastrophic rupture scenarios. | bool | false |  |
HoleDiameters | Hole diameters for leaks. | double |  | Length | [m]
NumberOfDiameters | Number of hole diameters (<= 5). | int | 3 |  |

Back to reference home

### VesselSphere

Vessel sphere.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
State | The thermodynamic state of the fluid. | State |  |  |
Material | Material. | Material |  |  |
MassInventory | Mass inventory. | double |  | Mass | [kg]

Back to reference home

### Weather

A sum of the meteorological conditions at the time.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
WindSpeed | Wind speed at reference height. | double | 5 | Velocity | [m/s]
StabilityClass | Stability class. | AtmosphericStabilityClass | StabilityD |  |
Temperature | Ambient temperature. | double | 283 | Temperature | [K]
RelativeHumidity | Relative humidity. | double | 0.7 | Fraction | [fraction]
MixingLayerHeight | Mixing layer height. | double | 800 | Length | [m]
SolarRadiation | Solar radiation flux. | double | 500 | RadiationIntensity | [W/m2]

Back to reference home

### WeatherStationData

Compiled data from weather live service.

#### Properties

Name | Description | Type | Default | Unit class | SI Unit
Latitude | Latitude measured in degrees. | double | 0.0 | Angle | [Radians]
Longitude | Longitude coordinate in degrees. | double | 0.0 | Angle | [Radians]
DayNightOption | Indicates if it is day or night. | DayNight | Unset |  |
Cloudiness | Cloud coverage in percentage. | double |  |  |
WindSpeed | Wind speed at reference height. | double |  | Velocity | [m/s]
Temperature | Ambient temperature. | double |  | Temperature | [K]
RelativeHumidity | Relative humidity. | double |  | Fraction | [fraction]
SolarRadiation | Solar radiation flux. | double | 500 | RadiationIntensity | [W/m2]

Back to reference home

### Calculations

The following is a list of available calculations.

- ConcentrationAtPoint
- ConvertCompositionMassToMole
- ConvertCompositionMoleToMass
- Dispersion
- DistancesAndEllipsesToRadiationLevels
- DistancesAndEllipsesToRadiationLevelsForPoolFires
- DistancesAndFootprintsToConcentrationLevels
- DistancesToConcLevels
- DistancesToRadiationLevels
- DistanceToRadiation
- Fireball
- FlareStackDesigner
- Flash
- GetMassFromVessel
- JetFire
- LateExplosion
- LateExplosionToOPLevels
- LethalityDistance
- LoadMassInventoryVesselForLeakScenario
- LoadMassInventoryVesselForLineRuptureScenario
- LoadMassInventoryVesselForReliefValveScenario
- LongPipeBreach
- MaxConcDistance
- MaxConcFootprint
- MaxDistanceToConc
- MixtureConstantProperties
- PoolFire
- RadiationAtAPoint
- RadiationAtAPointForPoolFires
- RadiationAtPoints
- RadiationAtPointsForPoolFires
- RadiationContour
- RadiationTransect
- RadiationTransectForPoolFires
- ReliefValveMinTemperature
- SetMixingLayerHeight
- SetPhaseToReleaseForLeakScenario
- SetPhaseToReleaseForLineRuptureScenario
- SetPhaseToReleaseForReliefValveScenario
- SetReleaseElevationForScenario
- SideviewAtTime
- TankFire
- UDSSetLiqFracFromTemperature
- UDSSetTemperatureFromLiqFrac
- UDSTemperatureLimits
- UserDefinedSourceLinkedRun
- VesselCatastrophicRupture
- VesselLeak
- VesselLeakFlammableLinkedRun
- VesselLeakFlammableLinkedRunH2
- VesselLeakFlamToxSimpleLinkedRun
- VesselLeakLinkedRun
- VesselLeakMaxFlammableCloud
- VesselLineRupture
- VesselLineRuptureLinkedRun
- VesselReliefValve
- VesselReliefValveLinkedRun
- VesselState

Back to reference home

### ConcentrationAtPointCalculation

Calculate the concentration at a specified point in time.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
Concentration | Concentration at a position of interest. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of ConcentrationAtPointCalculation.

The following shows the inputs required to instantiate an instance of the ConcentrationAtPointCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`concentration_at_point_calculation = ConcentrationAtPointCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### ConvertCompositionMassToMoleCalculation

Converts mixture composition from mass to mole basis.

#### Input data

Name | Description | Type
Mixture | Mixture to have composition converted. | Material
CompositionMass | Input composition of mixture in mass basis. | double
CompositionMassCount | Number of components in mixture. | int

#### Output data

Name | Description | Type
CompositionMole | Output composition of mixture in mole basis. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of ConvertCompositionMassToMoleCalculation.

The following shows the inputs required to instantiate an instance of the ConvertCompositionMassToMoleCalculation class:

`mixture = Mixture(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`composition_mass =`
`composition_mass_count = Length of the composition_masss list`

`convert_composition_mass_to_mole_calculation = ConvertCompositionMassToMoleCalculation(mixture: Material, composition_mass: list[float], composition_mass_count: int)`

Back to reference home

### ConvertCompositionMoleToMassCalculation

Converts mixture composition from mole to mass basis.

#### Input data

Name | Description | Type
Mixture | Mixture to have composition converted. | Material
CompositionMoles | Input composition of mixture in mole basis. | double
CompositionMolesCount | Number of components in mixture. | int

#### Output data

Name | Description | Type
CompositionMass | Output composition of mixture in mass basis. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of ConvertCompositionMoleToMassCalculation.

The following shows the inputs required to instantiate an instance of the ConvertCompositionMoleToMassCalculation class:

`mixture = Mixture(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`composition_moles =`
`composition_moles_count = Length of the composition_moless list`

`convert_composition_mole_to_mass_calculation = ConvertCompositionMoleToMassCalculation(mixture: Material, composition_moles: list[float], composition_moles_count: int)`

Back to reference home

### DispersionCalculation

Outdoor dispersion calculations.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
Substrate | The dispersing surface. | Substrate
DischargeResult | Discharge / source term definition. | DischargeResult
DischargeRecords | Discharge / source term definition. | DischargeRecord
DischargeRecordCount | Number of discharge records. | int
Weather | Weather. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double

#### Output data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
WriteDispersionRecordCallback | Array of Dispersion records. | DispersionRecord
WritePoolRecordCallback | Array of Pool records. | PoolRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DispersionCalculation.

The following shows the inputs required to instantiate an instance of the DispersionCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`discharge_result = DischargeResult(expansion_energy: float, release_mass: float, height: float, angle: float, hole_diameter: float, release_type: DynamicType, pre_dilution_air_rate: float=0)`
`discharge_records = discharge_records: list[DischargeRecords]`
`discharge_record_count = Length of the discharge_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`
`end_point_concentration = Value of type float`

`dispersion_calculation = DispersionCalculation(material: Material, substrate: Substrate, discharge_result: DischargeResult, discharge_records: list[DischargeRecord], discharge_record_count: int, weather: Weather, dispersion_parameters: DispersionParameters, end_point_concentration: float)`

Back to reference home

### DistancesAndEllipsesToRadiationLevelsCalculation

Distances and ellipses to prescribed radiation intensity levels.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfigs | Settings of radiation calculations. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int

#### Output data

Name | Description | Type
Distances | Distances to radiation levels. | double
WriteContourPointCallback | Contour points of radiation ellipses to radiation levels. | LocalPosition
NContourPoints | Number of contour points per radiation level. | int
Areas | Area of the ellipse to radiation levels. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistancesAndEllipsesToRadiationLevelsCalculation.

The following shows the inputs required to instantiate an instance of the DistancesAndEllipsesToRadiationLevelsCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`

`distances_and_ellipses_to_radiation_levels_calculation = DistancesAndEllipsesToRadiationLevelsCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int)`

Back to reference home

### DistancesAndEllipsesToRadiationLevelsForPoolFiresCalculation

Distances and ellipses to prescribed radiation intensity levels for pool fires.

#### Input data

Name | Description | Type
PoolFireFlameResult | Scalar pool fire flame results. | PoolFireFlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfigs | Settings of radiation calculations. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int

#### Output data

Name | Description | Type
Distances | Distances to radiation levels. | double
WriteContourPointCallback | Contour points of radiation ellipses to radiation levels. | LocalPosition
NContourPoints | Number of contour points per radiation level. | int
Areas | Area of the ellipse to radiation levels. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistancesAndEllipsesToRadiationLevelsForPoolFiresCalculation.

The following shows the inputs required to instantiate an instance of the DistancesAndEllipsesToRadiationLevelsForPoolFiresCalculation class:

`pool_fire_flame_result = PoolFireFlameResult(pool_zone_sep: list[float])`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`

`distances_and_ellipses_to_radiation_levels_for_pool_fires_calculation = DistancesAndEllipsesToRadiationLevelsForPoolFiresCalculation(pool_fire_flame_result: PoolFireFlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int)`

Back to reference home

### DistancesAndFootprintsToConcentrationLevelsCalculation

Distances and maximum footprints to prescribed concentration of interest levels.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs (i.e. one per scenario/weather). | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfigs | Dispersion view configurations. | DispersionOutputConfig
DispersionOutputConfigCount | Number of dispersion view configurations. | int
DispersionParameters | Dispersion parameters. | DispersionParameters
Material | Material with post-discharge composition. | Material

#### Output data

Name | Description | Type
ConcsUsed | Concentrations of interest. | double
NContourPoints | Number of contour points per concentration level. | int
AreasContour | Areas of footprint contours. | double
DistancesConcentration | Maximum distances downwind per concentration level. | double
WriteContourPointCallback | Contour points of maximum footprints to concentration level. | LocalPosition
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistancesAndFootprintsToConcentrationLevelsCalculation.

The following shows the inputs required to instantiate an instance of the DistancesAndFootprintsToConcentrationLevelsCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_configs = dispersion_output_configs: list[DispersionOutputConfigs]`
`dispersion_output_config_count = Length of the dispersion_output_configs list`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`

`distances_and_footprints_to_concentration_levels_calculation = DistancesAndFootprintsToConcentrationLevelsCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_configs: list[DispersionOutputConfig], dispersion_output_config_count: int, dispersion_parameters: DispersionParameters, material: Material)`

Back to reference home

### DistancesToConcLevelsCalculation

Calculates the maximum distance to a number of concentration levels.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfigs | Concentration levels. | DispersionOutputConfig
DispersionOutputConfigCount | Number of concentration levels. | int
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ConcUsed | Concentrations of interest. | double
Distances | Distances to concentration of interest. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistancesToConcLevelsCalculation.

The following shows the inputs required to instantiate an instance of the DistancesToConcLevelsCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_configs = dispersion_output_configs: list[DispersionOutputConfigs]`
`dispersion_output_config_count = Length of the dispersion_output_configs list`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`distances_to_conc_levels_calculation = DistancesToConcLevelsCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_configs: list[DispersionOutputConfig], dispersion_output_config_count: int, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### DistancesToRadiationLevelsCalculation

Distances to prescribed radiation intensity levels.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfigs | Flammable output configurations. | FlammableOutputConfig
FlammableOutputConfigCount | Number of flammable output configurations. | int

#### Output data

Name | Description | Type
Distances | Distances to radiation level. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistancesToRadiationLevelsCalculation.

The following shows the inputs required to instantiate an instance of the DistancesToRadiationLevelsCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`

`distances_to_radiation_levels_calculation = DistancesToRadiationLevelsCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int)`

Back to reference home

### DistanceToRadiationCalculation

Distance to radiation calculation.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
Distance | Distance to radiation level. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of DistanceToRadiationCalculation.

The following shows the inputs required to instantiate an instance of the DistanceToRadiationCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`distance_to_radiation_calculation = DistanceToRadiationCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### FireballCalculation

Fireball calculation.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
State | The thermodynamic conditions. | State
DischargeRecords | Discharge / source term definition. | DischargeRecord
DischargeRecordCount | Number of discharge records. | int
DischargeResult | Discharge / source term definition. | DischargeResult
Weather | Weather. | Weather

#### Output data

Name | Description | Type
FlameResult | Flame scalar result. | FlameResult
WriteFlameRecordCallback | Array of fireball flame records. | FlameRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of FireballCalculation.

The following shows the inputs required to instantiate an instance of the FireballCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`state = State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling)`
`discharge_records = discharge_records: list[DischargeRecords]`
`discharge_record_count = Length of the discharge_records list`
`discharge_result = DischargeResult(expansion_energy: float, release_mass: float, height: float, angle: float, hole_diameter: float, release_type: DynamicType, pre_dilution_air_rate: float=0)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`

`fireball_calculation = FireballCalculation(material: Material, state: State, discharge_records: list[DischargeRecord], discharge_record_count: int, discharge_result: DischargeResult, weather: Weather)`

Back to reference home

### FlareStackDesignerCalculation

Flare stack designer application.

#### Input data

Name | Description | Type
FlareStack | Flare stack asset. | FlareStack
FlareStackConstraint | Data that defines the design requirements. | Constraint
Weather | Weather. | Weather
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | Substrate data. | Substrate
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Defines the flammable results of interest. | FlammableOutputConfig

#### Output data

Name | Description | Type
DesignSolution | Value of design variable that satisfies the design target. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of FlareStackDesignerCalculation.

The following shows the inputs required to instantiate an instance of the FlareStackDesignerCalculation class:

`flare_stack = FlareStack(material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), flare_stack_height: float, flare_stack_tip_diameter: float, flare_stack_conditions: VesselConditions)`
`flare_stack_constraint = FlareStackConstraint(target_variable_value: float, interval : Interval(lower_boundary: float, upper_boundary: float), target_variable: TargetVariable, design_variable: DesignVariable)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`flare_stack_designer_calculation = FlareStackDesignerCalculation(flare_stack: FlareStack, flare_stack_constraint: Constraint, weather: Weather, discharge_parameters: DischargeParameters, substrate: Substrate, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### FlashCalculation

Generates properties for a material at specific input fluid conditions.

#### Input data

Name | Description | Type
Material | User-defined input material, pure component or mixture (max 20 components). | Material
MaterialState | Describes the fluid pressure, temperature, liquid fraction. | State

#### Output data

Name | Description | Type
FlashResult | Fluid properties at given conditions. | FlashResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of FlashCalculation.

The following shows the inputs required to instantiate an instance of the FlashCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`material_state = MaterialState(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling)`

`flash_calculation = FlashCalculation(material: Material, material_state: State)`

Back to reference home

### GetMassFromVesselCalculation

Calculates the mass in a vessel.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised). | Vessel

#### Output data

Name | Description | Type
MassInventory | Mass inventory in the vessel (kg). | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of GetMassFromVesselCalculation.

The following shows the inputs required to instantiate an instance of the GetMassFromVesselCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`

`get_mass_from_vessel_calculation = GetMassFromVesselCalculation(vessel: Vessel)`

Back to reference home

### JetFireCalculation

Cone jet fire calculations.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
DischargeRecords | Discharge / source term definition. | DischargeRecord
DischargeRecordCount | Number of discharge records. | int
DischargeResult | Discharge / source term definition. | DischargeResult
Weather | Weather. | Weather
Substrate | Substrate. | Substrate
FlammableParameters | Flammable parameters. | FlammableParameters

#### Output data

Name | Description | Type
FlameResult | Flame scalar results. | FlameResult
WriteFlameRecordCallback | Array of jet fire flame records. | FlameRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of JetFireCalculation.

The following shows the inputs required to instantiate an instance of the JetFireCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`discharge_records = discharge_records: list[DischargeRecords]`
`discharge_record_count = Length of the discharge_records list`
`discharge_result = DischargeResult(expansion_energy: float, release_mass: float, height: float, angle: float, hole_diameter: float, release_type: DynamicType, pre_dilution_air_rate: float=0)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`

`jet_fire_calculation = JetFireCalculation(material: Material, discharge_records: list[DischargeRecord], discharge_record_count: int, discharge_result: DischargeResult, weather: Weather, substrate: Substrate, flammable_parameters: FlammableParameters)`

Back to reference home

### LateExplosionCalculation

Explosion calculations using the multi-energy method.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
ScalarUdmOutputs | Dispersion scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Cloud definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | Substrate. | Substrate
DispersionOutputConfig | Specification of cloud view. | DispersionOutputConfig
ExplosionOutputConfig | Explosion output configuration. | ExplosionOutputConfig
ExplosionParameters | Explosion parameters. | ExplosionParameters
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ExplosionUnifConfOverpressureResult | Uniform confined explosion overpressure result. | ExplosionOverpressureResult
ExplosionUnconfOverpressureResult | Unconfined explosion overpressure result. | ExplosionOverpressureResult
ResultCode | Eror code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LateExplosionCalculation.

The following shows the inputs required to instantiate an instance of the LateExplosionCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`explosion_output_config = ExplosionOutputConfig(overpressure_level: float=2068, me_confined_method: MEConfinedMethod)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`late_explosion_calculation = LateExplosionCalculation(material: Material, scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, explosion_output_config: ExplosionOutputConfig, explosion_parameters: ExplosionParameters, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int, dispersion_parameters: DispersionParameters)`

Back to reference home

### LateExplosionToOPLevelsCalculation

Explosion calculations using the multi-energy method to multiple over-pressure levels.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
ScalarUdmOutputs | Dispersion scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Cloud definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | Substrate. | Substrate
DispersionOutputConfig | Specification of cloud view. | DispersionOutputConfig
ExplosionOutputConfigs | Explosion output configurations. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of explosion output configurations. | int
ExplosionParameters | Explosion parameters. | ExplosionParameters
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ExplosionUnifConfOverpressureResults | Uniform confined explosion overpressure results. | ExplosionOverpressureResult
ExplosionUnconfOverpressureResults | Unconfined explosion overpressure results. | ExplosionOverpressureResult
ResultCode | Eror code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LateExplosionToOPLevelsCalculation.

The following shows the inputs required to instantiate an instance of the LateExplosionToOPLevelsCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`late_explosion_to_oplevels_calculation = LateExplosionToOPLevelsCalculation(material: Material, scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_parameters: ExplosionParameters, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int, dispersion_parameters: DispersionParameters)`

Back to reference home

### LethalityDistanceCalculation

Calculates toxic lethality vs distance.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
WriteToxicRecordCallback | Array of toxic results. | ToxicRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LethalityDistanceCalculation.

The following shows the inputs required to instantiate an instance of the LethalityDistanceCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`lethality_distance_calculation = LethalityDistanceCalculation(material: Material, scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, dispersion_parameters: DispersionParameters)`

Back to reference home

### LoadMassInventoryVesselForLeakScenarioCalculation

Sets up a vessel and a leak scenario from a mass inventory, pressure, temperature and hole size specifications.

#### Input data

Name | Description | Type
Material | Vessel material. | Material
Mass | Total vessel mass inventory. | double
Pressure | Vessel pressure in absolute scale. | double
Temperature | Vessel temperature. | double
HoleSize | Leak hole size. | double
ReleaseElevation | Release elevation. | double
ReleaseAngle | Release angle. | double

#### Output data

Name | Description | Type
Vessel | Vessel definition. | Vessel
Leak | Leak scenario. | Leak
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LoadMassInventoryVesselForLeakScenarioCalculation.

The following shows the inputs required to instantiate an instance of the LoadMassInventoryVesselForLeakScenarioCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`mass = Value of type float`
`pressure = Value of type float`
`temperature = Value of type float`
`hole_size = Value of type float`
`release_elevation = Value of type float`
`release_angle = Value of type float`

`load_mass_inventory_vessel_for_leak_scenario_calculation = LoadMassInventoryVesselForLeakScenarioCalculation(material: Material, mass: float, pressure: float, temperature: float, hole_size: float, release_elevation: float, release_angle: float)`

Back to reference home

### LoadMassInventoryVesselForLineRuptureScenarioCalculation

Sets up a vessel and a line rupture scenario from a mass inventory, pressure, temperature, pipe diameter and length specifications.

#### Input data

Name | Description | Type
Material | Vessel material. | Material
Mass | Total vessel mass inventory. | double
Pressure | Vessel pressure in absolute scale. | double
Temperature | Vessel temperature. | double
PipeDiameter | Pipe diameter. | double
PipeLength | Pipe length. | double
ReleaseElevation | Release elevation. | double
ReleaseAngle | Release angle. | double

#### Output data

Name | Description | Type
Vessel | Vessel definition. | Vessel
LineRupture | Line rupture. | LineRupture
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LoadMassInventoryVesselForLineRuptureScenarioCalculation.

The following shows the inputs required to instantiate an instance of the LoadMassInventoryVesselForLineRuptureScenarioCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`mass = Value of type float`
`pressure = Value of type float`
`temperature = Value of type float`
`pipe_diameter = Value of type float`
`pipe_length = Value of type float`
`release_elevation = Value of type float`
`release_angle = Value of type float`

`load_mass_inventory_vessel_for_line_rupture_scenario_calculation = LoadMassInventoryVesselForLineRuptureScenarioCalculation(material: Material, mass: float, pressure: float, temperature: float, pipe_diameter: float, pipe_length: float, release_elevation: float, release_angle: float)`

Back to reference home

### LoadMassInventoryVesselForReliefValveScenarioCalculation

Sets up a vessel and a relief valve scenario from a mass inventory, pressure, temperature, pipe diameter, lenght and constriction size specifications.

#### Input data

Name | Description | Type
Material | Vessel material. | Material
Mass | Total vessel mass inventory. | double
Pressure | Vessel pressure in absolute scale. | double
Temperature | Vessel temperature. | double
ConstrictionSize | Constriction size. | double
PipeDiameter | Pipe diameter. | double
PipeLength | Pipe length. | double
ReleaseElevation | Release elevation. | double
ReleaseAngle | Release angle. | double

#### Output data

Name | Description | Type
Vessel | Vessel definition. | Vessel
ReliefValve | Relief valve. | ReliefValve
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LoadMassInventoryVesselForReliefValveScenarioCalculation.

The following shows the inputs required to instantiate an instance of the LoadMassInventoryVesselForReliefValveScenarioCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`mass = Value of type float`
`pressure = Value of type float`
`temperature = Value of type float`
`constriction_size = Value of type float`
`pipe_diameter = Value of type float`
`pipe_length = Value of type float`
`release_elevation = Value of type float`
`release_angle = Value of type float`

`load_mass_inventory_vessel_for_relief_valve_scenario_calculation = LoadMassInventoryVesselForReliefValveScenarioCalculation(material: Material, mass: float, pressure: float, temperature: float, constriction_size: float, pipe_diameter: float, pipe_length: float, release_elevation: float, release_angle: float)`

Back to reference home

### LongPipeBreachCalculation

Release from a breach in a long pipeline.

#### Input data

Name | Description | Type
Pipe | Pipe equipment item. | Pipe
PipeBreach | Long pipeline scenario. | PipeBreach
DischargeParameters | Discharge parameters. | DischargeParameters

#### Output data

Name | Description | Type
ExitMaterial | Composition of the released material (indentical to storage composition - using PC mode). | Material
DischargeResult | Scalar discharge results. | DischargeResult
WriteDischargeRecordCallback | Array of discharge records. | DischargeRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of LongPipeBreachCalculation.

The following shows the inputs required to instantiate an instance of the LongPipeBreachCalculation class:

`pipe = Pipe(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), node_count: int, diameter: float, material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), roughness: float=4.5e-5, pumped_inflow: float=0)`
`pipe_breach = PipeBreach(distance_downstream: float, relative_aperture: float=1)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`

`long_pipe_breach_calculation = LongPipeBreachCalculation(pipe: Pipe, pipe_breach: PipeBreach, discharge_parameters: DischargeParameters)`

Back to reference home

### MaxConcDistanceCalculation

Maximum concentration vs distance for a dispersing cloud.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ConcUsed | Concentration of interest. | double
WriteConcentrationRecordCallback | Array of maximum concentration at x, y, z coordinates. | ConcentrationRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of MaxConcDistanceCalculation.

The following shows the inputs required to instantiate an instance of the MaxConcDistanceCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`max_conc_distance_calculation = MaxConcDistanceCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### MaxConcFootprintCalculation

Maximum concentration footprint to a specified concentration.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ConcUsed | Concentration of interest. | double
WriteContourPointCallback | Array of footprint results. | LocalPosition
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of MaxConcFootprintCalculation.

The following shows the inputs required to instantiate an instance of the MaxConcFootprintCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`max_conc_footprint_calculation = MaxConcFootprintCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### MaxDistanceToConcCalculation

Calculate the maximum distance to a specified concentration.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ConcUsed | Concentration of interest. | double
Distance | Maximum distance to concentration of interest. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of MaxDistanceToConcCalculation.

The following shows the inputs required to instantiate an instance of the MaxDistanceToConcCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`max_distance_to_conc_calculation = MaxDistanceToConcCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### MixtureConstantPropertiesCalculation

Generates constant properties for a mixture.

#### Input data

Name | Description | Type
Material | User-defined input material (max 20 components). | Material

#### Output data

Name | Description | Type
MixConstantPropResult | Constant properties of the mixture. | MixtureConstantPropertiesResult
ResultCode | Response code. | ResultCode

#### Instantiating an instance of MixtureConstantPropertiesCalculation.

The following shows the inputs required to instantiate an instance of the MixtureConstantPropertiesCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`

`mixture_constant_properties_calculation = MixtureConstantPropertiesCalculation(material: Material)`

Back to reference home

### PoolFireCalculation

Pool fire calculations.

#### Input data

Name | Description | Type
Material | Material with post-discharge composition. | Material
PoolRecords | Pool / source term definition. | PoolRecord
PoolRecordCount | Number of pool records. | int
Weather | Weather. | Weather
Substrate | Substrate. | Substrate
FlammableParameters | Flammable parameters. | FlammableParameters

#### Output data

Name | Description | Type
PoolFireFlameResult | Flame scalar result. | PoolFireFlameResult
WriteFlameRecordCallback | Array of pool fire flame records. | FlameRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of PoolFireCalculation.

The following shows the inputs required to instantiate an instance of the PoolFireCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`pool_records = pool_records: list[PoolRecords]`
`pool_record_count = Length of the pool_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`

`pool_fire_calculation = PoolFireCalculation(material: Material, pool_records: list[PoolRecord], pool_record_count: int, weather: Weather, substrate: Substrate, flammable_parameters: FlammableParameters)`

Back to reference home

### RadiationAtAPointCalculation

Radiation at a point calculations for flammable models.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
Radiation | Radiation at a point. | double
ResultCode | Response code. | ResultCode

#### Instantiating an instance of RadiationAtAPointCalculation.

The following shows the inputs required to instantiate an instance of the RadiationAtAPointCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`radiation_at_apoint_calculation = RadiationAtAPointCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### RadiationAtAPointForPoolFiresCalculation

Radiation at a point calculations for pool fires.

#### Input data

Name | Description | Type
PoolFireFlameResult | Scalar flame results. | PoolFireFlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
Radiation | Radiation at a point. | double
ResultCode | Response code. | ResultCode

#### Instantiating an instance of RadiationAtAPointForPoolFiresCalculation.

The following shows the inputs required to instantiate an instance of the RadiationAtAPointForPoolFiresCalculation class:

`pool_fire_flame_result = PoolFireFlameResult(pool_zone_sep: list[float])`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`radiation_at_apoint_for_pool_fires_calculation = RadiationAtAPointForPoolFiresCalculation(pool_fire_flame_result: PoolFireFlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### RadiationAtPointsCalculation

Radiation at point calculations for flammable models.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfigs | Settings for radiation coordinates. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation coordinates. | int

#### Output data

Name | Description | Type
Radiation | Array of radiation at a point. | double
ResultCode | Response code. | ResultCode

#### Instantiating an instance of RadiationAtPointsCalculation.

The following shows the inputs required to instantiate an instance of the RadiationAtPointsCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`

`radiation_at_points_calculation = RadiationAtPointsCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int)`

Back to reference home

### RadiationAtPointsForPoolFiresCalculation

Radiation at point calculations for pool fires.

#### Input data

Name | Description | Type
PoolFireFlameResult | Scalar flame results. | PoolFireFlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfigs | Settings for radiation coordinates. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation coordinates. | int

#### Output data

Name | Description | Type
Radiation | Array of radiation at a point. | double
ResultCode | Response code. | ResultCode

#### Instantiating an instance of RadiationAtPointsForPoolFiresCalculation.

The following shows the inputs required to instantiate an instance of the RadiationAtPointsForPoolFiresCalculation class:

`pool_fire_flame_result = PoolFireFlameResult(pool_zone_sep: list[float])`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`

`radiation_at_points_for_pool_fires_calculation = RadiationAtPointsForPoolFiresCalculation(pool_fire_flame_result: PoolFireFlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int)`

Back to reference home

### RadiationContourCalculation

Radiation contour calculations.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
WriteContourPointCallback | Array of contour points. | LocalPosition
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of RadiationContourCalculation.

The following shows the inputs required to instantiate an instance of the RadiationContourCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`radiation_contour_calculation = RadiationContourCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### RadiationTransectCalculation

Radiation transect calculations.

#### Input data

Name | Description | Type
FlameResult | Scalar flame results. | FlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
WriteRadiationRecordCallback | Array of radiation results along transect. | RadiationRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of RadiationTransectCalculation.

The following shows the inputs required to instantiate an instance of the RadiationTransectCalculation class:

`flame_result = FlameResult(time: float, surface_emissive_power: float, flame_length: float, flame_diameter: float, fire_type: FireType)`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`radiation_transect_calculation = RadiationTransectCalculation(flame_result: FlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### RadiationTransectForPoolFiresCalculation

Radiation transect calculations for pool fires.

#### Input data

Name | Description | Type
PoolFireFlameResult | Pool fire flame results. | PoolFireFlameResult
FlameRecords | Flame definition. | FlameRecord
FlameRecordCount | Number of flame records. | int
Weather | Weather. | Weather
FlammableParameters | Flammable parameters. | FlammableParameters
FlammableOutputConfig | Settings of flammable contours view. | FlammableOutputConfig

#### Output data

Name | Description | Type
WriteRadiationRecordCallback | Array of radiation results along transect. | RadiationRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of RadiationTransectForPoolFiresCalculation.

The following shows the inputs required to instantiate an instance of the RadiationTransectForPoolFiresCalculation class:

`pool_fire_flame_result = PoolFireFlameResult(pool_zone_sep: list[float])`
`flame_records = flame_records: list[FlameRecords]`
`flame_record_count = Length of the flame_records list`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`flammable_output_config = FlammableOutputConfig(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), transect : Transect(local_position : LocalPosition(x: float=0, y: float=0, z: float=0), local_position : LocalPosition(x: float=0, y: float=0, z: float=0)), radiation_type: RadiationType, contour_type: ContourType, radiation_level: float=4000, radiation_resolution: Resolution, fixed_orientation: int=0, orientation: float=0, fixed_inclination: int=0, inclination: float=0)`

`radiation_transect_for_pool_fires_calculation = RadiationTransectForPoolFiresCalculation(pool_fire_flame_result: PoolFireFlameResult, flame_records: list[FlameRecord], flame_record_count: int, weather: Weather, flammable_parameters: FlammableParameters, flammable_output_config: FlammableOutputConfig)`

Back to reference home

### ReliefValveMinTemperatureCalculation

Calculates minimum allowed input temperature for the Phast Online Relief Valve app.

#### Input data

Name | Description | Type
Material | Material. | Material
Pressure | Input pressure (absolute) at which to evaluate bubble point temperature. | double

#### Output data

Name | Description | Type
MinTemperature | Calculated lower temperature limit for relief valve scenario. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of ReliefValveMinTemperatureCalculation.

The following shows the inputs required to instantiate an instance of the ReliefValveMinTemperatureCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`pressure = Value of type float`

`relief_valve_min_temperature_calculation = ReliefValveMinTemperatureCalculation(material: Material, pressure: float)`

Back to reference home

### SetMixingLayerHeightCalculation

Sets the mixing layer height according to the stability class, based on default weather parameters from Phast.

#### Input data

Name | Description | Type
Weather | Weather data. | Weather

#### Output data

Name | Description | Type
UpdatedWeather | Updated weather data. | Weather
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SetMixingLayerHeightCalculation.

The following shows the inputs required to instantiate an instance of the SetMixingLayerHeightCalculation class:

`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`

`set_mixing_layer_height_calculation = SetMixingLayerHeightCalculation(weather: Weather)`

Back to reference home

### SetPhaseToReleaseForLeakScenarioCalculation

Calculates the hole height fraction and vessel z coordinate to release the requested phase (vapour or liquid).

#### Input data

Name | Description | Type
PhaseToRelease | Requested fluid phase to release. | Phase
ReleaseElevation | Release point elevation above ground. | double
Vessel | Vessel definition input. | Vessel

#### Output data

Name | Description | Type
ZCoordUpdated | Updated z-coordinate of vessel to accommodate requested phase to release. | double
HoleHeightFractionUpdated | Updated hole height fraction to accommodate requested phase to release. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SetPhaseToReleaseForLeakScenarioCalculation.

The following shows the inputs required to instantiate an instance of the SetPhaseToReleaseForLeakScenarioCalculation class:

`phase_to_release = One of the enum values for Phase`
`release_elevation = Value of type float`
`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`

`set_phase_to_release_for_leak_scenario_calculation = SetPhaseToReleaseForLeakScenarioCalculation(phase_to_release: Phase, release_elevation: float, vessel: Vessel)`

Back to reference home

### SetPhaseToReleaseForLineRuptureScenarioCalculation

Calculates the pipe height fraction and vessel z coordinate to release the requested phase (vapour or liquid).

#### Input data

Name | Description | Type
PhaseToRelease | Requested fluid phase to release. | Phase
ReleaseElevation | Release point elevation above ground. | double
Vessel | Vessel definition input. | Vessel

#### Output data

Name | Description | Type
ZCoordUpdated | Updated z-coordinate of vessel to accommodate requested phase to release. | double
PipeHeightFractionUpdated | Updated pipe height fraction to accommodate requested phase to release. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SetPhaseToReleaseForLineRuptureScenarioCalculation.

The following shows the inputs required to instantiate an instance of the SetPhaseToReleaseForLineRuptureScenarioCalculation class:

`phase_to_release = One of the enum values for Phase`
`release_elevation = Value of type float`
`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`

`set_phase_to_release_for_line_rupture_scenario_calculation = SetPhaseToReleaseForLineRuptureScenarioCalculation(phase_to_release: Phase, release_elevation: float, vessel: Vessel)`

Back to reference home

### SetPhaseToReleaseForReliefValveScenarioCalculation

Calculates the pipe height fraction and vessel z coordinate to release the requested phase.

#### Input data

Name | Description | Type
PhaseToRelease | Requested fluid phase to release. | Phase
ReleaseElevation | Release point elevation above ground. | double
Vessel | Vessel definition input. | Vessel

#### Output data

Name | Description | Type
ZCoordUpdated | Updated z-coordinate of vessel to accommodate requested phase to release. | double
PipeHeightFractionUpdated | Updated pipe height fraction to accommodate requested phase to release. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SetPhaseToReleaseForReliefValveScenarioCalculation.

The following shows the inputs required to instantiate an instance of the SetPhaseToReleaseForReliefValveScenarioCalculation class:

`phase_to_release = One of the enum values for Phase`
`release_elevation = Value of type float`
`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`

`set_phase_to_release_for_relief_valve_scenario_calculation = SetPhaseToReleaseForReliefValveScenarioCalculation(phase_to_release: Phase, release_elevation: float, vessel: Vessel)`

Back to reference home

### SetReleaseElevationForScenarioCalculation

Calculates the vessel z coordinate to release at the requested elevation. This method sets the vessel defined by its dimensions and shape to be elevated at a particular height such as to guarantee that the discharge result height is at the requested elevation.

#### Input data

Name | Description | Type
ReleaseElevation | Release point elevation above ground. | double
ReleaseHeightFraction | Release height fraction off the total vessel height. | double
Vessel | Vessel definition input. | Vessel

#### Output data

Name | Description | Type
UpdatedVessel | Updated vessel definition output with modified z coordinate. | Vessel
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SetReleaseElevationForScenarioCalculation.

The following shows the inputs required to instantiate an instance of the SetReleaseElevationForScenarioCalculation class:

`release_elevation = Value of type float`
`release_height_fraction = Value of type float`
`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`

`set_release_elevation_for_scenario_calculation = SetReleaseElevationForScenarioCalculation(release_elevation: float, release_height_fraction: float, vessel: Vessel)`

Back to reference home

### SideviewAtTimeCalculation

Cloud sideview at a given concentration level and time of interest.

#### Input data

Name | Description | Type
ScalarUdmOutputs | UDM scalar outputs. | ScalarUdmOutputs
Weather | Weather. | Weather
DispersionRecords | Dispersion definition. | DispersionRecord
DispersionRecordCount | Number of dispersion records. | int
Substrate | The dispersing surface. | Substrate
DispersionOutputConfig | Dispersion view configuration. | DispersionOutputConfig
Material | Material with post-discharge composition. | Material
DispersionParameters | Dispersion parameters. | DispersionParameters

#### Output data

Name | Description | Type
ConcUsed | Concentration of interest. | double
WriteContourPointCallback | Array of sideview results. | LocalPosition
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of SideviewAtTimeCalculation.

The following shows the inputs required to instantiate an instance of the SideviewAtTimeCalculation class:

`scalar_udm_outputs = ScalarUdmOutputs(observer_count: int, record_count: int, minimum_concentration: float, wind_power: float, friction_velocity: float, dispersion_release_duration: float, cloud_type: DynamicType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_records = dispersion_records: list[DispersionRecords]`
`dispersion_record_count = Length of the dispersion_records list`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`
`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`

`sideview_at_time_calculation = SideviewAtTimeCalculation(scalar_udm_outputs: ScalarUdmOutputs, weather: Weather, dispersion_records: list[DispersionRecord], dispersion_record_count: int, substrate: Substrate, dispersion_output_config: DispersionOutputConfig, material: Material, dispersion_parameters: DispersionParameters)`

Back to reference home

### TankFireCalculation

Tank fire model.

#### Input data

Name | Description | Type
AtmosphericStorageTank | Atmospheric storage tank. | AtmosphericStorageTank
Weather | Weather. | Weather
Substrate | Substrate. | Substrate
FlammableParameters | Flammable parameters. | FlammableParameters

#### Output data

Name | Description | Type
PoolFireFlameResult | Flame scalar result. | PoolFireFlameResult
WriteFlameRecordCallback | Pool fire flame records. | FlameRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of TankFireCalculation.

The following shows the inputs required to instantiate an instance of the TankFireCalculation class:

`atmospheric_storage_tank = AtmosphericStorageTank(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), diameter: float, height: float, material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), liquid_fill_fraction_by_volume: float=0.9)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`

`tank_fire_calculation = TankFireCalculation(atmospheric_storage_tank: AtmosphericStorageTank, weather: Weather, substrate: Substrate, flammable_parameters: FlammableParameters)`

Back to reference home

### UDSSetLiqFracFromTemperatureCalculation

Sets the liquid fraction for a given temperature.

#### Input data

Name | Description | Type
Material | Material. | Material
PhaseToBeReleased | Phase to be released (should be Two-Phase, if not this method simply returns). | Phase
Temperature | Input temperature. | double

#### Output data

Name | Description | Type
LiquidFraction | Calculated liquid fraction. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of UDSSetLiqFracFromTemperatureCalculation.

The following shows the inputs required to instantiate an instance of the UDSSetLiqFracFromTemperatureCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`phase_to_be_released = One of the enum values for Phase`
`temperature = Value of type float`

`uds_set_liq_frac_from_temperature_calculation = UDSSetLiqFracFromTemperatureCalculation(material: Material, phase_to_be_released: Phase, temperature: float)`

Back to reference home

### UDSSetTemperatureFromLiqFracCalculation

Sets the temperature for a given liquid fraction.

#### Input data

Name | Description | Type
Material | Material. | Material
PhaseToBeReleased | Phase to be released (should be Two-Phase, if not this method simply returns). | Phase
LiquidFraction | Input liquid fraction. | double

#### Output data

Name | Description | Type
Temperature | Calculated temperature. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of UDSSetTemperatureFromLiqFracCalculation.

The following shows the inputs required to instantiate an instance of the UDSSetTemperatureFromLiqFracCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`phase_to_be_released = One of the enum values for Phase`
`liquid_fraction = Value of type float`

`uds_set_temperature_from_liq_frac_calculation = UDSSetTemperatureFromLiqFracCalculation(material: Material, phase_to_be_released: Phase, liquid_fraction: float)`

Back to reference home

### UDSTemperatureLimitsCalculation

Calculates valid temperature range for a material for a given fluid phase.

#### Input data

Name | Description | Type
Material | Material. | Material
PhaseToBeReleased | Phase to be released (Vapour, Two-phase or Liquid). | Phase

#### Output data

Name | Description | Type
MinTemperature | Lower temperature limit to ensure consistency. | double
MaxTemperature | Upper temperature limit to ensure consistency. | double
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of UDSTemperatureLimitsCalculation.

The following shows the inputs required to instantiate an instance of the UDSTemperatureLimitsCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`phase_to_be_released = One of the enum values for Phase`

`uds_temperature_limits_calculation = UDSTemperatureLimitsCalculation(material: Material, phase_to_be_released: Phase)`

Back to reference home

### UserDefinedSourceLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels for flammable.

#### Input data

Name | Description | Type
Material | Material. | Material
DischargeResult | Scalar discharge data. | DischargeResult
DischargeRecords | Discharge records. | DischargeRecord
DischargeRecordCount | Number of discharge records. | int
PhaseToBeReleased | Phase to be released (Vapour, Two-phase or Liquid). | Phase
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionFlamOutputConfigs | Flammable concentration levels (LFL fraction, LFL, UFL). | DispersionOutputConfig
DispersionFlamOutputConfigCount | Number of flammable concentration levels (LFL fraction, LFL, UFL). | int
DispersionToxicOutputConfigs | Toxic concentration levels (concentration of interest). | DispersionOutputConfig
DispersionToxicOutputConfigCount | Number of toxic concentration levels (concentration of interest). | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaContourJet | Areas of jet fire contours. | double
DistancesToFlamConcentration | Distances to concentration levels (LFL fraction, LFL and UFL). | double
FlamConcentrationsUsed | Concentration levels (LFL fraction, LFL and UFL). | double
WriteFlamConcContourPointCallback | Maximum concentration footprints at given concentration levels (LFL fraction, LFL and UFL). | LocalPosition
NFlamConcContourPoints | Number of contour points per concentration level (LFL fraction, LFL and UFL). | int
AreaFootprintFlamConc | Areas of maximum concentration footprints (LFL fraction, LFL and UFL). | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaContourPool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion results to overpressure levels. | ExplosionOverpressureResult
DistancesToToxicConcentration | Distance to concentration of interest (using toxic averaging time). | double
ToxicConcentrationUsed | Concentration of interest. | double
WriteToxicConcContourPointCallback | Maximum concentration footprint to concentration of interest (using toxic averaging time). | LocalPosition
NToxicConcContourPoints | Number of contour points for maximum concentration footprint to concentration of interest. | int
AreaFootprintToxicConc | Area of maximum concentration footprints to concentration of interest (using toxic averaging time). | double
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of UserDefinedSourceLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the UserDefinedSourceLinkedRunCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`discharge_result = DischargeResult(expansion_energy: float, release_mass: float, height: float, angle: float, hole_diameter: float, release_type: DynamicType, pre_dilution_air_rate: float=0)`
`discharge_records = discharge_records: list[DischargeRecords]`
`discharge_record_count = Length of the discharge_records list`
`phase_to_be_released = One of the enum values for Phase`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_flam_output_configs = dispersion_flam_output_configs: list[DispersionFlamOutputConfigs]`
`dispersion_flam_output_config_count = Length of the dispersion_flam_output_configs list`
`dispersion_toxic_output_configs = dispersion_toxic_output_configs: list[DispersionToxicOutputConfigs]`
`dispersion_toxic_output_config_count = Length of the dispersion_toxic_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`user_defined_source_linked_run_calculation = UserDefinedSourceLinkedRunCalculation(material: Material, discharge_result: DischargeResult, discharge_records: list[DischargeRecord], discharge_record_count: int, phase_to_be_released: Phase, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_flam_output_configs: list[DispersionOutputConfig], dispersion_flam_output_config_count: int, dispersion_toxic_output_configs: list[DispersionOutputConfig], dispersion_toxic_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselCatastrophicRuptureCalculation

Catastrophic rupture from a vessel.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised or atmospheric). | Vessel
DischargeParameters | Discharge parameters. | DischargeParameters

#### Output data

Name | Description | Type
ExitMaterial | Composition of the released material (indentical to storage composition). | Material
DischargeResult | Scalar discharge results. | DischargeResult
WriteDischargeRecordCallback | Array of discharge record. | DischargeRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselCatastrophicRuptureCalculation.

The following shows the inputs required to instantiate an instance of the VesselCatastrophicRuptureCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`

`vessel_catastrophic_rupture_calculation = VesselCatastrophicRuptureCalculation(vessel: Vessel, discharge_parameters: DischargeParameters)`

Back to reference home

### VesselLeakCalculation

Leak calculations from a vessel.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised or atmospheric). | Vessel
Leak | Leak failure case. | Leak
DischargeParameters | Discharge parameters. | DischargeParameters

#### Output data

Name | Description | Type
ExitMaterial | Composition of the released material (may differ from storage composition). | Material
DischargeResult | Scalar discharge results. | DischargeResult
WriteDischargeRecordCallback | Array of discharge records. | DischargeRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakCalculation.

The following shows the inputs required to instantiate an instance of the VesselLeakCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`

`vessel_leak_calculation = VesselLeakCalculation(vessel: Vessel, leak: Leak, discharge_parameters: DischargeParameters)`

Back to reference home

### VesselLeakFlammableLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
Leak | Leak scenario. | Leak
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionOutputConfigs | Concentration levels. | DispersionOutputConfig
DispersionOutputConfigCount | Number of concentration levels. | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Ellipses to jet fire radiation levels. | LocalPosition
NJetContourPoints | Number of contour points for jet fire ellipses per radiation level. | int
AreaEllipseJet | Areas of jet fire ellipses. | double
DistancesToConcentration | Distances to concentration levels. | double
ConcentrationsUsed | Concentration levels. | double
WriteConcContourPointCallback | Maximum concentration footprints at given concentration levels. | LocalPosition
NConcContourPoints | Number of contour points per concentration level. | int
AreaFootprintConc | Areas of maximum concentration footprints. | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Ellipses to pool fire radiation levels. | LocalPosition
NPoolContourPoints | Number of contour points for pool fire ellipses per radiation level. | int
AreaEllipsePool | Areas of pool fire ellipses. | double
ExplosionOverpressureResults | Explosion overpressure results. | ExplosionOverpressureResult
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakFlammableLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the VesselLeakFlammableLinkedRunCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_output_configs = dispersion_output_configs: list[DispersionOutputConfigs]`
`dispersion_output_config_count = Length of the dispersion_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_leak_flammable_linked_run_calculation = VesselLeakFlammableLinkedRunCalculation(vessel: Vessel, leak: Leak, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: DispersionParameters, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_output_configs: list[DispersionOutputConfig], dispersion_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselLeakFlammableLinkedRunH2Calculation

VesselLeakFlammableLinkedRun for hydrogen.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
Leak | Leak scenario. | Leak
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionOutputConfigs | Concentration levels. | DispersionOutputConfig
DispersionOutputConfigCount | Number of concentration levels. | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaEllipseJet | Areas of jet fire contours. | double
DistancesToConcentration | Distances to concentration levels. | double
ConcentrationsUsed | Concentration levels. | double
WriteConcContourPointCallback | Maximum concentration footprints at given concentration levels. | LocalPosition
NConcContourPoints | Number of contour points per concentration level. | int
AreaFootprintConc | Areas of maximum concentration footprints. | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaEllipsePool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion results to overpressure levels. | ExplosionOverpressureResult
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakFlammableLinkedRunH2Calculation.

The following shows the inputs required to instantiate an instance of the VesselLeakFlammableLinkedRunH2Calculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_output_configs = dispersion_output_configs: list[DispersionOutputConfigs]`
`dispersion_output_config_count = Length of the dispersion_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_leak_flammable_linked_run_h2_calculation = VesselLeakFlammableLinkedRunH2Calculation(vessel: Vessel, leak: Leak, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_output_configs: list[DispersionOutputConfig], dispersion_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselLeakFlamToxSimpleLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels for flammable.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
Leak | Leak scenario. | Leak
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionFlamOutputConfigs | Flammable concentration levels (LFL fraction, LFL, UFL). | DispersionOutputConfig
DispersionFlamOutputConfigCount | Number of flammable concentration levels (LFL fraction, LFL, UFL). | int
MoleFractionToxic | Mole fraction of toxic component. | double
DispersionToxicOutputConfigs | Toxic concentration levels (concentration of interest). | DispersionOutputConfig
DispersionToxicOutputConfigCount | Number of toxic concentration levels (concentration of interest). | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaEllipseJet | Areas of jet fire contours. | double
DistancesToFlamConcentration | Distances to concentration levels (LFL fraction, LFL and UFL). | double
FlamConcentrationsUsed | Concentration levels (LFL fraction, LFL and UFL). | double
WriteFlamConcContourPointCallback | Maximum concentration footprints at given concentration levels (LFL fraction, LFL and UFL). | LocalPosition
NFlamConcContourPoints | Number of contour points per concentration level (LFL fraction, LFL and UFL). | int
AreaFootprintFlamConc | Areas of maximum concentration footprints (LFL fraction, LFL and UFL). | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaEllipsePool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion results to overpressure levels. | ExplosionOverpressureResult
DistancesToToxicConcentration | Distance to concentration of interest (using toxic averaging time). | double
ToxicConcentrationUsed | Concentration of interest. | double
WriteToxicConcContourPointCallback | Maximum concentration footprint to concentration of interest (using toxic averaging time). | LocalPosition
NToxicConcContourPoints | Number of contour points for maximum concentration footprint to concentration of interest. | int
AreaFootprintToxicConc | Area of maximum concentration footprints to concentration of interest (using toxic averaging time). | double
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakFlamToxSimpleLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the VesselLeakFlamToxSimpleLinkedRunCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_flam_output_configs = dispersion_flam_output_configs: list[DispersionFlamOutputConfigs]`
`dispersion_flam_output_config_count = Length of the dispersion_flam_output_configs list`
`mole_fraction_toxic = Value of type float`
`dispersion_toxic_output_configs = dispersion_toxic_output_configs: list[DispersionToxicOutputConfigs]`
`dispersion_toxic_output_config_count = Length of the dispersion_toxic_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_leak_flam_tox_simple_linked_run_calculation = VesselLeakFlamToxSimpleLinkedRunCalculation(vessel: Vessel, leak: Leak, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_flam_output_configs: list[DispersionOutputConfig], dispersion_flam_output_config_count: int, mole_fraction_toxic: float, dispersion_toxic_output_configs: list[DispersionOutputConfig], dispersion_toxic_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselLeakLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels for flammable.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
Leak | Leak scenario. | Leak
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionFlamOutputConfigs | Flammable concentration levels (LFL fraction, LFL, UFL). | DispersionOutputConfig
DispersionFlamOutputConfigCount | Number of flammable concentration levels (LFL fraction, LFL, UFL). | int
DispersionToxicOutputConfigs | Toxic concentration levels (concentration of interest). | DispersionOutputConfig
DispersionToxicOutputConfigCount | Number of toxic concentration levels (concentration of interest). | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaEllipseJet | Areas of jet fire contours. | double
DistancesToFlamConcentration | Distances to concentration levels (LFL fraction, LFL and UFL). | double
FlamConcentrationsUsed | Concentration levels (LFL fraction, LFL and UFL). | double
WriteFlamConcContourPointCallback | Maximum concentration footprints at given concentration levels (LFL fraction, LFL and UFL). | LocalPosition
NFlamConcContourPoints | Number of contour points per concentration level (LFL fraction, LFL and UFL). | int
AreaFootprintFlamConc | Areas of maximum concentration footprints (LFL fraction, LFL and UFL). | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaEllipsePool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion results to overpressure levels. | ExplosionOverpressureResult
DistancesToToxicConcentration | Distance to concentration of interest (using toxic averaging time). | double
ToxicConcentrationUsed | Concentration of interest. | double
WriteToxicConcContourPointCallback | Maximum concentration footprint to concentration of interest (using toxic averaging time). | LocalPosition
NToxicConcContourPoints | Number of contour points for maximum concentration footprint to concentration of interest. | int
AreaFootprintToxicConc | Area of maximum concentration footprints to concentration of interest (using toxic averaging time). | double
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the VesselLeakLinkedRunCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_flam_output_configs = dispersion_flam_output_configs: list[DispersionFlamOutputConfigs]`
`dispersion_flam_output_config_count = Length of the dispersion_flam_output_configs list`
`dispersion_toxic_output_configs = dispersion_toxic_output_configs: list[DispersionToxicOutputConfigs]`
`dispersion_toxic_output_config_count = Length of the dispersion_toxic_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_leak_linked_run_calculation = VesselLeakLinkedRunCalculation(vessel: Vessel, leak: Leak, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_flam_output_configs: list[DispersionOutputConfig], dispersion_flam_output_config_count: int, dispersion_toxic_output_configs: list[DispersionOutputConfig], dispersion_toxic_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselLeakMaxFlammableCloudCalculation

Linked vessel leak followed, dispersion, and calculation of flammable extents.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised or atmospheric). | Vessel
Leak | Leak failure case. | Leak
Weather | Weather. | Weather
Substrate | The dispersing surface. | Substrate
DischargeParameters | Discharge parameters. | DischargeParameters
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionOutputConfig | Options for controlling dispersion results (here used to set height of interest only). | DispersionOutputConfig

#### Output data

Name | Description | Type
VesselLeakMaxFlammableCloudResults | Collated discharge and flammable cloud characterisation results. | VesselLeakMaxFlammableCloudResults
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLeakMaxFlammableCloudCalculation.

The following shows the inputs required to instantiate an instance of the VesselLeakMaxFlammableCloudCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`leak = Leak(hole_diameter: float, hole_height_fraction: float=0.5)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`dispersion_parameters = DispersionParameters(relative_tolerance: float=0.001, rainout_thermo_flag: RainoutThermoFlag, fixed_step_size: float=0.01, output_step_multiplier: float=1.2, max_dispersion_distance: float=50000, max_dispersion_height: float=1000, number_of_release_observers: int=5, number_of_pool_observers: int=10, averaging_time: float=18.75, lfl_fraction_to_stop: float=0.5)`
`dispersion_output_config = DispersionOutputConfig(downwind_distance: float=100, time: float=60, resolution: Resolution, elevation: float=1, special_concentration: SpecialConcentration, concentration: float=0, crosswind_distance: float=0, contour_type: ContourType, lfl_fraction_value: float=0.5, component_to_track_index: int=-1, component_to_track_name: str)`

`vessel_leak_max_flammable_cloud_calculation = VesselLeakMaxFlammableCloudCalculation(vessel: Vessel, leak: Leak, weather: Weather, substrate: Substrate, discharge_parameters: DischargeParameters, dispersion_parameters: DispersionParameters, dispersion_output_config: DispersionOutputConfig)`

Back to reference home

### VesselLineRuptureCalculation

Calculations of discharge from a short pipe attached to a vessel.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised or atmospheric). | Vessel
LineRupture | Line rupture scenario. | LineRupture
DischargeParameters | Discharge parameters. | DischargeParameters

#### Output data

Name | Description | Type
ExitMaterial | Composition of the released material (may differ from storage composition). | Material
DischargeResult | Scalar discharge results. | DischargeResult
WriteDischargeRecordCallback | Array of discharge records. | DischargeRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLineRuptureCalculation.

The following shows the inputs required to instantiate an instance of the VesselLineRuptureCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`line_rupture = LineRupture(pipe_diameter: float, pipe_length: float, pipe_roughness: float=0.000045, pipe_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`

`vessel_line_rupture_calculation = VesselLineRuptureCalculation(vessel: Vessel, line_rupture: LineRupture, discharge_parameters: DischargeParameters)`

Back to reference home

### VesselLineRuptureLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels for flammable.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
LineRupture | Line rupture. | LineRupture
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionFlamOutputConfigs | Flammable concentration levels (LFL fraction, LFL, UFL). | DispersionOutputConfig
DispersionFlamOutputConfigCount | Number of flammable concentration levels (LFL fraction, LFL, UFL). | int
DispersionToxicOutputConfigs | Toxic concentration levels (concentration of interest). | DispersionOutputConfig
DispersionToxicOutputConfigCount | Number of toxic concentration levels (concentration of interest). | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaContourJet | Areas of jet fire contours. | double
DistancesToFlamConcentration | Distances to concentration levels (LFL fraction, LFL and UFL). | double
FlamConcentrationsUsed | Concentration levels (LFL fraction, LFL and UFL). | double
WriteFlamConcContourPointCallback | Maximum concentration footprints at given concentration levels (LFL fraction, LFL and UFL). | LocalPosition
NFlamConcContourPoints | Number of contour points per concentration level (LFL fraction, LFL and UFL). | int
AreaFootprintFlamConc | Areas of maximum concentration footprints (LFL fraction, LFL and UFL). | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaContourPool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion overpressure results. | ExplosionOverpressureResult
DistancesToToxicConcentration | Distance to concentration of interest (using toxic averaging time). | double
ToxicConcentrationUsed | Concentration of interest. | double
WriteToxicConcContourPointCallback | Maximum concentration footprint to concentration of interest (using toxic averaging time). | LocalPosition
NToxicConcContourPoints | Number of contour points for maximum concentration footprint to concentration of interest. | int
AreaFootprintToxicConc | Area of maximum concentration footprints to concentration of interest (using toxic averaging time). | double
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselLineRuptureLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the VesselLineRuptureLinkedRunCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`line_rupture = LineRupture(pipe_diameter: float, pipe_length: float, pipe_roughness: float=0.000045, pipe_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_flam_output_configs = dispersion_flam_output_configs: list[DispersionFlamOutputConfigs]`
`dispersion_flam_output_config_count = Length of the dispersion_flam_output_configs list`
`dispersion_toxic_output_configs = dispersion_toxic_output_configs: list[DispersionToxicOutputConfigs]`
`dispersion_toxic_output_config_count = Length of the dispersion_toxic_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_line_rupture_linked_run_calculation = VesselLineRuptureLinkedRunCalculation(vessel: Vessel, line_rupture: LineRupture, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_flam_output_configs: list[DispersionOutputConfig], dispersion_flam_output_config_count: int, dispersion_toxic_output_configs: list[DispersionOutputConfig], dispersion_toxic_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselReliefValveCalculation

Calculations of venting from a relief valve attached to a vessel.

#### Input data

Name | Description | Type
Vessel | Vessel (pressurised or atmospheric). | Vessel
ReliefValve | Relief valve scenario. | ReliefValve
DischargeParameters | Discharge parameters. | DischargeParameters

#### Output data

Name | Description | Type
ExitMaterial | Composition of the released material (may differ from storage composition). | Material
DischargeResult | Scalar discharge results. | DischargeResult
WriteDischargeRecordCallback | Array of discharge records. | DischargeRecord
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselReliefValveCalculation.

The following shows the inputs required to instantiate an instance of the VesselReliefValveCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`relief_valve = ReliefValve(relief_valve_constriction_diameter: float, pipe_diameter: float, pipe_length: float, pipe_roughness: float=0.000045, pipe_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`

`vessel_relief_valve_calculation = VesselReliefValveCalculation(vessel: Vessel, relief_valve: ReliefValve, discharge_parameters: DischargeParameters)`

Back to reference home

### VesselReliefValveLinkedRunCalculation

Calculates maximum distance to a number of concentration, radiation and overpressure levels for flammable.

#### Input data

Name | Description | Type
Vessel | Vessel definition. | Vessel
ReliefValve | Relief valve. | ReliefValve
DischargeParameters | Discharge parameters. | DischargeParameters
Substrate | The dispersing surface. | Substrate
Weather | Weather definition. | Weather
DispersionParameters | Dispersion parameters. | DispersionParameters
DispersionParameterCount | Number of dispersion parameters. | int
EndPointConcentration | Concentration at which the dispersion calculations will terminate (v/v fraction). | double
FlammableParameters | Fire model parameters. | FlammableParameters
ExplosionParameters | Explosion parameters. | ExplosionParameters
DispersionFlamOutputConfigs | Flammable concentration levels (LFL fraction, LFL, UFL). | DispersionOutputConfig
DispersionFlamOutputConfigCount | Number of flammable concentration levels (LFL fraction, LFL, UFL). | int
DispersionToxicOutputConfigs | Toxic concentration levels (concentration of interest). | DispersionOutputConfig
DispersionToxicOutputConfigCount | Number of toxic concentration levels (concentration of interest). | int
FlammableOutputConfigs | Radiation levels. | FlammableOutputConfig
FlammableOutputConfigCount | Number of radiation levels. | int
ExplosionOutputConfigs | Overpressure levels. | ExplosionOutputConfig
ExplosionOutputConfigCount | Number of overpressure levels. | int
ExplosionConfinedVolumes | Explosion confined volumes. | ExplosionConfinedVolume
ExplosionConfinedVolumeCount | Number of confined explosion sources. | int

#### Output data

Name | Description | Type
DischargeRecord | Discharge data for table. | DischargeRecord
DistancesToJetFireRadiation | Distances to jet fire radiation levels. | double
WriteJetContourPointCallback | Callback function for jet fire radiation contour points. | LocalPosition
NJetContourPoints | Number of points for jet fire contours per radiation level. | int
AreaContourJet | Areas of jet fire contours. | double
DistancesToFlamConcentration | Distances to concentration levels (LFL fraction, LFL and UFL). | double
FlamConcentrationsUsed | Concentration levels (LFL fraction, LFL and UFL). | double
WriteFlamConcContourPointCallback | Maximum concentration footprints at given concentration levels (LFL fraction, LFL and UFL). | LocalPosition
NFlamConcContourPoints | Number of contour points per concentration level (LFL fraction, LFL and UFL). | int
AreaFootprintFlamConc | Areas of maximum concentration footprints (LFL fraction, LFL and UFL). | double
DistancesToPoolFireRadiation | Distances to pool fire radiation levels. | double
WritePoolContourPointCallback | Callback function for pool fire radiation contour points. | LocalPosition
NPoolContourPoints | Number of points for pool fire contours per radiation level. | int
AreaContourPool | Areas of pool fire contours. | double
ExplosionOverpressureResults | Explosion overpressure results. | ExplosionOverpressureResult
DistancesToToxicConcentration | Distance to concentration of interest (using toxic averaging time). | double
ToxicConcentrationUsed | Concentration of interest. | double
WriteToxicConcContourPointCallback | Maximum concentration footprint to concentration of interest (using toxic averaging time). | LocalPosition
NToxicConcContourPoints | Number of contour points for maximum concentration footprint to concentration of interest. | int
AreaFootprintToxicConc | Area of maximum concentration footprints to concentration of interest (using toxic averaging time). | double
JetFireFlameResult | Flame results for jet fire. | FlameResult
PoolFireFlameResult | Flame results for pool fire. | PoolFireFlameResult
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselReliefValveLinkedRunCalculation.

The following shows the inputs required to instantiate an instance of the VesselReliefValveLinkedRunCalculation class:

`vessel = Vessel(state : State(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling), material : Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate), diameter: float=2, height: float=4, length: float=4, width: float=0.0, shape: VesselShape, vessel_conditions: VesselConditions, liquid_fill_fraction_by_volume: float=0.0)`
`relief_valve = ReliefValve(relief_valve_constriction_diameter: float, pipe_diameter: float, pipe_length: float, pipe_roughness: float=0.000045, pipe_height_fraction: float=0.5)`
`discharge_parameters = DischargeParameters(flash_at_orifice: FlashAtOrifice)`
`substrate = Substrate(bund : Bund(bund_height: float=0.0, bund_diameter: float=0.0, ), surface_roughness: float=0.183, surface_type: SurfaceType, pool_surface_type: PoolSurfaceType)`
`weather = Weather(wind_speed: float=5, stability_class: AtmosphericStabilityClass, temperature: float=283, relative_humidity: float=0.7, mixing_layer_height: float=800, solar_radiation: float=500)`
`dispersion_parameters = dispersion_parameters: list[DispersionParameters]`
`dispersion_parameter_count = Length of the dispersion_parameters list`
`end_point_concentration = Value of type float`
`flammable_parameters = FlammableParameters(max_exposure_duration: float=20, radiation_relative_tolerance: float=0.01, pool_fire_type: PoolFireType, , , time_of_interest: float=20)`
`explosion_parameters = ExplosionParameters(explosion_uniform_strength: float=10.0)`
`dispersion_flam_output_configs = dispersion_flam_output_configs: list[DispersionFlamOutputConfigs]`
`dispersion_flam_output_config_count = Length of the dispersion_flam_output_configs list`
`dispersion_toxic_output_configs = dispersion_toxic_output_configs: list[DispersionToxicOutputConfigs]`
`dispersion_toxic_output_config_count = Length of the dispersion_toxic_output_configs list`
`flammable_output_configs = flammable_output_configs: list[FlammableOutputConfigs]`
`flammable_output_config_count = Length of the flammable_output_configs list`
`explosion_output_configs = explosion_output_configs: list[ExplosionOutputConfigs]`
`explosion_output_config_count = Length of the explosion_output_configs list`
`explosion_confined_volumes = explosion_confined_volumes: list[ExplosionConfinedVolumes]`
`explosion_confined_volume_count = Length of the explosion_confined_volumes list`

`vessel_relief_valve_linked_run_calculation = VesselReliefValveLinkedRunCalculation(vessel: Vessel, relief_valve: ReliefValve, discharge_parameters: DischargeParameters, substrate: Substrate, weather: Weather, dispersion_parameters: list[DispersionParameters], dispersion_parameter_count: int, end_point_concentration: float, flammable_parameters: FlammableParameters, explosion_parameters: ExplosionParameters, dispersion_flam_output_configs: list[DispersionOutputConfig], dispersion_flam_output_config_count: int, dispersion_toxic_output_configs: list[DispersionOutputConfig], dispersion_toxic_output_config_count: int, flammable_output_configs: list[FlammableOutputConfig], flammable_output_config_count: int, explosion_output_configs: list[ExplosionOutputConfig], explosion_output_config_count: int, explosion_confined_volumes: list[ExplosionConfinedVolume], explosion_confined_volume_count: int)`

Back to reference home

### VesselStateCalculation

Calculates the fluid storage state for a material and thermodynamic conditions.

#### Input data

Name | Description | Type
Material | User-defined input material, pure component or mixture (max 20 components). | Material
MaterialState | Describes the fluid pressure, temperature, liquid fraction. | State

#### Output data

Name | Description | Type
VesselConditions | Describes the vessel storage conditions (Pure gas, Stratified Two-Phase or Pressurised liquid). | VesselConditions
OutputState | Describes the fluid pressure, temperature and liquid fraction after the flash calculation. | State
ResultCode | Error code (0 = OK, < 0 data input error, > 0 execution error). | ResultCode

#### Instantiating an instance of VesselStateCalculation.

The following shows the inputs required to instantiate an instance of the VesselStateCalculation class:

`material = Material(name: str, material_component : MaterialComponent(name: str, mole_fraction: float=1), component_count: int=1, property_template: PropertyTemplate)`
`material_state = MaterialState(pressure: float, temperature: float, liquid_fraction: float, flash_flag: FluidSpec, mixture_modelling: MixtureModelling)`

`vessel_state_calculation = VesselStateCalculation(material: Material, material_state: State)`

Back to reference home