30 #include <meteoio/MeteoIO.h> 54 enum watertransportmodels{UNDEFINED, BUCKET, NIED, RICHARDSEQUATION};
56 enum SoilTypes{ORGANIC, CLAY, CLAYLOAM, LOAM, LOAMYSAND, SAND, SANDYCLAY, SANDYCLAYLOAM, SANDYLOAM, SILT, SILTYCLAY, SILTYCLAYLOAM, SILTLOAM, WFJGRAVELSAND};
58 enum K_Parameterizations{SHIMIZU, CALONNE};
60 enum K_AverageTypes{ARITHMETICMEAN, GEOMETRICMEAN, HARMONICMEAN, MINIMUMVALUE, UPSTREAM};
62 enum VanGenuchten_ModelTypesSnow{YAMAGUCHI2012, YAMAGUCHI2010, YAMAGUCHI2010_ADAPTED, DAANEN};
64 enum SOLVERS{DGESVD, DGTSV, TDMA};
66 enum BoundaryConditions{DIRICHLET, NEUMANN, LIMITEDFLUXEVAPORATION, LIMITEDFLUXINFILTRATION, LIMITEDFLUX, WATERTABLE, FREEDRAINAGE, GRAVITATIONALDRAINAGE, SEEPAGEBOUNDARY};
69 watertransportmodels iwatertransportmodel_snow, iwatertransportmodel_soil;
71 std::string watertransportmodel_snow;
72 std::string watertransportmodel_soil;
73 BoundaryConditions BottomBC;
74 K_AverageTypes K_AverageType;
77 bool useSoilLayers, water_layer;
81 double fromTHETAtoH(
double theta,
double theta_r,
double theta_s,
double alpha,
double m,
double n,
double Sc,
double h_e,
double h_d);
82 double fromTHETAtoHforICE(
double theta,
double theta_r,
double theta_s,
double alpha,
double m,
double n,
double Sc,
double h_e,
double h_d,
double theta_i);
83 double fromHtoTHETA(
double h,
double theta_r,
double theta_s,
double alpha,
double m,
double n,
double Sc,
double h_e);
84 double fromHtoTHETAforICE(
double h,
double theta_r,
double theta_s,
double alpha,
double m,
double n,
double Sc,
double h_e,
double theta_i);
85 double AirEntryPressureHead(
double MaximumPoreSize,
double Temperature);
86 void SetSoil(SoilTypes type,
double *theta_r,
double *theta_s,
double *alpha,
double *m,
double *n,
double *ksat,
double *he);
89 int TDMASolver (
int n,
double *a,
double *b,
double *c,
double *v,
double *x);
90 int pinv(
int m,
int n,
int lda,
double *a);
92 #endif //End of WaterTransport.h Definition: SnowpackConfig.h:28
double surfacefluxrate
Definition: ReSolver1d.h:46
Definition: DataClasses.h:589
ReSolver1d(const SnowpackConfig &cfg)
Definition: ReSolver1d.cc:56
This module contains the solver for the 1d Richards Equation for the 1d snowpack model.
Definition: ReSolver1d.h:40
Station data including all information on snowpack layers (elements and nodes) and on canopy This is...
Definition: DataClasses.h:468
double soilsurfacesourceflux
Definition: ReSolver1d.h:47
void SolveRichardsEquation(SnowStation &Xdata, SurfaceFluxes &Sdata)
Solve Richards Equation Solve Richards Equation .
Definition: ReSolver1d.cc:593