Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Unified Supply Chain

Stream routing

  • Last UpdatedAug 11, 2025
  • 6 minute read

In a supply chain model, a single material may often flow to several different destinations. In other words, a single stream has many possible routings. When setting up a flowsheet it is important to understand how these routings are configured.

Priority and availability in simulation routing

Splitting tab showing different priority and availability settings

During simulation, material is pushed through process units to simulate the unit performance. At some point during the flow of material through the plant, a material may reach a splitter. The ratio which the material is split between the products is determined by the Priority and Availability of the splitter.

If the Availability of the output pipes is the same, material is routed to the pipe with the highest Priority. For example, in the image above the CDU1 KERO - Jet BL pipe has a higher priority; therefore any material received by the CDU1 Kero SP splitter is sent to this pipe in preference.

Calculating hydrogen flow during simulation

Many process units modeled in AVEVA Unified Supply Chain consume hydrogen in their operations. During simulation, the amount of hydrogen required for their operation is calculated using the Base + Delta model associated with that unit. However, the input requirement of hydrogen is calculated from the fixed flow of hydrogen associated with that unit. The required flow of hydrogen is used to overwrite any calculated flow of hydrogen into the process unit.

For example, a heavy naphtha hydrotreater consumes hydrogen from a hydrogen pool, which obtains hydrogen from a reformer and hydrogen make unit (HMU). The HMU has a fixed production, dictated by the amount of fuel it receives, and the reformer hydrogen production depends on the qualities of the reformer feed. During simulation of the heavy naphtha hydrotreater model, the hydrogen requirement is calculated, and this is used to assign a flow to the input hydrogen pipe to the heavy naphtha hydrotreater. After simulation of the hydrotreater, the reformer hydrogen production is calculated, and this value is sent to the hydrogen pool. As the pipe carrying hydrogen from the hydrogen pool to the heavy naphtha hydrotreater already has a value, then any calculated value from the pool is ignored (that is, the value calculated by the model is used, not the value assigned based on the pool priority).

Routing examples

The flowsheet shows the topology of this simple example.

Flowsheet of two CDUs routing Kerosene to a blender

Equal priorities

Splitting tab showing equal priorities for all pipes

The Splitting grid shows that when simulating the material is diverted equally at each splitter to the blender and to excess.

Simulation

Watch window showing simulation results for Kerosene flow

After simulating, the kerosene from each CDU is sent equally to the blender and excess, as these pipes have equal priority.

Optimization

Optimization result showing that all Kerosene is sent to the blender

When the full flowsheet is optimized, the routing priorities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible. Any material that cannot be blended into jet fuel is sent to the lower value off-spec kerosene pool. The amount going to excess is zero as this material has no value.

Higher priority to blender

Splitting tab showing a higher priority to the blender

The Splitting grid shows that when simulating the material from both CDUs is diverted with a higher priority to the blender.

Simulation

Simulation results showing no Kerosene sent to excess

After simulating, the kerosene from each CDU is sent equally to the blender and no material is sent to excess.

Optimization

Optimization result showing all Kerosene sent to the blender

When the full flowsheet is optimized, the routing priorities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible.

Higher priority to excess

Splitting tab showing higher priority to excess

The Splitting grid shows that when simulating the material is diverted with a higher priority to the excess pipes.

Simulation

Simulation results showing Kerosene sent preferentially to excess

After simulating, the kerosene from each CDU is sent preferentially to the excess pool. No material is sent to the blender.

Optimization

Optimization results showing all Kerosene sent to the blender

When the full flowsheet is optimized, the routing priorities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible. No material is sent to excess (even though the priorities are higher) because the jet fuel and kerosene have higher value than the excess.

Availability of pipes

Splitting tab showing different availability settings for different pipes

The Splitting grid shows that CDU1 splitter has high availability to excess, while CDU2 splitter has high availability to blending.

Simulation

Simulation results showing Kerosene sent to pipes based on availability

After simulating, the kerosene from each CDU is sent to a pipe based on the availability of the pipe in the Stream Routing grid. For example, the availability of the pipe from CDU2 to the blender is 70%, therefore 1502.261 * 70% = 1051.583 t/d of kerosene is sent to the blender via this pipe.

Optimization

Optimization results showing all Kerosene sent to the blender

When the full flowsheet is optimized the availabilities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible. No excess is produced as this has no value.

No downstream constraints

Splitting tab showing an added Kerosene Hydrotreater with high availability

The Splitting grid shows that CDU1 splitter has high availability to excess, while CDU2 splitter has high availability to blending. A kerosene hydrotreater has been added which receives feed from CDU1.

Constraints grid showing no constraints on the amount of Kerosene Hydrotreater feed

The Constraints grid shows that the kerosene hydrotreater can process as much feed as it receives.

Simulation

The flowsheet shows the topology of this example.

Example topology with the added Kerosene Hydrotreater fed by CDU1

Simulation results showing some Kerosene going to the Hydrotreater

After simulating, the kerosene from each CDU is routed through the splitters according to the priority. The kerosene hydrotreater is receiving feed because the split priority directs material to the hydrotreater in preference to the blending pool.

Optimization

Optimization results showing no Kerosene going to the Hydrotreater

When the full flowsheet is optimized, the routing priorities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible. The kerosene hydrotreater receives no feed, as the product of the hydrotreater has no value.

Defined downstream constraints

Splitting grid showing different priorities for different pipes

The Splitting grid shows that the CDU1 splitter has high availability to excess, while the CDU2 splitter has high availability to blending.

Constraint grid showing maximum input constraint for Kerosene Hydrotreater

The Constraints grid shows that the kerosene hydrotreater has a maximum input of 2000 t/d.

Simulation

Simulation results showing Kerosene split based on priorities

After simulating, the kerosene from each CDU is split based on the priority of the splitter output pipes. If there is a downstream constraint, the material is routed based on the splitter priority until the constraint is met. When the constraint is met, any remaining material is diverted through other pipes based on their relative priorities.

Optimization

Optimization results showing all Kerosene sent to the blender

When the full flowsheet is optimized, the routing priorities are ignored and all kerosene is sent to the blender, where the blend is optimized to produce as much jet fuel as possible and the hydrotreater receives no feed.

In This Topic
Related Links
TitleResults for “How to create a CRG?”Also Available in