Skip to content

Seasonality Module Development #27

@danmcgraw94

Description

@danmcgraw94

Summary

Develop a new seasonality module in rfaR that allows flood events to be classified by season or meteorological regime. This would support season-aware frequency analysis and provide date/cluster assignments for use in the starting pool module (see related issue).

Motivation

Flood seasonality matters for dam safety applications: spring snowmelt events and summer convective storms have different frequency behaviors, different antecedent conditions, and different implications for reservoir starting pool. Ignoring seasonality conflates these regimes and can bias stage-frequency results. A seasonality module would allow rfaR to partition or weight events by season, enabling more physically defensible frequency analysis.

Proposed Approaches

1. clust-based clustering

Haden mentioned the clust method/package during a project meeting as a candidate approach.

  • Investigate the clust package (or equivalent clustering methodology) for applicability to flood seasonality classification in R.
  • Determine appropriate clustering variables (e.g., Julian day of peak, temperature, snowpack index).
  • Evaluate number of clusters / seasons.

2. User-defined seasons

Allow the user to supply explicit season boundaries (e.g., winter: Nov–Mar, spring: Apr–Jun, summer: Jul–Oct) as a simple override when domain knowledge is sufficient.

3. Peaks-Over-Threshold (POT) with clustering

Use POT to extract independent flood peaks, then apply clustering on the timing or meteorological covariates of those peaks to define seasons empirically.

Implementation Considerations

  • Design a consistent interface that works with all three approaches above.
  • Output should include season/cluster assignments for each event as a labeled vector or data frame column.
  • Season assignments should flow cleanly into the starting pool module (i.e., the output date/season metadata should be usable for conditioning starting pool estimates).
  • Consider whether seasonality weights need to propagate into the stratified sampling framework.

Related

  • Starting Pool module (see related issue)
  • rfa_simulate()
  • Stratified sampling bin structure

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions