hydrobm.benchmarks.bm_annual_scaled_daily_mean_flow

hydrobm.benchmarks.bm_annual_scaled_daily_mean_flow(data, cal_mask, precipitation='precipitation', streamflow='streamflow')[source]

Calculate the daily mean flow scaled by annual precipitation anomalies.

This benchmark combines the daily mean flow climatology with annual precipitation scaling. For each year, it scales the daily mean flow pattern based on how much higher or lower that year’s total precipitation is compared to the long-term average during the calibration period. Scaling is only applied to full years.

Parameters:
datapandas DataFrame

Input data containing precipitation and streamflow columns.

cal_maskpandas Series

Boolean mask for the calibration period.

precipitationstr, optional

Name of the precipitation column in the input data. Default is ‘precipitation’.

streamflowstr, optional

Name of the streamflow column in the input data. Default is ‘streamflow’.

Returns:
bm_valspandas Series

Series containing annual scaling factors (1.0 for incomplete years).

qbmpandas DataFrame

Benchmark flow time series for the scaled daily mean flow benchmark model.