diff --git a/LER_template/LakeEnsemblR_r2.yaml b/LER_template/LakeEnsemblR_r2.yaml new file mode 100644 index 0000000..3a41fe3 --- /dev/null +++ b/LER_template/LakeEnsemblR_r2.yaml @@ -0,0 +1,138 @@ +location: + name: lakename # name of the lake + latitude: 0.0 # latitude [degrees North; min=-90.0; max=90.0] + longitude: 0.0 # longitude [degrees East; min=-360.0; max=360.0] + elevation: 0.0 # elevation of lake surface above sea level [m] + depth: 10.0 # maximum water depth [m; min=0.0] + hypsograph: hypsograph.csv # hypsograph [csv file] + init_depth: 10.0 # initial height of lake surface relative to the bottom [m] +time: + start: 2010-01-01 00:00:00 # start date and time [yyyy-mm-dd HH:MM:SS] + stop: 2011-01-01 00:00:00 # stop date and time [yyyy-mm-dd HH:MM:SS] + time_step: 3600.0 # time step for integration [s; min=0.0] +config_files: + GOTM: GOTM/gotm.yaml # GOTM config file [yaml file] + GLM: GLM/glm3.nml # GLM config file [nml file] + Simstrat: Simstrat/simstrat.par # Simstrat config file [json-format file] + FLake: FLake/flake.nml # FLake config file [nml file] + MyLake: notused.txt +observations: + temperature: + file: obs_wtemp.csv # file with observed water temperature profiles, with column headers according to LakeEnsemblR vocabulary [csv file; if none use NULL or leave empty] + ice_height: + file: NULL # file with observed ice height, with column headers according to LakeEnsemblR vocabulary [csv file; if none use NULL or leave empty] +input: + init_temp_profile: + file: init_temp_prof.csv # initial temperature profile [csv file; if none use NULL or leave empty; if empty/NULL, the observations file will be used] + meteo: + file: meteo.csv # file with meteorological forcing data, with column headers according to LakeEnsemblR vocabulary [csv file] + light: + Kw: # light extinction coefficient [m-1, or csv file] + FLake: 1.0 + GLM: 1.0 + GOTM: 1.0 + Simstrat: 1.0 + ice: + use: true # turn on ice models? [true/false] +inflows: + use: false # use in- and outflows? [true/false] + file: NULL # file with inflow data, with column headers according to LakeEnsemblR vocabulary [csv file; must be provided if inflows -> use is true] +outflows: + use: false + file: NULL +output: + file: ensemble_output # name of output file, excluding extension + format: netcdf # format [text/netcdf] + depths: 0.5 # depths to extract output [m] + compression: 4 # set to an integer between 1 (least compression) and 9 (most compression), this enables compression for the variable as it is written to the file + time_unit: day # time unit [second, hour, day] + time_step: 1 # number of time units between output [min=1] + time_method: mean # treatment of time dimension [point=instantaneous, mean, integrated; only used in GOTM] + max_members: 1 + variables: + - temp + - ice_height + - q_sens + - q_lat +scaling_factors: # scaling factors to apply to meteorological input, either for all models or model-specific. If not specified, no scaling is applied. If both "all" and model-specific are specified for a certain model, only the model-specific scaling is applied. + all: + wind_speed: 1.0 + swr: 1.0 +model_parameters: + GOTM: # GOTM specific parameters + nlev: 20 + turb_param/k_min: 1E-8 + Simstrat: # Simstrat specific parameters + Grid: 20 + a_seiche: 0 +calibration: # calibration section + met: # meteo scaling parameter + wind_speed: # wind speed scaling + lower: 0.25 # lower bound for wind speed scaling + upper: 1.5 # upper bound for wind speed scaling + initial: 1 # initial value for wind speed scaling + log: false # log transform scaling factor + swr: # shortwave radiation scaling + lower: 0.7 # lower bound for shortwave radiation scaling + upper: 1.3 # upper bound for shortwave radiation scaling + initial: 1 # initial value for shortwave radiation scaling + log: false # log transform scaling factor + Kw: + lower: 0.7 # lower bound for wind speed scaling + upper: 1.3 # upper bound for wind speed scaling + initial: 1.0 # initial value for wind speed scaling + log: false # log transform scaling factor + FLake: # FLake specific parameters + c_relax_C: + lower: 0.0001 # lower bound for parameter + upper: 0.01 # upper bound for parameter + initial: 0.0030 # initial value for parameter + log: false # log transform scaling factor + fetch_lk: + lower: 500 # lower bound for parameter + upper: 3000 # upper bound for parameter + initial: 1000 # initial value for parameter + log: false # log transform scaling factor + depth_bs_lk: + lower: 2.0 # lower bound for parameter + upper: 8.0 # upper bound for parameter + initial: 5.0 # initial value for parameter + log: false # log transform scaling factor + GLM: # GLM specific parameters + mixing/coef_mix_hyp: + lower: 0.1 # lower bound for parameter + upper: 2 # upper bound for parameter + initial: 1 # initial value for parameter + log: false # log transform scaling factor + mixing/coef_mix_conv: + lower: 0.1 # lower bound for parameter + upper: 0.3 # upper bound for parameter + initial: 0.2 # initial value for parameter + log: false # log transform scaling factor + mixing/coef_mix_turb: + lower: 0.35 # lower bound for parameter + upper: 0.65 # upper bound for parameter + initial: 0.5 # initial value for parameter + log: false # log transform scaling factor + GOTM: # GOTM specific parameters + bottom/h0b: + lower: 0.025 # lower bound for parameter + upper: 0.075 # upper bound for parameter + initial: 0.05 # initial value for parameter + log: false # log transform scaling factor + turb_param/const_num: + lower: 2.5E-4 # lower bound for parameter + upper: 7.5E-4 # upper bound for parameter + initial: 5E-4 # initial value for parameter + log: false # log transform scaling factor + Simstrat: # Simstrat specific parameters + hgeo: + lower: 0.0 # lower bound for parameter + upper: 0.5 # upper bound for parameter + initial: 0.1 # initial value for parameter + log: false # log transform scaling factor + cd: + lower: 0.00075 # lower bound for parameter + upper: 0.00325 # upper bound for parameter + initial: 0.002 # initial value for parameter + log: false # log transform scaling factor diff --git a/LER_template/README.md b/LER_template/README.md new file mode 100644 index 0000000..0aee03e --- /dev/null +++ b/LER_template/README.md @@ -0,0 +1,6 @@ +## LakeEnsemblR config files + +Config files for for the calibration. The file named `LakeEnsemblR.yaml` will be used in the setup, so if you want to use the other one you need to rename the files. + + - `LakeEnsemblR.yaml`: Config file for the main calibration + - `LakeEnsemblR_r2.yaml`: Config file for the additional calibration for GOTM and Simstrat with constant `k_min` = 1e-8 and `a_seiche` = 0 \ No newline at end of file diff --git a/Scripts/Settings.R b/Scripts/Settings.R index dc9260c..c5669a0 100644 --- a/Scripts/Settings.R +++ b/Scripts/Settings.R @@ -37,9 +37,14 @@ lakes = c("Allequash", "Alqueva", "Annie", "Arendsee", "Argyle", "Biel", "Washington", "Windermere", "Wingra", "Zlutice", "Zurich") #lakes = "Kivu" #"Tahoe"# - + +## model to run models_to_run = c("FLake", "GLM", "GOTM", "Simstrat") +# # for additional calibration round only run GOTM and Simstrat +# models_to_run = c("GOTM", "Simstrat") + + calib_type = "standard" # "standard" or "cal_project"