44#ifndef OPENSWMM_GW_TRANSPORT_H
45#define OPENSWMM_GW_TRANSPORT_H
55#define SWMM_GW_SCOPE_GLOBAL 0
56#define SWMM_GW_SCOPE_TAG 1
57#define SWMM_GW_SCOPE_CELL 2
59#define SWMM_GW_ZONE_SAT 0
60#define SWMM_GW_ZONE_UNSAT 1
61#define SWMM_GW_ZONE_LAYER 2
155 char* tag_buf,
int tag_len);
213 int tag_len,
int* cell,
char* species_buf,
int species_len,
214 double* kd,
double* decay);
233 const char* species,
double kd,
double decay);
277 int tag_len,
int* cell,
int* zone,
int* layer,
278 char* species_buf,
int species_len,
double* value);
300 int cell,
int zone,
int layer,
const char* species,
369 char* species_buf,
int species_len,
char* kind_buf,
370 int kind_len,
double* value,
char* ts_buf,
391 const char* species,
const char* kind,
392 double value,
const char* ts_name);
435 int* scope,
char* tag_buf,
int tag_len,
int* cell,
436 double* flow,
char* flow_ts_buf,
int flow_ts_len);
456 const char* tag,
int cell,
double flow,
const char* flow_ts);
517 char* species_buf,
int species_len,
char* kind_buf,
518 int kind_len,
double* value,
char* ts_buf,
539 const char* kind,
double value,
const char* ts_name);
#define SWMM_ENGINE_API
Definition openswmm_2d.h:62
void * SWMM_Engine
Opaque handle to an OpenSWMM Engine instance.
Definition openswmm_callbacks.h:55
OpenSWMM Engine — primary transparent C API (master header).
SWMM_ENGINE_API int swmm_gw_transport_option_set(SWMM_Engine engine, const char *key, const char *value)
Parse and atomically assign one groundwater transport option.
Definition ApiGwTransport.cpp:202
SWMM_ENGINE_API int swmm_gw_source_scale_set(SWMM_Engine engine, int idx, double value)
Set the multiplier for a named source's flow and MASS terms.
Definition ApiGwTransport.cpp:638
SWMM_ENGINE_API int swmm_gw_sorption_get(SWMM_Engine engine, int idx, int *scope, char *tag_buf, int tag_len, int *cell, char *species_buf, int species_len, double *kd, double *decay)
Read an authored scope/species sorption record.
Definition ApiGwTransport.cpp:329
SWMM_ENGINE_API int swmm_gw_transport_option_get(SWMM_Engine engine, const char *key, char *buf, int buflen)
Serialize one groundwater transport option using its section spelling.
Definition ApiGwTransport.cpp:137
SWMM_ENGINE_API int swmm_gw_params_remove(SWMM_Engine engine, int idx)
Remove one authored groundwater physical-parameter row.
Definition ApiGwTransport.cpp:309
SWMM_ENGINE_API int swmm_gw_params_count(SWMM_Engine engine)
Count authored groundwater physical-parameter rows.
Definition ApiGwTransport.cpp:245
SWMM_ENGINE_API int swmm_gw_source_scale_get(SWMM_Engine engine, int idx, double *value)
Read the multiplier for a named source's flow and MASS terms.
Definition ApiGwTransport.cpp:629
SWMM_ENGINE_API int swmm_gw_source_species_remove(SWMM_Engine engine, int src_idx, int term_idx)
Remove one species term from a named source.
Definition ApiGwTransport.cpp:716
SWMM_ENGINE_API int swmm_gw_boundary_quality_get(SWMM_Engine engine, int idx, int *cell, int *edge, char *species_buf, int species_len, char *kind_buf, int kind_len, double *value, char *ts_buf, int ts_len)
Read an authored groundwater edge-quality record.
Definition ApiGwTransport.cpp:491
SWMM_ENGINE_API int swmm_gw_source_set(SWMM_Engine engine, const char *name, int scope, const char *tag, int cell, double flow, const char *flow_ts)
Upsert a named groundwater water source and its scope.
Definition ApiGwTransport.cpp:592
SWMM_ENGINE_API int swmm_gw_params_set(SWMM_Engine engine, const SWMM_GwParams *row, const char *tag)
Upsert a raw porous-media parameter row keyed by scope/tag/cell.
Definition ApiGwTransport.cpp:275
SWMM_ENGINE_API int swmm_gw_init_quality_get(SWMM_Engine engine, int idx, int *scope, char *tag_buf, int tag_len, int *cell, int *zone, int *layer, char *species_buf, int species_len, double *value)
Read an authored groundwater initial-quality record.
Definition ApiGwTransport.cpp:397
SWMM_ENGINE_API int swmm_gw_source_get(SWMM_Engine engine, int idx, char *name_buf, int name_len, int *scope, char *tag_buf, int tag_len, int *cell, double *flow, char *flow_ts_buf, int flow_ts_len)
Read an authored named groundwater source and its scope.
Definition ApiGwTransport.cpp:573
SWMM_ENGINE_API int swmm_gw_boundary_quality_count(SWMM_Engine engine)
Count authored groundwater exterior-quality rows.
Definition ApiGwTransport.cpp:484
SWMM_ENGINE_API int swmm_gw_source_species_count(SWMM_Engine engine, int src_idx)
Count species terms carried by one named groundwater source.
Definition ApiGwTransport.cpp:658
SWMM_ENGINE_API int swmm_gw_source_species_set(SWMM_Engine engine, int src_idx, const char *species, const char *kind, double value, const char *ts_name)
Upsert a named source's species term by species name.
Definition ApiGwTransport.cpp:687
SWMM_ENGINE_API int swmm_gw_sorption_count(SWMM_Engine engine)
Count authored groundwater species-sorption rows.
Definition ApiGwTransport.cpp:322
SWMM_ENGINE_API int swmm_gw_init_quality_count(SWMM_Engine engine)
Count authored groundwater initial-quality rows.
Definition ApiGwTransport.cpp:390
SWMM_ENGINE_API int swmm_gw_params_get(SWMM_Engine engine, int idx, SWMM_GwParams *row, char *tag_buf, int tag_len)
Copy an authored porous-media parameter row and its optional tag.
Definition ApiGwTransport.cpp:252
SWMM_ENGINE_API int swmm_gw_init_quality_file_get(SWMM_Engine engine, char *buf, int buflen)
Read the initial-quality CSV sidecar reference.
Definition ApiGwTransport.cpp:463
SWMM_ENGINE_API int swmm_gw_source_remove(SWMM_Engine engine, int idx)
Remove one authored groundwater named-source row.
Definition ApiGwTransport.cpp:649
SWMM_ENGINE_API int swmm_gw_sorption_remove(SWMM_Engine engine, int idx)
Remove one authored groundwater species-sorption row.
Definition ApiGwTransport.cpp:377
SWMM_ENGINE_API int swmm_gw_transport_authored(SWMM_Engine engine)
Test whether groundwater transport has any authored configuration.
Definition ApiGwTransport.cpp:234
SWMM_ENGINE_API int swmm_gw_init_quality_remove(SWMM_Engine engine, int idx)
Remove one authored groundwater initial-quality row.
Definition ApiGwTransport.cpp:454
SWMM_ENGINE_API int swmm_gw_source_count(SWMM_Engine engine)
Count authored groundwater named-source rows.
Definition ApiGwTransport.cpp:566
SWMM_ENGINE_API int swmm_gw_boundary_quality_remove(SWMM_Engine engine, int idx)
Remove one authored groundwater exterior-quality row.
Definition ApiGwTransport.cpp:553
SWMM_ENGINE_API int swmm_gw_init_quality_file_set(SWMM_Engine engine, const char *path)
Assign the initial-quality CSV sidecar reference.
Definition ApiGwTransport.cpp:471
SWMM_ENGINE_API int swmm_gw_boundary_quality_set(SWMM_Engine engine, int cell, int edge, const char *species, const char *kind, double value, const char *ts_name)
Upsert groundwater edge quality for a species and concentration/flux category.
Definition ApiGwTransport.cpp:511
SWMM_ENGINE_API int swmm_gw_init_quality_set(SWMM_Engine engine, int scope, const char *tag, int cell, int zone, int layer, const char *species, double value)
Upsert initial quality keyed by scope, zone/layer and species.
Definition ApiGwTransport.cpp:419
SWMM_ENGINE_API int swmm_gw_source_species_get(SWMM_Engine engine, int src_idx, int term_idx, char *species_buf, int species_len, char *kind_buf, int kind_len, double *value, char *ts_buf, int ts_len)
Read a named groundwater source species term.
Definition ApiGwTransport.cpp:668
SWMM_ENGINE_API int swmm_gw_sorption_set(SWMM_Engine engine, int scope, const char *tag, int cell, const char *species, double kd, double decay)
Upsert one scope/species partition coefficient and decay override.
Definition ApiGwTransport.cpp:349
Definition openswmm_gw_transport.h:120
double alpha_T
Definition openswmm_gw_transport.h:128
double a_s
Definition openswmm_gw_transport.h:126
double rho_s
Definition openswmm_gw_transport.h:123
int scope
Definition openswmm_gw_transport.h:121
double lambda_s
Definition openswmm_gw_transport.h:125
double D_v
Definition openswmm_gw_transport.h:130
double geo_flux
Definition openswmm_gw_transport.h:131
double alpha_L
Definition openswmm_gw_transport.h:127
double c_s
Definition openswmm_gw_transport.h:124
int cell
Definition openswmm_gw_transport.h:122
double D_m
Definition openswmm_gw_transport.h:129