30#ifndef OPENSWMM_LANDUSE_HPP
31#define OPENSWMM_LANDUSE_HPP
37struct SimulationContext;
96 std::size_t
bu_idx(
int sc,
int lu,
int p)
const {
98 +
static_cast<std::size_t
>(lu) *
static_cast<std::size_t
>(
n_pollutants)
99 +
static_cast<std::size_t
>(p);
102 void resize(
int n_sc,
int n_lu,
int n_poll);
111 void init(
int n_landuses,
int n_pollutants);
123 const double* area,
const double* curb_length,
124 double dt,
int n_subcatch);
135 const double* runoff,
const double* area,
Definition Landuse.hpp:109
void computeBuildup(SurfaceQualitySoA &sq, const double *area, const double *curb_length, double dt, int n_subcatch)
Batch compute buildup for all subcatchments.
Definition Landuse.cpp:76
void computeWashoff(SurfaceQualitySoA &sq, const double *runoff, const double *area, int n_subcatch)
Batch compute washoff for all subcatchments.
Definition Landuse.cpp:98
std::vector< BuildupParams > buildup_params
Per (landuse × pollutant) parameters. Index: [lu * n_pollutants + p].
Definition Landuse.hpp:139
int n_pollutants_
Definition Landuse.hpp:142
void init(int n_landuses, int n_pollutants)
Definition Landuse.cpp:27
int n_landuses_
Definition Landuse.hpp:141
std::vector< WashoffParams > washoff_params
Definition Landuse.hpp:140
WashoffType
Definition Landuse.hpp:53
BuildupType
Definition Landuse.hpp:45
Definition Controls.cpp:24
Definition Landuse.hpp:64
double max_days
Time to reach max buildup.
Definition Landuse.hpp:67
BuildupType type
Definition Landuse.hpp:65
int normalizer
0=PER_AREA, 1=PER_CURB
Definition Landuse.hpp:68
double coeff[3]
c0 (max), c1 (rate), c2 (exponent)
Definition Landuse.hpp:66
Definition Landuse.hpp:83
std::vector< double > buildup
Definition Landuse.hpp:90
std::size_t bu_idx(int sc, int lu, int p) const
Index into buildup array for (subcatch, landuse, pollutant)
Definition Landuse.hpp:96
std::vector< double > washoff_conc
Washoff concentration [subcatch * n_pollutants + pollutant] (mass/vol)
Definition Landuse.hpp:93
void resize(int n_sc, int n_lu, int n_poll)
Definition Landuse.cpp:19
int n_subcatch
Definition Landuse.hpp:84
int n_pollutants
Definition Landuse.hpp:86
int n_landuses
Definition Landuse.hpp:85
Definition Landuse.hpp:71
double expon
Washoff exponent.
Definition Landuse.hpp:74
double bmp_effic
BMP removal [0-1].
Definition Landuse.hpp:76
WashoffType type
Definition Landuse.hpp:72
double sweep_effic
Street sweep removal [0-1].
Definition Landuse.hpp:75
double coeff
Washoff coefficient.
Definition Landuse.hpp:73