{ "cells": [ { "cell_type": "markdown", "id": "e739facc", "metadata": {}, "source": [ "(pump)=\n", "# pump\n", "A hydropower pumping unit which consumes electricity to pump water between reservoirs\n", "\n", "| | |\n", "|---|---|\n", "|Input connections|{ref}`plant`, {ref}`reserve_group`, {ref}`commit_group`, {ref}`busbar`, {ref}`pump_reserve_capability`|\n", "|Output connections|{ref}`plant`, {ref}`reserve_group`, {ref}`commit_group`, {ref}`busbar`, {ref}`pump_reserve_capability`|\n", "|License|SHOP_OPEN|\n", "|Release version|13.0.0.a|\n", "\n", "```{contents}\n", ":local:\n", ":depth: 1\n", "```\n", "\n", "## Introduction\n", "The pump object is in many ways analogous to the [](generator) object, but in reverse. Please consult the generator documentation for general topics not covered here (like unit commitment), as they are very similar for pumps. Instead of producing power from falling water, the pump consumes power to lift water. The power consumed by a pump is calculated by the following equation:\n", "\n", "```{math}\n", "p = \\frac{\\rho \\cdot g \\cdot h \\cdot q}{\\eta_{gen}(p) \\cdot \\eta_{turb}(q, h)},\n", "```\n", "\n", "where $p$ is the power, $\\rho$ is the density of water, $g$ is the acceleration due to gravity, $h$ is the effective head of the generator, $q$ is the flow of water through the turbine, $\\eta_{gen}$ is the efficiency of the generator and $\\eta_{turb}$ is the efficiency of the turbine. Unlike the generator, the power consumed by the pump increases with lower efficiency. \n", "\n", "## Required input\n", "Similar to the generator object, a pump must be connected to a [](plant) object. The plant is in turn connected to the rest of the system which decides the overall system topology of how water flows. A pump must have a specified the [penstock number](pump:penstock), [minimum consumption](pump:p_min), [maximum consumption](pump:p_max), [nominal consumption](pump:p_nom), and [turbine efficiency curves](pump:turb_eff_curves). A [generator efficiency curve](pump:gen_eff_curve) is also common input.\n", "\n", "## Binary pumps\n", "A binary pump can only operate with a constant rotational speed, which means that it has a single operating point for a given head in SHOP. Binary pumps can be defined in SHOP by only inputting a single point on each turbine efficiency curve for the pump. This is shown in the [binary pump example](binary-pump-example).\n", "\n", "## Reversible turbines\n", "Reversible turbines can operate as both generators and pumps. How these are modelled SHOP is covered in the [generator documentation](generator) and the [reversible turbine example](reversible-turbine-example).\n", "\n", "## Reserve capacity\n", "Some pumps are able to deliver ancillary services, and reserve capacity can therefore be allocated on pumps in SHOP. Please see the [](generator) and [](reserve_group) objects for further information. Note that a upward reserve capacity on pumps is capacity for *decreasing* the consumption of the pump, which is the mirrored opposite of delivering upward reserves on generators (increasing production). The same is true for downward reserve capacity. \n", "\n", "## Examples\n", " - [](binary-pump-example)\n", " - [](reversible-turbine-example)\n", " \n", "\n", "## References\n", " - Short-term hydro scheduling of a variable speed pumped storage hydropower plant considering head loss in a shared penstock {cite}`Kong2019a`\n", " - Calculation of power compensation for a pumped storage hydropower plant with hydraulic short-circuit operation {cite}`Skjelbred2017b`\n", " \n", "\n", "## Attributes" ] }, { "cell_type": "code", "execution_count": 1, "id": "e311325d", "metadata": { "tags": [ "remove-input", "full-width" ] }, "outputs": [ { "data": { "text/html": [ "