diff --git a/build/launch_apptainer.sh b/build/launch_apptainer.sh deleted file mode 100755 index 6b74d3b2da9c3320df3ba94b28e1967ccfda10b5..0000000000000000000000000000000000000000 --- a/build/launch_apptainer.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -module load singularity - -singularity shell --bind /globalhome/kck540/HPC/SummaProjects/Summa-Actors:/Summa-Actors \ - --bind /scratch/gwf/gwf_cmt/kck540/SummaOutput/SummaActors:/output \ - --bind /project/gwf/gwf_cmt/kck540/domain_NorthAmerica/settings/SUMMA:/SUMMA \ - --bind /project/gwf/gwf_cmt/kck540/domain_NorthAmerica/forcing/SummaChunkedData/:/forcing \ - summa-actors.sif diff --git a/utils/StatisticsScripts/UsageStatsCSV.py b/utils/StatisticsScripts/UsageStatsCSV.py new file mode 100644 index 0000000000000000000000000000000000000000..bd90464ef2be5e7e1835578057ef6280e021bb7f --- /dev/null +++ b/utils/StatisticsScripts/UsageStatsCSV.py @@ -0,0 +1,159 @@ +import numpy as np +import pandas as pd +import statistics as stat +import csv +import matplotlib as mpl +import matplotlib.pyplot as plt + +def time_convert(x): + h,m,s = map(int,x.split(':')) + return (h*60+m)*60+s + + +def ramUsage(): + data_set_1_actors = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jul-08-2022/SummaActors_jobStats_63007640_Filled_failed.csv") + # data_set_2_actors = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jun-17-2022/SummaActors_jobStats_62270590.csv") + # data_set_3_actors = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/May-26-2022/SummaActors_jobStats_61263427.csv") + + data_set_1_original = pd.read_csv("/home/kklenk/SummaProjects/Summa-Actors/utils/StatisticsScripts/SummaOriginal_jobStats_63155456.csv") + # data_set_2_original = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-27-2022/SummaOriginal_jobStats_61377500.csv") + # data_set_3_original = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-30-2022/SummaOriginal_jobStats_61415123.csv") + + + df1_actors = pd.DataFrame(data_set_1_actors) + # df2_actors = pd.DataFrame(data_set_2_actors) + # df3_actors = pd.DataFrame(data_set_3_actors) + + + df1_original = pd.DataFrame(data_set_1_original) + # df2_original = pd.DataFrame(data_set_2_original) + # df3_original = pd.DataFrame(data_set_3_original) + + + actors_stat1 = [] + for x in df1_actors["Wall-Clock Time"].values: + actors_stat1.append(round((time_convert(x) / 60) / 60, 2)) + # actors_stat2 = [] + # for x in df2_actors["Wall-Clock Time"].values: + # actors_stat2.append(round((time_convert(x) / 60) / 60, 2)) + # actors_stat3 = [] + # for x in df3_actors["Wall-Clock Time"].values: + # actors_stat3.append(round((time_convert(x) / 60) / 60, 2)) + + print("SUMMA-Actors Array Job 1 Total Wall-Clock =", sum(actors_stat1)) + # print("SUMMA-Actors Array Job 2 Total Wall-Clock =", sum(actors_stat2)) + # print("SUMMA-Actors Array Job 3 Total Wall-Clock =", sum(actors_stat3)) + + original_stat1 = [] + for x in df1_original["Wall-Clock Time"].values: + original_stat1.append(round((time_convert(x) / 60) / 60, 2)) + # original_stat2 = [] + # for x in df2_original["Wall-Clock Time"].values: + # original_stat2.append(round((time_convert(x) / 60) / 60, 2)) + # original_stat3 = [] + # for x in df3_original["Wall-Clock Time"].values: + # original_stat3.append(round((time_convert(x) / 60) / 60, 2)) + print() + print("SUMMA-Original Array Job 1 Total Wall-Clock =", sum(original_stat1)) + # print("SUMMA-Original Array Job 2 Total Wall-Clock =", sum(original_stat2)) + # print("SUMMA-Original Array Job 3 Total Wall-Clock =", sum(original_stat3)) + + + + # usageStat4 = [] + # for x in df4["Wall-Clock Time"].values: + # usageStat4.append(round((time_convert(x) / 60) / 60, 2)) + + # print("Total Time Actor = ", sum(usageStat1)) + # print("Max Actor = ", max(usageStat1)) + # print("Min Actor = ", min(usageStat1)) + # print("----------------------------------------") + # print("Total Time Original = ", sum(usageStat2)) + # print("Max Original = ", max(usageStat2)) + # print("Min Original = ", min(usageStat2)) + + # # totalRam = [sum(usageStat1), sum(usageStat2), sum(usageStat4)] + # print("usageStat1 Total Ram Used = ", sum(usageStat1)) + # # print("usageStat1 Mean Ram Used = ", stat.mean(usageStat1)) + # print("usageStat2 Total Ram Used = ", sum(usageStat2)) + # print("usageStat2 Mean Ram Used = ", stat.mean(usageStat2)) + # print("usageStat4 Total Ram Used = ", sum(usageStat4)) + # print("usageStat4 Mean Ram Used = ", stat.mean(usageStat4)) + # print() + # print("variation = ", stat.stdev(totalRam) / stat.mean(totalRam)) + # csvFile = open("VarationStats.csv", 'w') + # header = ["relative standard deviation"] + + # csvFile.write("{}\n".format("relative standard deviation")) + + # for i in range(0, len(usageStat1)): + # l = [usageStat1[i], usageStat2[i], usageStat4[i]] + # csvFile.write("{}\n".format(stat.stdev(l) / stat.mean(l))) + + +def scatterPlot(): + data_set_1 = pd.read_csv("/home/kklenk/SummaProjects/Summa-Actors/utils/StatisticsScripts/VarationStats.csv") + + df = pd.DataFrame(data_set_1) + + d = df["relative standard deviation"].values + x = [] + for i in range(1, 515): + x.append(i) + print(len(x)) + print(len(d)) + plt.scatter(x, d) + plt.title("Coefficient of Variation Plot") + plt.xlabel("Job number") + plt.ylabel("Relative Standard Deviation") + plt.savefig("RSD-Actors.pdf", format="pdf", bbox_inches="tight") + plt.show() + + + +def initDuration(): + data_set_1 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jun-06-2022/csv/Success1.csv") + df = pd.DataFrame(data_set_1) + print(sum(df["initDuration"].values)) + +def findRow(df, startHRU): + bool_val = False + for row in df.iterrows(): + if row[1].iloc[0] == startHRU: + bool_val = True + break + + if (bool_val): + print("found", startHRU) + else: + print("did not find", startHRU) + + + + + + + +def compareCompleted(): + data_actor = pd.read_csv("/home/kklenk/SummaProjects/Summa-Actors/utils/StatisticsScripts/SummaActors_jobStats_62666948.csv", index_col=False) + data_original = pd.read_csv("/home/kklenk/SummaProjects/Summa-Actors/utils/StatisticsScripts/SummaOriginal_jobStats_62667162.csv", index_col=False) + df_actors = pd.DataFrame(data_actor) + df_original = pd.DataFrame(data_original) + + df_actors = df_actors.drop(df_actors[df_actors.Status == "TIMEOUT"].index) + # df_actors = df_actors.drop(columns=["Status","#-CPU","CPU Efficiency","Memory Used"]) + + df_original = df_original.drop(df_original[df_original.Status == "TIMEOUT"].index) + # df_original = df_original.drop(columns=["Status","#-CPU","CPU Efficiency","Memory Used"]) + + + for row in df_original.iterrows(): + # print(row[1].iloc[0]) + findRow(df_actors, row[1].iloc[0]) + + + # df_actors.to_csv("actors_no_timeout.csv", index=False) + # df_original.to_csv("original_no_timeout.csv", index=False) +ramUsage() +# compareCompleted() +# initDuration() diff --git a/utils/StatisticsScripts/ramUsage.py b/utils/StatisticsScripts/ramUsage.py deleted file mode 100644 index bb03fa1d08ef0b98daf98cdeab34338d7982bd7d..0000000000000000000000000000000000000000 --- a/utils/StatisticsScripts/ramUsage.py +++ /dev/null @@ -1,76 +0,0 @@ -import numpy as np -import pandas as pd -import statistics as stat -import csv -import matplotlib as mpl -import matplotlib.pyplot as plt - -def time_convert(x): - h,m,s = map(int,x.split(':')) - return (h*60+m)*60+s - - -def ramUsage(): - data_set_1 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jun-06-2022/SummaActors_jobStats_61721504.csv") - data_set_2 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/May-13-2022/SummaActors_jobStatistics_60829543.csv") - data_set_4 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/May-26-2022/SummaActors_jobStats_61263427.csv") - - # data_set_1 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/Apr-28-2022/SummaOrginal-60232429_jobStatistics.csv") - # data_set_2 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-27-2022/SummaOriginal_jobStats_61377500.csv") - # data_set_4 = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-30-2022/SummaOriginal_jobStats_61415123.csv") - - - df1 = pd.DataFrame(data_set_1) - df2 = pd.DataFrame(data_set_2) - df4 = pd.DataFrame(data_set_4) - - usageStat1 = [] - for x in df1["Wall-Clock Time"].values: - usageStat1.append(round((time_convert(x) / 60) / 60, 2)) - usageStat2 = [] - for x in df2["Wall-Clock Time"].values: - usageStat2.append(round((time_convert(x) / 60) / 60, 2)) - usageStat4 = [] - for x in df4["Wall-Clock Time"].values: - usageStat4.append(round((time_convert(x) / 60) / 60, 2)) - - totalRam = [sum(usageStat1), sum(usageStat2), sum(usageStat4)] - print("usageStat1 Total Ram Used = ", sum(usageStat1)) - print("usageStat1 Mean Ram Used = ", stat.mean(usageStat1)) - print("usageStat2 Total Ram Used = ", sum(usageStat2)) - print("usageStat2 Mean Ram Used = ", stat.mean(usageStat2)) - print("usageStat4 Total Ram Used = ", sum(usageStat4)) - print("usageStat4 Mean Ram Used = ", stat.mean(usageStat4)) - print() - print("variation = ", stat.stdev(totalRam) / stat.mean(totalRam)) - csvFile = open("VarationStats.csv", 'w') - header = ["relative standard deviation"] - - csvFile.write("{}\n".format("relative standard deviation")) - - for i in range(0, len(usageStat1)): - l = [usageStat1[i], usageStat2[i], usageStat4[i]] - csvFile.write("{}\n".format(stat.stdev(l) / stat.mean(l))) - - -def scatterPlot(): - data_set_1 = pd.read_csv("/home/kklenk/SummaProjects/Summa-Actors/utils/StatisticsScripts/VarationStats.csv") - - df = pd.DataFrame(data_set_1) - - d = df["relative standard deviation"].values - x = [] - for i in range(1, 515): - x.append(i) - print(len(x)) - print(len(d)) - plt.scatter(x, d) - plt.title("Coefficient of Variation Plot") - plt.xlabel("Job number") - plt.ylabel("Relative Standard Deviation") - plt.savefig("RSD-Actors.pdf", format="pdf", bbox_inches="tight") - plt.show() - - -# ramUsage() -scatterPlot() \ No newline at end of file diff --git a/utils/StatisticsScripts/resourageUsage.py b/utils/StatisticsScripts/resourageUsage.py index 5a824bee53e662f1fe0ed9e51a4616499c7f5175..49e9e8ef8a88a98606799dbe2750ed3cd30fd71b 100644 --- a/utils/StatisticsScripts/resourageUsage.py +++ b/utils/StatisticsScripts/resourageUsage.py @@ -13,8 +13,9 @@ This function uses the seff command and can get the following data: - CPU-Efficiency - Wall-Clock Time - Memory Used + - Completion Status ''' -def seffCommand(jobId, numJobs): +def seffCommand(jobId, numJobs, gru_per_job): input_prompt = "SummaActors: a\nSummaOriginal: o\n" # Get input from the user user_response = input(input_prompt) @@ -27,14 +28,14 @@ def seffCommand(jobId, numJobs): raise Exception("Something went wrong") csvFile = open(output_csv_name, 'w') - header = ["startHRU", "numHRU", "#-CPU", "CPU Efficiency", "Wall-Clock Time", "Memory Used"] + header = ["startHRU", "numHRU", "#-CPU", "CPU Efficiency", "Wall-Clock Time", "Memory Used", "Status"] writer = csv.writer(csvFile) writer.writerow(header) - numHRU = 1000 - for i in range(0, int(numJobs)): + numHRU = gru_per_job + for i in range(0, numJobs): print("Job", i) rowData = [] rowData = [numHRU * i + 1, numHRU] @@ -48,6 +49,7 @@ def seffCommand(jobId, numJobs): if b'CPU Efficiency:' in line: effeciency = line.decode().split(" ")[2] effeciency = effeciency.strip() + effeciency = effeciency.replace('%', '') if b'Job Wall-clock time:' in line: wallClock = line.decode().split(" ")[-1] @@ -56,11 +58,16 @@ def seffCommand(jobId, numJobs): if b'Memory Utilized:' in line: memory = line.decode().split(" ")[2] memory = memory.strip() + + if b'State:' in line: + status = line.decode().split(" ")[1] + status = status.strip() rowData.append(cores) rowData.append(effeciency) rowData.append(wallClock) rowData.append(memory) + rowData.append(status) writer.writerow(rowData) csvFile.close() @@ -71,6 +78,9 @@ print(jobId) numJobs = argv[2] print(numJobs) -seffCommand(jobId, numJobs) +gru_per_job = argv[3] +print(gru_per_job) + +seffCommand(jobId, int(numJobs), int(gru_per_job)) diff --git a/utils/StatisticsScripts/stats.py b/utils/StatisticsScripts/stats.py new file mode 100644 index 0000000000000000000000000000000000000000..1c64b27995ab751ce5f996886255c846cc90ffb6 --- /dev/null +++ b/utils/StatisticsScripts/stats.py @@ -0,0 +1,45 @@ +import numpy as np +import pandas as pd +import statistics as stat +import csv +import matplotlib as mpl +import matplotlib.pyplot as plt + +def time_convert(x): + h,m,s = map(int,x.split(':')) + return (h*60+m)*60+s + +def wallClockTime(data_set_1, data_set_2): + df1 = pd.DataFrame(data_set_1) + df2 = pd.DataFrame(data_set_2) + + df1_stat = [] + for time in df1["Wall-Clock Time"].values: + df1_stat.append(round((time_convert(time) / 60) / 60, 2)) + print("Total Wall Clock for data_set_1 =", sum(df1_stat)) + df2_stat = [] + for time in df2["Wall-Clock Time"].values: + df2_stat.append(round((time_convert(time) / 60) / 60, 2)) + print("Total Wall Clock for data_set_2 =", sum(df2_stat)) + +def cpuEfficiency(data_set_1, data_set_2): + df1 = pd.DataFrame(data_set_1) + df2 = pd.DataFrame(data_set_2) + + df1_stat = [] + for cpu_e in df1["CPU Efficiency"].values: + df1_stat.append(cpu_e) + print("Average CPU Efficiency for data_set_1 =", sum(df1_stat) / len(df1_stat)) + df2_stat = [] + for cpu_e in df2["CPU Efficiency"].values: + df2_stat.append(cpu_e) + print("Average CPU Efficiency for data_set_2 =", sum(df2_stat) / len(df1_stat)) + + + +data_set_actors = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jul-13-2022/SummaActors_jobStats_63221110.csv") +data_set_original = pd.read_csv("/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/Jul-09-2022/SummaOriginal_jobStats_63155456.csv") + +wallClockTime(data_set_actors, data_set_original) +print("") +cpuEfficiency(data_set_actors, data_set_original) \ No newline at end of file diff --git a/utils/containers/apptainer/build_apptainer_container.sh b/utils/containers/apptainer/build_apptainer_container.sh new file mode 100755 index 0000000000000000000000000000000000000000..fc9e567c6c5f29e0fdfd06dd26e152daaa947608 --- /dev/null +++ b/utils/containers/apptainer/build_apptainer_container.sh @@ -0,0 +1,3 @@ +#! /bin/bash + +sudo apptainer build summa_actors.sif summa_actors.def diff --git a/utils/containers/apptainer/summa-actors.def b/utils/containers/apptainer/summa-actors.def deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/containers/apptainer/summa_actors.def b/utils/containers/apptainer/summa_actors.def new file mode 100644 index 0000000000000000000000000000000000000000..e016b25b5d5f8481b68708cfd6a42f28c5762b31 --- /dev/null +++ b/utils/containers/apptainer/summa_actors.def @@ -0,0 +1,35 @@ +Bootstrap: docker +From: ubuntu:20.04 + +%post + apt-get update + # need to install locales and set to en_CA.UTF-8 + # this causes issues if not done + apt-get install locales + locale-gen en_CA.UTF-8 + apt-get upgrade -y && \ + DEBIAN_FRONTEND="noninteractive" apt-get install -y software-properties-common \ + libnetcdf-dev \ + libnetcdff-dev \ + liblapack-dev \ + libopenblas-dev \ + cmake \ + g++ \ + git \ + libssl-dev \ + make \ + gfortran \ + python3-pip \ + gdb &&\ + apt-get autoclean + + pip3 install xarray + pip3 install netcdf4 + cd /opt + git clone https://github.com/actor-framework/actor-framework.git + cd actor-framework + ./configure + cd build + make + make test + make install diff --git a/utils/extra_scripts/build_container.sh b/utils/extra_scripts/build_container.sh new file mode 100755 index 0000000000000000000000000000000000000000..fc65a05c128655e452f3f2ed8ec625723ac12173 --- /dev/null +++ b/utils/extra_scripts/build_container.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +if test -f "summa_actors.sif"; then + echo "Conatiner exists" +else + sudo apptainer build summa_actors.sif summa_actors.def +fi diff --git a/utils/extra_scripts/build_summa_actors_container.sh b/utils/extra_scripts/build_summa_actors_container.sh new file mode 100755 index 0000000000000000000000000000000000000000..06626809129981407a74a4ef33124f1f64bb4566 --- /dev/null +++ b/utils/extra_scripts/build_summa_actors_container.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +cd /Summa-Actors/build +make -f /Summa-Actors/build/makefile-container all \ No newline at end of file diff --git a/build/compile_summa.sh b/utils/extra_scripts/compile_summa.sh similarity index 83% rename from build/compile_summa.sh rename to utils/extra_scripts/compile_summa.sh index e8535b0e3cafc6ad45a09b34f390b76dfc61eaee..77ce42b45a077b06c4677b353dd9cec44bedffab 100644 --- a/build/compile_summa.sh +++ b/utils/extra_scripts/compile_summa.sh @@ -7,7 +7,7 @@ module load openblas module load caf #### Specifiy Master Directory, parent of build directory -export ROOT_DIR=/globalhome/kck540/HPC/SummaProjects/Summa-Actors +export F_MASTER=/home/kklenk/SummaProjects/Summa-Actors #### Specifiy Compilers #### export FC=gfortran @@ -28,11 +28,11 @@ export ACTORS_LIBRARIES="-L$EBROOTCAF/lib\ -L$EBROOTCAF/lib64\ -L$EBROOTNETCDFMINFORTRAN/lib64\ -L$EBROOTOPENBLAS/lib\ - -L$ROOT_DIR/bin\ + -L$F_MASTER/bin\ -lcaf_core -lcaf_io -lsumma -lopenblas -lnetcdff" #### Compile with the Makefile #### -make -f ${ROOT_DIR}/build/makefile all +make -f ${F_MASTER}/build/makefile -export LD_LIBRARY_PATH=${ROOT_DIR}/bin \ No newline at end of file +export LD_LIBRARY_PATH=${F_MASTER}/bin \ No newline at end of file diff --git a/utils/extra_scripts/launch_summa_actors_build_process.sh b/utils/extra_scripts/launch_summa_actors_build_process.sh new file mode 100755 index 0000000000000000000000000000000000000000..6a537f51d4c3ed1a1e926b3bcdc338abf66f07ff --- /dev/null +++ b/utils/extra_scripts/launch_summa_actors_build_process.sh @@ -0,0 +1,8 @@ +#!/bin/bash +############# +## File in the path that SUMMA-Actors top level directory is located in +############### + +SUMMA_ACTORS=/home/kklenk/Summa-Projects/Summa-Actors # top level directory + +apptainer exec --bind $SUMMA_ACTORS:/Summa-Actors summa_actors.sif /Summa-Actors/build/build_summa_actors_container.sh \ No newline at end of file diff --git a/build/makefile-container b/utils/extra_scripts/makefile-container similarity index 100% rename from build/makefile-container rename to utils/extra_scripts/makefile-container diff --git a/build/module_load.sh b/utils/extra_scripts/module_load.sh similarity index 100% rename from build/module_load.sh rename to utils/extra_scripts/module_load.sh diff --git a/build/run_script.sh b/utils/extra_scripts/run_script.sh similarity index 74% rename from build/run_script.sh rename to utils/extra_scripts/run_script.sh index e06abf741305ed0defbc90aea59e7aa0a2c6caed..06e4b8284a4c456803cc40dcd783abd1ee3028d2 100755 --- a/build/run_script.sh +++ b/utils/extra_scripts/run_script.sh @@ -1,6 +1,6 @@ #!/bin/bash cd /Summa-Actors/build -make -f /Summa-Actors/build/makefile-container all +# make -f /Summa-Actors/build/makefile-container all export LD_LIBRARY_PATH=/Summa-Actors/bin cd /Summa-Actors/bin ./summaMain -c /gladwell/kck540/Summa-Distributed/herschel/ \ No newline at end of file diff --git a/utils/laugh_tests/celia1990/output/runinfo.txt b/utils/laugh_tests/celia1990/output/runinfo.txt index 0fb846b9dd8b00d41150efe03496908681b8bf59..3bdf9dca0db5e67d7f65e281dd9aad18332981d9 100644 --- a/utils/laugh_tests/celia1990/output/runinfo.txt +++ b/utils/laugh_tests/celia1990/output/runinfo.txt @@ -1 +1 @@ - Run start time on system: ccyy=2022 - mm=08 - dd=15 - hh=02 - mi=49 - ss=46.316 + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=21 - mi=31 - ss=01.667 diff --git a/utils/laugh_tests/celia1990/verify_celia.py b/utils/laugh_tests/celia1990/verify_celia.py index e319c807c1e805bc4d7e9a825d6dab629468a0de..227b7a1f1f0a9e6fa120efe14cc04e4824b13856 100644 --- a/utils/laugh_tests/celia1990/verify_celia.py +++ b/utils/laugh_tests/celia1990/verify_celia.py @@ -102,11 +102,7 @@ for iHRU in range(0, numHRU): print(" verified_hru = ", verified_data[elem]) print(" hru_to_compare = ", to_verify_data[elem]) break - - # if (verified_hru[var].values != hru_to_compare[var].values).all(): - # print("ERROR: Output data is not the same in",var) - # print(" verified_hru = ", verified_hru[var].values) - # print(" hru_to_compare = ", hru_to_compare[var].values) + except TypeError: print("variable - ", var, "Cannot be compared with len") print(" verified_hru = ",verified_hru[var].values) diff --git a/utils/laugh_tests/colbeck1976/config/exp1/Summa_Actors_Settings.json b/utils/laugh_tests/colbeck1976/config/exp1/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..4471c5d259c64404a349f32844b54fcd779504df --- /dev/null +++ b/utils/laugh_tests/colbeck1976/config/exp1/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp1.txt", + "outputCSV": false, + "csvPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/output/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} diff --git a/utils/laugh_tests/colbeck1976/config/exp2/Summa_Actors_Settings.json b/utils/laugh_tests/colbeck1976/config/exp2/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..c463fa224e7fbe6e12b5e007df55857c3c601765 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/config/exp2/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp2.txt", + "outputCSV": false, + "csvPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/output/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} diff --git a/utils/laugh_tests/colbeck1976/config/exp3/Summa_Actors_Settings.json b/utils/laugh_tests/colbeck1976/config/exp3/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..c18a9282d9c2368603b94073b26dd4a4d6463897 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/config/exp3/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp3.txt", + "outputCSV": false, + "csvPath": "/Summa-Actors/utils/laugh_tests/colbeck1976/output/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} diff --git a/utils/laugh_tests/colbeck1976/output/colbeck1976-exp1GRU1-1_timestep.nc b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp1GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..5c4b9adb2d00c716208b87546a6e3806fe85208f Binary files /dev/null and b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp1GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/output/colbeck1976-exp2GRU1-1_timestep.nc b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp2GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..ce00720f1b5a90c8340bd4de76367f035f977b60 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp2GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/output/colbeck1976-exp3GRU1-1_timestep.nc b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp3GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..cee21d14a88c0a1c36adf2d91b369fcf84eea934 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/output/colbeck1976-exp3GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/output/runinfo.txt b/utils/laugh_tests/colbeck1976/output/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..390c561e4cf795063e2f5bec9066ba19b30a6de8 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/output/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=21 - mi=31 - ss=26.957 diff --git a/utils/laugh_tests/colbeck1976/run_test.sh b/utils/laugh_tests/colbeck1976/run_test.sh deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/laugh_tests/colbeck1976/run_test_summa.sh b/utils/laugh_tests/colbeck1976/run_test_summa.sh new file mode 100755 index 0000000000000000000000000000000000000000..f4ed0cce1905d174b2e7642ff4a20f24c8d04444 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/run_test_summa.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp1.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp2.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp3.txt \ No newline at end of file diff --git a/utils/laugh_tests/colbeck1976/run_test_summa_actors.sh b/utils/laugh_tests/colbeck1976/run_test_summa_actors.sh new file mode 100755 index 0000000000000000000000000000000000000000..27be92c0c34b633daae21832d34cf17d39bf416b --- /dev/null +++ b/utils/laugh_tests/colbeck1976/run_test_summa_actors.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/colbeck1976/config/exp1 +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/colbeck1976/config/exp2 +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/colbeck1976/config/exp3 diff --git a/utils/laugh_tests/colbeck1976/settings/summa_defineModelOutput.txt b/utils/laugh_tests/colbeck1976/settings/summa_defineModelOutput.txt new file mode 100644 index 0000000000000000000000000000000000000000..bfca6f739507af8bb97caa0bd26997d2c42758e8 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_defineModelOutput.txt @@ -0,0 +1,11 @@ +! --------- +! model variables +! --------- +scalarRainfall | 1 +scalarSnowfall | 1 +scalarRainPlusMelt | 1 +mLayerVolFracLiq | 1 +mLayerVolFracIce | 1 +iLayerNrgFlux | 1 +iLayerHeight | 1 +mLayerDepth | 1 diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp1.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp1.txt new file mode 100644 index 0000000000000000000000000000000000000000..cc2ee6efbcf874861630fb567cb1adc13977ddeb --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp1.txt @@ -0,0 +1,23 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/output/' ! OUTPUT_PATH +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp1.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp1.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp1' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp1.txt \ No newline at end of file diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp2.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp2.txt new file mode 100644 index 0000000000000000000000000000000000000000..ede30b91a02e43f1acfad1f741e3b71686fc7321 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp2.txt @@ -0,0 +1,23 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/output/' ! OUTPUT_PATH +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp2.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp2.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp2' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp2.txt diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp3.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp3.txt new file mode 100644 index 0000000000000000000000000000000000000000..5edc0ba40d167ef0d9a16e9678a859636f5f23fe --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_colbeck1976-exp3.txt @@ -0,0 +1,23 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/output/' ! OUTPUT_PATH +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp3.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp3.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp3' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp3.txt diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp2.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp2.txt new file mode 100644 index 0000000000000000000000000000000000000000..c649253189665863086c5918ac3eefdecd601cd3 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp2.txt @@ -0,0 +1,21 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/verification_data/' ! OUTPUT_PATH +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp2.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp2.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp2' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp2.txt diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp3.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp3.txt new file mode 100644 index 0000000000000000000000000000000000000000..f3fa77602274bdd44da3e7aab80e7e78ae219ccd --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1976-exp3.txt @@ -0,0 +1,21 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/verification_data/' ! OUTPUT_PATH +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp3.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp3.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp3' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp3.txt diff --git a/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1979-exp1.txt b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1979-exp1.txt new file mode 100644 index 0000000000000000000000000000000000000000..f0621c14aca3d7d6616d8173af398aec3a182348 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_fileManager_verify_colbeck1979-exp1.txt @@ -0,0 +1,21 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! +simStartTime '1990-01-01 00:01' ! +simEndTime '1990-01-01 10:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/colbeck1976/settings/' ! SETNGS_PATH +forcingPath '/Summa-Actors/utils/laugh_tests/colbeck1976/forcing_data/' ! INPUT_PATH +outputPath '/Summa-Actors/utils/laugh_tests/colbeck1976/verification_data/' ! OUTPUT_PATH +decisionsFile 'summa_zDecisions_colbeck1976.txt' ! M_DECISIONS = definition of model decisions +outputControlFile 'summa_defineModelOutput.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! LOCALPARAM_INFO = default values and constraints for local model parameters +globalGruParamFile 'summa_zBasinParamInfo.txt' ! BASINPARAM_INFO = default values and constraints for basin-average parameters +attributeFile 'summa_zLocalAttributes.nc' ! LOCAL_ATTRIBUTES = local attributes +trialParamFile 'summa_zParamTrial_colbeck1976-exp1.nc' ! PARAMETER_TRIAL = trial values for model parameters +forcingListFile 'summa_zForcingFileList.txt' ! FORCING_FILELIST = list of files used in each HRU +initConditionFile 'summa_zInitialCond_colbeck1976-exp1.nc' ! MODEL_INITCOND = model initial conditions +outFilePrefix 'colbeck1976-exp1' ! OUTPUT_PREFIX = prefix for the output file +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp1.txt \ No newline at end of file diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zBasinParamInfo.txt b/utils/laugh_tests/colbeck1976/settings/summa_zBasinParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1926fd71fbc6ce90cd4180f652ae414885e4b611 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_zBasinParamInfo.txt @@ -0,0 +1,35 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! DEFINE BASIN MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a1), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! *********************************************************************************************************************** +! +! ******************************************************************** +! define format string for parameter descriptions +! ******************************************************************** +'(a25,1x,a1,1x,3(f12.4,1x,a1,1x))' ! format string for parameter descriptions (must be in single quotes) +! ******************************************************************** +! baseflow +! ******************************************************************** +basin__aquiferHydCond | 0.0100 | 0.0001 | 10.0000 +basin__aquiferScaleFactor | 3.5000 | 0.1000 | 100.0000 +basin__aquiferBaseflowExp | 5.0000 | 1.0000 | 10.0000 +! ******************************************************************** +! within-grid routing +! ******************************************************************** +routingGammaShape | 2.5000 | 2.0000 | 3.0000 +routingGammaScale | 20000.0000 | 1.0000 | 5000000.0000 +! ******************************************************************** diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zDecisions_colbeck1976.txt b/utils/laugh_tests/colbeck1976/settings/summa_zDecisions_colbeck1976.txt new file mode 100644 index 0000000000000000000000000000000000000000..f5ac1fa2017c484c54809ff8a92f921a4af24451 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_zDecisions_colbeck1976.txt @@ -0,0 +1,170 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE MODEL DECISIONS +! *********************************************************************************************************************** +! This file defines the modeling decisions used. +! NOTES: +! (1) lines starting with ! are treated as comment lines -- there is no limit on the number of comment lines +! (2) the name of the decision is followed by the character string defining the decision +! (3) the simulation start/end times must be within single quotes +! *********************************************************************************************************************** +! *********************************************************************************************************************** +soilCatTbl ROSETTA ! (03) soil-category dateset +vegeParTbl USGS ! (04) vegetation category dataset +soilStress NoahType ! (05) choice of function for the soil moisture control on stomatal resistance +stomResist BallBerry ! (06) choice of function for stomatal resistance +! *********************************************************************************************************************** +num_method itertive ! (07) choice of numerical method +fDerivMeth analytic ! (08) method used to calculate flux derivatives +LAI_method monTable ! (09) method used to determine LAI and SAI +f_Richards mixdform ! (10) form of Richard's equation +groundwatr noXplict ! (11) choice of groundwater parameterization +hc_profile constant ! (12) choice of hydraulic conductivity profile +bcUpprTdyn zeroFlux ! (13) type of upper boundary condition for thermodynamics +bcLowrTdyn zeroFlux ! (14) type of lower boundary condition for thermodynamics +bcUpprSoiH liq_flux ! (15) type of upper boundary condition for soil hydrology +bcLowrSoiH drainage ! (16) type of lower boundary condition for soil hydrology +veg_traits CM_QJRMS1988 ! (17) choice of parameterization for vegetation roughness length and displacement height +canopyEmis difTrans ! (18) choice of parameterization for canopy emissivity +snowIncept lightSnow ! (19) choice of parameterization for snow interception +windPrfile logBelowCanopy ! (20) choice of wind profile through the canopy +astability louisinv ! (21) choice of stability function +canopySrad CLM_2stream ! (22) choice of canopy shortwave radiation method +alb_method varDecay ! (23) choice of albedo representation +compaction anderson ! (24) choice of compaction routine +snowLayers jrdn1991 ! (25) choice of method to combine and sub-divide snow layers +thCondSnow smnv2000 ! (26) choice of thermal conductivity representation for snow +thCondSoil mixConstit ! (27) choice of thermal conductivity representation for soil +spatial_gw localColumn ! (28) choice of method for the spatial representation of groundwater +subRouting timeDlay ! (29) choice of method for sub-grid routing +! *********************************************************************************************** +! ***** description of the options available -- nothing below this point is read **************** +! *********************************************************************************************** +! ----------------------------------------------------------------------------------------------- +! (01) simulation start time +! (02) simulation end time +! ----------------------------------------------------------------------------------------------- +! (03) soil-category dateset +! STAS ! STATSGO dataset +! STAS-RUC ! ?? +! ROSETTA ! merged Rosetta table with STAS-RUC +! ----------------------------------------------------------------------------------------------- +! (04) vegetation category dataset +! USGS ! USGS 24/27 category dataset +! MODIFIED_IGBP_MODIS_NOAH ! MODIS 20-category dataset +! ----------------------------------------------------------------------------------------------- +! (05) choice of function for the soil moisture control on stomatal resistance +! NoahType ! thresholded linear function of volumetric liquid water content +! CLM_Type ! thresholded linear function of matric head +! SiB_Type ! exponential of the log of matric head +! ----------------------------------------------------------------------------------------------- +! (06) choice of function for stomatal resistance +! BallBerry ! Ball-Berry +! Jarvis ! Jarvis +! ----------------------------------------------------------------------------------------------- +! (07) choice of numerical method +! itertive ! iterative +! non_iter ! non-iterative +! itersurf ! iterate only on the surface energy balance +! ----------------------------------------------------------------------------------------------- +! (08) method used to calculate flux derivatives +! numericl ! numerical derivatives +! analytic ! analytical derivatives +! ----------------------------------------------------------------------------------------------- +! (09) method used to determine LAI and SAI +! monTable ! LAI/SAI taken directly from a monthly table for different vegetation classes +! specified ! LAI/SAI computed from green vegetation fraction and winterSAI and summerLAI parameters +! ----------------------------------------------------------------------------------------------- +! (10) form of Richards' equation +! moisture ! moisture-based form of Richards' equation +! mixdform ! mixed form of Richards' equation +! ----------------------------------------------------------------------------------------------- +! (11) choice of groundwater parameterization +! qTopmodl ! topmodel parameterization +! bigBuckt ! a big bucket (lumped aquifer model) +! noXplict ! no explicit groundwater parameterization +! ----------------------------------------------------------------------------------------------- +! (12) choice of hydraulic conductivity profile +! constant ! constant hydraulic conductivity with depth +! pow_prof ! power-law profile +! ----------------------------------------------------------------------------------------------- +! (13) choice of upper boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! nrg_flux ! energy flux +! ----------------------------------------------------------------------------------------------- +! (14) choice of lower boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (15) choice of upper boundary conditions for soil hydrology +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! liq_flux ! liquid water flux +! ----------------------------------------------------------------------------------------------- +! (16) choice of lower boundary conditions for soil hydrology +! drainage ! free draining +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! bottmPsi ! function of matric head in the lower-most layer +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (17) choice of parameterization for vegetation roughness length and displacement height +! Raupach_BLM1994 ! Raupach (BLM 1994) "Simplified expressions..." +! CM_QJRMS1988 ! Choudhury and Monteith (QJRMS 1998) "A four layer model for the heat budget..." +! vegTypeTable ! constant parameters dependent on the vegetation type +! ----------------------------------------------------------------------------------------------- +! (18) choice of parameterization for canopy emissivity +! simplExp ! simple exponential function +! difTrans ! parameterized as a function of diffuse transmissivity +! ----------------------------------------------------------------------------------------------- +! (19) choice of parameterization for snow interception +! stickySnow ! maximum interception capacity an increasing function of temerature +! lightSnow ! maximum interception capacity an inverse function of new snow density +! ----------------------------------------------------------------------------------------------- +! (20) choice of wind profile +! exponential ! exponential wind profile extends to the surface +! logBelowCanopy ! logarithmic profile below the vegetation canopy +! ----------------------------------------------------------------------------------------------- +! (21) choice of stability function +! standard ! standard MO similarity, a la Anderson (1979) +! louisinv ! Louis (1979) inverse power function +! mahrtexp ! Mahrt (1987) exponential function +! ----------------------------------------------------------------------------------------------- +! (22) choice of canopy shortwave radiation method +! noah_mp ! full Noah-MP implementation (including albedo) +! CLM_2stream ! CLM 2-stream model (see CLM documentation) +! UEB_2stream ! UEB 2-stream model (Mahat and Tarboton, WRR 2011) +! NL_scatter ! Simplified method Nijssen and Lettenmaier (JGR 1999) +! BeersLaw ! Beer's Law (as implemented in VIC) +! ----------------------------------------------------------------------------------------------- +! (23) choice of albedo representation +! conDecay ! constant decay rate (e.g., VIC, CLASS) +! varDecay ! variable decay rate (e.g., BATS approach, with destructive metamorphism + soot content) +! ----------------------------------------------------------------------------------------------- +! (24) choice of compaction routine +! consettl ! constant settlement rate +! anderson ! semi-empirical method of Anderson (1976) +! ----------------------------------------------------------------------------------------------- +! (25) choice of method to combine and sub-divide snow layers +! CLM_2010 ! CLM option: combination/sub-dividion rules depend on layer index +! jrdn1991 ! SNTHERM option: same combination/sub-dividion rules applied to all layers +! ----------------------------------------------------------------------------------------------- +! (26) choice of thermal conductivity representation for snow +! tyen1965 ! Yen (1965) +! melr1977 ! Mellor (1977) +! jrdn1991 ! Jordan (1991) +! smnv2000 ! Smirnova et al. (2000) +! ----------------------------------------------------------------------------------------------- +! (27) choice of thermal conductivity representation for soil +! funcSoilWet ! function of soil wetness +! mixConstit ! mixture of constituents +! hanssonVZJ ! test case for the mizoguchi lab experiment, Hansson et al. VZJ 2004 +! ----------------------------------------------------------------------------------------------- +! (28) choice of method for the spatial representation of groundwater +! localColumn ! separate groundwater representation in each local soil column +! singleBasin ! single groundwater store over the entire basin +! ----------------------------------------------------------------------------------------------- +! (29) choice of method for sub-grid routing +! timeDlay ! time-delay histogram +! qInstant ! instantaneous routing +! *********************************************************************************************** +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp1.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp2.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp3.txt diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zForcingFileList.txt b/utils/laugh_tests/colbeck1976/settings/summa_zForcingFileList.txt new file mode 100644 index 0000000000000000000000000000000000000000..8a3f73ef9c62fd5227b1f204b25f215fd903aded --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_zForcingFileList.txt @@ -0,0 +1,8 @@ +! **************************************************************************************************** +! List of forcing data files used +! +! This file includes one "word" per line: +! (1) The name of a forcing file +! --> filename must be in single quotes +! **************************************************************************************************** + 'colbeck1976_forcing.nc' diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zForcingInfo_colbeck1976.txt b/utils/laugh_tests/colbeck1976/settings/summa_zForcingInfo_colbeck1976.txt new file mode 100644 index 0000000000000000000000000000000000000000..8b6d3f15142165983cc8aa9c2a36608f9ebb77c8 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_zForcingInfo_colbeck1976.txt @@ -0,0 +1,29 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE FORCING FILE +! *********************************************************************************************************************** +! This file defines the name of the forcing data file, the number of columns in the file, the column index for each data +! variable, the start index of the simulation period, the length of the simulation period, +! and the length of the data time step +! *********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! *********************************************************************************************************************** +'(a15,a1,1x,a)' +filenmData | colbeck1976_forcing.txt ! name of the forcing data file (must be in single quotes) +ncols | 13 ! number of columns in the forcing file +iyyy | 1 ! year +im | 2 ! month +id | 3 ! day +ih | 4 ! hour +imin | 5 ! minute +pptrate | 7 ! precipitation rate (kg m-2 s-1) +SWRadAtm | 8 ! downwelling shortwave radiaiton (W m-2) +LWRadAtm | 9 ! downwelling longwave radiation (W m-2) +airtemp | 10 ! air temperature (K) +windspd | 11 ! windspeed (m/s) +airpres | 12 ! pressure (Pa) +spechum | 13 ! specific humidity (g/g) +data_step | 60 ! length of time step (seconds) diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp1.nc b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp1.nc new file mode 100644 index 0000000000000000000000000000000000000000..6328ec1c30d23d1b13a6e01c207a86dc273940dc Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp1.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp2.nc b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp2.nc new file mode 100644 index 0000000000000000000000000000000000000000..9859d7f3847bd47a442074287cac74e3796fd4fd Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp2.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp3.nc b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp3.nc new file mode 100644 index 0000000000000000000000000000000000000000..9859d7f3847bd47a442074287cac74e3796fd4fd Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zInitialCond_colbeck1976-exp3.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zLocalAttributes.nc b/utils/laugh_tests/colbeck1976/settings/summa_zLocalAttributes.nc new file mode 100644 index 0000000000000000000000000000000000000000..010c8d745e57d7a4b3ccba3834bc0869f23e9b81 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zLocalAttributes.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zLocalParamInfo.txt b/utils/laugh_tests/colbeck1976/settings/summa_zLocalParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..a9972fc424d7061cc81eb546548c06f009289d95 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/settings/summa_zLocalParamInfo.txt @@ -0,0 +1,226 @@ +! ======================================================================================================================= +! ======================================================================================================================= +! ===== DEFINITION OF MODEL PARAMETERS ================================================================================== +! ======================================================================================================================= +! ======================================================================================================================= +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! ======================================================================================================================= +! DEFINE SITE MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! ======================================================================================================================= +! +! ==================================================================== +! define format string for parameter descriptions +! ==================================================================== +'(a25,1x,3(a1,1x,f12.4,1x))' ! format string (must be in single quotes) +! ==================================================================== +! boundary conditions +! ==================================================================== +upperBoundHead | -0.7500 | -100.0000 | -0.0100 +lowerBoundHead | -10.0000 | -100.0000 | -0.0100 +upperBoundTheta | 0.2004 | 0.1020 | 0.3680 +lowerBoundTheta | 0.1100 | 0.1020 | 0.3680 +upperBoundTemp | 272.1600 | 270.1600 | 280.1600 +lowerBoundTemp | 274.1600 | 270.1600 | 280.1600 +! ==================================================================== +! precipitation partitioning +! ==================================================================== +tempCritRain | 273.1600 | 272.1600 | 274.1600 +tempRangeTimestep | 2.0000 | 0.5000 | 5.0000 +frozenPrecipMultip | 1.0000 | 0.5000 | 1.5000 +! ==================================================================== +! snow properties +! ==================================================================== +snowfrz_scale | 50.0000 | 10.0000 | 1000.0000 +fixedThermalCond_snow | 0.3500 | 0.1000 | 1.0000 +! ==================================================================== +! snow albedo +! ==================================================================== +albedoMax | 0.8400 | 0.7000 | 0.9500 +albedoMinWinter | 0.5500 | 0.6000 | 1.0000 +albedoMinSpring | 0.5500 | 0.3000 | 1.0000 +albedoMaxVisible | 0.9500 | 0.7000 | 0.9500 +albedoMinVisible | 0.7500 | 0.5000 | 0.7500 +albedoMaxNearIR | 0.6500 | 0.5000 | 0.7500 +albedoMinNearIR | 0.3000 | 0.1500 | 0.4500 +albedoDecayRate | 1.0d+6 | 0.1d+6 | 5.0d+6 +albedoSootLoad | 0.3000 | 0.1000 | 0.5000 +albedoRefresh | 1.0000 | 1.0000 | 10.0000 +! ==================================================================== +! radiation transfer within snow +! ==================================================================== +radExt_snow | 20.0000 | 20.0000 | 20.0000 +directScale | 0.0900 | 0.0000 | 0.5000 +Frad_direct | 0.7000 | 0.0000 | 1.0000 +Frad_vis | 0.5000 | 0.0000 | 1.0000 +! ==================================================================== +! new snow density +! ==================================================================== +newSnowDenMin | 100.0000 | 50.0000 | 100.0000 +newSnowDenMult | 100.0000 | 25.0000 | 75.0000 +newSnowDenScal | 5.0000 | 1.0000 | 5.0000 +constSnowDen | 100.0000 | 50.0000 | 250.0000 +newSnowDenAdd | 109.0000 | 80.0000 | 120.0000 +newSnowDenMultTemp | 6.0000 | 1.0000 | 12.0000 +newSnowDenMultWind | 26.0000 | 16.0000 | 36.0000 +newSnowDenMultAnd | 1.0000 | 1.0000 | 3.0000 +newSnowDenBase | 0.0000 | 0.0000 | 0.0000 +! ==================================================================== +! snow compaction +! ==================================================================== +densScalGrowth | 0.0460 | 0.0230 | 0.0920 +tempScalGrowth | 0.0400 | 0.0200 | 0.0600 +grainGrowthRate | 2.7d-6 | 1.0d-6 | 5.0d-6 +densScalOvrbdn | 0.0230 | 0.0115 | 0.0460 +tempScalOvrbdn | 0.0800 | 0.6000 | 1.0000 +baseViscosity | 9.0d+5 | 5.0d+5 | 1.5d+6 +! ==================================================================== +! water flow through snow +! ==================================================================== +Fcapil | 0.0600 | 0.0100 | 0.1000 +k_snow | 0.0150 | 0.0050 | 0.0500 +mw_exp | 3.0000 | 1.0000 | 5.0000 +! ==================================================================== +! turbulent heat fluxes +! ==================================================================== +z0Snow | 0.0010 | 0.0010 | 10.0000 +z0Soil | 0.0100 | 0.0010 | 10.0000 +z0Canopy | 0.1000 | 0.0010 | 10.0000 +zpdFraction | 0.6500 | 0.5000 | 0.8500 +critRichNumber | 0.2000 | 0.1000 | 1.0000 +Louis79_bparam | 9.4000 | 9.2000 | 9.6000 +Louis79_cStar | 5.3000 | 5.1000 | 5.5000 +Mahrt87_eScale | 1.0000 | 0.5000 | 2.0000 +leafExchangeCoeff | 0.0100 | 0.0010 | 0.1000 +windReductionParam | 0.2800 | 0.0000 | 1.0000 +! ==================================================================== +! stomatal conductance +! ==================================================================== +Kc25 | 296.0770 | 296.0770 | 296.0770 +Ko25 | 0.2961 | 0.2961 | 0.2961 +Kc_qFac | 2.1000 | 2.1000 | 2.1000 +Ko_qFac | 1.2000 | 1.2000 | 1.2000 +kc_Ha | 79430.0000 | 79430.0000 | 79430.0000 +ko_Ha | 36380.0000 | 36380.0000 | 36380.0000 +vcmax25_canopyTop | 40.0000 | 20.0000 | 100.0000 +vcmax_qFac | 2.4000 | 2.4000 | 2.4000 +vcmax_Ha | 65330.0000 | 65330.0000 | 65330.0000 +vcmax_Hd | 220000.0000 | 149250.0000 | 149250.0000 +vcmax_Sv | 710.0000 | 485.0000 | 485.0000 +vcmax_Kn | 0.6000 | 0.0000 | 1.2000 +jmax25_scale | 2.0000 | 2.0000 | 2.0000 +jmax_Ha | 43540.0000 | 43540.0000 | 43540.0000 +jmax_Hd | 152040.0000 | 152040.0000 | 152040.0000 +jmax_Sv | 495.0000 | 495.0000 | 495.0000 +fractionJ | 0.1500 | 0.1500 | 0.1500 +quantamYield | 0.0500 | 0.0500 | 0.0500 +vpScaleFactor | 1500.0000 | 1500.0000 | 1500.0000 +cond2photo_slope | 9.0000 | 1.0000 | 10.0000 +minStomatalConductance | 2000.0000 | 2000.0000 | 2000.0000 +! ==================================================================== +! vegetation properties +! ==================================================================== +winterSAI | 1.0000 | 0.0100 | 3.0000 +summerLAI | 3.0000 | 0.0100 | 10.0000 +rootScaleFactor1 | 2.0000 | 1.0000 | 10.0000 +rootScaleFactor2 | 5.0000 | 1.0000 | 10.0000 +rootingDepth | 0.5000 | 0.0100 | 10.0000 +rootDistExp | 1.0000 | 0.0100 | 1.0000 +plantWiltPsi | -150.0000 | -500.0000 | 0.0000 +soilStressParam | 5.8000 | 4.3600 | 6.3700 +critSoilWilting | 0.0750 | 0.0000 | 1.0000 +critSoilTranspire | 0.1750 | 0.0000 | 1.0000 +critAquiferTranspire | 0.2000 | 0.1000 | 10.0000 +minStomatalResistance | 50.0000 | 10.0000 | 200.0000 +leafDimension | 0.0400 | 0.0100 | 0.1000 +heightCanopyTop | 20.0000 | 0.0500 | 100.0000 +heightCanopyBottom | 2.0000 | 0.0000 | 5.0000 +specificHeatVeg | 874.0000 | 500.0000 | 1500.0000 +maxMassVegetation | 25.0000 | 1.0000 | 50.0000 +throughfallScaleSnow | 0.5000 | 0.1000 | 0.9000 +throughfallScaleRain | 0.5000 | 0.1000 | 0.9000 +refInterceptCapSnow | 6.6000 | 1.0000 | 10.0000 +refInterceptCapRain | 1.0000 | 0.0100 | 1.0000 +snowUnloadingCoeff | 0.0000 | 0.0000 | 1.5d-6 +canopyDrainageCoeff | 0.0050 | 0.0010 | 0.0100 +ratioDrip2Unloading | 0.4000 | 0.0000 | 1.0000 +canopyWettingFactor | 0.7000 | 0.0000 | 1.0000 +canopyWettingExp | 1.0000 | 0.0000 | 1.0000 +! ==================================================================== +! soil properties +! ==================================================================== +soil_dens_intr | 2700.0000 | 500.0000 | 4000.0000 +thCond_soil | 5.5000 | 2.9000 | 8.4000 +frac_sand | 0.1600 | 0.0000 | 1.0000 +frac_silt | 0.2800 | 0.0000 | 1.0000 +frac_clay | 0.5600 | 0.0000 | 1.0000 +fieldCapacity | 0.2000 | 0.0000 | 1.0000 +wettingFrontSuction | 0.3000 | 0.1000 | 1.5000 +theta_mp | 0.4010 | 0.3000 | 0.6000 +theta_sat | 0.5500 | 0.3000 | 0.6000 +theta_res | 0.1390 | 0.0010 | 0.1000 +vGn_alpha | -0.8400 | -1.0000 | -0.0100 +vGn_n | 1.3000 | 1.0000 | 3.0000 +mpExp | 5.0000 | 1.0000 | 10.0000 +k_soil | 7.5d-06 | 1.d-07 | 100.d-07 +k_macropore | 1.0d-03 | 1.d-07 | 100.d-07 +kAnisotropic | 1.0000 | 0.0001 | 10.0000 +zScale_TOPMODEL | 2.5000 | 0.1000 | 100.0000 +compactedDepth | 1.0000 | 0.0000 | 1.0000 +aquiferScaleFactor | 0.3500 | 0.1000 | 100.0000 +aquiferBaseflowExp | 2.0000 | 1.0000 | 10.0000 +aquiferBaseflowRate | 2.0000 | 1.0000 | 10.0000 +qSurfScale | 50.0000 | 1.0000 | 100.0000 +specificYield | 0.2000 | 0.1000 | 0.3000 +specificStorage | 1.d-09 | 1.d-05 | 1.d-07 +f_impede | 2.0000 | 1.0000 | 10.0000 +soilIceScale | 0.1300 | 0.0001 | 1.0000 +soilIceCV | 0.4500 | 0.1000 | 5.0000 +! ==================================================================== +! algorithmic control parameters +! ==================================================================== +minwind | 0.1000 | 0.0010 | 1.0000 +minstep | 1.0000 | 1.0000 | 1800.0000 +maxstep | 3600.0000 | 60.0000 | 1800.0000 +wimplicit | 0.0000 | 0.0000 | 1.0000 +maxiter | 100.0000 | 1.0000 | 100.0000 +relConvTol_liquid | 1.0d-3 | 1.0d-5 | 1.0d-1 +absConvTol_liquid | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_matric | 1.0d-6 | 1.0d-5 | 1.0d-1 +absConvTol_matric | 1.0d-6 | 1.0d-8 | 1.0d-3 +relConvTol_energy | 1.0d-2 | 1.0d-5 | 1.0d-1 +absConvTol_energy | 1.0d-0 | 1.0d-2 | 1.0d+1 +relConvTol_aquifr | 1.0d-0 | 1.0d-2 | 1.0d+1 +absConvTol_aquifr | 1.0d-5 | 1.0d-5 | 1.0d-1 +zmin | 0.0100 | 0.0050 | 0.1000 +zmax | 0.0500 | 0.0100 | 0.5000 +! --- +zminLayer1 | 0.0075 | 0.0075 | 0.0075 +zminLayer2 | 0.0100 | 0.0100 | 0.0100 +zminLayer3 | 0.0500 | 0.0500 | 0.0500 +zminLayer4 | 0.1000 | 0.1000 | 0.1000 +zminLayer5 | 0.2500 | 0.2500 | 0.2500 +! --- +zmaxLayer1_lower | 0.0500 | 0.0500 | 0.0500 +zmaxLayer2_lower | 0.2000 | 0.2000 | 0.2000 +zmaxLayer3_lower | 0.5000 | 0.5000 | 0.5000 +zmaxLayer4_lower | 1.0000 | 1.0000 | 1.0000 +! --- +zmaxLayer1_upper | 0.0300 | 0.0300 | 0.0300 +zmaxLayer2_upper | 0.1500 | 0.1500 | 0.1500 +zmaxLayer3_upper | 0.3000 | 0.3000 | 0.3000 +zmaxLayer4_upper | 0.7500 | 0.7500 | 0.7500 +! ==================================================================== +minTempUnloading | 270.16 | 260.16 | 273.16 +minWindUnloading | 0.0000 | 0.0000 | 10.000 +rateTempUnloading | 1.87d+5 | 1.0d+5 | 3.0d+5 +rateWindUnloading | 1.56d+5 | 1.0d+5 | 3.0d+5 +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp1.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp2.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/colbeck1976/summa_fileManager_colbeck1976-exp3.txt \ No newline at end of file diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp1.nc b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp1.nc new file mode 100644 index 0000000000000000000000000000000000000000..fe66f1b13a4f825edc5398e43ad096e6bd3bee97 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp1.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp2.nc b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp2.nc new file mode 100644 index 0000000000000000000000000000000000000000..70ccad244580e69de9da40f2aba6fec61bf7be6d Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp2.nc differ diff --git a/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp3.nc b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp3.nc new file mode 100644 index 0000000000000000000000000000000000000000..80c48dbdbea74010383403f94c4d543020df597f Binary files /dev/null and b/utils/laugh_tests/colbeck1976/settings/summa_zParamTrial_colbeck1976-exp3.nc differ diff --git a/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp1_G1-1_timestep.nc b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp1_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..9e6ae158fabce58a11b81c45cffc294b752b523c Binary files /dev/null and b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp1_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp2_G1-1_timestep.nc b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp2_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..fbfcc80186ef1b1a3a3ed88542dfe8e85c07f865 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp2_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp3_G1-1_timestep.nc b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp3_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..5244415ba0820a75a87db973f9ef0b05bc6c6627 Binary files /dev/null and b/utils/laugh_tests/colbeck1976/verification_data/colbeck1976-exp3_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/colbeck1976/verification_data/runinfo.txt b/utils/laugh_tests/colbeck1976/verification_data/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..6ffb0dd15662a7bbe474e0cf29bcc9d66997b6c7 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/verification_data/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=15 - hh=21 - mi=53 - ss=23.550 diff --git a/utils/laugh_tests/colbeck1976/verify_colbeck.py b/utils/laugh_tests/colbeck1976/verify_colbeck.py new file mode 100644 index 0000000000000000000000000000000000000000..0394fb583cad070f25de0435eda4477de119be88 --- /dev/null +++ b/utils/laugh_tests/colbeck1976/verify_colbeck.py @@ -0,0 +1,93 @@ +from os import listdir +from os.path import isfile, join +from pathlib import Path +import xarray as xr +import numpy as np + + +def verify(verified_data_path, data_to_compare_path, output_variables, numHRU): + try: + verified_dataset = xr.open_dataset(verified_data_path) + to_compare_dataset = xr.open_dataset(data_to_compare_path) + except FileNotFoundError: + print("Check the variables \'verified_data_path\' and \'data_to_compare_path\'. They may not point to the correct output files or the output filenames may have changed.") + exit() + + # Get the HRUs from the dataset into a list + for iHRU in range(0, numHRU): + verified_hru = verified_dataset.isel(hru=iHRU).copy() + hru_to_compare = to_compare_dataset.isel(hru=iHRU).copy() + + for var in output_variables: + try: + if len(verified_hru[var].values) != len(hru_to_compare[var].values): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_hru[var].values)) + print(" hru_to_compare = ", len(hru_to_compare[var].values)) + + verified_data = [] + to_verify_data = [] + if (verified_hru[var].values.ndim > 1): + # 2D output case + for list in verified_hru[var].values: + for data in list: + verified_data.append(data) + + for list in hru_to_compare[var].values: + for data in list: + to_verify_data.append(data) + + else: + # 1D output case + for data in verified_hru[var].values: + verified_data.append(data) + + for data in hru_to_compare[var].values: + to_verify_data.append(data) + + + # check length + if len(verified_data) != len(to_verify_data): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_data)) + print(" hru_to_compare = ", len(to_verify_data)) + + # check values + for elem in range(0, len(verified_data)): + if verified_data[elem] != to_verify_data[elem]: + print("variable -",var, "has different values at", elem) + print(" verified_hru = ", verified_data[elem]) + print(" hru_to_compare = ", to_verify_data[elem]) + break + + except TypeError: + print("variable - ", var, "Cannot be compared with len") + print(" verified_hru = ",verified_hru[var].values) + print(" hru_to_compare = ", hru_to_compare[var].values) + + +numHRU = 1 + +scalarRainfall = "scalarRainfall" +scalarSnowfall = "scalarSnowfall" +scalarRainPlusMelt = "scalarRainPlusMelt" +mLayerVolFracLiq = "mLayerVolFracLiq" +mLayerVolFracIce = "mLayerVolFracIce" +iLayerNrgFlux = "iLayerNrgFlux" +iLayerHeight = "iLayerHeight" +mLayerDepth = "mLayerDepth" + +output_variables = [scalarRainfall, scalarSnowfall, scalarRainPlusMelt, mLayerVolFracLiq, \ + mLayerVolFracIce, iLayerNrgFlux, iLayerHeight, mLayerDepth] + +verified_data_path = Path("./verification_data/colbeck1976-exp1_G1-1_timestep.nc") +data_to_compare_path = Path("./output/colbeck1976-exp1GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +verified_data_path = Path("./verification_data/colbeck1976-exp2_G1-1_timestep.nc") +data_to_compare_path = Path("./output/colbeck1976-exp2GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +verified_data_path = Path("./verification_data/colbeck1976-exp3_G1-1_timestep.nc") +data_to_compare_path = Path("./output/colbeck1976-exp3GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) \ No newline at end of file diff --git a/utils/laugh_tests/colbeck1976/config/Summa_Actors_Settings.json b/utils/laugh_tests/miller1998/config/clay/Summa_Actors_Settings.json similarity index 72% rename from utils/laugh_tests/colbeck1976/config/Summa_Actors_Settings.json rename to utils/laugh_tests/miller1998/config/clay/Summa_Actors_Settings.json index cf3703231c75b9a338b56ba7dbd8155165fa98e3..ccf6c4ac6c5fedcbd3a2dc028797926fd12ce17c 100644 --- a/utils/laugh_tests/colbeck1976/config/Summa_Actors_Settings.json +++ b/utils/laugh_tests/miller1998/config/clay/Summa_Actors_Settings.json @@ -1,6 +1,6 @@ { "DistributedSettings": { - "distributed-mode": true, + "distributed-mode": false, "host": "localhost", "port": 4444 }, @@ -20,13 +20,13 @@ }, "JobActor": { - "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_millerClay.txt", "outputCSV": false, "csvPath": "/scratch/kck540/csv/" }, "HRUActor": { "printOutput": true, - "outputFrequency": 500 + "outputFrequency": 1 } -} +} \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/config/Summa_Actors_Settings.json b/utils/laugh_tests/miller1998/config/loam/Summa_Actors_Settings.json similarity index 72% rename from utils/laugh_tests/miller1998/config/Summa_Actors_Settings.json rename to utils/laugh_tests/miller1998/config/loam/Summa_Actors_Settings.json index cf3703231c75b9a338b56ba7dbd8155165fa98e3..c54ea844cf533f2b955e615f9b7120c5c62a106b 100644 --- a/utils/laugh_tests/miller1998/config/Summa_Actors_Settings.json +++ b/utils/laugh_tests/miller1998/config/loam/Summa_Actors_Settings.json @@ -1,6 +1,6 @@ { "DistributedSettings": { - "distributed-mode": true, + "distributed-mode": false, "host": "localhost", "port": 4444 }, @@ -20,13 +20,13 @@ }, "JobActor": { - "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_millerLoam.txt", "outputCSV": false, "csvPath": "/scratch/kck540/csv/" }, "HRUActor": { "printOutput": true, - "outputFrequency": 500 + "outputFrequency": 1 } -} +} \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/config/Summa_Actors_Settings.json b/utils/laugh_tests/miller1998/config/sand/Summa_Actors_Settings.json similarity index 72% rename from utils/laugh_tests/vanderborght2005/config/Summa_Actors_Settings.json rename to utils/laugh_tests/miller1998/config/sand/Summa_Actors_Settings.json index cf3703231c75b9a338b56ba7dbd8155165fa98e3..37fc2967464269d2d244021cd734715399748dc5 100644 --- a/utils/laugh_tests/vanderborght2005/config/Summa_Actors_Settings.json +++ b/utils/laugh_tests/miller1998/config/sand/Summa_Actors_Settings.json @@ -1,6 +1,6 @@ { "DistributedSettings": { - "distributed-mode": true, + "distributed-mode": false, "host": "localhost", "port": 4444 }, @@ -20,13 +20,13 @@ }, "JobActor": { - "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_millerSand.txt", "outputCSV": false, "csvPath": "/scratch/kck540/csv/" }, "HRUActor": { "printOutput": true, - "outputFrequency": 500 + "outputFrequency": 1 } -} +} \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/output/millerClayGRU1-1_timestep.nc b/utils/laugh_tests/miller1998/output/millerClayGRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..9d300d43aca06babe931ddc2ad3e57c26be239f5 Binary files /dev/null and b/utils/laugh_tests/miller1998/output/millerClayGRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/output/millerLoamGRU1-1_timestep.nc b/utils/laugh_tests/miller1998/output/millerLoamGRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..aa63590c28a5d07dd82904425de6e93e002a85b8 Binary files /dev/null and b/utils/laugh_tests/miller1998/output/millerLoamGRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/output/millerSandGRU1-1_timestep.nc b/utils/laugh_tests/miller1998/output/millerSandGRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..a11227dc290f563ca87bc949bf9c0a3550fb64a3 Binary files /dev/null and b/utils/laugh_tests/miller1998/output/millerSandGRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/output/runinfo.txt b/utils/laugh_tests/miller1998/output/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..57d180b81da4d5169ffc62f88f3673fcef30e9a5 --- /dev/null +++ b/utils/laugh_tests/miller1998/output/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=21 - mi=32 - ss=00.868 diff --git a/utils/laugh_tests/miller1998/run_test.sh b/utils/laugh_tests/miller1998/run_test.sh deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/laugh_tests/miller1998/run_test_summa.sh b/utils/laugh_tests/miller1998/run_test_summa.sh new file mode 100755 index 0000000000000000000000000000000000000000..afe4927125202154f9eed9373db8c8264c2dc8a8 --- /dev/null +++ b/utils/laugh_tests/miller1998/run_test_summa.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerClay.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerLoam.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerSand.txt \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/run_test_summa_actors.sh b/utils/laugh_tests/miller1998/run_test_summa_actors.sh new file mode 100755 index 0000000000000000000000000000000000000000..864e583b8aa024e5655c409fd77279f2a00b6088 --- /dev/null +++ b/utils/laugh_tests/miller1998/run_test_summa_actors.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/clay +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/loam +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/sand \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/settings/Model_Output.txt b/utils/laugh_tests/miller1998/settings/Model_Output.txt new file mode 100644 index 0000000000000000000000000000000000000000..19ed37469f9d3860b3414756a551cb850ab9955b --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/Model_Output.txt @@ -0,0 +1,34 @@ +! --------- +! model variables +! --------- +time | 1 +nSnow | 1 +nSoil | 1 +nLayers | 1 +mLayerHeight | 1 +iLayerLiqFluxSoil | 1 +mLayerDepth | 1 +mLayerVolFracIce | 1 +mLayerVolFracLiq | 1 +mLayerMatricHead | 1 +mLayerTranspire | 1 +mLayerBaseflow | 1 +mLayerCompress | 1 +iLayerNrgFlux | 1 +basin__TotalArea | 1 +scalarGroundEvaporation | 1 +scalarSoilBaseflow | 1 +scalarSoilDrainage | 1 +scalarInfiltration | 1 +scalarSnowDrainage | 1 +scalarSnowSublimation | 1 +scalarThroughfallRain | 1 +scalarThroughfallSnow | 1 +scalarRainfall | 1 +scalarSnowfall | 1 +scalarRainPlusMelt | 1 +fieldCapacity | 1 +pptrate | 1 +averageRoutedRunoff | 1 +scalarSWE | 1 +fieldCapacity | 1 diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_millerClay.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerClay.txt new file mode 100644 index 0000000000000000000000000000000000000000..d6fe3abfafa97673c8add526f9c0f30956c161d0 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerClay.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '2000-01-01' +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerClay.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerClay.nc' ! initial_cond +outFilePrefix 'millerClay' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_millerLoam.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerLoam.txt new file mode 100644 index 0000000000000000000000000000000000000000..ab888a3f726ada3b55119674a17f6184408cae8a --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerLoam.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '2000-01-01' +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerLoam.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerLoam.nc' ! initial_cond +outFilePrefix 'millerLoam' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_millerSand.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerSand.txt new file mode 100644 index 0000000000000000000000000000000000000000..936e25a1462daf32f74bf1c099991e3bdf64a185 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_millerSand.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '2000-01-01' +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerSand.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerSand.nc' ! initial_cond +outFilePrefix 'millerSand' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerClay.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerClay.txt new file mode 100644 index 0000000000000000000000000000000000000000..fc458a0711bb6c262c84e0af327f533a7d300f0c --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerClay.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerClay.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerClay.nc' ! initial_cond +outFilePrefix 'millerClay' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerLoam.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerLoam.txt new file mode 100644 index 0000000000000000000000000000000000000000..cb94073e6bab85248ba7197604e3ba6c114122f2 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerLoam.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerLoam.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerLoam.nc' ! initial_cond +outFilePrefix 'millerLoam' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerSand.txt b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerSand.txt new file mode 100644 index 0000000000000000000000000000000000000000..f09dc37a9ca504826ee8775dedf8a6158d1f0c6b --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerSand.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:30' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/miller1998/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/miller1998/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/miller1998/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_miller1998.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_millerSand.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_millerSand.nc' ! initial_cond +outFilePrefix 'millerSand' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/miller1998/settings/summa_zBasinParamInfo.txt b/utils/laugh_tests/miller1998/settings/summa_zBasinParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1926fd71fbc6ce90cd4180f652ae414885e4b611 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zBasinParamInfo.txt @@ -0,0 +1,35 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! DEFINE BASIN MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a1), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! *********************************************************************************************************************** +! +! ******************************************************************** +! define format string for parameter descriptions +! ******************************************************************** +'(a25,1x,a1,1x,3(f12.4,1x,a1,1x))' ! format string for parameter descriptions (must be in single quotes) +! ******************************************************************** +! baseflow +! ******************************************************************** +basin__aquiferHydCond | 0.0100 | 0.0001 | 10.0000 +basin__aquiferScaleFactor | 3.5000 | 0.1000 | 100.0000 +basin__aquiferBaseflowExp | 5.0000 | 1.0000 | 10.0000 +! ******************************************************************** +! within-grid routing +! ******************************************************************** +routingGammaShape | 2.5000 | 2.0000 | 3.0000 +routingGammaScale | 20000.0000 | 1.0000 | 5000000.0000 +! ******************************************************************** diff --git a/utils/laugh_tests/miller1998/settings/summa_zDecisions_miller1998.txt b/utils/laugh_tests/miller1998/settings/summa_zDecisions_miller1998.txt new file mode 100644 index 0000000000000000000000000000000000000000..d17071ceff8b467be5120db09ec0df8c69d7a2d8 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zDecisions_miller1998.txt @@ -0,0 +1,170 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE MODEL DECISIONS +! *********************************************************************************************************************** +! This file defines the modeling decisions used. +! NOTES: +! (1) lines starting with ! are treated as comment lines -- there is no limit on the number of comment lines +! (2) the name of the decision is followed by the character string defining the decision +! (3) the simulation start/end times must be within single quotes +! *********************************************************************************************************************** +! *********************************************************************************************************************** +soilCatTbl ROSETTA ! (03) soil-category dateset +vegeParTbl USGS ! (04) vegetation category dataset +soilStress NoahType ! (05) choice of function for the soil moisture control on stomatal resistance +stomResist BallBerry ! (06) choice of function for stomatal resistance +! *********************************************************************************************************************** +num_method itertive ! (07) choice of numerical method +fDerivMeth analytic ! (08) method used to calculate flux derivatives +LAI_method monTable ! (09) method used to determine LAI and SAI +f_Richards mixdform ! (10) form of Richard's equation +groundwatr noXplict ! (11) choice of groundwater parameterization +hc_profile constant ! (12) choice of hydraulic conductivity profile +bcUpprTdyn zeroFlux ! (13) type of upper boundary condition for thermodynamics +bcLowrTdyn zeroFlux ! (14) type of lower boundary condition for thermodynamics +bcUpprSoiH presHead ! (15) type of upper boundary condition for soil hydrology +bcLowrSoiH presHead ! (16) type of lower boundary condition for soil hydrology +veg_traits CM_QJRMS1988 ! (17) choice of parameterization for vegetation roughness length and displacement height +canopyEmis difTrans ! (18) choice of parameterization for canopy emissivity +snowIncept lightSnow ! (19) choice of parameterization for snow interception +windPrfile logBelowCanopy ! (20) choice of wind profile through the canopy +astability louisinv ! (21) choice of stability function +canopySrad CLM_2stream ! (22) choice of canopy shortwave radiation method +alb_method varDecay ! (23) choice of albedo representation +compaction anderson ! (24) choice of compaction routine +snowLayers CLM_2010 ! (25) choice of method to combine and sub-divide snow layers +thCondSnow jrdn1991 ! (26) choice of thermal conductivity representation for snow +thCondSoil mixConstit ! (27) choice of thermal conductivity representation for soil +spatial_gw localColumn ! (28) choice of method for the spatial representation of groundwater +subRouting timeDlay ! (29) choice of method for sub-grid routing +! *********************************************************************************************** +! ***** description of the options available -- nothing below this point is read **************** +! *********************************************************************************************** +! ----------------------------------------------------------------------------------------------- +! (01) simulation start time +! (02) simulation end time +! ----------------------------------------------------------------------------------------------- +! (03) soil-category dateset +! STAS ! STATSGO dataset +! STAS-RUC ! ?? +! ROSETTA ! merged Rosetta table with STAS-RUC +! ----------------------------------------------------------------------------------------------- +! (04) vegetation category dataset +! USGS ! USGS 24/27 category dataset +! MODIFIED_IGBP_MODIS_NOAH ! MODIS 20-category dataset +! ----------------------------------------------------------------------------------------------- +! (05) choice of function for the soil moisture control on stomatal resistance +! NoahType ! thresholded linear function of volumetric liquid water content +! CLM_Type ! thresholded linear function of matric head +! SiB_Type ! exponential of the log of matric head +! ----------------------------------------------------------------------------------------------- +! (06) choice of function for stomatal resistance +! BallBerry ! Ball-Berry +! Jarvis ! Jarvis +! ----------------------------------------------------------------------------------------------- +! (07) choice of numerical method +! itertive ! iterative +! non_iter ! non-iterative +! itersurf ! iterate only on the surface energy balance +! ----------------------------------------------------------------------------------------------- +! (08) method used to calculate flux derivatives +! numericl ! numerical derivatives +! analytic ! analytical derivatives +! ----------------------------------------------------------------------------------------------- +! (09) method used to determine LAI and SAI +! monTable ! LAI/SAI taken directly from a monthly table for different vegetation classes +! specified ! LAI/SAI computed from green vegetation fraction and winterSAI and summerLAI parameters +! ----------------------------------------------------------------------------------------------- +! (10) form of Richards' equation +! moisture ! moisture-based form of Richards' equation +! mixdform ! mixed form of Richards' equation +! ----------------------------------------------------------------------------------------------- +! (11) choice of groundwater parameterization +! qTopmodl ! topmodel parameterization +! bigBuckt ! a big bucket (lumped aquifer model) +! noXplict ! no explicit groundwater parameterization +! ----------------------------------------------------------------------------------------------- +! (12) choice of hydraulic conductivity profile +! constant ! constant hydraulic conductivity with depth +! pow_prof ! power-law profile +! ----------------------------------------------------------------------------------------------- +! (13) choice of upper boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! nrg_flux ! energy flux +! ----------------------------------------------------------------------------------------------- +! (14) choice of lower boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (15) choice of upper boundary conditions for soil hydrology +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! liq_flux ! liquid water flux +! ----------------------------------------------------------------------------------------------- +! (16) choice of lower boundary conditions for soil hydrology +! drainage ! free draining +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! bottmPsi ! function of matric head in the lower-most layer +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (17) choice of parameterization for vegetation roughness length and displacement height +! Raupach_BLM1994 ! Raupach (BLM 1994) "Simplified expressions..." +! CM_QJRMS1988 ! Choudhury and Monteith (QJRMS 1998) "A four layer model for the heat budget..." +! vegTypeTable ! constant parameters dependent on the vegetation type +! ----------------------------------------------------------------------------------------------- +! (18) choice of parameterization for canopy emissivity +! simplExp ! simple exponential function +! difTrans ! parameterized as a function of diffuse transmissivity +! ----------------------------------------------------------------------------------------------- +! (19) choice of parameterization for snow interception +! stickySnow ! maximum interception capacity an increasing function of temerature +! lightSnow ! maximum interception capacity an inverse function of new snow density +! ----------------------------------------------------------------------------------------------- +! (20) choice of wind profile +! exponential ! exponential wind profile extends to the surface +! logBelowCanopy ! logarithmic profile below the vegetation canopy +! ----------------------------------------------------------------------------------------------- +! (21) choice of stability function +! standard ! standard MO similarity, a la Anderson (1979) +! louisinv ! Louis (1979) inverse power function +! mahrtexp ! Mahrt (1987) exponential function +! ----------------------------------------------------------------------------------------------- +! (22) choice of canopy shortwave radiation method +! noah_mp ! full Noah-MP implementation (including albedo) +! CLM_2stream ! CLM 2-stream model (see CLM documentation) +! UEB_2stream ! UEB 2-stream model (Mahat and Tarboton, WRR 2011) +! NL_scatter ! Simplified method Nijssen and Lettenmaier (JGR 1999) +! BeersLaw ! Beer's Law (as implemented in VIC) +! ----------------------------------------------------------------------------------------------- +! (23) choice of albedo representation +! conDecay ! constant decay rate (e.g., VIC, CLASS) +! varDecay ! variable decay rate (e.g., BATS approach, with destructive metamorphism + soot content) +! ----------------------------------------------------------------------------------------------- +! (24) choice of compaction routine +! consettl ! constant settlement rate +! anderson ! semi-empirical method of Anderson (1976) +! ----------------------------------------------------------------------------------------------- +! (25) choice of method to combine and sub-divide snow layers +! CLM_2010 ! CLM option: combination/sub-dividion rules depend on layer index +! jrdn1991 ! SNTHERM option: same combination/sub-dividion rules applied to all layers +! ----------------------------------------------------------------------------------------------- +! (26) choice of thermal conductivity representation for snow +! tyen1965 ! Yen (1965) +! melr1977 ! Mellor (1977) +! jrdn1991 ! Jordan (1991) +! smnv2000 ! Smirnova et al. (2000) +! ----------------------------------------------------------------------------------------------- +! (27) choice of thermal conductivity representation for soil +! funcSoilWet ! function of soil wetness +! mixConstit ! mixture of constituents +! hanssonVZJ ! test case for the mizoguchi lab experiment, Hansson et al. VZJ 2004 +! ----------------------------------------------------------------------------------------------- +! (28) choice of method for the spatial representation of groundwater +! localColumn ! separate groundwater representation in each local soil column +! singleBasin ! single groundwater store over the entire basin +! ----------------------------------------------------------------------------------------------- +! (29) choice of method for sub-grid routing +! timeDlay ! time-delay histogram +! qInstant ! instantaneous routing +! *********************************************************************************************** +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerClay.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerLoam.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerSand.txt diff --git a/utils/laugh_tests/miller1998/settings/summa_zForcingFileList.txt b/utils/laugh_tests/miller1998/settings/summa_zForcingFileList.txt new file mode 100644 index 0000000000000000000000000000000000000000..c9ef914a0df0262176396e2c2af5fbaab330db61 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zForcingFileList.txt @@ -0,0 +1,8 @@ +! **************************************************************************************************** +! List of forcing data files used +! +! This file includes one "word" per line: +! (1) The name of a forcing file +! --> filename must be in single quotes +! **************************************************************************************************** + 'miller1998_forcing.nc' diff --git a/utils/laugh_tests/miller1998/settings/summa_zForcingInfo_miller1998.txt b/utils/laugh_tests/miller1998/settings/summa_zForcingInfo_miller1998.txt new file mode 100644 index 0000000000000000000000000000000000000000..d9019c76a5bc0758b954f3949c5eb145e1c5f8f2 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zForcingInfo_miller1998.txt @@ -0,0 +1,29 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE FORCING FILE +! *********************************************************************************************************************** +! This file defines the name of the forcing data file, the number of columns in the file, the column index for each data +! variable, the start index of the simulation period, the length of the simulation period, +! and the length of the data time step +! *********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! *********************************************************************************************************************** +'(a15,a1,1x,a)' +filenmData | miller1998_forcing.txt ! name of the forcing data file (must be in single quotes) +ncols | 13 ! number of columns in the forcing file +iyyy | 1 ! year +im | 2 ! month +id | 3 ! day +ih | 4 ! hour +imin | 5 ! minute +pptrate | 7 ! precipitation rate (kg m-2 s-1) +SWRadAtm | 8 ! downwelling shortwave radiaiton (W m-2) +LWRadAtm | 9 ! downwelling longwave radiation (W m-2) +airtemp | 10 ! air temperature (K) +windspd | 11 ! windspeed (m/s) +airpres | 12 ! pressure (Pa) +spechum | 13 ! specific humidity (g/g) +data_step | 900 ! length of time step (seconds) diff --git a/utils/laugh_tests/miller1998/settings/summa_zInitialCond_miller1998.txt b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_miller1998.txt new file mode 100644 index 0000000000000000000000000000000000000000..d52d1c91a222681f9dc6e525a7f1eec014535ac6 --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_miller1998.txt @@ -0,0 +1,148 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF MODEL INITIAL CONDITIONS ************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! PART 1: DEFINE SCALAR VARIABLES +! ------------------------------- +! Variable name followed by the value +! The variable names are important, as they must match the variable names in the code +! *********************************************************************************************************************** +<start_scalar_icond> +! -------------------------------- +dt_init 10.000000000000 +scalarCanopyIce 0.000000000000 +scalarCanopyLiq 0.000000000000 +scalarCanairTemp 286.000000000000 +scalarCanopyTemp 290.000000000000 +scalarSnowAlbedo 0.820000000000 +scalarSWE 0.000000000000 +scalarSnowDepth 0.000000000000 +scalarSfcMeltPond 0.000000000000 +scalarAquiferStorage 0.000000000000 +! -------------------------------- +<end_scalar_icond> +! *********************************************************************************************************************** +! +! +! *********************************************************************************************************************** +! PART 2: DEFINE LAYER VARIABLES +! ------------------------------- +! Variable names followed by values +! The variable names are important, as they must match the variable names in the code +! ------------------------------- +! layerType = snow or soil (4-character string) +! iLayerHeight = height of the layer interface; top of soil = 0 (m) +! mLayerDepth = depth of the layer (m) +! mLayerTemp = temperature of the layer (K) +! mLayerVolFracIce = volumetric fraction of ice (-) +! mLayerVolFracLiq = volumetric fraction of liquid water (-) +! mLayerMatricHead = matric head (m) +! *********************************************************************************************************************** +<start_layer_icond> +! ------------------------------- + layerType iLayerHeight mLayerDepth mLayerTemp mLayerVolFracIce mLayerVolFracLiq mLayerMatricHead + soil 0.0000000 0.1000000 285.160 0.000000 0.093000 -9.950000 + soil 0.1000000 0.1000000 285.160 0.000000 0.093000 -9.850000 + soil 0.2000000 0.1000000 285.160 0.000000 0.093000 -9.750000 + soil 0.3000000 0.1000000 285.160 0.000000 0.093000 -9.650000 + soil 0.4000000 0.1000000 285.160 0.000000 0.093001 -9.550000 + soil 0.5000000 0.1000000 285.160 0.000000 0.093001 -9.450000 + soil 0.6000000 0.1000000 285.160 0.000000 0.093001 -9.350000 + soil 0.7000000 0.1000000 285.160 0.000000 0.093001 -9.250000 + soil 0.8000000 0.1000000 285.160 0.000000 0.093001 -9.150000 + soil 0.9000000 0.1000000 285.160 0.000000 0.093001 -9.050000 + soil 1.0000000 0.1000000 285.160 0.000000 0.093001 -8.950000 + soil 1.1000000 0.1000000 285.160 0.000000 0.093001 -8.850000 + soil 1.2000000 0.1000000 285.160 0.000000 0.093001 -8.750000 + soil 1.3000000 0.1000000 285.160 0.000000 0.093001 -8.650000 + soil 1.4000000 0.1000000 285.160 0.000000 0.093001 -8.550000 + soil 1.5000000 0.1000000 285.160 0.000000 0.093001 -8.450000 + soil 1.6000000 0.1000000 285.160 0.000000 0.093001 -8.350000 + soil 1.7000000 0.1000000 285.160 0.000000 0.093001 -8.250000 + soil 1.8000000 0.1000000 285.160 0.000000 0.093001 -8.150000 + soil 1.9000000 0.1000000 285.160 0.000000 0.093001 -8.050000 + soil 2.0000000 0.1000000 285.160 0.000000 0.093001 -7.950000 + soil 2.1000000 0.1000000 285.160 0.000000 0.093001 -7.850000 + soil 2.2000000 0.1000000 285.160 0.000000 0.093001 -7.750000 + soil 2.3000000 0.1000000 285.160 0.000000 0.093001 -7.650000 + soil 2.4000000 0.1000000 285.160 0.000000 0.093001 -7.550000 + soil 2.5000000 0.1000000 285.160 0.000000 0.093001 -7.450000 + soil 2.6000000 0.1000000 285.160 0.000000 0.093001 -7.350000 + soil 2.7000000 0.1000000 285.160 0.000000 0.093001 -7.250000 + soil 2.8000000 0.1000000 285.160 0.000000 0.093001 -7.150000 + soil 2.9000000 0.1000000 285.160 0.000000 0.093001 -7.050000 + soil 3.0000000 0.1000000 285.160 0.000000 0.093001 -6.950000 + soil 3.1000000 0.1000000 285.160 0.000000 0.093002 -6.850000 + soil 3.2000000 0.1000000 285.160 0.000000 0.093002 -6.750000 + soil 3.3000000 0.1000000 285.160 0.000000 0.093002 -6.650000 + soil 3.4000000 0.1000000 285.160 0.000000 0.093002 -6.550000 + soil 3.5000000 0.1000000 285.160 0.000000 0.093002 -6.450000 + soil 3.6000000 0.1000000 285.160 0.000000 0.093002 -6.350000 + soil 3.7000000 0.1000000 285.160 0.000000 0.093002 -6.250000 + soil 3.8000000 0.1000000 285.160 0.000000 0.093002 -6.150000 + soil 3.9000000 0.1000000 285.160 0.000000 0.093002 -6.050000 + soil 4.0000000 0.1000000 285.160 0.000000 0.093002 -5.950000 + soil 4.1000000 0.1000000 285.160 0.000000 0.093003 -5.850000 + soil 4.2000000 0.1000000 285.160 0.000000 0.093003 -5.750000 + soil 4.3000000 0.1000000 285.160 0.000000 0.093003 -5.650000 + soil 4.4000000 0.1000000 285.160 0.000000 0.093003 -5.550000 + soil 4.5000000 0.1000000 285.160 0.000000 0.093003 -5.450000 + soil 4.6000000 0.1000000 285.160 0.000000 0.093003 -5.350000 + soil 4.7000000 0.1000000 285.160 0.000000 0.093004 -5.250000 + soil 4.8000000 0.1000000 285.160 0.000000 0.093004 -5.150000 + soil 4.9000000 0.1000000 285.160 0.000000 0.093004 -5.050000 + soil 5.0000000 0.1000000 285.160 0.000000 0.093004 -4.950000 + soil 5.1000000 0.1000000 285.160 0.000000 0.093005 -4.850000 + soil 5.2000000 0.1000000 285.160 0.000000 0.093005 -4.750000 + soil 5.3000000 0.1000000 285.160 0.000000 0.093005 -4.650000 + soil 5.4000000 0.1000000 285.160 0.000000 0.093006 -4.550000 + soil 5.5000000 0.1000000 285.160 0.000000 0.093006 -4.450000 + soil 5.6000000 0.1000000 285.160 0.000000 0.093007 -4.350000 + soil 5.7000000 0.1000000 285.160 0.000000 0.093007 -4.250000 + soil 5.8000000 0.1000000 285.160 0.000000 0.093008 -4.150000 + soil 5.9000000 0.1000000 285.160 0.000000 0.093008 -4.050000 + soil 6.0000000 0.1000000 285.160 0.000000 0.093009 -3.950000 + soil 6.1000000 0.1000000 285.160 0.000000 0.093010 -3.850000 + soil 6.2000000 0.1000000 285.160 0.000000 0.093011 -3.750000 + soil 6.3000000 0.1000000 285.160 0.000000 0.093012 -3.650000 + soil 6.4000000 0.1000000 285.160 0.000000 0.093013 -3.550000 + soil 6.5000000 0.1000000 285.160 0.000000 0.093014 -3.450000 + soil 6.6000000 0.1000000 285.160 0.000000 0.093016 -3.350000 + soil 6.7000000 0.1000000 285.160 0.000000 0.093017 -3.250000 + soil 6.8000000 0.1000000 285.160 0.000000 0.093019 -3.150000 + soil 6.9000000 0.1000000 285.160 0.000000 0.093021 -3.050000 + soil 7.0000000 0.1000000 285.160 0.000000 0.093024 -2.950000 + soil 7.1000000 0.1000000 285.160 0.000000 0.093027 -2.850000 + soil 7.2000000 0.1000000 285.160 0.000000 0.093030 -2.750000 + soil 7.3000000 0.1000000 285.160 0.000000 0.093034 -2.650000 + soil 7.4000000 0.1000000 285.160 0.000000 0.093038 -2.550000 + soil 7.5000000 0.1000000 285.160 0.000000 0.093044 -2.450000 + soil 7.6000000 0.1000000 285.160 0.000000 0.093050 -2.350000 + soil 7.7000000 0.1000000 285.160 0.000000 0.093058 -2.250000 + soil 7.8000000 0.1000000 285.160 0.000000 0.093067 -2.150000 + soil 7.9000000 0.1000000 285.160 0.000000 0.093078 -2.050000 + soil 8.0000000 0.1000000 285.160 0.000000 0.093092 -1.950000 + soil 8.1000000 0.1000000 285.160 0.000000 0.093109 -1.850000 + soil 8.2000000 0.1000000 285.160 0.000000 0.093131 -1.750000 + soil 8.3000000 0.1000000 285.160 0.000000 0.093158 -1.650000 + soil 8.4000000 0.1000000 285.160 0.000000 0.093194 -1.550000 + soil 8.5000000 0.1000000 285.160 0.000000 0.093241 -1.450000 + soil 8.6000000 0.1000000 285.160 0.000000 0.093305 -1.350000 + soil 8.7000000 0.1000000 285.160 0.000000 0.093392 -1.250000 + soil 8.8000000 0.1000000 285.160 0.000000 0.093514 -1.150000 + soil 8.9000000 0.1000000 285.160 0.000000 0.093692 -1.050000 + soil 9.0000000 0.1000000 285.160 0.000000 0.093959 -0.950000 + soil 9.1000000 0.1000000 285.160 0.000000 0.094378 -0.850000 + soil 9.2000000 0.1000000 285.160 0.000000 0.095071 -0.750000 + soil 9.3000000 0.1000000 285.160 0.000000 0.096299 -0.650000 + soil 9.4000000 0.1000000 285.160 0.000000 0.098672 -0.550000 + soil 9.5000000 0.1000000 285.160 0.000000 0.103817 -0.450000 + soil 9.6000000 0.1000000 285.160 0.000000 0.116835 -0.350000 + soil 9.7000000 0.1000000 285.160 0.000000 0.155619 -0.250000 + soil 9.8000000 0.1000000 285.160 0.000000 0.251168 -0.150000 + soil 9.9000000 0.1000000 285.160 0.000000 0.300370 -0.050000 +<end_layer_icond> diff --git a/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerClay.nc b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerClay.nc new file mode 100644 index 0000000000000000000000000000000000000000..02eac15d2ed210a218bfecffb849272ec03058ce Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerClay.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerLoam.nc b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerLoam.nc new file mode 100644 index 0000000000000000000000000000000000000000..4c34b8216eeb21898cf7dd65f975911103b96248 Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerLoam.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerSand.nc b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerSand.nc new file mode 100644 index 0000000000000000000000000000000000000000..889c1256311175016075a46043d03c0c3c2d9908 Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zInitialCond_millerSand.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zLocalAttributes.nc b/utils/laugh_tests/miller1998/settings/summa_zLocalAttributes.nc new file mode 100644 index 0000000000000000000000000000000000000000..751bf3c5fb15cb326c4ca75c3f3e236ce3a0c26c Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zLocalAttributes.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zLocalParamInfo.txt b/utils/laugh_tests/miller1998/settings/summa_zLocalParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..7dcd36cb83eee0bac6edcf76168e96e6d82bd46e --- /dev/null +++ b/utils/laugh_tests/miller1998/settings/summa_zLocalParamInfo.txt @@ -0,0 +1,226 @@ +! ======================================================================================================================= +! ======================================================================================================================= +! ===== DEFINITION OF MODEL PARAMETERS ================================================================================== +! ======================================================================================================================= +! ======================================================================================================================= +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! ======================================================================================================================= +! DEFINE SITE MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! ======================================================================================================================= +! +! ==================================================================== +! define format string for parameter descriptions +! ==================================================================== +'(a25,1x,3(a1,1x,f12.4,1x))' ! format string (must be in single quotes) +! ==================================================================== +! boundary conditions +! ==================================================================== +upperBoundHead | 0.1000 | -100.0000 | -0.0100 +lowerBoundHead | 0.0000 | -100.0000 | -0.0100 +upperBoundTheta | 0.2004 | 0.1020 | 0.3680 +lowerBoundTheta | 0.1100 | 0.1020 | 0.3680 +upperBoundTemp | 272.1600 | 270.1600 | 280.1600 +lowerBoundTemp | 274.1600 | 270.1600 | 280.1600 +! ==================================================================== +! precipitation partitioning +! ==================================================================== +tempCritRain | 273.1600 | 272.1600 | 274.1600 +tempRangeTimestep | 2.0000 | 0.5000 | 5.0000 +frozenPrecipMultip | 1.0000 | 0.5000 | 1.5000 +! ==================================================================== +! snow properties +! ==================================================================== +snowfrz_scale | 50.0000 | 10.0000 | 1000.0000 +fixedThermalCond_snow | 0.3500 | 0.1000 | 1.0000 +! ==================================================================== +! snow albedo +! ==================================================================== +albedoMax | 0.8400 | 0.7000 | 0.9500 +albedoMinWinter | 0.5500 | 0.6000 | 1.0000 +albedoMinSpring | 0.5500 | 0.3000 | 1.0000 +albedoMaxVisible | 0.9500 | 0.7000 | 0.9500 +albedoMinVisible | 0.7500 | 0.5000 | 0.7500 +albedoMaxNearIR | 0.6500 | 0.5000 | 0.7500 +albedoMinNearIR | 0.3000 | 0.1500 | 0.4500 +albedoDecayRate | 1.0d+6 | 0.1d+6 | 5.0d+6 +albedoSootLoad | 0.3000 | 0.1000 | 0.5000 +albedoRefresh | 1.0000 | 1.0000 | 10.0000 +! ==================================================================== +! radiation transfer within snow +! ==================================================================== +radExt_snow | 20.0000 | 20.0000 | 20.0000 +directScale | 0.0900 | 0.0000 | 0.5000 +Frad_direct | 0.7000 | 0.0000 | 1.0000 +Frad_vis | 0.5000 | 0.0000 | 1.0000 +! ==================================================================== +! new snow density +! ==================================================================== +newSnowDenMin | 100.0000 | 50.0000 | 100.0000 +newSnowDenMult | 100.0000 | 25.0000 | 75.0000 +newSnowDenScal | 5.0000 | 1.0000 | 5.0000 +constSnowDen | 100.0000 | 50.0000 | 250.0000 +newSnowDenAdd | 109.0000 | 80.0000 | 120.0000 +newSnowDenMultTemp | 6.0000 | 1.0000 | 12.0000 +newSnowDenMultWind | 26.0000 | 16.0000 | 36.0000 +newSnowDenMultAnd | 1.0000 | 1.0000 | 3.0000 +newSnowDenBase | 0.0000 | 0.0000 | 0.0000 +! ==================================================================== +! snow compaction +! ==================================================================== +densScalGrowth | 0.0460 | 0.0230 | 0.0920 +tempScalGrowth | 0.0400 | 0.0200 | 0.0600 +grainGrowthRate | 2.7d-6 | 1.0d-6 | 5.0d-6 +densScalOvrbdn | 0.0230 | 0.0115 | 0.0460 +tempScalOvrbdn | 0.0800 | 0.6000 | 1.0000 +baseViscosity | 9.0d+5 | 5.0d+5 | 1.5d+6 +! ==================================================================== +! water flow through snow +! ==================================================================== +Fcapil | 0.0600 | 0.0100 | 0.1000 +k_snow | 0.0150 | 0.0050 | 0.0500 +mw_exp | 3.0000 | 1.0000 | 5.0000 +! ==================================================================== +! turbulent heat fluxes +! ==================================================================== +z0Snow | 0.0010 | 0.0010 | 10.0000 +z0Soil | 0.0100 | 0.0010 | 10.0000 +z0Canopy | 0.1000 | 0.0010 | 10.0000 +zpdFraction | 0.6500 | 0.5000 | 0.8500 +critRichNumber | 0.2000 | 0.1000 | 1.0000 +Louis79_bparam | 9.4000 | 9.2000 | 9.6000 +Louis79_cStar | 5.3000 | 5.1000 | 5.5000 +Mahrt87_eScale | 1.0000 | 0.5000 | 2.0000 +leafExchangeCoeff | 0.0100 | 0.0010 | 0.1000 +windReductionParam | 0.2800 | 0.0000 | 1.0000 +! ==================================================================== +! stomatal conductance +! ==================================================================== +Kc25 | 296.0770 | 296.0770 | 296.0770 +Ko25 | 0.2961 | 0.2961 | 0.2961 +Kc_qFac | 2.1000 | 2.1000 | 2.1000 +Ko_qFac | 1.2000 | 1.2000 | 1.2000 +kc_Ha | 79430.0000 | 79430.0000 | 79430.0000 +ko_Ha | 36380.0000 | 36380.0000 | 36380.0000 +vcmax25_canopyTop | 40.0000 | 20.0000 | 100.0000 +vcmax_qFac | 2.4000 | 2.4000 | 2.4000 +vcmax_Ha | 65330.0000 | 65330.0000 | 65330.0000 +vcmax_Hd | 220000.0000 | 149250.0000 | 149250.0000 +vcmax_Sv | 710.0000 | 485.0000 | 485.0000 +vcmax_Kn | 0.6000 | 0.0000 | 1.2000 +jmax25_scale | 2.0000 | 2.0000 | 2.0000 +jmax_Ha | 43540.0000 | 43540.0000 | 43540.0000 +jmax_Hd | 152040.0000 | 152040.0000 | 152040.0000 +jmax_Sv | 495.0000 | 495.0000 | 495.0000 +fractionJ | 0.1500 | 0.1500 | 0.1500 +quantamYield | 0.0500 | 0.0500 | 0.0500 +vpScaleFactor | 1500.0000 | 1500.0000 | 1500.0000 +cond2photo_slope | 9.0000 | 1.0000 | 10.0000 +minStomatalConductance | 2000.0000 | 2000.0000 | 2000.0000 +! ==================================================================== +! vegetation properties +! ==================================================================== +winterSAI | 1.0000 | 0.0100 | 3.0000 +summerLAI | 3.0000 | 0.0100 | 10.0000 +rootScaleFactor1 | 2.0000 | 1.0000 | 10.0000 +rootScaleFactor2 | 5.0000 | 1.0000 | 10.0000 +rootingDepth | 0.5000 | 0.0100 | 10.0000 +rootDistExp | 1.0000 | 0.0100 | 1.0000 +plantWiltPsi | -150.0000 | -500.0000 | 0.0000 +soilStressParam | 5.8000 | 4.3600 | 6.3700 +critSoilWilting | 0.0750 | 0.0000 | 1.0000 +critSoilTranspire | 0.1750 | 0.0000 | 1.0000 +critAquiferTranspire | 0.2000 | 0.1000 | 10.0000 +minStomatalResistance | 50.0000 | 10.0000 | 200.0000 +leafDimension | 0.0400 | 0.0100 | 0.1000 +heightCanopyTop | 20.0000 | 0.0500 | 100.0000 +heightCanopyBottom | 2.0000 | 0.0000 | 5.0000 +specificHeatVeg | 874.0000 | 500.0000 | 1500.0000 +maxMassVegetation | 25.0000 | 1.0000 | 50.0000 +throughfallScaleSnow | 0.5000 | 0.1000 | 0.9000 +throughfallScaleRain | 0.5000 | 0.1000 | 0.9000 +refInterceptCapSnow | 6.6000 | 1.0000 | 10.0000 +refInterceptCapRain | 1.0000 | 0.0100 | 1.0000 +snowUnloadingCoeff | 0.0000 | 0.0000 | 1.5d-6 +canopyDrainageCoeff | 0.0050 | 0.0010 | 0.0100 +ratioDrip2Unloading | 0.4000 | 0.0000 | 1.0000 +canopyWettingFactor | 0.7000 | 0.0000 | 1.0000 +canopyWettingExp | 1.0000 | 0.0000 | 1.0000 +! ==================================================================== +! soil properties +! ==================================================================== +soil_dens_intr | 2700.0000 | 500.0000 | 4000.0000 +thCond_soil | 5.5000 | 2.9000 | 8.4000 +frac_sand | 0.1600 | 0.0000 | 1.0000 +frac_silt | 0.2800 | 0.0000 | 1.0000 +frac_clay | 0.5600 | 0.0000 | 1.0000 +fieldCapacity | 0.2000 | 0.0000 | 1.0000 +wettingFrontSuction | 0.3000 | 0.1000 | 1.5000 +theta_mp | 0.4010 | 0.3000 | 0.6000 +theta_sat | 0.5500 | 0.3000 | 0.6000 +theta_res | 0.1390 | 0.0010 | 0.1000 +vGn_alpha | -0.8400 | -1.0000 | -0.0100 +vGn_n | 1.3000 | 1.0000 | 3.0000 +mpExp | 5.0000 | 1.0000 | 10.0000 +k_soil | 7.5d-06 | 1.d-07 | 100.d-07 +k_macropore | 1.0d-03 | 1.d-07 | 100.d-07 +kAnisotropic | 1.0000 | 0.0001 | 10.0000 +zScale_TOPMODEL | 2.5000 | 0.1000 | 100.0000 +compactedDepth | 1.0000 | 0.0000 | 1.0000 +aquiferScaleFactor | 0.3500 | 0.1000 | 100.0000 +aquiferBaseflowExp | 2.0000 | 1.0000 | 10.0000 +aquiferBaseflowRate | 2.0000 | 1.0000 | 10.0000 +qSurfScale | 50.0000 | 1.0000 | 100.0000 +specificYield | 0.2000 | 0.1000 | 0.3000 +specificStorage | 1.d-09 | 1.d-05 | 1.d-07 +f_impede | 2.0000 | 1.0000 | 10.0000 +soilIceScale | 0.1300 | 0.0001 | 1.0000 +soilIceCV | 0.4500 | 0.1000 | 5.0000 +! ==================================================================== +! algorithmic control parameters +! ==================================================================== +minwind | 0.1000 | 0.0010 | 1.0000 +minstep | 0.1000 | 1.0000 | 1800.0000 +maxstep | 3600.0000 | 60.0000 | 1800.0000 +wimplicit | 0.0000 | 0.0000 | 1.0000 +maxiter | 100.0000 | 1.0000 | 100.0000 +relConvTol_liquid | 1.0d-3 | 1.0d-5 | 1.0d-1 +absConvTol_liquid | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_matric | 1.0d-1 | 1.0d-5 | 1.0d-1 +absConvTol_matric | 1.0d-1 | 1.0d-8 | 1.0d-3 +relConvTol_energy | 1.0d-2 | 1.0d-5 | 1.0d-1 +absConvTol_energy | 1.0d-0 | 1.0d-2 | 1.0d+1 +relConvTol_aquifr | 1.0d-0 | 1.0d-2 | 1.0d+1 +absConvTol_aquifr | 1.0d-5 | 1.0d-5 | 1.0d-1 +zmin | 0.0100 | 0.0050 | 0.1000 +zmax | 0.0500 | 0.0100 | 0.5000 +! --- +zminLayer1 | 0.0075 | 0.0075 | 0.0075 +zminLayer2 | 0.0100 | 0.0100 | 0.0100 +zminLayer3 | 0.0500 | 0.0500 | 0.0500 +zminLayer4 | 0.1000 | 0.1000 | 0.1000 +zminLayer5 | 0.2500 | 0.2500 | 0.2500 +! --- +zmaxLayer1_lower | 0.0500 | 0.0500 | 0.0500 +zmaxLayer2_lower | 0.2000 | 0.2000 | 0.2000 +zmaxLayer3_lower | 0.5000 | 0.5000 | 0.5000 +zmaxLayer4_lower | 1.0000 | 1.0000 | 1.0000 +! --- +zmaxLayer1_upper | 0.0300 | 0.0300 | 0.0300 +zmaxLayer2_upper | 0.1500 | 0.1500 | 0.1500 +zmaxLayer3_upper | 0.3000 | 0.3000 | 0.3000 +zmaxLayer4_upper | 0.7500 | 0.7500 | 0.7500 +! ==================================================================== +minTempUnloading | 270.16 | 260.16 | 273.16 +minWindUnloading | 0.0000 | 0.0000 | 10.000 +rateTempUnloading | 1.87d+5 | 1.0d+5 | 3.0d+5 +rateWindUnloading | 1.56d+5 | 1.0d+5 | 3.0d+5 +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerClay.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerLoam.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/miller1998/summa_fileManager_millerSand.txt \ No newline at end of file diff --git a/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerClay.nc b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerClay.nc new file mode 100644 index 0000000000000000000000000000000000000000..19fcb53d7ed275d6a9b59016aedc8e67fef3c145 Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerClay.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerLoam.nc b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerLoam.nc new file mode 100644 index 0000000000000000000000000000000000000000..c39f7ca18238d0acf0d8bdfaa012351dbed9124c Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerLoam.nc differ diff --git a/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerSand.nc b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerSand.nc new file mode 100644 index 0000000000000000000000000000000000000000..92a3d683aff94a80dd02f599430bd9f5ffe452d4 Binary files /dev/null and b/utils/laugh_tests/miller1998/settings/summa_zParamTrial_millerSand.nc differ diff --git a/utils/laugh_tests/miller1998/verification_data/millerClay_G1-1_timestep.nc b/utils/laugh_tests/miller1998/verification_data/millerClay_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..9a7d14bb8b9dc39c7fe3c43249431a71b0c4e277 Binary files /dev/null and b/utils/laugh_tests/miller1998/verification_data/millerClay_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/verification_data/millerLoam_G1-1_timestep.nc b/utils/laugh_tests/miller1998/verification_data/millerLoam_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..f6e693fa20823fc0662ab456a69b49a596fe4ea0 Binary files /dev/null and b/utils/laugh_tests/miller1998/verification_data/millerLoam_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/verification_data/millerSand_G1-1_timestep.nc b/utils/laugh_tests/miller1998/verification_data/millerSand_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..fadc7a011eb7da163d48b515316973419a08666f Binary files /dev/null and b/utils/laugh_tests/miller1998/verification_data/millerSand_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/miller1998/verification_data/runinfo.txt b/utils/laugh_tests/miller1998/verification_data/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..3db320081a2c880461b00611d781f7fd29026a17 --- /dev/null +++ b/utils/laugh_tests/miller1998/verification_data/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=18 - mi=39 - ss=02.545 diff --git a/utils/laugh_tests/miller1998/verify_miller.py b/utils/laugh_tests/miller1998/verify_miller.py new file mode 100644 index 0000000000000000000000000000000000000000..2c55f14611b16e36dff9869c85047e95888acb38 --- /dev/null +++ b/utils/laugh_tests/miller1998/verify_miller.py @@ -0,0 +1,120 @@ +from os import listdir +from os.path import isfile, join +from pathlib import Path +import xarray as xr +import numpy as np + + +def verify(verified_data_path, data_to_compare_path, output_variables, numHRU): + try: + verified_dataset = xr.open_dataset(verified_data_path) + to_compare_dataset = xr.open_dataset(data_to_compare_path) + except FileNotFoundError: + print("Check the variables \'verified_data_path\' and \'data_to_compare_path\'. They may not point to the correct output files or the output filenames may have changed.") + exit() + + # Get the HRUs from the dataset into a list + for iHRU in range(0, numHRU): + verified_hru = verified_dataset.isel(hru=iHRU).copy() + hru_to_compare = to_compare_dataset.isel(hru=iHRU).copy() + + for var in output_variables: + try: + if len(verified_hru[var].values) != len(hru_to_compare[var].values): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_hru[var].values)) + print(" hru_to_compare = ", len(hru_to_compare[var].values)) + + verified_data = [] + to_verify_data = [] + if (verified_hru[var].values.ndim > 1): + # 2D output case + for list in verified_hru[var].values: + for data in list: + verified_data.append(data) + + for list in hru_to_compare[var].values: + for data in list: + to_verify_data.append(data) + + else: + # 1D output case + for data in verified_hru[var].values: + verified_data.append(data) + + for data in hru_to_compare[var].values: + to_verify_data.append(data) + + + # check length + if len(verified_data) != len(to_verify_data): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_data)) + print(" hru_to_compare = ", len(to_verify_data)) + + # check values + for elem in range(0, len(verified_data)): + if verified_data[elem] != to_verify_data[elem]: + print("variable -",var, "has different values at", elem) + print(" verified_hru = ", verified_data[elem]) + print(" hru_to_compare = ", to_verify_data[elem]) + break + + except TypeError: + print("variable - ", var, "Cannot be compared with len") + print(" verified_hru = ",verified_hru[var].values) + print(" hru_to_compare = ", hru_to_compare[var].values) + + +numHRU = 1 + +time = "time" +nSnow = "nSnow" +nSoil = "nSoil" +nLayers = "nLayers" +mLayerHeight = "mLayerHeight" +iLayerLiqFluxSoil = "iLayerLiqFluxSoil" +mLayerDepth = "mLayerDepth" +mLayerVolFracIce = "mLayerVolFracIce" +mLayerVolFracLiq = "mLayerVolFracLiq" +mLayerMatricHead = "mLayerMatricHead" +mLayerTranspire = "mLayerTranspire" +mLayerBaseflow = "mLayerBaseflow" +mLayerCompress = "mLayerCompress" +iLayerNrgFlux = "iLayerNrgFlux" +basin__TotalArea = "basin__TotalArea" +scalarGroundEvaporation = "scalarGroundEvaporation" +scalarSoilBaseflow = "scalarSoilBaseflow" +scalarSoilDrainage = "scalarSoilDrainage" +scalarInfiltration = "scalarInfiltration" +scalarSnowDrainage = "scalarSnowDrainage" +scalarSnowSublimation = "scalarSnowSublimation" +scalarThroughfallRain = "scalarThroughfallRain" +scalarThroughfallSnow = "scalarThroughfallSnow" +scalarRainfall = "scalarRainfall" +scalarSnowfall = "scalarSnowfall" +scalarRainPlusMelt = "scalarRainPlusMelt" +pptrate = "pptrate" +averageRoutedRunoff = "averageRoutedRunoff" +scalarSWE = "scalarSWE" +fieldCapacity = "fieldCapacity" + +output_variables = [time, nSnow, nSoil, nLayers, mLayerHeight, iLayerLiqFluxSoil, \ + mLayerDepth, mLayerVolFracIce, mLayerVolFracLiq, mLayerMatricHead, mLayerTranspire, \ + mLayerBaseflow, mLayerCompress, iLayerNrgFlux, basin__TotalArea, scalarGroundEvaporation, \ + scalarSoilBaseflow, scalarSoilDrainage, scalarInfiltration, scalarSnowDrainage, \ + scalarSnowSublimation, scalarThroughfallRain, scalarThroughfallSnow, scalarRainfall, \ + scalarSnowfall, scalarRainPlusMelt, pptrate, averageRoutedRunoff, \ + scalarSWE, fieldCapacity] + +verified_data_path = Path("./verification_data/millerClay_G1-1_timestep.nc") +data_to_compare_path = Path("./output/millerClayGRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +verified_data_path = Path("./verification_data/millerLoam_G1-1_timestep.nc") +data_to_compare_path = Path("./output/millerLoamGRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +# verified_data_path = Path("./verification_data/millerSand_G1-1_timestep.nc") +# data_to_compare_path = Path("./output/millerSandGRU1-1_timestep.nc") +# verify(verified_data_path, data_to_compare_path, output_variables, numHRU) \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/config/Summa_Actors_Settings.json b/utils/laugh_tests/mizoguchi1990/config/Summa_Actors_Settings.json index cf3703231c75b9a338b56ba7dbd8155165fa98e3..7ebcd5557fbe5bb71ecee0dee16b3b3547d1fbd9 100644 --- a/utils/laugh_tests/mizoguchi1990/config/Summa_Actors_Settings.json +++ b/utils/laugh_tests/mizoguchi1990/config/Summa_Actors_Settings.json @@ -1,32 +1,32 @@ { - "DistributedSettings": { - "distributed-mode": true, - "host": "localhost", - "port": 4444 - }, - - "SimulationSettings": { - "total_hru_count": 100000, - "num_hru_per_batch": 500 - }, - - "SummaActor": { - "OuputStructureSize": 250, - "maxGRUPerJob": 250 - }, - - "FileAccessActor": { - "num_vectors_in_output_manager": 1 - }, + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, - "JobActor": { - "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", - "outputCSV": false, - "csvPath": "/scratch/kck540/csv/" - }, - - "HRUActor": { - "printOutput": true, - "outputFrequency": 500 - } -} + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_mizoguchi.txt", + "outputCSV": false, + "csvPath": "/scratch/kck540/csv/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/output/mizoguchi1990GRU1-1_timestep.nc b/utils/laugh_tests/mizoguchi1990/output/mizoguchi1990GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..80d2ac17f8e003d6c6e59a7d165dd59cec28c438 Binary files /dev/null and b/utils/laugh_tests/mizoguchi1990/output/mizoguchi1990GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/mizoguchi1990/output/runinfo.txt b/utils/laugh_tests/mizoguchi1990/output/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..816ded9a32347f2ef8854d0783aa1d4fa704e0fa --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/output/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=21 - mi=32 - ss=42.965 diff --git a/utils/laugh_tests/mizoguchi1990/run_test.sh b/utils/laugh_tests/mizoguchi1990/run_test.sh deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/laugh_tests/mizoguchi1990/run_test_summa.sh b/utils/laugh_tests/mizoguchi1990/run_test_summa.sh new file mode 100755 index 0000000000000000000000000000000000000000..2fa83eb73993c0c92fc2bdac3823ffd79211e2dd --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/run_test_summa.sh @@ -0,0 +1,3 @@ +#! /bin/bash + +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_verify_mizoguchi.txt \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/run_test_summa_actors.sh b/utils/laugh_tests/mizoguchi1990/run_test_summa_actors.sh new file mode 100755 index 0000000000000000000000000000000000000000..3334a9bfb01816ba7e9520fd0fe36faa44259177 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/run_test_summa_actors.sh @@ -0,0 +1,3 @@ +#! /bin/bash + +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/mizoguchi1990/config \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/settings/Model_Output.txt b/utils/laugh_tests/mizoguchi1990/settings/Model_Output.txt new file mode 100644 index 0000000000000000000000000000000000000000..19ed37469f9d3860b3414756a551cb850ab9955b --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/Model_Output.txt @@ -0,0 +1,34 @@ +! --------- +! model variables +! --------- +time | 1 +nSnow | 1 +nSoil | 1 +nLayers | 1 +mLayerHeight | 1 +iLayerLiqFluxSoil | 1 +mLayerDepth | 1 +mLayerVolFracIce | 1 +mLayerVolFracLiq | 1 +mLayerMatricHead | 1 +mLayerTranspire | 1 +mLayerBaseflow | 1 +mLayerCompress | 1 +iLayerNrgFlux | 1 +basin__TotalArea | 1 +scalarGroundEvaporation | 1 +scalarSoilBaseflow | 1 +scalarSoilDrainage | 1 +scalarInfiltration | 1 +scalarSnowDrainage | 1 +scalarSnowSublimation | 1 +scalarThroughfallRain | 1 +scalarThroughfallSnow | 1 +scalarRainfall | 1 +scalarSnowfall | 1 +scalarRainPlusMelt | 1 +fieldCapacity | 1 +pptrate | 1 +averageRoutedRunoff | 1 +scalarSWE | 1 +fieldCapacity | 1 diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_mizoguchi.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_mizoguchi.txt new file mode 100644 index 0000000000000000000000000000000000000000..2f220a316ee3c053e860e62697095bffa265b321 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_mizoguchi.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:01' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '2000-01-01' +decisionsFile 'summa_zDecisions_mizoguchi.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_mizoguchi.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_mizoguchi.nc' ! initial_cond +outFilePrefix 'mizoguchi1990' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_verify_mizoguchi.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_verify_mizoguchi.txt new file mode 100644 index 0000000000000000000000000000000000000000..69517be0971ed8e23b1db287b8b118c6ca9596e6 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_fileManager_verify_mizoguchi.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 00:01' ! +simEndTime '2000-01-03 12:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/mizoguchi1990/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_mizoguchi.txt' ! decision +outputControlFile 'Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_mizoguchi.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_mizoguchi.nc' ! initial_cond +outFilePrefix 'mizoguchi1990' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zBasinParamInfo.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_zBasinParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1926fd71fbc6ce90cd4180f652ae414885e4b611 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_zBasinParamInfo.txt @@ -0,0 +1,35 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! DEFINE BASIN MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a1), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! *********************************************************************************************************************** +! +! ******************************************************************** +! define format string for parameter descriptions +! ******************************************************************** +'(a25,1x,a1,1x,3(f12.4,1x,a1,1x))' ! format string for parameter descriptions (must be in single quotes) +! ******************************************************************** +! baseflow +! ******************************************************************** +basin__aquiferHydCond | 0.0100 | 0.0001 | 10.0000 +basin__aquiferScaleFactor | 3.5000 | 0.1000 | 100.0000 +basin__aquiferBaseflowExp | 5.0000 | 1.0000 | 10.0000 +! ******************************************************************** +! within-grid routing +! ******************************************************************** +routingGammaShape | 2.5000 | 2.0000 | 3.0000 +routingGammaScale | 20000.0000 | 1.0000 | 5000000.0000 +! ******************************************************************** diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zDecisions_mizoguchi.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_zDecisions_mizoguchi.txt new file mode 100644 index 0000000000000000000000000000000000000000..32ebccac5a0c549881def40f2c71c35b005c1652 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_zDecisions_mizoguchi.txt @@ -0,0 +1,168 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE MODEL DECISIONS +! *********************************************************************************************************************** +! This file defines the modeling decisions used. +! NOTES: +! (1) lines starting with ! are treated as comment lines -- there is no limit on the number of comment lines +! (2) the name of the decision is followed by the character string defining the decision +! (3) the simulation start/end times must be within single quotes +! *********************************************************************************************************************** +! *********************************************************************************************************************** +soilCatTbl ROSETTA ! (03) soil-category dateset +vegeParTbl USGS ! (04) vegetation category dataset +soilStress NoahType ! (05) choice of function for the soil moisture control on stomatal resistance +stomResist BallBerry ! (06) choice of function for stomatal resistance +! *********************************************************************************************************************** +num_method itertive ! (07) choice of numerical method +fDerivMeth analytic ! (08) method used to calculate flux derivatives +LAI_method monTable ! (09) method used to determine LAI and SAI +f_Richards mixdform ! (10) form of Richard's equation +groundwatr noXplict ! (11) choice of groundwater parameterization +hc_profile constant ! (12) choice of hydraulic conductivity profile +bcUpprTdyn presTemp ! (13) type of upper boundary condition for thermodynamics +bcLowrTdyn zeroFlux ! (14) type of lower boundary condition for thermodynamics +bcUpprSoiH liq_flux ! (15) type of upper boundary condition for soil hydrology +bcLowrSoiH zeroFlux ! (16) type of lower boundary condition for soil hydrology +veg_traits CM_QJRMS1988 ! (17) choice of parameterization for vegetation roughness length and displacement height +canopyEmis difTrans ! (18) choice of parameterization for canopy emissivity +snowIncept lightSnow ! (19) choice of parameterization for snow interception +windPrfile logBelowCanopy ! (20) choice of wind profile through the canopy +astability louisinv ! (21) choice of stability function +canopySrad CLM_2stream ! (22) choice of canopy shortwave radiation method +alb_method varDecay ! (23) choice of albedo representation +compaction anderson ! (24) choice of compaction routine +snowLayers jrdn1991 ! (25) choice of method to combine and sub-divide snow layers +thCondSnow jrdn1991 ! (26) choice of thermal conductivity representation for snow +thCondSoil hanssonVZJ ! (27) choice of thermal conductivity representation for soil +spatial_gw localColumn ! (28) choice of method for the spatial representation of groundwater +subRouting timeDlay ! (29) choice of method for sub-grid routing +! *********************************************************************************************** +! ***** description of the options available -- nothing below this point is read **************** +! *********************************************************************************************** +! ----------------------------------------------------------------------------------------------- +! (01) simulation start time +! (02) simulation end time +! ----------------------------------------------------------------------------------------------- +! (03) soil-category dateset +! STAS ! STATSGO dataset +! STAS-RUC ! ?? +! ROSETTA ! merged Rosetta table with STAS-RUC +! ----------------------------------------------------------------------------------------------- +! (04) vegetation category dataset +! USGS ! USGS 24/27 category dataset +! MODIFIED_IGBP_MODIS_NOAH ! MODIS 20-category dataset +! ----------------------------------------------------------------------------------------------- +! (05) choice of function for the soil moisture control on stomatal resistance +! NoahType ! thresholded linear function of volumetric liquid water content +! CLM_Type ! thresholded linear function of matric head +! SiB_Type ! exponential of the log of matric head +! ----------------------------------------------------------------------------------------------- +! (06) choice of function for stomatal resistance +! BallBerry ! Ball-Berry +! Jarvis ! Jarvis +! ----------------------------------------------------------------------------------------------- +! (07) choice of numerical method +! itertive ! iterative +! non_iter ! non-iterative +! itersurf ! iterate only on the surface energy balance +! ----------------------------------------------------------------------------------------------- +! (08) method used to calculate flux derivatives +! numericl ! numerical derivatives +! analytic ! analytical derivatives +! ----------------------------------------------------------------------------------------------- +! (09) method used to determine LAI and SAI +! monTable ! LAI/SAI taken directly from a monthly table for different vegetation classes +! specified ! LAI/SAI computed from green vegetation fraction and winterSAI and summerLAI parameters +! ----------------------------------------------------------------------------------------------- +! (10) form of Richards' equation +! moisture ! moisture-based form of Richards' equation +! mixdform ! mixed form of Richards' equation +! ----------------------------------------------------------------------------------------------- +! (11) choice of groundwater parameterization +! qTopmodl ! topmodel parameterization +! bigBuckt ! a big bucket (lumped aquifer model) +! noXplict ! no explicit groundwater parameterization +! ----------------------------------------------------------------------------------------------- +! (12) choice of hydraulic conductivity profile +! constant ! constant hydraulic conductivity with depth +! pow_prof ! power-law profile +! ----------------------------------------------------------------------------------------------- +! (13) choice of upper boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! nrg_flux ! energy flux +! ----------------------------------------------------------------------------------------------- +! (14) choice of lower boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (15) choice of upper boundary conditions for soil hydrology +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! liq_flux ! liquid water flux +! ----------------------------------------------------------------------------------------------- +! (16) choice of lower boundary conditions for soil hydrology +! drainage ! free draining +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! bottmPsi ! function of matric head in the lower-most layer +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (17) choice of parameterization for vegetation roughness length and displacement height +! Raupach_BLM1994 ! Raupach (BLM 1994) "Simplified expressions..." +! CM_QJRMS1988 ! Choudhury and Monteith (QJRMS 1998) "A four layer model for the heat budget..." +! vegTypeTable ! constant parameters dependent on the vegetation type +! ----------------------------------------------------------------------------------------------- +! (18) choice of parameterization for canopy emissivity +! simplExp ! simple exponential function +! difTrans ! parameterized as a function of diffuse transmissivity +! ----------------------------------------------------------------------------------------------- +! (19) choice of parameterization for snow interception +! stickySnow ! maximum interception capacity an increasing function of temerature +! lightSnow ! maximum interception capacity an inverse function of new snow density +! ----------------------------------------------------------------------------------------------- +! (20) choice of wind profile +! exponential ! exponential wind profile extends to the surface +! logBelowCanopy ! logarithmic profile below the vegetation canopy +! ----------------------------------------------------------------------------------------------- +! (21) choice of stability function +! standard ! standard MO similarity, a la Anderson (1979) +! louisinv ! Louis (1979) inverse power function +! mahrtexp ! Mahrt (1987) exponential function +! ----------------------------------------------------------------------------------------------- +! (22) choice of canopy shortwave radiation method +! noah_mp ! full Noah-MP implementation (including albedo) +! CLM_2stream ! CLM 2-stream model (see CLM documentation) +! UEB_2stream ! UEB 2-stream model (Mahat and Tarboton, WRR 2011) +! NL_scatter ! Simplified method Nijssen and Lettenmaier (JGR 1999) +! BeersLaw ! Beer's Law (as implemented in VIC) +! ----------------------------------------------------------------------------------------------- +! (23) choice of albedo representation +! conDecay ! constant decay rate (e.g., VIC, CLASS) +! varDecay ! variable decay rate (e.g., BATS approach, with destructive metamorphism + soot content) +! ----------------------------------------------------------------------------------------------- +! (24) choice of compaction routine +! consettl ! constant settlement rate +! anderson ! semi-empirical method of Anderson (1976) +! ----------------------------------------------------------------------------------------------- +! (25) choice of method to combine and sub-divide snow layers +! CLM_2010 ! CLM option: combination/sub-dividion rules depend on layer index +! jrdn1991 ! SNTHERM option: same combination/sub-dividion rules applied to all layers +! ----------------------------------------------------------------------------------------------- +! (26) choice of thermal conductivity representation for snow +! tyen1965 ! Yen (1965) +! melr1977 ! Mellor (1977) +! jrdn1991 ! Jordan (1991) +! smnv2000 ! Smirnova et al. (2000) +! ----------------------------------------------------------------------------------------------- +! (27) choice of thermal conductivity representation for soil +! funcSoilWet ! function of soil wetness +! mixConstit ! mixture of constituents +! hanssonVZJ ! test case for the mizoguchi lab experiment, Hansson et al. VZJ 2004 +! ----------------------------------------------------------------------------------------------- +! (28) choice of method for the spatial representation of groundwater +! localColumn ! separate groundwater representation in each local soil column +! singleBasin ! single groundwater store over the entire basin +! ----------------------------------------------------------------------------------------------- +! (29) choice of method for sub-grid routing +! timeDlay ! time-delay histogram +! qInstant ! instantaneous routing +! *********************************************************************************************** +! history Mon Jul 20 16:08:18 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/mizoguchi1990/summa_fileManager_mizoguchi.txt diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingFileList.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingFileList.txt new file mode 100644 index 0000000000000000000000000000000000000000..54cd59448427e605213d73854a4b8e61e3095756 --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingFileList.txt @@ -0,0 +1,8 @@ +! **************************************************************************************************** +! List of forcing data files used +! +! This file includes one "word" per line: +! (1) The name of a forcing file +! --> filename must be in single quotes +! **************************************************************************************************** + 'mizoguchi_forcing.nc' diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingInfo_mizoguchi.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingInfo_mizoguchi.txt new file mode 100644 index 0000000000000000000000000000000000000000..268d17423c5d9a2f5dd828010d30fbc7426b60bd --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_zForcingInfo_mizoguchi.txt @@ -0,0 +1,29 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE FORCING FILE +! *********************************************************************************************************************** +! This file defines the name of the forcing data file, the number of columns in the file, the column index for each data +! variable, the start index of the simulation period, the length of the simulation period, +! and the length of the data time step +! *********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! *********************************************************************************************************************** +'(a15,a1,1x,a)' +filenmData | mizoguchi_forcing.txt ! name of the forcing data file (must be in single quotes) +ncols | 13 ! number of columns in the forcing file +iyyy | 1 ! year +im | 2 ! month +id | 3 ! day +ih | 4 ! hour +imin | 5 ! minute +pptrate | 7 ! precipitation rate (kg m-2 s-1) +SWRadAtm | 8 ! downwelling shortwave radiaiton (W m-2) +LWRadAtm | 9 ! downwelling longwave radiation (W m-2) +airtemp | 10 ! air temperature (K) +windspd | 11 ! windspeed (m/s) +airpres | 12 ! pressure (Pa) +spechum | 13 ! specific humidity (g/g) +data_step | 60 ! length of time step (seconds) diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zInitialCond_mizoguchi.nc b/utils/laugh_tests/mizoguchi1990/settings/summa_zInitialCond_mizoguchi.nc new file mode 100644 index 0000000000000000000000000000000000000000..2ff2e3ffc4b70f3d8993cb916c0a900e504f4329 Binary files /dev/null and b/utils/laugh_tests/mizoguchi1990/settings/summa_zInitialCond_mizoguchi.nc differ diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalAttributes.nc b/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalAttributes.nc new file mode 100644 index 0000000000000000000000000000000000000000..2909cb14bbbb1eaae1398976dacd601d039143af Binary files /dev/null and b/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalAttributes.nc differ diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalParamInfo.txt b/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1ce9d46a0120e95c9d49733d3e534e0e92ededac --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/settings/summa_zLocalParamInfo.txt @@ -0,0 +1,226 @@ +! ======================================================================================================================= +! ======================================================================================================================= +! ===== DEFINITION OF MODEL PARAMETERS ================================================================================== +! ======================================================================================================================= +! ======================================================================================================================= +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! ======================================================================================================================= +! DEFINE SITE MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! ======================================================================================================================= +! +! ==================================================================== +! define format string for parameter descriptions +! ==================================================================== +'(a25,1x,3(a1,1x,f12.4,1x))' ! format string (must be in single quotes) +! ==================================================================== +! boundary conditions +! ==================================================================== +upperBoundHead | -0.7500 | -100.0000 | -0.0100 +lowerBoundHead | 0.0000 | -100.0000 | -0.0100 +upperBoundTheta | 0.2004 | 0.1020 | 0.3680 +lowerBoundTheta | 0.1100 | 0.1020 | 0.3680 +upperBoundTemp | 272.1600 | 270.1600 | 280.1600 +lowerBoundTemp | 274.1600 | 270.1600 | 280.1600 +! ==================================================================== +! precipitation partitioning +! ==================================================================== +tempCritRain | 273.1600 | 272.1600 | 274.1600 +tempRangeTimestep | 2.0000 | 0.5000 | 5.0000 +frozenPrecipMultip | 1.0000 | 0.5000 | 1.5000 +! ==================================================================== +! snow properties +! ==================================================================== +snowfrz_scale | 50.0000 | 10.0000 | 1000.0000 +fixedThermalCond_snow | 0.3500 | 0.1000 | 1.0000 +! ==================================================================== +! snow albedo +! ==================================================================== +albedoMax | 0.8400 | 0.7000 | 0.9500 +albedoMinWinter | 0.5500 | 0.6000 | 1.0000 +albedoMinSpring | 0.5500 | 0.3000 | 1.0000 +albedoMaxVisible | 0.9500 | 0.7000 | 0.9500 +albedoMinVisible | 0.7500 | 0.5000 | 0.7500 +albedoMaxNearIR | 0.6500 | 0.5000 | 0.7500 +albedoMinNearIR | 0.3000 | 0.1500 | 0.4500 +albedoDecayRate | 1.0d+6 | 0.1d+6 | 5.0d+6 +albedoSootLoad | 0.3000 | 0.1000 | 0.5000 +albedoRefresh | 1.0000 | 1.0000 | 10.0000 +! ==================================================================== +! radiation transfer within snow +! ==================================================================== +radExt_snow | 20.0000 | 20.0000 | 20.0000 +directScale | 0.0900 | 0.0000 | 0.5000 +Frad_direct | 0.7000 | 0.0000 | 1.0000 +Frad_vis | 0.5000 | 0.0000 | 1.0000 +! ==================================================================== +! new snow density +! ==================================================================== +newSnowDenMin | 100.0000 | 50.0000 | 100.0000 +newSnowDenMult | 100.0000 | 25.0000 | 75.0000 +newSnowDenScal | 5.0000 | 1.0000 | 5.0000 +constSnowDen | 100.0000 | 50.0000 | 250.0000 +newSnowDenAdd | 109.0000 | 80.0000 | 120.0000 +newSnowDenMultTemp | 6.0000 | 1.0000 | 12.0000 +newSnowDenMultWind | 26.0000 | 16.0000 | 36.0000 +newSnowDenMultAnd | 1.0000 | 1.0000 | 3.0000 +newSnowDenBase | 0.0000 | 0.0000 | 0.0000 +! ==================================================================== +! snow compaction +! ==================================================================== +densScalGrowth | 0.0460 | 0.0230 | 0.0920 +tempScalGrowth | 0.0400 | 0.0200 | 0.0600 +grainGrowthRate | 2.7d-6 | 1.0d-6 | 5.0d-6 +densScalOvrbdn | 0.0230 | 0.0115 | 0.0460 +tempScalOvrbdn | 0.0800 | 0.6000 | 1.0000 +baseViscosity | 9.0d+5 | 5.0d+5 | 1.5d+6 +! ==================================================================== +! water flow through snow +! ==================================================================== +Fcapil | 0.0400 | 0.0100 | 0.1000 +k_snow | 0.1979 | 0.0050 | 0.0500 +mw_exp | 3.0000 | 1.0000 | 5.0000 +! ==================================================================== +! turbulent heat fluxes +! ==================================================================== +z0Snow | 0.0010 | 0.0010 | 10.0000 +z0Soil | 0.0100 | 0.0010 | 10.0000 +z0Canopy | 0.1000 | 0.0010 | 10.0000 +zpdFraction | 0.6500 | 0.5000 | 0.8500 +critRichNumber | 0.2000 | 0.1000 | 1.0000 +Louis79_bparam | 9.4000 | 9.2000 | 9.6000 +Louis79_cStar | 5.3000 | 5.1000 | 5.5000 +Mahrt87_eScale | 1.0000 | 0.5000 | 2.0000 +leafExchangeCoeff | 0.0100 | 0.0010 | 0.1000 +windReductionParam | 0.2800 | 0.0000 | 1.0000 +! ==================================================================== +! stomatal conductance +! ==================================================================== +Kc25 | 296.0770 | 296.0770 | 296.0770 +Ko25 | 0.2961 | 0.2961 | 0.2961 +Kc_qFac | 2.1000 | 2.1000 | 2.1000 +Ko_qFac | 1.2000 | 1.2000 | 1.2000 +kc_Ha | 79430.0000 | 79430.0000 | 79430.0000 +ko_Ha | 36380.0000 | 36380.0000 | 36380.0000 +vcmax25_canopyTop | 40.0000 | 20.0000 | 100.0000 +vcmax_qFac | 2.4000 | 2.4000 | 2.4000 +vcmax_Ha | 65330.0000 | 65330.0000 | 65330.0000 +vcmax_Hd | 220000.0000 | 149250.0000 | 149250.0000 +vcmax_Sv | 710.0000 | 485.0000 | 485.0000 +vcmax_Kn | 0.6000 | 0.0000 | 1.2000 +jmax25_scale | 2.0000 | 2.0000 | 2.0000 +jmax_Ha | 43540.0000 | 43540.0000 | 43540.0000 +jmax_Hd | 152040.0000 | 152040.0000 | 152040.0000 +jmax_Sv | 495.0000 | 495.0000 | 495.0000 +fractionJ | 0.1500 | 0.1500 | 0.1500 +quantamYield | 0.0500 | 0.0500 | 0.0500 +vpScaleFactor | 1500.0000 | 1500.0000 | 1500.0000 +cond2photo_slope | 9.0000 | 1.0000 | 10.0000 +minStomatalConductance | 2000.0000 | 2000.0000 | 2000.0000 +! ==================================================================== +! vegetation properties +! ==================================================================== +winterSAI | 1.0000 | 0.0100 | 3.0000 +summerLAI | 3.0000 | 0.0100 | 10.0000 +rootScaleFactor1 | 2.0000 | 1.0000 | 10.0000 +rootScaleFactor2 | 5.0000 | 1.0000 | 10.0000 +rootingDepth | 0.1000 | 0.0100 | 10.0000 +rootDistExp | 1.0000 | 0.0100 | 1.0000 +plantWiltPsi | -150.0000 | -500.0000 | 0.0000 +soilStressParam | 5.8000 | 4.3600 | 6.3700 +critSoilWilting | 0.0750 | 0.0000 | 1.0000 +critSoilTranspire | 0.1750 | 0.0000 | 1.0000 +critAquiferTranspire | 0.2000 | 0.1000 | 10.0000 +minStomatalResistance | 50.0000 | 10.0000 | 200.0000 +leafDimension | 0.0400 | 0.0100 | 0.1000 +heightCanopyTop | 20.0000 | 0.0500 | 100.0000 +heightCanopyBottom | 2.0000 | 0.0000 | 5.0000 +specificHeatVeg | 874.0000 | 500.0000 | 1500.0000 +maxMassVegetation | 25.0000 | 1.0000 | 50.0000 +throughfallScaleSnow | 0.5000 | 0.1000 | 0.9000 +throughfallScaleRain | 0.5000 | 0.1000 | 0.9000 +refInterceptCapSnow | 6.6000 | 1.0000 | 10.0000 +refInterceptCapRain | 1.0000 | 0.0100 | 1.0000 +snowUnloadingCoeff | 0.0000 | 0.0000 | 1.5d-6 +canopyDrainageCoeff | 0.0050 | 0.0010 | 0.0100 +ratioDrip2Unloading | 0.4000 | 0.0000 | 1.0000 +canopyWettingFactor | 0.7000 | 0.0000 | 1.0000 +canopyWettingExp | 1.0000 | 0.0000 | 1.0000 +! ==================================================================== +! soil properties +! ==================================================================== +soil_dens_intr | 2700.0000 | 500.0000 | 4000.0000 +thCond_soil | 28.0000 | 2.9000 | 8.4000 +frac_sand | 0.1600 | 0.0000 | 1.0000 +frac_silt | 0.2800 | 0.0000 | 1.0000 +frac_clay | 0.5600 | 0.0000 | 1.0000 +fieldCapacity | 0.2000 | 0.0000 | 1.0000 +wettingFrontSuction | 0.3000 | 0.1000 | 1.5000 +theta_mp | 0.4010 | 0.3000 | 0.6000 +theta_sat | 0.5500 | 0.3000 | 0.6000 +theta_res | 0.1390 | 0.0010 | 0.1000 +vGn_alpha | -0.8400 | -1.0000 | -0.0100 +vGn_n | 1.3000 | 1.0000 | 3.0000 +mpExp | 5.0000 | 1.0000 | 10.0000 +k_soil | 7.5d-06 | 1.d-07 | 100.d-07 +k_macropore | 1.0d-03 | 1.d-07 | 100.d-07 +kAnisotropic | 1.0000 | 0.0001 | 10.0000 +zScale_TOPMODEL | 2.5000 | 0.1000 | 100.0000 +compactedDepth | 1.0000 | 0.0000 | 1.0000 +aquiferScaleFactor | 0.3500 | 0.1000 | 100.0000 +aquiferBaseflowExp | 2.0000 | 1.0000 | 10.0000 +aquiferBaseflowRate | 2.0000 | 1.0000 | 10.0000 +qSurfScale | 50.0000 | 1.0000 | 100.0000 +specificYield | 0.2000 | 0.1000 | 0.3000 +specificStorage | 1.d-09 | 1.d-05 | 1.d-07 +f_impede | 2.0000 | 1.0000 | 10.0000 +soilIceScale | 0.1300 | 0.0001 | 1.0000 +soilIceCV | 0.4500 | 0.1000 | 5.0000 +! ==================================================================== +! algorithmic control parameters +! ==================================================================== +minwind | 0.1000 | 0.0010 | 1.0000 +minstep | 1.0000 | 1.0000 | 1800.0000 +maxstep | 3600.0000 | 60.0000 | 1800.0000 +wimplicit | 0.0000 | 0.0000 | 1.0000 +maxiter | 20.0000 | 1.0000 | 100.0000 +relConvTol_liquid | 1.0d-3 | 1.0d-5 | 1.0d-1 +absConvTol_liquid | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_matric | 1.0d-6 | 1.0d-5 | 1.0d-1 +absConvTol_matric | 1.0d-6 | 1.0d-8 | 1.0d-3 +relConvTol_energy | 1.0d-2 | 1.0d-5 | 1.0d-1 +absConvTol_energy | 1.0d-0 | 1.0d-2 | 1.0d+1 +relConvTol_aquifr | 1.0d-0 | 1.0d-2 | 1.0d+1 +absConvTol_aquifr | 1.0d-5 | 1.0d-5 | 1.0d-1 +zmin | 0.0100 | 0.0050 | 0.1000 +zmax | 0.0500 | 0.0100 | 0.5000 +! --- +zminLayer1 | 0.0075 | 0.0075 | 0.0075 +zminLayer2 | 0.0100 | 0.0100 | 0.0100 +zminLayer3 | 0.0500 | 0.0500 | 0.0500 +zminLayer4 | 0.1000 | 0.1000 | 0.1000 +zminLayer5 | 0.2500 | 0.2500 | 0.2500 +! --- +zmaxLayer1_lower | 0.0500 | 0.0500 | 0.0500 +zmaxLayer2_lower | 0.2000 | 0.2000 | 0.2000 +zmaxLayer3_lower | 0.5000 | 0.5000 | 0.5000 +zmaxLayer4_lower | 1.0000 | 1.0000 | 1.0000 +! --- +zmaxLayer1_upper | 0.0300 | 0.0300 | 0.0300 +zmaxLayer2_upper | 0.1500 | 0.1500 | 0.1500 +zmaxLayer3_upper | 0.3000 | 0.3000 | 0.3000 +zmaxLayer4_upper | 0.7500 | 0.7500 | 0.7500 +! ==================================================================== +minTempUnloading | 270.16 | 260.16 | 273.16 +minWindUnloading | 0.0000 | 0.0000 | 10.000 +rateTempUnloading | 1.87d+5 | 1.0d+5 | 3.0d+5 +rateWindUnloading | 1.56d+5 | 1.0d+5 | 3.0d+5 +! history Mon Jul 20 16:08:18 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/mizoguchi1990/summa_fileManager_mizoguchi.txt \ No newline at end of file diff --git a/utils/laugh_tests/mizoguchi1990/settings/summa_zParamTrial_mizoguchi.nc b/utils/laugh_tests/mizoguchi1990/settings/summa_zParamTrial_mizoguchi.nc new file mode 100644 index 0000000000000000000000000000000000000000..0fd038b542c8c656ca15554a1b65cf8f1f18063f Binary files /dev/null and b/utils/laugh_tests/mizoguchi1990/settings/summa_zParamTrial_mizoguchi.nc differ diff --git a/utils/laugh_tests/mizoguchi1990/verification_data/mizoguchi1990_G1-1_timestep.nc b/utils/laugh_tests/mizoguchi1990/verification_data/mizoguchi1990_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..4d093bfd5df8ed7896fc35dc10852885bc3a5906 Binary files /dev/null and b/utils/laugh_tests/mizoguchi1990/verification_data/mizoguchi1990_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/mizoguchi1990/verification_data/runinfo.txt b/utils/laugh_tests/mizoguchi1990/verification_data/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..5cb0c6864c9416849bb5eb3648b44940ab387d6b --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/verification_data/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=19 - mi=08 - ss=48.977 diff --git a/utils/laugh_tests/mizoguchi1990/verify_mizoguchi.py b/utils/laugh_tests/mizoguchi1990/verify_mizoguchi.py new file mode 100644 index 0000000000000000000000000000000000000000..738119a37751c662d0193ae9c617edd256815f7e --- /dev/null +++ b/utils/laugh_tests/mizoguchi1990/verify_mizoguchi.py @@ -0,0 +1,112 @@ +from os import listdir +from os.path import isfile, join +from pathlib import Path +import xarray as xr +import numpy as np + + +def verify(verified_data_path, data_to_compare_path, output_variables, numHRU): + try: + verified_dataset = xr.open_dataset(verified_data_path) + to_compare_dataset = xr.open_dataset(data_to_compare_path) + except FileNotFoundError: + print("Check the variables \'verified_data_path\' and \'data_to_compare_path\'. They may not point to the correct output files or the output filenames may have changed.") + exit() + + # Get the HRUs from the dataset into a list + for iHRU in range(0, numHRU): + verified_hru = verified_dataset.isel(hru=iHRU).copy() + hru_to_compare = to_compare_dataset.isel(hru=iHRU).copy() + + for var in output_variables: + try: + if len(verified_hru[var].values) != len(hru_to_compare[var].values): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_hru[var].values)) + print(" hru_to_compare = ", len(hru_to_compare[var].values)) + + verified_data = [] + to_verify_data = [] + if (verified_hru[var].values.ndim > 1): + # 2D output case + for list in verified_hru[var].values: + for data in list: + verified_data.append(data) + + for list in hru_to_compare[var].values: + for data in list: + to_verify_data.append(data) + + else: + # 1D output case + for data in verified_hru[var].values: + verified_data.append(data) + + for data in hru_to_compare[var].values: + to_verify_data.append(data) + + + # check length + if len(verified_data) != len(to_verify_data): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_data)) + print(" hru_to_compare = ", len(to_verify_data)) + + # check values + for elem in range(0, len(verified_data)): + if verified_data[elem] != to_verify_data[elem]: + print("variable -",var, "has different values at", elem) + print(" verified_hru = ", verified_data[elem]) + print(" hru_to_compare = ", to_verify_data[elem]) + break + + except TypeError: + print("variable - ", var, "Cannot be compared with len") + print(" verified_hru = ",verified_hru[var].values) + print(" hru_to_compare = ", hru_to_compare[var].values) + + +numHRU = 1 + +time = "time" +nSnow = "nSnow" +nSoil = "nSoil" +nLayers = "nLayers" +mLayerHeight = "mLayerHeight" +iLayerLiqFluxSoil = "iLayerLiqFluxSoil" +mLayerDepth = "mLayerDepth" +mLayerVolFracIce = "mLayerVolFracIce" +mLayerVolFracLiq = "mLayerVolFracLiq" +mLayerMatricHead = "mLayerMatricHead" +mLayerTranspire = "mLayerTranspire" +mLayerBaseflow = "mLayerBaseflow" +mLayerCompress = "mLayerCompress" +iLayerNrgFlux = "iLayerNrgFlux" +basin__TotalArea = "basin__TotalArea" +scalarGroundEvaporation = "scalarGroundEvaporation" +scalarSoilBaseflow = "scalarSoilBaseflow" +scalarSoilDrainage = "scalarSoilDrainage" +scalarInfiltration = "scalarInfiltration" +scalarSnowDrainage = "scalarSnowDrainage" +scalarSnowSublimation = "scalarSnowSublimation" +scalarThroughfallRain = "scalarThroughfallRain" +scalarThroughfallSnow = "scalarThroughfallSnow" +scalarRainfall = "scalarRainfall" +scalarSnowfall = "scalarSnowfall" +scalarRainPlusMelt = "scalarRainPlusMelt" +pptrate = "pptrate" +averageRoutedRunoff = "averageRoutedRunoff" +scalarSWE = "scalarSWE" +fieldCapacity = "fieldCapacity" + +output_variables = [time, nSnow, nSoil, nLayers, mLayerHeight, iLayerLiqFluxSoil, \ + mLayerDepth, mLayerVolFracIce, mLayerVolFracLiq, mLayerMatricHead, mLayerTranspire, \ + mLayerBaseflow, mLayerCompress, iLayerNrgFlux, basin__TotalArea, scalarGroundEvaporation, \ + scalarSoilBaseflow, scalarSoilDrainage, scalarInfiltration, scalarSnowDrainage, \ + scalarSnowSublimation, scalarThroughfallRain, scalarThroughfallSnow, scalarRainfall, \ + scalarSnowfall, scalarRainPlusMelt, pptrate, averageRoutedRunoff, \ + scalarSWE, fieldCapacity] + +verified_data_path = Path("./verification_data/mizoguchi1990_G1-1_timestep.nc") +data_to_compare_path = Path("./output/mizoguchi1990GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/config/exp1/Summa_Actors_Settings.json b/utils/laugh_tests/vanderborght2005/config/exp1/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..ffded0d780cf2e769d791e5e4ea6fbc5e80d672b --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/config/exp1/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp1.txt", + "outputCSV": false, + "csvPath": "/scratch/kck540/csv/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/config/exp2/Summa_Actors_Settings.json b/utils/laugh_tests/vanderborght2005/config/exp2/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..02070005214c2425b46f389847b08b5c5b196f1b --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/config/exp2/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp2.txt", + "outputCSV": false, + "csvPath": "/scratch/kck540/csv/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/config/exp3/Summa_Actors_Settings.json b/utils/laugh_tests/vanderborght2005/config/exp3/Summa_Actors_Settings.json new file mode 100644 index 0000000000000000000000000000000000000000..32e926578fc8e95c832cdc400c2e3d7ac1c76633 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/config/exp3/Summa_Actors_Settings.json @@ -0,0 +1,32 @@ +{ + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, + + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp3.txt", + "outputCSV": false, + "csvPath": "/scratch/kck540/csv/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/output/runinfo.txt b/utils/laugh_tests/vanderborght2005/output/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..5151e7cd7c083f6e6f2ec66c000ccd868bb86520 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/output/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=21 - mi=33 - ss=47.978 diff --git a/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp1GRU1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp1GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..389efb9d6fdd3efa2fce4c47f99dbb34e9164bbf Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp1GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp2GRU1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp2GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..9ed72de5cbe91cc37bbea9af33127f011e576243 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp2GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp3GRU1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp3GRU1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..06a160724b61e8833821c158c2d00e720e21db49 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/output/vanderborght2005_exp3GRU1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/run_test.sh b/utils/laugh_tests/vanderborght2005/run_test.sh deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/laugh_tests/vanderborght2005/run_test_summa.sh b/utils/laugh_tests/vanderborght2005/run_test_summa.sh new file mode 100755 index 0000000000000000000000000000000000000000..afdec1fddfbb3ac82ee20da754ae290f2ee64782 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/run_test_summa.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp1.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp2.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp3.txt \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/run_test_summa_actors.sh b/utils/laugh_tests/vanderborght2005/run_test_summa_actors.sh new file mode 100755 index 0000000000000000000000000000000000000000..632f2091eb64db4bd2c9758f4cd88002441ec98a --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/run_test_summa_actors.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/vanderborght2005/config/exp1 +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/vanderborght2005/config/exp2 +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/vanderborght2005/config/exp3 \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/Model_Output.txt b/utils/laugh_tests/vanderborght2005/settings/Model_Output.txt new file mode 100644 index 0000000000000000000000000000000000000000..d27936ba2357ecbd9a594ab0b9dcca44917333ff --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/Model_Output.txt @@ -0,0 +1,40 @@ +! --------- +! model variables +! --------- +nSnow | 1 +nSoil | 1 +pptrate | 1 +airtemp | 1 +scalarRainPlusMelt | 1 +scalarSWE | 1 +scalarThroughfallSnow | 1 +scalarThroughfallRain | 1 +scalarSnowSublimation | 1 +scalarInfiltration | 1 +scalarExfiltration | 1 +scalarSurfaceRunoff | 1 +scalarSurfaceTemp | 1 +scalarSenHeatTotal | 1 +scalarLatHeatTotal | 1 +mLayerHeight | 1 +iLayerHeight | 1 +iLayerLiqFluxSoil | 1 +mLayerTemp | 1 +mLayerDepth | 1 +mLayerLiqFluxSoil | 1 +mLayerVolFracIce | 1 +mLayerVolFracLiq | 1 +mLayerVolFracWat | 1 +mLayerMatricHead | 1 +basin__TotalArea | 1 +basin__SurfaceRunoff | 1 +basin__ColumnOutflow | 1 +basin__AquiferStorage | 1 +basin__AquiferRecharge | 1 +basin__AquiferBaseflow | 1 +basin__AquiferTranspire | 1 +averageInstantRunoff | 1 +averageRoutedRunoff | 1 +fieldCapacity | 1 +scalarLAI | 1 +scalarSAI | 1 diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp1.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp1.txt new file mode 100644 index 0000000000000000000000000000000000000000..dc9df573e90b6a5691fb24618a620dd82d262011 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp1.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp1.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp1' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp2.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp2.txt new file mode 100644 index 0000000000000000000000000000000000000000..95d7d4ce7ea59822d000c65cfcfd50b5df5e137e --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp2.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp2.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp2' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp3.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp3.txt new file mode 100644 index 0000000000000000000000000000000000000000..c0ef7a680830413df0c824370fca27b35393acb4 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_vanderborght2005_exp3.txt @@ -0,0 +1,22 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/output/' ! output_path +forcingFreq 'month' ! the frequeny of forcing files (month, year) +forcingStart '1990-01-01' +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp3.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp3' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp1.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp1.txt new file mode 100644 index 0000000000000000000000000000000000000000..9a62a876978d4834839e90d158b3a4c9fff35366 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp1.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp1.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp1' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp2.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp2.txt new file mode 100644 index 0000000000000000000000000000000000000000..6491b089bdfdbdd1a0546ca767b88eac3271b25b --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp2.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp2.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp2' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp3.txt b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp3.txt new file mode 100644 index 0000000000000000000000000000000000000000..2c6bbe1aec9d3fb4685529d20673c7fdbf4c5508 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_fileManager_verify_vanderborght2005_exp3.txt @@ -0,0 +1,20 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '1990-01-01 00:00' ! +simEndTime '1990-01-01 01:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/settings/' ! setting_path +forcingPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/forcing_data/' ! input_path +outputPath '/Summa-Actors/utils/laugh_tests/vanderborght2005/verification_data/' ! output_path +decisionsFile 'summa_zDecisions_vanderborght2005.txt' ! decision +outputControlFile 'Model_Output.txt' ! ouput_file +globalHruParamFile 'summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'summa_zParamTrial_vanderborght2005_exp3.nc' ! para_trial +forcingListFile 'summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'summa_zInitialCond_vanderborght2005.nc' ! initial_cond +outFilePrefix 'vanderborght2005_exp3' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zBasinParamInfo.txt b/utils/laugh_tests/vanderborght2005/settings/summa_zBasinParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1926fd71fbc6ce90cd4180f652ae414885e4b611 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_zBasinParamInfo.txt @@ -0,0 +1,35 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! DEFINE BASIN MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a1), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! *********************************************************************************************************************** +! +! ******************************************************************** +! define format string for parameter descriptions +! ******************************************************************** +'(a25,1x,a1,1x,3(f12.4,1x,a1,1x))' ! format string for parameter descriptions (must be in single quotes) +! ******************************************************************** +! baseflow +! ******************************************************************** +basin__aquiferHydCond | 0.0100 | 0.0001 | 10.0000 +basin__aquiferScaleFactor | 3.5000 | 0.1000 | 100.0000 +basin__aquiferBaseflowExp | 5.0000 | 1.0000 | 10.0000 +! ******************************************************************** +! within-grid routing +! ******************************************************************** +routingGammaShape | 2.5000 | 2.0000 | 3.0000 +routingGammaScale | 20000.0000 | 1.0000 | 5000000.0000 +! ******************************************************************** diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zDecisions_vanderborght2005.txt b/utils/laugh_tests/vanderborght2005/settings/summa_zDecisions_vanderborght2005.txt new file mode 100644 index 0000000000000000000000000000000000000000..6d50dc7f44b4b52a93dc23ff7a0e971910cb467e --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_zDecisions_vanderborght2005.txt @@ -0,0 +1,170 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE MODEL DECISIONS +! *********************************************************************************************************************** +! This file defines the modeling decisions used. +! NOTES: +! (1) lines starting with ! are treated as comment lines -- there is no limit on the number of comment lines +! (2) the name of the decision is followed by the character string defining the decision +! (3) the simulation start/end times must be within single quotes +! *********************************************************************************************************************** +! *********************************************************************************************************************** +soilCatTbl ROSETTA ! (03) soil-category dateset +vegeParTbl USGS ! (04) vegetation category dataset +soilStress NoahType ! (05) choice of function for the soil moisture control on stomatal resistance +stomResist BallBerry ! (06) choice of function for stomatal resistance +! *********************************************************************************************************************** +num_method itertive ! (07) choice of numerical method +fDerivMeth analytic ! (08) method used to calculate flux derivatives +LAI_method monTable ! (09) method used to determine LAI and SAI +f_Richards mixdform ! (10) form of Richard's equation +groundwatr noXplict ! (11) choice of groundwater parameterization +hc_profile constant ! (12) choice of hydraulic conductivity profile +bcUpprTdyn zeroFlux ! (13) type of upper boundary condition for thermodynamics +bcLowrTdyn zeroFlux ! (14) type of lower boundary condition for thermodynamics +bcUpprSoiH liq_flux ! (15) type of upper boundary condition for soil hydrology +bcLowrSoiH drainage ! (16) type of lower boundary condition for soil hydrology +veg_traits CM_QJRMS1988 ! (17) choice of parameterization for vegetation roughness length and displacement height +canopyEmis difTrans ! (18) choice of parameterization for canopy emissivity +snowIncept lightSnow ! (19) choice of parameterization for snow interception +windPrfile logBelowCanopy ! (20) choice of wind profile through the canopy +astability louisinv ! (21) choice of stability function +canopySrad CLM_2stream ! (22) choice of canopy shortwave radiation method +alb_method varDecay ! (23) choice of albedo representation +compaction anderson ! (24) choice of compaction routine +snowLayers CLM_2010 ! (25) choice of method to combine and sub-divide snow layers +thCondSnow jrdn1991 ! (26) choice of thermal conductivity representation for snow +thCondSoil mixConstit ! (27) choice of thermal conductivity representation for soil +spatial_gw localColumn ! (28) choice of method for the spatial representation of groundwater +subRouting timeDlay ! (29) choice of method for sub-grid routing +! *********************************************************************************************** +! ***** description of the options available -- nothing below this point is read **************** +! *********************************************************************************************** +! ----------------------------------------------------------------------------------------------- +! (01) simulation start time +! (02) simulation end time +! ----------------------------------------------------------------------------------------------- +! (03) soil-category dateset +! STAS ! STATSGO dataset +! STAS-RUC ! ?? +! ROSETTA ! merged Rosetta table with STAS-RUC +! ----------------------------------------------------------------------------------------------- +! (04) vegetation category dataset +! USGS ! USGS 24/27 category dataset +! MODIFIED_IGBP_MODIS_NOAH ! MODIS 20-category dataset +! ----------------------------------------------------------------------------------------------- +! (05) choice of function for the soil moisture control on stomatal resistance +! NoahType ! thresholded linear function of volumetric liquid water content +! CLM_Type ! thresholded linear function of matric head +! SiB_Type ! exponential of the log of matric head +! ----------------------------------------------------------------------------------------------- +! (06) choice of function for stomatal resistance +! BallBerry ! Ball-Berry +! Jarvis ! Jarvis +! ----------------------------------------------------------------------------------------------- +! (07) choice of numerical method +! itertive ! iterative +! non_iter ! non-iterative +! itersurf ! iterate only on the surface energy balance +! ----------------------------------------------------------------------------------------------- +! (08) method used to calculate flux derivatives +! numericl ! numerical derivatives +! analytic ! analytical derivatives +! ----------------------------------------------------------------------------------------------- +! (09) method used to determine LAI and SAI +! monTable ! LAI/SAI taken directly from a monthly table for different vegetation classes +! specified ! LAI/SAI computed from green vegetation fraction and winterSAI and summerLAI parameters +! ----------------------------------------------------------------------------------------------- +! (10) form of Richards' equation +! moisture ! moisture-based form of Richards' equation +! mixdform ! mixed form of Richards' equation +! ----------------------------------------------------------------------------------------------- +! (11) choice of groundwater parameterization +! qTopmodl ! topmodel parameterization +! bigBuckt ! a big bucket (lumped aquifer model) +! noXplict ! no explicit groundwater parameterization +! ----------------------------------------------------------------------------------------------- +! (12) choice of hydraulic conductivity profile +! constant ! constant hydraulic conductivity with depth +! pow_prof ! power-law profile +! ----------------------------------------------------------------------------------------------- +! (13) choice of upper boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! nrg_flux ! energy flux +! ----------------------------------------------------------------------------------------------- +! (14) choice of lower boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (15) choice of upper boundary conditions for soil hydrology +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! liq_flux ! liquid water flux +! ----------------------------------------------------------------------------------------------- +! (16) choice of lower boundary conditions for soil hydrology +! drainage ! free draining +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! bottmPsi ! function of matric head in the lower-most layer +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (17) choice of parameterization for vegetation roughness length and displacement height +! Raupach_BLM1994 ! Raupach (BLM 1994) "Simplified expressions..." +! CM_QJRMS1998 ! Choudhury and Monteith (QJRMS 1998) "A four layer model for the heat budget..." +! vegTypeTable ! constant parameters dependent on the vegetation type +! ----------------------------------------------------------------------------------------------- +! (18) choice of parameterization for canopy emissivity +! simplExp ! simple exponential function +! difTrans ! parameterized as a function of diffuse transmissivity +! ----------------------------------------------------------------------------------------------- +! (19) choice of parameterization for snow interception +! stickySnow ! maximum interception capacity an increasing function of temerature +! lightSnow ! maximum interception capacity an inverse function of new snow density +! ----------------------------------------------------------------------------------------------- +! (20) choice of wind profile +! exponential ! exponential wind profile extends to the surface +! logBelowCanopy ! logarithmic profile below the vegetation canopy +! ----------------------------------------------------------------------------------------------- +! (21) choice of stability function +! standard ! standard MO similarity, a la Anderson (1979) +! louisinv ! Louis (1979) inverse power function +! mahrtexp ! Mahrt (1987) exponential function +! ----------------------------------------------------------------------------------------------- +! (22) choice of canopy shortwave radiation method +! noah_mp ! full Noah-MP implementation (including albedo) +! CLM_2stream ! CLM 2-stream model (see CLM documentation) +! UEB_2stream ! UEB 2-stream model (Mahat and Tarboton, WRR 2011) +! NL_scatter ! Simplified method Nijssen and Lettenmaier (JGR 1999) +! BeersLaw ! Beer's Law (as implemented in VIC) +! ----------------------------------------------------------------------------------------------- +! (23) choice of albedo representation +! conDecay ! constant decay rate (e.g., VIC, CLASS) +! varDecay ! variable decay rate (e.g., BATS approach, with destructive metamorphism + soot content) +! ----------------------------------------------------------------------------------------------- +! (24) choice of compaction routine +! consettl ! constant settlement rate +! anderson ! semi-empirical method of Anderson (1976) +! ----------------------------------------------------------------------------------------------- +! (25) choice of method to combine and sub-divide snow layers +! CLM_2010 ! CLM option: combination/sub-dividion rules depend on layer index +! jrdn1991 ! SNTHERM option: same combination/sub-dividion rules applied to all layers +! ----------------------------------------------------------------------------------------------- +! (26) choice of thermal conductivity representation for snow +! tyen1965 ! Yen (1965) +! melr1977 ! Mellor (1977) +! jrdn1991 ! Jordan (1991) +! smnv2000 ! Smirnova et al. (2000) +! ----------------------------------------------------------------------------------------------- +! (27) choice of thermal conductivity representation for soil +! funcSoilWet ! function of soil wetness +! mixConstit ! mixture of constituents +! hanssonVZJ ! test case for the mizoguchi lab experiment, Hansson et al. VZJ 2004 +! ----------------------------------------------------------------------------------------------- +! (28) choice of method for the spatial representation of groundwater +! localColumn ! separate groundwater representation in each local soil column +! singleBasin ! single groundwater store over the entire basin +! ----------------------------------------------------------------------------------------------- +! (29) choice of method for sub-grid routing +! timeDlay ! time-delay histogram +! qInstant ! instantaneous routing +! *********************************************************************************************** +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp1.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp2.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp3.txt diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zForcingFileList.txt b/utils/laugh_tests/vanderborght2005/settings/summa_zForcingFileList.txt new file mode 100644 index 0000000000000000000000000000000000000000..449994a2c271f68eab1f4430eb769ec08e16e1f2 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_zForcingFileList.txt @@ -0,0 +1,8 @@ +! **************************************************************************************************** +! List of forcing data files used +! +! This file includes one "word" per line: +! (1) The name of a forcing file +! --> filename must be in single quotes +! **************************************************************************************************** + 'vanderborght2005_forcing.nc' \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zForcingInfo_vanderborght2005.txt b/utils/laugh_tests/vanderborght2005/settings/summa_zForcingInfo_vanderborght2005.txt new file mode 100644 index 0000000000000000000000000000000000000000..6163dd00baaa63551343468719b645529ad92479 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_zForcingInfo_vanderborght2005.txt @@ -0,0 +1,29 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE FORCING FILE +! *********************************************************************************************************************** +! This file defines the name of the forcing data file, the number of columns in the file, the column index for each data +! variable, the start index of the simulation period, the length of the simulation period, +! and the length of the data time step +! *********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! *********************************************************************************************************************** +'(a15,a1,1x,a)' +filenmData | celia1990_forcing.txt ! name of the forcing data file (must be in single quotes) +ncols | 13 ! number of columns in the forcing file +iyyy | 1 ! year +im | 2 ! month +id | 3 ! day +ih | 4 ! hour +imin | 5 ! minute +pptrate | 7 ! precipitation rate (kg m-2 s-1) +SWRadAtm | 8 ! downwelling shortwave radiaiton (W m-2) +LWRadAtm | 9 ! downwelling longwave radiation (W m-2) +airtemp | 10 ! air temperature (K) +windspd | 11 ! windspeed (m/s) +airpres | 12 ! pressure (Pa) +spechum | 13 ! specific humidity (g/g) +data_step | 1800 ! length of time step (seconds) diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zInitialCond_vanderborght2005.nc b/utils/laugh_tests/vanderborght2005/settings/summa_zInitialCond_vanderborght2005.nc new file mode 100644 index 0000000000000000000000000000000000000000..c7f98a1926eb620c1e93e39efc21ee1f1177903f Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/settings/summa_zInitialCond_vanderborght2005.nc differ diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zLocalAttributes.nc b/utils/laugh_tests/vanderborght2005/settings/summa_zLocalAttributes.nc new file mode 100644 index 0000000000000000000000000000000000000000..f9f04385edc2e453fa0a7df385ac1a1fe9c991d1 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/settings/summa_zLocalAttributes.nc differ diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zLocalParamInfo.txt b/utils/laugh_tests/vanderborght2005/settings/summa_zLocalParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..5f716d75d7b89700b973fcb3d121513883ab4d92 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/settings/summa_zLocalParamInfo.txt @@ -0,0 +1,226 @@ +! ======================================================================================================================= +! ======================================================================================================================= +! ===== DEFINITION OF MODEL PARAMETERS ================================================================================== +! ======================================================================================================================= +! ======================================================================================================================= +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! ======================================================================================================================= +! DEFINE SITE MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! ======================================================================================================================= +! +! ==================================================================== +! define format string for parameter descriptions +! ==================================================================== +'(a25,1x,3(a1,1x,f12.4,1x))' ! format string (must be in single quotes) +! ==================================================================== +! boundary conditions +! ==================================================================== +upperBoundHead | -0.7500 | -100.0000 | -0.0100 +lowerBoundHead | -10.0000 | -100.0000 | -0.0100 +upperBoundTheta | 0.2004 | 0.1020 | 0.3680 +lowerBoundTheta | 0.1100 | 0.1020 | 0.3680 +upperBoundTemp | 272.1600 | 270.1600 | 280.1600 +lowerBoundTemp | 274.1600 | 270.1600 | 280.1600 +! ==================================================================== +! precipitation partitioning +! ==================================================================== +tempCritRain | 273.1600 | 272.1600 | 274.1600 +tempRangeTimestep | 2.0000 | 0.5000 | 5.0000 +frozenPrecipMultip | 1.0000 | 0.5000 | 1.5000 +! ==================================================================== +! snow properties +! ==================================================================== +snowfrz_scale | 50.0000 | 10.0000 | 1000.0000 +fixedThermalCond_snow | 0.3500 | 0.1000 | 1.0000 +! ==================================================================== +! snow albedo +! ==================================================================== +albedoMax | 0.8400 | 0.7000 | 0.9500 +albedoMinWinter | 0.5500 | 0.6000 | 1.0000 +albedoMinSpring | 0.5500 | 0.3000 | 1.0000 +albedoMaxVisible | 0.9500 | 0.7000 | 0.9500 +albedoMinVisible | 0.7500 | 0.5000 | 0.7500 +albedoMaxNearIR | 0.6500 | 0.5000 | 0.7500 +albedoMinNearIR | 0.3000 | 0.1500 | 0.4500 +albedoDecayRate | 1.0d+6 | 0.1d+6 | 5.0d+6 +albedoSootLoad | 0.3000 | 0.1000 | 0.5000 +albedoRefresh | 1.0000 | 1.0000 | 10.0000 +! ==================================================================== +! radiation transfer within snow +! ==================================================================== +radExt_snow | 20.0000 | 20.0000 | 20.0000 +directScale | 0.0900 | 0.0000 | 0.5000 +Frad_direct | 0.7000 | 0.0000 | 1.0000 +Frad_vis | 0.5000 | 0.0000 | 1.0000 +! ==================================================================== +! new snow density +! ==================================================================== +newSnowDenMin | 100.0000 | 50.0000 | 100.0000 +newSnowDenMult | 100.0000 | 25.0000 | 75.0000 +newSnowDenScal | 5.0000 | 1.0000 | 5.0000 +constSnowDen | 100.0000 | 50.0000 | 250.0000 +newSnowDenAdd | 109.0000 | 80.0000 | 120.0000 +newSnowDenMultTemp | 6.0000 | 1.0000 | 12.0000 +newSnowDenMultWind | 26.0000 | 16.0000 | 36.0000 +newSnowDenMultAnd | 1.0000 | 1.0000 | 3.0000 +newSnowDenBase | 0.0000 | 0.0000 | 0.0000 +! ==================================================================== +! snow compaction +! ==================================================================== +densScalGrowth | 0.0460 | 0.0230 | 0.0920 +tempScalGrowth | 0.0400 | 0.0200 | 0.0600 +grainGrowthRate | 2.7d-6 | 1.0d-6 | 5.0d-6 +densScalOvrbdn | 0.0230 | 0.0115 | 0.0460 +tempScalOvrbdn | 0.0800 | 0.6000 | 1.0000 +baseViscosity | 9.0d+5 | 5.0d+5 | 1.5d+6 +! ==================================================================== +! water flow through snow +! ==================================================================== +Fcapil | 0.0600 | 0.0100 | 0.1000 +k_snow | 0.0150 | 0.0050 | 0.0500 +mw_exp | 3.0000 | 1.0000 | 5.0000 +! ==================================================================== +! turbulent heat fluxes +! ==================================================================== +z0Snow | 0.0010 | 0.0010 | 10.0000 +z0Soil | 0.0100 | 0.0010 | 10.0000 +z0Canopy | 0.1000 | 0.0010 | 10.0000 +zpdFraction | 0.6500 | 0.5000 | 0.8500 +critRichNumber | 0.2000 | 0.1000 | 1.0000 +Louis79_bparam | 9.4000 | 9.2000 | 9.6000 +Louis79_cStar | 5.3000 | 5.1000 | 5.5000 +Mahrt87_eScale | 1.0000 | 0.5000 | 2.0000 +leafExchangeCoeff | 0.0100 | 0.0010 | 0.1000 +windReductionParam | 0.2800 | 0.0000 | 1.0000 +! ==================================================================== +! stomatal conductance +! ==================================================================== +Kc25 | 296.0770 | 296.0770 | 296.0770 +Ko25 | 0.2961 | 0.2961 | 0.2961 +Kc_qFac | 2.1000 | 2.1000 | 2.1000 +Ko_qFac | 1.2000 | 1.2000 | 1.2000 +kc_Ha | 79430.0000 | 79430.0000 | 79430.0000 +ko_Ha | 36380.0000 | 36380.0000 | 36380.0000 +vcmax25_canopyTop | 40.0000 | 20.0000 | 100.0000 +vcmax_qFac | 2.4000 | 2.4000 | 2.4000 +vcmax_Ha | 65330.0000 | 65330.0000 | 65330.0000 +vcmax_Hd | 220000.0000 | 149250.0000 | 149250.0000 +vcmax_Sv | 710.0000 | 485.0000 | 485.0000 +vcmax_Kn | 0.6000 | 0.0000 | 1.2000 +jmax25_scale | 2.0000 | 2.0000 | 2.0000 +jmax_Ha | 43540.0000 | 43540.0000 | 43540.0000 +jmax_Hd | 152040.0000 | 152040.0000 | 152040.0000 +jmax_Sv | 495.0000 | 495.0000 | 495.0000 +fractionJ | 0.1500 | 0.1500 | 0.1500 +quantamYield | 0.0500 | 0.0500 | 0.0500 +vpScaleFactor | 1500.0000 | 1500.0000 | 1500.0000 +cond2photo_slope | 9.0000 | 1.0000 | 10.0000 +minStomatalConductance | 2000.0000 | 2000.0000 | 2000.0000 +! ==================================================================== +! vegetation properties +! ==================================================================== +winterSAI | 1.0000 | 0.0100 | 3.0000 +summerLAI | 3.0000 | 0.0100 | 10.0000 +rootScaleFactor1 | 2.0000 | 1.0000 | 10.0000 +rootScaleFactor2 | 5.0000 | 1.0000 | 10.0000 +rootingDepth | 0.5000 | 0.0100 | 10.0000 +rootDistExp | 1.0000 | 0.0100 | 1.0000 +plantWiltPsi | -150.0000 | -500.0000 | 0.0000 +soilStressParam | 5.8000 | 4.3600 | 6.3700 +critSoilWilting | 0.0750 | 0.0000 | 1.0000 +critSoilTranspire | 0.1750 | 0.0000 | 1.0000 +critAquiferTranspire | 0.2000 | 0.1000 | 10.0000 +minStomatalResistance | 50.0000 | 10.0000 | 200.0000 +leafDimension | 0.0400 | 0.0100 | 0.1000 +heightCanopyTop | 20.0000 | 0.0500 | 100.0000 +heightCanopyBottom | 2.0000 | 0.0000 | 5.0000 +specificHeatVeg | 874.0000 | 500.0000 | 1500.0000 +maxMassVegetation | 25.0000 | 1.0000 | 50.0000 +throughfallScaleSnow | 0.5000 | 0.1000 | 0.9000 +throughfallScaleRain | 0.5000 | 0.1000 | 0.9000 +refInterceptCapSnow | 6.6000 | 1.0000 | 10.0000 +refInterceptCapRain | 1.0000 | 0.0100 | 1.0000 +snowUnloadingCoeff | 0.0000 | 0.0000 | 1.5d-6 +canopyDrainageCoeff | 0.0050 | 0.0010 | 0.0100 +ratioDrip2Unloading | 0.4000 | 0.0000 | 1.0000 +canopyWettingFactor | 0.7000 | 0.0000 | 1.0000 +canopyWettingExp | 1.0000 | 0.0000 | 1.0000 +! ==================================================================== +! soil properties +! ==================================================================== +soil_dens_intr | 2700.0000 | 500.0000 | 4000.0000 +thCond_soil | 5.5000 | 2.9000 | 8.4000 +frac_sand | 0.1600 | 0.0000 | 1.0000 +frac_silt | 0.2800 | 0.0000 | 1.0000 +frac_clay | 0.5600 | 0.0000 | 1.0000 +fieldCapacity | 0.2000 | 0.0000 | 1.0000 +wettingFrontSuction | 0.3000 | 0.1000 | 1.5000 +theta_mp | 0.4010 | 0.3000 | 0.6000 +theta_sat | 0.5500 | 0.3000 | 0.6000 +theta_res | 0.1390 | 0.0010 | 0.1000 +vGn_alpha | -0.8400 | -1.0000 | -0.0100 +vGn_n | 1.3000 | 1.0000 | 3.0000 +mpExp | 5.0000 | 1.0000 | 10.0000 +k_soil | 7.5d-06 | 1.d-07 | 100.d-07 +k_macropore | 1.0d-03 | 1.d-07 | 100.d-07 +kAnisotropic | 1.0000 | 0.0001 | 10.0000 +zScale_TOPMODEL | 2.5000 | 0.1000 | 100.0000 +compactedDepth | 1.0000 | 0.0000 | 1.0000 +aquiferScaleFactor | 0.3500 | 0.1000 | 100.0000 +aquiferBaseflowExp | 2.0000 | 1.0000 | 10.0000 +aquiferBaseflowRate | 2.0000 | 1.0000 | 10.0000 +qSurfScale | 50.0000 | 1.0000 | 100.0000 +specificYield | 0.2000 | 0.1000 | 0.3000 +specificStorage | 1.d-09 | 1.d-05 | 1.d-07 +f_impede | 2.0000 | 1.0000 | 10.0000 +soilIceScale | 0.1300 | 0.0001 | 1.0000 +soilIceCV | 0.4500 | 0.1000 | 5.0000 +! ==================================================================== +! algorithmic control parameters +! ==================================================================== +minwind | 0.1000 | 0.0010 | 1.0000 +minstep | 1.0000 | 1.0000 | 1800.0000 +maxstep | 3600.0000 | 60.0000 | 1800.0000 +wimplicit | 0.0000 | 0.0000 | 1.0000 +maxiter | 100.0000 | 1.0000 | 100.0000 +relConvTol_liquid | 1.0d-3 | 1.0d-5 | 1.0d-1 +absConvTol_liquid | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_matric | 1.0d-6 | 1.0d-5 | 1.0d-1 +absConvTol_matric | 1.0d-6 | 1.0d-8 | 1.0d-3 +relConvTol_energy | 1.0d-2 | 1.0d-5 | 1.0d-1 +absConvTol_energy | 1.0d-0 | 1.0d-2 | 1.0d+1 +relConvTol_aquifr | 1.0d-0 | 1.0d-2 | 1.0d+1 +absConvTol_aquifr | 1.0d-5 | 1.0d-5 | 1.0d-1 +zmin | 0.0100 | 0.0050 | 0.1000 +zmax | 0.0500 | 0.0100 | 0.5000 +! --- +zminLayer1 | 0.0075 | 0.0075 | 0.0075 +zminLayer2 | 0.0100 | 0.0100 | 0.0100 +zminLayer3 | 0.0500 | 0.0500 | 0.0500 +zminLayer4 | 0.1000 | 0.1000 | 0.1000 +zminLayer5 | 0.2500 | 0.2500 | 0.2500 +! --- +zmaxLayer1_lower | 0.0500 | 0.0500 | 0.0500 +zmaxLayer2_lower | 0.2000 | 0.2000 | 0.2000 +zmaxLayer3_lower | 0.5000 | 0.5000 | 0.5000 +zmaxLayer4_lower | 1.0000 | 1.0000 | 1.0000 +! --- +zmaxLayer1_upper | 0.0300 | 0.0300 | 0.0300 +zmaxLayer2_upper | 0.1500 | 0.1500 | 0.1500 +zmaxLayer3_upper | 0.3000 | 0.3000 | 0.3000 +zmaxLayer4_upper | 0.7500 | 0.7500 | 0.7500 +! ==================================================================== +minTempUnloading | 270.16 | 260.16 | 273.16 +minWindUnloading | 0.0000 | 0.0000 | 10.000 +rateTempUnloading | 1.87d+5 | 1.0d+5 | 3.0d+5 +rateWindUnloading | 1.56d+5 | 1.0d+5 | 3.0d+5 +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp1.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp2.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/vanderborght2005/summa_fileManager_vanderborght2005_exp3.txt \ No newline at end of file diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp1.nc b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp1.nc new file mode 100644 index 0000000000000000000000000000000000000000..03884900e57967574005d2c8ad9f3654f6d28a22 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp1.nc differ diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp2.nc b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp2.nc new file mode 100644 index 0000000000000000000000000000000000000000..24168048fb4fc80caa1fbfc17f61367b87da1d2d Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp2.nc differ diff --git a/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp3.nc b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp3.nc new file mode 100644 index 0000000000000000000000000000000000000000..a7961568d210b5c7e983dde3dd5049c41ee5fd72 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/settings/summa_zParamTrial_vanderborght2005_exp3.nc differ diff --git a/utils/laugh_tests/vanderborght2005/verification_data/runinfo.txt b/utils/laugh_tests/vanderborght2005/verification_data/runinfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..10e395043691fd103d4ac68239f4c0768d68f00f --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/verification_data/runinfo.txt @@ -0,0 +1 @@ + Run start time on system: ccyy=2022 - mm=08 - dd=16 - hh=19 - mi=29 - ss=48.969 diff --git a/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp1_G1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp1_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..12092bcbc3c3c44661bfaee121ab38d412ac58ba Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp1_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp2_G1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp2_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..bf0d8df63e5154522394c43bd4c8b22317f82ca2 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp2_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp3_G1-1_timestep.nc b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp3_G1-1_timestep.nc new file mode 100644 index 0000000000000000000000000000000000000000..13cf977cc83ad4ddde41d01206abd8ee0f310842 Binary files /dev/null and b/utils/laugh_tests/vanderborght2005/verification_data/vanderborght2005_exp3_G1-1_timestep.nc differ diff --git a/utils/laugh_tests/vanderborght2005/verify_vanderborght.py b/utils/laugh_tests/vanderborght2005/verify_vanderborght.py new file mode 100644 index 0000000000000000000000000000000000000000..b9d1104d9a473ccfc1f15322366f609f42b6d104 --- /dev/null +++ b/utils/laugh_tests/vanderborght2005/verify_vanderborght.py @@ -0,0 +1,127 @@ +from os import listdir +from os.path import isfile, join +from pathlib import Path +import xarray as xr +import numpy as np + + +def verify(verified_data_path, data_to_compare_path, output_variables, numHRU): + try: + verified_dataset = xr.open_dataset(verified_data_path) + to_compare_dataset = xr.open_dataset(data_to_compare_path) + except FileNotFoundError: + print("Check the variables \'verified_data_path\' and \'data_to_compare_path\'. They may not point to the correct output files or the output filenames may have changed.") + exit() + + # Get the HRUs from the dataset into a list + for iHRU in range(0, numHRU): + verified_hru = verified_dataset.isel(hru=iHRU).copy() + hru_to_compare = to_compare_dataset.isel(hru=iHRU).copy() + + for var in output_variables: + try: + if len(verified_hru[var].values) != len(hru_to_compare[var].values): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_hru[var].values)) + print(" hru_to_compare = ", len(hru_to_compare[var].values)) + + verified_data = [] + to_verify_data = [] + if (verified_hru[var].values.ndim > 1): + # 2D output case + for list in verified_hru[var].values: + for data in list: + verified_data.append(data) + + for list in hru_to_compare[var].values: + for data in list: + to_verify_data.append(data) + + else: + # 1D output case + for data in verified_hru[var].values: + verified_data.append(data) + + for data in hru_to_compare[var].values: + to_verify_data.append(data) + + + # check length + if len(verified_data) != len(to_verify_data): + print("ERROR: output variable", var, "does not contain the same amount of data") + print(" verified_hru = ", len(verified_data)) + print(" hru_to_compare = ", len(to_verify_data)) + + # check values + for elem in range(0, len(verified_data)): + if verified_data[elem] != to_verify_data[elem]: + print("variable -",var, "has different values at", elem) + print(" verified_hru = ", verified_data[elem]) + print(" hru_to_compare = ", to_verify_data[elem]) + break + + except TypeError: + print("variable - ", var, "Cannot be compared with len") + print(" verified_hru = ",verified_hru[var].values) + print(" hru_to_compare = ", hru_to_compare[var].values) + + +numHRU = 1 + +nSnow = "nSnow" +nSoil = "nSoil" +pptrate = "pptrate" +airtemp = "airtemp" +scalarRainPlusMelt = "scalarRainPlusMelt" +scalarSWE = "scalarSWE" +scalarThroughfallSnow = "scalarThroughfallSnow" +scalarThroughfallRain = "scalarThroughfallRain" +scalarSnowSublimation = "scalarSnowSublimation" +scalarInfiltration = "scalarInfiltration" +scalarExfiltration = "scalarExfiltration" +scalarSurfaceRunoff = "scalarSurfaceRunoff" +scalarSurfaceTemp = "scalarSurfaceTemp" +scalarSenHeatTotal = "scalarSenHeatTotal" +scalarLatHeatTotal = "scalarLatHeatTotal" +mLayerHeight = "mLayerHeight" +iLayerHeight = "iLayerHeight" +iLayerLiqFluxSoil = "iLayerLiqFluxSoil" +mLayerTemp = "mLayerTemp" +mLayerDepth = "mLayerDepth" +mLayerLiqFluxSoil = "mLayerLiqFluxSoil" +mLayerVolFracIce = "mLayerVolFracIce" +mLayerVolFracLiq = "mLayerVolFracLiq" +mLayerVolFracWat = "mLayerVolFracWat" +mLayerMatricHead = "mLayerMatricHead" +basin__TotalArea = "basin__TotalArea" +basin__SurfaceRunoff = "basin__SurfaceRunoff" +basin__ColumnOutflow = "basin__ColumnOutflow" +basin__AquiferStorage = "basin__AquiferStorage" +basin__AquiferRecharge = "basin__AquiferRecharge" +basin__AquiferBaseflow = "basin__AquiferBaseflow" +basin__AquiferTranspire = "basin__AquiferTranspire" +averageInstantRunoff = "averageInstantRunoff" +averageRoutedRunoff = "averageRoutedRunoff" +fieldCapacity = "fieldCapacity" +scalarLAI = "scalarLAI" +scalarSAI = "scalarSAI" + +output_variables = [nSnow,nSoil,pptrate,airtemp,scalarRainPlusMelt,scalarSWE,scalarThroughfallSnow, \ + scalarThroughfallRain,scalarSnowSublimation,scalarInfiltration,scalarExfiltration,scalarSurfaceRunoff, \ + scalarSurfaceTemp,scalarSenHeatTotal,scalarLatHeatTotal,mLayerHeight,iLayerHeight,iLayerLiqFluxSoil, \ + mLayerTemp,mLayerDepth,mLayerLiqFluxSoil,mLayerVolFracIce,mLayerVolFracLiq,mLayerVolFracWat, \ + mLayerMatricHead,basin__TotalArea,basin__SurfaceRunoff,basin__ColumnOutflow,basin__AquiferStorage, \ + basin__AquiferRecharge,basin__AquiferBaseflow,basin__AquiferTranspire,averageInstantRunoff, \ + averageRoutedRunoff,fieldCapacity,scalarLAI,scalarSAI] + +verified_data_path = Path("./verification_data/vanderborght2005_exp1_G1-1_timestep.nc") +data_to_compare_path = Path("./output/vanderborght2005_exp1GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +verified_data_path = Path("./verification_data/vanderborght2005_exp2_G1-1_timestep.nc") +data_to_compare_path = Path("./output/vanderborght2005_exp2GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) + +verified_data_path = Path("./verification_data/vanderborght2005_exp3_G1-1_timestep.nc") +data_to_compare_path = Path("./output/vanderborght2005_exp3GRU1-1_timestep.nc") +verify(verified_data_path, data_to_compare_path, output_variables, numHRU) \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/config/Summa_Actors_Settings.json b/utils/laugh_tests/wigmosta1999/config/Summa_Actors_Settings.json index cf3703231c75b9a338b56ba7dbd8155165fa98e3..85d67e14de7697397209c43e31815cf2312ce5a5 100644 --- a/utils/laugh_tests/wigmosta1999/config/Summa_Actors_Settings.json +++ b/utils/laugh_tests/wigmosta1999/config/Summa_Actors_Settings.json @@ -1,32 +1,32 @@ { - "DistributedSettings": { - "distributed-mode": true, - "host": "localhost", - "port": 4444 - }, - - "SimulationSettings": { - "total_hru_count": 100000, - "num_hru_per_batch": 500 - }, - - "SummaActor": { - "OuputStructureSize": 250, - "maxGRUPerJob": 250 - }, - - "FileAccessActor": { - "num_vectors_in_output_manager": 1 - }, + "DistributedSettings": { + "distributed-mode": false, + "host": "localhost", + "port": 4444 + }, - "JobActor": { - "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", - "outputCSV": false, - "csvPath": "/scratch/kck540/csv/" - }, - - "HRUActor": { - "printOutput": true, - "outputFrequency": 500 - } -} + "SimulationSettings": { + "total_hru_count": 100000, + "num_hru_per_batch": 500 + }, + + "SummaActor": { + "OuputStructureSize": 250, + "maxGRUPerJob": 250 + }, + + "FileAccessActor": { + "num_vectors_in_output_manager": 1 + }, + + "JobActor": { + "FileManagerPath": "/gladwell/kck540/SummaActorsSettings/fileManager.txt", + "outputCSV": false, + "csvPath": "/scratch/kck540/csv/" + }, + + "HRUActor": { + "printOutput": true, + "outputFrequency": 1 + } +} \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/run_test.sh b/utils/laugh_tests/wigmosta1999/run_test.sh deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/utils/laugh_tests/wigmosta1999/run_test_summa.sh b/utils/laugh_tests/wigmosta1999/run_test_summa.sh new file mode 100755 index 0000000000000000000000000000000000000000..afe4927125202154f9eed9373db8c8264c2dc8a8 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/run_test_summa.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerClay.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerLoam.txt +/SUMMA/bin/summa.exe -g 1 1 -m /Summa-Actors/utils/laugh_tests/miller1998/settings/summa_fileManager_verify_millerSand.txt \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/run_test_summa_actors.sh b/utils/laugh_tests/wigmosta1999/run_test_summa_actors.sh new file mode 100755 index 0000000000000000000000000000000000000000..864e583b8aa024e5655c409fd77279f2a00b6088 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/run_test_summa_actors.sh @@ -0,0 +1,5 @@ +#! /bin/bash + +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/clay +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/loam +/Summa-Actors/bin/summaMain -g 1 -n 1 -c /Summa-Actors/utils/laugh_tests/miller1998/config/sand \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinModelVarMeta.txt b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinModelVarMeta.txt new file mode 100644 index 0000000000000000000000000000000000000000..255507da5241e5c5df051dd37c3a6220e383712b --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinModelVarMeta.txt @@ -0,0 +1,44 @@ +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ***** DEFINITION OF BASIN VARIABLES ************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! ************************************************************************************************************************************* +! columns are: +! 1: variable name +! 2: variable description +! 3: variable units +! 4: variable type (scalar, separate parameter for each model layer, separate parameter at the interface of layers) +! 5: write variable to output file? (T/F) +! ************************************************************************************************************************************* +! define format string for parameter descriptions +! ************************************************************************************************************************************* +'(a35,(1x,a1,1x),a65,(1x,a1,1x),a15,(1x,a1,1x),a7,(1x,a1,1x),l1)' ! format string (must be in single quotes) +! ************************************************************************************************************************************* +! define variables +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! scalar variables (runoff and aquifer fluxes) +! ************************************************************************************************************************************* +basin__totalArea | total basin area | m2 | scalarv | T +basin__SurfaceRunoff | surface runoff | m s-1 | scalarv | T +basin__ColumnOutflow | outflow from all "outlet" HRUs (those with no downstream HRU) | m3 s-1 | scalarv | T +basin__AquiferStorage | aquifer storage | m | scalarv | F +basin__AquiferRecharge | recharge to the aquifer | m s-1 | scalarv | F +basin__AquiferBaseflow | baseflow from the aquifer | m s-1 | scalarv | F +basin__AquiferTranspire | transpiration loss from the aquifer | m s-1 | scalarv | F +! ************************************************************************************************************************************* +! runoff +! ************************************************************************************************************************************* +routingRunoffFuture | runoff in future time steps | m s-1 | routing | F +routingFractionFuture | fraction of runoff in future time steps | - | routing | F +averageInstantRunoff | instantaneous runoff | m s-1 | scalarv | T +averageRoutedRunoff | routed runoff | m s-1 | scalarv | T +! ************************************************************************************************************************************* diff --git a/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinParamMeta.txt b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinParamMeta.txt new file mode 100644 index 0000000000000000000000000000000000000000..94257c0db81f8ba57e9c80ce68baedc4e9914ba6 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zBasinParamMeta.txt @@ -0,0 +1,32 @@ +! ********************************************************************************************************************** +! ********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************* +! ********************************************************************************************************************** +! ********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: parameter description +! 3: parameter units +! 4: parameter type (scalar, separate parameter for each model layer, separate parameter at the interface of layers) +! 5: write parameter to output file? (T/F) +! ********************************************************************************************************************** +! define format string for parameter descriptions +! ********************************************************************************************************************** +'(a25,(1x,a1,1x),a65,(1x,a1,1x),a10,(1x,a1,1x),a7,(1x,a1,1x),L1)' ! format string (must be in single quotes) +! ********************************************************************************************************************** +! baseflow +! ********************************************************************************************************************** +basin__aquiferHydCond | hydraulic conductivity of the aquifer | m s-1 | scalarv | T +basin__aquiferScaleFactor | scaling factor for aquifer storage in the big bucket | m | scalarv | T +basin__aquiferBaseflowExp | baseflow exponent for the big bucket | - | scalarv | T +! ********************************************************************************************************************** +! sub-grid routing +! ********************************************************************************************************************** +routingGammaShape | shape parameter in Gamma distribution used for sub-grid routing | - | scalarv | T +routingGammaScale | scale parameter in Gamma distribution used for sub-grid routing | s | scalarv | T +! ********************************************************************************************************************** diff --git a/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelIndexMeta.txt b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelIndexMeta.txt new file mode 100644 index 0000000000000000000000000000000000000000..b88778a4ed3b8d9f35afcce2cc97f2225f142718 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelIndexMeta.txt @@ -0,0 +1,35 @@ +! ************************************************************************************************************ +! ************************************************************************************************************ +! ***** DEFINITION OF MODEL INDEX VARIABLES ****************************************************************** +! ************************************************************************************************************ +! ************************************************************************************************************ +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! ************************************************************************************************************ +! columns are: +! 1: variable name +! 2: variable description +! 3: variable units +! 4: variable type (scalar, separate parameter for each model layer, separate parameter at the interface of layers) +! 5: write parameter to output file? (T/F) +! ************************************************************************************************************ +! define format string for variable descriptions +! ************************************************************************************************************ +'(a20,(1x,a1,1x),a60,(1x,a1,1x),a10,(1x,a1,1x),a7,(1x,a1,1x),L1)' ! format string (must be in single quotes) +! ************************************************************************************************************ +! define variables +! ************************************************************************************************************ +nSnow | number of snow layers | - | scalarv | T +nSoil | number of soil layers | - | scalarv | T +nLayers | total number of layers | - | scalarv | T +midSnowStartIndex | start index of the midSnow vector for a given timestep | - | scalarv | T +midSoilStartIndex | start index of the midSoil vector for a given timestep | - | scalarv | T +midTotoStartIndex | start index of the midToto vector for a given timestep | - | scalarv | T +ifcSnowStartIndex | start index of the ifcSnow vector for a given timestep | - | scalarv | T +ifcSoilStartIndex | start index of the ifcSoil vector for a given timestep | - | scalarv | T +ifcTotoStartIndex | start index of the ifcToto vector for a given timestep | - | scalarv | T +layerType | index defining type of layer (soil or snow) | - | midToto | F +! ************************************************************************************************************ diff --git a/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelVarMeta.txt b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelVarMeta.txt new file mode 100644 index 0000000000000000000000000000000000000000..a6d8661c6dc7570d2ff1165c373772f87f6f542c --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalModelVarMeta.txt @@ -0,0 +1,285 @@ +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! ***** DEFINITION OF MODEL VARIABLES ************************************************************************************************* +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "|" must be present (format a1), as these are used to check the integrety of the file +! ************************************************************************************************************************************* +! columns are: +! 1: variable name +! 2: variable description +! 3: variable units +! 4: variable type (scalar, separate parameter for each model layer, separate parameter at the interface of layers) +! 5: write variable to output file? (T/F) +! ************************************************************************************************************************************* +! define format string for parameter descriptions +! ************************************************************************************************************************************* +'(a35,(1x,a1,1x),a65,(1x,a1,1x),a15,(1x,a1,1x),a7,(1x,a1,1x),l1)' ! format string (must be in single quotes) +! ************************************************************************************************************************************* +! define variables +! ************************************************************************************************************************************* +! ************************************************************************************************************************************* +! timestep-average fluxes for a few key variables +! ************************************************************************************************************************************* +totalSoilCompress | change in total soil storage due to compression of soil matrix | kg m-2 | scalarv | F +averageThroughfallSnow | snow that reaches the ground without ever touching the canopy | kg m-2 s-1 | scalarv | F +averageThroughfallRain | rain that reaches the ground without ever touching the canopy | kg m-2 s-1 | scalarv | F +averageCanopySnowUnloading | unloading of snow from the vegetion canopy | kg m-2 s-1 | scalarv | F +averageCanopyLiqDrainage | drainage of liquid water from the vegetation canopy | kg m-2 s-1 | scalarv | F +averageCanopyMeltFreeze | melt/freeze of water stored in the canopy | kg m-2 s-1 | scalarv | F +averageCanopyTranspiration | canopy transpiration | kg m-2 s-1 | scalarv | F +averageCanopyEvaporation | canopy evaporation/condensation | kg m-2 s-1 | scalarv | F +averageCanopySublimation | canopy sublimation/frost | kg m-2 s-1 | scalarv | F +averageSnowSublimation | snow sublimation/frost (below canopy or non-vegetated) | kg m-2 s-1 | scalarv | F +averageGroundEvaporation | ground evaporation/condensation (below canopy or non-vegetated) | kg m-2 s-1 | scalarv | T +averageRainPlusMelt | rain plus melt input to soil before calculating surface runoff | m s-1 | scalarv | F +averageSurfaceRunoff | surface runoff | m s-1 | scalarv | F +averageSoilInflux | influx of water at the top of the soil profile | m s-1 | scalarv | F +averageSoilBaseflow | total baseflow from throughout the soil profile | m s-1 | scalarv | T +averageSoilDrainage | drainage from the bottom of the soil profile | m s-1 | scalarv | F +averageAquiferRecharge | recharge to the aquifer | m s-1 | scalarv | F +averageAquiferBaseflow | baseflow from the aquifer | m s-1 | scalarv | F +averageAquiferTranspire | transpiration from the aquifer | m s-1 | scalarv | F +averageColumnOutflow | outflow from each layer in the soil profile | m3 s-1 | midSoil | T +! ************************************************************************************************************************************* +! scalar variables (forcing) +! ************************************************************************************************************************************* +scalarCosZenith | cosine of the solar zenith angle | - | scalarv | F +scalarFractionDirect | fraction of direct radiation (0-1) | - | scalarv | F +spectralIncomingDirect | incoming direct solar radiation in each wave band | W m-2 | wLength | F +spectralIncomingDiffuse | incoming diffuse solar radiation in each wave band | W m-2 | wLength | F +scalarVPair | vapor pressure of the air above the vegetation canopy | Pa | scalarv | F +scalarTwetbulb | wet bulb temperature | K | scalarv | F +scalarRainfall | computed rainfall rate | kg m-2 s-1 | scalarv | F +scalarSnowfall | computed snowfall rate | kg m-2 s-1 | scalarv | F +scalarSnowfallTemp | temperature of fresh snow | K | scalarv | F +scalarNewSnowDensity | density of fresh snow (should snow be falling in this time step) | kg m-3 | scalarv | F +scalarO2air | atmospheric o2 concentration | Pa | scalarv | F +scalarCO2air | atmospheric co2 concentration | Pa | scalarv | F +! ************************************************************************************************************************************* +! scalar variables (state variables) +! ************************************************************************************************************************************* +scalarCanopyIce | mass of ice on the vegetation canopy | kg m-2 | scalarv | F +scalarCanopyLiq | mass of liquid water on the vegetation canopy | kg m-2 | scalarv | F +scalarCanairTemp | temperature of the canopy air space | K | scalarv | F +scalarCanopyTemp | temperature of the vegetation canopy | K | scalarv | F +scalarSnowAge | non-dimensional snow age | - | scalarv | F +scalarSnowAlbedo | snow albedo for the entire spectral band | - | scalarv | F +spectralSnowAlbedoDirect | direct snow albedo for individual spectral bands | - | wLength | F +spectralSnowAlbedoDiffuse | diffuse snow albedo for individual spectral bands | - | wLength | F +scalarSnowDepth | total snow depth | m | scalarv | F +scalarSWE | snow water equivalent | kg m-2 | scalarv | F +scalarSfcMeltPond | ponded water caused by melt of the "snow without a layer" | kg m-2 | scalarv | F +scalarAquiferStorage | water required to bring aquifer to the bottom of the soil profile | m | scalarv | F +scalarSurfaceTemp | surface temperature (just a copy of the upper-layer temperature) | K | scalarv | F +! ************************************************************************************************************************************* +! NOAH-MP vegetation variables (general) +! ************************************************************************************************************************************* +scalarGreenVegFraction | green vegetation fraction (used to compute LAI) | - | scalarv | F +scalarBulkVolHeatCapVeg | bulk volumetric heat capacity of vegetation | J m-3 K-1 | scalarv | F +scalarRootZoneTemp | average temperature of the root zone | K | scalarv | F +scalarLAI | one-sided leaf area index | m2 m-2 | scalarv | F +scalarSAI | one-sided stem area index | m2 m-2 | scalarv | F +scalarExposedLAI | exposed leaf area index (after burial by snow) | m2 m-2 | scalarv | F +scalarExposedSAI | exposed stem area index (after burial by snow) | m2 m-2 | scalarv | F +scalarCanopyIceMax | maximum interception storage capacity for ice | kg m-2 | scalarv | F +scalarCanopyLiqMax | maximum interception storage capacity for liquid water | kg m-2 | scalarv | F +scalarGrowingSeasonIndex | growing season index (0=off, 1=on) | - | scalarv | F +scalarVP_CanopyAir | vapor pressure of the canopy air space | Pa | scalarv | F +! ************************************************************************************************************************************* +! NOAH-MP vegetation variables (shortwave radiation) +! ************************************************************************************************************************************* +scalarCanopySunlitFraction | sunlit fraction of canopy | - | scalarv | F +scalarCanopySunlitLAI | sunlit leaf area | - | scalarv | F +scalarCanopyShadedLAI | shaded leaf area | - | scalarv | F +scalarCanopySunlitPAR | average absorbed par for sunlit leaves | W m-2 | scalarv | F +scalarCanopyShadedPAR | average absorbed par for shaded leaves | W m-2 | scalarv | F +spectralBelowCanopyDirect | downward direct flux below veg layer for each spectral band | W m-2 | wLength | F +spectralBelowCanopyDiffuse | downward diffuse flux below veg layer for each spectral band | W m-2 | wLength | F +scalarBelowCanopySolar | solar radiation transmitted below the canopy | W m-2 | scalarv | F +spectralAlbGndDirect | direct albedo of underlying surface for each spectral band | - | wLength | F +spectralAlbGndDiffuse | diffuse albedo of underlying surface for each spectral band | - | wLength | F +scalarGroundAlbedo | albedo of the ground surface | - | scalarv | F +scalarCanopyAbsorbedSolar | solar radiation absorbed by canopy | W m-2 | scalarv | F +scalarGroundAbsorbedSolar | solar radiation absorbed by ground | W m-2 | scalarv | F +! ************************************************************************************************************************************* +! NOAH-MP vegetation variables (longwave radiation) +! ************************************************************************************************************************************* +scalarCanopyEmissivity | effective canopy emissivity | - | scalarv | F +scalarLWRadCanopy | longwave radiation emitted from the canopy | W m-2 | scalarv | F +scalarLWRadGround | longwave radiation emitted at the ground surface | W m-2 | scalarv | F +scalarLWRadUbound2Canopy | downward atmospheric longwave radiation absorbed by the canopy | W m-2 | scalarv | F +scalarLWRadUbound2Ground | downward atmospheric longwave radiation absorbed by the ground | W m-2 | scalarv | F +scalarLWRadUbound2Ubound | atmospheric radiation refl by ground + lost thru upper boundary | W m-2 | scalarv | F +scalarLWRadCanopy2Ubound | longwave radiation emitted from canopy lost thru upper boundary | W m-2 | scalarv | F +scalarLWRadCanopy2Ground | longwave radiation emitted from canopy absorbed by the ground | W m-2 | scalarv | F +scalarLWRadCanopy2Canopy | canopy longwave reflected from ground and absorbed by the canopy | W m-2 | scalarv | F +scalarLWRadGround2Ubound | longwave radiation emitted from ground lost thru upper boundary | W m-2 | scalarv | F +scalarLWRadGround2Canopy | longwave radiation emitted from ground and absorbed by the canopy | W m-2 | scalarv | F +scalarLWNetCanopy | net longwave radiation at the canopy | W m-2 | scalarv | F +scalarLWNetGround | net longwave radiation at the ground surface | W m-2 | scalarv | F +scalarLWNetUbound | net longwave radiation at the upper atmospheric boundary | W m-2 | scalarv | F +! ************************************************************************************************************************************* +! NOAH-MP vegetation variables (turbulent heat transfer) +! ************************************************************************************************************************************* +scalarLatHeatSubVapCanopy | latent heat of sublimation/vaporization used for veg canopy | J kg-1 | scalarv | F +scalarLatHeatSubVapGround | latent heat of sublimation/vaporization used for ground surface | J kg-1 | scalarv | F +scalarSatVP_CanopyTemp | saturation vapor pressure at the temperature of vegetation canopy | Pa | scalarv | F +scalarSatVP_GroundTemp | saturation vapor pressure at the temperature of the ground | Pa | scalarv | F +scalarZ0Canopy | roughness length of the canopy | m | scalarv | F +scalarWindReductionFactor | canopy wind reduction factor | - | scalarv | F +scalarZeroPlaneDisplacement | zero plane displacement | m | scalarv | F +scalarRiBulkCanopy | bulk Richardson number for the canopy | - | scalarv | F +scalarRiBulkGround | bulk Richardson number for the ground surface | - | scalarv | F +scalarCanopyStabilityCorrection | stability correction for the canopy | - | scalarv | F +scalarGroundStabilityCorrection | stability correction for the ground surface | - | scalarv | F +scalarEddyDiffusCanopyTop | eddy diffusivity for heat at the top of the canopy | m2 s-1 | scalarv | F +scalarFrictionVelocity | friction velocity (canopy momentum sink) | m s-1 | scalarv | F +scalarWindspdCanopyTop | windspeed at the top of the canopy | m s-1 | scalarv | F +scalarWindspdCanopyBottom | windspeed at the height of the bottom of the canopy | m s-1 | scalarv | F +scalarGroundResistance | below canopy aerodynamic resistance | s m-1 | scalarv | F +scalarCanopyResistance | above canopy aerodynamic resistance | s m-1 | scalarv | F +scalarLeafResistance | mean leaf boundary layer resistance per unit leaf area | s m-1 | scalarv | F +scalarSoilResistance | soil surface resistance | s m-1 | scalarv | F +scalarSoilRelHumidity | relative humidity in the soil pores in the upper-most soil layer | - | scalarv | F +scalarSenHeatTotal | sensible heat from the canopy air space to the atmosphere | W m-2 | scalarv | F +scalarSenHeatCanopy | sensible heat from the canopy to the canopy air space | W m-2 | scalarv | F +scalarSenHeatGround | sensible heat from the ground (below canopy or non-vegetated) | W m-2 | scalarv | F +scalarLatHeatTotal | latent heat from the canopy air space to the atmosphere | W m-2 | scalarv | F +scalarLatHeatCanopyEvap | evaporation latent heat from the canopy to the canopy air space | W m-2 | scalarv | F +scalarLatHeatCanopyTrans | transpiration latent heat from the canopy to the canopy air space | W m-2 | scalarv | F +scalarLatHeatGround | latent heat from the ground (below canopy or non-vegetated) | W m-2 | scalarv | F +scalarCanopyAdvectiveHeatFlux | heat advected to the canopy with precipitation (snow + rain) | W m-2 | scalarv | F +scalarGroundAdvectiveHeatFlux | heat advected to the ground with throughfall + unloading/drainage | W m-2 | scalarv | F +scalarCanopyTranspiration | canopy transpiration | kg m-2 s-1 | scalarv | F +scalarCanopyEvaporation | canopy evaporation/condensation | kg m-2 s-1 | scalarv | F +scalarCanopySublimation | canopy sublimation/frost | kg m-2 s-1 | scalarv | F +scalarGroundEvaporation | ground evaporation/condensation (below canopy or non-vegetated) | kg m-2 s-1 | scalarv | F +scalarSnowSublimation | snow sublimation/frost (below canopy or non-vegetated) | kg m-2 s-1 | scalarv | F +! ************************************************************************************************************************************* +! NOAH-MP vegetation variables (transpiration) +! ************************************************************************************************************************************* +scalarTranspireLim | aggregate soil moisture and aquifer control on transpiration | - | scalarv | F +scalarTranspireLimAqfr | aquifer storage control on transpiration | - | scalarv | F +scalarFoliageNitrogenFactor | foliage nitrogen concentration (1=saturated) | - | scalarv | F +scalarStomResistSunlit | stomatal resistance for sunlit leaves | s m-1 | scalarv | F +scalarStomResistShaded | stomatal resistance for shaded leaves | s m-1 | scalarv | F +scalarPhotosynthesisSunlit | sunlit photosynthesis | umolco2 m-2 s-1 | scalarv | F +scalarPhotosynthesisShaded | shaded photosynthesis | umolco2 m-2 s-1 | scalarv | F +! ************************************************************************************************************************************* +! vegetation variables (canopy water) +! ************************************************************************************************************************************* +scalarCanopyWetFraction | fraction canopy that is wet | - | scalarv | F +scalarGroundSnowFraction | fraction ground that is covered with snow | - | scalarv | F +scalarThroughfallSnow | snow that reaches the ground without ever touching the canopy | kg m-2 s-1 | scalarv | F +scalarThroughfallRain | rain that reaches the ground without ever touching the canopy | kg m-2 s-1 | scalarv | F +scalarCanopySnowUnloading | unloading of snow from the vegetation canopy | kg m-2 s-1 | scalarv | F +scalarCanopyLiqDrainage | drainage of liquid water from the vegetation canopy | kg m-2 s-1 | scalarv | F +scalarCanopyMeltFreeze | melt/freeze of water stored in the canopy | kg m-2 s-1 | scalarv | F +! ************************************************************************************************************************************* +! scalar variables (soil and aquifer fluxes) +! ************************************************************************************************************************************* +scalarRainPlusMelt | rain plus melt, used as input to soil before surface runoff | m s-1 | scalarv | T +scalarInfilArea | fraction of unfrozen area where water can infiltrate | - | scalarv | T +scalarFrozenArea | fraction of area that is considered impermeable due to soil ice | - | scalarv | F +scalarInfiltration | infiltration of water into the soil profile | m s-1 | scalarv | T +scalarExfiltration | exfiltration of water from the top of the soil profile | m s-1 | scalarv | T +scalarSurfaceRunoff | surface runoff | m s-1 | scalarv | T +scalarInitAquiferRecharge | recharge to the aquifer at the start-of-step | m s-1 | scalarv | F +scalarAquiferRecharge | recharge to the aquifer at the end-of-step | m s-1 | scalarv | F +scalarInitAquiferTranspire | transpiration loss from the aquifer at the start-of-step | m s-1 | scalarv | F +scalarAquiferTranspire | transpiration loss from the aquifer at the end-of-step | m s-1 | scalarv | F +scalarInitAquiferBaseflow | baseflow from the aquifer at the start-of-step | m s-1 | scalarv | F +scalarAquiferBaseflow | baseflow from the aquifer at the end-of-step | m s-1 | scalarv | F +! ************************************************************************************************************************************* +! scalar variables (sub-step average fluxes for the soil zone) +! ************************************************************************************************************************************* +scalarSoilInflux | sub-step average: influx of water at the top of the soil profile | m s-1 | scalarv | F +scalarSoilCompress | change in total soil storage due to compression of soil matrix | kg m-2 | scalarv | F +scalarSoilBaseflow | sub-step average: total baseflow from the soil profile | m s-1 | scalarv | T +scalarSoilDrainage | sub-step average: drainage from the bottom of the soil profile | m s-1 | scalarv | F +scalarSoilTranspiration | sub-step average: total transpiration from the soil | m s-1 | scalarv | F +! ************************************************************************************************************************************* +! scalar variables (mass balance check) +! ************************************************************************************************************************************* +scalarSoilWatBalError | error in the total soil water balance | kg m-2 | scalarv | F +scalarAquiferBalError | error in the aquifer water balance | kg m-2 | scalarv | F +scalarTotalSoilLiq | total mass of liquid water in the soil | kg m-2 | scalarv | F +scalarTotalSoilIce | total mass of ice in the soil | kg m-2 | scalarv | F +! ************************************************************************************************************************************* +! variables at the mid-point of each layer -- domain geometry +! ************************************************************************************************************************************* +mLayerDepth | depth of each layer | m | midToto | T +mLayerHeight | height of the layer mid-point (top of soil = 0) | m | midToto | T +mLayerRootDensity | fraction of roots in each soil layer | - | midSoil | F +! ************************************************************************************************************************************* +! variables at the mid-point of each layer coupled energy and mass +! ************************************************************************************************************************************* +mLayerTemp | temperature of each layer | K | midToto | F +mLayerVolFracAir | volumetric fraction of air in each layer | - | midToto | F +mLayerVolFracIce | volumetric fraction of ice in each layer | - | midToto | F +mLayerVolFracLiq | volumetric fraction of liquid water in each layer | - | midToto | T +mLayerVolHtCapBulk | volumetric heat capacity in each layer | J m-3 K-1 | midToto | F +mLayerTcrit | critical soil temperature above which all water is unfrozen | K | midSoil | F +mLayerdTheta_dTk | derivative in volumetric liquid water content wrt temperature | K-1 | midToto | F +mLayerThermalC | thermal conductivity at the mid-point of each layer | W m-1 K-1 | midToto | F +mLayerRadCondFlux | temporal derivative in energy of radiative and conductive flux | J m-3 s-1 | midToto | F +mLayerMeltFreeze | ice content change from melt/freeze in each layer | kg m-3 | midToto | F +mLayerInfilFreeze | ice content change by freezing infiltrating flux | kg m-3 | midToto | F +mLayerSatHydCond | saturated hydraulic conductivity in each layer | m s-1 | midSoil | F +mLayerSatHydCondMP | saturated hydraulic conductivity of macropores in each layer | m s-1 | midSoil | F +mLayerMatricHead | matric head of water in the soil | m | midSoil | F +mLayerdTheta_dPsi | derivative in the soil water characteristic w.r.t. psi | m-1 | midSoil | F +mLayerdPsi_dTheta | derivative in the soil water characteristic w.r.t. theta | m | midSoil | F +mLayerThetaResid | residual volumetric water content in each snow layer | - | midSnow | F +mLayerPoreSpace | total pore space in each snow layer | - | midSnow | F +mLayerCompress | change in volumetric water content due to compression of soil | - | midSoil | F +mLayerTranspireLim | soil moist & veg limit on transpiration for each layer | - | midSoil | F +mLayerInitTranspire | transpiration loss from each soil layer at the start-of-step | m s-1 | midSoil | F +mLayerTranspire | transpiration loss from each soil layer | m s-1 | midSoil | F +mLayerInitQMacropore | liquid flux from micropores to macropores at the start-of-step | m s-1 | midSoil | F +mLayerQMacropore | liquid flux from micropores to macropores | m s-1 | midSoil | F +mLayerInitBaseflow | baseflow from each soil layer at the start of the time step | m s-1 | midSoil | F +mLayerBaseflow | baseflow from each soil layer | m s-1 | midSoil | F +mLayerColumnInflow | total inflow to each layer in a given soil column | m3 s-1 | midSoil | F +mLayerColumnOutflow | total outflow from each layer in a given soil column | m3 s-1 | midSoil | F +! ************************************************************************************************************************************* +! variables at the interface of each layer +! ************************************************************************************************************************************* +iLayerHeight | height of the layer interface (top of soil = 0) | m | ifcToto | T +iLayerThermalC | thermal conductivity at the interface of each layer | W m-1 K-1 | ifcToto | F +iLayerConductiveFlux | conductive energy flux at layer interfaces at end of time step | W m-2 | ifcToto | F +iLayerAdvectiveFlux | advective energy flux at layer interfaces at end of time step | W m-2 | ifcToto | F +iLayerInitNrgFlux | energy flux at layer interfaces at the start of the time step | W m-2 | ifcToto | F +iLayerNrgFlux | energy flux at layer interfaces at end of the time step | W m-2 | ifcToto | F +iLayerSatHydCond | saturated hydraulic conductivity in each layer interface | m s-1 | ifcSoil | F +iLayerInitLiqFluxSnow | liquid flux at snow layer interfaces at start of the time step | m s-1 | ifcSnow | F +iLayerInitLiqFluxSoil | liquid flux at soil layer interfaces at start of the time step | m s-1 | ifcSoil | F +iLayerInitFluxReversal | start of step liquid flux at soil layer interfaces from impedance | m s-1 | ifcSoil | F +iLayerLiqFluxSnow | liquid flux at snow layer interfaces at end of the time step | m s-1 | ifcSnow | F +iLayerLiqFluxSoil | liquid flux at soil layer interfaces at end of the time step | m s-1 | ifcSoil | F +iLayerFluxReversal | end of step liquid flux at soil layer interfaces from impedance | m s-1 | ifcSoil | F +! ************************************************************************************************************************************* +! time stepping +! ************************************************************************************************************************************* +dt_init | length of initial time step at start of next data interval | s | scalarv | F +! ************************************************************************************************************************************* +! "short-cut" variables +! ************************************************************************************************************************************* +scalarVGn_m | van Genuchten "m" parameter | - | scalarv | F +scalarKappa | constant in the freezing curve function | m K-1 | scalarv | F +scalarVolHtCap_air | volumetric heat capacity air | J m-3 K-1 | scalarv | F +scalarVolHtCap_ice | volumetric heat capacity ice | J m-3 K-1 | scalarv | F +scalarVolHtCap_soil | volumetric heat capacity dry soil | J m-3 K-1 | scalarv | F +scalarVolHtCap_water | volumetric heat capacity liquid wat | J m-3 K-1 | scalarv | F +scalarLambda_drysoil | thermal conductivity of dry soil | W m-1 | scalarv | F +scalarLambda_wetsoil | thermal conductivity of wet soil | W m-1 | scalarv | F +scalarVolLatHt_fus | volumetric latent heat of fusion | J m-3 | scalarv | F +scalarAquiferRootFrac | fraction of roots below the soil profile (in the aquifer) | - | scalarv | F +! ************************************************************************************************************************************* diff --git a/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalParamMeta.txt b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalParamMeta.txt new file mode 100644 index 0000000000000000000000000000000000000000..63709321bed33305dbc2efde6855bf744007edaf --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/meta/summa_zLocalParamMeta.txt @@ -0,0 +1,179 @@ +! ********************************************************************************************************************** +! ********************************************************************************************************************** +! ***** DEFINITION OF MODEL PARAMETERS ********************************************************************************* +! ********************************************************************************************************************** +! ********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: parameter description +! 3: parameter units +! 4: parameter type (scalar, separate parameter for each model layer, separate parameter at the interface of layers) +! 5: write parameter to output file? (T/F) +! ********************************************************************************************************************** +! define format string for parameter descriptions +! ********************************************************************************************************************** +'(a25,(1x,a1,1x),a65,(1x,a1,1x),a10,(1x,a1,1x),a7,(1x,a1,1x),L1)' ! format string (must be in single quotes) +! ********************************************************************************************************************** +! boundary conditions +! ********************************************************************************************************************** +upperBoundHead | matric head at the upper boundary | m | scalarv | T +lowerBoundHead | matric head at the lower boundary | m | scalarv | T +upperBoundTheta | volumetric liquid water content at the upper boundary | - | scalarv | T +lowerBoundTheta | volumetric liquid water content at the lower boundary | - | scalarv | T +upperBoundTemp | temperature of the upper boundary | K | scalarv | T +lowerBoundTemp | temperature of the lower boundary | K | scalarv | T +! ********************************************************************************************************************** +! precipitation partitioning +! ********************************************************************************************************************** +tempCritRain | critical temperature where precipitation is rain | K | scalarv | T +tempRangeTimestep | temperature range over the time step | K | scalarv | T +frozenPrecipMultip | frozen precipitation multiplier | - | scalarv | T +! ********************************************************************************************************************** +! freezing curve for snow +! ********************************************************************************************************************** +snowfrz_scale | scaling parameter for the freezing curve for snow | K-1 | scalarv | T +! ********************************************************************************************************************** +! snow albedo +! ********************************************************************************************************************** +albedoMax | maximum snow albedo (single spectral band) | - | scalarv | T +albedoMinWinter | minimum snow albedo during winter (single spectral band) | - | scalarv | T +albedoMinSpring | minimum snow albedo during spring (single spectral band) | - | scalarv | T +albedoMaxVisible | maximum snow albedo in the visible part of the spectrum | - | scalarv | T +albedoMinVisible | minimum snow albedo in the visible part of the spectrum | - | scalarv | T +albedoMaxNearIR | maximum snow albedo in the near infra-red part of the spectrum | - | scalarv | T +albedoMinNearIR | minimum snow albedo in the near infra-red part of the spectrum | - | scalarv | T +albedoDecayRate | albedo decay rate | s | scalarv | T +albedoSootLoad | soot load factor | - | scalarv | T +albedoRefresh | critical mass necessary for albedo refreshment | kg m-2 | scalarv | T +! ********************************************************************************************************************** +! radiation transfer +! ********************************************************************************************************************** +radExt_snow | extinction coefficient for radiation penetration into snowpack | m-1 | scalarv | T +directScale | scaling factor for fractional driect radiaion parameterization | - | scalarv | T +Frad_direct | fraction direct solar radiation | - | scalarv | T +Frad_vis | fraction radiation in visible part of spectrum | - | scalarv | T +! ********************************************************************************************************************** +! new snow density +! ********************************************************************************************************************** +newSnowDenMin | minimum new snow density | kg m-3 | scalarv | T +newSnowDenMult | multiplier for new snow density | kg m-3 | scalarv | T +newSnowDenScal | scaling factor for new snow density | K | scalarv | T +! ********************************************************************************************************************** +! snow compaction +! ********************************************************************************************************************** +densScalGrowth | density scaling factor for grain growth | kg-1 m3 | scalarv | T +tempScalGrowth | temperature scaling factor for grain growth | K-1 | scalarv | T +grainGrowthRate | rate of grain growth | s-1 | scalarv | T +densScalOvrbdn | density scaling factor for overburden pressure | kg-1 m3 | scalarv | T +tempScalOvrbdn | temperature scaling factor for overburden pressure | K-1 | scalarv | T +base_visc | viscosity coefficient at T=T_frz and snow density=0 | kg s m-2 | scalarv | T +! ********************************************************************************************************************** +! water flow through snow +! ********************************************************************************************************************** +Fcapil | capillary retention (fraction of total pore volume) | - | scalarv | T +k_snow | hydraulic conductivity of snow | m s-1 | scalarv | T +mw_exp | exponent for meltwater flow | - | scalarv | T +! ********************************************************************************************************************** +! turbulent heat fluxes +! ********************************************************************************************************************** +z0Snow | roughness length of snow | m | scalarv | T +z0Soil | roughness length of bare soil below the canopy | m | scalarv | T +z0Canopy | roughness length of the canopy | m | scalarv | T +zpdFraction | zero plane displacement / canopy height | - | scalarv | T +critRichNumber | critical value for the bulk Richardson number | - | scalarv | T +Louis79_bparam | parameter in Louis (1979) stability function | - | scalarv | T +Louis79_cStar | parameter in Louis (1979) stability function | - | scalarv | T +Mahrt87_eScale | exponential scaling factor in the Mahrt (1987) stability function | - | scalarv | T +leafExchangeCoeff | turbulent exchange coeff between canopy surface and canopy air | m s-(1/2) | scalarv | T +windReductionParam | canopy wind reduction parameter | - | scalarv | T +! ********************************************************************************************************************** +! vegetation properties +! ********************************************************************************************************************** +winterSAI | stem area index prior to the start of the growing season | m2 m-2 | scalarv | T +summerLAI | maximum leaf area index at the peak of the growing season | m2 m-2 | scalarv | T +rootingDepth | rooting depth | m | scalarv | T +rootDistExp | exponent for the vertical distribution of root density | - | scalarv | T +plantWiltPsi | matric head at wilting point | m | scalarv | T +soilStressParam | parameter in the exponential soil stress function | - | scalarv | T +critSoilWilting | critical vol. liq. water content when plants are wilting | - | scalarv | T +critSoilTranspire | critical vol. liq. water content when transpiration is limited | - | scalarv | T +critAquiferTranspire | critical aquifer storage value when transpiration is limited | m | scalarv | T +minStomatalResistance | minimum stomatal resistance | s m-1 | scalarv | T +leafDimension | characteristic leaf dimension | m | scalarv | T +heightCanopyTop | height of top of the vegetation canopy above ground surface | m | scalarv | T +heightCanopyBottom | height of bottom of the vegetation canopy above ground surface | m | scalarv | T +specificHeatVeg | specific heat of vegetation | J kg-1 K-1 | scalarv | T +maxMassVegetation | maximum mass of vegetation (full foliage) | kg m-2 | scalarv | T +throughfallScaleSnow | scaling factor for throughfall (snow) | - | scalarv | T +throughfallScaleRain | scaling factor for throughfall (rain) | - | scalarv | T +refInterceptCapSnow | reference canopy interception capacity per unit leaf area (snow) | kg m-2 | scalarv | T +refInterceptCapRain | canopy interception capacity per unit leaf area (rain) | kg m-2 | scalarv | T +snowUnloadingCoeff | time constant for unloading of snow from the forest canopy | s-1 | scalarv | T +canopyDrainageCoeff | time constant for drainage of liquid water from the forest canopy | s-1 | scalarv | T +ratioDrip2Unloading | ratio of canopy drip to unloading of snow from the forest canopy | - | scalarv | T +! ********************************************************************************************************************** +! soil properties +! ********************************************************************************************************************** +soil_dens_intr | intrinsic soil density | kg m-3 | scalarv | T +thCond_soil | thermal conductivity of soil (includes quartz and other minerals) | W m-1 K-1 | scalarv | T +frac_sand | fraction of sand | - | scalarv | T +frac_silt | fraction of silt | - | scalarv | T +frac_clay | fraction of clay | - | scalarv | T +fieldCapacity | soil field capacity (vol liq water content when baseflow begins) | - | scalarv | T +wettingFrontSuction | Green-Ampt wetting front suction | m | scalarv | T +theta_mp | volumetric liquid water content when macropore flow begins | - | scalarv | T +theta_sat | soil porosity | - | scalarv | T +theta_res | volumetric residual water content | - | scalarv | T +vGn_alpha | van Genuchten "alpha" parameter | m-1 | scalarv | T +vGn_n | van Genuchten "n" parameter | - | scalarv | T +mpExp | empirical exponent in macropore flow equation | - | scalarv | T +k_soil | saturated hydraulic conductivity | m s-1 | scalarv | T +k_macropore | saturated hydraulic conductivity for macropores | m s-1 | scalarv | T +kAnisotropic | anisotropy factor for lateral hydraulic conductivity | - | scalarv | T +zScale_TOPMODEL | TOPMODEL scaling factor used in lower boundary condition for soil | m | scalarv | T +compactedDepth | depth where k_soil reaches the compacted value given by CH78 | m | scalarv | T +aquiferScaleFactor | scaling factor for aquifer storage in the big bucket | m | scalarv | T +aquiferBaseflowExp | baseflow exponent | - | scalarv | T +qSurfScale | scaling factor in the surface runoff parameterization | - | scalarv | T +specificYield | specific yield | - | scalarv | T +specificStorage | specific storage coefficient | m-1 | scalarv | T +f_impede | ice impedence factor | - | scalarv | T +soilIceScale | scaling factor for depth of soil ice, used to get frozen fraction | m | scalarv | T +soilIceCV | CV of depth of soil ice, used to get frozen fraction | - | scalarv | T +! ********************************************************************************************************************** +! algorithmic control parameters +! ********************************************************************************************************************** +minwind | minimum wind speed | m s-1 | scalarv | F +minstep | minimum length of the time step | s | scalarv | F +maxstep | maximum length of the time step | s | scalarv | F +wimplicit | weight assigned to the start-of-step fluxes (alpha) | - | scalarv | T +maxiter | maximum number of iterations | - | scalarv | F +relConvTol_liquid | relative convergence tolerance for vol frac liq water | - | scalarv | F +absConvTol_liquid | absolute convergence tolerance for vol frac liq water | - | scalarv | F +relConvTol_matric | relative convergence tolerance for matric head | - | scalarv | F +absConvTol_matric | absolute convergence tolerance for matric head | m | scalarv | F +relConvTol_energy | relative convergence tolerance for energy | - | scalarv | F +absConvTol_energy | absolute convergence tolerance for energy | J m-3 | scalarv | F +relConvTol_aquifr | relative convergence tolerance for aquifer storage | - | scalarv | F +absConvTol_aquifr | absolute convergence tolerance for aquifer storage | m | scalarv | F +zmin | minimum layer depth | m | scalarv | F +zmax | maximum layer depth | m | scalarv | F +zminLayer1 | minimum layer depth for the 1st (top) layer | m | scalarv | F +zminLayer2 | minimum layer depth for the 2nd layer | m | scalarv | F +zminLayer3 | minimum layer depth for the 3rd layer | m | scalarv | F +zminLayer4 | minimum layer depth for the 4th layer | m | scalarv | F +zminLayer5 | minimum layer depth for the 5th (bottom) layer | m | scalarv | F +zmaxLayer1_lower | maximum layer depth for the 1st (top) layer when only 1 layer | m | scalarv | F +zmaxLayer2_lower | maximum layer depth for the 2nd layer when only 2 layers | m | scalarv | F +zmaxLayer3_lower | maximum layer depth for the 3rd layer when only 3 layers | m | scalarv | F +zmaxLayer4_lower | maximum layer depth for the 4th layer when only 4 layers | m | scalarv | F +zmaxLayer1_upper | maximum layer depth for the 1st (top) layer when > 1 layer | m | scalarv | F +zmaxLayer2_upper | maximum layer depth for the 2nd layer when > 2 layers | m | scalarv | F +zmaxLayer3_upper | maximum layer depth for the 3rd layer when > 3 layers | m | scalarv | F +zmaxLayer4_upper | maximum layer depth for the 4th layer when > 4 layers | m | scalarv | F +! ********************************************************************************************************************** diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp1.txt b/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp1.txt new file mode 100644 index 0000000000000000000000000000000000000000..17a108a7d25ac2c09f180de3e8fce5a4f4c606d1 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp1.txt @@ -0,0 +1,21 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 01:00' ! +simEndTime '2000-02-11 23:00' ! +tmZoneInfo 'localTime' ! +settingsPath '/code/summaTestCases/settings/' ! setting_path +forcingPath '/code/summaTestCases/testCases_data/inputData/syntheticData/wigmosta1999/' ! input_path +outputPath '/code/summaTestCases/output/syntheticTestCases/wigmosta1999/' ! output_path +decisionsFile 'syntheticTestCases/wigmosta1999/summa_zDecisions.txt' ! decision +outputControlFile 'meta/Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'syntheticTestCases/wigmosta1999/summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'syntheticTestCases/wigmosta1999/summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'syntheticTestCases/wigmosta1999/summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'syntheticTestCases/wigmosta1999/summa_zParamTrial-exp1.nc' ! para_trial +forcingListFile 'syntheticTestCases/wigmosta1999/summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'syntheticTestCases/wigmosta1999/summa_zInitialCond.nc' ! initial_cond +outFilePrefix 'syntheticHillslope-exp1' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp1.txt \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp2.txt b/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp2.txt new file mode 100644 index 0000000000000000000000000000000000000000..63600322b5418f4e55665e55075cec4ec6c5d23a --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_fileManager-exp2.txt @@ -0,0 +1,21 @@ +controlVersion 'SUMMA_FILE_MANAGER_V3.0.0' ! fman_ver +simStartTime '2000-01-01 01:00' ! +simEndTime '2000-02-11 23:00' ! +tmZoneInfo 'localTime' ! Time zone info +settingsPath '/home/stiff/summaTestCases_3.0/settings/' ! setting_path +forcingPath '/home/stiff/summaTestCases_3.0/testCases_data/inputData/syntheticData/wigmosta1999/' ! input_path +outputPath '/home/stiff/summaTestCases_3.0/output/syntheticTestCases/wigmosta1999/' ! output_path +decisionsFile 'syntheticTestCases/wigmosta1999/summa_zDecisions.txt' ! decision +outputControlFile 'meta/Model_Output.txt' ! OUTPUT_CONTROL +globalHruParamFile 'syntheticTestCases/wigmosta1999/summa_zLocalParamInfo.txt' ! local_par +globalGruParamFile 'syntheticTestCases/wigmosta1999/summa_zBasinParamInfo.txt' ! basin_par +attributeFile 'syntheticTestCases/wigmosta1999/summa_zLocalAttributes.nc' ! local_attr +trialParamFile 'syntheticTestCases/wigmosta1999/summa_zParamTrial-exp2.nc' ! para_trial +forcingListFile 'syntheticTestCases/wigmosta1999/summa_zForcingFileList.txt' ! forcing_list +initConditionFile 'syntheticTestCases/wigmosta1999/summa_zInitialCond.nc' ! initial_cond +outFilePrefix 'syntheticHillslope-exp2' ! output_prefix +vegTableFile 'VEGPARM.TBL' ! +soilTableFile 'SOILPARM.TBL' ! +generalTableFile 'GENPARM.TBL' ! +noahmpTableFile 'MPTABLE.TBL' ! +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp2.txt diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zBasinParamInfo.txt b/utils/laugh_tests/wigmosta1999/settings/summa_zBasinParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..1926fd71fbc6ce90cd4180f652ae414885e4b611 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_zBasinParamInfo.txt @@ -0,0 +1,35 @@ +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! ***** DEFINITION OF BASIN PARAMETERS ********************************************************************************** +! *********************************************************************************************************************** +! *********************************************************************************************************************** +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! *********************************************************************************************************************** +! DEFINE BASIN MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a1), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! *********************************************************************************************************************** +! +! ******************************************************************** +! define format string for parameter descriptions +! ******************************************************************** +'(a25,1x,a1,1x,3(f12.4,1x,a1,1x))' ! format string for parameter descriptions (must be in single quotes) +! ******************************************************************** +! baseflow +! ******************************************************************** +basin__aquiferHydCond | 0.0100 | 0.0001 | 10.0000 +basin__aquiferScaleFactor | 3.5000 | 0.1000 | 100.0000 +basin__aquiferBaseflowExp | 5.0000 | 1.0000 | 10.0000 +! ******************************************************************** +! within-grid routing +! ******************************************************************** +routingGammaShape | 2.5000 | 2.0000 | 3.0000 +routingGammaScale | 20000.0000 | 1.0000 | 5000000.0000 +! ******************************************************************** diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zDecisions.txt b/utils/laugh_tests/wigmosta1999/settings/summa_zDecisions.txt new file mode 100644 index 0000000000000000000000000000000000000000..3548441f737f8fe5c4036ae6092ea814099e63b8 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_zDecisions.txt @@ -0,0 +1,169 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE MODEL DECISIONS +! *********************************************************************************************************************** +! This file defines the modeling decisions used. +! NOTES: +! (1) lines starting with ! are treated as comment lines -- there is no limit on the number of comment lines +! (2) the name of the decision is followed by the character string defining the decision +! (3) the simulation start/end times must be within single quotes +! *********************************************************************************************************************** +! *********************************************************************************************************************** +soilCatTbl ROSETTA ! (03) soil-category dateset +vegeParTbl USGS ! (04) vegetation category dataset +soilStress NoahType ! (05) choice of function for the soil moisture control on stomatal resistance +stomResist BallBerry ! (06) choice of function for stomatal resistance +! *********************************************************************************************************************** +num_method itertive ! (07) choice of numerical method +fDerivMeth analytic ! (08) method used to calculate flux derivatives +LAI_method specified ! (09) method used to determine LAI and SAI +f_Richards mixdform ! (10) form of Richard's equation +groundwatr qTopmodl ! (11) choice of groundwater parameterization +hc_profile pow_prof ! (12) choice of hydraulic conductivity profile +bcUpprTdyn nrg_flux ! (13) type of upper boundary condition for thermodynamics +bcLowrTdyn zeroFlux ! (14) type of lower boundary condition for thermodynamics +bcUpprSoiH liq_flux ! (15) type of upper boundary condition for soil hydrology +bcLowrSoiH zeroFlux ! (16) type of lower boundary condition for soil hydrology +veg_traits CM_QJRMS1988 ! (17) choice of parameterization for vegetation roughness length and displacement height +canopyEmis simplExp ! (18) choice of parameterization for canopy emissivity +snowIncept lightSnow ! (19) choice of parameterization for snow interception +windPrfile logBelowCanopy ! (20) choice of wind profile through the canopy +astability louisinv ! (21) choice of stability function +canopySrad CLM_2stream ! (22) choice of canopy shortwave radiation method +alb_method varDecay ! (23) choice of albedo representation +compaction anderson ! (24) choice of compaction routine +snowLayers CLM_2010 ! (25) choice of method to combine and sub-divide snow layers +thCondSnow jrdn1991 ! (26) choice of thermal conductivity representation for snow +thCondSoil mixConstit ! (27) choice of thermal conductivity representation for soil +spatial_gw localColumn ! (28) choice of method for the spatial representation of groundwater +subRouting timeDlay ! (29) choice of method for sub-grid routing +! *********************************************************************************************** +! ***** description of the options available -- nothing below this point is read **************** +! *********************************************************************************************** +! ----------------------------------------------------------------------------------------------- +! (01) simulation start time +! (02) simulation end time +! ----------------------------------------------------------------------------------------------- +! (03) soil-category dateset +! STAS ! STATSGO dataset +! STAS-RUC ! ?? +! ROSETTA ! merged Rosetta table with STAS-RUC +! ----------------------------------------------------------------------------------------------- +! (04) vegetation category dataset +! USGS ! USGS 24/27 category dataset +! MODIFIED_IGBP_MODIS_NOAH ! MODIS 20-category dataset +! ----------------------------------------------------------------------------------------------- +! (05) choice of function for the soil moisture control on stomatal resistance +! NoahType ! thresholded linear function of volumetric liquid water content +! CLM_Type ! thresholded linear function of matric head +! SiB_Type ! exponential of the log of matric head +! ----------------------------------------------------------------------------------------------- +! (06) choice of function for stomatal resistance +! BallBerry ! Ball-Berry +! Jarvis ! Jarvis +! ----------------------------------------------------------------------------------------------- +! (07) choice of numerical method +! itertive ! iterative +! non_iter ! non-iterative +! itersurf ! iterate only on the surface energy balance +! ----------------------------------------------------------------------------------------------- +! (08) method used to calculate flux derivatives +! numericl ! numerical derivatives +! analytic ! analytical derivatives +! ----------------------------------------------------------------------------------------------- +! (09) method used to determine LAI and SAI +! monTable ! LAI/SAI taken directly from a monthly table for different vegetation classes +! specified ! LAI/SAI computed from green vegetation fraction and winterSAI and summerLAI parameters +! ----------------------------------------------------------------------------------------------- +! (10) form of Richards' equation +! moisture ! moisture-based form of Richards' equation +! mixdform ! mixed form of Richards' equation +! ----------------------------------------------------------------------------------------------- +! (11) choice of groundwater parameterization +! qTopmodl ! topmodel parameterization +! bigBuckt ! a big bucket (lumped aquifer model) +! noXplict ! no explicit groundwater parameterization +! ----------------------------------------------------------------------------------------------- +! (12) choice of hydraulic conductivity profile +! constant ! constant hydraulic conductivity with depth +! pow_prof ! power-law profile +! ----------------------------------------------------------------------------------------------- +! (13) choice of upper boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! nrg_flux ! energy flux +! ----------------------------------------------------------------------------------------------- +! (14) choice of lower boundary conditions for thermodynamics +! presTemp ! prescribed temperature +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (15) choice of upper boundary conditions for soil hydrology +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! liq_flux ! liquid water flux +! ----------------------------------------------------------------------------------------------- +! (16) choice of lower boundary conditions for soil hydrology +! drainage ! free draining +! presHead ! prescribed head (volumetric liquid water content for mixed form of Richards' eqn) +! bottmPsi ! function of matric head in the lower-most layer +! zeroFlux ! zero flux +! ----------------------------------------------------------------------------------------------- +! (17) choice of parameterization for vegetation roughness length and displacement height +! Raupach_BLM1994 ! Raupach (BLM 1994) "Simplified expressions..." +! CM_QJRMS1988 ! Choudhury and Monteith (QJRMS 1998) "A four layer model for the heat budget..." +! vegTypeTable ! constant parameters dependent on the vegetation type +! ----------------------------------------------------------------------------------------------- +! (18) choice of parameterization for canopy emissivity +! simplExp ! simple exponential function +! difTrans ! parameterized as a function of diffuse transmissivity +! ----------------------------------------------------------------------------------------------- +! (19) choice of parameterization for snow interception +! stickySnow ! maximum interception capacity an increasing function of temerature +! lightSnow ! maximum interception capacity an inverse function of new snow density +! ----------------------------------------------------------------------------------------------- +! (20) choice of wind profile +! exponential ! exponential wind profile extends to the surface +! logBelowCanopy ! logarithmic profile below the vegetation canopy +! ----------------------------------------------------------------------------------------------- +! (21) choice of stability function +! standard ! standard MO similarity, a la Anderson (1979) +! louisinv ! Louis (1979) inverse power function +! mahrtexp ! Mahrt (1987) exponential function +! ----------------------------------------------------------------------------------------------- +! (22) choice of canopy shortwave radiation method +! noah_mp ! full Noah-MP implementation (including albedo) +! CLM_2stream ! CLM 2-stream model (see CLM documentation) +! UEB_2stream ! UEB 2-stream model (Mahat and Tarboton, WRR 2011) +! NL_scatter ! Simplified method Nijssen and Lettenmaier (JGR 1999) +! BeersLaw ! Beer's Law (as implemented in VIC) +! ----------------------------------------------------------------------------------------------- +! (23) choice of albedo representation +! conDecay ! constant decay rate (e.g., VIC, CLASS) +! varDecay ! variable decay rate (e.g., BATS approach, with destructive metamorphism + soot content) +! ----------------------------------------------------------------------------------------------- +! (24) choice of compaction routine +! consettl ! constant settlement rate +! anderson ! semi-empirical method of Anderson (1976) +! ----------------------------------------------------------------------------------------------- +! (25) choice of method to combine and sub-divide snow layers +! CLM_2010 ! CLM option: combination/sub-dividion rules depend on layer index +! jrdn1991 ! SNTHERM option: same combination/sub-dividion rules applied to all layers +! ----------------------------------------------------------------------------------------------- +! (26) choice of thermal conductivity representation for snow +! tyen1965 ! Yen (1965) +! melr1977 ! Mellor (1977) +! jrdn1991 ! Jordan (1991) +! smnv2000 ! Smirnova et al. (2000) +! ----------------------------------------------------------------------------------------------- +! (27) choice of thermal conductivity representation for soil +! funcSoilWet ! function of soil wetness +! mixConstit ! mixture of constituents +! hanssonVZJ ! test case for the mizoguchi lab experiment, Hansson et al. VZJ 2004 +! ----------------------------------------------------------------------------------------------- +! (28) choice of method for the spatial representation of groundwater +! localColumn ! separate groundwater representation in each local soil column +! singleBasin ! single groundwater store over the entire basin +! ----------------------------------------------------------------------------------------------- +! (29) choice of method for sub-grid routing +! timeDlay ! time-delay histogram +! qInstant ! instantaneous routing +! *********************************************************************************************** +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp1.txt +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp2.txt diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zForcingFileList.txt b/utils/laugh_tests/wigmosta1999/settings/summa_zForcingFileList.txt new file mode 100644 index 0000000000000000000000000000000000000000..58407becc29c6c84acb4bd7d5b9a93e7e76a5b6c --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_zForcingFileList.txt @@ -0,0 +1,8 @@ +! **************************************************************************************************** +! List of forcing data files used +! +! This file includes one "word" per line: +! (1) The name of a forcing file +! --> filename must be in single quotes +! **************************************************************************************************** + 'wigmosta_forcing.nc' diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zForcingInfo.txt b/utils/laugh_tests/wigmosta1999/settings/summa_zForcingInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..f06e5c1a49fcf1f549e8e8123e9077782d07cc1d --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_zForcingInfo.txt @@ -0,0 +1,29 @@ +! *********************************************************************************************************************** +! DEFINITION OF THE FORCING FILE +! *********************************************************************************************************************** +! This file defines the name of the forcing data file, the number of columns in the file, the column index for each data +! variable, the start index of the simulation period, the length of the simulation period, +! and the length of the data time step +! *********************************************************************************************************************** +! NOTES: +! (1) lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines +! (2) the format definition defines the format of the file, which can be changed +! (3) the format definition must be the first non-comment line +! (4) the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! *********************************************************************************************************************** +'(a15,a1,1x,a)' +filenmData | wigmosta_forcing.txt ! name of the forcing data file (must be in single quotes) +ncols | 13 ! number of columns in the forcing file +iyyy | 1 ! year +im | 2 ! month +id | 3 ! day +ih | 4 ! hour +imin | 5 ! minute +pptrate | 7 ! precipitation rate (kg m-2 s-1) +SWRadAtm | 8 ! downwelling shortwave radiaiton (W m-2) +LWRadAtm | 9 ! downwelling longwave radiation (W m-2) +airtemp | 10 ! air temperature (K) +windspd | 11 ! windspeed (m/s) +airpres | 12 ! pressure (Pa) +spechum | 13 ! specific humidity (g/g) +data_step | 3600 ! length of time step (seconds) diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zInitialCond.nc b/utils/laugh_tests/wigmosta1999/settings/summa_zInitialCond.nc new file mode 100644 index 0000000000000000000000000000000000000000..b1a9223e7e039a637a7665700609828ac5f381a6 Binary files /dev/null and b/utils/laugh_tests/wigmosta1999/settings/summa_zInitialCond.nc differ diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zLocalAttributes.nc b/utils/laugh_tests/wigmosta1999/settings/summa_zLocalAttributes.nc new file mode 100644 index 0000000000000000000000000000000000000000..d8ead995c9d1b1a2f2286c24f5f4760ddb35c421 Binary files /dev/null and b/utils/laugh_tests/wigmosta1999/settings/summa_zLocalAttributes.nc differ diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zLocalParamInfo.txt b/utils/laugh_tests/wigmosta1999/settings/summa_zLocalParamInfo.txt new file mode 100644 index 0000000000000000000000000000000000000000..e501f363b443358a7f4cb06906cdd3e66e1da278 --- /dev/null +++ b/utils/laugh_tests/wigmosta1999/settings/summa_zLocalParamInfo.txt @@ -0,0 +1,226 @@ +! ======================================================================================================================= +! ======================================================================================================================= +! ===== DEFINITION OF MODEL PARAMETERS ================================================================================== +! ======================================================================================================================= +! ======================================================================================================================= +! Note: lines starting with "!" are treated as comment lines -- there is no limit on the number of comment lines. +! +! ======================================================================================================================= +! DEFINE SITE MODEL PARAMETERS +! ------------------------------------ +! the format definition defines the format of the file, which can be changed +! the delimiters "| " must be present (format a2), as these are used to check the integrety of the file +! columns are: +! 1: parameter name +! 2: default parameter value +! 3: lower parameter limit +! 4: upper parameter limit +! ======================================================================================================================= +! +! ==================================================================== +! define format string for parameter descriptions +! ==================================================================== +'(a25,1x,3(a1,1x,f12.4,1x))' ! format string (must be in single quotes) +! ==================================================================== +! boundary conditions +! ==================================================================== +upperBoundHead | -0.7500 | -100.0000 | -0.0100 +lowerBoundHead | 0.0000 | -100.0000 | -0.0100 +upperBoundTheta | 0.2004 | 0.1020 | 0.3680 +lowerBoundTheta | 0.1100 | 0.1020 | 0.3680 +upperBoundTemp | 272.1600 | 270.1600 | 280.1600 +lowerBoundTemp | 274.1600 | 270.1600 | 280.1600 +! ==================================================================== +! precipitation partitioning +! ==================================================================== +tempCritRain | 273.1600 | 272.1600 | 274.6600 +tempRangeTimestep | 2.0000 | 0.5000 | 5.0000 +frozenPrecipMultip | 1.0000 | 0.5000 | 1.5000 +! ==================================================================== +! snow properties +! ==================================================================== +snowfrz_scale | 50.0000 | 10.0000 | 1000.0000 +fixedThermalCond_snow | 0.3500 | 0.1000 | 1.0000 +! ==================================================================== +! snow albedo +! ==================================================================== +albedoMax | 0.8400 | 0.7000 | 0.9500 +albedoMinWinter | 0.5500 | 0.6000 | 1.0000 +albedoMinSpring | 0.5500 | 0.3000 | 1.0000 +albedoMaxVisible | 0.9500 | 0.7000 | 0.9500 +albedoMinVisible | 0.7500 | 0.5000 | 0.7500 +albedoMaxNearIR | 0.6500 | 0.5000 | 0.7500 +albedoMinNearIR | 0.3000 | 0.1500 | 0.4500 +albedoDecayRate | 1.0d+6 | 0.1d+6 | 5.0d+6 +albedoSootLoad | 0.3000 | 0.1000 | 0.5000 +albedoRefresh | 1.0000 | 1.0000 | 10.0000 +! ==================================================================== +! radiation transfer within snow +! ==================================================================== +radExt_snow | 20.0000 | 20.0000 | 20.0000 +directScale | 0.0900 | 0.0000 | 0.5000 +Frad_direct | 0.7000 | 0.0000 | 1.0000 +Frad_vis | 0.5000 | 0.0000 | 1.0000 +! ==================================================================== +! new snow density +! ==================================================================== +newSnowDenMin | 100.0000 | 50.0000 | 100.0000 +newSnowDenMult | 100.0000 | 25.0000 | 75.0000 +newSnowDenScal | 5.0000 | 1.0000 | 5.0000 +constSnowDen | 100.0000 | 50.0000 | 250.0000 +newSnowDenAdd | 109.0000 | 80.0000 | 120.0000 +newSnowDenMultTemp | 6.0000 | 1.0000 | 12.0000 +newSnowDenMultWind | 26.0000 | 16.0000 | 36.0000 +newSnowDenMultAnd | 1.0000 | 1.0000 | 3.0000 +newSnowDenBase | 0.0000 | 0.0000 | 0.0000 +! ==================================================================== +! snow compaction +! ==================================================================== +densScalGrowth | 0.0460 | 0.0230 | 0.0920 +tempScalGrowth | 0.0400 | 0.0200 | 0.0600 +grainGrowthRate | 2.7d-6 | 1.0d-6 | 5.0d-6 +densScalOvrbdn | 0.0230 | 0.0115 | 0.0460 +tempScalOvrbdn | 0.0800 | 0.6000 | 1.0000 +baseViscosity | 9.0d+5 | 5.0d+5 | 1.5d+6 +! ==================================================================== +! water flow through snow +! ==================================================================== +Fcapil | 0.0600 | 0.0100 | 0.1000 +k_snow | 0.0150 | 0.0050 | 0.0500 +mw_exp | 3.0000 | 1.0000 | 5.0000 +! ==================================================================== +! turbulent heat fluxes +! ==================================================================== +z0Snow | 0.0010 | 0.0010 | 10.0000 +z0Soil | 0.0100 | 0.0010 | 10.0000 +z0Canopy | 0.1000 | 0.0010 | 10.0000 +zpdFraction | 0.6500 | 0.5000 | 0.8500 +critRichNumber | 0.2000 | 0.1000 | 1.0000 +Louis79_bparam | 9.4000 | 9.2000 | 9.6000 +Louis79_cStar | 5.3000 | 5.1000 | 5.5000 +Mahrt87_eScale | 1.0000 | 0.5000 | 2.0000 +leafExchangeCoeff | 0.0100 | 0.0010 | 0.1000 +windReductionParam | 0.2800 | 0.0000 | 1.0000 +! ==================================================================== +! stomatal conductance +! ==================================================================== +Kc25 | 296.0770 | 296.0770 | 296.0770 +Ko25 | 0.2961 | 0.2961 | 0.2961 +Kc_qFac | 2.1000 | 2.1000 | 2.1000 +Ko_qFac | 1.2000 | 1.2000 | 1.2000 +kc_Ha | 79430.0000 | 79430.0000 | 79430.0000 +ko_Ha | 36380.0000 | 36380.0000 | 36380.0000 +vcmax25_canopyTop | 40.0000 | 20.0000 | 100.0000 +vcmax_qFac | 2.4000 | 2.4000 | 2.4000 +vcmax_Ha | 65330.0000 | 65330.0000 | 65330.0000 +vcmax_Hd | 220000.0000 | 149250.0000 | 149250.0000 +vcmax_Sv | 710.0000 | 485.0000 | 485.0000 +vcmax_Kn | 0.6000 | 0.0000 | 1.2000 +jmax25_scale | 2.0000 | 2.0000 | 2.0000 +jmax_Ha | 43540.0000 | 43540.0000 | 43540.0000 +jmax_Hd | 152040.0000 | 152040.0000 | 152040.0000 +jmax_Sv | 495.0000 | 495.0000 | 495.0000 +fractionJ | 0.1500 | 0.1500 | 0.1500 +quantamYield | 0.0500 | 0.0500 | 0.0500 +vpScaleFactor | 1500.0000 | 1500.0000 | 1500.0000 +cond2photo_slope | 9.0000 | 1.0000 | 10.0000 +minStomatalConductance | 2000.0000 | 2000.0000 | 2000.0000 +! ==================================================================== +! vegetation properties +! ==================================================================== +winterSAI | 0.0000 | 0.0100 | 3.0000 +summerLAI | 0.0000 | 0.0100 | 10.0000 +rootScaleFactor1 | 2.0000 | 1.0000 | 10.0000 +rootScaleFactor2 | 5.0000 | 1.0000 | 10.0000 +rootingDepth | 1.0000 | 0.0100 | 10.0000 +rootDistExp | 1.0000 | 0.0100 | 1.0000 +plantWiltPsi | -150.0000 | -500.0000 | 0.0000 +soilStressParam | 5.8000 | 4.3600 | 6.3700 +critSoilWilting | 0.3500 | 0.0000 | 1.0000 +critSoilTranspire | 0.1750 | 0.0000 | 1.0000 +critAquiferTranspire | 0.2000 | 0.1000 | 10.0000 +minStomatalResistance | 50.0000 | 10.0000 | 200.0000 +leafDimension | 0.0400 | 0.0100 | 0.1000 +heightCanopyTop | 0.0100 | 0.0500 | 100.0000 +heightCanopyBottom | 0.0010 | 0.0000 | 5.0000 +specificHeatVeg | 874.0000 | 500.0000 | 1500.0000 +maxMassVegetation | 25.0000 | 1.0000 | 50.0000 +throughfallScaleSnow | 0.5000 | 0.1000 | 0.9000 +throughfallScaleRain | 0.5000 | 0.1000 | 0.9000 +refInterceptCapSnow | 6.6000 | 1.0000 | 14.0000 +refInterceptCapRain | 1.0000 | 0.0100 | 1.0000 +snowUnloadingCoeff | 1.3d-6 | 0.0000 | 1.5d-6 +canopyDrainageCoeff | 0.0050 | 0.0010 | 0.0100 +ratioDrip2Unloading | 0.4000 | 0.0000 | 1.0000 +canopyWettingFactor | 0.7000 | 0.0000 | 1.0000 +canopyWettingExp | 1.0000 | 0.0000 | 1.0000 +! ==================================================================== +! soil properties +! ==================================================================== +soil_dens_intr | 2700.0000 | 500.0000 | 4000.0000 +thCond_soil | 5.5000 | 2.9000 | 8.4000 +frac_sand | 0.1600 | 0.0000 | 1.0000 +frac_silt | 0.2800 | 0.0000 | 1.0000 +frac_clay | 0.5600 | 0.0000 | 1.0000 +fieldCapacity | 0.1000 | 0.0000 | 1.0000 +wettingFrontSuction | 0.3000 | 0.1000 | 1.5000 +theta_mp | 0.3750 | 0.3000 | 0.6000 +theta_sat | 0.3500 | 0.3000 | 0.6000 +theta_res | 0.1000 | 0.0010 | 0.1000 +vGn_alpha | -0.5000 | -1.0000 | -0.0100 +vGn_n | 1.5000 | 1.0000 | 3.0000 +mpExp | 5.0000 | 1.0000 | 10.0000 +k_soil | 0.0008333333 | 1.d-07 | 100.d-07 +k_macropore | 0.0008333333 | 1.d-07 | 100.d-07 +kAnisotropic | 1.0000 | 0.0001 | 10.0000 +zScale_TOPMODEL | 3.0000 | 0.1000 | 100.0000 +compactedDepth | 0.0000 | 0.0000 | 1.0000 +aquiferScaleFactor | 0.3500 | 0.1000 | 100.0000 +aquiferBaseflowExp | 2.0000 | 1.0000 | 10.0000 +aquiferBaseflowRate | 2.0000 | 1.0000 | 10.0000 +qSurfScale | 100.0000 | 1.0000 | 100.0000 +specificYield | 0.2000 | 0.1000 | 0.3000 +specificStorage | 1.d-06 | 1.d-05 | 1.d-07 +f_impede | 0.0000 | 1.0000 | 10.0000 +soilIceScale | 0.1300 | 0.0001 | 1.0000 +soilIceCV | 0.4500 | 0.1000 | 5.0000 +! ==================================================================== +! algorithmic control parameters +! ==================================================================== +minwind | 0.1000 | 0.0010 | 1.0000 +minstep | 1.0000 | 1.0000 | 1800.0000 +maxstep | 3600.0000 | 60.0000 | 1800.0000 +wimplicit | 0.0000 | 0.0000 | 1.0000 +maxiter | 20.0000 | 1.0000 | 100.0000 +relConvTol_liquid | 1.0d-3 | 1.0d-5 | 1.0d-1 +absConvTol_liquid | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_matric | 1.0d-5 | 1.0d-5 | 1.0d-1 +absConvTol_matric | 1.0d-5 | 1.0d-8 | 1.0d-3 +relConvTol_energy | 1.0d-2 | 1.0d-5 | 1.0d-1 +absConvTol_energy | 1.0d-0 | 1.0d-2 | 1.0d+1 +relConvTol_aquifr | 1.0d-0 | 1.0d-2 | 1.0d+1 +absConvTol_aquifr | 1.0d-5 | 1.0d-5 | 1.0d-1 +zmin | 0.0100 | 0.0050 | 0.1000 +zmax | 0.0500 | 0.0100 | 0.5000 +! --- +zminLayer1 | 0.0075 | 0.0075 | 0.0075 +zminLayer2 | 0.0100 | 0.0100 | 0.0100 +zminLayer3 | 0.0500 | 0.0500 | 0.0500 +zminLayer4 | 0.1000 | 0.1000 | 0.1000 +zminLayer5 | 0.2500 | 0.2500 | 0.2500 +! --- +zmaxLayer1_lower | 0.0500 | 0.0500 | 0.0500 +zmaxLayer2_lower | 0.2000 | 0.2000 | 0.2000 +zmaxLayer3_lower | 0.5000 | 0.5000 | 0.5000 +zmaxLayer4_lower | 1.0000 | 1.0000 | 1.0000 +! --- +zmaxLayer1_upper | 0.0300 | 0.0300 | 0.0300 +zmaxLayer2_upper | 0.1500 | 0.1500 | 0.1500 +zmaxLayer3_upper | 0.3000 | 0.3000 | 0.3000 +zmaxLayer4_upper | 0.7500 | 0.7500 | 0.7500 +! ==================================================================== +minTempUnloading | 270.16 | 260.16 | 273.16 +minWindUnloading | 0.0000 | 0.0000 | 10.000 +rateTempUnloading | 1.87d+5 | 1.0d+5 | 3.0d+5 +rateWindUnloading | 1.56d+5 | 1.0d+5 | 3.0d+5 +! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp1.txt! history Mon Jul 20 16:08:17 2020: /pool0/home/andrbenn/data/summa_3/utils/convert_summa_config_v2_v3.py ./syntheticTestCases/wigmosta1999/summa_fileManager-exp2.txt \ No newline at end of file diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp1.nc b/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp1.nc new file mode 100644 index 0000000000000000000000000000000000000000..4dd01a1221d97fe1e39e9002dffe93bae7779fba Binary files /dev/null and b/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp1.nc differ diff --git a/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp2.nc b/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp2.nc new file mode 100644 index 0000000000000000000000000000000000000000..675ae086f8ce79897076a7e72dd813cb4cc2ccd5 Binary files /dev/null and b/utils/laugh_tests/wigmosta1999/settings/summa_zParamTrial-exp2.nc differ diff --git a/utils/netcdf/OutputVerification/compareOutput.py b/utils/netcdf/OutputVerification/compareOutput.py index 2bc563e48d1aa7871bab4dd4b34428f77b2d6a17..8f4d3adea1ec3c377890ebc37eb47f063e151846 100644 --- a/utils/netcdf/OutputVerification/compareOutput.py +++ b/utils/netcdf/OutputVerification/compareOutput.py @@ -3,7 +3,7 @@ from os.path import isfile, join from pathlib import Path import xarray as xr -numHRU = 25 +numHRU = 125 time = 'time' scalarSWE = 'scalarSWE' @@ -28,8 +28,8 @@ varList = [time, scalarSWE, scalarCanopyWat, scalarAquiferStorage, scalarTotalSo scalarTotalET, scalarTotalRunoff, scalarNetRadiation] filename = "out.txt" -originalPath = Path('/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-13-2022/netcdf/SummaBE_G000001-000125_day.nc') -actorsPath = Path('/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/May-26-2022/netcdf/SummaActorsGRU1-500_day.nc') +originalPath = Path('/home/kklenk/projects/rpp-kshook/kklenk/SummaOriginalOuput/May-30-2022/netcdf/SummaBE_G001001-001125_day.nc') +actorsPath = Path('/home/kklenk/projects/rpp-kshook/kklenk/SummaActorsOutput/Jun-18-2022/netcdf/SummaActorsGRU1001-1000_day.nc') originalDataset = xr.open_dataset(originalPath) actorsDataset = xr.open_dataset(actorsPath) @@ -56,6 +56,7 @@ for i in range(0, numHRU): dataAct.append(data) print("Original", len(dataOrig)) print("Actors", len(dataAct)) + print("HRU = ", i) marginOfError = 0 if var == time: for a in range(0, len(dataAct)):