Post-impoundment catchment

This module defines the NSCatchmentCreator class, which is used to represent post-impoundment catchment properties. The primary functionality provided by this class is to modify the catchment area and landuse fractions to exclude the area occupied by a reservoir.

Classes:

NSCatchmentCreator: A class that modifies catchment properties by subtracting the reservoir area and adjusting landuse fractions accordingly.

Usage Example:

from .catchment import Catchment
from .reservoir import Reservoir

catchment_area_fractions = [
    0.0, 0.0, 0.0, 0.0, 0.0, 0.01092, 0.11996, 0.867257, 0.0]
reservoir_area_fractions = [
    0.0, 0.0, 0.0, 0.0, 0.0, 0.45, 0.15, 0.4, 0.0,
    0.0, 0.0, 0.0, 0.0, 0.0, 0.0,  0.0,  0.0, 0.0,
    0.0, 0.0, 0.0, 0.0, 0.0, 0.0,  0.0,  0.0, 0.0]

catchment = Catchment(
    area=100,
    area_fractions=catchment_area_fractions)
reservoir = Reservoir(
    area=10,
    area_fractions=reservoir_area_fractions)

ns_creator = NSCatchmentCreator(catchment=catchment, reservoir=reservoir)
modified_catchment = ns_creator.get_catchment()
class reemission.ns_catchment.NSCatchmentCreator(catchment: Catchment, reservoir: Reservoir)[source]

Representation of post-impoundment (catchment - reservoir) catchment properties. It is assumed that all original (whole) catchment properties remain unchanged except for landuse fractions and area.

catchment

The original catchment object.

Type:

Catchment

reservoir

The reservoir object within the catchment.

Type:

Reservoir

catchment: Catchment
get_catchment() Catchment[source]

Subtracts the reservoir from the catchment and returns a new catchment object with the altered properties representing post-impoundment conditions, i.e., original catchment minus reservoir.

Returns:

The modified catchment object.

Return type:

Catchment

property ns_catchment_area: float

Calculates the area of the catchment excluding the reservoir.

Returns:

The area of the catchment minus the area of the reservoir.

Return type:

float

reservoir: Reservoir