# Node Types

This table introduces the most commonly used Pywr node types:

<table><thead><tr><th width="186">Node Type</th><th width="159">Icon</th><th>Brief Description</th></tr></thead><tbody><tr><td>Input Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FOfXNL3tDloMn87I8SHsi%2Fimage.png?alt=media&#x26;token=557c6a49-19c9-42e0-9e8c-0c17de9bda6b" alt="" data-size="line"></td><td>Input nodes represent water inputs into the system.</td></tr><tr><td>Catchment Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2F7TblXKhdi8xp4DDh9Top%2Fimage.png?alt=media&#x26;token=97217f37-d308-4798-90cb-b671ba728f8d" alt="" data-size="line"></td><td>Catchment nodes are often used to represent river or other type of inflow into the system.</td></tr><tr><td>Proportional Input Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FfnhNQL07w5VmMYD062F5%2Fimage.png?alt=media&#x26;token=b264737f-f80a-46c5-b5cc-f9b837a748a0" alt="" data-size="original"></td><td>Proportional input node is intended for a simple case of where fixed ratio of flow is required to be distributed to multiple downstream routes.</td></tr><tr><td>Link Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FfBc4BYVHHRZIfGeisNkF%2Fimage.png?alt=media&#x26;token=4f0c9736-6fd1-45bd-acab-ccab6ff80da8" alt="" data-size="line"></td><td>Link node represents a link in the water system or other point of interest where a maximum or minimum flow constraint or an allocation priority are assigned.</td></tr><tr><td>River Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2Fjjd3HU5kSLpqYZC1iHp8%2Fimage.png?alt=media&#x26;token=7b99f209-7105-4134-a65b-fa180bd2dace" alt="" data-size="line"></td><td>River node is a node in the river network, which may have multiple upstream nodes (i.e. a confluence) but only one downstream node.</td></tr><tr><td>Delay Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FAVFlEwA4dw6cellZ6nOQ%2Fimage.png?alt=media&#x26;token=1230bf33-6ade-47a0-b9df-34a26d8d9c7f" alt="" data-size="line"></td><td>These delay flow for a given number of timesteps or days. This is used when flow propagation time cannot be ignored, for example because time-steps are relatively short.</td></tr><tr><td>Storage Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FVreOb48dGHvoBWZ6HbFz%2Fimage.png?alt=media&#x26;token=791eb254-f5cf-471f-ae4c-ab9e15483fb7" alt="" data-size="line"></td><td>Storage node is a general node that can store water (like dams or aquifers), which have a minimum and maximum volume restrictions.</td></tr><tr><td>Reservoir Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FV7Zv0VRwOuZFrsxDnPMZ%2Fimage.png?alt=media&#x26;token=45df517b-f16a-4bbc-9da3-6ee94f619794" alt="" data-size="line"></td><td>Reservoir node is a type of storage node with additional functionality to represent evaporation and precipitation.</td></tr><tr><td>Output Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FYnD0KLqyAHNnVZmxyK3M%2Fimage.png?alt=media&#x26;token=eefc5411-58ff-4a9d-b940-d1a925b3560c" alt="" data-size="line"></td><td>Output nodes are locations where water leaves the system.</td></tr><tr><td>Loss Link Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2Fy6FvsO92CtNx3rqQ9aqU%2Fimage.png?alt=media&#x26;token=70223040-8585-4bfa-bfa2-b5503336de29" alt="" data-size="line"></td><td>Loss link allows for the definition of a fixed proportional loss of flow that goes through this node.</td></tr><tr><td>Turbine Node</td><td><img src="https://2363830371-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FODCd8VK2OOl9jOdp5KFf%2Fuploads%2FoiTjMZIMXwVZeVVKLqhf%2Fimage.png?alt=media&#x26;token=20dbbc2a-7e39-4dcb-8e6f-aa9954651ce3" alt="" data-size="line"></td><td>Turbine node can represent a turbine of a hydropower station. It calculates the flow required to generate a particular hydropower production target in each time step.</td></tr></tbody></table>

Pywr Node types can also be further sub-divided into 6 categories: [Water Input](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/water-input), [Water Transport](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/water-transport), [Water Storage](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/water-storage), [Water Output](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/water-output), [Hydropower](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/hydropower), and [Others](https://water-strategy.gitbook.io/water-strategy/modeling-basics/node-types/others). You can find more details about these groupings of nodes and nodes types in the sub-sections of the 'Node Types' section.

## More details

An overview of nodes in Pywr can be found [here](https://pywr.github.io/pywr-docs/master/json.html#nodes.).  The full list of built-in nodes in Pywr can be found [here](https://pywr.github.io/pywr-docs/master/api/pywr.nodes.html).
