All pages
Powered by GitBook
1 of 10

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Uniform Drawdown Profile

General Description

Parameter which provides a uniformly reducing value from one to zero.

This parameter is intended to be used with an AnnualVirtualStorage node to provide a profile that represents perfect average utilisation of the annual volume. It returns a value of 1 on the reset day, and subsequently reduces by 1/366 every day afterward. API Reference

Attributes

Name
Description
Required

Example

coming soon...

reset_day

The day of the month (1-31) to reset the volume to the initial value

Yes

reset_month

The month of the year (1-12) to reset the volume to the initial value

Yes

{

}

Scenario Daily Profile

General Description

Parameter which provides a daily profile per scenario.

This parameter provides a repeating annual profile with a daily resolution. A different profile is returned for each member of a given scenario. API Reference

Attributes

Name
Description
Required

Example

coming soon...

scenario

Scenario object over which different profiles should be provided

Yes

values

Length of 1st dimension should equal the number of members in the scenario object and the length of the second dimension should be 366

Yes

{

}

Time Series and Profiles

Weekly Profile

General Description

The weekly profile contains 52 weeks per year. The last week of the year will have more than 7 days, as 365 / 7 is not whole. API Reference

Attributes

Name
Description
Required

Example

type

weeklyprofile

Yes

values

An array of 52 numbers whose indices represent the days of the year.

Yes

{
    type: 'weeklyprofile',
    values: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ... ]
}

Daily Profile

General Description

Parameter which provides a daily profile.

The daily profile returns a different value based on the month of the current time-step. API Reference

Attributes

Name
Description
Required

Example

Scenario Monthly Profile

General Description

Parameter that provides a monthly profile per scenario.

Behaviour is the same as MonthlyProfileParameter except a different profile is returned for each ensemble in a given scenario.

Monthly Profile

General Description

Parameter which provides a monthly profile. The monthly profile returns a different value based on the month of the current time-step.

type

dailyprofile

Yes

values

An array of 366 numbers whose indices represent the days of the year.

Yes

{
    type: 'dailyprofile',
    values: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ... ]
}
Attributes
Name
Description
Required

scenario

Scenario object over which different profiles should be provided

Yes

values

Length of 1st dimension should equal the number of members in the scenario object and the length of the second dimension should be 12

Yes

Example

coming soon...

API Reference
{

}
Attributes
Name
Description
Required

type

monthlyprofile

Yes

values

An array of 12 numbers whose indices represent the months of the year.

Yes

Example

Water Strategy offers an alternative way to work with Monthly Profiles.

API Reference
{
    type: 'monthlyprofile',
    values: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
}

Array Indexed Scenario Monthly Factors

General Description

Time varying parameter using an array and Timestep.index with multiplicative factors per Scenario.

Values is the baseline timeseries data that is perturbed by a factor. The factor is taken from factors which is shape (scenario.size, 12). Therefore factors vary with the individual scenarios in scenario and month. API Reference

Attributes

Name
Description
Required

Example

coming soon...

Scenario Weekly Profile

General Description

Parameter that provides a weekly profile per scenario

This parameter provides a repeating annual profile with a weekly resolution. A different profile is returned for each member of a given scenario.

scenario

Scenario object over which different profiles should be provided

Yes

values

Length of 1st dimension should equal the number of members in the scenario object and the length of the second dimension should be 12

Yes

{

}
Attributes
Name
Description
Required

scenario

Scenario object over which different profiles should be provided

Yes

values

Length of 1st dimension should equal the number of members in the scenario object and the length of the second dimension should be 52

Yes

Example

coming soon...

API Reference
{

}

RBF Profile

General Description

Parameter which interpolates a daily profile using a radial basis function (RBF).

The daily profile is computed during model reset using a radial basis function with day-of-year as the independent variables. The days of the year are defined by the user alongside the values to use on each of those days for the interpolation. The first day of the years should always be one, and its value is repeated as the 366th value. In addition the second and penultimate values are mirrored to encourage a consistent gradient to appear across the boundary. The RBF calculations are undertaken using the scipy.interpolate.Rbf object, please refer to Scipy’s documentation for more information. API Reference

Attributes

Name
Description
Required

Example

coming soon...

variable_days_of_year_range

The maximum bounds (positive or negative) for the days of year during optimisation. A non-zero value will cause the days of the year values to be exposed as integer variables (except the first value which remains at day 1). This value is bounds on those variables as maximum shift from the given days_of_year

Yes

min_value, max_value

Optionally cap the interpolated daily profile to a minimum and/or maximum value. The default values are negative and positive infinity for minimum and maximum respectively

Yes

rbf_kwargs

Optional dictionary of keyword arguments to base to the Rbf object

Optional

days_of_year

The days of the year at which the interpolation values are defined. The first value should be one

Yes

values

Values to use for interpolation corresponding to the days_of_year

Yes

lower_bounds

The lower bounds of the values when used during optimisation

Yes

upper_bounds

The upper bounds of the values when used during optimisation

Yes

{

}