EnergyModelsGasNetworks
EnergyModelsGasNetworks extends EnergyModelsX with pressure-aware gas transport and pool-quality tracking for solving admixing problems. It adds two tightly coupled capabilities on top of EnergyModelsBase:
- Flow–pressure coupling. Nodes and links carry pressure potentials, enforce bounds via
AbstractPressureDatasubtypes, namelyFixPressureData,MaxPressureDataandMinPressureData, and approximate the Weymouth relation. It is required adding the data typePressureLinkDatato the links for adequate approximation, and combine it with the data typeRefBlendDatain case of transportingResourcePoolingresources (blended gases). Single-component gases use first-order Taylor cuts; blended gases use piecewise-affine planes from PiecewiseAffineApprox. - Pooling and quality tracking. Based on the multi-commodity formulation of (Alfaki and Haugland, 2013), compositions are tracked through
PoolingNodeandEnergyModelBase.Sinks. Maximum/minimum component shares in nodes are set throughRefBlendData.
Manual outline
- Getting started. Jump to the Quick Start for installation, solvers, and running the bundled examples.
- Examples. See the examples overview to guide you through examples for single-gas transport and admixing problems.
- Overview and Theory. The overview and theory sections explain briefly the philosophy on
EnergyModelsGasNetworksas well as the theory behind the flow-pressure and pooling problems and how they are addressed to solve the admixing problem. - Library. The library page lists the main types, controls, and data structures.
- Quick Start
- Examples
- Release Notes
- Package Overview
- Theoretical Background
- Public Interface
- Internal Elements
- Internal functions
Additional Info
EnergyModelsGasNetworks integrates the package Scratch.jl, which enables storing mutable containers of data. Specifically, it is applied to managing temporary storage of the piecewise-affine approximation data. In this way, the optimization used for finding the corresponding planes does not need to be performed again if the same conditions (i.e., Weymouth constants, maximum inlet pressure, minimum outlet pressure, pressure steps) are inputs for a link.
Additionally, the formulation of the method proposed was validated using the open-source simulation model SHIMMER++ in collaboration with Politecnico di Torino.
Project funding
The development of EnergyModelsGasNetworks was funded by the the European Union’s Clean Hydrogen Partnership in the project SHIMMER under grant agreement 101111888.