Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Binary pumps

Open in vLab iLab Assistant

This example is available in the following formats:

pyshop code for adding pump is provided below, while the initial model is available in basic_pump.py.

Introduction

This example imports a basic model and adds a simple binary pump. By varying the sale price in the market, we see that the watercourse pumps water to the upper reservoir when the price is lower than its water value.

Imports

Create a SHOP session and import basic model from file function

Loading...

Add pumping capabilities

Pumps can be added as pump objects, and need to be connected to a plant. We then apply attributes to the pump object. A binary pump only has a single operating point, which is specified by only supplying a single point in the turbine efficiency curves. Note that the point may still change as a function of head. If the p_min and p_max attributes of the binary pump are set to be equal, the pump will always consume this amount of power. If the operation of the pump should only be constrained by the points defined in the turbine efficiency curves, p_min and p_max can be set to unconstraining values such as 0 and 10000, respectively. In the example below, consumption will also be bounded to be within 38 and 42 MW. Whereas you in the old ASCII format don’t need to specify a maximum and minimum production for a binary pump, you need to explicitly add those attributes in addition to the nominal production in pyshop.

Run SHOP

Plots and results

We observe that the pump is used in the first six hours of the period, where the market price is lower than the water value in the upper reservoir.

Loading...
Loading...
Loading...