Flow solvers

Numerical assessments of distribution of mass flow (air and/or liquid) in buildings and systems are carried out via a iterative, whole network method. A variant of this solution technique is also used for the solution of the electrical power domain. A portion of a 2007 paper by Clarke, Kelly and Tang focused on the solution technique:

The approach is based on the solution of the steady-state, one dimensional, Navier-Stokes equation assuming mass conservation and incompressible flow. The result is a set of non-linear equations representing the conservation of mass as a function of pressure difference across flow restrictions. To solve these equations, each non-boundary node is assigned an arbitrary pressure and the connecting components' flow rates determined from a corresponding mass flow model. The nodal mass flow rate residual (error), Ri, for the current iteration is then determined. ...

The ESP-r approach is particularly efficient. Some phrases in the above paper provide clues as to how this is achieved:

To address sparsity [of the Jacobian matrix], solution is achieved by LU decomposition with implicit pivoting known as Crout's method with partial pivoting. ...A relaxation factor is applied using a process similar to Steffensen Iteration.

The flow solver takes its boundary conditions from the weather data as well as the current temperatures within the zones and passes back the resolved mass flows for use in the zone energy balance as well as the CFD solver (if applicable).

The mass flow solver is efficient and often only 20-30 iterations are required to reach convergence, even in networks of moderate complexity. This is, in part related to the relaxation techniques used. For many models the additional computational resources required when a flow network is included is negligible (e.g. it may add only a few seconds to an annual simulation run). The opportunities and constraints of this approach are outlined in the following sections:

Network topology

The topology of the network e.g. relationships between nodes, components and linkages are discussed here.

Parallel and sequential flow paths

Networks can include parallel flow paths between nodes, for example a crack and an orifice between an office and the outside.

Points where mass balances are evaluated

Mass balances are evaluated at nodes of type indoor unknown. Usually there is one flow node for each thermal zone in a model. It is possible to have multiple flow nodes in a thermal zone - with the additional nodes taking their temperatures from a nominated location.

Flow components

Flow components modify mass flow along a path via the methods in the source code for the specific type of component taking into account the attributes of the component and the pressures along the associated flow paths. In some cases there may be more than one flow component type which could be used. Look here for more information.

Components in the flow and system domains

Devices which include both plant and flow attributes tend to be represented via entries in the plant network and the flow network. The user is, unfortunately, tasked with ensuring that the representations within the two domains are consistent. An expedient is to assign a so-called mass flow diversion ratio to the system component rather than provide a matching flow component.

Flow control

Users can impose control actions on flow components or on specific flow paths in a network. This is done via entries in the model control file which specify which flow path is to be controlled, what is to be sensed and a schedule of control logic to be applied to a flow component. Complex controls can be enable via increasing the complexity of the network or by using a control which supports multiple AND OR logic from multiple sensors to be specified. More information is available here.

Driving forces

Flow within networks is driven by pressure differences as well as stack pressures and temperatures. In the case of bi-directional components both temperature differences and pressure differences are used to determine flow. Boundary nodes of type wind pressure are associated with wind speed, direction and pressure coefficient sets.

Mixed networks

Both fluids and gasses can be assessed within a mass flow network. The flow paths for fluids must be separate from air flow paths. Each flow node is associated with either air paths or fluid paths.

Boundary conditions

Boundary conditions for mass flow networks are established via wind speed and direction from the models weather file. Boundary nodes resolve this into an equivalent pressure (unless they are of a type with a fixed pressure). The current zone temperatures are also passed to the flow network.

Incompressible air and fluids

Both air and fluids in a flow network are considered incompressible. This has the following implications - each node in the network must have a path to a boundary condition to ensure that as the volume changes in response there is some method of pressure release.

Solving extremes of flow

If a network includes both cracks and large openings or fans with high flow rates the numerical extremes are generally treated via adopting a shorter timestep for the simulation. The flow timestep follows that for the zones and thus one minute is the minimal timestep for both the zone and flow domains. It is usually not necessary to adjust the convergence criteria of the flow solution.

Solution timestep

A mentioned above, the solution method allows for flow to be evaluated at the same timestep as the building (there is also an option to iterate. This is often termed the choice between a ping-pong approach or an onion approach.

Data capture

Flow performance data captured during the assessment includes the temperature and pressure at each node, the flow along each flow path. Stack pressures are also reported as are the number of iterations required.

Network complexity

In terms of the underlying data model flow network complexity is set via header files in the source code. Hundreds of nodes and connections can be accommodated but the limit is usually based on user skills. Unless an onion iteration approach is used or there is a CFD domain included users are unlikely to notice.

Convergence criteria

The flow convergence criteria are:

  • maximum number of iterations per timestep
  • maximum absolute pressure correction applied (Pa)
  • largest percentage or absolute residual error allowed
  • stack pressure method to use
  • Numerical approach

    The mass flow solver code is found in the source file mfmach.F (it is written in Fortran). The flow solver is the first solver invoked at a given simulation timestep and uses the last known condition within the zones. The resolved mass flows are then used by the other solvers.


    Back to top | Back to Welcome page
    ©Copyright 2017 Energy Systems Research Unit, Glasgow, Scotland. License: GPL V2. Last edited by JWH, 10 Sep 2016