From ad1ab3c7ebd05fe2f8c26899227a9fb5ddad50be Mon Sep 17 00:00:00 2001
From: "candrews@usgs.gov"
Date: Thu, 9 Nov 2017 23:41:10 -0700
Subject: [PATCH 01/34] Added documentation for RandBeta Function
Citation and license information.
Also added .bib file for this citation. Can be used for future SOILWAT2 citations.
---
Doxyfile | 2 +-
SOILWAT2.bib | 9 +
doc/html/citelist.html | 104 +++
doc/html/menudata.js | 1 +
doc/html/navtreedata.js | 3 +-
doc/html/navtreeindex0.js | 500 ++++++-------
doc/html/navtreeindex1.js | 500 ++++++-------
doc/html/navtreeindex2.js | 500 ++++++-------
doc/html/navtreeindex3.js | 496 ++++++-------
doc/html/navtreeindex4.js | 469 ++++++------
doc/html/pages.html | 103 +++
doc/html/rands_8c.html | 4 +-
doc/html/search/all_2.js | 3 +-
doc/html/search/pages_0.html | 26 +
doc/html/search/pages_0.js | 4 +
doc/html/search/searchdata.js | 9 +-
doc/latex/Makefile | 23 +
doc/latex/_r_e_a_d_m_e_8md.tex | 2 +
doc/latex/_s_w___control_8c.tex | 86 +++
doc/latex/_s_w___control_8h.tex | 36 +
doc/latex/_s_w___defines_8h.tex | 332 +++++++++
doc/latex/_s_w___files_8c.tex | 64 ++
doc/latex/_s_w___files_8h.tex | 165 +++++
doc/latex/_s_w___flow_8c.tex | 667 +++++++++++++++++
doc/latex/_s_w___flow__lib_8c.tex | 369 ++++++++++
doc/latex/_s_w___flow__lib_8h.tex | 308 ++++++++
doc/latex/_s_w___flow__subs_8h.tex | 21 +
doc/latex/_s_w___main_8c.tex | 120 +++
doc/latex/_s_w___main___function_8c.tex | 2 +
doc/latex/_s_w___markov_8c.tex | 79 ++
doc/latex/_s_w___markov_8h.tex | 45 ++
doc/latex/_s_w___model_8c.tex | 85 +++
doc/latex/_s_w___model_8h.tex | 50 ++
doc/latex/_s_w___output_8c.tex | 182 +++++
doc/latex/_s_w___output_8h.tex | 681 ++++++++++++++++++
doc/latex/_s_w___r__init_8c.tex | 52 ++
doc/latex/_s_w___r__lib_8c.tex | 2 +
doc/latex/_s_w___r__lib_8h.tex | 2 +
doc/latex/_s_w___site_8c.tex | 102 +++
doc/latex/_s_w___site_8h.tex | 58 ++
doc/latex/_s_w___sky_8c.tex | 57 ++
doc/latex/_s_w___sky_8h.tex | 38 +
doc/latex/_s_w___soil_water_8c.tex | 171 +++++
doc/latex/_s_w___soil_water_8h.tex | 151 ++++
doc/latex/_s_w___times_8h.tex | 88 +++
doc/latex/_s_w___veg_estab_8c.tex | 132 ++++
doc/latex/_s_w___veg_estab_8h.tex | 93 +++
doc/latex/_s_w___veg_prod_8c.tex | 84 +++
doc/latex/_s_w___veg_prod_8h.tex | 44 ++
doc/latex/_s_w___weather_8c.tex | 125 ++++
doc/latex/_s_w___weather_8h.tex | 102 +++
doc/latex/_times_8c.tex | 343 +++++++++
doc/latex/_times_8h.tex | 475 ++++++++++++
doc/latex/annotated.tex | 25 +
doc/latex/bibTmpFile_1.bib | 9 +
doc/latex/citelist.tex | 7 +
doc/latex/doxygen.sty | 503 +++++++++++++
doc/latex/filefuncs_8c.tex | 122 ++++
doc/latex/filefuncs_8h.tex | 129 ++++
doc/latex/files.tex | 47 ++
doc/latex/generic_8c.tex | 151 ++++
doc/latex/generic_8h.tex | 647 +++++++++++++++++
doc/latex/index.tex | 76 ++
doc/latex/memblock_8h.tex | 211 ++++++
doc/latex/my_memory_8h.tex | 90 +++
doc/latex/mymemory_8c.tex | 94 +++
doc/latex/rands_8c.tex | 209 ++++++
doc/latex/rands_8h.tex | 190 +++++
doc/latex/refman.tex | 233 ++++++
doc/latex/struct_b_l_o_c_k_i_n_f_o.tex | 65 ++
.../struct_s_t___r_g_r___v_a_l_u_e_s.tex | 89 +++
.../struct_s_w___l_a_y_e_r___i_n_f_o.tex | 345 +++++++++
doc/latex/struct_s_w___m_a_r_k_o_v.tex | 141 ++++
doc/latex/struct_s_w___m_o_d_e_l.tex | 185 +++++
doc/latex/struct_s_w___o_u_t_p_u_t.tex | 161 +++++
doc/latex/struct_s_w___s_i_t_e.tex | 345 +++++++++
doc/latex/struct_s_w___s_k_y.tex | 137 ++++
doc/latex/struct_s_w___s_o_i_l_w_a_t.tex | 377 ++++++++++
.../struct_s_w___s_o_i_l_w_a_t___h_i_s_t.tex | 73 ++
...ct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.tex | 353 +++++++++
doc/latex/struct_s_w___t_i_m_e_s.tex | 45 ++
doc/latex/struct_s_w___v_e_g_e_s_t_a_b.tex | 69 ++
...struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.tex | 209 ++++++
..._s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.tex | 29 +
doc/latex/struct_s_w___v_e_g_p_r_o_d.tex | 129 ++++
doc/latex/struct_s_w___w_e_a_t_h_e_r.tex | 241 +++++++
.../struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.tex | 113 +++
.../struct_s_w___w_e_a_t_h_e_r___h_i_s_t.tex | 65 ++
...ct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.tex | 137 ++++
doc/latex/struct_veg_type.tex | 349 +++++++++
doc/latex/structtanfunc__t.tex | 49 ++
rands.c | 10 +-
92 files changed, 13388 insertions(+), 1240 deletions(-)
create mode 100644 SOILWAT2.bib
create mode 100644 doc/html/citelist.html
create mode 100644 doc/html/pages.html
create mode 100644 doc/html/search/pages_0.html
create mode 100644 doc/html/search/pages_0.js
create mode 100644 doc/latex/Makefile
create mode 100644 doc/latex/_r_e_a_d_m_e_8md.tex
create mode 100644 doc/latex/_s_w___control_8c.tex
create mode 100644 doc/latex/_s_w___control_8h.tex
create mode 100644 doc/latex/_s_w___defines_8h.tex
create mode 100644 doc/latex/_s_w___files_8c.tex
create mode 100644 doc/latex/_s_w___files_8h.tex
create mode 100644 doc/latex/_s_w___flow_8c.tex
create mode 100644 doc/latex/_s_w___flow__lib_8c.tex
create mode 100644 doc/latex/_s_w___flow__lib_8h.tex
create mode 100644 doc/latex/_s_w___flow__subs_8h.tex
create mode 100644 doc/latex/_s_w___main_8c.tex
create mode 100644 doc/latex/_s_w___main___function_8c.tex
create mode 100644 doc/latex/_s_w___markov_8c.tex
create mode 100644 doc/latex/_s_w___markov_8h.tex
create mode 100644 doc/latex/_s_w___model_8c.tex
create mode 100644 doc/latex/_s_w___model_8h.tex
create mode 100644 doc/latex/_s_w___output_8c.tex
create mode 100644 doc/latex/_s_w___output_8h.tex
create mode 100644 doc/latex/_s_w___r__init_8c.tex
create mode 100644 doc/latex/_s_w___r__lib_8c.tex
create mode 100644 doc/latex/_s_w___r__lib_8h.tex
create mode 100644 doc/latex/_s_w___site_8c.tex
create mode 100644 doc/latex/_s_w___site_8h.tex
create mode 100644 doc/latex/_s_w___sky_8c.tex
create mode 100644 doc/latex/_s_w___sky_8h.tex
create mode 100644 doc/latex/_s_w___soil_water_8c.tex
create mode 100644 doc/latex/_s_w___soil_water_8h.tex
create mode 100644 doc/latex/_s_w___times_8h.tex
create mode 100644 doc/latex/_s_w___veg_estab_8c.tex
create mode 100644 doc/latex/_s_w___veg_estab_8h.tex
create mode 100644 doc/latex/_s_w___veg_prod_8c.tex
create mode 100644 doc/latex/_s_w___veg_prod_8h.tex
create mode 100644 doc/latex/_s_w___weather_8c.tex
create mode 100644 doc/latex/_s_w___weather_8h.tex
create mode 100644 doc/latex/_times_8c.tex
create mode 100644 doc/latex/_times_8h.tex
create mode 100644 doc/latex/annotated.tex
create mode 100644 doc/latex/bibTmpFile_1.bib
create mode 100644 doc/latex/citelist.tex
create mode 100644 doc/latex/doxygen.sty
create mode 100644 doc/latex/filefuncs_8c.tex
create mode 100644 doc/latex/filefuncs_8h.tex
create mode 100644 doc/latex/files.tex
create mode 100644 doc/latex/generic_8c.tex
create mode 100644 doc/latex/generic_8h.tex
create mode 100644 doc/latex/index.tex
create mode 100644 doc/latex/memblock_8h.tex
create mode 100644 doc/latex/my_memory_8h.tex
create mode 100644 doc/latex/mymemory_8c.tex
create mode 100644 doc/latex/rands_8c.tex
create mode 100644 doc/latex/rands_8h.tex
create mode 100644 doc/latex/refman.tex
create mode 100644 doc/latex/struct_b_l_o_c_k_i_n_f_o.tex
create mode 100644 doc/latex/struct_s_t___r_g_r___v_a_l_u_e_s.tex
create mode 100644 doc/latex/struct_s_w___l_a_y_e_r___i_n_f_o.tex
create mode 100644 doc/latex/struct_s_w___m_a_r_k_o_v.tex
create mode 100644 doc/latex/struct_s_w___m_o_d_e_l.tex
create mode 100644 doc/latex/struct_s_w___o_u_t_p_u_t.tex
create mode 100644 doc/latex/struct_s_w___s_i_t_e.tex
create mode 100644 doc/latex/struct_s_w___s_k_y.tex
create mode 100644 doc/latex/struct_s_w___s_o_i_l_w_a_t.tex
create mode 100644 doc/latex/struct_s_w___s_o_i_l_w_a_t___h_i_s_t.tex
create mode 100644 doc/latex/struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.tex
create mode 100644 doc/latex/struct_s_w___t_i_m_e_s.tex
create mode 100644 doc/latex/struct_s_w___v_e_g_e_s_t_a_b.tex
create mode 100644 doc/latex/struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.tex
create mode 100644 doc/latex/struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.tex
create mode 100644 doc/latex/struct_s_w___v_e_g_p_r_o_d.tex
create mode 100644 doc/latex/struct_s_w___w_e_a_t_h_e_r.tex
create mode 100644 doc/latex/struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.tex
create mode 100644 doc/latex/struct_s_w___w_e_a_t_h_e_r___h_i_s_t.tex
create mode 100644 doc/latex/struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.tex
create mode 100644 doc/latex/struct_veg_type.tex
create mode 100644 doc/latex/structtanfunc__t.tex
diff --git a/Doxyfile b/Doxyfile
index 07aef6631..a43257a5c 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -713,7 +713,7 @@ LAYOUT_FILE =
# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
# search path. See also \cite for info how to create references.
-CITE_BIB_FILES =
+CITE_BIB_FILES = SOILWAT2.bib
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
diff --git a/SOILWAT2.bib b/SOILWAT2.bib
new file mode 100644
index 000000000..a3eaeeba0
--- /dev/null
+++ b/SOILWAT2.bib
@@ -0,0 +1,9 @@
+
+@Article{Cheng1978,
+ author = "R. Cheng",
+ title = "Generating Beta Variates with Nonintegral Shape Parameters",
+ journal = "Communications of the ACM",
+ volume = 21,
+ year = 1978,
+ pages = {317--322},
+ }
diff --git a/doc/html/citelist.html b/doc/html/citelist.html
new file mode 100644
index 000000000..26cb3fbeb
--- /dev/null
+++ b/doc/html/citelist.html
@@ -0,0 +1,104 @@
+
+
+
+
+
+
+
+SOILWAT2: Bibliography
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SOILWAT2
+ 3.2.7
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- [1]
+R. Cheng. Generating beta variates with nonintegral shape parameters. Communications of the ACM, 21:317–322, 1978.
+
+
+
+
+
+
+
+
+
diff --git a/doc/html/menudata.js b/doc/html/menudata.js
index 5d3af405c..beaf065b1 100644
--- a/doc/html/menudata.js
+++ b/doc/html/menudata.js
@@ -1,5 +1,6 @@
var menudata={children:[
{text:"Main Page",url:"index.html"},
+{text:"Related Pages",url:"pages.html"},
{text:"Data Structures",url:"annotated.html",children:[
{text:"Data Structures",url:"annotated.html"},
{text:"Data Structure Index",url:"classes.html"},
diff --git a/doc/html/navtreedata.js b/doc/html/navtreedata.js
index 7737bd5bb..910f8fc24 100644
--- a/doc/html/navtreedata.js
+++ b/doc/html/navtreedata.js
@@ -1,6 +1,7 @@
var NAVTREE =
[
[ "SOILWAT2", "index.html", [
+ [ "Bibliography", "citelist.html", null ],
[ "Data Structures", "annotated.html", [
[ "Data Structures", "annotated.html", "annotated_dup" ],
[ "Data Structure Index", "classes.html", null ],
@@ -30,7 +31,7 @@ var NAVTREEINDEX =
"_s_w___output_8c.html#a46e5208554b79bebc83a481785e273c6",
"_times_8c.html#a39bfa4779cc42a48e9a8de936ad48a44",
"globals_func.html",
-"struct_s_w___s_o_i_l_w_a_t.html#a5daee6e2e1a9137b841071b737e91774"
+"struct_s_w___s_o_i_l_w_a_t.html#a5d20e6c7bcc97871d0a6c45d85f1310e"
];
var SYNCONMSG = 'click to disable panel synchronisation';
diff --git a/doc/html/navtreeindex0.js b/doc/html/navtreeindex0.js
index ebfd7175e..08fb589a4 100644
--- a/doc/html/navtreeindex0.js
+++ b/doc/html/navtreeindex0.js
@@ -1,253 +1,253 @@
var NAVTREEINDEX0 =
{
-"_s_w___control_8c.html":[1,0,9],
-"_s_w___control_8c.html#a43102daf9adb8884f1536ddd5267b5d3":[1,0,9,2],
-"_s_w___control_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[1,0,9,5],
-"_s_w___control_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,9,4],
-"_s_w___control_8c.html#a943a69d15500659311cb5037d1afae53":[1,0,9,1],
-"_s_w___control_8c.html#ae2909281ecba352303cc710e1c045c54":[1,0,9,0],
-"_s_w___control_8c.html#aff0bb7870fbf9020899035540e606250":[1,0,9,3],
-"_s_w___control_8h.html":[1,0,10],
-"_s_w___control_8h.html#a43102daf9adb8884f1536ddd5267b5d3":[1,0,10,2],
-"_s_w___control_8h.html#a943a69d15500659311cb5037d1afae53":[1,0,10,1],
-"_s_w___control_8h.html#ae2909281ecba352303cc710e1c045c54":[1,0,10,0],
-"_s_w___control_8h_source.html":[1,0,10],
-"_s_w___defines_8h.html":[1,0,11],
-"_s_w___defines_8h.html#a0339c635d395199ea5fe72836051f1dd":[1,0,11,26],
-"_s_w___defines_8h.html#a036cc494a050174ba59f4e54dfd99860":[1,0,11,1],
-"_s_w___defines_8h.html#a0447f3a618dcfd1c743a500795198f7e":[1,0,11,22],
-"_s_w___defines_8h.html#a0e41eb238fac5a67b02ab97010b3e064":[1,0,11,2],
-"_s_w___defines_8h.html#a1a1d7ca1e867cd0a58701a7ed7f7eaba":[1,0,11,5],
-"_s_w___defines_8h.html#a1ac2a0d268a0896e1284acf0cc6c435d":[1,0,11,6],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4a":[1,0,11,29],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa00661878fc5676eef70debe9bee47f7b":[1,0,11,29,1],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa0f0bd1cfc2e9e51518694b161fe06f64":[1,0,11,29,0],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa4de3f5797c577db7695547ad2a01d6f3":[1,0,11,29,5],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa643dc0d527d036028ce24d15a4843631":[1,0,11,29,3],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa67b17d0809dd174a49b6d8dec05eeebe":[1,0,11,29,7],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa87e83365a24b6b12290005e36a58280b":[1,0,11,29,6],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa97f8c59a55f6af9ec70f4222c3247f3a":[1,0,11,29,2],
-"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aab878e49b4f246ad5b3bf9040d718a45d":[1,0,11,29,4],
-"_s_w___defines_8h.html#a2750dfdda752269a036f487a4a34b849":[1,0,11,19],
-"_s_w___defines_8h.html#a30b7d70368683bce332d0cda6571adec":[1,0,11,15],
-"_s_w___defines_8h.html#a3412d1323113d9cafb20dc96df2dc207":[1,0,11,21],
-"_s_w___defines_8h.html#a359e4b44b4d0483a082034d9ee2aa5bd":[1,0,11,16],
-"_s_w___defines_8h.html#a3aaee30ddedb3f6675aac341a66e39e2":[1,0,11,20],
-"_s_w___defines_8h.html#a4492ee6bfc6ea32e904dd50c7c733f2f":[1,0,11,11],
-"_s_w___defines_8h.html#a51adac1981af74141d7e86cc04baa5f9":[1,0,11,17],
-"_s_w___defines_8h.html#a598a3330b3c21701223ee0ca14316eca":[1,0,11,18],
-"_s_w___defines_8h.html#a611f69bdc2c773cecd7c9b90f7a8b7bd":[1,0,11,14],
-"_s_w___defines_8h.html#a6ae21cc565965c4943779c14cfab8947":[1,0,11,7],
-"_s_w___defines_8h.html#a6f9c4034c7daeabc9600a85c92ba05c3":[1,0,11,13],
-"_s_w___defines_8h.html#a7766a5013dd0d6ac2e1bc42e5d70dc1c":[1,0,11,4],
-"_s_w___defines_8h.html#a9f4654c7e7b1474c7498eae01f8a31b4":[1,0,11,24],
-"_s_w___defines_8h.html#a9f608e6e7599d3d1e3e207672c1daadc":[1,0,11,27],
-"_s_w___defines_8h.html#aa13584938d6d242c32df06115a94b01a":[1,0,11,28],
-"_s_w___defines_8h.html#aa942d41fa5ec29fd27fb22d42bc4cd9b":[1,0,11,3],
-"_s_w___defines_8h.html#aaa1cdc54f8a71ce3e6871d943f541332":[1,0,11,8],
-"_s_w___defines_8h.html#ab0bdb76729ddfa023fa1c11a5535b907":[1,0,11,10],
-"_s_w___defines_8h.html#abeab34b680f1b8157820ab81b272f569":[1,0,11,9],
-"_s_w___defines_8h.html#ad3fb7b03fb7649f7e98c8904e542f6f4":[1,0,11,25],
-"_s_w___defines_8h.html#ade9d4b2ac5f29fe89ffea40e7c58c9d6":[1,0,11,12],
-"_s_w___defines_8h.html#af57b89fb6de28910f13d22113e338baf":[1,0,11,23],
-"_s_w___defines_8h_source.html":[1,0,11],
-"_s_w___files_8c.html":[1,0,12],
-"_s_w___files_8c.html#a17d269992c251bbb8fcf9804a3d77790":[1,0,12,4],
-"_s_w___files_8c.html#a4b507fed685d7f3b88532df2ed43fa8d":[1,0,12,3],
-"_s_w___files_8c.html#a553a529e2357818a3c8fdc9b882c9509":[1,0,12,0],
-"_s_w___files_8c.html#a78a86067bc2214b814f99a1d7257cfb9":[1,0,12,2],
-"_s_w___files_8c.html#a8a17eac6d37011b6c8d33942d979be74":[1,0,12,1],
-"_s_w___files_8h.html":[1,0,13],
-"_s_w___files_8h.html#a17d269992c251bbb8fcf9804a3d77790":[1,0,13,6],
-"_s_w___files_8h.html#a4b507fed685d7f3b88532df2ed43fa8d":[1,0,13,5],
-"_s_w___files_8h.html#a553a529e2357818a3c8fdc9b882c9509":[1,0,13,2],
-"_s_w___files_8h.html#a78a86067bc2214b814f99a1d7257cfb9":[1,0,13,4],
-"_s_w___files_8h.html#a8a17eac6d37011b6c8d33942d979be74":[1,0,13,3],
-"_s_w___files_8h.html#ac0ab6360fd7df77b1945eea40fc18d49":[1,0,13,0],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171":[1,0,13,1],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a0432355d8c84da2850f405dfe8c74799":[1,0,13,1,2],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a06fc98429781eabd0a612ee1dd5cffee":[1,0,13,1,10],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a228828433281dbcfc65eca579d61e919":[1,0,13,1,13],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a4753d0756c38983a69b2b37de62b93e5":[1,0,13,1,1],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a70ef1b08d71eb895ac7fbe6a2db43c20":[1,0,13,1,9],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a8640b641f4ab32eee9c7574e19d79673":[1,0,13,1,6],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a894351f96a0fca95bd69df5bab9f1325":[1,0,13,1,7],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a95aca4e9d78e9f76c8b63e5f79e80a9a":[1,0,13,1,14],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a9d20e3a3fade81fc23150ead54cc5877":[1,0,13,1,5],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aa0bacb0409d59c33db0723d99da7058f":[1,0,13,1,4],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aaceb770ed9835e93b47b00fc45aad094":[1,0,13,1,8],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aae9e126d54f2788125a189d076cd610b":[1,0,13,1,0],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ab2906902c746770046f4ad0142a5ca56":[1,0,13,1,3],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ac8fcaa3ebfe01b11bc6647793ecfdd65":[1,0,13,1,11],
-"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ad892014c992361811c630b4078ce0a97":[1,0,13,1,12],
-"_s_w___files_8h_source.html":[1,0,13],
-"_s_w___flow_8c.html":[1,0,14],
-"_s_w___flow_8c.html#a04e8d1631a4a59d1e6b0a19a378d9a58":[1,0,14,47],
-"_s_w___flow_8c.html#a05b52de692c7063e258aecb8ea1e1ea7":[1,0,14,35],
-"_s_w___flow_8c.html#a0c0cc9901dad95995b6e952ebd8724f0":[1,0,14,28],
-"_s_w___flow_8c.html#a0c18c0a30968c779baf0de402c0acd97":[1,0,14,10],
-"_s_w___flow_8c.html#a0cffd9583b3d7a24fb5be76adf1d8e2f":[1,0,14,41],
-"_s_w___flow_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,14,50],
-"_s_w___flow_8c.html#a13f1f5dba51bd83cffd0dc6189b6b48f":[1,0,14,37],
-"_s_w___flow_8c.html#a1f1ae9f8e8eb169b4a65b09961904353":[1,0,14,17],
-"_s_w___flow_8c.html#a2bb1171e36d1edbad679c9853f4edaec":[1,0,14,40],
-"_s_w___flow_8c.html#a2f351798b2374d9fcc674829cc4d8629":[1,0,14,30],
-"_s_w___flow_8c.html#a321d965606ed16a90b4e8c7cacb4527d":[1,0,14,8],
-"_s_w___flow_8c.html#a4106901c0198609299d856b2b1f88304":[1,0,14,2],
-"_s_w___flow_8c.html#a47663047680e61e8c31f57bf75f885c4":[1,0,14,7],
-"_s_w___flow_8c.html#a49306ae0131b5ee5deabcd489dd2ecd2":[1,0,14,21],
-"_s_w___flow_8c.html#a4ae75944adbc3d91fdf8ee7c9acdd875":[1,0,14,51],
-"_s_w___flow_8c.html#a4c2c9842909f1801ba93729da56cde72":[1,0,14,44],
-"_s_w___flow_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[1,0,14,54],
-"_s_w___flow_8c.html#a63c82bd718ba4c4a9d717b84d719a4c6":[1,0,14,12],
-"_s_w___flow_8c.html#a6a103073a6b5c57f8147661e8f5c5167":[1,0,14,38],
-"_s_w___flow_8c.html#a6a9d5dbcefaf72eece66ed219bcd749f":[1,0,14,1],
-"_s_w___flow_8c.html#a6fa650e1cd78729dd86048231a0709b9":[1,0,14,16],
-"_s_w___flow_8c.html#a6fd11ca6c2749216e3c8f343528a1043":[1,0,14,3],
-"_s_w___flow_8c.html#a7072e00cf0b827b37a0021108b621e02":[1,0,14,36],
-"_s_w___flow_8c.html#a71736c16788e423737e1e931eadc1349":[1,0,14,26],
-"_s_w___flow_8c.html#a77c14ed91b5be2669aaea2f0f883a7fa":[1,0,14,20],
-"_s_w___flow_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,14,49],
-"_s_w___flow_8c.html#a8818b5be37dd0afb89b783b379dad06b":[1,0,14,18],
-"_s_w___flow_8c.html#a8af9c10eba41cf85a5ae63714502572a":[1,0,14,6],
-"_s_w___flow_8c.html#a8c0a9d10b0f3b09cf1a6787a8b0dd564":[1,0,14,32],
-"_s_w___flow_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[1,0,14,53],
-"_s_w___flow_8c.html#a99df09461b6c7d16e0b8c7458bd4fce1":[1,0,14,14],
-"_s_w___flow_8c.html#a9c0ca4d94ce18f12011bd2e14f8daf42":[1,0,14,27],
-"_s_w___flow_8c.html#aa8fe1dc73d8905bd19f03e7a0840357a":[1,0,14,15],
-"_s_w___flow_8c.html#aab4d4bf41087eb17a093d64655478f3f":[1,0,14,42],
-"_s_w___flow_8c.html#aab4fc266c602675aef80e93ed5139776":[1,0,14,33],
-"_s_w___flow_8c.html#ab0f18504dcfd9a72b58c99f57e23d876":[1,0,14,34],
-"_s_w___flow_8c.html#ab5ef548372c71817be103e25a02af4e9":[1,0,14,22],
-"_s_w___flow_8c.html#ab6fd5cbb6002a2f412d4624873b62a25":[1,0,14,39],
-"_s_w___flow_8c.html#ab84481934adb9116e2cb0d6f89de85b1":[1,0,14,43],
-"_s_w___flow_8c.html#abddb8434afad615201035259c82b5e29":[1,0,14,23],
-"_s_w___flow_8c.html#ac0e905fa9ff94ff5067048fff85cfdc1":[1,0,14,11],
-"_s_w___flow_8c.html#ac94101fc6a0cba1725b24a67f300f293":[1,0,14,46],
-"_s_w___flow_8c.html#ace889dddadc2b4542b04b1b131df57ab":[1,0,14,48],
-"_s_w___flow_8c.html#acf398ceb5b7284b7067722a182444c35":[1,0,14,19],
-"_s_w___flow_8c.html#ad26d68f2125f4384c70f2db32ec9a22f":[1,0,14,45],
-"_s_w___flow_8c.html#ad90e59068d73ee7e481b40c68f9901d0":[1,0,14,5],
-"_s_w___flow_8c.html#ae4aece9b7e66bf8fe61898b2ee00c39c":[1,0,14,31],
-"_s_w___flow_8c.html#aec49ecd93d4d0c2fe2c9df413e1f81a1":[1,0,14,25],
-"_s_w___flow_8c.html#aecdeccda6a19c12323c2534a4fb43ad0":[1,0,14,13],
-"_s_w___flow_8c.html#af4cb5e55c8fde8470504e32bb895cddc":[1,0,14,9],
-"_s_w___flow_8c.html#afd8e81430336b9e7794df6cc7f6062df":[1,0,14,24],
-"_s_w___flow_8c.html#afdb5899eb9a7e608fc7a9a9a6d73be8b":[1,0,14,4],
-"_s_w___flow_8c.html#afdb8ced0825a798336ba061396f7016c":[1,0,14,52],
-"_s_w___flow_8c.html#aff0bb7870fbf9020899035540e606250":[1,0,14,0],
-"_s_w___flow_8c.html#aff365308b25ceebadda825bd9aefba6f":[1,0,14,29],
-"_s_w___flow__lib_8c.html":[1,0,15],
-"_s_w___flow__lib_8c.html#a03df632357244d21459a7680fe167dcc":[1,0,15,12],
-"_s_w___flow__lib_8c.html#a04e8d1631a4a59d1e6b0a19a378d9a58":[1,0,15,31],
-"_s_w___flow__lib_8c.html#a07b599ca60ae18b36154e117789b4ba1":[1,0,15,20],
-"_s_w___flow__lib_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,15,33],
-"_s_w___flow__lib_8c.html#a12dc2157867a28f063bac79338e32daf":[1,0,15,15],
-"_s_w___flow__lib_8c.html#a1465316e765759db20d065ace8d0d88e":[1,0,15,4],
-"_s_w___flow__lib_8c.html#a17210cb66ba3a806d36a1ee36819ae09":[1,0,15,27],
-"_s_w___flow__lib_8c.html#a1bd1c1f3527cbe8b6bb9aac1bc737809":[1,0,15,17],
-"_s_w___flow__lib_8c.html#a2bb21c147c1a560a90c765e619297b4c":[1,0,15,1],
-"_s_w___flow__lib_8c.html#a2d2e41ea50a7a1771d0c6273e857b5be":[1,0,15,29],
-"_s_w___flow__lib_8c.html#a2da161c71736e111d04ff43e5955366e":[1,0,15,22],
-"_s_w___flow__lib_8c.html#a3a09cb656bc69c7373a2d01cb06b0700":[1,0,15,18],
-"_s_w___flow__lib_8c.html#a3a889cfc64aa918959e6c331b23c56ab":[1,0,15,16],
-"_s_w___flow__lib_8c.html#a3b87733156e9a39648e59c7ad1754f96":[1,0,15,11],
-"_s_w___flow__lib_8c.html#a3bdea7cd6604199ad49673c073470038":[1,0,15,14],
-"_s_w___flow__lib_8c.html#a41552e80ab8d387b43a80fef49b4d808":[1,0,15,2],
-"_s_w___flow__lib_8c.html#a509909394ec87616d70b0f98ff790bb6":[1,0,15,5],
-"_s_w___flow__lib_8c.html#a5246f7d7fc66d00706dcd395e355aae3":[1,0,15,24],
-"_s_w___flow__lib_8c.html#a58d72436d25f98e09dfe7dad4876e033":[1,0,15,10],
-"_s_w___flow__lib_8c.html#a6fd11ca6c2749216e3c8f343528a1043":[1,0,15,30],
-"_s_w___flow__lib_8c.html#a7293b4daefd4b3104a2d6422c80fe187":[1,0,15,26],
-"_s_w___flow__lib_8c.html#a7570bfc44a681654eea14bc9336f2689":[1,0,15,0],
-"_s_w___flow__lib_8c.html#a877c3d07d472ef356509efb287e89478":[1,0,15,8],
-"_s_w___flow__lib_8c.html#a921d6c39af0fc6fd7b284db250488500":[1,0,15,19],
-"_s_w___flow__lib_8c.html#aa86991fe46bc4a9b6bff3a175064464a":[1,0,15,25],
-"_s_w___flow__lib_8c.html#aa9a45f022035636fd97bd9e01dd3b640":[1,0,15,7],
-"_s_w___flow__lib_8c.html#aad3e73859c6192bacd4ef31615b28c55":[1,0,15,13],
-"_s_w___flow__lib_8c.html#acc1aee51b5bbcb1380efeb93b025f0ad":[1,0,15,21],
-"_s_w___flow__lib_8c.html#ace889dddadc2b4542b04b1b131df57ab":[1,0,15,32],
-"_s_w___flow__lib_8c.html#ad06cdd37a42a5f79b86c25c8e90de0c3":[1,0,15,3],
-"_s_w___flow__lib_8c.html#add74b9b9112cbea66a065aed2a3c77b8":[1,0,15,23],
-"_s_w___flow__lib_8c.html#ade5212bfa19c58306595cafe95df820c":[1,0,15,9],
-"_s_w___flow__lib_8c.html#af6e4f9a8a045eb85be00fa075a38e784":[1,0,15,28],
-"_s_w___flow__lib_8c.html#af96898fb97d62e17b02d0c6f719151ce":[1,0,15,6],
-"_s_w___flow__lib_8c.html#afdb8ced0825a798336ba061396f7016c":[1,0,15,34],
-"_s_w___flow__lib_8h.html":[1,0,16],
-"_s_w___flow__lib_8h.html#a07b599ca60ae18b36154e117789b4ba1":[1,0,16,23],
-"_s_w___flow__lib_8h.html#a12dc2157867a28f063bac79338e32daf":[1,0,16,19],
-"_s_w___flow__lib_8h.html#a1465316e765759db20d065ace8d0d88e":[1,0,16,11],
-"_s_w___flow__lib_8h.html#a17210cb66ba3a806d36a1ee36819ae09":[1,0,16,28],
-"_s_w___flow__lib_8h.html#a1bd1c1f3527cbe8b6bb9aac1bc737809":[1,0,16,21],
-"_s_w___flow__lib_8h.html#a2d2e41ea50a7a1771d0c6273e857b5be":[1,0,16,30],
-"_s_w___flow__lib_8h.html#a2da161c71736e111d04ff43e5955366e":[1,0,16,25],
-"_s_w___flow__lib_8h.html#a3a889cfc64aa918959e6c331b23c56ab":[1,0,16,20],
-"_s_w___flow__lib_8h.html#a3bdea7cd6604199ad49673c073470038":[1,0,16,18],
-"_s_w___flow__lib_8h.html#a41552e80ab8d387b43a80fef49b4d808":[1,0,16,8],
-"_s_w___flow__lib_8h.html#a443e9a21531fe8f7e72d0590e08fab22":[1,0,16,3],
-"_s_w___flow__lib_8h.html#a509909394ec87616d70b0f98ff790bb6":[1,0,16,12],
-"_s_w___flow__lib_8h.html#a541d566d0e6d866c1116d3abf45dedad":[1,0,16,7],
-"_s_w___flow__lib_8h.html#a58d72436d25f98e09dfe7dad4876e033":[1,0,16,17],
-"_s_w___flow__lib_8h.html#a65c9896ad79cff15600e04ac3aaef23a":[1,0,16,5],
-"_s_w___flow__lib_8h.html#a719179c043543e75ab34fa0279be09d3":[1,0,16,22],
-"_s_w___flow__lib_8h.html#a7293b4daefd4b3104a2d6422c80fe187":[1,0,16,27],
-"_s_w___flow__lib_8h.html#a745edb311b1af71f4b09347bfd865f48":[1,0,16,2],
-"_s_w___flow__lib_8h.html#a877c3d07d472ef356509efb287e89478":[1,0,16,15],
-"_s_w___flow__lib_8h.html#a9e0878124e3d15f54b5b1ba16b492577":[1,0,16,1],
-"_s_w___flow__lib_8h.html#aa86991fe46bc4a9b6bff3a175064464a":[1,0,16,26],
-"_s_w___flow__lib_8h.html#aa9a45f022035636fd97bd9e01dd3b640":[1,0,16,14],
-"_s_w___flow__lib_8h.html#acc1aee51b5bbcb1380efeb93b025f0ad":[1,0,16,24],
-"_s_w___flow__lib_8h.html#acff8f72e4dede0c8698523d1b7885ba7":[1,0,16,6],
-"_s_w___flow__lib_8h.html#ad06cdd37a42a5f79b86c25c8e90de0c3":[1,0,16,10],
-"_s_w___flow__lib_8h.html#ade5212bfa19c58306595cafe95df820c":[1,0,16,16],
-"_s_w___flow__lib_8h.html#af12c31698ca0ea152f277050d252ce79":[1,0,16,4],
-"_s_w___flow__lib_8h.html#af5e16e510229df213c7e3d2882390979":[1,0,16,9],
-"_s_w___flow__lib_8h.html#af6e4f9a8a045eb85be00fa075a38e784":[1,0,16,29],
-"_s_w___flow__lib_8h.html#af96898fb97d62e17b02d0c6f719151ce":[1,0,16,13],
-"_s_w___flow__lib_8h_source.html":[1,0,16],
-"_s_w___flow__subs_8h.html":[1,0,17],
-"_s_w___flow__subs_8h.html#a7a6303508b80765f963ac5c741749331":[1,0,17,0],
-"_s_w___flow__subs_8h_source.html":[1,0,17],
-"_s_w___main_8c.html":[1,0,18],
-"_s_w___main_8c.html#a00d494d2df26cd46f3f793b34d4c1741":[1,0,18,4],
-"_s_w___main_8c.html#a3c04138a5bfe5d72780bb7e82a18e627":[1,0,18,1],
-"_s_w___main_8c.html#a3db696ae82419b92cd8d064375e3ceaa":[1,0,18,5],
-"_s_w___main_8c.html#a46e5208554b79bebc83a481785e273c6":[1,0,18,3],
-"_s_w___main_8c.html#a4c51093e2a76fe0f02e21a6c1e6d9062":[1,0,18,2],
-"_s_w___main_8c.html#a562be42d6e61053fb27a605579e50c22":[1,0,18,0],
-"_s_w___main_8c.html#a89d055087b91bee4772110f089a82eb3":[1,0,18,8],
-"_s_w___main_8c.html#ac16dab5cefce6fed135c20d1bae372a5":[1,0,18,6],
-"_s_w___main_8c.html#ada051a4499e33e1d0fe82eeeee6d1699":[1,0,18,7],
-"_s_w___main___function_8c.html":[1,0,19],
-"_s_w___markov_8c.html":[1,0,20],
-"_s_w___markov_8c.html#a113409159a76f013e2a9ffb4ebc4a8c9":[1,0,20,0],
-"_s_w___markov_8c.html#a29f5ff534069ae52995a51c7c186d1c2":[1,0,20,4],
-"_s_w___markov_8c.html#a6153b2f3821b21e1284380b6423d22e6":[1,0,20,1],
-"_s_w___markov_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,20,5],
-"_s_w___markov_8c.html#a90a854462e03f8a79c1c2755f8bcc668":[1,0,20,3],
-"_s_w___markov_8c.html#afcd7e31841f2690ca09a7b5f6e6abeee":[1,0,20,2],
-"_s_w___markov_8h.html":[1,0,21],
-"_s_w___markov_8h.html#a113409159a76f013e2a9ffb4ebc4a8c9":[1,0,21,1],
-"_s_w___markov_8h.html#a6153b2f3821b21e1284380b6423d22e6":[1,0,21,2],
-"_s_w___markov_8h.html#a90a854462e03f8a79c1c2755f8bcc668":[1,0,21,4],
-"_s_w___markov_8h.html#afcd7e31841f2690ca09a7b5f6e6abeee":[1,0,21,3],
-"_s_w___markov_8h_source.html":[1,0,21],
-"_s_w___model_8c.html":[1,0,22],
-"_s_w___model_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,22,5],
-"_s_w___model_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,22,4],
-"_s_w___model_8c.html#a8c832846bf416df3351a02024a99448e":[1,0,22,1],
-"_s_w___model_8c.html#a8d0cc13f8474418e9534a055b49cbcd9":[1,0,22,0],
-"_s_w___model_8c.html#aaaa6ecac4aec2768db6ac5c3c22801f3":[1,0,22,3],
-"_s_w___model_8c.html#ad092917290025f5984d564637dff94a7":[1,0,22,2],
-"_s_w___model_8h.html":[1,0,23],
-"_s_w___model_8h.html#a8c832846bf416df3351a02024a99448e":[1,0,23,2],
-"_s_w___model_8h.html#a8d0cc13f8474418e9534a055b49cbcd9":[1,0,23,1],
-"_s_w___model_8h.html#aaaa6ecac4aec2768db6ac5c3c22801f3":[1,0,23,4],
-"_s_w___model_8h.html#abfc65ff89a725366ac8c2eceb11f031e":[1,0,23,3],
-"_s_w___model_8h_source.html":[1,0,23],
-"_s_w___output_8c.html":[1,0,24],
-"_s_w___output_8c.html#a0403c81a40f6c4b5a34be286fb003019":[1,0,24,11],
-"_s_w___output_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,24,12],
-"_s_w___output_8c.html#a288bfdd3a3a04a61564b9cad8ef08a1f":[1,0,24,4],
-"_s_w___output_8c.html#a3fa5549d021cf21378728eca2ebf91c4":[1,0,24,0]
+"_s_w___control_8c.html":[2,0,9],
+"_s_w___control_8c.html#a43102daf9adb8884f1536ddd5267b5d3":[2,0,9,2],
+"_s_w___control_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[2,0,9,5],
+"_s_w___control_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,9,4],
+"_s_w___control_8c.html#a943a69d15500659311cb5037d1afae53":[2,0,9,1],
+"_s_w___control_8c.html#ae2909281ecba352303cc710e1c045c54":[2,0,9,0],
+"_s_w___control_8c.html#aff0bb7870fbf9020899035540e606250":[2,0,9,3],
+"_s_w___control_8h.html":[2,0,10],
+"_s_w___control_8h.html#a43102daf9adb8884f1536ddd5267b5d3":[2,0,10,2],
+"_s_w___control_8h.html#a943a69d15500659311cb5037d1afae53":[2,0,10,1],
+"_s_w___control_8h.html#ae2909281ecba352303cc710e1c045c54":[2,0,10,0],
+"_s_w___control_8h_source.html":[2,0,10],
+"_s_w___defines_8h.html":[2,0,11],
+"_s_w___defines_8h.html#a0339c635d395199ea5fe72836051f1dd":[2,0,11,26],
+"_s_w___defines_8h.html#a036cc494a050174ba59f4e54dfd99860":[2,0,11,1],
+"_s_w___defines_8h.html#a0447f3a618dcfd1c743a500795198f7e":[2,0,11,22],
+"_s_w___defines_8h.html#a0e41eb238fac5a67b02ab97010b3e064":[2,0,11,2],
+"_s_w___defines_8h.html#a1a1d7ca1e867cd0a58701a7ed7f7eaba":[2,0,11,5],
+"_s_w___defines_8h.html#a1ac2a0d268a0896e1284acf0cc6c435d":[2,0,11,6],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4a":[2,0,11,29],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa00661878fc5676eef70debe9bee47f7b":[2,0,11,29,1],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa0f0bd1cfc2e9e51518694b161fe06f64":[2,0,11,29,0],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa4de3f5797c577db7695547ad2a01d6f3":[2,0,11,29,5],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa643dc0d527d036028ce24d15a4843631":[2,0,11,29,3],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa67b17d0809dd174a49b6d8dec05eeebe":[2,0,11,29,7],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa87e83365a24b6b12290005e36a58280b":[2,0,11,29,6],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aa97f8c59a55f6af9ec70f4222c3247f3a":[2,0,11,29,2],
+"_s_w___defines_8h.html#a21ada50c882656c2a4723dde25f56d4aab878e49b4f246ad5b3bf9040d718a45d":[2,0,11,29,4],
+"_s_w___defines_8h.html#a2750dfdda752269a036f487a4a34b849":[2,0,11,19],
+"_s_w___defines_8h.html#a30b7d70368683bce332d0cda6571adec":[2,0,11,15],
+"_s_w___defines_8h.html#a3412d1323113d9cafb20dc96df2dc207":[2,0,11,21],
+"_s_w___defines_8h.html#a359e4b44b4d0483a082034d9ee2aa5bd":[2,0,11,16],
+"_s_w___defines_8h.html#a3aaee30ddedb3f6675aac341a66e39e2":[2,0,11,20],
+"_s_w___defines_8h.html#a4492ee6bfc6ea32e904dd50c7c733f2f":[2,0,11,11],
+"_s_w___defines_8h.html#a51adac1981af74141d7e86cc04baa5f9":[2,0,11,17],
+"_s_w___defines_8h.html#a598a3330b3c21701223ee0ca14316eca":[2,0,11,18],
+"_s_w___defines_8h.html#a611f69bdc2c773cecd7c9b90f7a8b7bd":[2,0,11,14],
+"_s_w___defines_8h.html#a6ae21cc565965c4943779c14cfab8947":[2,0,11,7],
+"_s_w___defines_8h.html#a6f9c4034c7daeabc9600a85c92ba05c3":[2,0,11,13],
+"_s_w___defines_8h.html#a7766a5013dd0d6ac2e1bc42e5d70dc1c":[2,0,11,4],
+"_s_w___defines_8h.html#a9f4654c7e7b1474c7498eae01f8a31b4":[2,0,11,24],
+"_s_w___defines_8h.html#a9f608e6e7599d3d1e3e207672c1daadc":[2,0,11,27],
+"_s_w___defines_8h.html#aa13584938d6d242c32df06115a94b01a":[2,0,11,28],
+"_s_w___defines_8h.html#aa942d41fa5ec29fd27fb22d42bc4cd9b":[2,0,11,3],
+"_s_w___defines_8h.html#aaa1cdc54f8a71ce3e6871d943f541332":[2,0,11,8],
+"_s_w___defines_8h.html#ab0bdb76729ddfa023fa1c11a5535b907":[2,0,11,10],
+"_s_w___defines_8h.html#abeab34b680f1b8157820ab81b272f569":[2,0,11,9],
+"_s_w___defines_8h.html#ad3fb7b03fb7649f7e98c8904e542f6f4":[2,0,11,25],
+"_s_w___defines_8h.html#ade9d4b2ac5f29fe89ffea40e7c58c9d6":[2,0,11,12],
+"_s_w___defines_8h.html#af57b89fb6de28910f13d22113e338baf":[2,0,11,23],
+"_s_w___defines_8h_source.html":[2,0,11],
+"_s_w___files_8c.html":[2,0,12],
+"_s_w___files_8c.html#a17d269992c251bbb8fcf9804a3d77790":[2,0,12,4],
+"_s_w___files_8c.html#a4b507fed685d7f3b88532df2ed43fa8d":[2,0,12,3],
+"_s_w___files_8c.html#a553a529e2357818a3c8fdc9b882c9509":[2,0,12,0],
+"_s_w___files_8c.html#a78a86067bc2214b814f99a1d7257cfb9":[2,0,12,2],
+"_s_w___files_8c.html#a8a17eac6d37011b6c8d33942d979be74":[2,0,12,1],
+"_s_w___files_8h.html":[2,0,13],
+"_s_w___files_8h.html#a17d269992c251bbb8fcf9804a3d77790":[2,0,13,6],
+"_s_w___files_8h.html#a4b507fed685d7f3b88532df2ed43fa8d":[2,0,13,5],
+"_s_w___files_8h.html#a553a529e2357818a3c8fdc9b882c9509":[2,0,13,2],
+"_s_w___files_8h.html#a78a86067bc2214b814f99a1d7257cfb9":[2,0,13,4],
+"_s_w___files_8h.html#a8a17eac6d37011b6c8d33942d979be74":[2,0,13,3],
+"_s_w___files_8h.html#ac0ab6360fd7df77b1945eea40fc18d49":[2,0,13,0],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171":[2,0,13,1],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a0432355d8c84da2850f405dfe8c74799":[2,0,13,1,2],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a06fc98429781eabd0a612ee1dd5cffee":[2,0,13,1,10],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a228828433281dbcfc65eca579d61e919":[2,0,13,1,13],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a4753d0756c38983a69b2b37de62b93e5":[2,0,13,1,1],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a70ef1b08d71eb895ac7fbe6a2db43c20":[2,0,13,1,9],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a8640b641f4ab32eee9c7574e19d79673":[2,0,13,1,6],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a894351f96a0fca95bd69df5bab9f1325":[2,0,13,1,7],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a95aca4e9d78e9f76c8b63e5f79e80a9a":[2,0,13,1,14],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171a9d20e3a3fade81fc23150ead54cc5877":[2,0,13,1,5],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aa0bacb0409d59c33db0723d99da7058f":[2,0,13,1,4],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aaceb770ed9835e93b47b00fc45aad094":[2,0,13,1,8],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171aae9e126d54f2788125a189d076cd610b":[2,0,13,1,0],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ab2906902c746770046f4ad0142a5ca56":[2,0,13,1,3],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ac8fcaa3ebfe01b11bc6647793ecfdd65":[2,0,13,1,11],
+"_s_w___files_8h.html#af7f6cfbda641102716f82e7eada0c171ad892014c992361811c630b4078ce0a97":[2,0,13,1,12],
+"_s_w___files_8h_source.html":[2,0,13],
+"_s_w___flow_8c.html":[2,0,14],
+"_s_w___flow_8c.html#a04e8d1631a4a59d1e6b0a19a378d9a58":[2,0,14,47],
+"_s_w___flow_8c.html#a05b52de692c7063e258aecb8ea1e1ea7":[2,0,14,35],
+"_s_w___flow_8c.html#a0c0cc9901dad95995b6e952ebd8724f0":[2,0,14,28],
+"_s_w___flow_8c.html#a0c18c0a30968c779baf0de402c0acd97":[2,0,14,10],
+"_s_w___flow_8c.html#a0cffd9583b3d7a24fb5be76adf1d8e2f":[2,0,14,41],
+"_s_w___flow_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,14,50],
+"_s_w___flow_8c.html#a13f1f5dba51bd83cffd0dc6189b6b48f":[2,0,14,37],
+"_s_w___flow_8c.html#a1f1ae9f8e8eb169b4a65b09961904353":[2,0,14,17],
+"_s_w___flow_8c.html#a2bb1171e36d1edbad679c9853f4edaec":[2,0,14,40],
+"_s_w___flow_8c.html#a2f351798b2374d9fcc674829cc4d8629":[2,0,14,30],
+"_s_w___flow_8c.html#a321d965606ed16a90b4e8c7cacb4527d":[2,0,14,8],
+"_s_w___flow_8c.html#a4106901c0198609299d856b2b1f88304":[2,0,14,2],
+"_s_w___flow_8c.html#a47663047680e61e8c31f57bf75f885c4":[2,0,14,7],
+"_s_w___flow_8c.html#a49306ae0131b5ee5deabcd489dd2ecd2":[2,0,14,21],
+"_s_w___flow_8c.html#a4ae75944adbc3d91fdf8ee7c9acdd875":[2,0,14,51],
+"_s_w___flow_8c.html#a4c2c9842909f1801ba93729da56cde72":[2,0,14,44],
+"_s_w___flow_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[2,0,14,54],
+"_s_w___flow_8c.html#a63c82bd718ba4c4a9d717b84d719a4c6":[2,0,14,12],
+"_s_w___flow_8c.html#a6a103073a6b5c57f8147661e8f5c5167":[2,0,14,38],
+"_s_w___flow_8c.html#a6a9d5dbcefaf72eece66ed219bcd749f":[2,0,14,1],
+"_s_w___flow_8c.html#a6fa650e1cd78729dd86048231a0709b9":[2,0,14,16],
+"_s_w___flow_8c.html#a6fd11ca6c2749216e3c8f343528a1043":[2,0,14,3],
+"_s_w___flow_8c.html#a7072e00cf0b827b37a0021108b621e02":[2,0,14,36],
+"_s_w___flow_8c.html#a71736c16788e423737e1e931eadc1349":[2,0,14,26],
+"_s_w___flow_8c.html#a77c14ed91b5be2669aaea2f0f883a7fa":[2,0,14,20],
+"_s_w___flow_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,14,49],
+"_s_w___flow_8c.html#a8818b5be37dd0afb89b783b379dad06b":[2,0,14,18],
+"_s_w___flow_8c.html#a8af9c10eba41cf85a5ae63714502572a":[2,0,14,6],
+"_s_w___flow_8c.html#a8c0a9d10b0f3b09cf1a6787a8b0dd564":[2,0,14,32],
+"_s_w___flow_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[2,0,14,53],
+"_s_w___flow_8c.html#a99df09461b6c7d16e0b8c7458bd4fce1":[2,0,14,14],
+"_s_w___flow_8c.html#a9c0ca4d94ce18f12011bd2e14f8daf42":[2,0,14,27],
+"_s_w___flow_8c.html#aa8fe1dc73d8905bd19f03e7a0840357a":[2,0,14,15],
+"_s_w___flow_8c.html#aab4d4bf41087eb17a093d64655478f3f":[2,0,14,42],
+"_s_w___flow_8c.html#aab4fc266c602675aef80e93ed5139776":[2,0,14,33],
+"_s_w___flow_8c.html#ab0f18504dcfd9a72b58c99f57e23d876":[2,0,14,34],
+"_s_w___flow_8c.html#ab5ef548372c71817be103e25a02af4e9":[2,0,14,22],
+"_s_w___flow_8c.html#ab6fd5cbb6002a2f412d4624873b62a25":[2,0,14,39],
+"_s_w___flow_8c.html#ab84481934adb9116e2cb0d6f89de85b1":[2,0,14,43],
+"_s_w___flow_8c.html#abddb8434afad615201035259c82b5e29":[2,0,14,23],
+"_s_w___flow_8c.html#ac0e905fa9ff94ff5067048fff85cfdc1":[2,0,14,11],
+"_s_w___flow_8c.html#ac94101fc6a0cba1725b24a67f300f293":[2,0,14,46],
+"_s_w___flow_8c.html#ace889dddadc2b4542b04b1b131df57ab":[2,0,14,48],
+"_s_w___flow_8c.html#acf398ceb5b7284b7067722a182444c35":[2,0,14,19],
+"_s_w___flow_8c.html#ad26d68f2125f4384c70f2db32ec9a22f":[2,0,14,45],
+"_s_w___flow_8c.html#ad90e59068d73ee7e481b40c68f9901d0":[2,0,14,5],
+"_s_w___flow_8c.html#ae4aece9b7e66bf8fe61898b2ee00c39c":[2,0,14,31],
+"_s_w___flow_8c.html#aec49ecd93d4d0c2fe2c9df413e1f81a1":[2,0,14,25],
+"_s_w___flow_8c.html#aecdeccda6a19c12323c2534a4fb43ad0":[2,0,14,13],
+"_s_w___flow_8c.html#af4cb5e55c8fde8470504e32bb895cddc":[2,0,14,9],
+"_s_w___flow_8c.html#afd8e81430336b9e7794df6cc7f6062df":[2,0,14,24],
+"_s_w___flow_8c.html#afdb5899eb9a7e608fc7a9a9a6d73be8b":[2,0,14,4],
+"_s_w___flow_8c.html#afdb8ced0825a798336ba061396f7016c":[2,0,14,52],
+"_s_w___flow_8c.html#aff0bb7870fbf9020899035540e606250":[2,0,14,0],
+"_s_w___flow_8c.html#aff365308b25ceebadda825bd9aefba6f":[2,0,14,29],
+"_s_w___flow__lib_8c.html":[2,0,15],
+"_s_w___flow__lib_8c.html#a03df632357244d21459a7680fe167dcc":[2,0,15,12],
+"_s_w___flow__lib_8c.html#a04e8d1631a4a59d1e6b0a19a378d9a58":[2,0,15,31],
+"_s_w___flow__lib_8c.html#a07b599ca60ae18b36154e117789b4ba1":[2,0,15,20],
+"_s_w___flow__lib_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,15,33],
+"_s_w___flow__lib_8c.html#a12dc2157867a28f063bac79338e32daf":[2,0,15,15],
+"_s_w___flow__lib_8c.html#a1465316e765759db20d065ace8d0d88e":[2,0,15,4],
+"_s_w___flow__lib_8c.html#a17210cb66ba3a806d36a1ee36819ae09":[2,0,15,27],
+"_s_w___flow__lib_8c.html#a1bd1c1f3527cbe8b6bb9aac1bc737809":[2,0,15,17],
+"_s_w___flow__lib_8c.html#a2bb21c147c1a560a90c765e619297b4c":[2,0,15,1],
+"_s_w___flow__lib_8c.html#a2d2e41ea50a7a1771d0c6273e857b5be":[2,0,15,29],
+"_s_w___flow__lib_8c.html#a2da161c71736e111d04ff43e5955366e":[2,0,15,22],
+"_s_w___flow__lib_8c.html#a3a09cb656bc69c7373a2d01cb06b0700":[2,0,15,18],
+"_s_w___flow__lib_8c.html#a3a889cfc64aa918959e6c331b23c56ab":[2,0,15,16],
+"_s_w___flow__lib_8c.html#a3b87733156e9a39648e59c7ad1754f96":[2,0,15,11],
+"_s_w___flow__lib_8c.html#a3bdea7cd6604199ad49673c073470038":[2,0,15,14],
+"_s_w___flow__lib_8c.html#a41552e80ab8d387b43a80fef49b4d808":[2,0,15,2],
+"_s_w___flow__lib_8c.html#a509909394ec87616d70b0f98ff790bb6":[2,0,15,5],
+"_s_w___flow__lib_8c.html#a5246f7d7fc66d00706dcd395e355aae3":[2,0,15,24],
+"_s_w___flow__lib_8c.html#a58d72436d25f98e09dfe7dad4876e033":[2,0,15,10],
+"_s_w___flow__lib_8c.html#a6fd11ca6c2749216e3c8f343528a1043":[2,0,15,30],
+"_s_w___flow__lib_8c.html#a7293b4daefd4b3104a2d6422c80fe187":[2,0,15,26],
+"_s_w___flow__lib_8c.html#a7570bfc44a681654eea14bc9336f2689":[2,0,15,0],
+"_s_w___flow__lib_8c.html#a877c3d07d472ef356509efb287e89478":[2,0,15,8],
+"_s_w___flow__lib_8c.html#a921d6c39af0fc6fd7b284db250488500":[2,0,15,19],
+"_s_w___flow__lib_8c.html#aa86991fe46bc4a9b6bff3a175064464a":[2,0,15,25],
+"_s_w___flow__lib_8c.html#aa9a45f022035636fd97bd9e01dd3b640":[2,0,15,7],
+"_s_w___flow__lib_8c.html#aad3e73859c6192bacd4ef31615b28c55":[2,0,15,13],
+"_s_w___flow__lib_8c.html#acc1aee51b5bbcb1380efeb93b025f0ad":[2,0,15,21],
+"_s_w___flow__lib_8c.html#ace889dddadc2b4542b04b1b131df57ab":[2,0,15,32],
+"_s_w___flow__lib_8c.html#ad06cdd37a42a5f79b86c25c8e90de0c3":[2,0,15,3],
+"_s_w___flow__lib_8c.html#add74b9b9112cbea66a065aed2a3c77b8":[2,0,15,23],
+"_s_w___flow__lib_8c.html#ade5212bfa19c58306595cafe95df820c":[2,0,15,9],
+"_s_w___flow__lib_8c.html#af6e4f9a8a045eb85be00fa075a38e784":[2,0,15,28],
+"_s_w___flow__lib_8c.html#af96898fb97d62e17b02d0c6f719151ce":[2,0,15,6],
+"_s_w___flow__lib_8c.html#afdb8ced0825a798336ba061396f7016c":[2,0,15,34],
+"_s_w___flow__lib_8h.html":[2,0,16],
+"_s_w___flow__lib_8h.html#a07b599ca60ae18b36154e117789b4ba1":[2,0,16,23],
+"_s_w___flow__lib_8h.html#a12dc2157867a28f063bac79338e32daf":[2,0,16,19],
+"_s_w___flow__lib_8h.html#a1465316e765759db20d065ace8d0d88e":[2,0,16,11],
+"_s_w___flow__lib_8h.html#a17210cb66ba3a806d36a1ee36819ae09":[2,0,16,28],
+"_s_w___flow__lib_8h.html#a1bd1c1f3527cbe8b6bb9aac1bc737809":[2,0,16,21],
+"_s_w___flow__lib_8h.html#a2d2e41ea50a7a1771d0c6273e857b5be":[2,0,16,30],
+"_s_w___flow__lib_8h.html#a2da161c71736e111d04ff43e5955366e":[2,0,16,25],
+"_s_w___flow__lib_8h.html#a3a889cfc64aa918959e6c331b23c56ab":[2,0,16,20],
+"_s_w___flow__lib_8h.html#a3bdea7cd6604199ad49673c073470038":[2,0,16,18],
+"_s_w___flow__lib_8h.html#a41552e80ab8d387b43a80fef49b4d808":[2,0,16,8],
+"_s_w___flow__lib_8h.html#a443e9a21531fe8f7e72d0590e08fab22":[2,0,16,3],
+"_s_w___flow__lib_8h.html#a509909394ec87616d70b0f98ff790bb6":[2,0,16,12],
+"_s_w___flow__lib_8h.html#a541d566d0e6d866c1116d3abf45dedad":[2,0,16,7],
+"_s_w___flow__lib_8h.html#a58d72436d25f98e09dfe7dad4876e033":[2,0,16,17],
+"_s_w___flow__lib_8h.html#a65c9896ad79cff15600e04ac3aaef23a":[2,0,16,5],
+"_s_w___flow__lib_8h.html#a719179c043543e75ab34fa0279be09d3":[2,0,16,22],
+"_s_w___flow__lib_8h.html#a7293b4daefd4b3104a2d6422c80fe187":[2,0,16,27],
+"_s_w___flow__lib_8h.html#a745edb311b1af71f4b09347bfd865f48":[2,0,16,2],
+"_s_w___flow__lib_8h.html#a877c3d07d472ef356509efb287e89478":[2,0,16,15],
+"_s_w___flow__lib_8h.html#a9e0878124e3d15f54b5b1ba16b492577":[2,0,16,1],
+"_s_w___flow__lib_8h.html#aa86991fe46bc4a9b6bff3a175064464a":[2,0,16,26],
+"_s_w___flow__lib_8h.html#aa9a45f022035636fd97bd9e01dd3b640":[2,0,16,14],
+"_s_w___flow__lib_8h.html#acc1aee51b5bbcb1380efeb93b025f0ad":[2,0,16,24],
+"_s_w___flow__lib_8h.html#acff8f72e4dede0c8698523d1b7885ba7":[2,0,16,6],
+"_s_w___flow__lib_8h.html#ad06cdd37a42a5f79b86c25c8e90de0c3":[2,0,16,10],
+"_s_w___flow__lib_8h.html#ade5212bfa19c58306595cafe95df820c":[2,0,16,16],
+"_s_w___flow__lib_8h.html#af12c31698ca0ea152f277050d252ce79":[2,0,16,4],
+"_s_w___flow__lib_8h.html#af5e16e510229df213c7e3d2882390979":[2,0,16,9],
+"_s_w___flow__lib_8h.html#af6e4f9a8a045eb85be00fa075a38e784":[2,0,16,29],
+"_s_w___flow__lib_8h.html#af96898fb97d62e17b02d0c6f719151ce":[2,0,16,13],
+"_s_w___flow__lib_8h_source.html":[2,0,16],
+"_s_w___flow__subs_8h.html":[2,0,17],
+"_s_w___flow__subs_8h.html#a7a6303508b80765f963ac5c741749331":[2,0,17,0],
+"_s_w___flow__subs_8h_source.html":[2,0,17],
+"_s_w___main_8c.html":[2,0,18],
+"_s_w___main_8c.html#a00d494d2df26cd46f3f793b34d4c1741":[2,0,18,4],
+"_s_w___main_8c.html#a3c04138a5bfe5d72780bb7e82a18e627":[2,0,18,1],
+"_s_w___main_8c.html#a3db696ae82419b92cd8d064375e3ceaa":[2,0,18,5],
+"_s_w___main_8c.html#a46e5208554b79bebc83a481785e273c6":[2,0,18,3],
+"_s_w___main_8c.html#a4c51093e2a76fe0f02e21a6c1e6d9062":[2,0,18,2],
+"_s_w___main_8c.html#a562be42d6e61053fb27a605579e50c22":[2,0,18,0],
+"_s_w___main_8c.html#a89d055087b91bee4772110f089a82eb3":[2,0,18,8],
+"_s_w___main_8c.html#ac16dab5cefce6fed135c20d1bae372a5":[2,0,18,6],
+"_s_w___main_8c.html#ada051a4499e33e1d0fe82eeeee6d1699":[2,0,18,7],
+"_s_w___main___function_8c.html":[2,0,19],
+"_s_w___markov_8c.html":[2,0,20],
+"_s_w___markov_8c.html#a113409159a76f013e2a9ffb4ebc4a8c9":[2,0,20,0],
+"_s_w___markov_8c.html#a29f5ff534069ae52995a51c7c186d1c2":[2,0,20,4],
+"_s_w___markov_8c.html#a6153b2f3821b21e1284380b6423d22e6":[2,0,20,1],
+"_s_w___markov_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,20,5],
+"_s_w___markov_8c.html#a90a854462e03f8a79c1c2755f8bcc668":[2,0,20,3],
+"_s_w___markov_8c.html#afcd7e31841f2690ca09a7b5f6e6abeee":[2,0,20,2],
+"_s_w___markov_8h.html":[2,0,21],
+"_s_w___markov_8h.html#a113409159a76f013e2a9ffb4ebc4a8c9":[2,0,21,1],
+"_s_w___markov_8h.html#a6153b2f3821b21e1284380b6423d22e6":[2,0,21,2],
+"_s_w___markov_8h.html#a90a854462e03f8a79c1c2755f8bcc668":[2,0,21,4],
+"_s_w___markov_8h.html#afcd7e31841f2690ca09a7b5f6e6abeee":[2,0,21,3],
+"_s_w___markov_8h_source.html":[2,0,21],
+"_s_w___model_8c.html":[2,0,22],
+"_s_w___model_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,22,5],
+"_s_w___model_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,22,4],
+"_s_w___model_8c.html#a8c832846bf416df3351a02024a99448e":[2,0,22,1],
+"_s_w___model_8c.html#a8d0cc13f8474418e9534a055b49cbcd9":[2,0,22,0],
+"_s_w___model_8c.html#aaaa6ecac4aec2768db6ac5c3c22801f3":[2,0,22,3],
+"_s_w___model_8c.html#ad092917290025f5984d564637dff94a7":[2,0,22,2],
+"_s_w___model_8h.html":[2,0,23],
+"_s_w___model_8h.html#a8c832846bf416df3351a02024a99448e":[2,0,23,2],
+"_s_w___model_8h.html#a8d0cc13f8474418e9534a055b49cbcd9":[2,0,23,1],
+"_s_w___model_8h.html#aaaa6ecac4aec2768db6ac5c3c22801f3":[2,0,23,4],
+"_s_w___model_8h.html#abfc65ff89a725366ac8c2eceb11f031e":[2,0,23,3],
+"_s_w___model_8h_source.html":[2,0,23],
+"_s_w___output_8c.html":[2,0,24],
+"_s_w___output_8c.html#a0403c81a40f6c4b5a34be286fb003019":[2,0,24,11],
+"_s_w___output_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,24,12],
+"_s_w___output_8c.html#a288bfdd3a3a04a61564b9cad8ef08a1f":[2,0,24,4],
+"_s_w___output_8c.html#a3fa5549d021cf21378728eca2ebf91c4":[2,0,24,0]
};
diff --git a/doc/html/navtreeindex1.js b/doc/html/navtreeindex1.js
index b141cded5..dc9035bcc 100644
--- a/doc/html/navtreeindex1.js
+++ b/doc/html/navtreeindex1.js
@@ -1,253 +1,253 @@
var NAVTREEINDEX1 =
{
-"_s_w___output_8c.html#a46e5208554b79bebc83a481785e273c6":[1,0,24,8],
-"_s_w___output_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[1,0,24,14],
-"_s_w___output_8c.html#a53bb40694dbd09aee64905841fa711d4":[1,0,24,1],
-"_s_w___output_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[1,0,24,15],
-"_s_w___output_8c.html#a6926e3bfd4bd7577bcedd48b7ed78e03":[1,0,24,6],
-"_s_w___output_8c.html#a74b456e0f4eb9664213e6f7745c6edde":[1,0,24,5],
-"_s_w___output_8c.html#a758ba563f989ca4584558dfd664c613f":[1,0,24,9],
-"_s_w___output_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,24,10],
-"_s_w___output_8c.html#a93912f54cea8b60d2fda279448ca8449":[1,0,24,7],
-"_s_w___output_8c.html#ae06df802aa17b479cb10172f7d1903f2":[1,0,24,2],
-"_s_w___output_8c.html#af0d316dbb4870395564ef5530adc3f93":[1,0,24,3],
-"_s_w___output_8c.html#afdb8ced0825a798336ba061396f7016c":[1,0,24,13],
-"_s_w___output_8h.html":[1,0,25],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73":[1,0,25,45],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50":[1,0,25,45,24],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a0dab75d46291ed3e30f7ba98acbbbfab":[1,0,25,45,19],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a0e14e6206dab04fbcd510345b7c9e300":[1,0,25,45,22],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a29604c729c37bb7a751f132b84711238":[1,0,25,45,7],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a2ae19f75d932ae95504eddc4d4d9ac64":[1,0,25,45,20],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a35a4fee41bcae815ab9c6e0e9989ec72":[1,0,25,45,4],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a35be171aa68edd06f8f2390b816fb566":[1,0,25,45,17],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a432272349ac16eed9e1cc3fa061242af":[1,0,25,45,12],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d":[1,0,25,45,6],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a4d0c50f149d7307334fc75d0ad0245d9":[1,0,25,45,5],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0":[1,0,25,45,3],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7":[1,0,25,45,28],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a6a0c8a3ce3aac770db080655a3e7e14c":[1,0,25,45,11],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a70e5c820bf4f468537eaaafeac5ee426":[1,0,25,45,25],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a7ddbe08883fb61c09f04d7b894426621":[1,0,25,45,23],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0":[1,0,25,45,1],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a8f38156f17a4b183f41ebcc30d936cf9":[1,0,25,45,21],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45":[1,0,25,45,29],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a978fe191b559abd08d8a85642d344ae7":[1,0,25,45,26],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ab77322ec97a2250b742fa5c3df5ad128":[1,0,25,45,16],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad0d81bb9c03bb958e92632d26f694338":[1,0,25,45,8],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad59ad229cfd7a729ded93d16622d2281":[1,0,25,45,10],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad6282a57b0244a2c62728855e702bd74":[1,0,25,45,13],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03":[1,0,25,45,0],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ae0c7a3e9e72710e884ee19f5618970f4":[1,0,25,45,15],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ae3728dd18715885da407feff390d693e":[1,0,25,45,9],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73aea4b628e84d77ecd552e9c99048e49a5":[1,0,25,45,2],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73aeccc1ba66b3940055118968505ed9523":[1,0,25,45,18],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5":[1,0,25,45,27],
-"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73afdd833d2248c0b31b962b1abc59e6a4b":[1,0,25,45,14],
-"_s_w___output_8h.html#a03ce06a9692d3adc3e48f572f26bbc1a":[1,0,25,27],
-"_s_w___output_8h.html#a179065dcb87be59208b8a31bf42d261b":[1,0,25,26],
-"_s_w___output_8h.html#a1bd0f50e2d8aa0b1db1f2750b603fc33":[1,0,25,41],
-"_s_w___output_8h.html#a201b3943e4dbbd094263a1baf550a09c":[1,0,25,22],
-"_s_w___output_8h.html#a213160cd3d072e7079143ee4f4e2ee06":[1,0,25,24],
-"_s_w___output_8h.html#a288bfdd3a3a04a61564b9cad8ef08a1f":[1,0,25,51],
-"_s_w___output_8h.html#a2b1dd68e49bd264d92c70bb17fc102d2":[1,0,25,42],
-"_s_w___output_8h.html#a2d344e2c91fa5058f4612182a94c15ab":[1,0,25,29],
-"_s_w___output_8h.html#a3808e4202866acc696dbe7e0fbb2f2a5":[1,0,25,25],
-"_s_w___output_8h.html#a3edbf6d44d22737042ad072ce90e675f":[1,0,25,13],
-"_s_w___output_8h.html#a472963152480bcc0016b4b399d8e460c":[1,0,25,15],
-"_s_w___output_8h.html#a4842f281ded0e865527479d9b1002f34":[1,0,25,14],
-"_s_w___output_8h.html#a531e27bc55c78f5134678d0623c697b1":[1,0,25,20],
-"_s_w___output_8h.html#a53bb40694dbd09aee64905841fa711d4":[1,0,25,48],
-"_s_w___output_8h.html#a5cdd9c7bda4e1a4510d7cf60b46ac7f7":[1,0,25,36],
-"_s_w___output_8h.html#a6347ac4541b0f5c1afa6c71430dc4ce4":[1,0,25,1],
-"_s_w___output_8h.html#a647ccbc9b71652417b3c3f72b146f0bc":[1,0,25,39],
-"_s_w___output_8h.html#a6926e3bfd4bd7577bcedd48b7ed78e03":[1,0,25,53],
-"_s_w___output_8h.html#a6af9f97de70abfc55db9580ba412ca3d":[1,0,25,17],
-"_s_w___output_8h.html#a74b456e0f4eb9664213e6f7745c6edde":[1,0,25,52],
-"_s_w___output_8h.html#a79f8f7f406db4e0d528440c6870081f7":[1,0,25,11],
-"_s_w___output_8h.html#a8444ee195d17de7e758028d4187d26a5":[1,0,25,9],
-"_s_w___output_8h.html#a890f2f4f43109c5c128cec4be565119e":[1,0,25,3],
-"_s_w___output_8h.html#a8f91b3cf767f6f8e8f593b447a6cbbc7":[1,0,25,35],
-"_s_w___output_8h.html#a93912f54cea8b60d2fda279448ca8449":[1,0,25,54],
-"_s_w___output_8h.html#a9567f1221ef0b0a4dcafb787c0d1ac4c":[1,0,25,43],
-"_s_w___output_8h.html#a997e3d0b97d225fcc9549b0f4fe9a18a":[1,0,25,23],
-"_s_w___output_8h.html#a9b4ce71575257d1fb4eab2f372868719":[1,0,25,19],
-"_s_w___output_8h.html#aa15c450a518e7144ebeb43a510e99576":[1,0,25,31],
-"_s_w___output_8h.html#aa55936417c12da2b8bc90566ae450620":[1,0,25,4],
-"_s_w___output_8h.html#aa672c5cdc6eaaaa0e25856b7c81f4fec":[1,0,25,44],
-"_s_w___output_8h.html#aa7612da2dd2e721ba9f48f23f26cf0bd":[1,0,25,33],
-"_s_w___output_8h.html#aa836896b52395cd9870b09631dc1bf8e":[1,0,25,30],
-"_s_w___output_8h.html#aac824d412892327b84b19939751e9bf3":[1,0,25,6],
-"_s_w___output_8h.html#ab1394321bd8d71aed0690eed159ebdf2":[1,0,25,34],
-"_s_w___output_8h.html#abbd7520834a88ae3bdf12ad4812525b1":[1,0,25,10],
-"_s_w___output_8h.html#ac22b26e25ca088560962c1e3b7c938db":[1,0,25,5],
-"_s_w___output_8h.html#ac5ac3f49cc9add8082bddf0536f8f238":[1,0,25,8],
-"_s_w___output_8h.html#acbcddbc2944a2bb1f964ff534c9b97ba":[1,0,25,12],
-"_s_w___output_8h.html#acf7157dffdc51401199c2cdd656dbaf5":[1,0,25,32],
-"_s_w___output_8h.html#ad024145315713e83bd6f8363fb0539de":[1,0,25,2],
-"_s_w___output_8h.html#ad0dd7a6892d29b47e33e27b4d4dab2f8":[1,0,25,37],
-"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1c":[1,0,25,46],
-"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05":[1,0,25,46,3],
-"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626":[1,0,25,46,0],
-"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca89415921fff384c5416b5156bda31765":[1,0,25,46,2],
-"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1caa8e1488252071239232b78f183c72917":[1,0,25,46,1],
-"_s_w___output_8h.html#ad85a058f65275eee148281c9dbbfab80":[1,0,25,7],
-"_s_w___output_8h.html#aded347ed8aef731d3aab06bf27cc0b36":[1,0,25,55],
-"_s_w___output_8h.html#adf2018f9375c671489b5af769c4016a8":[1,0,25,40],
-"_s_w___output_8h.html#ae06df802aa17b479cb10172f7d1903f2":[1,0,25,49],
-"_s_w___output_8h.html#aeab56a7000588af57d1aab705252b21f":[1,0,25,21],
-"_s_w___output_8h.html#aebe460eb3369765c76b645faa163a82e":[1,0,25,38],
-"_s_w___output_8h.html#aed70dac899556c1aa15c36e275064384":[1,0,25,16],
-"_s_w___output_8h.html#af06fb092a18e93aedd71c3db38dc5b8b":[1,0,25,18],
-"_s_w___output_8h.html#af0d316dbb4870395564ef5530adc3f93":[1,0,25,50],
-"_s_w___output_8h.html#af2ce7e2d58f57997eec216c8d41d6f0c":[1,0,25,28],
-"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362":[1,0,25,47],
-"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362a2888085c254d30dac3d53321ddb691af":[1,0,25,47,3],
-"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362a63670e8b5d3242da69821492929fa0d6":[1,0,25,47,2],
-"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362acc23c6d47c35d8538cb1cec378641247":[1,0,25,47,0],
-"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362af6555b0cd66fac469be5e1f4542c6052":[1,0,25,47,1],
-"_s_w___output_8h_source.html":[1,0,25],
-"_s_w___r__init_8c.html":[1,0,26],
-"_s_w___r__init_8c.html#a12c5324cc2d9de1a3993dbd113de2fd9":[1,0,26,1],
-"_s_w___r__init_8c.html#a25be7be717dbb98733617edc1f2e0f02":[1,0,26,3],
-"_s_w___r__init_8c.html#a48cfcac76cca8ad995276bac0f160cbc":[1,0,26,2],
-"_s_w___r__init_8c.html#a9b86e018088875b36aba2761f4a2807e":[1,0,26,4],
-"_s_w___r__init_8c.html#abb8983e166f2f4b4b6e1a8313e567cda":[1,0,26,0],
-"_s_w___r__lib_8c.html":[1,0,27],
-"_s_w___r__lib_8h.html":[1,0,28],
-"_s_w___r__lib_8h_source.html":[1,0,28],
-"_s_w___site_8c.html":[1,0,29],
-"_s_w___site_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,29,6],
-"_s_w___site_8c.html#a46e5208554b79bebc83a481785e273c6":[1,0,29,5],
-"_s_w___site_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[1,0,29,7],
-"_s_w___site_8c.html#abcdd55367ea6d330401f0cf306fd8578":[1,0,29,4],
-"_s_w___site_8c.html#ac9740b7b813c160d7172364950a115bc":[1,0,29,3],
-"_s_w___site_8c.html#ae00ab6c54fd889df06e0ed8eb72c01af":[1,0,29,2],
-"_s_w___site_8c.html#af1d0a7df54820984363078c181b23b7d":[1,0,29,1],
-"_s_w___site_8c.html#af43568af2e8878619d5210ce73c0533a":[1,0,29,0],
-"_s_w___site_8h.html":[1,0,30],
-"_s_w___site_8h.html#a6fece0d49f08459808b94a38696a4180":[1,0,30,2],
-"_s_w___site_8h.html#ac9740b7b813c160d7172364950a115bc":[1,0,30,5],
-"_s_w___site_8h.html#ae00ab6c54fd889df06e0ed8eb72c01af":[1,0,30,4],
-"_s_w___site_8h.html#af1d0a7df54820984363078c181b23b7d":[1,0,30,3],
-"_s_w___site_8h_source.html":[1,0,30],
-"_s_w___sky_8c.html":[1,0,31],
-"_s_w___sky_8c.html#a09861339072e89448ab98d436a898636":[1,0,31,0],
-"_s_w___sky_8c.html#a20224192c9ba86e3889fd3b1730295ea":[1,0,31,2],
-"_s_w___sky_8c.html#a4ae75944adbc3d91fdf8ee7c9acdd875":[1,0,31,3],
-"_s_w___sky_8c.html#af926d383d17bda1b210d39b2320b2008":[1,0,31,1],
-"_s_w___sky_8h.html":[1,0,32],
-"_s_w___sky_8h.html#a09861339072e89448ab98d436a898636":[1,0,32,1],
-"_s_w___sky_8h.html#a20224192c9ba86e3889fd3b1730295ea":[1,0,32,3],
-"_s_w___sky_8h.html#af926d383d17bda1b210d39b2320b2008":[1,0,32,2],
-"_s_w___sky_8h_source.html":[1,0,32],
-"_s_w___soil_water_8c.html":[1,0,33],
-"_s_w___soil_water_8c.html#a105a153ddf27179bbccb86c288926d4e":[1,0,33,9],
-"_s_w___soil_water_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,33,13],
-"_s_w___soil_water_8c.html#a15e0502fb9c5356bc78240f3240c42aa":[1,0,33,7],
-"_s_w___soil_water_8c.html#a27c49934c33e702aa2d942d7eed1b841":[1,0,33,5],
-"_s_w___soil_water_8c.html#a67d7bd8d16c69d650ade7002b6d07750":[1,0,33,8],
-"_s_w___soil_water_8c.html#a6a9d5dbcefaf72eece66ed219bcd749f":[1,0,33,11],
-"_s_w___soil_water_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,33,12],
-"_s_w___soil_water_8c.html#a98f205f5217dcb6a4ad1535ac3ebc79e":[1,0,33,10],
-"_s_w___soil_water_8c.html#aa6a58fb26f7ae185badd11539fc175d7":[1,0,33,0],
-"_s_w___soil_water_8c.html#aad28c324317c639162dc02a9ca41b050":[1,0,33,2],
-"_s_w___soil_water_8c.html#ac0531314f7790b2c914bbe38cf51f04c":[1,0,33,6],
-"_s_w___soil_water_8c.html#ac5e856e2b9ce7f50bf80a4b68990cdc3":[1,0,33,4],
-"_s_w___soil_water_8c.html#ad186322d66e90e3b398c571d5f51b306":[1,0,33,1],
-"_s_w___soil_water_8c.html#ad62fe931e2c8b2075d1d5a4df4b87151":[1,0,33,3],
-"_s_w___soil_water_8c.html#afdb8ced0825a798336ba061396f7016c":[1,0,33,14],
-"_s_w___soil_water_8h.html":[1,0,34],
-"_s_w___soil_water_8h.html#a105a153ddf27179bbccb86c288926d4e":[1,0,34,13],
-"_s_w___soil_water_8h.html#a15e0502fb9c5356bc78240f3240c42aa":[1,0,34,11],
-"_s_w___soil_water_8h.html#a27c49934c33e702aa2d942d7eed1b841":[1,0,34,9],
-"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2":[1,0,34,3],
-"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2a0804d509577b39ef0d76009ec07e8729":[1,0,34,3,0],
-"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2a17e6f463e6708a7e18ca84739312ad88":[1,0,34,3,1],
-"_s_w___soil_water_8h.html#a67d7bd8d16c69d650ade7002b6d07750":[1,0,34,12],
-"_s_w___soil_water_8h.html#a98f205f5217dcb6a4ad1535ac3ebc79e":[1,0,34,14],
-"_s_w___soil_water_8h.html#aa6a58fb26f7ae185badd11539fc175d7":[1,0,34,4],
-"_s_w___soil_water_8h.html#aad28c324317c639162dc02a9ca41b050":[1,0,34,6],
-"_s_w___soil_water_8h.html#ac0531314f7790b2c914bbe38cf51f04c":[1,0,34,10],
-"_s_w___soil_water_8h.html#ac5e856e2b9ce7f50bf80a4b68990cdc3":[1,0,34,8],
-"_s_w___soil_water_8h.html#ad186322d66e90e3b398c571d5f51b306":[1,0,34,5],
-"_s_w___soil_water_8h.html#ad62fe931e2c8b2075d1d5a4df4b87151":[1,0,34,7],
-"_s_w___soil_water_8h_source.html":[1,0,34],
-"_s_w___times_8h.html":[1,0,35],
-"_s_w___times_8h.html#a007dadd83840adf66fa92d42546d7283":[1,0,35,2],
-"_s_w___times_8h.html#a03162deb667f2ff9dcc31571858cc5f1":[1,0,35,4],
-"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918":[1,0,35,7],
-"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918a029fabeb451b8545c8e5f5908549bc49":[1,0,35,7,1],
-"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918a98e439f15f69767d6030e63a926aa0be":[1,0,35,7,0],
-"_s_w___times_8h.html#ac0f3d6f030eaea7119cd2ddd9d05de61":[1,0,35,6],
-"_s_w___times_8h.html#ad01c1bae9947589a9fad290f7ce72b98":[1,0,35,1],
-"_s_w___times_8h.html#ada5c987fa013164310176535b71d34f6":[1,0,35,3],
-"_s_w___times_8h.html#ae15bab367a811d76ab6b9bde26bfec33":[1,0,35,5],
-"_s_w___times_8h_source.html":[1,0,35],
-"_s_w___veg_estab_8c.html":[1,0,36],
-"_s_w___veg_estab_8c.html#a01bd300959e7ed05803e03188c1091a1":[1,0,36,0],
-"_s_w___veg_estab_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[1,0,36,7],
-"_s_w___veg_estab_8c.html#a46e5208554b79bebc83a481785e273c6":[1,0,36,5],
-"_s_w___veg_estab_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[1,0,36,9],
-"_s_w___veg_estab_8c.html#a56324ee99877460f46a98d351ce6f885":[1,0,36,2],
-"_s_w___veg_estab_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[1,0,36,10],
-"_s_w___veg_estab_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,36,6],
-"_s_w___veg_estab_8c.html#ad282fdcda9783fe422fc1381f02e92d9":[1,0,36,3],
-"_s_w___veg_estab_8c.html#ad709b2c5fa0613c8abed1dba6d8cdb7a":[1,0,36,1],
-"_s_w___veg_estab_8c.html#ae22bd4cee0bc829b7273d37419a0a1df":[1,0,36,4],
-"_s_w___veg_estab_8c.html#afdb8ced0825a798336ba061396f7016c":[1,0,36,8],
-"_s_w___veg_estab_8h.html":[1,0,37],
-"_s_w___veg_estab_8h.html#a01bd300959e7ed05803e03188c1091a1":[1,0,37,5],
-"_s_w___veg_estab_8h.html#a56324ee99877460f46a98d351ce6f885":[1,0,37,7],
-"_s_w___veg_estab_8h.html#a6d06912bdde61ca9b0b519df6e0f16fc":[1,0,37,8],
-"_s_w___veg_estab_8h.html#abdc6714101f83c4348ab5f5338999b18":[1,0,37,4],
-"_s_w___veg_estab_8h.html#ad282fdcda9783fe422fc1381f02e92d9":[1,0,37,9],
-"_s_w___veg_estab_8h.html#ad709b2c5fa0613c8abed1dba6d8cdb7a":[1,0,37,6],
-"_s_w___veg_estab_8h.html#adc47d4a3c4379c95fff1ac6a30ea246c":[1,0,37,3],
-"_s_w___veg_estab_8h.html#ae22bd4cee0bc829b7273d37419a0a1df":[1,0,37,10],
-"_s_w___veg_estab_8h_source.html":[1,0,37],
-"_s_w___veg_prod_8c.html":[1,0,38],
-"_s_w___veg_prod_8c.html#a2ad9757141b05a2db17a8ff34467fb85":[1,0,38,4],
-"_s_w___veg_prod_8c.html#a46e5208554b79bebc83a481785e273c6":[1,0,38,3],
-"_s_w___veg_prod_8c.html#a637e8e57ca98f424e3e782d499f19368":[1,0,38,1],
-"_s_w___veg_prod_8c.html#a78fcfdb968b2355eee5a8f61bbd01270":[1,0,38,2],
-"_s_w___veg_prod_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[1,0,38,5],
-"_s_w___veg_prod_8c.html#abc0d9fc7beba00cae0821617b1013ab5":[1,0,38,0],
-"_s_w___veg_prod_8h.html":[1,0,39],
-"_s_w___veg_prod_8h.html#a637e8e57ca98f424e3e782d499f19368":[1,0,39,3],
-"_s_w___veg_prod_8h.html#a78fcfdb968b2355eee5a8f61bbd01270":[1,0,39,4],
-"_s_w___veg_prod_8h.html#abc0d9fc7beba00cae0821617b1013ab5":[1,0,39,2],
-"_s_w___veg_prod_8h_source.html":[1,0,39],
-"_s_w___weather_8c.html":[1,0,40],
-"_s_w___weather_8c.html#a0dfd736f350b6a1fc05ae462f07375d2":[1,0,40,5],
-"_s_w___weather_8c.html#a17660a2e09eae210374567fbd558712b":[1,0,40,6],
-"_s_w___weather_8c.html#a29f5ff534069ae52995a51c7c186d1c2":[1,0,40,7],
-"_s_w___weather_8c.html#a526d1d74ee38f58df7a20ff52a70ec7b":[1,0,40,2],
-"_s_w___weather_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[1,0,40,9],
-"_s_w___weather_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[1,0,40,8],
-"_s_w___weather_8c.html#a8e3dae10d74340f83f9d4ecba7493f2c":[1,0,40,4],
-"_s_w___weather_8c.html#ab3b031bdd38b8694d1d506085b8117fb":[1,0,40,3],
-"_s_w___weather_8c.html#ad5e5ffe16779cfa4aeecd4d2597a2add":[1,0,40,0],
-"_s_w___weather_8c.html#ae3ced72037648c80ea72aaf4b7bf5f5d":[1,0,40,1],
-"_s_w___weather_8h.html":[1,0,41],
-"_s_w___weather_8h.html#a02803ec7a1a165d6279b602fb57d556a":[1,0,41,12],
-"_s_w___weather_8h.html#a0dfd736f350b6a1fc05ae462f07375d2":[1,0,41,10],
-"_s_w___weather_8h.html#a17660a2e09eae210374567fbd558712b":[1,0,41,11],
-"_s_w___weather_8h.html#a526d1d74ee38f58df7a20ff52a70ec7b":[1,0,41,7],
-"_s_w___weather_8h.html#a7d7a48bfc425c34e26ea6ec16aa8478e":[1,0,41,4],
-"_s_w___weather_8h.html#a8e3dae10d74340f83f9d4ecba7493f2c":[1,0,41,9],
-"_s_w___weather_8h.html#ab3b031bdd38b8694d1d506085b8117fb":[1,0,41,8],
-"_s_w___weather_8h.html#ad5e5ffe16779cfa4aeecd4d2597a2add":[1,0,41,5],
-"_s_w___weather_8h.html#ae3ced72037648c80ea72aaf4b7bf5f5d":[1,0,41,6],
-"_s_w___weather_8h_source.html":[1,0,41],
-"_times_8c.html":[1,0,42],
-"_times_8c.html#a087ca61b43a568e8023d02e70207818a":[1,0,42,6],
-"_times_8c.html#a118171d8631e8be0ad31cd4270128a73":[1,0,42,13],
-"_times_8c.html#a12505c3ca0bd0af0455aefd10fb543fc":[1,0,42,34],
-"_times_8c.html#a19f6a46355208d0c822ab43d4d137d14":[1,0,42,18],
-"_times_8c.html#a1d1327b61cf229814149bf455c9c8262":[1,0,42,25],
-"_times_8c.html#a2b02c9296a421c96a64eedab2e27fcba":[1,0,42,7],
-"_times_8c.html#a2c7531da95b7fd0dffd8a172042166e4":[1,0,42,33],
-"_times_8c.html#a3599fc76bc36c9d6db6f572304fcfe66":[1,0,42,26],
-"_times_8c.html#a366734c22067f96c83a47f6cf64f471e":[1,0,42,0]
+"_s_w___output_8c.html#a46e5208554b79bebc83a481785e273c6":[2,0,24,8],
+"_s_w___output_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[2,0,24,14],
+"_s_w___output_8c.html#a53bb40694dbd09aee64905841fa711d4":[2,0,24,1],
+"_s_w___output_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[2,0,24,15],
+"_s_w___output_8c.html#a6926e3bfd4bd7577bcedd48b7ed78e03":[2,0,24,6],
+"_s_w___output_8c.html#a74b456e0f4eb9664213e6f7745c6edde":[2,0,24,5],
+"_s_w___output_8c.html#a758ba563f989ca4584558dfd664c613f":[2,0,24,9],
+"_s_w___output_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,24,10],
+"_s_w___output_8c.html#a93912f54cea8b60d2fda279448ca8449":[2,0,24,7],
+"_s_w___output_8c.html#ae06df802aa17b479cb10172f7d1903f2":[2,0,24,2],
+"_s_w___output_8c.html#af0d316dbb4870395564ef5530adc3f93":[2,0,24,3],
+"_s_w___output_8c.html#afdb8ced0825a798336ba061396f7016c":[2,0,24,13],
+"_s_w___output_8h.html":[2,0,25],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73":[2,0,25,45],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50":[2,0,25,45,24],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a0dab75d46291ed3e30f7ba98acbbbfab":[2,0,25,45,19],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a0e14e6206dab04fbcd510345b7c9e300":[2,0,25,45,22],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a29604c729c37bb7a751f132b84711238":[2,0,25,45,7],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a2ae19f75d932ae95504eddc4d4d9ac64":[2,0,25,45,20],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a35a4fee41bcae815ab9c6e0e9989ec72":[2,0,25,45,4],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a35be171aa68edd06f8f2390b816fb566":[2,0,25,45,17],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a432272349ac16eed9e1cc3fa061242af":[2,0,25,45,12],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d":[2,0,25,45,6],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a4d0c50f149d7307334fc75d0ad0245d9":[2,0,25,45,5],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0":[2,0,25,45,3],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7":[2,0,25,45,28],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a6a0c8a3ce3aac770db080655a3e7e14c":[2,0,25,45,11],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a70e5c820bf4f468537eaaafeac5ee426":[2,0,25,45,25],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a7ddbe08883fb61c09f04d7b894426621":[2,0,25,45,23],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0":[2,0,25,45,1],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a8f38156f17a4b183f41ebcc30d936cf9":[2,0,25,45,21],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45":[2,0,25,45,29],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73a978fe191b559abd08d8a85642d344ae7":[2,0,25,45,26],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ab77322ec97a2250b742fa5c3df5ad128":[2,0,25,45,16],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad0d81bb9c03bb958e92632d26f694338":[2,0,25,45,8],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad59ad229cfd7a729ded93d16622d2281":[2,0,25,45,10],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ad6282a57b0244a2c62728855e702bd74":[2,0,25,45,13],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03":[2,0,25,45,0],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ae0c7a3e9e72710e884ee19f5618970f4":[2,0,25,45,15],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73ae3728dd18715885da407feff390d693e":[2,0,25,45,9],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73aea4b628e84d77ecd552e9c99048e49a5":[2,0,25,45,2],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73aeccc1ba66b3940055118968505ed9523":[2,0,25,45,18],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5":[2,0,25,45,27],
+"_s_w___output_8h.html#a02baefdececdc5dc8b1b48f924a03d73afdd833d2248c0b31b962b1abc59e6a4b":[2,0,25,45,14],
+"_s_w___output_8h.html#a03ce06a9692d3adc3e48f572f26bbc1a":[2,0,25,27],
+"_s_w___output_8h.html#a179065dcb87be59208b8a31bf42d261b":[2,0,25,26],
+"_s_w___output_8h.html#a1bd0f50e2d8aa0b1db1f2750b603fc33":[2,0,25,41],
+"_s_w___output_8h.html#a201b3943e4dbbd094263a1baf550a09c":[2,0,25,22],
+"_s_w___output_8h.html#a213160cd3d072e7079143ee4f4e2ee06":[2,0,25,24],
+"_s_w___output_8h.html#a288bfdd3a3a04a61564b9cad8ef08a1f":[2,0,25,51],
+"_s_w___output_8h.html#a2b1dd68e49bd264d92c70bb17fc102d2":[2,0,25,42],
+"_s_w___output_8h.html#a2d344e2c91fa5058f4612182a94c15ab":[2,0,25,29],
+"_s_w___output_8h.html#a3808e4202866acc696dbe7e0fbb2f2a5":[2,0,25,25],
+"_s_w___output_8h.html#a3edbf6d44d22737042ad072ce90e675f":[2,0,25,13],
+"_s_w___output_8h.html#a472963152480bcc0016b4b399d8e460c":[2,0,25,15],
+"_s_w___output_8h.html#a4842f281ded0e865527479d9b1002f34":[2,0,25,14],
+"_s_w___output_8h.html#a531e27bc55c78f5134678d0623c697b1":[2,0,25,20],
+"_s_w___output_8h.html#a53bb40694dbd09aee64905841fa711d4":[2,0,25,48],
+"_s_w___output_8h.html#a5cdd9c7bda4e1a4510d7cf60b46ac7f7":[2,0,25,36],
+"_s_w___output_8h.html#a6347ac4541b0f5c1afa6c71430dc4ce4":[2,0,25,1],
+"_s_w___output_8h.html#a647ccbc9b71652417b3c3f72b146f0bc":[2,0,25,39],
+"_s_w___output_8h.html#a6926e3bfd4bd7577bcedd48b7ed78e03":[2,0,25,53],
+"_s_w___output_8h.html#a6af9f97de70abfc55db9580ba412ca3d":[2,0,25,17],
+"_s_w___output_8h.html#a74b456e0f4eb9664213e6f7745c6edde":[2,0,25,52],
+"_s_w___output_8h.html#a79f8f7f406db4e0d528440c6870081f7":[2,0,25,11],
+"_s_w___output_8h.html#a8444ee195d17de7e758028d4187d26a5":[2,0,25,9],
+"_s_w___output_8h.html#a890f2f4f43109c5c128cec4be565119e":[2,0,25,3],
+"_s_w___output_8h.html#a8f91b3cf767f6f8e8f593b447a6cbbc7":[2,0,25,35],
+"_s_w___output_8h.html#a93912f54cea8b60d2fda279448ca8449":[2,0,25,54],
+"_s_w___output_8h.html#a9567f1221ef0b0a4dcafb787c0d1ac4c":[2,0,25,43],
+"_s_w___output_8h.html#a997e3d0b97d225fcc9549b0f4fe9a18a":[2,0,25,23],
+"_s_w___output_8h.html#a9b4ce71575257d1fb4eab2f372868719":[2,0,25,19],
+"_s_w___output_8h.html#aa15c450a518e7144ebeb43a510e99576":[2,0,25,31],
+"_s_w___output_8h.html#aa55936417c12da2b8bc90566ae450620":[2,0,25,4],
+"_s_w___output_8h.html#aa672c5cdc6eaaaa0e25856b7c81f4fec":[2,0,25,44],
+"_s_w___output_8h.html#aa7612da2dd2e721ba9f48f23f26cf0bd":[2,0,25,33],
+"_s_w___output_8h.html#aa836896b52395cd9870b09631dc1bf8e":[2,0,25,30],
+"_s_w___output_8h.html#aac824d412892327b84b19939751e9bf3":[2,0,25,6],
+"_s_w___output_8h.html#ab1394321bd8d71aed0690eed159ebdf2":[2,0,25,34],
+"_s_w___output_8h.html#abbd7520834a88ae3bdf12ad4812525b1":[2,0,25,10],
+"_s_w___output_8h.html#ac22b26e25ca088560962c1e3b7c938db":[2,0,25,5],
+"_s_w___output_8h.html#ac5ac3f49cc9add8082bddf0536f8f238":[2,0,25,8],
+"_s_w___output_8h.html#acbcddbc2944a2bb1f964ff534c9b97ba":[2,0,25,12],
+"_s_w___output_8h.html#acf7157dffdc51401199c2cdd656dbaf5":[2,0,25,32],
+"_s_w___output_8h.html#ad024145315713e83bd6f8363fb0539de":[2,0,25,2],
+"_s_w___output_8h.html#ad0dd7a6892d29b47e33e27b4d4dab2f8":[2,0,25,37],
+"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1c":[2,0,25,46],
+"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05":[2,0,25,46,3],
+"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626":[2,0,25,46,0],
+"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1ca89415921fff384c5416b5156bda31765":[2,0,25,46,2],
+"_s_w___output_8h.html#ad4bca29edbc3cfff634f5c23d1cefb1caa8e1488252071239232b78f183c72917":[2,0,25,46,1],
+"_s_w___output_8h.html#ad85a058f65275eee148281c9dbbfab80":[2,0,25,7],
+"_s_w___output_8h.html#aded347ed8aef731d3aab06bf27cc0b36":[2,0,25,55],
+"_s_w___output_8h.html#adf2018f9375c671489b5af769c4016a8":[2,0,25,40],
+"_s_w___output_8h.html#ae06df802aa17b479cb10172f7d1903f2":[2,0,25,49],
+"_s_w___output_8h.html#aeab56a7000588af57d1aab705252b21f":[2,0,25,21],
+"_s_w___output_8h.html#aebe460eb3369765c76b645faa163a82e":[2,0,25,38],
+"_s_w___output_8h.html#aed70dac899556c1aa15c36e275064384":[2,0,25,16],
+"_s_w___output_8h.html#af06fb092a18e93aedd71c3db38dc5b8b":[2,0,25,18],
+"_s_w___output_8h.html#af0d316dbb4870395564ef5530adc3f93":[2,0,25,50],
+"_s_w___output_8h.html#af2ce7e2d58f57997eec216c8d41d6f0c":[2,0,25,28],
+"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362":[2,0,25,47],
+"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362a2888085c254d30dac3d53321ddb691af":[2,0,25,47,3],
+"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362a63670e8b5d3242da69821492929fa0d6":[2,0,25,47,2],
+"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362acc23c6d47c35d8538cb1cec378641247":[2,0,25,47,0],
+"_s_w___output_8h.html#af6bc39c9780566b4a3891132f6977362af6555b0cd66fac469be5e1f4542c6052":[2,0,25,47,1],
+"_s_w___output_8h_source.html":[2,0,25],
+"_s_w___r__init_8c.html":[2,0,26],
+"_s_w___r__init_8c.html#a12c5324cc2d9de1a3993dbd113de2fd9":[2,0,26,1],
+"_s_w___r__init_8c.html#a25be7be717dbb98733617edc1f2e0f02":[2,0,26,3],
+"_s_w___r__init_8c.html#a48cfcac76cca8ad995276bac0f160cbc":[2,0,26,2],
+"_s_w___r__init_8c.html#a9b86e018088875b36aba2761f4a2807e":[2,0,26,4],
+"_s_w___r__init_8c.html#abb8983e166f2f4b4b6e1a8313e567cda":[2,0,26,0],
+"_s_w___r__lib_8c.html":[2,0,27],
+"_s_w___r__lib_8h.html":[2,0,28],
+"_s_w___r__lib_8h_source.html":[2,0,28],
+"_s_w___site_8c.html":[2,0,29],
+"_s_w___site_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,29,6],
+"_s_w___site_8c.html#a46e5208554b79bebc83a481785e273c6":[2,0,29,5],
+"_s_w___site_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[2,0,29,7],
+"_s_w___site_8c.html#abcdd55367ea6d330401f0cf306fd8578":[2,0,29,4],
+"_s_w___site_8c.html#ac9740b7b813c160d7172364950a115bc":[2,0,29,3],
+"_s_w___site_8c.html#ae00ab6c54fd889df06e0ed8eb72c01af":[2,0,29,2],
+"_s_w___site_8c.html#af1d0a7df54820984363078c181b23b7d":[2,0,29,1],
+"_s_w___site_8c.html#af43568af2e8878619d5210ce73c0533a":[2,0,29,0],
+"_s_w___site_8h.html":[2,0,30],
+"_s_w___site_8h.html#a6fece0d49f08459808b94a38696a4180":[2,0,30,2],
+"_s_w___site_8h.html#ac9740b7b813c160d7172364950a115bc":[2,0,30,5],
+"_s_w___site_8h.html#ae00ab6c54fd889df06e0ed8eb72c01af":[2,0,30,4],
+"_s_w___site_8h.html#af1d0a7df54820984363078c181b23b7d":[2,0,30,3],
+"_s_w___site_8h_source.html":[2,0,30],
+"_s_w___sky_8c.html":[2,0,31],
+"_s_w___sky_8c.html#a09861339072e89448ab98d436a898636":[2,0,31,0],
+"_s_w___sky_8c.html#a20224192c9ba86e3889fd3b1730295ea":[2,0,31,2],
+"_s_w___sky_8c.html#a4ae75944adbc3d91fdf8ee7c9acdd875":[2,0,31,3],
+"_s_w___sky_8c.html#af926d383d17bda1b210d39b2320b2008":[2,0,31,1],
+"_s_w___sky_8h.html":[2,0,32],
+"_s_w___sky_8h.html#a09861339072e89448ab98d436a898636":[2,0,32,1],
+"_s_w___sky_8h.html#a20224192c9ba86e3889fd3b1730295ea":[2,0,32,3],
+"_s_w___sky_8h.html#af926d383d17bda1b210d39b2320b2008":[2,0,32,2],
+"_s_w___sky_8h_source.html":[2,0,32],
+"_s_w___soil_water_8c.html":[2,0,33],
+"_s_w___soil_water_8c.html#a105a153ddf27179bbccb86c288926d4e":[2,0,33,9],
+"_s_w___soil_water_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,33,13],
+"_s_w___soil_water_8c.html#a15e0502fb9c5356bc78240f3240c42aa":[2,0,33,7],
+"_s_w___soil_water_8c.html#a27c49934c33e702aa2d942d7eed1b841":[2,0,33,5],
+"_s_w___soil_water_8c.html#a67d7bd8d16c69d650ade7002b6d07750":[2,0,33,8],
+"_s_w___soil_water_8c.html#a6a9d5dbcefaf72eece66ed219bcd749f":[2,0,33,11],
+"_s_w___soil_water_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,33,12],
+"_s_w___soil_water_8c.html#a98f205f5217dcb6a4ad1535ac3ebc79e":[2,0,33,10],
+"_s_w___soil_water_8c.html#aa6a58fb26f7ae185badd11539fc175d7":[2,0,33,0],
+"_s_w___soil_water_8c.html#aad28c324317c639162dc02a9ca41b050":[2,0,33,2],
+"_s_w___soil_water_8c.html#ac0531314f7790b2c914bbe38cf51f04c":[2,0,33,6],
+"_s_w___soil_water_8c.html#ac5e856e2b9ce7f50bf80a4b68990cdc3":[2,0,33,4],
+"_s_w___soil_water_8c.html#ad186322d66e90e3b398c571d5f51b306":[2,0,33,1],
+"_s_w___soil_water_8c.html#ad62fe931e2c8b2075d1d5a4df4b87151":[2,0,33,3],
+"_s_w___soil_water_8c.html#afdb8ced0825a798336ba061396f7016c":[2,0,33,14],
+"_s_w___soil_water_8h.html":[2,0,34],
+"_s_w___soil_water_8h.html#a105a153ddf27179bbccb86c288926d4e":[2,0,34,13],
+"_s_w___soil_water_8h.html#a15e0502fb9c5356bc78240f3240c42aa":[2,0,34,11],
+"_s_w___soil_water_8h.html#a27c49934c33e702aa2d942d7eed1b841":[2,0,34,9],
+"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2":[2,0,34,3],
+"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2a0804d509577b39ef0d76009ec07e8729":[2,0,34,3,0],
+"_s_w___soil_water_8h.html#a45ad841e0e838b059cbb65cdeb267fc2a17e6f463e6708a7e18ca84739312ad88":[2,0,34,3,1],
+"_s_w___soil_water_8h.html#a67d7bd8d16c69d650ade7002b6d07750":[2,0,34,12],
+"_s_w___soil_water_8h.html#a98f205f5217dcb6a4ad1535ac3ebc79e":[2,0,34,14],
+"_s_w___soil_water_8h.html#aa6a58fb26f7ae185badd11539fc175d7":[2,0,34,4],
+"_s_w___soil_water_8h.html#aad28c324317c639162dc02a9ca41b050":[2,0,34,6],
+"_s_w___soil_water_8h.html#ac0531314f7790b2c914bbe38cf51f04c":[2,0,34,10],
+"_s_w___soil_water_8h.html#ac5e856e2b9ce7f50bf80a4b68990cdc3":[2,0,34,8],
+"_s_w___soil_water_8h.html#ad186322d66e90e3b398c571d5f51b306":[2,0,34,5],
+"_s_w___soil_water_8h.html#ad62fe931e2c8b2075d1d5a4df4b87151":[2,0,34,7],
+"_s_w___soil_water_8h_source.html":[2,0,34],
+"_s_w___times_8h.html":[2,0,35],
+"_s_w___times_8h.html#a007dadd83840adf66fa92d42546d7283":[2,0,35,2],
+"_s_w___times_8h.html#a03162deb667f2ff9dcc31571858cc5f1":[2,0,35,4],
+"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918":[2,0,35,7],
+"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918a029fabeb451b8545c8e5f5908549bc49":[2,0,35,7,1],
+"_s_w___times_8h.html#a66a0a6fe6a48e8c262f9bb90b644d918a98e439f15f69767d6030e63a926aa0be":[2,0,35,7,0],
+"_s_w___times_8h.html#ac0f3d6f030eaea7119cd2ddd9d05de61":[2,0,35,6],
+"_s_w___times_8h.html#ad01c1bae9947589a9fad290f7ce72b98":[2,0,35,1],
+"_s_w___times_8h.html#ada5c987fa013164310176535b71d34f6":[2,0,35,3],
+"_s_w___times_8h.html#ae15bab367a811d76ab6b9bde26bfec33":[2,0,35,5],
+"_s_w___times_8h_source.html":[2,0,35],
+"_s_w___veg_estab_8c.html":[2,0,36],
+"_s_w___veg_estab_8c.html#a01bd300959e7ed05803e03188c1091a1":[2,0,36,0],
+"_s_w___veg_estab_8c.html#a11bcfe9d5a1ea9a25df26589c9e904f3":[2,0,36,7],
+"_s_w___veg_estab_8c.html#a46e5208554b79bebc83a481785e273c6":[2,0,36,5],
+"_s_w___veg_estab_8c.html#a4b2149c2e1b77da676359b0bc64b1710":[2,0,36,9],
+"_s_w___veg_estab_8c.html#a56324ee99877460f46a98d351ce6f885":[2,0,36,2],
+"_s_w___veg_estab_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[2,0,36,10],
+"_s_w___veg_estab_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,36,6],
+"_s_w___veg_estab_8c.html#ad282fdcda9783fe422fc1381f02e92d9":[2,0,36,3],
+"_s_w___veg_estab_8c.html#ad709b2c5fa0613c8abed1dba6d8cdb7a":[2,0,36,1],
+"_s_w___veg_estab_8c.html#ae22bd4cee0bc829b7273d37419a0a1df":[2,0,36,4],
+"_s_w___veg_estab_8c.html#afdb8ced0825a798336ba061396f7016c":[2,0,36,8],
+"_s_w___veg_estab_8h.html":[2,0,37],
+"_s_w___veg_estab_8h.html#a01bd300959e7ed05803e03188c1091a1":[2,0,37,5],
+"_s_w___veg_estab_8h.html#a56324ee99877460f46a98d351ce6f885":[2,0,37,7],
+"_s_w___veg_estab_8h.html#a6d06912bdde61ca9b0b519df6e0f16fc":[2,0,37,8],
+"_s_w___veg_estab_8h.html#abdc6714101f83c4348ab5f5338999b18":[2,0,37,4],
+"_s_w___veg_estab_8h.html#ad282fdcda9783fe422fc1381f02e92d9":[2,0,37,9],
+"_s_w___veg_estab_8h.html#ad709b2c5fa0613c8abed1dba6d8cdb7a":[2,0,37,6],
+"_s_w___veg_estab_8h.html#adc47d4a3c4379c95fff1ac6a30ea246c":[2,0,37,3],
+"_s_w___veg_estab_8h.html#ae22bd4cee0bc829b7273d37419a0a1df":[2,0,37,10],
+"_s_w___veg_estab_8h_source.html":[2,0,37],
+"_s_w___veg_prod_8c.html":[2,0,38],
+"_s_w___veg_prod_8c.html#a2ad9757141b05a2db17a8ff34467fb85":[2,0,38,4],
+"_s_w___veg_prod_8c.html#a46e5208554b79bebc83a481785e273c6":[2,0,38,3],
+"_s_w___veg_prod_8c.html#a637e8e57ca98f424e3e782d499f19368":[2,0,38,1],
+"_s_w___veg_prod_8c.html#a78fcfdb968b2355eee5a8f61bbd01270":[2,0,38,2],
+"_s_w___veg_prod_8c.html#a8f9709f4f153a6d19d922c1896a1e2a3":[2,0,38,5],
+"_s_w___veg_prod_8c.html#abc0d9fc7beba00cae0821617b1013ab5":[2,0,38,0],
+"_s_w___veg_prod_8h.html":[2,0,39],
+"_s_w___veg_prod_8h.html#a637e8e57ca98f424e3e782d499f19368":[2,0,39,3],
+"_s_w___veg_prod_8h.html#a78fcfdb968b2355eee5a8f61bbd01270":[2,0,39,4],
+"_s_w___veg_prod_8h.html#abc0d9fc7beba00cae0821617b1013ab5":[2,0,39,2],
+"_s_w___veg_prod_8h_source.html":[2,0,39],
+"_s_w___weather_8c.html":[2,0,40],
+"_s_w___weather_8c.html#a0dfd736f350b6a1fc05ae462f07375d2":[2,0,40,5],
+"_s_w___weather_8c.html#a17660a2e09eae210374567fbd558712b":[2,0,40,6],
+"_s_w___weather_8c.html#a29f5ff534069ae52995a51c7c186d1c2":[2,0,40,7],
+"_s_w___weather_8c.html#a526d1d74ee38f58df7a20ff52a70ec7b":[2,0,40,2],
+"_s_w___weather_8c.html#a5ec3b7159a2fccc79f5fa31d8f40c224":[2,0,40,9],
+"_s_w___weather_8c.html#a7fe95d8828eeecd4a64b5a230bedea66":[2,0,40,8],
+"_s_w___weather_8c.html#a8e3dae10d74340f83f9d4ecba7493f2c":[2,0,40,4],
+"_s_w___weather_8c.html#ab3b031bdd38b8694d1d506085b8117fb":[2,0,40,3],
+"_s_w___weather_8c.html#ad5e5ffe16779cfa4aeecd4d2597a2add":[2,0,40,0],
+"_s_w___weather_8c.html#ae3ced72037648c80ea72aaf4b7bf5f5d":[2,0,40,1],
+"_s_w___weather_8h.html":[2,0,41],
+"_s_w___weather_8h.html#a02803ec7a1a165d6279b602fb57d556a":[2,0,41,12],
+"_s_w___weather_8h.html#a0dfd736f350b6a1fc05ae462f07375d2":[2,0,41,10],
+"_s_w___weather_8h.html#a17660a2e09eae210374567fbd558712b":[2,0,41,11],
+"_s_w___weather_8h.html#a526d1d74ee38f58df7a20ff52a70ec7b":[2,0,41,7],
+"_s_w___weather_8h.html#a7d7a48bfc425c34e26ea6ec16aa8478e":[2,0,41,4],
+"_s_w___weather_8h.html#a8e3dae10d74340f83f9d4ecba7493f2c":[2,0,41,9],
+"_s_w___weather_8h.html#ab3b031bdd38b8694d1d506085b8117fb":[2,0,41,8],
+"_s_w___weather_8h.html#ad5e5ffe16779cfa4aeecd4d2597a2add":[2,0,41,5],
+"_s_w___weather_8h.html#ae3ced72037648c80ea72aaf4b7bf5f5d":[2,0,41,6],
+"_s_w___weather_8h_source.html":[2,0,41],
+"_times_8c.html":[2,0,42],
+"_times_8c.html#a087ca61b43a568e8023d02e70207818a":[2,0,42,6],
+"_times_8c.html#a118171d8631e8be0ad31cd4270128a73":[2,0,42,13],
+"_times_8c.html#a12505c3ca0bd0af0455aefd10fb543fc":[2,0,42,34],
+"_times_8c.html#a19f6a46355208d0c822ab43d4d137d14":[2,0,42,18],
+"_times_8c.html#a1d1327b61cf229814149bf455c9c8262":[2,0,42,25],
+"_times_8c.html#a2b02c9296a421c96a64eedab2e27fcba":[2,0,42,7],
+"_times_8c.html#a2c7531da95b7fd0dffd8a172042166e4":[2,0,42,33],
+"_times_8c.html#a3599fc76bc36c9d6db6f572304fcfe66":[2,0,42,26],
+"_times_8c.html#a366734c22067f96c83a47f6cf64f471e":[2,0,42,0]
};
diff --git a/doc/html/navtreeindex2.js b/doc/html/navtreeindex2.js
index 0fafa725a..8e9d7df97 100644
--- a/doc/html/navtreeindex2.js
+++ b/doc/html/navtreeindex2.js
@@ -1,253 +1,253 @@
var NAVTREEINDEX2 =
{
-"_times_8c.html#a39bfa4779cc42a48e9a8de936ad48a44":[1,0,42,10],
-"_times_8c.html#a3a2d808e13355500fe34bf8fa71ded9f":[1,0,42,32],
-"_times_8c.html#a42da83f5485990b6040034e2b7bc70ed":[1,0,42,8],
-"_times_8c.html#a50d4824dc7c06c0ba987e404667f3683":[1,0,42,17],
-"_times_8c.html#a53949c8e1c891b6cd4408bfedd1bcea7":[1,0,42,14],
-"_times_8c.html#a5c249d5b9f0f6708895faac4a6609b29":[1,0,42,15],
-"_times_8c.html#a5e758681c6e49b14c299e121d880c854":[1,0,42,30],
-"_times_8c.html#a6efac9c9769c7e63ad27d5d19ae6e1c7":[1,0,42,16],
-"_times_8c.html#a78561c93cbe2a0e95dc076f053276df5":[1,0,42,21],
-"_times_8c.html#a7d35e430bc9795351da86732a8e94d86":[1,0,42,12],
-"_times_8c.html#a8f99d7d02dbde6244b919ac6f133317e":[1,0,42,27],
-"_times_8c.html#a9108259a9a7f72da449d6897c0c13dc4":[1,0,42,22],
-"_times_8c.html#a95a7ed7f2f9ed567e45a42eb9a287d88":[1,0,42,5],
-"_times_8c.html#aa0acdf736c364f383bade917b6c12a2c":[1,0,42,9],
-"_times_8c.html#aa341c98032a26dd1bee65a9cb73c63b8":[1,0,42,36],
-"_times_8c.html#aa8ca82832f27ddd1ef7aee92ecfaf30c":[1,0,42,19],
-"_times_8c.html#aa8f5f562cbefb728dc97ac01417633bc":[1,0,42,4],
-"_times_8c.html#aaad97bb254d59671f2701af8dc2cde21":[1,0,42,20],
-"_times_8c.html#ab366018d0e70f2e6fc23b1b2807e7488":[1,0,42,31],
-"_times_8c.html#ab5422238f153d1a963dc0050d7a6559b":[1,0,42,29],
-"_times_8c.html#abc93d05b3519c8a9049626750e8610e6":[1,0,42,28],
-"_times_8c.html#abd08a2d32d0cdec2d63ce9fd5fabb057":[1,0,42,24],
-"_times_8c.html#ae01010231f2c4ee5d719495c47562d3d":[1,0,42,11],
-"_times_8c.html#ae77af3c6f456918720eae01ddc3714f9":[1,0,42,2],
-"_times_8c.html#af035967e4c9f8e312b7e9a8787c85efe":[1,0,42,23],
-"_times_8c.html#af372297343d6dac7e1300f4ae9e39ffd":[1,0,42,1],
-"_times_8c.html#afa0290747ad44d077f8461969060a180":[1,0,42,35],
-"_times_8c.html#afb72f5d7b4d8dba09b40a84ccc51e461":[1,0,42,3],
-"_times_8h.html":[1,0,43],
-"_times_8h.html#a01f08d46080872b9f4284873b7f9dee4":[1,0,43,0],
-"_times_8h.html#a087ca61b43a568e8023d02e70207818a":[1,0,43,11],
-"_times_8h.html#a118171d8631e8be0ad31cd4270128a73":[1,0,43,18],
-"_times_8h.html#a12505c3ca0bd0af0455aefd10fb543fc":[1,0,43,39],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2":[1,0,43,5],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a006525d093472f85302a58ac758ad640":[1,0,43,5,12],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a02dced4e5287dd4f89c944787c8fd209":[1,0,43,5,6],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d":[1,0,43,5,0],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a2c937adab19ffaa90d92d907272681fc":[1,0,43,5,2],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a30c4611a7b0d26864d14fba180d1aa1f":[1,0,43,5,10],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a35b744bc15334aee236729b16b3763fb":[1,0,43,5,7],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a3fa258f3bb2deccc3595e22fd129e1d9":[1,0,43,5,9],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a440438569d2f7021e13c06436bac455e":[1,0,43,5,1],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a470a2bb850730d2f9f812d0cf05db069":[1,0,43,5,5],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17":[1,0,43,5,11],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a56032654a15262d69e8be7d42a7ab381":[1,0,43,5,4],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a901d3b86defe97d76aa17f7959f45a4b":[1,0,43,5,3],
-"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2ae922a67b67c79fe59b1de79ba1ef3ec3":[1,0,43,5,8],
-"_times_8h.html#a19f6a46355208d0c822ab43d4d137d14":[1,0,43,23],
-"_times_8h.html#a1d1327b61cf229814149bf455c9c8262":[1,0,43,30],
-"_times_8h.html#a25ac787161a5cad0e3fdfe5a5aeb3236":[1,0,43,4],
-"_times_8h.html#a2a7cd45ad028f22074bb745387bbc1c2":[1,0,43,3],
-"_times_8h.html#a2b02c9296a421c96a64eedab2e27fcba":[1,0,43,12],
-"_times_8h.html#a2c7531da95b7fd0dffd8a172042166e4":[1,0,43,38],
-"_times_8h.html#a3599fc76bc36c9d6db6f572304fcfe66":[1,0,43,31],
-"_times_8h.html#a39bfa4779cc42a48e9a8de936ad48a44":[1,0,43,15],
-"_times_8h.html#a3a2d808e13355500fe34bf8fa71ded9f":[1,0,43,37],
-"_times_8h.html#a424fe822ecd3e435c4d8dd339b57d829":[1,0,43,2],
-"_times_8h.html#a42da83f5485990b6040034e2b7bc70ed":[1,0,43,13],
-"_times_8h.html#a50d4824dc7c06c0ba987e404667f3683":[1,0,43,22],
-"_times_8h.html#a53949c8e1c891b6cd4408bfedd1bcea7":[1,0,43,19],
-"_times_8h.html#a5c249d5b9f0f6708895faac4a6609b29":[1,0,43,20],
-"_times_8h.html#a5e758681c6e49b14c299e121d880c854":[1,0,43,35],
-"_times_8h.html#a6efac9c9769c7e63ad27d5d19ae6e1c7":[1,0,43,21],
-"_times_8h.html#a78561c93cbe2a0e95dc076f053276df5":[1,0,43,26],
-"_times_8h.html#a7d35e430bc9795351da86732a8e94d86":[1,0,43,17],
-"_times_8h.html#a8f99d7d02dbde6244b919ac6f133317e":[1,0,43,32],
-"_times_8h.html#a9108259a9a7f72da449d6897c0c13dc4":[1,0,43,27],
-"_times_8h.html#a95a7ed7f2f9ed567e45a42eb9a287d88":[1,0,43,10],
-"_times_8h.html#a9c97e6841188b672e984a4eba7479277":[1,0,43,1],
-"_times_8h.html#aa0acdf736c364f383bade917b6c12a2c":[1,0,43,14],
-"_times_8h.html#aa341c98032a26dd1bee65a9cb73c63b8":[1,0,43,41],
-"_times_8h.html#aa8ca82832f27ddd1ef7aee92ecfaf30c":[1,0,43,24],
-"_times_8h.html#aa8f5f562cbefb728dc97ac01417633bc":[1,0,43,9],
-"_times_8h.html#aaad97bb254d59671f2701af8dc2cde21":[1,0,43,25],
-"_times_8h.html#ab366018d0e70f2e6fc23b1b2807e7488":[1,0,43,36],
-"_times_8h.html#ab5422238f153d1a963dc0050d7a6559b":[1,0,43,34],
-"_times_8h.html#abc93d05b3519c8a9049626750e8610e6":[1,0,43,33],
-"_times_8h.html#abd08a2d32d0cdec2d63ce9fd5fabb057":[1,0,43,29],
-"_times_8h.html#ae01010231f2c4ee5d719495c47562d3d":[1,0,43,16],
-"_times_8h.html#ae77af3c6f456918720eae01ddc3714f9":[1,0,43,7],
-"_times_8h.html#af035967e4c9f8e312b7e9a8787c85efe":[1,0,43,28],
-"_times_8h.html#af372297343d6dac7e1300f4ae9e39ffd":[1,0,43,6],
-"_times_8h.html#afa0290747ad44d077f8461969060a180":[1,0,43,40],
-"_times_8h.html#afb72f5d7b4d8dba09b40a84ccc51e461":[1,0,43,8],
-"_times_8h_source.html":[1,0,43],
-"annotated.html":[0,0],
-"classes.html":[0,1],
-"filefuncs_8c.html":[1,0,0],
-"filefuncs_8c.html#a0ddb6e2ce212307107a4da5decefcfee":[1,0,0,7],
-"filefuncs_8c.html#a656ed10e1e8aadb73c9de41b827f8eee":[1,0,0,6],
-"filefuncs_8c.html#a69bd14b40775f048c8026b71a6c72329":[1,0,0,2],
-"filefuncs_8c.html#a839d04397d669fa064650a21875951b9":[1,0,0,4],
-"filefuncs_8c.html#abdf5fe7756df6ee737353f7fbcbfbd4b":[1,0,0,8],
-"filefuncs_8c.html#ad267176fe1201c358d6ac3feb70f68b8":[1,0,0,3],
-"filefuncs_8c.html#add5288726b3ae23ec6c69e3d59e09b00":[1,0,0,10],
-"filefuncs_8c.html#ae115bd5076cb9ddf8f1b1dd1cd679ef1":[1,0,0,5],
-"filefuncs_8c.html#ae46a4cb1dab4c7e7ed83d95175b29514":[1,0,0,0],
-"filefuncs_8c.html#ae6021195e9b5a4dd5b2bb95fdf76726f":[1,0,0,1],
-"filefuncs_8c.html#af8195946bfb8aee37b96820552679513":[1,0,0,9],
-"filefuncs_8h.html":[1,0,1],
-"filefuncs_8h.html#a1eed0e73ac452256c2a5cd8dea914b99":[1,0,1,4],
-"filefuncs_8h.html#a4fd001db2f6530979aae0c4e1aa4e8d5":[1,0,1,3],
-"filefuncs_8h.html#a5a98316bbdafe4e2aba0f7bfbd647238":[1,0,1,6],
-"filefuncs_8h.html#a656ed10e1e8aadb73c9de41b827f8eee":[1,0,1,7],
-"filefuncs_8h.html#a839d04397d669fa064650a21875951b9":[1,0,1,5],
-"filefuncs_8h.html#a9d98cc65c80843a2f3a287a05c662271":[1,0,1,11],
-"filefuncs_8h.html#aa21d4a908343c5aca34af8787f80c6c6":[1,0,1,8],
-"filefuncs_8h.html#ab7141bab5837f75163a3e589affc0048":[1,0,1,0],
-"filefuncs_8h.html#ac1c6d5f8d6e6d853371b236f1a5f107b":[1,0,1,2],
-"filefuncs_8h.html#add5288726b3ae23ec6c69e3d59e09b00":[1,0,1,10],
-"filefuncs_8h.html#adf995fb05bea887c67de0267171e6ff4":[1,0,1,9],
-"filefuncs_8h.html#ae46a4cb1dab4c7e7ed83d95175b29514":[1,0,1,1],
-"filefuncs_8h_source.html":[1,0,1],
-"files.html":[1,0],
-"functions.html":[0,2,0,0],
-"functions.html":[0,2,0],
-"functions_b.html":[0,2,0,1],
-"functions_c.html":[0,2,0,2],
-"functions_d.html":[0,2,0,3],
-"functions_e.html":[0,2,0,4],
-"functions_f.html":[0,2,0,5],
-"functions_g.html":[0,2,0,6],
-"functions_h.html":[0,2,0,7],
-"functions_i.html":[0,2,0,8],
-"functions_l.html":[0,2,0,9],
-"functions_m.html":[0,2,0,10],
-"functions_n.html":[0,2,0,11],
-"functions_o.html":[0,2,0,12],
-"functions_p.html":[0,2,0,13],
-"functions_r.html":[0,2,0,14],
-"functions_s.html":[0,2,0,15],
-"functions_t.html":[0,2,0,16],
-"functions_u.html":[0,2,0,17],
-"functions_v.html":[0,2,0,18],
-"functions_vars.html":[0,2,1],
-"functions_vars.html":[0,2,1,0],
-"functions_vars_b.html":[0,2,1,1],
-"functions_vars_c.html":[0,2,1,2],
-"functions_vars_d.html":[0,2,1,3],
-"functions_vars_e.html":[0,2,1,4],
-"functions_vars_f.html":[0,2,1,5],
-"functions_vars_g.html":[0,2,1,6],
-"functions_vars_h.html":[0,2,1,7],
-"functions_vars_i.html":[0,2,1,8],
-"functions_vars_l.html":[0,2,1,9],
-"functions_vars_m.html":[0,2,1,10],
-"functions_vars_n.html":[0,2,1,11],
-"functions_vars_o.html":[0,2,1,12],
-"functions_vars_p.html":[0,2,1,13],
-"functions_vars_r.html":[0,2,1,14],
-"functions_vars_s.html":[0,2,1,15],
-"functions_vars_t.html":[0,2,1,16],
-"functions_vars_u.html":[0,2,1,17],
-"functions_vars_v.html":[0,2,1,18],
-"functions_vars_w.html":[0,2,1,19],
-"functions_vars_x.html":[0,2,1,20],
-"functions_vars_y.html":[0,2,1,21],
-"functions_w.html":[0,2,0,19],
-"functions_x.html":[0,2,0,20],
-"functions_y.html":[0,2,0,21],
-"generic_8c.html":[1,0,2],
-"generic_8c.html#a11003199b3d2783daca30d6c3110973b":[1,0,2,5],
-"generic_8c.html#a1b59895791915578f7b7f96aa7f8e7c4":[1,0,2,1],
-"generic_8c.html#a3156a3189c9286cf2c56384b9d4f00ba":[1,0,2,12],
-"generic_8c.html#a3b620cbbbff502ed6c23af6cb3fc46b2":[1,0,2,4],
-"generic_8c.html#a42c27317771c079928bf61523b38adfa":[1,0,2,6],
-"generic_8c.html#a4ad34bbb851d33a77269262427d3b072":[1,0,2,13],
-"generic_8c.html#a5dbdc3cf42590d2c34e896c3d8b80b43":[1,0,2,3],
-"generic_8c.html#a6150637c525c3ca076ca7cc755e29db2":[1,0,2,10],
-"generic_8c.html#a793c87571ac59fadacd623f5e3e4bb27":[1,0,2,2],
-"generic_8c.html#a9dd2b923dbcf0dcda1a436a5be02c09b":[1,0,2,11],
-"generic_8c.html#a9e6077882ab6b9ddbe0532b293a2ccf4":[1,0,2,8],
-"generic_8c.html#ac88c9c5fc37398d47ba569ca8149fe41":[1,0,2,0],
-"generic_8c.html#ae76330d47526d546ea89a384fe788732":[1,0,2,9],
-"generic_8c.html#af36c688653758da1ec0e97b2f8ad02a9":[1,0,2,7],
-"generic_8h.html":[1,0,3],
-"generic_8h.html#a04d96a713785d741faaa620a475b745c":[1,0,3,11],
-"generic_8h.html#a0985d386e5604b94460bb60ac639d383":[1,0,3,4],
-"generic_8h.html#a0c8186d9b9b7880309c27230bbb5e69d":[1,0,3,33],
-"generic_8h.html#a0f993b6970226fa174326c1db4d0be0e":[1,0,3,35],
-"generic_8h.html#a10f769903592548e508a283bc2b31d42":[1,0,3,12],
-"generic_8h.html#a11003199b3d2783daca30d6c3110973b":[1,0,3,47],
-"generic_8h.html#a14e32c27dc9b188856093ae003f78b5c":[1,0,3,7],
-"generic_8h.html#a1b59895791915578f7b7f96aa7f8e7c4":[1,0,3,43],
-"generic_8h.html#a2196b2e9c04f037b20b9c064276ee7c9":[1,0,3,17],
-"generic_8h.html#a25b8e4edb1775b70059a1a980aff6746":[1,0,3,15],
-"generic_8h.html#a29b9525322b08a5b2bb7fa30ebc48214":[1,0,3,18],
-"generic_8h.html#a313988f3499dfdc18733ae046e2371dc":[1,0,3,38],
-"generic_8h.html#a3156a3189c9286cf2c56384b9d4f00ba":[1,0,3,54],
-"generic_8h.html#a375b5090161790d5783d4bdd92f3f750":[1,0,3,23],
-"generic_8h.html#a39db6982619d623273fad8a383489309":[1,0,3,41],
-"generic_8h.html#a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a":[1,0,3,41,0],
-"generic_8h.html#a39db6982619d623273fad8a383489309aa82764c3079aea4e60c80e45befbb839":[1,0,3,41,1],
-"generic_8h.html#a3a446ef14fca6cda41a6634efdecdde6":[1,0,3,6],
-"generic_8h.html#a3b620cbbbff502ed6c23af6cb3fc46b2":[1,0,3,46],
-"generic_8h.html#a3da15c8b6dfbf1176ddeb33d5e40d3f9":[1,0,3,31],
-"generic_8h.html#a4233bfd6249e6e43650106c6043808bb":[1,0,3,22],
-"generic_8h.html#a42c27317771c079928bf61523b38adfa":[1,0,3,48],
-"generic_8h.html#a48da69c89756b1a25e3a7c618696fac9":[1,0,3,2],
-"generic_8h.html#a4ad34bbb851d33a77269262427d3b072":[1,0,3,55],
-"generic_8h.html#a547f3a33e6f36307e6b78d512e7ae8cb":[1,0,3,27],
-"generic_8h.html#a5863b1da36cc637653e94892978b74ad":[1,0,3,8],
-"generic_8h.html#a5c3660640cebde8a951b74d847b3dfeb":[1,0,3,1],
-"generic_8h.html#a5dbdc3cf42590d2c34e896c3d8b80b43":[1,0,3,45],
-"generic_8h.html#a6150637c525c3ca076ca7cc755e29db2":[1,0,3,52],
-"generic_8h.html#a66785db10ccce58e71eb3555c09188b0":[1,0,3,9],
-"generic_8h.html#a67a26698612a951cb54a963f77cee538":[1,0,3,3],
-"generic_8h.html#a6a010865b10e541735fa2da8f3cd062d":[1,0,3,0],
-"generic_8h.html#a7c213cc89d01ec9cdbaa3356698a86ce":[1,0,3,25],
-"generic_8h.html#a7c6368cf7d9d669e63321edc4f8929e1":[1,0,3,16],
-"generic_8h.html#a7cc214a236ad3bb6ad435bdcf5262a3f":[1,0,3,34],
-"generic_8h.html#a88093fead5165843ef0498d47e621636":[1,0,3,13],
-"generic_8h.html#a8df7ad109bbbe1c1278157e968aecc1d":[1,0,3,10],
-"generic_8h.html#a94d667c93da0511f21142d988f67674f":[1,0,3,40],
-"generic_8h.html#a9983412618e748f0ed750611860a2583":[1,0,3,32],
-"generic_8h.html#a9c7b81b51177020e4735ba49298cf62b":[1,0,3,37],
-"generic_8h.html#a9dd2b923dbcf0dcda1a436a5be02c09b":[1,0,3,53],
-"generic_8h.html#a9e6077882ab6b9ddbe0532b293a2ccf4":[1,0,3,50],
-"generic_8h.html#aa1ff32598cc88bb9fc8bab0a24369ff3":[1,0,3,14],
-"generic_8h.html#aa207fc3bd77ff692557b29468a5ca305":[1,0,3,19],
-"generic_8h.html#aac1dbe1371c37f4c0d743a77108bb06e":[1,0,3,30],
-"generic_8h.html#ac082a1f175ecd155ccd9ee4bfafacb4a":[1,0,3,20],
-"generic_8h.html#ac16dab5cefce6fed135c20d1bae372a5":[1,0,3,57],
-"generic_8h.html#ac4acb71b4114d72176466f9b52bf72ac":[1,0,3,28],
-"generic_8h.html#ac6afabdc09a49a433ee19d8a9486056d":[1,0,3,26],
-"generic_8h.html#ac88c9c5fc37398d47ba569ca8149fe41":[1,0,3,42],
-"generic_8h.html#ad391d97dda769e4d573afb05c6196e70":[1,0,3,36],
-"generic_8h.html#ad5a5ff1aa26b8bf3e12f3f1170b73f62":[1,0,3,44],
-"generic_8h.html#ada051a4499e33e1d0fe82eeeee6d1699":[1,0,3,58],
-"generic_8h.html#ae55bc5afe1eabd76592c8e7a0c7b089c":[1,0,3,5],
-"generic_8h.html#ae76330d47526d546ea89a384fe788732":[1,0,3,51],
-"generic_8h.html#ae9894b66cd216d8ad25902a11ad2f941":[1,0,3,21],
-"generic_8h.html#af1c105fd5732f70b91ddaeda0cc340e3":[1,0,3,39],
-"generic_8h.html#af36c688653758da1ec0e97b2f8ad02a9":[1,0,3,49],
-"generic_8h.html#afafc43142ae143f6f7a354ef676f24a2":[1,0,3,56],
-"generic_8h.html#afbc7bc3d4affbba50477d4c7fb06cccd":[1,0,3,29],
-"generic_8h.html#affe776513b24d84b39af8ab0930fef7f":[1,0,3,24],
-"generic_8h_source.html":[1,0,3],
-"globals.html":[1,1,0],
-"globals.html":[1,1,0,0],
-"globals_a.html":[1,1,0,1],
-"globals_b.html":[1,1,0,2],
-"globals_c.html":[1,1,0,3],
-"globals_d.html":[1,1,0,4],
-"globals_defs.html":[1,1,6],
-"globals_e.html":[1,1,0,5],
-"globals_enum.html":[1,1,4],
-"globals_eval.html":[1,1,5],
-"globals_f.html":[1,1,0,6],
-"globals_func.html":[1,1,1]
+"_times_8c.html#a39bfa4779cc42a48e9a8de936ad48a44":[2,0,42,10],
+"_times_8c.html#a3a2d808e13355500fe34bf8fa71ded9f":[2,0,42,32],
+"_times_8c.html#a42da83f5485990b6040034e2b7bc70ed":[2,0,42,8],
+"_times_8c.html#a50d4824dc7c06c0ba987e404667f3683":[2,0,42,17],
+"_times_8c.html#a53949c8e1c891b6cd4408bfedd1bcea7":[2,0,42,14],
+"_times_8c.html#a5c249d5b9f0f6708895faac4a6609b29":[2,0,42,15],
+"_times_8c.html#a5e758681c6e49b14c299e121d880c854":[2,0,42,30],
+"_times_8c.html#a6efac9c9769c7e63ad27d5d19ae6e1c7":[2,0,42,16],
+"_times_8c.html#a78561c93cbe2a0e95dc076f053276df5":[2,0,42,21],
+"_times_8c.html#a7d35e430bc9795351da86732a8e94d86":[2,0,42,12],
+"_times_8c.html#a8f99d7d02dbde6244b919ac6f133317e":[2,0,42,27],
+"_times_8c.html#a9108259a9a7f72da449d6897c0c13dc4":[2,0,42,22],
+"_times_8c.html#a95a7ed7f2f9ed567e45a42eb9a287d88":[2,0,42,5],
+"_times_8c.html#aa0acdf736c364f383bade917b6c12a2c":[2,0,42,9],
+"_times_8c.html#aa341c98032a26dd1bee65a9cb73c63b8":[2,0,42,36],
+"_times_8c.html#aa8ca82832f27ddd1ef7aee92ecfaf30c":[2,0,42,19],
+"_times_8c.html#aa8f5f562cbefb728dc97ac01417633bc":[2,0,42,4],
+"_times_8c.html#aaad97bb254d59671f2701af8dc2cde21":[2,0,42,20],
+"_times_8c.html#ab366018d0e70f2e6fc23b1b2807e7488":[2,0,42,31],
+"_times_8c.html#ab5422238f153d1a963dc0050d7a6559b":[2,0,42,29],
+"_times_8c.html#abc93d05b3519c8a9049626750e8610e6":[2,0,42,28],
+"_times_8c.html#abd08a2d32d0cdec2d63ce9fd5fabb057":[2,0,42,24],
+"_times_8c.html#ae01010231f2c4ee5d719495c47562d3d":[2,0,42,11],
+"_times_8c.html#ae77af3c6f456918720eae01ddc3714f9":[2,0,42,2],
+"_times_8c.html#af035967e4c9f8e312b7e9a8787c85efe":[2,0,42,23],
+"_times_8c.html#af372297343d6dac7e1300f4ae9e39ffd":[2,0,42,1],
+"_times_8c.html#afa0290747ad44d077f8461969060a180":[2,0,42,35],
+"_times_8c.html#afb72f5d7b4d8dba09b40a84ccc51e461":[2,0,42,3],
+"_times_8h.html":[2,0,43],
+"_times_8h.html#a01f08d46080872b9f4284873b7f9dee4":[2,0,43,0],
+"_times_8h.html#a087ca61b43a568e8023d02e70207818a":[2,0,43,11],
+"_times_8h.html#a118171d8631e8be0ad31cd4270128a73":[2,0,43,18],
+"_times_8h.html#a12505c3ca0bd0af0455aefd10fb543fc":[2,0,43,39],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2":[2,0,43,5],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a006525d093472f85302a58ac758ad640":[2,0,43,5,12],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a02dced4e5287dd4f89c944787c8fd209":[2,0,43,5,6],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d":[2,0,43,5,0],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a2c937adab19ffaa90d92d907272681fc":[2,0,43,5,2],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a30c4611a7b0d26864d14fba180d1aa1f":[2,0,43,5,10],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a35b744bc15334aee236729b16b3763fb":[2,0,43,5,7],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a3fa258f3bb2deccc3595e22fd129e1d9":[2,0,43,5,9],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a440438569d2f7021e13c06436bac455e":[2,0,43,5,1],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a470a2bb850730d2f9f812d0cf05db069":[2,0,43,5,5],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17":[2,0,43,5,11],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a56032654a15262d69e8be7d42a7ab381":[2,0,43,5,4],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a901d3b86defe97d76aa17f7959f45a4b":[2,0,43,5,3],
+"_times_8h.html#a18ea97ce6c7a0ad2f40c4bd1ac7b26d2ae922a67b67c79fe59b1de79ba1ef3ec3":[2,0,43,5,8],
+"_times_8h.html#a19f6a46355208d0c822ab43d4d137d14":[2,0,43,23],
+"_times_8h.html#a1d1327b61cf229814149bf455c9c8262":[2,0,43,30],
+"_times_8h.html#a25ac787161a5cad0e3fdfe5a5aeb3236":[2,0,43,4],
+"_times_8h.html#a2a7cd45ad028f22074bb745387bbc1c2":[2,0,43,3],
+"_times_8h.html#a2b02c9296a421c96a64eedab2e27fcba":[2,0,43,12],
+"_times_8h.html#a2c7531da95b7fd0dffd8a172042166e4":[2,0,43,38],
+"_times_8h.html#a3599fc76bc36c9d6db6f572304fcfe66":[2,0,43,31],
+"_times_8h.html#a39bfa4779cc42a48e9a8de936ad48a44":[2,0,43,15],
+"_times_8h.html#a3a2d808e13355500fe34bf8fa71ded9f":[2,0,43,37],
+"_times_8h.html#a424fe822ecd3e435c4d8dd339b57d829":[2,0,43,2],
+"_times_8h.html#a42da83f5485990b6040034e2b7bc70ed":[2,0,43,13],
+"_times_8h.html#a50d4824dc7c06c0ba987e404667f3683":[2,0,43,22],
+"_times_8h.html#a53949c8e1c891b6cd4408bfedd1bcea7":[2,0,43,19],
+"_times_8h.html#a5c249d5b9f0f6708895faac4a6609b29":[2,0,43,20],
+"_times_8h.html#a5e758681c6e49b14c299e121d880c854":[2,0,43,35],
+"_times_8h.html#a6efac9c9769c7e63ad27d5d19ae6e1c7":[2,0,43,21],
+"_times_8h.html#a78561c93cbe2a0e95dc076f053276df5":[2,0,43,26],
+"_times_8h.html#a7d35e430bc9795351da86732a8e94d86":[2,0,43,17],
+"_times_8h.html#a8f99d7d02dbde6244b919ac6f133317e":[2,0,43,32],
+"_times_8h.html#a9108259a9a7f72da449d6897c0c13dc4":[2,0,43,27],
+"_times_8h.html#a95a7ed7f2f9ed567e45a42eb9a287d88":[2,0,43,10],
+"_times_8h.html#a9c97e6841188b672e984a4eba7479277":[2,0,43,1],
+"_times_8h.html#aa0acdf736c364f383bade917b6c12a2c":[2,0,43,14],
+"_times_8h.html#aa341c98032a26dd1bee65a9cb73c63b8":[2,0,43,41],
+"_times_8h.html#aa8ca82832f27ddd1ef7aee92ecfaf30c":[2,0,43,24],
+"_times_8h.html#aa8f5f562cbefb728dc97ac01417633bc":[2,0,43,9],
+"_times_8h.html#aaad97bb254d59671f2701af8dc2cde21":[2,0,43,25],
+"_times_8h.html#ab366018d0e70f2e6fc23b1b2807e7488":[2,0,43,36],
+"_times_8h.html#ab5422238f153d1a963dc0050d7a6559b":[2,0,43,34],
+"_times_8h.html#abc93d05b3519c8a9049626750e8610e6":[2,0,43,33],
+"_times_8h.html#abd08a2d32d0cdec2d63ce9fd5fabb057":[2,0,43,29],
+"_times_8h.html#ae01010231f2c4ee5d719495c47562d3d":[2,0,43,16],
+"_times_8h.html#ae77af3c6f456918720eae01ddc3714f9":[2,0,43,7],
+"_times_8h.html#af035967e4c9f8e312b7e9a8787c85efe":[2,0,43,28],
+"_times_8h.html#af372297343d6dac7e1300f4ae9e39ffd":[2,0,43,6],
+"_times_8h.html#afa0290747ad44d077f8461969060a180":[2,0,43,40],
+"_times_8h.html#afb72f5d7b4d8dba09b40a84ccc51e461":[2,0,43,8],
+"_times_8h_source.html":[2,0,43],
+"annotated.html":[1,0],
+"citelist.html":[0],
+"classes.html":[1,1],
+"filefuncs_8c.html":[2,0,0],
+"filefuncs_8c.html#a0ddb6e2ce212307107a4da5decefcfee":[2,0,0,7],
+"filefuncs_8c.html#a656ed10e1e8aadb73c9de41b827f8eee":[2,0,0,6],
+"filefuncs_8c.html#a69bd14b40775f048c8026b71a6c72329":[2,0,0,2],
+"filefuncs_8c.html#a839d04397d669fa064650a21875951b9":[2,0,0,4],
+"filefuncs_8c.html#abdf5fe7756df6ee737353f7fbcbfbd4b":[2,0,0,8],
+"filefuncs_8c.html#ad267176fe1201c358d6ac3feb70f68b8":[2,0,0,3],
+"filefuncs_8c.html#add5288726b3ae23ec6c69e3d59e09b00":[2,0,0,10],
+"filefuncs_8c.html#ae115bd5076cb9ddf8f1b1dd1cd679ef1":[2,0,0,5],
+"filefuncs_8c.html#ae46a4cb1dab4c7e7ed83d95175b29514":[2,0,0,0],
+"filefuncs_8c.html#ae6021195e9b5a4dd5b2bb95fdf76726f":[2,0,0,1],
+"filefuncs_8c.html#af8195946bfb8aee37b96820552679513":[2,0,0,9],
+"filefuncs_8h.html":[2,0,1],
+"filefuncs_8h.html#a1eed0e73ac452256c2a5cd8dea914b99":[2,0,1,4],
+"filefuncs_8h.html#a4fd001db2f6530979aae0c4e1aa4e8d5":[2,0,1,3],
+"filefuncs_8h.html#a5a98316bbdafe4e2aba0f7bfbd647238":[2,0,1,6],
+"filefuncs_8h.html#a656ed10e1e8aadb73c9de41b827f8eee":[2,0,1,7],
+"filefuncs_8h.html#a839d04397d669fa064650a21875951b9":[2,0,1,5],
+"filefuncs_8h.html#a9d98cc65c80843a2f3a287a05c662271":[2,0,1,11],
+"filefuncs_8h.html#aa21d4a908343c5aca34af8787f80c6c6":[2,0,1,8],
+"filefuncs_8h.html#ab7141bab5837f75163a3e589affc0048":[2,0,1,0],
+"filefuncs_8h.html#ac1c6d5f8d6e6d853371b236f1a5f107b":[2,0,1,2],
+"filefuncs_8h.html#add5288726b3ae23ec6c69e3d59e09b00":[2,0,1,10],
+"filefuncs_8h.html#adf995fb05bea887c67de0267171e6ff4":[2,0,1,9],
+"filefuncs_8h.html#ae46a4cb1dab4c7e7ed83d95175b29514":[2,0,1,1],
+"filefuncs_8h_source.html":[2,0,1],
+"files.html":[2,0],
+"functions.html":[1,2,0,0],
+"functions.html":[1,2,0],
+"functions_b.html":[1,2,0,1],
+"functions_c.html":[1,2,0,2],
+"functions_d.html":[1,2,0,3],
+"functions_e.html":[1,2,0,4],
+"functions_f.html":[1,2,0,5],
+"functions_g.html":[1,2,0,6],
+"functions_h.html":[1,2,0,7],
+"functions_i.html":[1,2,0,8],
+"functions_l.html":[1,2,0,9],
+"functions_m.html":[1,2,0,10],
+"functions_n.html":[1,2,0,11],
+"functions_o.html":[1,2,0,12],
+"functions_p.html":[1,2,0,13],
+"functions_r.html":[1,2,0,14],
+"functions_s.html":[1,2,0,15],
+"functions_t.html":[1,2,0,16],
+"functions_u.html":[1,2,0,17],
+"functions_v.html":[1,2,0,18],
+"functions_vars.html":[1,2,1],
+"functions_vars.html":[1,2,1,0],
+"functions_vars_b.html":[1,2,1,1],
+"functions_vars_c.html":[1,2,1,2],
+"functions_vars_d.html":[1,2,1,3],
+"functions_vars_e.html":[1,2,1,4],
+"functions_vars_f.html":[1,2,1,5],
+"functions_vars_g.html":[1,2,1,6],
+"functions_vars_h.html":[1,2,1,7],
+"functions_vars_i.html":[1,2,1,8],
+"functions_vars_l.html":[1,2,1,9],
+"functions_vars_m.html":[1,2,1,10],
+"functions_vars_n.html":[1,2,1,11],
+"functions_vars_o.html":[1,2,1,12],
+"functions_vars_p.html":[1,2,1,13],
+"functions_vars_r.html":[1,2,1,14],
+"functions_vars_s.html":[1,2,1,15],
+"functions_vars_t.html":[1,2,1,16],
+"functions_vars_u.html":[1,2,1,17],
+"functions_vars_v.html":[1,2,1,18],
+"functions_vars_w.html":[1,2,1,19],
+"functions_vars_x.html":[1,2,1,20],
+"functions_vars_y.html":[1,2,1,21],
+"functions_w.html":[1,2,0,19],
+"functions_x.html":[1,2,0,20],
+"functions_y.html":[1,2,0,21],
+"generic_8c.html":[2,0,2],
+"generic_8c.html#a11003199b3d2783daca30d6c3110973b":[2,0,2,5],
+"generic_8c.html#a1b59895791915578f7b7f96aa7f8e7c4":[2,0,2,1],
+"generic_8c.html#a3156a3189c9286cf2c56384b9d4f00ba":[2,0,2,12],
+"generic_8c.html#a3b620cbbbff502ed6c23af6cb3fc46b2":[2,0,2,4],
+"generic_8c.html#a42c27317771c079928bf61523b38adfa":[2,0,2,6],
+"generic_8c.html#a4ad34bbb851d33a77269262427d3b072":[2,0,2,13],
+"generic_8c.html#a5dbdc3cf42590d2c34e896c3d8b80b43":[2,0,2,3],
+"generic_8c.html#a6150637c525c3ca076ca7cc755e29db2":[2,0,2,10],
+"generic_8c.html#a793c87571ac59fadacd623f5e3e4bb27":[2,0,2,2],
+"generic_8c.html#a9dd2b923dbcf0dcda1a436a5be02c09b":[2,0,2,11],
+"generic_8c.html#a9e6077882ab6b9ddbe0532b293a2ccf4":[2,0,2,8],
+"generic_8c.html#ac88c9c5fc37398d47ba569ca8149fe41":[2,0,2,0],
+"generic_8c.html#ae76330d47526d546ea89a384fe788732":[2,0,2,9],
+"generic_8c.html#af36c688653758da1ec0e97b2f8ad02a9":[2,0,2,7],
+"generic_8h.html":[2,0,3],
+"generic_8h.html#a04d96a713785d741faaa620a475b745c":[2,0,3,11],
+"generic_8h.html#a0985d386e5604b94460bb60ac639d383":[2,0,3,4],
+"generic_8h.html#a0c8186d9b9b7880309c27230bbb5e69d":[2,0,3,33],
+"generic_8h.html#a0f993b6970226fa174326c1db4d0be0e":[2,0,3,35],
+"generic_8h.html#a10f769903592548e508a283bc2b31d42":[2,0,3,12],
+"generic_8h.html#a11003199b3d2783daca30d6c3110973b":[2,0,3,47],
+"generic_8h.html#a14e32c27dc9b188856093ae003f78b5c":[2,0,3,7],
+"generic_8h.html#a1b59895791915578f7b7f96aa7f8e7c4":[2,0,3,43],
+"generic_8h.html#a2196b2e9c04f037b20b9c064276ee7c9":[2,0,3,17],
+"generic_8h.html#a25b8e4edb1775b70059a1a980aff6746":[2,0,3,15],
+"generic_8h.html#a29b9525322b08a5b2bb7fa30ebc48214":[2,0,3,18],
+"generic_8h.html#a313988f3499dfdc18733ae046e2371dc":[2,0,3,38],
+"generic_8h.html#a3156a3189c9286cf2c56384b9d4f00ba":[2,0,3,54],
+"generic_8h.html#a375b5090161790d5783d4bdd92f3f750":[2,0,3,23],
+"generic_8h.html#a39db6982619d623273fad8a383489309":[2,0,3,41],
+"generic_8h.html#a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a":[2,0,3,41,0],
+"generic_8h.html#a39db6982619d623273fad8a383489309aa82764c3079aea4e60c80e45befbb839":[2,0,3,41,1],
+"generic_8h.html#a3a446ef14fca6cda41a6634efdecdde6":[2,0,3,6],
+"generic_8h.html#a3b620cbbbff502ed6c23af6cb3fc46b2":[2,0,3,46],
+"generic_8h.html#a3da15c8b6dfbf1176ddeb33d5e40d3f9":[2,0,3,31],
+"generic_8h.html#a4233bfd6249e6e43650106c6043808bb":[2,0,3,22],
+"generic_8h.html#a42c27317771c079928bf61523b38adfa":[2,0,3,48],
+"generic_8h.html#a48da69c89756b1a25e3a7c618696fac9":[2,0,3,2],
+"generic_8h.html#a4ad34bbb851d33a77269262427d3b072":[2,0,3,55],
+"generic_8h.html#a547f3a33e6f36307e6b78d512e7ae8cb":[2,0,3,27],
+"generic_8h.html#a5863b1da36cc637653e94892978b74ad":[2,0,3,8],
+"generic_8h.html#a5c3660640cebde8a951b74d847b3dfeb":[2,0,3,1],
+"generic_8h.html#a5dbdc3cf42590d2c34e896c3d8b80b43":[2,0,3,45],
+"generic_8h.html#a6150637c525c3ca076ca7cc755e29db2":[2,0,3,52],
+"generic_8h.html#a66785db10ccce58e71eb3555c09188b0":[2,0,3,9],
+"generic_8h.html#a67a26698612a951cb54a963f77cee538":[2,0,3,3],
+"generic_8h.html#a6a010865b10e541735fa2da8f3cd062d":[2,0,3,0],
+"generic_8h.html#a7c213cc89d01ec9cdbaa3356698a86ce":[2,0,3,25],
+"generic_8h.html#a7c6368cf7d9d669e63321edc4f8929e1":[2,0,3,16],
+"generic_8h.html#a7cc214a236ad3bb6ad435bdcf5262a3f":[2,0,3,34],
+"generic_8h.html#a88093fead5165843ef0498d47e621636":[2,0,3,13],
+"generic_8h.html#a8df7ad109bbbe1c1278157e968aecc1d":[2,0,3,10],
+"generic_8h.html#a94d667c93da0511f21142d988f67674f":[2,0,3,40],
+"generic_8h.html#a9983412618e748f0ed750611860a2583":[2,0,3,32],
+"generic_8h.html#a9c7b81b51177020e4735ba49298cf62b":[2,0,3,37],
+"generic_8h.html#a9dd2b923dbcf0dcda1a436a5be02c09b":[2,0,3,53],
+"generic_8h.html#a9e6077882ab6b9ddbe0532b293a2ccf4":[2,0,3,50],
+"generic_8h.html#aa1ff32598cc88bb9fc8bab0a24369ff3":[2,0,3,14],
+"generic_8h.html#aa207fc3bd77ff692557b29468a5ca305":[2,0,3,19],
+"generic_8h.html#aac1dbe1371c37f4c0d743a77108bb06e":[2,0,3,30],
+"generic_8h.html#ac082a1f175ecd155ccd9ee4bfafacb4a":[2,0,3,20],
+"generic_8h.html#ac16dab5cefce6fed135c20d1bae372a5":[2,0,3,57],
+"generic_8h.html#ac4acb71b4114d72176466f9b52bf72ac":[2,0,3,28],
+"generic_8h.html#ac6afabdc09a49a433ee19d8a9486056d":[2,0,3,26],
+"generic_8h.html#ac88c9c5fc37398d47ba569ca8149fe41":[2,0,3,42],
+"generic_8h.html#ad391d97dda769e4d573afb05c6196e70":[2,0,3,36],
+"generic_8h.html#ad5a5ff1aa26b8bf3e12f3f1170b73f62":[2,0,3,44],
+"generic_8h.html#ada051a4499e33e1d0fe82eeeee6d1699":[2,0,3,58],
+"generic_8h.html#ae55bc5afe1eabd76592c8e7a0c7b089c":[2,0,3,5],
+"generic_8h.html#ae76330d47526d546ea89a384fe788732":[2,0,3,51],
+"generic_8h.html#ae9894b66cd216d8ad25902a11ad2f941":[2,0,3,21],
+"generic_8h.html#af1c105fd5732f70b91ddaeda0cc340e3":[2,0,3,39],
+"generic_8h.html#af36c688653758da1ec0e97b2f8ad02a9":[2,0,3,49],
+"generic_8h.html#afafc43142ae143f6f7a354ef676f24a2":[2,0,3,56],
+"generic_8h.html#afbc7bc3d4affbba50477d4c7fb06cccd":[2,0,3,29],
+"generic_8h.html#affe776513b24d84b39af8ab0930fef7f":[2,0,3,24],
+"generic_8h_source.html":[2,0,3],
+"globals.html":[2,1,0],
+"globals.html":[2,1,0,0],
+"globals_a.html":[2,1,0,1],
+"globals_b.html":[2,1,0,2],
+"globals_c.html":[2,1,0,3],
+"globals_d.html":[2,1,0,4],
+"globals_defs.html":[2,1,6],
+"globals_e.html":[2,1,0,5],
+"globals_enum.html":[2,1,4],
+"globals_eval.html":[2,1,5],
+"globals_f.html":[2,1,0,6]
};
diff --git a/doc/html/navtreeindex3.js b/doc/html/navtreeindex3.js
index d83aae3bd..eb074237f 100644
--- a/doc/html/navtreeindex3.js
+++ b/doc/html/navtreeindex3.js
@@ -1,253 +1,253 @@
var NAVTREEINDEX3 =
{
-"globals_func.html":[1,1,1,0],
-"globals_func_b.html":[1,1,1,1],
-"globals_func_c.html":[1,1,1,2],
-"globals_func_d.html":[1,1,1,3],
-"globals_func_e.html":[1,1,1,4],
-"globals_func_f.html":[1,1,1,5],
-"globals_func_g.html":[1,1,1,6],
-"globals_func_h.html":[1,1,1,7],
-"globals_func_i.html":[1,1,1,8],
-"globals_func_l.html":[1,1,1,9],
-"globals_func_m.html":[1,1,1,10],
-"globals_func_n.html":[1,1,1,11],
-"globals_func_o.html":[1,1,1,12],
-"globals_func_p.html":[1,1,1,13],
-"globals_func_r.html":[1,1,1,14],
-"globals_func_s.html":[1,1,1,15],
-"globals_func_t.html":[1,1,1,16],
-"globals_func_u.html":[1,1,1,17],
-"globals_func_w.html":[1,1,1,18],
-"globals_func_y.html":[1,1,1,19],
-"globals_g.html":[1,1,0,7],
-"globals_h.html":[1,1,0,8],
-"globals_i.html":[1,1,0,9],
-"globals_j.html":[1,1,0,10],
-"globals_l.html":[1,1,0,11],
-"globals_m.html":[1,1,0,12],
-"globals_n.html":[1,1,0,13],
-"globals_o.html":[1,1,0,14],
-"globals_p.html":[1,1,0,15],
-"globals_q.html":[1,1,0,16],
-"globals_r.html":[1,1,0,17],
-"globals_s.html":[1,1,0,18],
-"globals_t.html":[1,1,0,19],
-"globals_type.html":[1,1,3],
-"globals_u.html":[1,1,0,20],
-"globals_vars.html":[1,1,2],
-"globals_w.html":[1,1,0,21],
-"globals_y.html":[1,1,0,22],
-"globals_z.html":[1,1,0,23],
+"globals_func.html":[2,1,1],
+"globals_func.html":[2,1,1,0],
+"globals_func_b.html":[2,1,1,1],
+"globals_func_c.html":[2,1,1,2],
+"globals_func_d.html":[2,1,1,3],
+"globals_func_e.html":[2,1,1,4],
+"globals_func_f.html":[2,1,1,5],
+"globals_func_g.html":[2,1,1,6],
+"globals_func_h.html":[2,1,1,7],
+"globals_func_i.html":[2,1,1,8],
+"globals_func_l.html":[2,1,1,9],
+"globals_func_m.html":[2,1,1,10],
+"globals_func_n.html":[2,1,1,11],
+"globals_func_o.html":[2,1,1,12],
+"globals_func_p.html":[2,1,1,13],
+"globals_func_r.html":[2,1,1,14],
+"globals_func_s.html":[2,1,1,15],
+"globals_func_t.html":[2,1,1,16],
+"globals_func_u.html":[2,1,1,17],
+"globals_func_w.html":[2,1,1,18],
+"globals_func_y.html":[2,1,1,19],
+"globals_g.html":[2,1,0,7],
+"globals_h.html":[2,1,0,8],
+"globals_i.html":[2,1,0,9],
+"globals_j.html":[2,1,0,10],
+"globals_l.html":[2,1,0,11],
+"globals_m.html":[2,1,0,12],
+"globals_n.html":[2,1,0,13],
+"globals_o.html":[2,1,0,14],
+"globals_p.html":[2,1,0,15],
+"globals_q.html":[2,1,0,16],
+"globals_r.html":[2,1,0,17],
+"globals_s.html":[2,1,0,18],
+"globals_t.html":[2,1,0,19],
+"globals_type.html":[2,1,3],
+"globals_u.html":[2,1,0,20],
+"globals_vars.html":[2,1,2],
+"globals_w.html":[2,1,0,21],
+"globals_y.html":[2,1,0,22],
+"globals_z.html":[2,1,0,23],
"index.html":[],
-"memblock_8h.html":[1,0,4],
-"memblock_8h.html#a0b53f89ac87accc22fb04fca40f9e08e":[1,0,4,3],
-"memblock_8h.html#a0fb9fb15a1bdd6fe6cdae1d4a4caaea2":[1,0,4,13],
-"memblock_8h.html#a1c62ba217fbb728f4491fab75de0f8d6":[1,0,4,9],
-"memblock_8h.html#a4efa813126bea264d5004452952d4183":[1,0,4,7],
-"memblock_8h.html#a517e4e9e49f638e79511b47817f86aaa":[1,0,4,14],
-"memblock_8h.html#a538e8555fc01cadc5e29e331fb507d50":[1,0,4,2],
-"memblock_8h.html#a67c46872c2345268a29cad3d6ebacaae":[1,0,4,10],
-"memblock_8h.html#a6d67fa985c8d55f8d9173418a61e74b2":[1,0,4,1],
-"memblock_8h.html#a7378f5b28e7040385c2b6ce1e0b8e414":[1,0,4,11],
-"memblock_8h.html#a920d0054b069504874f34133907c0b42":[1,0,4,8],
-"memblock_8h.html#aa4d5299100f77188b65595e2b1c1219e":[1,0,4,5],
-"memblock_8h.html#aa60a6289aac74bde0007509fbc7ab03d":[1,0,4,16],
-"memblock_8h.html#ad24a8f495ad9a9bfab3a390b975d775d":[1,0,4,12],
-"memblock_8h.html#adb92aa47a6598a5135a40d1a435f3b1f":[1,0,4,6],
-"memblock_8h.html#adfabd20e8c4d10e3b9b9b9d4708f2362":[1,0,4,15],
-"memblock_8h.html#aff9c0b5f74ec287fe3bd685699918fa7":[1,0,4,4],
-"memblock_8h_source.html":[1,0,4],
-"my_memory_8h.html":[1,0,6],
-"my_memory_8h.html#a281df42f7fff9db33264d5da49701011":[1,0,6,5],
-"my_memory_8h.html#a670cfe63250ed93b3c3538d711b0ac12":[1,0,6,3],
-"my_memory_8h.html#a82809648b82d65619a2813aebe75d979":[1,0,6,4],
-"my_memory_8h.html#aa1beefabcae7d0eab711c2022bad03b4":[1,0,6,1],
-"my_memory_8h.html#ab4c091b1ea6ff161b4f7ccdf053855eb":[1,0,6,0],
-"my_memory_8h.html#abc338ac7d3b4778528e8cf66dd15dabb":[1,0,6,6],
-"my_memory_8h.html#ac8a0b20f565c72550954aaa7caf2bf83":[1,0,6,2],
-"my_memory_8h_source.html":[1,0,6],
-"mymemory_8c.html":[1,0,5],
-"mymemory_8c.html#a281df42f7fff9db33264d5da49701011":[1,0,5,5],
-"mymemory_8c.html#a670cfe63250ed93b3c3538d711b0ac12":[1,0,5,3],
-"mymemory_8c.html#a82809648b82d65619a2813aebe75d979":[1,0,5,4],
-"mymemory_8c.html#aa1beefabcae7d0eab711c2022bad03b4":[1,0,5,1],
-"mymemory_8c.html#ab4c091b1ea6ff161b4f7ccdf053855eb":[1,0,5,0],
-"mymemory_8c.html#abc338ac7d3b4778528e8cf66dd15dabb":[1,0,5,6],
-"mymemory_8c.html#ac8a0b20f565c72550954aaa7caf2bf83":[1,0,5,2],
+"memblock_8h.html":[2,0,4],
+"memblock_8h.html#a0b53f89ac87accc22fb04fca40f9e08e":[2,0,4,3],
+"memblock_8h.html#a0fb9fb15a1bdd6fe6cdae1d4a4caaea2":[2,0,4,13],
+"memblock_8h.html#a1c62ba217fbb728f4491fab75de0f8d6":[2,0,4,9],
+"memblock_8h.html#a4efa813126bea264d5004452952d4183":[2,0,4,7],
+"memblock_8h.html#a517e4e9e49f638e79511b47817f86aaa":[2,0,4,14],
+"memblock_8h.html#a538e8555fc01cadc5e29e331fb507d50":[2,0,4,2],
+"memblock_8h.html#a67c46872c2345268a29cad3d6ebacaae":[2,0,4,10],
+"memblock_8h.html#a6d67fa985c8d55f8d9173418a61e74b2":[2,0,4,1],
+"memblock_8h.html#a7378f5b28e7040385c2b6ce1e0b8e414":[2,0,4,11],
+"memblock_8h.html#a920d0054b069504874f34133907c0b42":[2,0,4,8],
+"memblock_8h.html#aa4d5299100f77188b65595e2b1c1219e":[2,0,4,5],
+"memblock_8h.html#aa60a6289aac74bde0007509fbc7ab03d":[2,0,4,16],
+"memblock_8h.html#ad24a8f495ad9a9bfab3a390b975d775d":[2,0,4,12],
+"memblock_8h.html#adb92aa47a6598a5135a40d1a435f3b1f":[2,0,4,6],
+"memblock_8h.html#adfabd20e8c4d10e3b9b9b9d4708f2362":[2,0,4,15],
+"memblock_8h.html#aff9c0b5f74ec287fe3bd685699918fa7":[2,0,4,4],
+"memblock_8h_source.html":[2,0,4],
+"my_memory_8h.html":[2,0,6],
+"my_memory_8h.html#a281df42f7fff9db33264d5da49701011":[2,0,6,5],
+"my_memory_8h.html#a670cfe63250ed93b3c3538d711b0ac12":[2,0,6,3],
+"my_memory_8h.html#a82809648b82d65619a2813aebe75d979":[2,0,6,4],
+"my_memory_8h.html#aa1beefabcae7d0eab711c2022bad03b4":[2,0,6,1],
+"my_memory_8h.html#ab4c091b1ea6ff161b4f7ccdf053855eb":[2,0,6,0],
+"my_memory_8h.html#abc338ac7d3b4778528e8cf66dd15dabb":[2,0,6,6],
+"my_memory_8h.html#ac8a0b20f565c72550954aaa7caf2bf83":[2,0,6,2],
+"my_memory_8h_source.html":[2,0,6],
+"mymemory_8c.html":[2,0,5],
+"mymemory_8c.html#a281df42f7fff9db33264d5da49701011":[2,0,5,5],
+"mymemory_8c.html#a670cfe63250ed93b3c3538d711b0ac12":[2,0,5,3],
+"mymemory_8c.html#a82809648b82d65619a2813aebe75d979":[2,0,5,4],
+"mymemory_8c.html#aa1beefabcae7d0eab711c2022bad03b4":[2,0,5,1],
+"mymemory_8c.html#ab4c091b1ea6ff161b4f7ccdf053855eb":[2,0,5,0],
+"mymemory_8c.html#abc338ac7d3b4778528e8cf66dd15dabb":[2,0,5,6],
+"mymemory_8c.html#ac8a0b20f565c72550954aaa7caf2bf83":[2,0,5,2],
"pages.html":[],
-"rands_8c.html":[1,0,7],
-"rands_8c.html#a1697ba8bc67aab0eb972da5596ee5cc9":[1,0,7,0],
-"rands_8c.html#a360602f9de1bde286cb454a0e07c2808":[1,0,7,2],
-"rands_8c.html#a4e79841f0616bc326d924cc6fcd61b0e":[1,0,7,8],
-"rands_8c.html#a5b70649d47341d10706e3a587294d589":[1,0,7,7],
-"rands_8c.html#a6b2c3e2421d50b10f64a632c56f3cdaa":[1,0,7,5],
-"rands_8c.html#a76d078c2fef9e6b9d163f000d11c9346":[1,0,7,4],
-"rands_8c.html#a99ad06019a6dd764a7150a67d55dc30c":[1,0,7,6],
-"rands_8c.html#ad17d320703c92d263551310bab8aedb5":[1,0,7,3],
-"rands_8c.html#aeecd655ab3f03f24d50688e6776586b3":[1,0,7,1],
-"rands_8h.html":[1,0,8],
-"rands_8h.html#a1455ba7faeab85f64b601634591b83de":[1,0,8,2],
-"rands_8h.html#a264e95ffa78bb52b335b4ccce1228840":[1,0,8,1],
-"rands_8h.html#a360602f9de1bde286cb454a0e07c2808":[1,0,8,5],
-"rands_8h.html#a5b70649d47341d10706e3a587294d589":[1,0,8,10],
-"rands_8h.html#a6b2c3e2421d50b10f64a632c56f3cdaa":[1,0,8,8],
-"rands_8h.html#a76d078c2fef9e6b9d163f000d11c9346":[1,0,8,7],
-"rands_8h.html#a7c113f4c25479e9dd7b60b2c382258fb":[1,0,8,4],
-"rands_8h.html#ac710bab1ea1ca04eb37a4095cebe1450":[1,0,8,9],
-"rands_8h.html#ad17d320703c92d263551310bab8aedb5":[1,0,8,6],
-"rands_8h.html#ad66856cf13352818eefa117fb3376660":[1,0,8,0],
-"rands_8h.html#af3c4c74d79e1f731f27b6edb3d0f3a49":[1,0,8,3],
-"rands_8h_source.html":[1,0,8],
-"struct_b_l_o_c_k_i_n_f_o.html":[0,0,0],
-"struct_b_l_o_c_k_i_n_f_o.html#a3a3031c99ba0cc062336f8cd80fcfdb6":[0,0,0,2],
-"struct_b_l_o_c_k_i_n_f_o.html#a418663a53c4fa4a7611c50b0f4ccdffa":[0,0,0,3],
-"struct_b_l_o_c_k_i_n_f_o.html#a880ef736b9b6b77c3607e60c34935ab1":[0,0,0,1],
-"struct_b_l_o_c_k_i_n_f_o.html#acac311adb5793b084eedee9d61873bb0":[0,0,0,0],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html":[0,0,1],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#a2c59a03dc17326076e48d41f0305d7fb":[0,0,1,1],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#a2e7bb52ccbacd589387f1ff34a24a8e1":[0,0,1,0],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#a30a5d46be29a0732e31b9968dce948d3":[0,0,1,2],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#a668387347cc176cdb71e844499ffb8ae":[0,0,1,6],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#a8373aee16290423cf2592a1a015c5dec":[0,0,1,8],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#aab2c5010a9480957dd2e5b3c8e0356e2":[0,0,1,4],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#abf7225426219da03920525e1d122e700":[0,0,1,3],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#ae22c07ba3dabe9a2020f2a1e47614278":[0,0,1,5],
-"struct_s_t___r_g_r___v_a_l_u_e_s.html#af5898a5d09563c03d2543060ff265847":[0,0,1,7],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html":[0,0,2],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a025d80ebe5697358bfbce56e95e99f17":[0,0,2,27],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a0bcf0ca8b166ba657c4ad3f6286a183b":[0,0,2,8],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a0f3019c0b90e2f54cb557b0b70d09592":[0,0,2,0],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a14025d325dc3a8f9d221ee5b64c1d592":[0,0,2,14],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a15d47245fb784af757e13df1485705e6":[0,0,2,3],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a1923f54224d27020b1089838f284735e":[0,0,2,18],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a1ab1eb5096cb8e4178b832b5de7bf620":[0,0,2,6],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a271baacc4ff6a932df8965f964cd1660":[0,0,2,2],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2a846dc26291387c69852c77b47263b4":[0,0,2,25],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2b233d5220b02ca94343cb98a947e316":[0,0,2,28],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2e8a983e379de2e7630300efd934cde6":[0,0,2,24],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a472725f4e7ff3907925d1c76dd9df5d9":[0,0,2,22],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a4b2ebd3f61658ac8417113f3b0630eb9":[0,0,2,23],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a5d22dad514cba80ebf25e6a4a9c83a93":[0,0,2,16],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a61608f9fd666bb44e1821236145d1ba3":[0,0,2,9],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a6ba8d662c8909c6d9f33e5632f53546c":[0,0,2,19],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a6d60ca2b86f8ac06933bc35c9c9145d5":[0,0,2,11],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a70e2dd5ecdf2da74460d1eb053ab7933":[0,0,2,13],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a910247f504a1acb631b9338cc5ff4c92":[0,0,2,20],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a964fdefe4cddfd0c0bb1fc287a358b0d":[0,0,2,12],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#a96f6cd63fd866e38b65fee7d73e82b1d":[0,0,2,7],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#aa9bcd521cdee39d6792d571817c7d6c0":[0,0,2,5],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#aaf7e8e20e9385b48ef00ce833aee5f2b":[0,0,2,15],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#ab80d3d2ca7e78714d9a5dd0ecd9629c7":[0,0,2,30],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#ac22990537dd4cfa68043884d95948de8":[0,0,2,21],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#acffa0e7788302bae3e54286438f3d4d2":[0,0,2,26],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#ad2082cfae8f7bf7e2d82a98e8cf79f8e":[0,0,2,29],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#ae861475a9a57909b6c016809981b64d6":[0,0,2,10],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#aebcc351f958bee84826254294de28bf5":[0,0,2,1],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#aecd05eded6528b3dfa69a5b661041212":[0,0,2,4],
-"struct_s_w___l_a_y_e_r___i_n_f_o.html#afb8d3bafddf8bad9adf8c1be4d96791a":[0,0,2,17],
-"struct_s_w___m_a_r_k_o_v.html":[0,0,3],
-"struct_s_w___m_a_r_k_o_v.html#a0d300351fc442fd7cc9e99120cd24eb6":[0,0,3,10],
-"struct_s_w___m_a_r_k_o_v.html#a1814b8674d464bb662cd4cc378f0311a":[0,0,3,6],
-"struct_s_w___m_a_r_k_o_v.html#a7d55c486248a4f5546971939dc655d93":[0,0,3,1],
-"struct_s_w___m_a_r_k_o_v.html#a8362112fd3d01a56ef16fb02b6922577":[0,0,3,2],
-"struct_s_w___m_a_r_k_o_v.html#a888f68abbef835953b6775730a65652c":[0,0,3,4],
-"struct_s_w___m_a_r_k_o_v.html#aa40f66a41ed1c308e8032b8065b30a4a":[0,0,3,5],
-"struct_s_w___m_a_r_k_o_v.html#aab76285bb8aafa89e3fa56340962d9a1":[0,0,3,7],
-"struct_s_w___m_a_r_k_o_v.html#ac099b7578186299eae03a07324ae3948":[0,0,3,9],
-"struct_s_w___m_a_r_k_o_v.html#ad8e63c0c85d5abe16a03d7ee008bdb0b":[0,0,3,3],
-"struct_s_w___m_a_r_k_o_v.html#aef7204f999937d1b8f98310278c8e41c":[0,0,3,8],
-"struct_s_w___m_a_r_k_o_v.html#afe0733ac0a0dd4349cdb576c143fc6ce":[0,0,3,0],
-"struct_s_w___m_o_d_e_l.html":[0,0,4],
-"struct_s_w___m_o_d_e_l.html#a10500242c8b247ea53a1f55c1e099450":[0,0,4,7],
-"struct_s_w___m_o_d_e_l.html#a232972133f960d8fa900b0c26fbf4445":[0,0,4,13],
-"struct_s_w___m_o_d_e_l.html#a2fd6957c498589e9208edaac093808ea":[0,0,4,1],
-"struct_s_w___m_o_d_e_l.html#a3080ab995b14b9e38ef8b41509efc16c":[0,0,4,14],
-"struct_s_w___m_o_d_e_l.html#a372a89e152904bcc59481c87fe51b0ad":[0,0,4,12],
-"struct_s_w___m_o_d_e_l.html#a4dcb1794a7e84fad27c836311346dd6c":[0,0,4,4],
-"struct_s_w___m_o_d_e_l.html#a51a1edc5cab17c7430c95a7522caa2e8":[0,0,4,5],
-"struct_s_w___m_o_d_e_l.html#a89974c4aa01556a7be50acd29689953e":[0,0,4,6],
-"struct_s_w___m_o_d_e_l.html#a946ebc859cba698ceece86f3cb7715ac":[0,0,4,9],
-"struct_s_w___m_o_d_e_l.html#aa63d4c1bbd8153d2bc8c73c4a0b415cc":[0,0,4,10],
-"struct_s_w___m_o_d_e_l.html#ab3c5fd1e0009d8cb42bda44103a5d22f":[0,0,4,0],
-"struct_s_w___m_o_d_e_l.html#abed13a93f428ea87c32446b0a2ba362e":[0,0,4,3],
-"struct_s_w___m_o_d_e_l.html#ac1202a2b77de0209a9639ae983875b90":[0,0,4,2],
-"struct_s_w___m_o_d_e_l.html#acc7f14d03928972cab78b3bd83d0d68c":[0,0,4,11],
-"struct_s_w___m_o_d_e_l.html#af3e628c4ec9aecdc306764c5d49785d2":[0,0,4,8],
-"struct_s_w___o_u_t_p_u_t.html":[0,0,5],
-"struct_s_w___o_u_t_p_u_t.html#a1b2e79aa8b30b491a7558244a42ef5b1":[0,0,5,12],
-"struct_s_w___o_u_t_p_u_t.html#a28a2b9c7bfdb4e5a8078386212e91545":[0,0,5,1],
-"struct_s_w___o_u_t_p_u_t.html#a2a29e58833af5162fa6dbc14c307af68":[0,0,5,13],
-"struct_s_w___o_u_t_p_u_t.html#a48c42889301263af4fee4078171f5bb9":[0,0,5,8],
-"struct_s_w___o_u_t_p_u_t.html#a5269e635c4f1a5dfd8da16eed011563f":[0,0,5,3],
-"struct_s_w___o_u_t_p_u_t.html#a5ebae03675583fe9acd158fd8cfcf877":[0,0,5,11],
-"struct_s_w___o_u_t_p_u_t.html#a6deda2af703cfc6c41bf105534ae7656":[0,0,5,5],
-"struct_s_w___o_u_t_p_u_t.html#a86d069d21282a56d0f4b730eba846c37":[0,0,5,14],
-"struct_s_w___o_u_t_p_u_t.html#a9bfbb118c01c4f57f87d11fc53859756":[0,0,5,0],
-"struct_s_w___o_u_t_p_u_t.html#aabb6232e4d83770f0d1c46010ade9dc5":[0,0,5,2],
-"struct_s_w___o_u_t_p_u_t.html#ad0253c3c36027641f106440b9e04338a":[0,0,5,9],
-"struct_s_w___o_u_t_p_u_t.html#ad1ffdf6de051cc2520fe539415c31227":[0,0,5,10],
-"struct_s_w___o_u_t_p_u_t.html#ae0dee45cd60304d876e3a6835fab4757":[0,0,5,7],
-"struct_s_w___o_u_t_p_u_t.html#aedb850b7e2cdddec6788dec4ae3cb2b9":[0,0,5,4],
-"struct_s_w___o_u_t_p_u_t.html#afbc2eca291a2288745d102a34c32d938":[0,0,5,6],
-"struct_s_w___s_i_t_e.html":[0,0,6],
-"struct_s_w___s_i_t_e.html#a027a8c196e4b1c06f1d5627498e36336":[0,0,6,29],
-"struct_s_w___s_i_t_e.html#a0ccaf8b11f1d955911baa672d01a69ca":[0,0,6,2],
-"struct_s_w___s_i_t_e.html#a1762feaaded27252b000f391a5d3259c":[0,0,6,35],
-"struct_s_w___s_i_t_e.html#a1ee73c3e369f34738a512a3cfb347f6c":[0,0,6,9],
-"struct_s_w___s_i_t_e.html#a1fad2c5ab6f975f91f3239e0b6864a17":[0,0,6,25],
-"struct_s_w___s_i_t_e.html#a25d5e9b4d6a783d750815ed70335c7dc":[0,0,6,13],
-"struct_s_w___s_i_t_e.html#a2631d8dc67d0d6b2fcc8de1ff198b7e4":[0,0,6,24],
-"struct_s_w___s_i_t_e.html#a26e28e4d53192b0f8939ec18c6da1ca0":[0,0,6,4],
-"struct_s_w___s_i_t_e.html#a2d0faa1184f98e69ebdce43ea73ff065":[0,0,6,28],
-"struct_s_w___s_i_t_e.html#a316a83f5e18d0ef96facdb137be204e8":[0,0,6,20],
-"struct_s_w___s_i_t_e.html#a333a975ee5a0f8ef83d046934ee3e07c":[0,0,6,5],
-"struct_s_w___s_i_t_e.html#a4195d9921f0aa2df1bf1253014c22aa8":[0,0,6,22],
-"struct_s_w___s_i_t_e.html#a4d8fa1fc6e9d47a0df862b6fd17f4d55":[0,0,6,23],
-"struct_s_w___s_i_t_e.html#a4da0818cfd5d9b714a44c6da2a52fc9b":[0,0,6,15],
-"struct_s_w___s_i_t_e.html#a5115e3635bb6564428f7a2d8bd58c397":[0,0,6,19],
-"struct_s_w___s_i_t_e.html#a5de1acbbf63fde3374e3c9dadfbf8e68":[0,0,6,34],
-"struct_s_w___s_i_t_e.html#a629d32537e820e206d40130fad7c4062":[0,0,6,0],
-"struct_s_w___s_i_t_e.html#a6f02194421ed4fd8e615c478ad65f50c":[0,0,6,7],
-"struct_s_w___s_i_t_e.html#a765f882f259cb7b35e7add0c619487b5":[0,0,6,21],
-"struct_s_w___s_i_t_e.html#a774f7dfc974665b01a20b03aece50014":[0,0,6,30],
-"struct_s_w___s_i_t_e.html#a78234f852f50c522c1eb5cd3deef0006":[0,0,6,32],
-"struct_s_w___s_i_t_e.html#a927f6cc5009de29764996f686dd76fda":[0,0,6,33],
-"struct_s_w___s_i_t_e.html#a95e72b7c2bc0c4e6ebb4a5dbd56855ce":[0,0,6,10],
-"struct_s_w___s_i_t_e.html#a9e796e15a361229e4183113ed7513887":[0,0,6,1],
-"struct_s_w___s_i_t_e.html#aa50dc8a846261f34cbf9e1872708b617":[0,0,6,17],
-"struct_s_w___s_i_t_e.html#aa8e2f435288f072fd2b54b671ef18b32":[0,0,6,14],
-"struct_s_w___s_i_t_e.html#aae633b81c30d64e202471683f49efb22":[0,0,6,6],
-"struct_s_w___s_i_t_e.html#ab341f5987573838aa27accaa76cb623d":[0,0,6,27],
-"struct_s_w___s_i_t_e.html#ab57649eca8cb5925b1c64c2a272dded1":[0,0,6,11],
-"struct_s_w___s_i_t_e.html#aba0f70cf5887bb434c2db3d3d3cd98d6":[0,0,6,31],
-"struct_s_w___s_i_t_e.html#abcbc9a27e4b7434550d3874ea122f773":[0,0,6,3],
-"struct_s_w___s_i_t_e.html#ac352e7034b6e5c5338506ed915dde58a":[0,0,6,12],
-"struct_s_w___s_i_t_e.html#ac833a8e8b0064ae71f4c9e5afbac3e2a":[0,0,6,36],
-"struct_s_w___s_i_t_e.html#ac86e8be44e9ab1d2dcf446a6a3d2e49b":[0,0,6,18],
-"struct_s_w___s_i_t_e.html#ad04993303b563bc613ebf91d49d0b907":[0,0,6,16],
-"struct_s_w___s_i_t_e.html#ae5f7fa59995e2f5bcee83c33a216f223":[0,0,6,8],
-"struct_s_w___s_i_t_e.html#ae719e82627da1854175c68f2a983b4e4":[0,0,6,26],
-"struct_s_w___s_k_y.html":[0,0,7],
-"struct_s_w___s_k_y.html#a4ff5ab990d3ea971d383440c6548541f":[0,0,7,9],
-"struct_s_w___s_k_y.html#a5abbc167044f7218819f1ab24c8efd9a":[0,0,7,3],
-"struct_s_w___s_k_y.html#a5bc5d73d1ff5698d0854ed96b1f9efd9":[0,0,7,1],
-"struct_s_w___s_k_y.html#a62644fcb44b1b155c44df63060efb6f1":[0,0,7,7],
-"struct_s_w___s_k_y.html#a83efc4f0d50703fb68cba8499d06ad23":[0,0,7,2],
-"struct_s_w___s_k_y.html#a89810fdf277f73bd5775cf8eadab4e41":[0,0,7,4],
-"struct_s_w___s_k_y.html#aa6e86848395fa97cf26c2dddebbb23a0":[0,0,7,6],
-"struct_s_w___s_k_y.html#aca3ab26df7089417506c37978cb7f418":[0,0,7,8],
-"struct_s_w___s_k_y.html#af017b36b9b0ac37ede5f754370feacd6":[0,0,7,0],
-"struct_s_w___s_k_y.html#af459243a729395ba95b534bb03af3eaa":[0,0,7,5],
-"struct_s_w___s_o_i_l_w_a_t.html":[0,0,8],
-"struct_s_w___s_o_i_l_w_a_t.html#a03e041ce5230b534301d052d6e372a6f":[0,0,8,5],
-"struct_s_w___s_o_i_l_w_a_t.html#a1805861c30af3374c3aa421ac4cc4893":[0,0,8,26],
-"struct_s_w___s_o_i_l_w_a_t.html#a228de038c435a59e1fdde732dec48d65":[0,0,8,18],
-"struct_s_w___s_o_i_l_w_a_t.html#a2ae7767939fbe6768a76865181ebafba":[0,0,8,21],
-"struct_s_w___s_o_i_l_w_a_t.html#a2f09c700a5a9c19d1f3d265c6e93de14":[0,0,8,28],
-"struct_s_w___s_o_i_l_w_a_t.html#a473caf3a53aaf6fcbf786dcd69358cff":[0,0,8,38],
-"struct_s_w___s_o_i_l_w_a_t.html#a50c9180d0925a21ae999cf82a90281f3":[0,0,8,37],
-"struct_s_w___s_o_i_l_w_a_t.html#a56d7bbf038b877fcd89e25afeac5e13c":[0,0,8,39],
-"struct_s_w___s_o_i_l_w_a_t.html#a57fe08c905dbed174e9ca34aecc21fed":[0,0,8,12],
-"struct_s_w___s_o_i_l_w_a_t.html#a5d20e6c7bcc97871d0a6c45d85f1310e":[0,0,8,20]
+"rands_8c.html":[2,0,7],
+"rands_8c.html#a1697ba8bc67aab0eb972da5596ee5cc9":[2,0,7,0],
+"rands_8c.html#a360602f9de1bde286cb454a0e07c2808":[2,0,7,2],
+"rands_8c.html#a4e79841f0616bc326d924cc6fcd61b0e":[2,0,7,8],
+"rands_8c.html#a5b70649d47341d10706e3a587294d589":[2,0,7,7],
+"rands_8c.html#a6b2c3e2421d50b10f64a632c56f3cdaa":[2,0,7,5],
+"rands_8c.html#a76d078c2fef9e6b9d163f000d11c9346":[2,0,7,4],
+"rands_8c.html#a99ad06019a6dd764a7150a67d55dc30c":[2,0,7,6],
+"rands_8c.html#ad17d320703c92d263551310bab8aedb5":[2,0,7,3],
+"rands_8c.html#aeecd655ab3f03f24d50688e6776586b3":[2,0,7,1],
+"rands_8h.html":[2,0,8],
+"rands_8h.html#a1455ba7faeab85f64b601634591b83de":[2,0,8,2],
+"rands_8h.html#a264e95ffa78bb52b335b4ccce1228840":[2,0,8,1],
+"rands_8h.html#a360602f9de1bde286cb454a0e07c2808":[2,0,8,5],
+"rands_8h.html#a5b70649d47341d10706e3a587294d589":[2,0,8,10],
+"rands_8h.html#a6b2c3e2421d50b10f64a632c56f3cdaa":[2,0,8,8],
+"rands_8h.html#a76d078c2fef9e6b9d163f000d11c9346":[2,0,8,7],
+"rands_8h.html#a7c113f4c25479e9dd7b60b2c382258fb":[2,0,8,4],
+"rands_8h.html#ac710bab1ea1ca04eb37a4095cebe1450":[2,0,8,9],
+"rands_8h.html#ad17d320703c92d263551310bab8aedb5":[2,0,8,6],
+"rands_8h.html#ad66856cf13352818eefa117fb3376660":[2,0,8,0],
+"rands_8h.html#af3c4c74d79e1f731f27b6edb3d0f3a49":[2,0,8,3],
+"rands_8h_source.html":[2,0,8],
+"struct_b_l_o_c_k_i_n_f_o.html":[1,0,0],
+"struct_b_l_o_c_k_i_n_f_o.html#a3a3031c99ba0cc062336f8cd80fcfdb6":[1,0,0,2],
+"struct_b_l_o_c_k_i_n_f_o.html#a418663a53c4fa4a7611c50b0f4ccdffa":[1,0,0,3],
+"struct_b_l_o_c_k_i_n_f_o.html#a880ef736b9b6b77c3607e60c34935ab1":[1,0,0,1],
+"struct_b_l_o_c_k_i_n_f_o.html#acac311adb5793b084eedee9d61873bb0":[1,0,0,0],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html":[1,0,1],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#a2c59a03dc17326076e48d41f0305d7fb":[1,0,1,1],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#a2e7bb52ccbacd589387f1ff34a24a8e1":[1,0,1,0],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#a30a5d46be29a0732e31b9968dce948d3":[1,0,1,2],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#a668387347cc176cdb71e844499ffb8ae":[1,0,1,6],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#a8373aee16290423cf2592a1a015c5dec":[1,0,1,8],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#aab2c5010a9480957dd2e5b3c8e0356e2":[1,0,1,4],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#abf7225426219da03920525e1d122e700":[1,0,1,3],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#ae22c07ba3dabe9a2020f2a1e47614278":[1,0,1,5],
+"struct_s_t___r_g_r___v_a_l_u_e_s.html#af5898a5d09563c03d2543060ff265847":[1,0,1,7],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html":[1,0,2],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a025d80ebe5697358bfbce56e95e99f17":[1,0,2,27],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a0bcf0ca8b166ba657c4ad3f6286a183b":[1,0,2,8],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a0f3019c0b90e2f54cb557b0b70d09592":[1,0,2,0],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a14025d325dc3a8f9d221ee5b64c1d592":[1,0,2,14],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a15d47245fb784af757e13df1485705e6":[1,0,2,3],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a1923f54224d27020b1089838f284735e":[1,0,2,18],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a1ab1eb5096cb8e4178b832b5de7bf620":[1,0,2,6],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a271baacc4ff6a932df8965f964cd1660":[1,0,2,2],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2a846dc26291387c69852c77b47263b4":[1,0,2,25],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2b233d5220b02ca94343cb98a947e316":[1,0,2,28],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a2e8a983e379de2e7630300efd934cde6":[1,0,2,24],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a472725f4e7ff3907925d1c76dd9df5d9":[1,0,2,22],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a4b2ebd3f61658ac8417113f3b0630eb9":[1,0,2,23],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a5d22dad514cba80ebf25e6a4a9c83a93":[1,0,2,16],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a61608f9fd666bb44e1821236145d1ba3":[1,0,2,9],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a6ba8d662c8909c6d9f33e5632f53546c":[1,0,2,19],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a6d60ca2b86f8ac06933bc35c9c9145d5":[1,0,2,11],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a70e2dd5ecdf2da74460d1eb053ab7933":[1,0,2,13],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a910247f504a1acb631b9338cc5ff4c92":[1,0,2,20],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a964fdefe4cddfd0c0bb1fc287a358b0d":[1,0,2,12],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#a96f6cd63fd866e38b65fee7d73e82b1d":[1,0,2,7],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#aa9bcd521cdee39d6792d571817c7d6c0":[1,0,2,5],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#aaf7e8e20e9385b48ef00ce833aee5f2b":[1,0,2,15],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#ab80d3d2ca7e78714d9a5dd0ecd9629c7":[1,0,2,30],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#ac22990537dd4cfa68043884d95948de8":[1,0,2,21],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#acffa0e7788302bae3e54286438f3d4d2":[1,0,2,26],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#ad2082cfae8f7bf7e2d82a98e8cf79f8e":[1,0,2,29],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#ae861475a9a57909b6c016809981b64d6":[1,0,2,10],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#aebcc351f958bee84826254294de28bf5":[1,0,2,1],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#aecd05eded6528b3dfa69a5b661041212":[1,0,2,4],
+"struct_s_w___l_a_y_e_r___i_n_f_o.html#afb8d3bafddf8bad9adf8c1be4d96791a":[1,0,2,17],
+"struct_s_w___m_a_r_k_o_v.html":[1,0,3],
+"struct_s_w___m_a_r_k_o_v.html#a0d300351fc442fd7cc9e99120cd24eb6":[1,0,3,10],
+"struct_s_w___m_a_r_k_o_v.html#a1814b8674d464bb662cd4cc378f0311a":[1,0,3,6],
+"struct_s_w___m_a_r_k_o_v.html#a7d55c486248a4f5546971939dc655d93":[1,0,3,1],
+"struct_s_w___m_a_r_k_o_v.html#a8362112fd3d01a56ef16fb02b6922577":[1,0,3,2],
+"struct_s_w___m_a_r_k_o_v.html#a888f68abbef835953b6775730a65652c":[1,0,3,4],
+"struct_s_w___m_a_r_k_o_v.html#aa40f66a41ed1c308e8032b8065b30a4a":[1,0,3,5],
+"struct_s_w___m_a_r_k_o_v.html#aab76285bb8aafa89e3fa56340962d9a1":[1,0,3,7],
+"struct_s_w___m_a_r_k_o_v.html#ac099b7578186299eae03a07324ae3948":[1,0,3,9],
+"struct_s_w___m_a_r_k_o_v.html#ad8e63c0c85d5abe16a03d7ee008bdb0b":[1,0,3,3],
+"struct_s_w___m_a_r_k_o_v.html#aef7204f999937d1b8f98310278c8e41c":[1,0,3,8],
+"struct_s_w___m_a_r_k_o_v.html#afe0733ac0a0dd4349cdb576c143fc6ce":[1,0,3,0],
+"struct_s_w___m_o_d_e_l.html":[1,0,4],
+"struct_s_w___m_o_d_e_l.html#a10500242c8b247ea53a1f55c1e099450":[1,0,4,7],
+"struct_s_w___m_o_d_e_l.html#a232972133f960d8fa900b0c26fbf4445":[1,0,4,13],
+"struct_s_w___m_o_d_e_l.html#a2fd6957c498589e9208edaac093808ea":[1,0,4,1],
+"struct_s_w___m_o_d_e_l.html#a3080ab995b14b9e38ef8b41509efc16c":[1,0,4,14],
+"struct_s_w___m_o_d_e_l.html#a372a89e152904bcc59481c87fe51b0ad":[1,0,4,12],
+"struct_s_w___m_o_d_e_l.html#a4dcb1794a7e84fad27c836311346dd6c":[1,0,4,4],
+"struct_s_w___m_o_d_e_l.html#a51a1edc5cab17c7430c95a7522caa2e8":[1,0,4,5],
+"struct_s_w___m_o_d_e_l.html#a89974c4aa01556a7be50acd29689953e":[1,0,4,6],
+"struct_s_w___m_o_d_e_l.html#a946ebc859cba698ceece86f3cb7715ac":[1,0,4,9],
+"struct_s_w___m_o_d_e_l.html#aa63d4c1bbd8153d2bc8c73c4a0b415cc":[1,0,4,10],
+"struct_s_w___m_o_d_e_l.html#ab3c5fd1e0009d8cb42bda44103a5d22f":[1,0,4,0],
+"struct_s_w___m_o_d_e_l.html#abed13a93f428ea87c32446b0a2ba362e":[1,0,4,3],
+"struct_s_w___m_o_d_e_l.html#ac1202a2b77de0209a9639ae983875b90":[1,0,4,2],
+"struct_s_w___m_o_d_e_l.html#acc7f14d03928972cab78b3bd83d0d68c":[1,0,4,11],
+"struct_s_w___m_o_d_e_l.html#af3e628c4ec9aecdc306764c5d49785d2":[1,0,4,8],
+"struct_s_w___o_u_t_p_u_t.html":[1,0,5],
+"struct_s_w___o_u_t_p_u_t.html#a1b2e79aa8b30b491a7558244a42ef5b1":[1,0,5,12],
+"struct_s_w___o_u_t_p_u_t.html#a28a2b9c7bfdb4e5a8078386212e91545":[1,0,5,1],
+"struct_s_w___o_u_t_p_u_t.html#a2a29e58833af5162fa6dbc14c307af68":[1,0,5,13],
+"struct_s_w___o_u_t_p_u_t.html#a48c42889301263af4fee4078171f5bb9":[1,0,5,8],
+"struct_s_w___o_u_t_p_u_t.html#a5269e635c4f1a5dfd8da16eed011563f":[1,0,5,3],
+"struct_s_w___o_u_t_p_u_t.html#a5ebae03675583fe9acd158fd8cfcf877":[1,0,5,11],
+"struct_s_w___o_u_t_p_u_t.html#a6deda2af703cfc6c41bf105534ae7656":[1,0,5,5],
+"struct_s_w___o_u_t_p_u_t.html#a86d069d21282a56d0f4b730eba846c37":[1,0,5,14],
+"struct_s_w___o_u_t_p_u_t.html#a9bfbb118c01c4f57f87d11fc53859756":[1,0,5,0],
+"struct_s_w___o_u_t_p_u_t.html#aabb6232e4d83770f0d1c46010ade9dc5":[1,0,5,2],
+"struct_s_w___o_u_t_p_u_t.html#ad0253c3c36027641f106440b9e04338a":[1,0,5,9],
+"struct_s_w___o_u_t_p_u_t.html#ad1ffdf6de051cc2520fe539415c31227":[1,0,5,10],
+"struct_s_w___o_u_t_p_u_t.html#ae0dee45cd60304d876e3a6835fab4757":[1,0,5,7],
+"struct_s_w___o_u_t_p_u_t.html#aedb850b7e2cdddec6788dec4ae3cb2b9":[1,0,5,4],
+"struct_s_w___o_u_t_p_u_t.html#afbc2eca291a2288745d102a34c32d938":[1,0,5,6],
+"struct_s_w___s_i_t_e.html":[1,0,6],
+"struct_s_w___s_i_t_e.html#a027a8c196e4b1c06f1d5627498e36336":[1,0,6,29],
+"struct_s_w___s_i_t_e.html#a0ccaf8b11f1d955911baa672d01a69ca":[1,0,6,2],
+"struct_s_w___s_i_t_e.html#a1762feaaded27252b000f391a5d3259c":[1,0,6,35],
+"struct_s_w___s_i_t_e.html#a1ee73c3e369f34738a512a3cfb347f6c":[1,0,6,9],
+"struct_s_w___s_i_t_e.html#a1fad2c5ab6f975f91f3239e0b6864a17":[1,0,6,25],
+"struct_s_w___s_i_t_e.html#a25d5e9b4d6a783d750815ed70335c7dc":[1,0,6,13],
+"struct_s_w___s_i_t_e.html#a2631d8dc67d0d6b2fcc8de1ff198b7e4":[1,0,6,24],
+"struct_s_w___s_i_t_e.html#a26e28e4d53192b0f8939ec18c6da1ca0":[1,0,6,4],
+"struct_s_w___s_i_t_e.html#a2d0faa1184f98e69ebdce43ea73ff065":[1,0,6,28],
+"struct_s_w___s_i_t_e.html#a316a83f5e18d0ef96facdb137be204e8":[1,0,6,20],
+"struct_s_w___s_i_t_e.html#a333a975ee5a0f8ef83d046934ee3e07c":[1,0,6,5],
+"struct_s_w___s_i_t_e.html#a4195d9921f0aa2df1bf1253014c22aa8":[1,0,6,22],
+"struct_s_w___s_i_t_e.html#a4d8fa1fc6e9d47a0df862b6fd17f4d55":[1,0,6,23],
+"struct_s_w___s_i_t_e.html#a4da0818cfd5d9b714a44c6da2a52fc9b":[1,0,6,15],
+"struct_s_w___s_i_t_e.html#a5115e3635bb6564428f7a2d8bd58c397":[1,0,6,19],
+"struct_s_w___s_i_t_e.html#a5de1acbbf63fde3374e3c9dadfbf8e68":[1,0,6,34],
+"struct_s_w___s_i_t_e.html#a629d32537e820e206d40130fad7c4062":[1,0,6,0],
+"struct_s_w___s_i_t_e.html#a6f02194421ed4fd8e615c478ad65f50c":[1,0,6,7],
+"struct_s_w___s_i_t_e.html#a765f882f259cb7b35e7add0c619487b5":[1,0,6,21],
+"struct_s_w___s_i_t_e.html#a774f7dfc974665b01a20b03aece50014":[1,0,6,30],
+"struct_s_w___s_i_t_e.html#a78234f852f50c522c1eb5cd3deef0006":[1,0,6,32],
+"struct_s_w___s_i_t_e.html#a927f6cc5009de29764996f686dd76fda":[1,0,6,33],
+"struct_s_w___s_i_t_e.html#a95e72b7c2bc0c4e6ebb4a5dbd56855ce":[1,0,6,10],
+"struct_s_w___s_i_t_e.html#a9e796e15a361229e4183113ed7513887":[1,0,6,1],
+"struct_s_w___s_i_t_e.html#aa50dc8a846261f34cbf9e1872708b617":[1,0,6,17],
+"struct_s_w___s_i_t_e.html#aa8e2f435288f072fd2b54b671ef18b32":[1,0,6,14],
+"struct_s_w___s_i_t_e.html#aae633b81c30d64e202471683f49efb22":[1,0,6,6],
+"struct_s_w___s_i_t_e.html#ab341f5987573838aa27accaa76cb623d":[1,0,6,27],
+"struct_s_w___s_i_t_e.html#ab57649eca8cb5925b1c64c2a272dded1":[1,0,6,11],
+"struct_s_w___s_i_t_e.html#aba0f70cf5887bb434c2db3d3d3cd98d6":[1,0,6,31],
+"struct_s_w___s_i_t_e.html#abcbc9a27e4b7434550d3874ea122f773":[1,0,6,3],
+"struct_s_w___s_i_t_e.html#ac352e7034b6e5c5338506ed915dde58a":[1,0,6,12],
+"struct_s_w___s_i_t_e.html#ac833a8e8b0064ae71f4c9e5afbac3e2a":[1,0,6,36],
+"struct_s_w___s_i_t_e.html#ac86e8be44e9ab1d2dcf446a6a3d2e49b":[1,0,6,18],
+"struct_s_w___s_i_t_e.html#ad04993303b563bc613ebf91d49d0b907":[1,0,6,16],
+"struct_s_w___s_i_t_e.html#ae5f7fa59995e2f5bcee83c33a216f223":[1,0,6,8],
+"struct_s_w___s_i_t_e.html#ae719e82627da1854175c68f2a983b4e4":[1,0,6,26],
+"struct_s_w___s_k_y.html":[1,0,7],
+"struct_s_w___s_k_y.html#a4ff5ab990d3ea971d383440c6548541f":[1,0,7,9],
+"struct_s_w___s_k_y.html#a5abbc167044f7218819f1ab24c8efd9a":[1,0,7,3],
+"struct_s_w___s_k_y.html#a5bc5d73d1ff5698d0854ed96b1f9efd9":[1,0,7,1],
+"struct_s_w___s_k_y.html#a62644fcb44b1b155c44df63060efb6f1":[1,0,7,7],
+"struct_s_w___s_k_y.html#a83efc4f0d50703fb68cba8499d06ad23":[1,0,7,2],
+"struct_s_w___s_k_y.html#a89810fdf277f73bd5775cf8eadab4e41":[1,0,7,4],
+"struct_s_w___s_k_y.html#aa6e86848395fa97cf26c2dddebbb23a0":[1,0,7,6],
+"struct_s_w___s_k_y.html#aca3ab26df7089417506c37978cb7f418":[1,0,7,8],
+"struct_s_w___s_k_y.html#af017b36b9b0ac37ede5f754370feacd6":[1,0,7,0],
+"struct_s_w___s_k_y.html#af459243a729395ba95b534bb03af3eaa":[1,0,7,5],
+"struct_s_w___s_o_i_l_w_a_t.html":[1,0,8],
+"struct_s_w___s_o_i_l_w_a_t.html#a03e041ce5230b534301d052d6e372a6f":[1,0,8,5],
+"struct_s_w___s_o_i_l_w_a_t.html#a1805861c30af3374c3aa421ac4cc4893":[1,0,8,26],
+"struct_s_w___s_o_i_l_w_a_t.html#a228de038c435a59e1fdde732dec48d65":[1,0,8,18],
+"struct_s_w___s_o_i_l_w_a_t.html#a2ae7767939fbe6768a76865181ebafba":[1,0,8,21],
+"struct_s_w___s_o_i_l_w_a_t.html#a2f09c700a5a9c19d1f3d265c6e93de14":[1,0,8,28],
+"struct_s_w___s_o_i_l_w_a_t.html#a473caf3a53aaf6fcbf786dcd69358cff":[1,0,8,38],
+"struct_s_w___s_o_i_l_w_a_t.html#a50c9180d0925a21ae999cf82a90281f3":[1,0,8,37],
+"struct_s_w___s_o_i_l_w_a_t.html#a56d7bbf038b877fcd89e25afeac5e13c":[1,0,8,39],
+"struct_s_w___s_o_i_l_w_a_t.html#a57fe08c905dbed174e9ca34aecc21fed":[1,0,8,12]
};
diff --git a/doc/html/navtreeindex4.js b/doc/html/navtreeindex4.js
index dbeeebd07..7790e677b 100644
--- a/doc/html/navtreeindex4.js
+++ b/doc/html/navtreeindex4.js
@@ -1,237 +1,238 @@
var NAVTREEINDEX4 =
{
-"struct_s_w___s_o_i_l_w_a_t.html#a5daee6e2e1a9137b841071b737e91774":[0,0,8,33],
-"struct_s_w___s_o_i_l_w_a_t.html#a62e49bd4b9572f84fa6089324d5599ef":[0,0,8,24],
-"struct_s_w___s_o_i_l_w_a_t.html#a68526d39106aabc0c7f2a1480e9cfe25":[0,0,8,9],
-"struct_s_w___s_o_i_l_w_a_t.html#a68e5c33a1f6adf10b5a753a05f624d8d":[0,0,8,30],
-"struct_s_w___s_o_i_l_w_a_t.html#a737c1f175842397814fb73010d6edf63":[0,0,8,1],
-"struct_s_w___s_o_i_l_w_a_t.html#a7d8626416b6c3999010e5e6f3b0b8b88":[0,0,8,29],
-"struct_s_w___s_o_i_l_w_a_t.html#a8c46d477811011c64adff79397b09cf4":[0,0,8,35],
-"struct_s_w___s_o_i_l_w_a_t.html#a8f2a8306199efda056e5ba7d4a7cd139":[0,0,8,4],
-"struct_s_w___s_o_i_l_w_a_t.html#a91c38cb36f890054c8c7cac57fa9e1c3":[0,0,8,14],
-"struct_s_w___s_o_i_l_w_a_t.html#a97e5e7696bf9507aba5ce073dfa1c4ed":[0,0,8,3],
-"struct_s_w___s_o_i_l_w_a_t.html#a9bd6b6ed4f7a4046dedb095840f0cad2":[0,0,8,6],
-"struct_s_w___s_o_i_l_w_a_t.html#a9d390d06432096765fa4ccee86c0d52c":[0,0,8,31],
-"struct_s_w___s_o_i_l_w_a_t.html#aa76de1bb45113a2e78860e6c1cec310d":[0,0,8,8],
-"struct_s_w___s_o_i_l_w_a_t.html#aa8c53c96abedc3ca4403c599c8467438":[0,0,8,2],
-"struct_s_w___s_o_i_l_w_a_t.html#ab20ee61d22fa1ea939c3588598820e64":[0,0,8,0],
-"struct_s_w___s_o_i_l_w_a_t.html#ab3da39f45f394427be3b39284c4f5087":[0,0,8,27],
-"struct_s_w___s_o_i_l_w_a_t.html#ab670488e0cb560b8b69241375a90de64":[0,0,8,16],
-"struct_s_w___s_o_i_l_w_a_t.html#ab6d815d17014699a8eb62e5cb18cb97c":[0,0,8,19],
-"struct_s_w___s_o_i_l_w_a_t.html#abe95cdaea18b0e7040a922781abb752b":[0,0,8,22],
-"struct_s_w___s_o_i_l_w_a_t.html#aca40d0b466b93b565dc469e0cae4a8c7":[0,0,8,7],
-"struct_s_w___s_o_i_l_w_a_t.html#ad7083aac9276d0d6cd23c4b51a792f52":[0,0,8,25],
-"struct_s_w___s_o_i_l_w_a_t.html#ad7cc379ceaeccbcb0868e32670c36a87":[0,0,8,11],
-"struct_s_w___s_o_i_l_w_a_t.html#ae42a92727559a0b8d92e5506496718cd":[0,0,8,23],
-"struct_s_w___s_o_i_l_w_a_t.html#ae4473100eb2fddaa76f6992003bf4375":[0,0,8,36],
-"struct_s_w___s_o_i_l_w_a_t.html#ae5711cd9496256efc48dedec4cc1290b":[0,0,8,34],
-"struct_s_w___s_o_i_l_w_a_t.html#af230932184eefc22bdce3843729544d4":[0,0,8,17],
-"struct_s_w___s_o_i_l_w_a_t.html#af2e9ae147acd4d374308794791069cca":[0,0,8,15],
-"struct_s_w___s_o_i_l_w_a_t.html#af4967dc3798621e76f8dfc46534cdd19":[0,0,8,10],
-"struct_s_w___s_o_i_l_w_a_t.html#afa1a05309f50aed97ddc45eb681cd64c":[0,0,8,32],
-"struct_s_w___s_o_i_l_w_a_t.html#afddca5ce17b929a9d5ef90af851b91cf":[0,0,8,13],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html":[0,0,9],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#a0973f0ebe2ca6501995ae3563d59aa57":[0,0,9,1],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#a66412728dccd4d1d3b5e99063baea807":[0,0,9,3],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ac3cd2f8bcae8e4fd379d7ba2abc232f3":[0,0,9,0],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ad6320d1a34ad896d6cf43162fa30c7b4":[0,0,9,4],
-"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ad8da2a3488424a1912ecc633269d7ad3":[0,0,9,2],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html":[0,0,10],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a0355b8f785f6f968e837dc3a414a0433":[0,0,10,19],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a041a2ed3655b11e83b5acf8fe5ed9ce3":[0,0,10,9],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a04519a8c7f27d6d6b5409f766e89ad5c":[0,0,10,35],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a04fce9cfb61a95c3693a91d063dea8a6":[0,0,10,27],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a1c3b9354318089b7c00350220e3418d7":[0,0,10,1],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a229c820acd5657a9ea24e136db1d2bc7":[0,0,10,31],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a2732c7d89253515ee553d84302d6c1ea":[0,0,10,29],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a2b09b224849349194f1a28bdb472abb9":[0,0,10,0],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a363a24643a39beb0ca3f19f3c1b44d22":[0,0,10,34],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a3d6f483002bb01a607e9b851923df3c7":[0,0,10,21],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a3f9e74424a48896ca29b895b38b9d782":[0,0,10,7],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a4891e54331124e8b93d04287c14b1813":[0,0,10,18],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a5256e09ef6e0a304a1edd408ca13f9ec":[0,0,10,37],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a52be93d2c988ec4c2e5a2d8cd1422813":[0,0,10,32],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6025267482ec8ad65feb6ea92a6433f1":[0,0,10,26],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6099933a1e8bc7009fead8e4cbf0aa3c":[0,0,10,30],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a62c0266c179509a69b235ae934c212a9":[0,0,10,12],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a660403d0f674a97bf8eb0e369a97e96c":[0,0,10,15],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6989725483305680ef30c1f589ff17fc":[0,0,10,6],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6ba208ace69237bb2b8a9a034463cba1":[0,0,10,17],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7148ed89deb427e158c522ce00803942":[0,0,10,2],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a71af23e7901f350e959255b51e567d72":[0,0,10,4],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a78733c0563f5cdc6c7086e0459ce64b1":[0,0,10,40],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7b6c13a72a8a33b4c3c79c93cab2f13e":[0,0,10,24],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7c78a083211cc7cd32de4f43b5abb794":[0,0,10,5],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a8e7df238cdaa43818762d93e8807327c":[0,0,10,11],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a95adc0361480da9fc7bf8d21db69eea8":[0,0,10,38],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a98cf23c06b8fdd2b19bafe6a3327600e":[0,0,10,13],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a994933243a4cc2d79f473370c2a76053":[0,0,10,39],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#aa01a03fb2985bfb56d3fe74c62d0b93c":[0,0,10,28],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ab6ad8ac38110a79b34c1f9681856dbc9":[0,0,10,10],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ab6d54ed116b7aad5ab860961030bbb04":[0,0,10,36],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#abc303bff69f694f8f5d61cb25a7e7e78":[0,0,10,23],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#abd57d93e39a859160944629dc3797546":[0,0,10,25],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ac90c990df256cbb52aa538cc2673c8aa":[0,0,10,8],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#acce8ae04b534bec5ab4c783a387ed5df":[0,0,10,14],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ad0d7bb899e05bce15829ca43c9d03f60":[0,0,10,16],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#adaf7d4faeca0252774a0fa5aa6c39719":[0,0,10,33],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#adf9c843d00f6b2917cfa6bf2e7662641":[0,0,10,22],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ae667fb63cc3c443bb163e5be66f04cda":[0,0,10,3],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#aed2dfb051dba45c3686b8ec7e507ae7c":[0,0,10,41],
-"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#af07369c9647effd71ad6d52a616a09bb":[0,0,10,20],
-"struct_s_w___t_i_m_e_s.html":[0,0,11],
-"struct_s_w___t_i_m_e_s.html#a0de7d85c5eee4a0775985feb738ed990":[0,0,11,1],
-"struct_s_w___t_i_m_e_s.html#a2372efdb38727b02e23b656558133005":[0,0,11,0],
-"struct_s_w___t_i_m_e_s.html#a946437b33df6064e8a2ceaff8d87403e":[0,0,11,2],
-"struct_s_w___v_e_g_e_s_t_a_b.html":[0,0,12],
-"struct_s_w___v_e_g_e_s_t_a_b.html#a30d9632d4c70acffd90399c8fc6f178d":[0,0,12,3],
-"struct_s_w___v_e_g_e_s_t_a_b.html#a92ccdbe60aa9b10d6b62e6c3748d09a0":[0,0,12,0],
-"struct_s_w___v_e_g_e_s_t_a_b.html#a9872d00f71ccada3933694bb6eedd487":[0,0,12,2],
-"struct_s_w___v_e_g_e_s_t_a_b.html#aa899661a9762cfbc13ea36468f1057e5":[0,0,12,1],
-"struct_s_w___v_e_g_e_s_t_a_b.html#ac2a02c6a1b5ca73fc08ce0616557a61a":[0,0,12,4],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html":[0,0,13],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a054f86d5c1977a42a8bed8afb6bcc487":[0,0,13,22],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a0d38bd0068b81d3538f8e1532bafdd6f":[0,0,13,11],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a28f5b722202e6c25714e63868472a116":[0,0,13,13],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a405bfa3f4f32f4ce8c1d8a5eb768b655":[0,0,13,8],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a4a7b511e4277f8e3e4d7ffa5d2ef1c69":[0,0,13,17],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a55d3c45fb5b1cf57d46dd685c52a0470":[0,0,13,1],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a668ef47eb53852897a816c87da53f88d":[0,0,13,14],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a6dce2c86264b4452fcf91d73cee9c5d3":[0,0,13,23],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a74e88b0e4800862aacd11a8673c52f82":[0,0,13,2],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a7585284c370699db1e0d6902e0586fe3":[0,0,13,21],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a76b1af399e02593970f6089b22f4c1ff":[0,0,13,20],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a84b614fda58754c15cc8b015717fd83c":[0,0,13,15],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a88e075e6b30eae80f761ef71659c1383":[0,0,13,9],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a912efd96100f0924d71682579e2087eb":[0,0,13,0],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a924385e29e4abeecf6d35323a17ae836":[0,0,13,16],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ab498ec318e597cdeb00c4e3831b3ac62":[0,0,13,6],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#abc919f26d643b86a7f5a08478fee792f":[0,0,13,18],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ac0056e99466fe025bbcb8ea32d5712f2":[0,0,13,4],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ac3e3025d1ce22c3e79713b3b930d0d52":[0,0,13,3],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#aca1a5d4d1645e520a53e93286241d66c":[0,0,13,12],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ad0b646285d2d7c3e17be68957704e184":[0,0,13,19],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#addc1acaa3c5432e4d0ed136ab5a1f031":[0,0,13,5],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#aee936f02dc75c6c3483f628222a79f80":[0,0,13,10],
-"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#afc8df2155f6b9b9e9bdc2da790b00ee2":[0,0,13,7],
-"struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.html":[0,0,14],
-"struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.html#a1c2139d0c89d0adfd3a3ace8a416dca7":[0,0,14,0],
-"struct_s_w___v_e_g_p_r_o_d.html":[0,0,15],
-"struct_s_w___v_e_g_p_r_o_d.html#a041384568d1586b64687567143cbcd11":[0,0,15,2],
-"struct_s_w___v_e_g_p_r_o_d.html#a3d6873adcf58d644b3fbd7ca937d803f":[0,0,15,7],
-"struct_s_w___v_e_g_p_r_o_d.html#a42e80f66b6f5973b37090a9e70e9819a":[0,0,15,6],
-"struct_s_w___v_e_g_p_r_o_d.html#a50dd7e4e66bb24a38002c69590009af0":[0,0,15,5],
-"struct_s_w___v_e_g_p_r_o_d.html#a632540c51146daf5baabc1a403be0b1f":[0,0,15,4],
-"struct_s_w___v_e_g_p_r_o_d.html#a6dc02172f3656fc2c1d35be002b44d0a":[0,0,15,8],
-"struct_s_w___v_e_g_p_r_o_d.html#ab824467c4d0162c7388953956f15345d":[0,0,15,1],
-"struct_s_w___v_e_g_p_r_o_d.html#ae3b995731fb05eb3b0b8424bf40ddcd2":[0,0,15,0],
-"struct_s_w___v_e_g_p_r_o_d.html#ae8005e7931a10212d74caffeef6d1731":[0,0,15,3],
-"struct_s_w___v_e_g_p_r_o_d.html#af9b2985ddc2863ecc84e1abb6585ac47":[0,0,15,9],
-"struct_s_w___w_e_a_t_h_e_r.html":[0,0,16],
-"struct_s_w___w_e_a_t_h_e_r.html#a074ca1575c0461684c2732407799689f":[0,0,16,11],
-"struct_s_w___w_e_a_t_h_e_r.html#a07a5a49263519fac3a77224545c22147":[0,0,16,26],
-"struct_s_w___w_e_a_t_h_e_r.html#a0ed19288618188bf6ee97b79e933825f":[0,0,16,3],
-"struct_s_w___w_e_a_t_h_e_r.html#a2170f122c587227dac45c3a43e7b8c95":[0,0,16,9],
-"struct_s_w___w_e_a_t_h_e_r.html#a2b842194349c9497002b60fadb9a8db4":[0,0,16,10],
-"struct_s_w___w_e_a_t_h_e_r.html#a2de26678616b0ee9fefa45581b8bc159":[0,0,16,13],
-"struct_s_w___w_e_a_t_h_e_r.html#a33a06f37d77dc0a569fdd211910e8465":[0,0,16,14],
-"struct_s_w___w_e_a_t_h_e_r.html#a390d116f1633413caff92d1268a9b5b0":[0,0,16,25],
-"struct_s_w___w_e_a_t_h_e_r.html#a398983debf906dbbcc6fc0153a9ca3e4":[0,0,16,18],
-"struct_s_w___w_e_a_t_h_e_r.html#a4526d6a3fa640bd31a13c32dfc570c08":[0,0,16,8],
-"struct_s_w___w_e_a_t_h_e_r.html#a6125c910aea131843c0faa4d8e41637a":[0,0,16,22],
-"struct_s_w___w_e_a_t_h_e_r.html#a6600260e93c46b9f8919838a32c9b389":[0,0,16,21],
-"struct_s_w___w_e_a_t_h_e_r.html#a6b689e645a924b30dd9a57520041c845":[0,0,16,4],
-"struct_s_w___w_e_a_t_h_e_r.html#a761cd55309013cec80256c3a6cbbc6d0":[0,0,16,1],
-"struct_s_w___w_e_a_t_h_e_r.html#a784c80b1db5de6ec446d4f4ee3d65141":[0,0,16,17],
-"struct_s_w___w_e_a_t_h_e_r.html#a80cb12da6a34d3788ab56d0a75a5cb95":[0,0,16,12],
-"struct_s_w___w_e_a_t_h_e_r.html#a8db6babb6a12dd4196c04e89980c12f3":[0,0,16,16],
-"struct_s_w___w_e_a_t_h_e_r.html#a969e83e2beda4da6066ccd62f4b1d02a":[0,0,16,5],
-"struct_s_w___w_e_a_t_h_e_r.html#aace2db7867c79b8fc73174d7b424e8a4":[0,0,16,24],
-"struct_s_w___w_e_a_t_h_e_r.html#aaf64b49da6982da69e2c4e2da6b49543":[0,0,16,0],
-"struct_s_w___w_e_a_t_h_e_r.html#ab5b33c69a26fbf22fa42129cf23b16ee":[0,0,16,20],
-"struct_s_w___w_e_a_t_h_e_r.html#aba4ea01a4266e202f3186e3ec575ce32":[0,0,16,7],
-"struct_s_w___w_e_a_t_h_e_r.html#abaaf1b1d5637c6395b97ffc856a51b94":[0,0,16,6],
-"struct_s_w___w_e_a_t_h_e_r.html#abc15c2db7b608c36e2e2d05d1088ccd5":[0,0,16,2],
-"struct_s_w___w_e_a_t_h_e_r.html#abe2d9fedc0dfac60a96c04290f259695":[0,0,16,15],
-"struct_s_w___w_e_a_t_h_e_r.html#ad361ff2517589387ffab2be71200b3a3":[0,0,16,19],
-"struct_s_w___w_e_a_t_h_e_r.html#ae5d8febadccca16df669d1ca8b12041a":[0,0,16,23],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html":[0,0,17],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a2798e58bd5807bcb620ea55861db54ed":[0,0,17,10],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a483365c18e2c02bdf434ca14dd85cb37":[0,0,17,0],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a7353c64d2f60af0cba687656c5fb5fd0":[0,0,17,9],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a75fdbfbedf39e4df22d75e6fbe99287d":[0,0,17,7],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a833e32d3c690e4c8d0941514a87afbff":[0,0,17,11],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a901c2350d1a374e305590490a2aee3b1":[0,0,17,2],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a9b735922ec9885da9efd16dd6722fb05":[0,0,17,8],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#aae83dbc364205907becf4fc3532003fd":[0,0,17,6],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#abc1b6fae0878af3cdd2553a4004b2423":[0,0,17,5],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ac1c6e2b68aaae3cd4baf26490b90fd51":[0,0,17,4],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ae2d64e328e13bf4c1fc27899493a65d1":[0,0,17,3],
-"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ae49402c75209c707546186af06576491":[0,0,17,1],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html":[0,0,18],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#a205f87e5374bcf367f4457695b14cedd":[0,0,18,4],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#a303edf6124c7432718098170f8005023":[0,0,18,3],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#aaf702e69c95ad3e67cd21bc57068cc08":[0,0,18,0],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#acd336b419dca4c9cddd46a32f305e143":[0,0,18,2],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#af17370ce88e1413f03e096a3cee4d0f8":[0,0,18,5],
-"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#af9588a72d5368a35c402077fce55a14b":[0,0,18,1],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html":[0,0,19],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a29fe7299188b0b52fd3faca4f90c7675":[0,0,19,12],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a2b6f14f8fd6fdc71673585f055bb0ffd":[0,0,19,7],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a4069e1bd430c99c389f2a4436aa9517b":[0,0,19,5],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a58a83baf91ef77a8f1c224f691277c8a":[0,0,19,8],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a5b2247f11a4f701e4d8c4ce2efae48c0":[0,0,19,13],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a844174bd6c875b41c6d1e556b97ee0ee":[0,0,19,11],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a89d70017d876b664f263aeae244d84e0":[0,0,19,4],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aa05d33552303b6987adc88e01e9cb914":[0,0,19,0],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aa1c2aa2720f18d44b1e5a2a6373423ee":[0,0,19,6],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aadfb9af8bc88d40a2cb2fa6c7628c402":[0,0,19,10],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#ac4dc863413215d260534d94c35dcd95d":[0,0,19,1],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#adb824c9208853bdc6bc1dfeff9abf96f":[0,0,19,14],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#adbceb5eaaab5ac51c09649dd4d51d929":[0,0,19,2],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#ae8c1b34a0bba9e0ec69c114424347887":[0,0,19,3],
-"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aec8f3d80e3f5a5e592c5995a696112b4":[0,0,19,9],
-"struct_veg_type.html":[0,0,21],
-"struct_veg_type.html#a00218e0ea1cfc50562ffd87f8b16e834":[0,0,21,19],
-"struct_veg_type.html#a086af132e9ff5bd76be61b4845ca50b2":[0,0,21,1],
-"struct_veg_type.html#a19493f6685c21384883de51167240e15":[0,0,21,13],
-"struct_veg_type.html#a2d8ff7ce9d54b9b2e83757ed5ca6ab1f":[0,0,21,28],
-"struct_veg_type.html#a3536780e65f7db9527448c4ee08908b4":[0,0,21,29],
-"struct_veg_type.html#a386cea6b73513d17ac0b87354922fd08":[0,0,21,5],
-"struct_veg_type.html#a39610c665011659163a7398b01b3aa89":[0,0,21,35],
-"struct_veg_type.html#a46c4bcc0a97c701c1593ad6cbd4a0472":[0,0,21,2],
-"struct_veg_type.html#a48191a4cc8787965340dce0e05af21e7":[0,0,21,3],
-"struct_veg_type.html#a4a272eaac75b6ccef38abab3ad9afb0d":[0,0,21,34],
-"struct_veg_type.html#a4e83736604de06c0958fa88a76221062":[0,0,21,21],
-"struct_veg_type.html#a5046a57c5d9c224a683182ee4c2997c4":[0,0,21,7],
-"struct_veg_type.html#a58f4245dbf2862ea99e77c98744a00dd":[0,0,21,14],
-"struct_veg_type.html#a5eb5135d8e977bc384af507469e1f713":[0,0,21,27],
-"struct_veg_type.html#a749ea4c1e5dc7b1a2ebc16c15de3015d":[0,0,21,33],
-"struct_veg_type.html#a7b43bc786d7b25661a4a99e55f96bd9d":[0,0,21,17],
-"struct_veg_type.html#a81084955a7bb26a6856a846e53c1f9f0":[0,0,21,25],
-"struct_veg_type.html#a83b9fc0e45b383d631fabbe83316fb41":[0,0,21,10],
-"struct_veg_type.html#a88a2f9babc0cc68dbe22df58f193ccab":[0,0,21,18],
-"struct_veg_type.html#a8e5483895a2af8a5f2e1304be81f216b":[0,0,21,11],
-"struct_veg_type.html#a9a14971307084c7b7d2ae702cf9f7a7b":[0,0,21,9],
-"struct_veg_type.html#a9a61329df61a5decb05e795460f079dd":[0,0,21,22],
-"struct_veg_type.html#a9e4c05e607cbb0ee3ade5b94e1678dcf":[0,0,21,12],
-"struct_veg_type.html#aac40e85a764b5b1efca9b21a8de7332a":[0,0,21,6],
-"struct_veg_type.html#ab40333654c3536f7939ae1865a7feac4":[0,0,21,16],
-"struct_veg_type.html#ab621b22f5c59574f62956abe8e96efaa":[0,0,21,23],
-"struct_veg_type.html#abbd82dad2f5476416a3979b04c3b213e":[0,0,21,36],
-"struct_veg_type.html#ac0050a00f702961caa7fead3d25485e9":[0,0,21,0],
-"struct_veg_type.html#ac771ad7e7dfab92b5ddcd6f5332b7bf2":[0,0,21,15],
-"struct_veg_type.html#ac93ec2505d567932f523ec92b793920f":[0,0,21,8],
-"struct_veg_type.html#ad52fa22fc31200ff6ccf429746e947ad":[0,0,21,20],
-"struct_veg_type.html#ad959b9fa5752917c23350e152b727953":[0,0,21,31],
-"struct_veg_type.html#aea3b830249ff5131c0fbed64fc1f4c05":[0,0,21,26],
-"struct_veg_type.html#aec9201d5b43b152d86a0450b757d0f97":[0,0,21,4],
-"struct_veg_type.html#af3afdd2c85788d6b6a4c1d91c0d3e483":[0,0,21,30],
-"struct_veg_type.html#afb4774c677b3cd85f2e36eab880c59d6":[0,0,21,32],
-"struct_veg_type.html#aff715aa3ea34e7408699818553e6cc75":[0,0,21,24],
-"structtanfunc__t.html":[0,0,20],
-"structtanfunc__t.html#a19c51d283c353fdce3d5b1ad305efdb2":[0,0,20,0],
-"structtanfunc__t.html#a6517acc9d0c732fbb6cb8cfafe22a4cd":[0,0,20,1],
-"structtanfunc__t.html#a7b917642c1d68005c5fc6f055ef7024d":[0,0,20,3],
-"structtanfunc__t.html#af302497555fcc6e85d0e5f5aff7a0751":[0,0,20,2]
+"struct_s_w___s_o_i_l_w_a_t.html#a5d20e6c7bcc97871d0a6c45d85f1310e":[1,0,8,20],
+"struct_s_w___s_o_i_l_w_a_t.html#a5daee6e2e1a9137b841071b737e91774":[1,0,8,33],
+"struct_s_w___s_o_i_l_w_a_t.html#a62e49bd4b9572f84fa6089324d5599ef":[1,0,8,24],
+"struct_s_w___s_o_i_l_w_a_t.html#a68526d39106aabc0c7f2a1480e9cfe25":[1,0,8,9],
+"struct_s_w___s_o_i_l_w_a_t.html#a68e5c33a1f6adf10b5a753a05f624d8d":[1,0,8,30],
+"struct_s_w___s_o_i_l_w_a_t.html#a737c1f175842397814fb73010d6edf63":[1,0,8,1],
+"struct_s_w___s_o_i_l_w_a_t.html#a7d8626416b6c3999010e5e6f3b0b8b88":[1,0,8,29],
+"struct_s_w___s_o_i_l_w_a_t.html#a8c46d477811011c64adff79397b09cf4":[1,0,8,35],
+"struct_s_w___s_o_i_l_w_a_t.html#a8f2a8306199efda056e5ba7d4a7cd139":[1,0,8,4],
+"struct_s_w___s_o_i_l_w_a_t.html#a91c38cb36f890054c8c7cac57fa9e1c3":[1,0,8,14],
+"struct_s_w___s_o_i_l_w_a_t.html#a97e5e7696bf9507aba5ce073dfa1c4ed":[1,0,8,3],
+"struct_s_w___s_o_i_l_w_a_t.html#a9bd6b6ed4f7a4046dedb095840f0cad2":[1,0,8,6],
+"struct_s_w___s_o_i_l_w_a_t.html#a9d390d06432096765fa4ccee86c0d52c":[1,0,8,31],
+"struct_s_w___s_o_i_l_w_a_t.html#aa76de1bb45113a2e78860e6c1cec310d":[1,0,8,8],
+"struct_s_w___s_o_i_l_w_a_t.html#aa8c53c96abedc3ca4403c599c8467438":[1,0,8,2],
+"struct_s_w___s_o_i_l_w_a_t.html#ab20ee61d22fa1ea939c3588598820e64":[1,0,8,0],
+"struct_s_w___s_o_i_l_w_a_t.html#ab3da39f45f394427be3b39284c4f5087":[1,0,8,27],
+"struct_s_w___s_o_i_l_w_a_t.html#ab670488e0cb560b8b69241375a90de64":[1,0,8,16],
+"struct_s_w___s_o_i_l_w_a_t.html#ab6d815d17014699a8eb62e5cb18cb97c":[1,0,8,19],
+"struct_s_w___s_o_i_l_w_a_t.html#abe95cdaea18b0e7040a922781abb752b":[1,0,8,22],
+"struct_s_w___s_o_i_l_w_a_t.html#aca40d0b466b93b565dc469e0cae4a8c7":[1,0,8,7],
+"struct_s_w___s_o_i_l_w_a_t.html#ad7083aac9276d0d6cd23c4b51a792f52":[1,0,8,25],
+"struct_s_w___s_o_i_l_w_a_t.html#ad7cc379ceaeccbcb0868e32670c36a87":[1,0,8,11],
+"struct_s_w___s_o_i_l_w_a_t.html#ae42a92727559a0b8d92e5506496718cd":[1,0,8,23],
+"struct_s_w___s_o_i_l_w_a_t.html#ae4473100eb2fddaa76f6992003bf4375":[1,0,8,36],
+"struct_s_w___s_o_i_l_w_a_t.html#ae5711cd9496256efc48dedec4cc1290b":[1,0,8,34],
+"struct_s_w___s_o_i_l_w_a_t.html#af230932184eefc22bdce3843729544d4":[1,0,8,17],
+"struct_s_w___s_o_i_l_w_a_t.html#af2e9ae147acd4d374308794791069cca":[1,0,8,15],
+"struct_s_w___s_o_i_l_w_a_t.html#af4967dc3798621e76f8dfc46534cdd19":[1,0,8,10],
+"struct_s_w___s_o_i_l_w_a_t.html#afa1a05309f50aed97ddc45eb681cd64c":[1,0,8,32],
+"struct_s_w___s_o_i_l_w_a_t.html#afddca5ce17b929a9d5ef90af851b91cf":[1,0,8,13],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html":[1,0,9],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#a0973f0ebe2ca6501995ae3563d59aa57":[1,0,9,1],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#a66412728dccd4d1d3b5e99063baea807":[1,0,9,3],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ac3cd2f8bcae8e4fd379d7ba2abc232f3":[1,0,9,0],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ad6320d1a34ad896d6cf43162fa30c7b4":[1,0,9,4],
+"struct_s_w___s_o_i_l_w_a_t___h_i_s_t.html#ad8da2a3488424a1912ecc633269d7ad3":[1,0,9,2],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html":[1,0,10],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a0355b8f785f6f968e837dc3a414a0433":[1,0,10,19],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a041a2ed3655b11e83b5acf8fe5ed9ce3":[1,0,10,9],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a04519a8c7f27d6d6b5409f766e89ad5c":[1,0,10,35],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a04fce9cfb61a95c3693a91d063dea8a6":[1,0,10,27],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a1c3b9354318089b7c00350220e3418d7":[1,0,10,1],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a229c820acd5657a9ea24e136db1d2bc7":[1,0,10,31],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a2732c7d89253515ee553d84302d6c1ea":[1,0,10,29],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a2b09b224849349194f1a28bdb472abb9":[1,0,10,0],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a363a24643a39beb0ca3f19f3c1b44d22":[1,0,10,34],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a3d6f483002bb01a607e9b851923df3c7":[1,0,10,21],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a3f9e74424a48896ca29b895b38b9d782":[1,0,10,7],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a4891e54331124e8b93d04287c14b1813":[1,0,10,18],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a5256e09ef6e0a304a1edd408ca13f9ec":[1,0,10,37],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a52be93d2c988ec4c2e5a2d8cd1422813":[1,0,10,32],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6025267482ec8ad65feb6ea92a6433f1":[1,0,10,26],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6099933a1e8bc7009fead8e4cbf0aa3c":[1,0,10,30],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a62c0266c179509a69b235ae934c212a9":[1,0,10,12],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a660403d0f674a97bf8eb0e369a97e96c":[1,0,10,15],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6989725483305680ef30c1f589ff17fc":[1,0,10,6],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a6ba208ace69237bb2b8a9a034463cba1":[1,0,10,17],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7148ed89deb427e158c522ce00803942":[1,0,10,2],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a71af23e7901f350e959255b51e567d72":[1,0,10,4],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a78733c0563f5cdc6c7086e0459ce64b1":[1,0,10,40],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7b6c13a72a8a33b4c3c79c93cab2f13e":[1,0,10,24],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a7c78a083211cc7cd32de4f43b5abb794":[1,0,10,5],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a8e7df238cdaa43818762d93e8807327c":[1,0,10,11],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a95adc0361480da9fc7bf8d21db69eea8":[1,0,10,38],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a98cf23c06b8fdd2b19bafe6a3327600e":[1,0,10,13],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#a994933243a4cc2d79f473370c2a76053":[1,0,10,39],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#aa01a03fb2985bfb56d3fe74c62d0b93c":[1,0,10,28],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ab6ad8ac38110a79b34c1f9681856dbc9":[1,0,10,10],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ab6d54ed116b7aad5ab860961030bbb04":[1,0,10,36],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#abc303bff69f694f8f5d61cb25a7e7e78":[1,0,10,23],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#abd57d93e39a859160944629dc3797546":[1,0,10,25],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ac90c990df256cbb52aa538cc2673c8aa":[1,0,10,8],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#acce8ae04b534bec5ab4c783a387ed5df":[1,0,10,14],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ad0d7bb899e05bce15829ca43c9d03f60":[1,0,10,16],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#adaf7d4faeca0252774a0fa5aa6c39719":[1,0,10,33],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#adf9c843d00f6b2917cfa6bf2e7662641":[1,0,10,22],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#ae667fb63cc3c443bb163e5be66f04cda":[1,0,10,3],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#aed2dfb051dba45c3686b8ec7e507ae7c":[1,0,10,41],
+"struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.html#af07369c9647effd71ad6d52a616a09bb":[1,0,10,20],
+"struct_s_w___t_i_m_e_s.html":[1,0,11],
+"struct_s_w___t_i_m_e_s.html#a0de7d85c5eee4a0775985feb738ed990":[1,0,11,1],
+"struct_s_w___t_i_m_e_s.html#a2372efdb38727b02e23b656558133005":[1,0,11,0],
+"struct_s_w___t_i_m_e_s.html#a946437b33df6064e8a2ceaff8d87403e":[1,0,11,2],
+"struct_s_w___v_e_g_e_s_t_a_b.html":[1,0,12],
+"struct_s_w___v_e_g_e_s_t_a_b.html#a30d9632d4c70acffd90399c8fc6f178d":[1,0,12,3],
+"struct_s_w___v_e_g_e_s_t_a_b.html#a92ccdbe60aa9b10d6b62e6c3748d09a0":[1,0,12,0],
+"struct_s_w___v_e_g_e_s_t_a_b.html#a9872d00f71ccada3933694bb6eedd487":[1,0,12,2],
+"struct_s_w___v_e_g_e_s_t_a_b.html#aa899661a9762cfbc13ea36468f1057e5":[1,0,12,1],
+"struct_s_w___v_e_g_e_s_t_a_b.html#ac2a02c6a1b5ca73fc08ce0616557a61a":[1,0,12,4],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html":[1,0,13],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a054f86d5c1977a42a8bed8afb6bcc487":[1,0,13,22],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a0d38bd0068b81d3538f8e1532bafdd6f":[1,0,13,11],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a28f5b722202e6c25714e63868472a116":[1,0,13,13],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a405bfa3f4f32f4ce8c1d8a5eb768b655":[1,0,13,8],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a4a7b511e4277f8e3e4d7ffa5d2ef1c69":[1,0,13,17],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a55d3c45fb5b1cf57d46dd685c52a0470":[1,0,13,1],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a668ef47eb53852897a816c87da53f88d":[1,0,13,14],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a6dce2c86264b4452fcf91d73cee9c5d3":[1,0,13,23],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a74e88b0e4800862aacd11a8673c52f82":[1,0,13,2],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a7585284c370699db1e0d6902e0586fe3":[1,0,13,21],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a76b1af399e02593970f6089b22f4c1ff":[1,0,13,20],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a84b614fda58754c15cc8b015717fd83c":[1,0,13,15],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a88e075e6b30eae80f761ef71659c1383":[1,0,13,9],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a912efd96100f0924d71682579e2087eb":[1,0,13,0],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#a924385e29e4abeecf6d35323a17ae836":[1,0,13,16],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ab498ec318e597cdeb00c4e3831b3ac62":[1,0,13,6],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#abc919f26d643b86a7f5a08478fee792f":[1,0,13,18],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ac0056e99466fe025bbcb8ea32d5712f2":[1,0,13,4],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ac3e3025d1ce22c3e79713b3b930d0d52":[1,0,13,3],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#aca1a5d4d1645e520a53e93286241d66c":[1,0,13,12],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#ad0b646285d2d7c3e17be68957704e184":[1,0,13,19],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#addc1acaa3c5432e4d0ed136ab5a1f031":[1,0,13,5],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#aee936f02dc75c6c3483f628222a79f80":[1,0,13,10],
+"struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.html#afc8df2155f6b9b9e9bdc2da790b00ee2":[1,0,13,7],
+"struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.html":[1,0,14],
+"struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.html#a1c2139d0c89d0adfd3a3ace8a416dca7":[1,0,14,0],
+"struct_s_w___v_e_g_p_r_o_d.html":[1,0,15],
+"struct_s_w___v_e_g_p_r_o_d.html#a041384568d1586b64687567143cbcd11":[1,0,15,2],
+"struct_s_w___v_e_g_p_r_o_d.html#a3d6873adcf58d644b3fbd7ca937d803f":[1,0,15,7],
+"struct_s_w___v_e_g_p_r_o_d.html#a42e80f66b6f5973b37090a9e70e9819a":[1,0,15,6],
+"struct_s_w___v_e_g_p_r_o_d.html#a50dd7e4e66bb24a38002c69590009af0":[1,0,15,5],
+"struct_s_w___v_e_g_p_r_o_d.html#a632540c51146daf5baabc1a403be0b1f":[1,0,15,4],
+"struct_s_w___v_e_g_p_r_o_d.html#a6dc02172f3656fc2c1d35be002b44d0a":[1,0,15,8],
+"struct_s_w___v_e_g_p_r_o_d.html#ab824467c4d0162c7388953956f15345d":[1,0,15,1],
+"struct_s_w___v_e_g_p_r_o_d.html#ae3b995731fb05eb3b0b8424bf40ddcd2":[1,0,15,0],
+"struct_s_w___v_e_g_p_r_o_d.html#ae8005e7931a10212d74caffeef6d1731":[1,0,15,3],
+"struct_s_w___v_e_g_p_r_o_d.html#af9b2985ddc2863ecc84e1abb6585ac47":[1,0,15,9],
+"struct_s_w___w_e_a_t_h_e_r.html":[1,0,16],
+"struct_s_w___w_e_a_t_h_e_r.html#a074ca1575c0461684c2732407799689f":[1,0,16,11],
+"struct_s_w___w_e_a_t_h_e_r.html#a07a5a49263519fac3a77224545c22147":[1,0,16,26],
+"struct_s_w___w_e_a_t_h_e_r.html#a0ed19288618188bf6ee97b79e933825f":[1,0,16,3],
+"struct_s_w___w_e_a_t_h_e_r.html#a2170f122c587227dac45c3a43e7b8c95":[1,0,16,9],
+"struct_s_w___w_e_a_t_h_e_r.html#a2b842194349c9497002b60fadb9a8db4":[1,0,16,10],
+"struct_s_w___w_e_a_t_h_e_r.html#a2de26678616b0ee9fefa45581b8bc159":[1,0,16,13],
+"struct_s_w___w_e_a_t_h_e_r.html#a33a06f37d77dc0a569fdd211910e8465":[1,0,16,14],
+"struct_s_w___w_e_a_t_h_e_r.html#a390d116f1633413caff92d1268a9b5b0":[1,0,16,25],
+"struct_s_w___w_e_a_t_h_e_r.html#a398983debf906dbbcc6fc0153a9ca3e4":[1,0,16,18],
+"struct_s_w___w_e_a_t_h_e_r.html#a4526d6a3fa640bd31a13c32dfc570c08":[1,0,16,8],
+"struct_s_w___w_e_a_t_h_e_r.html#a6125c910aea131843c0faa4d8e41637a":[1,0,16,22],
+"struct_s_w___w_e_a_t_h_e_r.html#a6600260e93c46b9f8919838a32c9b389":[1,0,16,21],
+"struct_s_w___w_e_a_t_h_e_r.html#a6b689e645a924b30dd9a57520041c845":[1,0,16,4],
+"struct_s_w___w_e_a_t_h_e_r.html#a761cd55309013cec80256c3a6cbbc6d0":[1,0,16,1],
+"struct_s_w___w_e_a_t_h_e_r.html#a784c80b1db5de6ec446d4f4ee3d65141":[1,0,16,17],
+"struct_s_w___w_e_a_t_h_e_r.html#a80cb12da6a34d3788ab56d0a75a5cb95":[1,0,16,12],
+"struct_s_w___w_e_a_t_h_e_r.html#a8db6babb6a12dd4196c04e89980c12f3":[1,0,16,16],
+"struct_s_w___w_e_a_t_h_e_r.html#a969e83e2beda4da6066ccd62f4b1d02a":[1,0,16,5],
+"struct_s_w___w_e_a_t_h_e_r.html#aace2db7867c79b8fc73174d7b424e8a4":[1,0,16,24],
+"struct_s_w___w_e_a_t_h_e_r.html#aaf64b49da6982da69e2c4e2da6b49543":[1,0,16,0],
+"struct_s_w___w_e_a_t_h_e_r.html#ab5b33c69a26fbf22fa42129cf23b16ee":[1,0,16,20],
+"struct_s_w___w_e_a_t_h_e_r.html#aba4ea01a4266e202f3186e3ec575ce32":[1,0,16,7],
+"struct_s_w___w_e_a_t_h_e_r.html#abaaf1b1d5637c6395b97ffc856a51b94":[1,0,16,6],
+"struct_s_w___w_e_a_t_h_e_r.html#abc15c2db7b608c36e2e2d05d1088ccd5":[1,0,16,2],
+"struct_s_w___w_e_a_t_h_e_r.html#abe2d9fedc0dfac60a96c04290f259695":[1,0,16,15],
+"struct_s_w___w_e_a_t_h_e_r.html#ad361ff2517589387ffab2be71200b3a3":[1,0,16,19],
+"struct_s_w___w_e_a_t_h_e_r.html#ae5d8febadccca16df669d1ca8b12041a":[1,0,16,23],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html":[1,0,17],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a2798e58bd5807bcb620ea55861db54ed":[1,0,17,10],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a483365c18e2c02bdf434ca14dd85cb37":[1,0,17,0],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a7353c64d2f60af0cba687656c5fb5fd0":[1,0,17,9],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a75fdbfbedf39e4df22d75e6fbe99287d":[1,0,17,7],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a833e32d3c690e4c8d0941514a87afbff":[1,0,17,11],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a901c2350d1a374e305590490a2aee3b1":[1,0,17,2],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#a9b735922ec9885da9efd16dd6722fb05":[1,0,17,8],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#aae83dbc364205907becf4fc3532003fd":[1,0,17,6],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#abc1b6fae0878af3cdd2553a4004b2423":[1,0,17,5],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ac1c6e2b68aaae3cd4baf26490b90fd51":[1,0,17,4],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ae2d64e328e13bf4c1fc27899493a65d1":[1,0,17,3],
+"struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.html#ae49402c75209c707546186af06576491":[1,0,17,1],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html":[1,0,18],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#a205f87e5374bcf367f4457695b14cedd":[1,0,18,4],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#a303edf6124c7432718098170f8005023":[1,0,18,3],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#aaf702e69c95ad3e67cd21bc57068cc08":[1,0,18,0],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#acd336b419dca4c9cddd46a32f305e143":[1,0,18,2],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#af17370ce88e1413f03e096a3cee4d0f8":[1,0,18,5],
+"struct_s_w___w_e_a_t_h_e_r___h_i_s_t.html#af9588a72d5368a35c402077fce55a14b":[1,0,18,1],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html":[1,0,19],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a29fe7299188b0b52fd3faca4f90c7675":[1,0,19,12],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a2b6f14f8fd6fdc71673585f055bb0ffd":[1,0,19,7],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a4069e1bd430c99c389f2a4436aa9517b":[1,0,19,5],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a58a83baf91ef77a8f1c224f691277c8a":[1,0,19,8],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a5b2247f11a4f701e4d8c4ce2efae48c0":[1,0,19,13],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a844174bd6c875b41c6d1e556b97ee0ee":[1,0,19,11],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#a89d70017d876b664f263aeae244d84e0":[1,0,19,4],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aa05d33552303b6987adc88e01e9cb914":[1,0,19,0],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aa1c2aa2720f18d44b1e5a2a6373423ee":[1,0,19,6],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aadfb9af8bc88d40a2cb2fa6c7628c402":[1,0,19,10],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#ac4dc863413215d260534d94c35dcd95d":[1,0,19,1],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#adb824c9208853bdc6bc1dfeff9abf96f":[1,0,19,14],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#adbceb5eaaab5ac51c09649dd4d51d929":[1,0,19,2],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#ae8c1b34a0bba9e0ec69c114424347887":[1,0,19,3],
+"struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.html#aec8f3d80e3f5a5e592c5995a696112b4":[1,0,19,9],
+"struct_veg_type.html":[1,0,21],
+"struct_veg_type.html#a00218e0ea1cfc50562ffd87f8b16e834":[1,0,21,19],
+"struct_veg_type.html#a086af132e9ff5bd76be61b4845ca50b2":[1,0,21,1],
+"struct_veg_type.html#a19493f6685c21384883de51167240e15":[1,0,21,13],
+"struct_veg_type.html#a2d8ff7ce9d54b9b2e83757ed5ca6ab1f":[1,0,21,28],
+"struct_veg_type.html#a3536780e65f7db9527448c4ee08908b4":[1,0,21,29],
+"struct_veg_type.html#a386cea6b73513d17ac0b87354922fd08":[1,0,21,5],
+"struct_veg_type.html#a39610c665011659163a7398b01b3aa89":[1,0,21,35],
+"struct_veg_type.html#a46c4bcc0a97c701c1593ad6cbd4a0472":[1,0,21,2],
+"struct_veg_type.html#a48191a4cc8787965340dce0e05af21e7":[1,0,21,3],
+"struct_veg_type.html#a4a272eaac75b6ccef38abab3ad9afb0d":[1,0,21,34],
+"struct_veg_type.html#a4e83736604de06c0958fa88a76221062":[1,0,21,21],
+"struct_veg_type.html#a5046a57c5d9c224a683182ee4c2997c4":[1,0,21,7],
+"struct_veg_type.html#a58f4245dbf2862ea99e77c98744a00dd":[1,0,21,14],
+"struct_veg_type.html#a5eb5135d8e977bc384af507469e1f713":[1,0,21,27],
+"struct_veg_type.html#a749ea4c1e5dc7b1a2ebc16c15de3015d":[1,0,21,33],
+"struct_veg_type.html#a7b43bc786d7b25661a4a99e55f96bd9d":[1,0,21,17],
+"struct_veg_type.html#a81084955a7bb26a6856a846e53c1f9f0":[1,0,21,25],
+"struct_veg_type.html#a83b9fc0e45b383d631fabbe83316fb41":[1,0,21,10],
+"struct_veg_type.html#a88a2f9babc0cc68dbe22df58f193ccab":[1,0,21,18],
+"struct_veg_type.html#a8e5483895a2af8a5f2e1304be81f216b":[1,0,21,11],
+"struct_veg_type.html#a9a14971307084c7b7d2ae702cf9f7a7b":[1,0,21,9],
+"struct_veg_type.html#a9a61329df61a5decb05e795460f079dd":[1,0,21,22],
+"struct_veg_type.html#a9e4c05e607cbb0ee3ade5b94e1678dcf":[1,0,21,12],
+"struct_veg_type.html#aac40e85a764b5b1efca9b21a8de7332a":[1,0,21,6],
+"struct_veg_type.html#ab40333654c3536f7939ae1865a7feac4":[1,0,21,16],
+"struct_veg_type.html#ab621b22f5c59574f62956abe8e96efaa":[1,0,21,23],
+"struct_veg_type.html#abbd82dad2f5476416a3979b04c3b213e":[1,0,21,36],
+"struct_veg_type.html#ac0050a00f702961caa7fead3d25485e9":[1,0,21,0],
+"struct_veg_type.html#ac771ad7e7dfab92b5ddcd6f5332b7bf2":[1,0,21,15],
+"struct_veg_type.html#ac93ec2505d567932f523ec92b793920f":[1,0,21,8],
+"struct_veg_type.html#ad52fa22fc31200ff6ccf429746e947ad":[1,0,21,20],
+"struct_veg_type.html#ad959b9fa5752917c23350e152b727953":[1,0,21,31],
+"struct_veg_type.html#aea3b830249ff5131c0fbed64fc1f4c05":[1,0,21,26],
+"struct_veg_type.html#aec9201d5b43b152d86a0450b757d0f97":[1,0,21,4],
+"struct_veg_type.html#af3afdd2c85788d6b6a4c1d91c0d3e483":[1,0,21,30],
+"struct_veg_type.html#afb4774c677b3cd85f2e36eab880c59d6":[1,0,21,32],
+"struct_veg_type.html#aff715aa3ea34e7408699818553e6cc75":[1,0,21,24],
+"structtanfunc__t.html":[1,0,20],
+"structtanfunc__t.html#a19c51d283c353fdce3d5b1ad305efdb2":[1,0,20,0],
+"structtanfunc__t.html#a6517acc9d0c732fbb6cb8cfafe22a4cd":[1,0,20,1],
+"structtanfunc__t.html#a7b917642c1d68005c5fc6f055ef7024d":[1,0,20,3],
+"structtanfunc__t.html#af302497555fcc6e85d0e5f5aff7a0751":[1,0,20,2]
};
diff --git a/doc/html/pages.html b/doc/html/pages.html
new file mode 100644
index 000000000..b5c88295e
--- /dev/null
+++ b/doc/html/pages.html
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+SOILWAT2: Related Pages
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SOILWAT2
+ 3.2.7
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Here is a list of all related documentation pages:
+
+
+
+
+
+
diff --git a/doc/html/rands_8c.html b/doc/html/rands_8c.html
index 428abc473..0b63d62bc 100644
--- a/doc/html/rands_8c.html
+++ b/doc/html/rands_8c.html
@@ -176,7 +176,9 @@
+This code is distributed under the GNU LGPL license.
+More info can be found here
- Parameters
-
aa. | The first shape parameter of the beta distribution with 0.0 < aa. |
diff --git a/doc/html/search/all_2.js b/doc/html/search/all_2.js
index d7affb982..7faadda02 100644
--- a/doc/html/search/all_2.js
+++ b/doc/html/search/all_2.js
@@ -16,5 +16,6 @@ var searchData=
['bmlimiter',['bmLimiter',['../struct_s_w___s_i_t_e.html#a0ccaf8b11f1d955911baa672d01a69ca',1,'SW_SITE']]],
['bool',['Bool',['../generic_8h.html#a39db6982619d623273fad8a383489309',1,'generic.h']]],
['bucketsize',['BUCKETSIZE',['../rands_8c.html#a1697ba8bc67aab0eb972da5596ee5cc9',1,'rands.c']]],
- ['byte',['byte',['../generic_8h.html#a0c8186d9b9b7880309c27230bbb5e69d',1,'generic.h']]]
+ ['byte',['byte',['../generic_8h.html#a0c8186d9b9b7880309c27230bbb5e69d',1,'generic.h']]],
+ ['bibliography',['Bibliography',['../citelist.html',1,'']]]
];
diff --git a/doc/html/search/pages_0.html b/doc/html/search/pages_0.html
new file mode 100644
index 000000000..4955b9e4f
--- /dev/null
+++ b/doc/html/search/pages_0.html
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
Loading...
+
+
+
Searching...
+
No Matches
+
+
+
+
diff --git a/doc/html/search/pages_0.js b/doc/html/search/pages_0.js
new file mode 100644
index 000000000..19061bc6e
--- /dev/null
+++ b/doc/html/search/pages_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['bibliography',['Bibliography',['../citelist.html',1,'']]]
+];
diff --git a/doc/html/search/searchdata.js b/doc/html/search/searchdata.js
index fbb4fc6b0..c0df089c5 100644
--- a/doc/html/search/searchdata.js
+++ b/doc/html/search/searchdata.js
@@ -8,7 +8,8 @@ var indexSectionsWithContent =
5: "bfilrt",
6: "bmost",
7: "adefjmnosty",
- 8: "abdefgilmoprstwyz"
+ 8: "abdefgilmoprstwyz",
+ 9: "b"
};
var indexSectionNames =
@@ -21,7 +22,8 @@ var indexSectionNames =
5: "typedefs",
6: "enums",
7: "enumvalues",
- 8: "defines"
+ 8: "defines",
+ 9: "pages"
};
var indexSectionLabels =
@@ -34,6 +36,7 @@ var indexSectionLabels =
5: "Typedefs",
6: "Enumerations",
7: "Enumerator",
- 8: "Macros"
+ 8: "Macros",
+ 9: "Pages"
};
diff --git a/doc/latex/Makefile b/doc/latex/Makefile
new file mode 100644
index 000000000..8764d1364
--- /dev/null
+++ b/doc/latex/Makefile
@@ -0,0 +1,23 @@
+all: refman.pdf
+
+pdf: refman.pdf
+
+refman.pdf: clean refman.tex
+ pdflatex refman
+ makeindex refman.idx
+ bibtex refman
+ pdflatex refman
+ pdflatex refman
+ latex_count=8 ; \
+ while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\
+ do \
+ echo "Rerunning latex...." ;\
+ pdflatex refman ;\
+ latex_count=`expr $$latex_count - 1` ;\
+ done
+ makeindex refman.idx
+ pdflatex refman
+
+
+clean:
+ rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf
diff --git a/doc/latex/_r_e_a_d_m_e_8md.tex b/doc/latex/_r_e_a_d_m_e_8md.tex
new file mode 100644
index 000000000..190498d80
--- /dev/null
+++ b/doc/latex/_r_e_a_d_m_e_8md.tex
@@ -0,0 +1,2 @@
+\hypertarget{_r_e_a_d_m_e_8md}{}\section{R\+E\+A\+D\+M\+E.\+md File Reference}
+\label{_r_e_a_d_m_e_8md}\index{R\+E\+A\+D\+M\+E.\+md@{R\+E\+A\+D\+M\+E.\+md}}
diff --git a/doc/latex/_s_w___control_8c.tex b/doc/latex/_s_w___control_8c.tex
new file mode 100644
index 000000000..a58537e71
--- /dev/null
+++ b/doc/latex/_s_w___control_8c.tex
@@ -0,0 +1,86 @@
+\hypertarget{_s_w___control_8c}{}\section{S\+W\+\_\+\+Control.\+c File Reference}
+\label{_s_w___control_8c}\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}rands.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Control.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Output.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Estab.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Prod.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___control_8c_aff0bb7870fbf9020899035540e606250}{S\+W\+\_\+\+F\+L\+W\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___control_8c_a943a69d15500659311cb5037d1afae53}{S\+W\+\_\+\+C\+T\+L\+\_\+main} (void)
+\item
+void \hyperlink{_s_w___control_8c_ae2909281ecba352303cc710e1c045c54}{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model} (const char $\ast$firstfile)
+\item
+void \hyperlink{_s_w___control_8c_a43102daf9adb8884f1536ddd5267b5d3}{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___control_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} \hyperlink{_s_w___control_8c_a4b2149c2e1b77da676359b0bc64b1710}{S\+W\+\_\+\+Veg\+Estab}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___control_8c_ae2909281ecba352303cc710e1c045c54}\label{_s_w___control_8c_ae2909281ecba352303cc710e1c045c54}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model@{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model@{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model()}{SW\_CTL\_init\_model()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model (\begin{DoxyParamCaption}\item[{const char $\ast$}]{firstfile }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___control_8c_a943a69d15500659311cb5037d1afae53}\label{_s_w___control_8c_a943a69d15500659311cb5037d1afae53}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+C\+T\+L\+\_\+main@{S\+W\+\_\+\+C\+T\+L\+\_\+main}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+main@{S\+W\+\_\+\+C\+T\+L\+\_\+main}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+main()}{SW\_CTL\_main()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+main (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___control_8c_a43102daf9adb8884f1536ddd5267b5d3}\label{_s_w___control_8c_a43102daf9adb8884f1536ddd5267b5d3}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year@{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year@{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year()}{SW\_CTL\_run\_current\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main().
+
+\mbox{\Hypertarget{_s_w___control_8c_aff0bb7870fbf9020899035540e606250}\label{_s_w___control_8c_aff0bb7870fbf9020899035540e606250}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+F\+L\+W\+\_\+construct@{S\+W\+\_\+\+F\+L\+W\+\_\+construct}}
+\index{S\+W\+\_\+\+F\+L\+W\+\_\+construct@{S\+W\+\_\+\+F\+L\+W\+\_\+construct}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+L\+W\+\_\+construct()}{SW\_FLW\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+L\+W\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___control_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___control_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+\mbox{\Hypertarget{_s_w___control_8c_a4b2149c2e1b77da676359b0bc64b1710}\label{_s_w___control_8c_a4b2149c2e1b77da676359b0bc64b1710}}
+\index{S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}!S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}}
+\index{S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}!S\+W\+\_\+\+Control.\+c@{S\+W\+\_\+\+Control.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Estab}{SW\_VegEstab}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} S\+W\+\_\+\+Veg\+Estab}
+
diff --git a/doc/latex/_s_w___control_8h.tex b/doc/latex/_s_w___control_8h.tex
new file mode 100644
index 000000000..fab50ac64
--- /dev/null
+++ b/doc/latex/_s_w___control_8h.tex
@@ -0,0 +1,36 @@
+\hypertarget{_s_w___control_8h}{}\section{S\+W\+\_\+\+Control.\+h File Reference}
+\label{_s_w___control_8h}\index{S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___control_8h_ae2909281ecba352303cc710e1c045c54}{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model} (const char $\ast$firstfile)
+\item
+void \hyperlink{_s_w___control_8h_a943a69d15500659311cb5037d1afae53}{S\+W\+\_\+\+C\+T\+L\+\_\+main} (void)
+\item
+void \hyperlink{_s_w___control_8h_a43102daf9adb8884f1536ddd5267b5d3}{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___control_8h_ae2909281ecba352303cc710e1c045c54}\label{_s_w___control_8h_ae2909281ecba352303cc710e1c045c54}}
+\index{S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}!S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model@{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model@{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model}!S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model()}{SW\_CTL\_init\_model()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model (\begin{DoxyParamCaption}\item[{const char $\ast$}]{firstfile }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___control_8h_a943a69d15500659311cb5037d1afae53}\label{_s_w___control_8h_a943a69d15500659311cb5037d1afae53}}
+\index{S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}!S\+W\+\_\+\+C\+T\+L\+\_\+main@{S\+W\+\_\+\+C\+T\+L\+\_\+main}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+main@{S\+W\+\_\+\+C\+T\+L\+\_\+main}!S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+main()}{SW\_CTL\_main()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+main (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___control_8h_a43102daf9adb8884f1536ddd5267b5d3}\label{_s_w___control_8h_a43102daf9adb8884f1536ddd5267b5d3}}
+\index{S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}!S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year@{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year}}
+\index{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year@{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year}!S\+W\+\_\+\+Control.\+h@{S\+W\+\_\+\+Control.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year()}{SW\_CTL\_run\_current\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main().
+
diff --git a/doc/latex/_s_w___defines_8h.tex b/doc/latex/_s_w___defines_8h.tex
new file mode 100644
index 000000000..9809882e4
--- /dev/null
+++ b/doc/latex/_s_w___defines_8h.tex
@@ -0,0 +1,332 @@
+\hypertarget{_s_w___defines_8h}{}\section{S\+W\+\_\+\+Defines.\+h File Reference}
+\label{_s_w___defines_8h}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{structtanfunc__t}{tanfunc\+\_\+t}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___defines_8h_a3412d1323113d9cafb20dc96df2dc207}{S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH}~15. /$\ast$ numerator over depth in slow drain equation $\ast$/
+\item
+\#define \hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}~25
+\item
+\#define \hyperlink{_s_w___defines_8h_a359e4b44b4d0483a082034d9ee2aa5bd}{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}~4
+\item
+\#define \hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}~100
+\item
+\#define \hyperlink{_s_w___defines_8h_ad3fb7b03fb7649f7e98c8904e542f6f4}{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}~999. /$\ast$ value to use as M\+I\+S\+S\+I\+NG $\ast$/
+\item
+\#define \hyperlink{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}{PI}~3.\+141592653589793238462643383279502884197169399375
+\item
+\#define \hyperlink{_s_w___defines_8h_a2750dfdda752269a036f487a4a34b849}{P\+I2}~6.\+28318530717958
+\item
+\#define \hyperlink{_s_w___defines_8h_a036cc494a050174ba59f4e54dfd99860}{B\+A\+R\+C\+O\+NV}~1024.
+\item
+\#define \hyperlink{_s_w___defines_8h_a3aaee30ddedb3f6675aac341a66e39e2}{S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY}~86400.
+\item
+\#define \hyperlink{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}~512
+\item
+\#define \hyperlink{_s_w___defines_8h_a6f9c4034c7daeabc9600a85c92ba05c3}{M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE}~2048
+\item
+\#define \hyperlink{_s_w___defines_8h_a0e41eb238fac5a67b02ab97010b3e064}{D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE}~\char`\"{}files.\+in\char`\"{}
+\item
+\#define \hyperlink{_s_w___defines_8h_a611f69bdc2c773cecd7c9b90f7a8b7bd}{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}~4 /$\ast$ for vegestab out of steppe-\/model context $\ast$/
+\item
+\#define \hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}~2
+\item
+\#define \hyperlink{_s_w___defines_8h_a0339c635d395199ea5fe72836051f1dd}{S\+W\+\_\+\+T\+OP}~0
+\item
+\#define \hyperlink{_s_w___defines_8h_a0447f3a618dcfd1c743a500795198f7e}{S\+W\+\_\+\+B\+OT}~1
+\item
+\#define \hyperlink{_s_w___defines_8h_a9f4654c7e7b1474c7498eae01f8a31b4}{S\+W\+\_\+\+M\+IN}~0
+\item
+\#define \hyperlink{_s_w___defines_8h_af57b89fb6de28910f13d22113e338baf}{S\+W\+\_\+\+M\+AX}~1
+\item
+\#define \hyperlink{_s_w___defines_8h_aaa1cdc54f8a71ce3e6871d943f541332}{For\+Each\+Soil\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+layers; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_aa942d41fa5ec29fd27fb22d42bc4cd9b}{For\+Each\+Evap\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+evap\+\_\+lyrs; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_ab0bdb76729ddfa023fa1c11a5535b907}{For\+Each\+Tree\+Transp\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+tree; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_a6ae21cc565965c4943779c14cfab8947}{For\+Each\+Shrub\+Transp\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+shrub; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_a1a1d7ca1e867cd0a58701a7ed7f7eaba}{For\+Each\+Grass\+Transp\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+grass; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_a7766a5013dd0d6ac2e1bc42e5d70dc1c}{For\+Each\+Forb\+Transp\+Layer}(i)~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+forb; (i)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_abeab34b680f1b8157820ab81b272f569}{For\+Each\+Transp\+Region}(r)~for((r)=0; (r) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+rgn; (r)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_a1ac2a0d268a0896e1284acf0cc6c435d}{For\+Each\+Month}(m)~for((m)=\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d}{Jan}; (m) $<$= \hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17}{Dec}; (m)++)
+\item
+\#define \hyperlink{_s_w___defines_8h_a9f608e6e7599d3d1e3e207672c1daadc}{tanfunc}(z, a, b, c, d)~((b)+((c)/\hyperlink{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}{PI})$\ast$atan(\hyperlink{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}{PI}$\ast$(d)$\ast$((z)-\/(a))) )
+\item
+\#define \hyperlink{_s_w___defines_8h_a51adac1981af74141d7e86cc04baa5f9}{missing}(x)~( \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(fabs( (x) ), \hyperlink{_s_w___defines_8h_ad3fb7b03fb7649f7e98c8904e542f6f4}{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}) )
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type} \{ \newline
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa0f0bd1cfc2e9e51518694b161fe06f64}{eF},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa00661878fc5676eef70debe9bee47f7b}{e\+M\+DL},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa97f8c59a55f6af9ec70f4222c3247f3a}{e\+W\+TH},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa643dc0d527d036028ce24d15a4843631}{e\+S\+IT},
+\newline
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aab878e49b4f246ad5b3bf9040d718a45d}{e\+S\+WC},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa4de3f5797c577db7695547ad2a01d6f3}{e\+V\+ES},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa87e83365a24b6b12290005e36a58280b}{e\+V\+PD},
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa67b17d0809dd174a49b6d8dec05eeebe}{e\+O\+UT}
+ \}
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___defines_8h_a036cc494a050174ba59f4e54dfd99860}\label{_s_w___defines_8h_a036cc494a050174ba59f4e54dfd99860}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!B\+A\+R\+C\+O\+NV@{B\+A\+R\+C\+O\+NV}}
+\index{B\+A\+R\+C\+O\+NV@{B\+A\+R\+C\+O\+NV}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{B\+A\+R\+C\+O\+NV}{BARCONV}}
+{\footnotesize\ttfamily \#define B\+A\+R\+C\+O\+NV~1024.}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk().
+
+\mbox{\Hypertarget{_s_w___defines_8h_a0e41eb238fac5a67b02ab97010b3e064}\label{_s_w___defines_8h_a0e41eb238fac5a67b02ab97010b3e064}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE@{D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE}}
+\index{D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE@{D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE}{DFLT\_FIRSTFILE}}
+{\footnotesize\ttfamily \#define D\+F\+L\+T\+\_\+\+F\+I\+R\+S\+T\+F\+I\+LE~\char`\"{}files.\+in\char`\"{}}
+
+
+
+Referenced by init\+\_\+args().
+
+\mbox{\Hypertarget{_s_w___defines_8h_aa942d41fa5ec29fd27fb22d42bc4cd9b}\label{_s_w___defines_8h_aa942d41fa5ec29fd27fb22d42bc4cd9b}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Evap\+Layer@{For\+Each\+Evap\+Layer}}
+\index{For\+Each\+Evap\+Layer@{For\+Each\+Evap\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Evap\+Layer}{ForEachEvapLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Evap\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+evap\+\_\+lyrs; (i)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a7766a5013dd0d6ac2e1bc42e5d70dc1c}\label{_s_w___defines_8h_a7766a5013dd0d6ac2e1bc42e5d70dc1c}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Forb\+Transp\+Layer@{For\+Each\+Forb\+Transp\+Layer}}
+\index{For\+Each\+Forb\+Transp\+Layer@{For\+Each\+Forb\+Transp\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Forb\+Transp\+Layer}{ForEachForbTranspLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Forb\+Transp\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+forb; (i)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a1a1d7ca1e867cd0a58701a7ed7f7eaba}\label{_s_w___defines_8h_a1a1d7ca1e867cd0a58701a7ed7f7eaba}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Grass\+Transp\+Layer@{For\+Each\+Grass\+Transp\+Layer}}
+\index{For\+Each\+Grass\+Transp\+Layer@{For\+Each\+Grass\+Transp\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Grass\+Transp\+Layer}{ForEachGrassTranspLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Grass\+Transp\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+grass; (i)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a1ac2a0d268a0896e1284acf0cc6c435d}\label{_s_w___defines_8h_a1ac2a0d268a0896e1284acf0cc6c435d}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Month@{For\+Each\+Month}}
+\index{For\+Each\+Month@{For\+Each\+Month}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Month}{ForEachMonth}}
+{\footnotesize\ttfamily \#define For\+Each\+Month(\begin{DoxyParamCaption}\item[{}]{m }\end{DoxyParamCaption})~for((m)=\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d}{Jan}; (m) $<$= \hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17}{Dec}; (m)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a6ae21cc565965c4943779c14cfab8947}\label{_s_w___defines_8h_a6ae21cc565965c4943779c14cfab8947}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Shrub\+Transp\+Layer@{For\+Each\+Shrub\+Transp\+Layer}}
+\index{For\+Each\+Shrub\+Transp\+Layer@{For\+Each\+Shrub\+Transp\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Shrub\+Transp\+Layer}{ForEachShrubTranspLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Shrub\+Transp\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+shrub; (i)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_aaa1cdc54f8a71ce3e6871d943f541332}\label{_s_w___defines_8h_aaa1cdc54f8a71ce3e6871d943f541332}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Soil\+Layer@{For\+Each\+Soil\+Layer}}
+\index{For\+Each\+Soil\+Layer@{For\+Each\+Soil\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Soil\+Layer}{ForEachSoilLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Soil\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+layers; (i)++)}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), S\+W\+\_\+\+S\+W\+C\+\_\+read(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{_s_w___defines_8h_abeab34b680f1b8157820ab81b272f569}\label{_s_w___defines_8h_abeab34b680f1b8157820ab81b272f569}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Transp\+Region@{For\+Each\+Transp\+Region}}
+\index{For\+Each\+Transp\+Region@{For\+Each\+Transp\+Region}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Transp\+Region}{ForEachTranspRegion}}
+{\footnotesize\ttfamily \#define For\+Each\+Transp\+Region(\begin{DoxyParamCaption}\item[{}]{r }\end{DoxyParamCaption})~for((r)=0; (r) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+rgn; (r)++)}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{_s_w___defines_8h_ab0bdb76729ddfa023fa1c11a5535b907}\label{_s_w___defines_8h_ab0bdb76729ddfa023fa1c11a5535b907}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!For\+Each\+Tree\+Transp\+Layer@{For\+Each\+Tree\+Transp\+Layer}}
+\index{For\+Each\+Tree\+Transp\+Layer@{For\+Each\+Tree\+Transp\+Layer}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Tree\+Transp\+Layer}{ForEachTreeTranspLayer}}
+{\footnotesize\ttfamily \#define For\+Each\+Tree\+Transp\+Layer(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~for((i)=0; (i) $<$ S\+W\+\_\+\+Site.\+n\+\_\+transp\+\_\+lyrs\+\_\+tree; (i)++)}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}\label{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE@{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}}
+\index{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE@{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}{MAX\_FILENAMESIZE}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE~512}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}\label{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS@{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}}
+\index{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS@{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}{MAX\_LAYERS}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS~25}
+
+
+
+Referenced by remove\+\_\+from\+\_\+soil(), and S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___defines_8h_a6f9c4034c7daeabc9600a85c92ba05c3}\label{_s_w___defines_8h_a6f9c4034c7daeabc9600a85c92ba05c3}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE@{M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE}}
+\index{M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE@{M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE}{MAX\_PATHSIZE}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+P\+A\+T\+H\+S\+I\+ZE~2048}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a611f69bdc2c773cecd7c9b90f7a8b7bd}\label{_s_w___defines_8h_a611f69bdc2c773cecd7c9b90f7a8b7bd}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN@{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}}
+\index{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN@{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}{MAX\_SPECIESNAMELEN}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN~4 /$\ast$ for vegestab out of steppe-\/model context $\ast$/}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}\label{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR@{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}}
+\index{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR@{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}{MAX\_ST\_RGR}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR~100}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a359e4b44b4d0483a082034d9ee2aa5bd}\label{_s_w___defines_8h_a359e4b44b4d0483a082034d9ee2aa5bd}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS@{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}}
+\index{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS@{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}{MAX\_TRANSP\_REGIONS}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS~4}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___defines_8h_a51adac1981af74141d7e86cc04baa5f9}\label{_s_w___defines_8h_a51adac1981af74141d7e86cc04baa5f9}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!missing@{missing}}
+\index{missing@{missing}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{missing}{missing}}
+{\footnotesize\ttfamily \#define missing(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~( \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(fabs( (x) ), \hyperlink{_s_w___defines_8h_ad3fb7b03fb7649f7e98c8904e542f6f4}{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}) )}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), and S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}\label{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!PI@{PI}}
+\index{PI@{PI}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{PI}{PI}}
+{\footnotesize\ttfamily \#define PI~3.\+141592653589793238462643383279502884197169399375}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a2750dfdda752269a036f487a4a34b849}\label{_s_w___defines_8h_a2750dfdda752269a036f487a4a34b849}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!P\+I2@{P\+I2}}
+\index{P\+I2@{P\+I2}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{P\+I2}{PI2}}
+{\footnotesize\ttfamily \#define P\+I2~6.\+28318530717958}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a3aaee30ddedb3f6675aac341a66e39e2}\label{_s_w___defines_8h_a3aaee30ddedb3f6675aac341a66e39e2}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY@{S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY}}
+\index{S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY@{S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY}{SEC\_PER\_DAY}}
+{\footnotesize\ttfamily \#define S\+E\+C\+\_\+\+P\+E\+R\+\_\+\+D\+AY~86400.}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a3412d1323113d9cafb20dc96df2dc207}\label{_s_w___defines_8h_a3412d1323113d9cafb20dc96df2dc207}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH@{S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH}}
+\index{S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH@{S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH}{SLOW\_DRAIN\_DEPTH}}
+{\footnotesize\ttfamily \#define S\+L\+O\+W\+\_\+\+D\+R\+A\+I\+N\+\_\+\+D\+E\+P\+TH~15. /$\ast$ numerator over depth in slow drain equation $\ast$/}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a0447f3a618dcfd1c743a500795198f7e}\label{_s_w___defines_8h_a0447f3a618dcfd1c743a500795198f7e}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+W\+\_\+\+B\+OT@{S\+W\+\_\+\+B\+OT}}
+\index{S\+W\+\_\+\+B\+OT@{S\+W\+\_\+\+B\+OT}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+B\+OT}{SW\_BOT}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+B\+OT~1}
+
+\mbox{\Hypertarget{_s_w___defines_8h_af57b89fb6de28910f13d22113e338baf}\label{_s_w___defines_8h_af57b89fb6de28910f13d22113e338baf}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+W\+\_\+\+M\+AX@{S\+W\+\_\+\+M\+AX}}
+\index{S\+W\+\_\+\+M\+AX@{S\+W\+\_\+\+M\+AX}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+AX}{SW\_MAX}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+M\+AX~1}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a9f4654c7e7b1474c7498eae01f8a31b4}\label{_s_w___defines_8h_a9f4654c7e7b1474c7498eae01f8a31b4}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+W\+\_\+\+M\+IN@{S\+W\+\_\+\+M\+IN}}
+\index{S\+W\+\_\+\+M\+IN@{S\+W\+\_\+\+M\+IN}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+IN}{SW\_MIN}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+M\+IN~0}
+
+\mbox{\Hypertarget{_s_w___defines_8h_ad3fb7b03fb7649f7e98c8904e542f6f4}\label{_s_w___defines_8h_ad3fb7b03fb7649f7e98c8904e542f6f4}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+W\+\_\+\+M\+I\+S\+S\+I\+NG@{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}}
+\index{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG@{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+I\+S\+S\+I\+NG}{SW\_MISSING}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+M\+I\+S\+S\+I\+NG~999. /$\ast$ value to use as M\+I\+S\+S\+I\+NG $\ast$/}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a0339c635d395199ea5fe72836051f1dd}\label{_s_w___defines_8h_a0339c635d395199ea5fe72836051f1dd}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!S\+W\+\_\+\+T\+OP@{S\+W\+\_\+\+T\+OP}}
+\index{S\+W\+\_\+\+T\+OP@{S\+W\+\_\+\+T\+OP}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+T\+OP}{SW\_TOP}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+T\+OP~0}
+
+\mbox{\Hypertarget{_s_w___defines_8h_a9f608e6e7599d3d1e3e207672c1daadc}\label{_s_w___defines_8h_a9f608e6e7599d3d1e3e207672c1daadc}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!tanfunc@{tanfunc}}
+\index{tanfunc@{tanfunc}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{tanfunc}{tanfunc}}
+{\footnotesize\ttfamily \#define tanfunc(\begin{DoxyParamCaption}\item[{}]{z, }\item[{}]{a, }\item[{}]{b, }\item[{}]{c, }\item[{}]{d }\end{DoxyParamCaption})~((b)+((c)/\hyperlink{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}{PI})$\ast$atan(\hyperlink{_s_w___defines_8h_a598a3330b3c21701223ee0ca14316eca}{PI}$\ast$(d)$\ast$((z)-\/(a))) )}
+
+
+
+Referenced by pot\+\_\+transp(), and watrate().
+
+\mbox{\Hypertarget{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}\label{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!T\+W\+O\+\_\+\+D\+A\+YS@{T\+W\+O\+\_\+\+D\+A\+YS}}
+\index{T\+W\+O\+\_\+\+D\+A\+YS@{T\+W\+O\+\_\+\+D\+A\+YS}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{T\+W\+O\+\_\+\+D\+A\+YS}{TWO\_DAYS}}
+{\footnotesize\ttfamily \#define T\+W\+O\+\_\+\+D\+A\+YS~2}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}}
+\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!Obj\+Type@{Obj\+Type}}
+\index{Obj\+Type@{Obj\+Type}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}
+\subsubsection{\texorpdfstring{Obj\+Type}{ObjType}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{eF@{eF}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!eF@{eF}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa0f0bd1cfc2e9e51518694b161fe06f64}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa0f0bd1cfc2e9e51518694b161fe06f64}}
+eF&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+M\+DL@{e\+M\+DL}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+M\+DL@{e\+M\+DL}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa00661878fc5676eef70debe9bee47f7b}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa00661878fc5676eef70debe9bee47f7b}}
+e\+M\+DL&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+W\+TH@{e\+W\+TH}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+W\+TH@{e\+W\+TH}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa97f8c59a55f6af9ec70f4222c3247f3a}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa97f8c59a55f6af9ec70f4222c3247f3a}}
+e\+W\+TH&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+IT@{e\+S\+IT}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+S\+IT@{e\+S\+IT}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa643dc0d527d036028ce24d15a4843631}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa643dc0d527d036028ce24d15a4843631}}
+e\+S\+IT&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+WC@{e\+S\+WC}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+S\+WC@{e\+S\+WC}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aab878e49b4f246ad5b3bf9040d718a45d}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aab878e49b4f246ad5b3bf9040d718a45d}}
+e\+S\+WC&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+V\+ES@{e\+V\+ES}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+V\+ES@{e\+V\+ES}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa4de3f5797c577db7695547ad2a01d6f3}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa4de3f5797c577db7695547ad2a01d6f3}}
+e\+V\+ES&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+V\+PD@{e\+V\+PD}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+V\+PD@{e\+V\+PD}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa87e83365a24b6b12290005e36a58280b}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa87e83365a24b6b12290005e36a58280b}}
+e\+V\+PD&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+O\+UT@{e\+O\+UT}!S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}}\index{S\+W\+\_\+\+Defines.\+h@{S\+W\+\_\+\+Defines.\+h}!e\+O\+UT@{e\+O\+UT}}}\mbox{\Hypertarget{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa67b17d0809dd174a49b6d8dec05eeebe}\label{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4aa67b17d0809dd174a49b6d8dec05eeebe}}
+e\+O\+UT&\\
+\hline
+
+\end{DoxyEnumFields}
diff --git a/doc/latex/_s_w___files_8c.tex b/doc/latex/_s_w___files_8c.tex
new file mode 100644
index 000000000..e46bfd61e
--- /dev/null
+++ b/doc/latex/_s_w___files_8c.tex
@@ -0,0 +1,64 @@
+\hypertarget{_s_w___files_8c}{}\section{S\+W\+\_\+\+Files.\+c File Reference}
+\label{_s_w___files_8c}\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___files_8c_a78a86067bc2214b814f99a1d7257cfb9}{S\+W\+\_\+\+F\+\_\+read} (const char $\ast$s)
+\item
+char $\ast$ \hyperlink{_s_w___files_8c_a8a17eac6d37011b6c8d33942d979be74}{S\+W\+\_\+\+F\+\_\+name} (\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index} i)
+\item
+void \hyperlink{_s_w___files_8c_a553a529e2357818a3c8fdc9b882c9509}{S\+W\+\_\+\+F\+\_\+construct} (const char $\ast$firstfile)
+\item
+void \hyperlink{_s_w___files_8c_a17d269992c251bbb8fcf9804a3d77790}{S\+W\+\_\+\+Weather\+Prefix} (char prefix\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___files_8c_a4b507fed685d7f3b88532df2ed43fa8d}{S\+W\+\_\+\+Output\+Prefix} (char prefix\mbox{[}$\,$\mbox{]})
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___files_8c_a553a529e2357818a3c8fdc9b882c9509}\label{_s_w___files_8c_a553a529e2357818a3c8fdc9b882c9509}}
+\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}!S\+W\+\_\+\+F\+\_\+construct@{S\+W\+\_\+\+F\+\_\+construct}}
+\index{S\+W\+\_\+\+F\+\_\+construct@{S\+W\+\_\+\+F\+\_\+construct}!S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+construct()}{SW\_F\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+\_\+construct (\begin{DoxyParamCaption}\item[{const char $\ast$}]{firstfile }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___files_8c_a8a17eac6d37011b6c8d33942d979be74}\label{_s_w___files_8c_a8a17eac6d37011b6c8d33942d979be74}}
+\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}!S\+W\+\_\+\+F\+\_\+name@{S\+W\+\_\+\+F\+\_\+name}}
+\index{S\+W\+\_\+\+F\+\_\+name@{S\+W\+\_\+\+F\+\_\+name}!S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+name()}{SW\_F\_name()}}
+{\footnotesize\ttfamily char$\ast$ S\+W\+\_\+\+F\+\_\+name (\begin{DoxyParamCaption}\item[{\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index}}]{i }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc().
+
+\mbox{\Hypertarget{_s_w___files_8c_a78a86067bc2214b814f99a1d7257cfb9}\label{_s_w___files_8c_a78a86067bc2214b814f99a1d7257cfb9}}
+\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}!S\+W\+\_\+\+F\+\_\+read@{S\+W\+\_\+\+F\+\_\+read}}
+\index{S\+W\+\_\+\+F\+\_\+read@{S\+W\+\_\+\+F\+\_\+read}!S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+read()}{SW\_F\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+\_\+read (\begin{DoxyParamCaption}\item[{const char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___files_8c_a4b507fed685d7f3b88532df2ed43fa8d}\label{_s_w___files_8c_a4b507fed685d7f3b88532df2ed43fa8d}}
+\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}!S\+W\+\_\+\+Output\+Prefix@{S\+W\+\_\+\+Output\+Prefix}}
+\index{S\+W\+\_\+\+Output\+Prefix@{S\+W\+\_\+\+Output\+Prefix}!S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Output\+Prefix()}{SW\_OutputPrefix()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Output\+Prefix (\begin{DoxyParamCaption}\item[{char}]{prefix\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___files_8c_a17d269992c251bbb8fcf9804a3d77790}\label{_s_w___files_8c_a17d269992c251bbb8fcf9804a3d77790}}
+\index{S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}!S\+W\+\_\+\+Weather\+Prefix@{S\+W\+\_\+\+Weather\+Prefix}}
+\index{S\+W\+\_\+\+Weather\+Prefix@{S\+W\+\_\+\+Weather\+Prefix}!S\+W\+\_\+\+Files.\+c@{S\+W\+\_\+\+Files.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather\+Prefix()}{SW\_WeatherPrefix()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Weather\+Prefix (\begin{DoxyParamCaption}\item[{char}]{prefix\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___files_8h.tex b/doc/latex/_s_w___files_8h.tex
new file mode 100644
index 000000000..b6b1e140a
--- /dev/null
+++ b/doc/latex/_s_w___files_8h.tex
@@ -0,0 +1,165 @@
+\hypertarget{_s_w___files_8h}{}\section{S\+W\+\_\+\+Files.\+h File Reference}
+\label{_s_w___files_8h}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___files_8h_ac0ab6360fd7df77b1945eea40fc18d49}{S\+W\+\_\+\+N\+F\+I\+L\+ES}~15
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index} \{ \newline
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aae9e126d54f2788125a189d076cd610b}{e\+No\+File} = -\/1,
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a4753d0756c38983a69b2b37de62b93e5}{e\+First} = 0,
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a0432355d8c84da2850f405dfe8c74799}{e\+Model},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ab2906902c746770046f4ad0142a5ca56}{e\+Log},
+\newline
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aa0bacb0409d59c33db0723d99da7058f}{e\+Site},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a9d20e3a3fade81fc23150ead54cc5877}{e\+Layers},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a8640b641f4ab32eee9c7574e19d79673}{e\+Weather},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a894351f96a0fca95bd69df5bab9f1325}{e\+Markov\+Prob},
+\newline
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aaceb770ed9835e93b47b00fc45aad094}{e\+Markov\+Cov},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a70ef1b08d71eb895ac7fbe6a2db43c20}{e\+Sky},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a06fc98429781eabd0a612ee1dd5cffee}{e\+Veg\+Prod},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ac8fcaa3ebfe01b11bc6647793ecfdd65}{e\+Veg\+Estab},
+\newline
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ad892014c992361811c630b4078ce0a97}{e\+Soilwat},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a228828433281dbcfc65eca579d61e919}{e\+Output},
+\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a95aca4e9d78e9f76c8b63e5f79e80a9a}{e\+End\+File}
+ \}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___files_8h_a78a86067bc2214b814f99a1d7257cfb9}{S\+W\+\_\+\+F\+\_\+read} (const char $\ast$s)
+\item
+char $\ast$ \hyperlink{_s_w___files_8h_a8a17eac6d37011b6c8d33942d979be74}{S\+W\+\_\+\+F\+\_\+name} (\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index} i)
+\item
+void \hyperlink{_s_w___files_8h_a553a529e2357818a3c8fdc9b882c9509}{S\+W\+\_\+\+F\+\_\+construct} (const char $\ast$firstfile)
+\item
+void \hyperlink{_s_w___files_8h_a17d269992c251bbb8fcf9804a3d77790}{S\+W\+\_\+\+Weather\+Prefix} (char prefix\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___files_8h_a4b507fed685d7f3b88532df2ed43fa8d}{S\+W\+\_\+\+Output\+Prefix} (char prefix\mbox{[}$\,$\mbox{]})
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___files_8h_ac0ab6360fd7df77b1945eea40fc18d49}\label{_s_w___files_8h_ac0ab6360fd7df77b1945eea40fc18d49}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+N\+F\+I\+L\+ES@{S\+W\+\_\+\+N\+F\+I\+L\+ES}}
+\index{S\+W\+\_\+\+N\+F\+I\+L\+ES@{S\+W\+\_\+\+N\+F\+I\+L\+ES}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+N\+F\+I\+L\+ES}{SW\_NFILES}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+N\+F\+I\+L\+ES~15}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+File\+Index@{S\+W\+\_\+\+File\+Index}}
+\index{S\+W\+\_\+\+File\+Index@{S\+W\+\_\+\+File\+Index}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+File\+Index}{SW\_FileIndex}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+No\+File@{e\+No\+File}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+No\+File@{e\+No\+File}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aae9e126d54f2788125a189d076cd610b}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aae9e126d54f2788125a189d076cd610b}}
+e\+No\+File&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+First@{e\+First}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+First@{e\+First}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a4753d0756c38983a69b2b37de62b93e5}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a4753d0756c38983a69b2b37de62b93e5}}
+e\+First&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Model@{e\+Model}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Model@{e\+Model}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a0432355d8c84da2850f405dfe8c74799}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a0432355d8c84da2850f405dfe8c74799}}
+e\+Model&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Log@{e\+Log}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Log@{e\+Log}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ab2906902c746770046f4ad0142a5ca56}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ab2906902c746770046f4ad0142a5ca56}}
+e\+Log&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Site@{e\+Site}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Site@{e\+Site}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aa0bacb0409d59c33db0723d99da7058f}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aa0bacb0409d59c33db0723d99da7058f}}
+e\+Site&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Layers@{e\+Layers}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Layers@{e\+Layers}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a9d20e3a3fade81fc23150ead54cc5877}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a9d20e3a3fade81fc23150ead54cc5877}}
+e\+Layers&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Weather@{e\+Weather}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Weather@{e\+Weather}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a8640b641f4ab32eee9c7574e19d79673}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a8640b641f4ab32eee9c7574e19d79673}}
+e\+Weather&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Markov\+Prob@{e\+Markov\+Prob}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Markov\+Prob@{e\+Markov\+Prob}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a894351f96a0fca95bd69df5bab9f1325}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a894351f96a0fca95bd69df5bab9f1325}}
+e\+Markov\+Prob&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Markov\+Cov@{e\+Markov\+Cov}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Markov\+Cov@{e\+Markov\+Cov}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aaceb770ed9835e93b47b00fc45aad094}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171aaceb770ed9835e93b47b00fc45aad094}}
+e\+Markov\+Cov&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Sky@{e\+Sky}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Sky@{e\+Sky}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a70ef1b08d71eb895ac7fbe6a2db43c20}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a70ef1b08d71eb895ac7fbe6a2db43c20}}
+e\+Sky&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Veg\+Prod@{e\+Veg\+Prod}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Veg\+Prod@{e\+Veg\+Prod}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a06fc98429781eabd0a612ee1dd5cffee}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a06fc98429781eabd0a612ee1dd5cffee}}
+e\+Veg\+Prod&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Veg\+Estab@{e\+Veg\+Estab}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Veg\+Estab@{e\+Veg\+Estab}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ac8fcaa3ebfe01b11bc6647793ecfdd65}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ac8fcaa3ebfe01b11bc6647793ecfdd65}}
+e\+Veg\+Estab&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Soilwat@{e\+Soilwat}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Soilwat@{e\+Soilwat}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ad892014c992361811c630b4078ce0a97}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171ad892014c992361811c630b4078ce0a97}}
+e\+Soilwat&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+Output@{e\+Output}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+Output@{e\+Output}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a228828433281dbcfc65eca579d61e919}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a228828433281dbcfc65eca579d61e919}}
+e\+Output&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+End\+File@{e\+End\+File}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!e\+End\+File@{e\+End\+File}}}\mbox{\Hypertarget{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a95aca4e9d78e9f76c8b63e5f79e80a9a}\label{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171a95aca4e9d78e9f76c8b63e5f79e80a9a}}
+e\+End\+File&\\
+\hline
+
+\end{DoxyEnumFields}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___files_8h_a553a529e2357818a3c8fdc9b882c9509}\label{_s_w___files_8h_a553a529e2357818a3c8fdc9b882c9509}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+F\+\_\+construct@{S\+W\+\_\+\+F\+\_\+construct}}
+\index{S\+W\+\_\+\+F\+\_\+construct@{S\+W\+\_\+\+F\+\_\+construct}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+construct()}{SW\_F\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+\_\+construct (\begin{DoxyParamCaption}\item[{const char $\ast$}]{firstfile }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___files_8h_a8a17eac6d37011b6c8d33942d979be74}\label{_s_w___files_8h_a8a17eac6d37011b6c8d33942d979be74}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+F\+\_\+name@{S\+W\+\_\+\+F\+\_\+name}}
+\index{S\+W\+\_\+\+F\+\_\+name@{S\+W\+\_\+\+F\+\_\+name}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+name()}{SW\_F\_name()}}
+{\footnotesize\ttfamily char$\ast$ S\+W\+\_\+\+F\+\_\+name (\begin{DoxyParamCaption}\item[{\hyperlink{_s_w___files_8h_af7f6cfbda641102716f82e7eada0c171}{S\+W\+\_\+\+File\+Index}}]{i }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc().
+
+\mbox{\Hypertarget{_s_w___files_8h_a78a86067bc2214b814f99a1d7257cfb9}\label{_s_w___files_8h_a78a86067bc2214b814f99a1d7257cfb9}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+F\+\_\+read@{S\+W\+\_\+\+F\+\_\+read}}
+\index{S\+W\+\_\+\+F\+\_\+read@{S\+W\+\_\+\+F\+\_\+read}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+\_\+read()}{SW\_F\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+\_\+read (\begin{DoxyParamCaption}\item[{const char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___files_8h_a4b507fed685d7f3b88532df2ed43fa8d}\label{_s_w___files_8h_a4b507fed685d7f3b88532df2ed43fa8d}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+Output\+Prefix@{S\+W\+\_\+\+Output\+Prefix}}
+\index{S\+W\+\_\+\+Output\+Prefix@{S\+W\+\_\+\+Output\+Prefix}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Output\+Prefix()}{SW\_OutputPrefix()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Output\+Prefix (\begin{DoxyParamCaption}\item[{char}]{prefix\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___files_8h_a17d269992c251bbb8fcf9804a3d77790}\label{_s_w___files_8h_a17d269992c251bbb8fcf9804a3d77790}}
+\index{S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}!S\+W\+\_\+\+Weather\+Prefix@{S\+W\+\_\+\+Weather\+Prefix}}
+\index{S\+W\+\_\+\+Weather\+Prefix@{S\+W\+\_\+\+Weather\+Prefix}!S\+W\+\_\+\+Files.\+h@{S\+W\+\_\+\+Files.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather\+Prefix()}{SW\_WeatherPrefix()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Weather\+Prefix (\begin{DoxyParamCaption}\item[{char}]{prefix\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___flow_8c.tex b/doc/latex/_s_w___flow_8c.tex
new file mode 100644
index 000000000..5f81eba56
--- /dev/null
+++ b/doc/latex/_s_w___flow_8c.tex
@@ -0,0 +1,667 @@
+\hypertarget{_s_w___flow_8c}{}\section{S\+W\+\_\+\+Flow.\+c File Reference}
+\label{_s_w___flow_8c}\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Flow\+\_\+lib.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Prod.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Sky.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___flow_8c_aff0bb7870fbf9020899035540e606250}{S\+W\+\_\+\+F\+L\+W\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___flow_8c_a6a9d5dbcefaf72eece66ed219bcd749f}{S\+W\+\_\+\+Water\+\_\+\+Flow} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___flow_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___flow_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} \hyperlink{_s_w___flow_8c_afdb8ced0825a798336ba061396f7016c}{S\+W\+\_\+\+Soilwat}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} \hyperlink{_s_w___flow_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}{S\+W\+\_\+\+Weather}
+\item
+\hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} \hyperlink{_s_w___flow_8c_a8f9709f4f153a6d19d922c1896a1e2a3}{S\+W\+\_\+\+Veg\+Prod}
+\item
+\hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY} \hyperlink{_s_w___flow_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}{S\+W\+\_\+\+Sky}
+\item
+unsigned int \hyperlink{_s_w___flow_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}{soil\+\_\+temp\+\_\+error}
+\item
+unsigned int \hyperlink{_s_w___flow_8c_ace889dddadc2b4542b04b1b131df57ab}{soil\+\_\+temp\+\_\+init}
+\item
+unsigned int \hyperlink{_s_w___flow_8c_a6fd11ca6c2749216e3c8f343528a1043}{fusion\+\_\+pool\+\_\+init}
+\item
+\hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} \hyperlink{_s_w___flow_8c_aab4d4bf41087eb17a093d64655478f3f}{lyr\+Tr\+Regions\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} \hyperlink{_s_w___flow_8c_ad26d68f2125f4384c70f2db32ec9a22f}{lyr\+Tr\+Regions\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} \hyperlink{_s_w___flow_8c_a4c2c9842909f1801ba93729da56cde72}{lyr\+Tr\+Regions\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} \hyperlink{_s_w___flow_8c_ab84481934adb9116e2cb0d6f89de85b1}{lyr\+Tr\+Regions\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_abddb8434afad615201035259c82b5e29}{lyr\+S\+W\+C\+Bulk} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a47663047680e61e8c31f57bf75f885c4}{lyr\+Drain} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ab0f18504dcfd9a72b58c99f57e23d876}{lyr\+Transp\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a13f1f5dba51bd83cffd0dc6189b6b48f}{lyr\+Transp\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a7072e00cf0b827b37a0021108b621e02}{lyr\+Transp\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a05b52de692c7063e258aecb8ea1e1ea7}{lyr\+Transp\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a6a103073a6b5c57f8147661e8f5c5167}{lyr\+Transp\+Co\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a0cffd9583b3d7a24fb5be76adf1d8e2f}{lyr\+Transp\+Co\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a2bb1171e36d1edbad679c9853f4edaec}{lyr\+Transp\+Co\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ab6fd5cbb6002a2f412d4624873b62a25}{lyr\+Transp\+Co\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a321d965606ed16a90b4e8c7cacb4527d}{lyr\+Evap\+\_\+\+Bare\+Ground} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_af4cb5e55c8fde8470504e32bb895cddc}{lyr\+Evap\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a63c82bd718ba4c4a9d717b84d719a4c6}{lyr\+Evap\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ac0e905fa9ff94ff5067048fff85cfdc1}{lyr\+Evap\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a0c18c0a30968c779baf0de402c0acd97}{lyr\+Evap\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_aecdeccda6a19c12323c2534a4fb43ad0}{lyr\+Evap\+Co} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a0c0cc9901dad95995b6e952ebd8724f0}{lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ac94101fc6a0cba1725b24a67f300f293}{lyr\+Widths} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a8c0a9d10b0f3b09cf1a6787a8b0dd564}{lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_aff365308b25ceebadda825bd9aefba6f}{lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a2f351798b2374d9fcc674829cc4d8629}{lyr\+S\+W\+C\+Bulk\+\_\+\+Mins} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_afd8e81430336b9e7794df6cc7f6062df}{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a9c0ca4d94ce18f12011bd2e14f8daf42}{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a71736c16788e423737e1e931eadc1349}{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_aec49ecd93d4d0c2fe2c9df413e1f81a1}{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a77c14ed91b5be2669aaea2f0f883a7fa}{lyrpsis\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_aab4fc266c602675aef80e93ed5139776}{lyrthetas\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a8af9c10eba41cf85a5ae63714502572a}{lyr\+Betas\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ad90e59068d73ee7e481b40c68f9901d0}{lyr\+Beta\+Inv\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ab5ef548372c71817be103e25a02af4e9}{lyr\+Sum\+Tr\+Co} \mbox{[}\hyperlink{_s_w___defines_8h_a359e4b44b4d0483a082034d9ee2aa5bd}{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a99df09461b6c7d16e0b8c7458bd4fce1}{lyr\+Hyd\+Red\+\_\+\+Forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a1f1ae9f8e8eb169b4a65b09961904353}{lyr\+Hyd\+Red\+\_\+\+Tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a6fa650e1cd78729dd86048231a0709b9}{lyr\+Hyd\+Red\+\_\+\+Shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_aa8fe1dc73d8905bd19f03e7a0840357a}{lyr\+Hyd\+Red\+\_\+\+Grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a8818b5be37dd0afb89b783b379dad06b}{lyr\+Impermeability} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_ae4aece9b7e66bf8fe61898b2ee00c39c}{lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_acf398ceb5b7284b7067722a182444c35}{lyrolds\+Temp} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a49306ae0131b5ee5deabcd489dd2ecd2}{lyrs\+Temp} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_afdb5899eb9a7e608fc7a9a9a6d73be8b}{lyrb\+Density} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}{drainout}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___flow_8c_aff0bb7870fbf9020899035540e606250}\label{_s_w___flow_8c_aff0bb7870fbf9020899035540e606250}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+F\+L\+W\+\_\+construct@{S\+W\+\_\+\+F\+L\+W\+\_\+construct}}
+\index{S\+W\+\_\+\+F\+L\+W\+\_\+construct@{S\+W\+\_\+\+F\+L\+W\+\_\+construct}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+F\+L\+W\+\_\+construct()}{SW\_FLW\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+F\+L\+W\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a6a9d5dbcefaf72eece66ed219bcd749f}\label{_s_w___flow_8c_a6a9d5dbcefaf72eece66ed219bcd749f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Water\+\_\+\+Flow@{S\+W\+\_\+\+Water\+\_\+\+Flow}}
+\index{S\+W\+\_\+\+Water\+\_\+\+Flow@{S\+W\+\_\+\+Water\+\_\+\+Flow}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Water\+\_\+\+Flow()}{SW\_Water\_Flow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Water\+\_\+\+Flow (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}\label{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!drainout@{drainout}}
+\index{drainout@{drainout}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{drainout}{drainout}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} drainout}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a6fd11ca6c2749216e3c8f343528a1043}\label{_s_w___flow_8c_a6fd11ca6c2749216e3c8f343528a1043}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!fusion\+\_\+pool\+\_\+init@{fusion\+\_\+pool\+\_\+init}}
+\index{fusion\+\_\+pool\+\_\+init@{fusion\+\_\+pool\+\_\+init}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{fusion\+\_\+pool\+\_\+init}{fusion\_pool\_init}}
+{\footnotesize\ttfamily unsigned int fusion\+\_\+pool\+\_\+init}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_afdb5899eb9a7e608fc7a9a9a6d73be8b}\label{_s_w___flow_8c_afdb5899eb9a7e608fc7a9a9a6d73be8b}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyrb\+Density@{lyrb\+Density}}
+\index{lyrb\+Density@{lyrb\+Density}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyrb\+Density}{lyrbDensity}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyrb\+Density\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ad90e59068d73ee7e481b40c68f9901d0}\label{_s_w___flow_8c_ad90e59068d73ee7e481b40c68f9901d0}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Beta\+Inv\+Matric@{lyr\+Beta\+Inv\+Matric}}
+\index{lyr\+Beta\+Inv\+Matric@{lyr\+Beta\+Inv\+Matric}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Beta\+Inv\+Matric}{lyrBetaInvMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Beta\+Inv\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a8af9c10eba41cf85a5ae63714502572a}\label{_s_w___flow_8c_a8af9c10eba41cf85a5ae63714502572a}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Betas\+Matric@{lyr\+Betas\+Matric}}
+\index{lyr\+Betas\+Matric@{lyr\+Betas\+Matric}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Betas\+Matric}{lyrBetasMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Betas\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a47663047680e61e8c31f57bf75f885c4}\label{_s_w___flow_8c_a47663047680e61e8c31f57bf75f885c4}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Drain@{lyr\+Drain}}
+\index{lyr\+Drain@{lyr\+Drain}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Drain}{lyrDrain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Drain\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a321d965606ed16a90b4e8c7cacb4527d}\label{_s_w___flow_8c_a321d965606ed16a90b4e8c7cacb4527d}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+\_\+\+Bare\+Ground@{lyr\+Evap\+\_\+\+Bare\+Ground}}
+\index{lyr\+Evap\+\_\+\+Bare\+Ground@{lyr\+Evap\+\_\+\+Bare\+Ground}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+\_\+\+Bare\+Ground}{lyrEvap\_BareGround}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+\_\+\+Bare\+Ground\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_af4cb5e55c8fde8470504e32bb895cddc}\label{_s_w___flow_8c_af4cb5e55c8fde8470504e32bb895cddc}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+\_\+\+Forb@{lyr\+Evap\+\_\+\+Forb}}
+\index{lyr\+Evap\+\_\+\+Forb@{lyr\+Evap\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+\_\+\+Forb}{lyrEvap\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a0c18c0a30968c779baf0de402c0acd97}\label{_s_w___flow_8c_a0c18c0a30968c779baf0de402c0acd97}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+\_\+\+Grass@{lyr\+Evap\+\_\+\+Grass}}
+\index{lyr\+Evap\+\_\+\+Grass@{lyr\+Evap\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+\_\+\+Grass}{lyrEvap\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ac0e905fa9ff94ff5067048fff85cfdc1}\label{_s_w___flow_8c_ac0e905fa9ff94ff5067048fff85cfdc1}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+\_\+\+Shrub@{lyr\+Evap\+\_\+\+Shrub}}
+\index{lyr\+Evap\+\_\+\+Shrub@{lyr\+Evap\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+\_\+\+Shrub}{lyrEvap\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a63c82bd718ba4c4a9d717b84d719a4c6}\label{_s_w___flow_8c_a63c82bd718ba4c4a9d717b84d719a4c6}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+\_\+\+Tree@{lyr\+Evap\+\_\+\+Tree}}
+\index{lyr\+Evap\+\_\+\+Tree@{lyr\+Evap\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+\_\+\+Tree}{lyrEvap\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aecdeccda6a19c12323c2534a4fb43ad0}\label{_s_w___flow_8c_aecdeccda6a19c12323c2534a4fb43ad0}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Evap\+Co@{lyr\+Evap\+Co}}
+\index{lyr\+Evap\+Co@{lyr\+Evap\+Co}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Evap\+Co}{lyrEvapCo}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Evap\+Co\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a99df09461b6c7d16e0b8c7458bd4fce1}\label{_s_w___flow_8c_a99df09461b6c7d16e0b8c7458bd4fce1}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Hyd\+Red\+\_\+\+Forb@{lyr\+Hyd\+Red\+\_\+\+Forb}}
+\index{lyr\+Hyd\+Red\+\_\+\+Forb@{lyr\+Hyd\+Red\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Hyd\+Red\+\_\+\+Forb}{lyrHydRed\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Hyd\+Red\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aa8fe1dc73d8905bd19f03e7a0840357a}\label{_s_w___flow_8c_aa8fe1dc73d8905bd19f03e7a0840357a}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Hyd\+Red\+\_\+\+Grass@{lyr\+Hyd\+Red\+\_\+\+Grass}}
+\index{lyr\+Hyd\+Red\+\_\+\+Grass@{lyr\+Hyd\+Red\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Hyd\+Red\+\_\+\+Grass}{lyrHydRed\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Hyd\+Red\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a6fa650e1cd78729dd86048231a0709b9}\label{_s_w___flow_8c_a6fa650e1cd78729dd86048231a0709b9}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Hyd\+Red\+\_\+\+Shrub@{lyr\+Hyd\+Red\+\_\+\+Shrub}}
+\index{lyr\+Hyd\+Red\+\_\+\+Shrub@{lyr\+Hyd\+Red\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Hyd\+Red\+\_\+\+Shrub}{lyrHydRed\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Hyd\+Red\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a1f1ae9f8e8eb169b4a65b09961904353}\label{_s_w___flow_8c_a1f1ae9f8e8eb169b4a65b09961904353}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Hyd\+Red\+\_\+\+Tree@{lyr\+Hyd\+Red\+\_\+\+Tree}}
+\index{lyr\+Hyd\+Red\+\_\+\+Tree@{lyr\+Hyd\+Red\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Hyd\+Red\+\_\+\+Tree}{lyrHydRed\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Hyd\+Red\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a8818b5be37dd0afb89b783b379dad06b}\label{_s_w___flow_8c_a8818b5be37dd0afb89b783b379dad06b}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Impermeability@{lyr\+Impermeability}}
+\index{lyr\+Impermeability@{lyr\+Impermeability}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Impermeability}{lyrImpermeability}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Impermeability\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_acf398ceb5b7284b7067722a182444c35}\label{_s_w___flow_8c_acf398ceb5b7284b7067722a182444c35}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyrolds\+Temp@{lyrolds\+Temp}}
+\index{lyrolds\+Temp@{lyrolds\+Temp}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyrolds\+Temp}{lyroldsTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyrolds\+Temp\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a77c14ed91b5be2669aaea2f0f883a7fa}\label{_s_w___flow_8c_a77c14ed91b5be2669aaea2f0f883a7fa}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyrpsis\+Matric@{lyrpsis\+Matric}}
+\index{lyrpsis\+Matric@{lyrpsis\+Matric}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyrpsis\+Matric}{lyrpsisMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyrpsis\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a49306ae0131b5ee5deabcd489dd2ecd2}\label{_s_w___flow_8c_a49306ae0131b5ee5deabcd489dd2ecd2}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyrs\+Temp@{lyrs\+Temp}}
+\index{lyrs\+Temp@{lyrs\+Temp}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyrs\+Temp}{lyrsTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyrs\+Temp\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ab5ef548372c71817be103e25a02af4e9}\label{_s_w___flow_8c_ab5ef548372c71817be103e25a02af4e9}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Sum\+Tr\+Co@{lyr\+Sum\+Tr\+Co}}
+\index{lyr\+Sum\+Tr\+Co@{lyr\+Sum\+Tr\+Co}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Sum\+Tr\+Co}{lyrSumTrCo}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Sum\+Tr\+Co\mbox{[}\hyperlink{_s_w___defines_8h_a359e4b44b4d0483a082034d9ee2aa5bd}{M\+A\+X\+\_\+\+T\+R\+A\+N\+S\+P\+\_\+\+R\+E\+G\+I\+O\+NS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_abddb8434afad615201035259c82b5e29}\label{_s_w___flow_8c_abddb8434afad615201035259c82b5e29}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk@{lyr\+S\+W\+C\+Bulk}}
+\index{lyr\+S\+W\+C\+Bulk@{lyr\+S\+W\+C\+Bulk}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk}{lyrSWCBulk}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_afd8e81430336b9e7794df6cc7f6062df}\label{_s_w___flow_8c_afd8e81430336b9e7794df6cc7f6062df}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb}{lyrSWCBulk\_atSWPcrit\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aec49ecd93d4d0c2fe2c9df413e1f81a1}\label{_s_w___flow_8c_aec49ecd93d4d0c2fe2c9df413e1f81a1}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass}{lyrSWCBulk\_atSWPcrit\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a71736c16788e423737e1e931eadc1349}\label{_s_w___flow_8c_a71736c16788e423737e1e931eadc1349}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub}{lyrSWCBulk\_atSWPcrit\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a9c0ca4d94ce18f12011bd2e14f8daf42}\label{_s_w___flow_8c_a9c0ca4d94ce18f12011bd2e14f8daf42}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree@{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree}{lyrSWCBulk\_atSWPcrit\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a0c0cc9901dad95995b6e952ebd8724f0}\label{_s_w___flow_8c_a0c0cc9901dad95995b6e952ebd8724f0}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps@{lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps@{lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps}{lyrSWCBulk\_FieldCaps}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+\+Field\+Caps\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aff365308b25ceebadda825bd9aefba6f}\label{_s_w___flow_8c_aff365308b25ceebadda825bd9aefba6f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts@{lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts@{lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts}{lyrSWCBulk\_HalfWiltpts}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+\+Half\+Wiltpts\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a2f351798b2374d9fcc674829cc4d8629}\label{_s_w___flow_8c_a2f351798b2374d9fcc674829cc4d8629}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+\+Mins@{lyr\+S\+W\+C\+Bulk\+\_\+\+Mins}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+\+Mins@{lyr\+S\+W\+C\+Bulk\+\_\+\+Mins}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+\+Mins}{lyrSWCBulk\_Mins}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+\+Mins\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ae4aece9b7e66bf8fe61898b2ee00c39c}\label{_s_w___flow_8c_ae4aece9b7e66bf8fe61898b2ee00c39c}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated@{lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated@{lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated}{lyrSWCBulk\_Saturated}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+\+Saturated\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a8c0a9d10b0f3b09cf1a6787a8b0dd564}\label{_s_w___flow_8c_a8c0a9d10b0f3b09cf1a6787a8b0dd564}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts@{lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts}}
+\index{lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts@{lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts}{lyrSWCBulk\_Wiltpts}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+S\+W\+C\+Bulk\+\_\+\+Wiltpts\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aab4fc266c602675aef80e93ed5139776}\label{_s_w___flow_8c_aab4fc266c602675aef80e93ed5139776}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyrthetas\+Matric@{lyrthetas\+Matric}}
+\index{lyrthetas\+Matric@{lyrthetas\+Matric}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyrthetas\+Matric}{lyrthetasMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyrthetas\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ab0f18504dcfd9a72b58c99f57e23d876}\label{_s_w___flow_8c_ab0f18504dcfd9a72b58c99f57e23d876}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+\_\+\+Forb@{lyr\+Transp\+\_\+\+Forb}}
+\index{lyr\+Transp\+\_\+\+Forb@{lyr\+Transp\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+\_\+\+Forb}{lyrTransp\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a05b52de692c7063e258aecb8ea1e1ea7}\label{_s_w___flow_8c_a05b52de692c7063e258aecb8ea1e1ea7}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+\_\+\+Grass@{lyr\+Transp\+\_\+\+Grass}}
+\index{lyr\+Transp\+\_\+\+Grass@{lyr\+Transp\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+\_\+\+Grass}{lyrTransp\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a7072e00cf0b827b37a0021108b621e02}\label{_s_w___flow_8c_a7072e00cf0b827b37a0021108b621e02}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+\_\+\+Shrub@{lyr\+Transp\+\_\+\+Shrub}}
+\index{lyr\+Transp\+\_\+\+Shrub@{lyr\+Transp\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+\_\+\+Shrub}{lyrTransp\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a13f1f5dba51bd83cffd0dc6189b6b48f}\label{_s_w___flow_8c_a13f1f5dba51bd83cffd0dc6189b6b48f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+\_\+\+Tree@{lyr\+Transp\+\_\+\+Tree}}
+\index{lyr\+Transp\+\_\+\+Tree@{lyr\+Transp\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+\_\+\+Tree}{lyrTransp\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a6a103073a6b5c57f8147661e8f5c5167}\label{_s_w___flow_8c_a6a103073a6b5c57f8147661e8f5c5167}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+Co\+\_\+\+Forb@{lyr\+Transp\+Co\+\_\+\+Forb}}
+\index{lyr\+Transp\+Co\+\_\+\+Forb@{lyr\+Transp\+Co\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+Co\+\_\+\+Forb}{lyrTranspCo\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+Co\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ab6fd5cbb6002a2f412d4624873b62a25}\label{_s_w___flow_8c_ab6fd5cbb6002a2f412d4624873b62a25}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+Co\+\_\+\+Grass@{lyr\+Transp\+Co\+\_\+\+Grass}}
+\index{lyr\+Transp\+Co\+\_\+\+Grass@{lyr\+Transp\+Co\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+Co\+\_\+\+Grass}{lyrTranspCo\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+Co\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a2bb1171e36d1edbad679c9853f4edaec}\label{_s_w___flow_8c_a2bb1171e36d1edbad679c9853f4edaec}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+Co\+\_\+\+Shrub@{lyr\+Transp\+Co\+\_\+\+Shrub}}
+\index{lyr\+Transp\+Co\+\_\+\+Shrub@{lyr\+Transp\+Co\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+Co\+\_\+\+Shrub}{lyrTranspCo\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+Co\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a0cffd9583b3d7a24fb5be76adf1d8e2f}\label{_s_w___flow_8c_a0cffd9583b3d7a24fb5be76adf1d8e2f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Transp\+Co\+\_\+\+Tree@{lyr\+Transp\+Co\+\_\+\+Tree}}
+\index{lyr\+Transp\+Co\+\_\+\+Tree@{lyr\+Transp\+Co\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Transp\+Co\+\_\+\+Tree}{lyrTranspCo\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Transp\+Co\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_aab4d4bf41087eb17a093d64655478f3f}\label{_s_w___flow_8c_aab4d4bf41087eb17a093d64655478f3f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Tr\+Regions\+\_\+\+Forb@{lyr\+Tr\+Regions\+\_\+\+Forb}}
+\index{lyr\+Tr\+Regions\+\_\+\+Forb@{lyr\+Tr\+Regions\+\_\+\+Forb}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Tr\+Regions\+\_\+\+Forb}{lyrTrRegions\_Forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} lyr\+Tr\+Regions\+\_\+\+Forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ab84481934adb9116e2cb0d6f89de85b1}\label{_s_w___flow_8c_ab84481934adb9116e2cb0d6f89de85b1}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Tr\+Regions\+\_\+\+Grass@{lyr\+Tr\+Regions\+\_\+\+Grass}}
+\index{lyr\+Tr\+Regions\+\_\+\+Grass@{lyr\+Tr\+Regions\+\_\+\+Grass}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Tr\+Regions\+\_\+\+Grass}{lyrTrRegions\_Grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} lyr\+Tr\+Regions\+\_\+\+Grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a4c2c9842909f1801ba93729da56cde72}\label{_s_w___flow_8c_a4c2c9842909f1801ba93729da56cde72}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Tr\+Regions\+\_\+\+Shrub@{lyr\+Tr\+Regions\+\_\+\+Shrub}}
+\index{lyr\+Tr\+Regions\+\_\+\+Shrub@{lyr\+Tr\+Regions\+\_\+\+Shrub}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Tr\+Regions\+\_\+\+Shrub}{lyrTrRegions\_Shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} lyr\+Tr\+Regions\+\_\+\+Shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ad26d68f2125f4384c70f2db32ec9a22f}\label{_s_w___flow_8c_ad26d68f2125f4384c70f2db32ec9a22f}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Tr\+Regions\+\_\+\+Tree@{lyr\+Tr\+Regions\+\_\+\+Tree}}
+\index{lyr\+Tr\+Regions\+\_\+\+Tree@{lyr\+Tr\+Regions\+\_\+\+Tree}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Tr\+Regions\+\_\+\+Tree}{lyrTrRegions\_Tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} lyr\+Tr\+Regions\+\_\+\+Tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ac94101fc6a0cba1725b24a67f300f293}\label{_s_w___flow_8c_ac94101fc6a0cba1725b24a67f300f293}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!lyr\+Widths@{lyr\+Widths}}
+\index{lyr\+Widths@{lyr\+Widths}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Widths}{lyrWidths}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} lyr\+Widths\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}\label{_s_w___flow_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!soil\+\_\+temp\+\_\+error@{soil\+\_\+temp\+\_\+error}}
+\index{soil\+\_\+temp\+\_\+error@{soil\+\_\+temp\+\_\+error}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temp\+\_\+error}{soil\_temp\_error}}
+{\footnotesize\ttfamily unsigned int soil\+\_\+temp\+\_\+error}
+
+
+
+Referenced by end\+Calculations(), and S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_ace889dddadc2b4542b04b1b131df57ab}\label{_s_w___flow_8c_ace889dddadc2b4542b04b1b131df57ab}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!soil\+\_\+temp\+\_\+init@{soil\+\_\+temp\+\_\+init}}
+\index{soil\+\_\+temp\+\_\+init@{soil\+\_\+temp\+\_\+init}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temp\+\_\+init}{soil\_temp\_init}}
+{\footnotesize\ttfamily unsigned int soil\+\_\+temp\+\_\+init}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___flow_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+\mbox{\Hypertarget{_s_w___flow_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___flow_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+\mbox{\Hypertarget{_s_w___flow_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}\label{_s_w___flow_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Sky@{S\+W\+\_\+\+Sky}}
+\index{S\+W\+\_\+\+Sky@{S\+W\+\_\+\+Sky}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Sky}{SW\_Sky}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY} S\+W\+\_\+\+Sky}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init(), and S\+W\+\_\+\+S\+K\+Y\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___flow_8c_afdb8ced0825a798336ba061396f7016c}\label{_s_w___flow_8c_afdb8ced0825a798336ba061396f7016c}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}}
+\index{S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Soilwat}{SW\_Soilwat}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} S\+W\+\_\+\+Soilwat}
+
+\mbox{\Hypertarget{_s_w___flow_8c_a8f9709f4f153a6d19d922c1896a1e2a3}\label{_s_w___flow_8c_a8f9709f4f153a6d19d922c1896a1e2a3}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}}
+\index{S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Prod}{SW\_VegProd}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} S\+W\+\_\+\+Veg\+Prod}
+
+\mbox{\Hypertarget{_s_w___flow_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}\label{_s_w___flow_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}}
+\index{S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}!S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}}
+\index{S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}!S\+W\+\_\+\+Flow.\+c@{S\+W\+\_\+\+Flow.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather}{SW\_Weather}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} S\+W\+\_\+\+Weather}
+
diff --git a/doc/latex/_s_w___flow__lib_8c.tex b/doc/latex/_s_w___flow__lib_8c.tex
new file mode 100644
index 000000000..ebb3a25db
--- /dev/null
+++ b/doc/latex/_s_w___flow__lib_8c.tex
@@ -0,0 +1,369 @@
+\hypertarget{_s_w___flow__lib_8c}{}\section{S\+W\+\_\+\+Flow\+\_\+lib.\+c File Reference}
+\label{_s_w___flow__lib_8c}\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Flow\+\_\+lib.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Flow\+\_\+subs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___flow__lib_8c_af96898fb97d62e17b02d0c6f719151ce}{grass\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintgrass, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8c_acc1aee51b5bbcb1380efeb93b025f0ad}{shrub\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintshrub, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8c_af6e4f9a8a045eb85be00fa075a38e784}{tree\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintfor, double ppt, double L\+AI, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a1465316e765759db20d065ace8d0d88e}{forb\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintforb, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a58d72436d25f98e09dfe7dad4876e033}{litter\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintlit, double blitter, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a877c3d07d472ef356509efb287e89478}{infiltrate\+\_\+water\+\_\+high} (double swc\mbox{[}$\,$\mbox{]}, double drain\mbox{[}$\,$\mbox{]}, double $\ast$\hyperlink{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}{drainout}, double pptleft, unsigned int nlyrs, double swcfc\mbox{[}$\,$\mbox{]}, double swcsat\mbox{[}$\,$\mbox{]}, double impermeability\mbox{[}$\,$\mbox{]}, double $\ast$standing\+Water)
+\item
+double \hyperlink{_s_w___flow__lib_8c_a3bdea7cd6604199ad49673c073470038}{petfunc} (unsigned int doy, double avgtemp, double rlat, double elev, double slope, double aspect, double reflec, double humid, double windsp, double cloudcov, double transcoeff)
+\item
+double \hyperlink{_s_w___flow__lib_8c_aa86991fe46bc4a9b6bff3a175064464a}{svapor} (double temp)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a7293b4daefd4b3104a2d6422c80fe187}{transp\+\_\+weighted\+\_\+avg} (double $\ast$swp\+\_\+avg, unsigned int n\+\_\+tr\+\_\+rgns, unsigned int n\+\_\+layers, unsigned int tr\+\_\+regions\mbox{[}$\,$\mbox{]}, double tr\+\_\+coeff\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_a509909394ec87616d70b0f98ff790bb6}{grass\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a07b599ca60ae18b36154e117789b4ba1}{shrub\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a17210cb66ba3a806d36a1ee36819ae09}{tree\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8c_ad06cdd37a42a5f79b86c25c8e90de0c3}{forb\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a12dc2157867a28f063bac79338e32daf}{pot\+\_\+soil\+\_\+evap} (double $\ast$bserate, unsigned int nelyrs, double ecoeff\mbox{[}$\,$\mbox{]}, double totagb, double fbse, double petday, double shift, double shape, double inflec, double range, double width\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]}, double Es\+\_\+param\+\_\+limit)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a3a889cfc64aa918959e6c331b23c56ab}{pot\+\_\+soil\+\_\+evap\+\_\+bs} (double $\ast$bserate, unsigned int nelyrs, double ecoeff\mbox{[}$\,$\mbox{]}, double petday, double shift, double shape, double inflec, double range, double width\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_a1bd1c1f3527cbe8b6bb9aac1bc737809}{pot\+\_\+transp} (double $\ast$bstrate, double swpavg, double biolive, double biodead, double fbst, double petday, double swp\+\_\+shift, double swp\+\_\+shape, double swp\+\_\+inflec, double swp\+\_\+range, double shade\+\_\+scale, double shade\+\_\+deadmax, double shade\+\_\+xinflex, double shade\+\_\+slope, double shade\+\_\+yinflex, double shade\+\_\+range)
+\item
+double \hyperlink{_s_w___flow__lib_8c_a2d2e41ea50a7a1771d0c6273e857b5be}{watrate} (double swp, double petday, double shift, double shape, double inflec, double range)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a41552e80ab8d387b43a80fef49b4d808}{evap\+\_\+from\+Surface} (double $\ast$water\+\_\+pool, double $\ast$evap\+\_\+rate, double $\ast$aet)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a3a09cb656bc69c7373a2d01cb06b0700}{remove\+\_\+from\+\_\+soil} (double swc\mbox{[}$\,$\mbox{]}, double qty\mbox{[}$\,$\mbox{]}, double $\ast$aet, unsigned int nlyrs, double coeff\mbox{[}$\,$\mbox{]}, double rate, double swcmin\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_ade5212bfa19c58306595cafe95df820c}{infiltrate\+\_\+water\+\_\+low} (double swc\mbox{[}$\,$\mbox{]}, double drain\mbox{[}$\,$\mbox{]}, double $\ast$\hyperlink{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}{drainout}, unsigned int nlyrs, double sdrainpar, double sdraindpth, double swcfc\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]}, double swcmin\mbox{[}$\,$\mbox{]}, double swcsat\mbox{[}$\,$\mbox{]}, double impermeability\mbox{[}$\,$\mbox{]}, double $\ast$standing\+Water)
+\item
+void \hyperlink{_s_w___flow__lib_8c_aa9a45f022035636fd97bd9e01dd3b640}{hydraulic\+\_\+redistribution} (double swc\mbox{[}$\,$\mbox{]}, double swcwp\mbox{[}$\,$\mbox{]}, double lyr\+Root\+Co\mbox{[}$\,$\mbox{]}, double hydred\mbox{[}$\,$\mbox{]}, unsigned int nlyrs, double max\+Condroot, double swp50, double shape\+Cond, double scale)
+\item
+void \hyperlink{_s_w___flow__lib_8c_aad3e73859c6192bacd4ef31615b28c55}{lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature} (double cor\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}+1\mbox{]}, unsigned int nlyr\+Temp, double depth\+\_\+\+Temp\mbox{[}$\,$\mbox{]}, double s\+TempR\mbox{[}$\,$\mbox{]}, unsigned int nlyr\+Soil, double depth\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, double width\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, double s\+Temp\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_a03df632357244d21459a7680fe167dcc}{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature} (unsigned int nlyr\+Soil, double depth\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, double s\+Temp\mbox{[}$\,$\mbox{]}, double end\+Temp, unsigned int nlyr\+Temp, double depth\+\_\+\+Temp\mbox{[}$\,$\mbox{]}, double max\+Temp\+Depth, double s\+TempR\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_a3b87733156e9a39648e59c7ad1754f96}{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp} (double cor\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}+1\mbox{]}, unsigned int nlyr\+Soil, double width\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, double var\mbox{[}$\,$\mbox{]}, unsigned int nlyr\+Temp, double width\+\_\+\+Temp, double res\mbox{[}$\,$\mbox{]})
+\item
+double \hyperlink{_s_w___flow__lib_8c_a5246f7d7fc66d00706dcd395e355aae3}{surface\+\_\+temperature\+\_\+under\+\_\+snow} (double air\+Temp\+Avg, double snow)
+\item
+void \hyperlink{_s_w___flow__lib_8c_add74b9b9112cbea66a065aed2a3c77b8}{soil\+\_\+temperature\+\_\+init} (double b\+Density\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]}, double surface\+Temp, double olds\+Temp\mbox{[}$\,$\mbox{]}, double mean\+Air\+Temp, unsigned int nlyrs, double fc\mbox{[}$\,$\mbox{]}, double wp\mbox{[}$\,$\mbox{]}, double deltaX, double the\+Max\+Depth, unsigned int n\+Rgr)
+\item
+void \hyperlink{_s_w___flow__lib_8c_a921d6c39af0fc6fd7b284db250488500}{set\+\_\+frozen\+\_\+unfrozen} (unsigned int nlyrs, double s\+Temp\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]}, double swc\+\_\+sat\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]})
+\item
+unsigned int \hyperlink{_s_w___flow__lib_8c_a7570bfc44a681654eea14bc9336f2689}{adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing} (double olds\+Temp\mbox{[}$\,$\mbox{]}, double s\+Temp\mbox{[}$\,$\mbox{]}, double sh\+Param, unsigned int nlyrs, double vwc\mbox{[}$\,$\mbox{]}, double b\+Density\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8c_a2bb21c147c1a560a90c765e619297b4c}{end\+Calculations} ()
+\item
+void \hyperlink{_s_w___flow__lib_8c_a2da161c71736e111d04ff43e5955366e}{soil\+\_\+temperature} (double air\+Temp, double pet, double aet, double biomass, double swc\mbox{[}$\,$\mbox{]}, double swc\+\_\+sat\mbox{[}$\,$\mbox{]}, double b\+Density\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]}, double olds\+Temp\mbox{[}$\,$\mbox{]}, double s\+Temp\mbox{[}$\,$\mbox{]}, double surface\+Temp\mbox{[}2\mbox{]}, unsigned int nlyrs, double fc\mbox{[}$\,$\mbox{]}, double wp\mbox{[}$\,$\mbox{]}, double bm\+Limiter, double t1\+Param1, double t1\+Param2, double t1\+Param3, double cs\+Param1, double cs\+Param2, double sh\+Param, double snowdepth, double mean\+Air\+Temp, double deltaX, double the\+Max\+Depth, unsigned int n\+Rgr, double snow)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___flow__lib_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} \hyperlink{_s_w___flow__lib_8c_afdb8ced0825a798336ba061396f7016c}{S\+W\+\_\+\+Soilwat}
+\item
+unsigned int \hyperlink{_s_w___flow__lib_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}{soil\+\_\+temp\+\_\+error}
+\item
+unsigned int \hyperlink{_s_w___flow__lib_8c_ace889dddadc2b4542b04b1b131df57ab}{soil\+\_\+temp\+\_\+init}
+\item
+unsigned int \hyperlink{_s_w___flow__lib_8c_a6fd11ca6c2749216e3c8f343528a1043}{fusion\+\_\+pool\+\_\+init}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a7570bfc44a681654eea14bc9336f2689}\label{_s_w___flow__lib_8c_a7570bfc44a681654eea14bc9336f2689}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing@{adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing}}
+\index{adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing@{adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing()}{adjust\_Tsoil\_by\_freezing\_and\_thawing()}}
+{\footnotesize\ttfamily unsigned int adjust\+\_\+\+Tsoil\+\_\+by\+\_\+freezing\+\_\+and\+\_\+thawing (\begin{DoxyParamCaption}\item[{double}]{olds\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{sh\+Param, }\item[{unsigned int}]{nlyrs, }\item[{double}]{vwc\mbox{[}$\,$\mbox{]}, }\item[{double}]{b\+Density\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a2bb21c147c1a560a90c765e619297b4c}\label{_s_w___flow__lib_8c_a2bb21c147c1a560a90c765e619297b4c}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!end\+Calculations@{end\+Calculations}}
+\index{end\+Calculations@{end\+Calculations}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{end\+Calculations()}{endCalculations()}}
+{\footnotesize\ttfamily void end\+Calculations (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a41552e80ab8d387b43a80fef49b4d808}\label{_s_w___flow__lib_8c_a41552e80ab8d387b43a80fef49b4d808}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!evap\+\_\+from\+Surface@{evap\+\_\+from\+Surface}}
+\index{evap\+\_\+from\+Surface@{evap\+\_\+from\+Surface}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{evap\+\_\+from\+Surface()}{evap\_fromSurface()}}
+{\footnotesize\ttfamily void evap\+\_\+from\+Surface (\begin{DoxyParamCaption}\item[{double $\ast$}]{water\+\_\+pool, }\item[{double $\ast$}]{evap\+\_\+rate, }\item[{double $\ast$}]{aet }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_ad06cdd37a42a5f79b86c25c8e90de0c3}\label{_s_w___flow__lib_8c_ad06cdd37a42a5f79b86c25c8e90de0c3}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!forb\+\_\+\+Es\+T\+\_\+partitioning@{forb\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{forb\+\_\+\+Es\+T\+\_\+partitioning@{forb\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{forb\+\_\+\+Es\+T\+\_\+partitioning()}{forb\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void forb\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a1465316e765759db20d065ace8d0d88e}\label{_s_w___flow__lib_8c_a1465316e765759db20d065ace8d0d88e}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!forb\+\_\+intercepted\+\_\+water@{forb\+\_\+intercepted\+\_\+water}}
+\index{forb\+\_\+intercepted\+\_\+water@{forb\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{forb\+\_\+intercepted\+\_\+water()}{forb\_intercepted\_water()}}
+{\footnotesize\ttfamily void forb\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintforb, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a509909394ec87616d70b0f98ff790bb6}\label{_s_w___flow__lib_8c_a509909394ec87616d70b0f98ff790bb6}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!grass\+\_\+\+Es\+T\+\_\+partitioning@{grass\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{grass\+\_\+\+Es\+T\+\_\+partitioning@{grass\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{grass\+\_\+\+Es\+T\+\_\+partitioning()}{grass\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void grass\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+calculates the fraction of water lost from bare soil
+
+\begin{DoxyAuthor}{Author}
+S\+LC
+\end{DoxyAuthor}
+
+\begin{DoxyParams}{Parameters}
+{\em fbse} & the fraction of water loss from bare soil evaporation \\
+\hline
+{\em fbst} & the fraction of water loss from bare soil transpiration \\
+\hline
+{\em blivelai} & the live biomass leaf area index \\
+\hline
+{\em lai\+\_\+param} & \\
+\hline
+\end{DoxyParams}
+\mbox{\Hypertarget{_s_w___flow__lib_8c_af96898fb97d62e17b02d0c6f719151ce}\label{_s_w___flow__lib_8c_af96898fb97d62e17b02d0c6f719151ce}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!grass\+\_\+intercepted\+\_\+water@{grass\+\_\+intercepted\+\_\+water}}
+\index{grass\+\_\+intercepted\+\_\+water@{grass\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{grass\+\_\+intercepted\+\_\+water()}{grass\_intercepted\_water()}}
+{\footnotesize\ttfamily void grass\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintgrass, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_aa9a45f022035636fd97bd9e01dd3b640}\label{_s_w___flow__lib_8c_aa9a45f022035636fd97bd9e01dd3b640}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!hydraulic\+\_\+redistribution@{hydraulic\+\_\+redistribution}}
+\index{hydraulic\+\_\+redistribution@{hydraulic\+\_\+redistribution}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{hydraulic\+\_\+redistribution()}{hydraulic\_redistribution()}}
+{\footnotesize\ttfamily void hydraulic\+\_\+redistribution (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcwp\mbox{[}$\,$\mbox{]}, }\item[{double}]{lyr\+Root\+Co\mbox{[}$\,$\mbox{]}, }\item[{double}]{hydred\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{nlyrs, }\item[{double}]{max\+Condroot, }\item[{double}]{swp50, }\item[{double}]{shape\+Cond, }\item[{double}]{scale }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a877c3d07d472ef356509efb287e89478}\label{_s_w___flow__lib_8c_a877c3d07d472ef356509efb287e89478}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!infiltrate\+\_\+water\+\_\+high@{infiltrate\+\_\+water\+\_\+high}}
+\index{infiltrate\+\_\+water\+\_\+high@{infiltrate\+\_\+water\+\_\+high}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{infiltrate\+\_\+water\+\_\+high()}{infiltrate\_water\_high()}}
+{\footnotesize\ttfamily void infiltrate\+\_\+water\+\_\+high (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{drain\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{drainout, }\item[{double}]{pptleft, }\item[{unsigned int}]{nlyrs, }\item[{double}]{swcfc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcsat\mbox{[}$\,$\mbox{]}, }\item[{double}]{impermeability\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{standing\+Water }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_ade5212bfa19c58306595cafe95df820c}\label{_s_w___flow__lib_8c_ade5212bfa19c58306595cafe95df820c}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!infiltrate\+\_\+water\+\_\+low@{infiltrate\+\_\+water\+\_\+low}}
+\index{infiltrate\+\_\+water\+\_\+low@{infiltrate\+\_\+water\+\_\+low}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{infiltrate\+\_\+water\+\_\+low()}{infiltrate\_water\_low()}}
+{\footnotesize\ttfamily void infiltrate\+\_\+water\+\_\+low (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{drain\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{drainout, }\item[{unsigned int}]{nlyrs, }\item[{double}]{sdrainpar, }\item[{double}]{sdraindpth, }\item[{double}]{swcfc\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcmin\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcsat\mbox{[}$\,$\mbox{]}, }\item[{double}]{impermeability\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{standing\+Water }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a58d72436d25f98e09dfe7dad4876e033}\label{_s_w___flow__lib_8c_a58d72436d25f98e09dfe7dad4876e033}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!litter\+\_\+intercepted\+\_\+water@{litter\+\_\+intercepted\+\_\+water}}
+\index{litter\+\_\+intercepted\+\_\+water@{litter\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{litter\+\_\+intercepted\+\_\+water()}{litter\_intercepted\_water()}}
+{\footnotesize\ttfamily void litter\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintlit, }\item[{double}]{blitter, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a3b87733156e9a39648e59c7ad1754f96}\label{_s_w___flow__lib_8c_a3b87733156e9a39648e59c7ad1754f96}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!lyr\+Soil\+\_\+to\+\_\+lyr\+Temp@{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp}}
+\index{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp@{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp()}{lyrSoil\_to\_lyrTemp()}}
+{\footnotesize\ttfamily void lyr\+Soil\+\_\+to\+\_\+lyr\+Temp (\begin{DoxyParamCaption}\item[{double}]{cor\mbox{[}\+M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+G\+R+1\mbox{]}\mbox{[}\+M\+A\+X\+\_\+\+L\+A\+Y\+E\+R\+S+1\mbox{]}, }\item[{unsigned int}]{nlyr\+Soil, }\item[{double}]{width\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, }\item[{double}]{var\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{nlyr\+Temp, }\item[{double}]{width\+\_\+\+Temp, }\item[{double}]{res\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a03df632357244d21459a7680fe167dcc}\label{_s_w___flow__lib_8c_a03df632357244d21459a7680fe167dcc}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature@{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature}}
+\index{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature@{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature()}{lyrSoil\_to\_lyrTemp\_temperature()}}
+{\footnotesize\ttfamily void lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature (\begin{DoxyParamCaption}\item[{unsigned int}]{nlyr\+Soil, }\item[{double}]{depth\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{end\+Temp, }\item[{unsigned int}]{nlyr\+Temp, }\item[{double}]{depth\+\_\+\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{max\+Temp\+Depth, }\item[{double}]{s\+TempR\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_aad3e73859c6192bacd4ef31615b28c55}\label{_s_w___flow__lib_8c_aad3e73859c6192bacd4ef31615b28c55}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature@{lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature}}
+\index{lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature@{lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature()}{lyrTemp\_to\_lyrSoil\_temperature()}}
+{\footnotesize\ttfamily void lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature (\begin{DoxyParamCaption}\item[{double}]{cor\mbox{[}\+M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+G\+R+1\mbox{]}\mbox{[}\+M\+A\+X\+\_\+\+L\+A\+Y\+E\+R\+S+1\mbox{]}, }\item[{unsigned int}]{nlyr\+Temp, }\item[{double}]{depth\+\_\+\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+TempR\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{nlyr\+Soil, }\item[{double}]{depth\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\+\_\+\+Soil\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a3bdea7cd6604199ad49673c073470038}\label{_s_w___flow__lib_8c_a3bdea7cd6604199ad49673c073470038}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!petfunc@{petfunc}}
+\index{petfunc@{petfunc}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{petfunc()}{petfunc()}}
+{\footnotesize\ttfamily double petfunc (\begin{DoxyParamCaption}\item[{unsigned int}]{doy, }\item[{double}]{avgtemp, }\item[{double}]{rlat, }\item[{double}]{elev, }\item[{double}]{slope, }\item[{double}]{aspect, }\item[{double}]{reflec, }\item[{double}]{humid, }\item[{double}]{windsp, }\item[{double}]{cloudcov, }\item[{double}]{transcoeff }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a12dc2157867a28f063bac79338e32daf}\label{_s_w___flow__lib_8c_a12dc2157867a28f063bac79338e32daf}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!pot\+\_\+soil\+\_\+evap@{pot\+\_\+soil\+\_\+evap}}
+\index{pot\+\_\+soil\+\_\+evap@{pot\+\_\+soil\+\_\+evap}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{pot\+\_\+soil\+\_\+evap()}{pot\_soil\_evap()}}
+{\footnotesize\ttfamily void pot\+\_\+soil\+\_\+evap (\begin{DoxyParamCaption}\item[{double $\ast$}]{bserate, }\item[{unsigned int}]{nelyrs, }\item[{double}]{ecoeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{totagb, }\item[{double}]{fbse, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{Es\+\_\+param\+\_\+limit }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a3a889cfc64aa918959e6c331b23c56ab}\label{_s_w___flow__lib_8c_a3a889cfc64aa918959e6c331b23c56ab}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!pot\+\_\+soil\+\_\+evap\+\_\+bs@{pot\+\_\+soil\+\_\+evap\+\_\+bs}}
+\index{pot\+\_\+soil\+\_\+evap\+\_\+bs@{pot\+\_\+soil\+\_\+evap\+\_\+bs}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{pot\+\_\+soil\+\_\+evap\+\_\+bs()}{pot\_soil\_evap\_bs()}}
+{\footnotesize\ttfamily void pot\+\_\+soil\+\_\+evap\+\_\+bs (\begin{DoxyParamCaption}\item[{double $\ast$}]{bserate, }\item[{unsigned int}]{nelyrs, }\item[{double}]{ecoeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a1bd1c1f3527cbe8b6bb9aac1bc737809}\label{_s_w___flow__lib_8c_a1bd1c1f3527cbe8b6bb9aac1bc737809}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!pot\+\_\+transp@{pot\+\_\+transp}}
+\index{pot\+\_\+transp@{pot\+\_\+transp}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{pot\+\_\+transp()}{pot\_transp()}}
+{\footnotesize\ttfamily void pot\+\_\+transp (\begin{DoxyParamCaption}\item[{double $\ast$}]{bstrate, }\item[{double}]{swpavg, }\item[{double}]{biolive, }\item[{double}]{biodead, }\item[{double}]{fbst, }\item[{double}]{petday, }\item[{double}]{swp\+\_\+shift, }\item[{double}]{swp\+\_\+shape, }\item[{double}]{swp\+\_\+inflec, }\item[{double}]{swp\+\_\+range, }\item[{double}]{shade\+\_\+scale, }\item[{double}]{shade\+\_\+deadmax, }\item[{double}]{shade\+\_\+xinflex, }\item[{double}]{shade\+\_\+slope, }\item[{double}]{shade\+\_\+yinflex, }\item[{double}]{shade\+\_\+range }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a3a09cb656bc69c7373a2d01cb06b0700}\label{_s_w___flow__lib_8c_a3a09cb656bc69c7373a2d01cb06b0700}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!remove\+\_\+from\+\_\+soil@{remove\+\_\+from\+\_\+soil}}
+\index{remove\+\_\+from\+\_\+soil@{remove\+\_\+from\+\_\+soil}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{remove\+\_\+from\+\_\+soil()}{remove\_from\_soil()}}
+{\footnotesize\ttfamily void remove\+\_\+from\+\_\+soil (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{qty\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{aet, }\item[{unsigned int}]{nlyrs, }\item[{double}]{coeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{rate, }\item[{double}]{swcmin\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a921d6c39af0fc6fd7b284db250488500}\label{_s_w___flow__lib_8c_a921d6c39af0fc6fd7b284db250488500}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!set\+\_\+frozen\+\_\+unfrozen@{set\+\_\+frozen\+\_\+unfrozen}}
+\index{set\+\_\+frozen\+\_\+unfrozen@{set\+\_\+frozen\+\_\+unfrozen}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{set\+\_\+frozen\+\_\+unfrozen()}{set\_frozen\_unfrozen()}}
+{\footnotesize\ttfamily void set\+\_\+frozen\+\_\+unfrozen (\begin{DoxyParamCaption}\item[{unsigned int}]{nlyrs, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\+\_\+sat\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a07b599ca60ae18b36154e117789b4ba1}\label{_s_w___flow__lib_8c_a07b599ca60ae18b36154e117789b4ba1}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!shrub\+\_\+\+Es\+T\+\_\+partitioning@{shrub\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{shrub\+\_\+\+Es\+T\+\_\+partitioning@{shrub\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{shrub\+\_\+\+Es\+T\+\_\+partitioning()}{shrub\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void shrub\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_acc1aee51b5bbcb1380efeb93b025f0ad}\label{_s_w___flow__lib_8c_acc1aee51b5bbcb1380efeb93b025f0ad}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!shrub\+\_\+intercepted\+\_\+water@{shrub\+\_\+intercepted\+\_\+water}}
+\index{shrub\+\_\+intercepted\+\_\+water@{shrub\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{shrub\+\_\+intercepted\+\_\+water()}{shrub\_intercepted\_water()}}
+{\footnotesize\ttfamily void shrub\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintshrub, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a2da161c71736e111d04ff43e5955366e}\label{_s_w___flow__lib_8c_a2da161c71736e111d04ff43e5955366e}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!soil\+\_\+temperature@{soil\+\_\+temperature}}
+\index{soil\+\_\+temperature@{soil\+\_\+temperature}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temperature()}{soil\_temperature()}}
+{\footnotesize\ttfamily void soil\+\_\+temperature (\begin{DoxyParamCaption}\item[{double}]{air\+Temp, }\item[{double}]{pet, }\item[{double}]{aet, }\item[{double}]{biomass, }\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\+\_\+sat\mbox{[}$\,$\mbox{]}, }\item[{double}]{b\+Density\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{olds\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{surface\+Temp\mbox{[}2\mbox{]}, }\item[{unsigned int}]{nlyrs, }\item[{double}]{fc\mbox{[}$\,$\mbox{]}, }\item[{double}]{wp\mbox{[}$\,$\mbox{]}, }\item[{double}]{bm\+Limiter, }\item[{double}]{t1\+Param1, }\item[{double}]{t1\+Param2, }\item[{double}]{t1\+Param3, }\item[{double}]{cs\+Param1, }\item[{double}]{cs\+Param2, }\item[{double}]{sh\+Param, }\item[{double}]{snowdepth, }\item[{double}]{mean\+Air\+Temp, }\item[{double}]{deltaX, }\item[{double}]{the\+Max\+Depth, }\item[{unsigned int}]{n\+Rgr, }\item[{double}]{snow }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_add74b9b9112cbea66a065aed2a3c77b8}\label{_s_w___flow__lib_8c_add74b9b9112cbea66a065aed2a3c77b8}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!soil\+\_\+temperature\+\_\+init@{soil\+\_\+temperature\+\_\+init}}
+\index{soil\+\_\+temperature\+\_\+init@{soil\+\_\+temperature\+\_\+init}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temperature\+\_\+init()}{soil\_temperature\_init()}}
+{\footnotesize\ttfamily void soil\+\_\+temperature\+\_\+init (\begin{DoxyParamCaption}\item[{double}]{b\+Density\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{surface\+Temp, }\item[{double}]{olds\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{mean\+Air\+Temp, }\item[{unsigned int}]{nlyrs, }\item[{double}]{fc\mbox{[}$\,$\mbox{]}, }\item[{double}]{wp\mbox{[}$\,$\mbox{]}, }\item[{double}]{deltaX, }\item[{double}]{the\+Max\+Depth, }\item[{unsigned int}]{n\+Rgr }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a5246f7d7fc66d00706dcd395e355aae3}\label{_s_w___flow__lib_8c_a5246f7d7fc66d00706dcd395e355aae3}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!surface\+\_\+temperature\+\_\+under\+\_\+snow@{surface\+\_\+temperature\+\_\+under\+\_\+snow}}
+\index{surface\+\_\+temperature\+\_\+under\+\_\+snow@{surface\+\_\+temperature\+\_\+under\+\_\+snow}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{surface\+\_\+temperature\+\_\+under\+\_\+snow()}{surface\_temperature\_under\_snow()}}
+{\footnotesize\ttfamily double surface\+\_\+temperature\+\_\+under\+\_\+snow (\begin{DoxyParamCaption}\item[{double}]{air\+Temp\+Avg, }\item[{double}]{snow }\end{DoxyParamCaption})}
+
+Determines the average temperature of the soil surface under snow. Based upon Parton et al. 1998. Equations 5 \& 6.
+
+
+\begin{DoxyParams}{Parameters}
+{\em air\+Temp\+Avg} & the average air temperature of the area, in Celsius \\
+\hline
+{\em snow} & the snow-\/water-\/equivalent of the area, in cm \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+the modified, average temperature of the soil surface
+\end{DoxyReturn}
+the effect of snow based on swe
+
+the average temeperature of the soil surface
+
+Parton et al. 1998. Equation 6.
+
+Parton et al. 1998. Equation 5. \mbox{\Hypertarget{_s_w___flow__lib_8c_aa86991fe46bc4a9b6bff3a175064464a}\label{_s_w___flow__lib_8c_aa86991fe46bc4a9b6bff3a175064464a}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!svapor@{svapor}}
+\index{svapor@{svapor}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{svapor()}{svapor()}}
+{\footnotesize\ttfamily double svapor (\begin{DoxyParamCaption}\item[{double}]{temp }\end{DoxyParamCaption})}
+
+calculates the saturation vapor pressure of water
+
+\begin{DoxyAuthor}{Author}
+S\+LC
+\end{DoxyAuthor}
+
+\begin{DoxyParams}{Parameters}
+{\em temp} & the average temperature for the day \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+svapor the saturation vapor pressure (mm of hg)
+\end{DoxyReturn}
+
+
+Referenced by petfunc().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a7293b4daefd4b3104a2d6422c80fe187}\label{_s_w___flow__lib_8c_a7293b4daefd4b3104a2d6422c80fe187}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!transp\+\_\+weighted\+\_\+avg@{transp\+\_\+weighted\+\_\+avg}}
+\index{transp\+\_\+weighted\+\_\+avg@{transp\+\_\+weighted\+\_\+avg}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{transp\+\_\+weighted\+\_\+avg()}{transp\_weighted\_avg()}}
+{\footnotesize\ttfamily void transp\+\_\+weighted\+\_\+avg (\begin{DoxyParamCaption}\item[{double $\ast$}]{swp\+\_\+avg, }\item[{unsigned int}]{n\+\_\+tr\+\_\+rgns, }\item[{unsigned int}]{n\+\_\+layers, }\item[{unsigned int}]{tr\+\_\+regions\mbox{[}$\,$\mbox{]}, }\item[{double}]{tr\+\_\+coeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a17210cb66ba3a806d36a1ee36819ae09}\label{_s_w___flow__lib_8c_a17210cb66ba3a806d36a1ee36819ae09}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!tree\+\_\+\+Es\+T\+\_\+partitioning@{tree\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{tree\+\_\+\+Es\+T\+\_\+partitioning@{tree\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{tree\+\_\+\+Es\+T\+\_\+partitioning()}{tree\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void tree\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_af6e4f9a8a045eb85be00fa075a38e784}\label{_s_w___flow__lib_8c_af6e4f9a8a045eb85be00fa075a38e784}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!tree\+\_\+intercepted\+\_\+water@{tree\+\_\+intercepted\+\_\+water}}
+\index{tree\+\_\+intercepted\+\_\+water@{tree\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{tree\+\_\+intercepted\+\_\+water()}{tree\_intercepted\_water()}}
+{\footnotesize\ttfamily void tree\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintfor, }\item[{double}]{ppt, }\item[{double}]{L\+AI, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a2d2e41ea50a7a1771d0c6273e857b5be}\label{_s_w___flow__lib_8c_a2d2e41ea50a7a1771d0c6273e857b5be}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!watrate@{watrate}}
+\index{watrate@{watrate}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{watrate()}{watrate()}}
+{\footnotesize\ttfamily double watrate (\begin{DoxyParamCaption}\item[{double}]{swp, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range }\end{DoxyParamCaption})}
+
+
+
+Referenced by pot\+\_\+soil\+\_\+evap(), pot\+\_\+soil\+\_\+evap\+\_\+bs(), and pot\+\_\+transp().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a6fd11ca6c2749216e3c8f343528a1043}\label{_s_w___flow__lib_8c_a6fd11ca6c2749216e3c8f343528a1043}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!fusion\+\_\+pool\+\_\+init@{fusion\+\_\+pool\+\_\+init}}
+\index{fusion\+\_\+pool\+\_\+init@{fusion\+\_\+pool\+\_\+init}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{fusion\+\_\+pool\+\_\+init}{fusion\_pool\_init}}
+{\footnotesize\ttfamily unsigned int fusion\+\_\+pool\+\_\+init}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}\label{_s_w___flow__lib_8c_a04e8d1631a4a59d1e6b0a19a378d9a58}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!soil\+\_\+temp\+\_\+error@{soil\+\_\+temp\+\_\+error}}
+\index{soil\+\_\+temp\+\_\+error@{soil\+\_\+temp\+\_\+error}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temp\+\_\+error}{soil\_temp\_error}}
+{\footnotesize\ttfamily unsigned int soil\+\_\+temp\+\_\+error}
+
+
+
+Referenced by end\+Calculations(), and S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_ace889dddadc2b4542b04b1b131df57ab}\label{_s_w___flow__lib_8c_ace889dddadc2b4542b04b1b131df57ab}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!soil\+\_\+temp\+\_\+init@{soil\+\_\+temp\+\_\+init}}
+\index{soil\+\_\+temp\+\_\+init@{soil\+\_\+temp\+\_\+init}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{soil\+\_\+temp\+\_\+init}{soil\_temp\_init}}
+{\footnotesize\ttfamily unsigned int soil\+\_\+temp\+\_\+init}
+
+
+
+Referenced by S\+W\+\_\+\+F\+L\+W\+\_\+construct().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___flow__lib_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8c_afdb8ced0825a798336ba061396f7016c}\label{_s_w___flow__lib_8c_afdb8ced0825a798336ba061396f7016c}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}!S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}}
+\index{S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}!S\+W\+\_\+\+Flow\+\_\+lib.\+c@{S\+W\+\_\+\+Flow\+\_\+lib.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Soilwat}{SW\_Soilwat}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} S\+W\+\_\+\+Soilwat}
+
diff --git a/doc/latex/_s_w___flow__lib_8h.tex b/doc/latex/_s_w___flow__lib_8h.tex
new file mode 100644
index 000000000..73c764935
--- /dev/null
+++ b/doc/latex/_s_w___flow__lib_8h.tex
@@ -0,0 +1,308 @@
+\hypertarget{_s_w___flow__lib_8h}{}\section{S\+W\+\_\+\+Flow\+\_\+lib.\+h File Reference}
+\label{_s_w___flow__lib_8h}\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s}{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_a65c9896ad79cff15600e04ac3aaef23a}{M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR}~(vegcov $\ast$ .\+1)
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_a443e9a21531fe8f7e72d0590e08fab22}{M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR}~(ppt)
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_af12c31698ca0ea152f277050d252ce79}{M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT}~(blitter $\ast$ .\+2)
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_a541d566d0e6d866c1116d3abf45dedad}{T\+C\+O\+R\+R\+E\+C\+T\+I\+ON}~0.\+02
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_a9e0878124e3d15f54b5b1ba16b492577}{F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C}~-\/1.
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_a745edb311b1af71f4b09347bfd865f48}{F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O}~80.
+\item
+\#define \hyperlink{_s_w___flow__lib_8h_acff8f72e4dede0c8698523d1b7885ba7}{M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE}~0.\+13
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___flow__lib_8h_af96898fb97d62e17b02d0c6f719151ce}{grass\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintgrass, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8h_acc1aee51b5bbcb1380efeb93b025f0ad}{shrub\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintshrub, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8h_af6e4f9a8a045eb85be00fa075a38e784}{tree\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintfor, double ppt, double L\+AI, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a1465316e765759db20d065ace8d0d88e}{forb\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintforb, double ppt, double vegcov, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a58d72436d25f98e09dfe7dad4876e033}{litter\+\_\+intercepted\+\_\+water} (double $\ast$pptleft, double $\ast$wintlit, double blitter, double scale, double a, double b, double c, double d)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a877c3d07d472ef356509efb287e89478}{infiltrate\+\_\+water\+\_\+high} (double swc\mbox{[}$\,$\mbox{]}, double drain\mbox{[}$\,$\mbox{]}, double $\ast$\hyperlink{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}{drainout}, double pptleft, unsigned int nlyrs, double swcfc\mbox{[}$\,$\mbox{]}, double swcsat\mbox{[}$\,$\mbox{]}, double impermeability\mbox{[}$\,$\mbox{]}, double $\ast$standing\+Water)
+\item
+double \hyperlink{_s_w___flow__lib_8h_a3bdea7cd6604199ad49673c073470038}{petfunc} (unsigned int doy, double avgtemp, double rlat, double elev, double slope, double aspect, double reflec, double humid, double windsp, double cloudcov, double transcoeff)
+\item
+double \hyperlink{_s_w___flow__lib_8h_aa86991fe46bc4a9b6bff3a175064464a}{svapor} (double temp)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a7293b4daefd4b3104a2d6422c80fe187}{transp\+\_\+weighted\+\_\+avg} (double $\ast$swp\+\_\+avg, unsigned int n\+\_\+tr\+\_\+rgns, unsigned int n\+\_\+layers, unsigned int tr\+\_\+regions\mbox{[}$\,$\mbox{]}, double tr\+\_\+coeff\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8h_a509909394ec87616d70b0f98ff790bb6}{grass\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a07b599ca60ae18b36154e117789b4ba1}{shrub\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a17210cb66ba3a806d36a1ee36819ae09}{tree\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8h_ad06cdd37a42a5f79b86c25c8e90de0c3}{forb\+\_\+\+Es\+T\+\_\+partitioning} (double $\ast$fbse, double $\ast$fbst, double blivelai, double lai\+\_\+param)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a12dc2157867a28f063bac79338e32daf}{pot\+\_\+soil\+\_\+evap} (double $\ast$bserate, unsigned int nelyrs, double ecoeff\mbox{[}$\,$\mbox{]}, double totagb, double fbse, double petday, double shift, double shape, double inflec, double range, double width\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]}, double Es\+\_\+param\+\_\+limit)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a3a889cfc64aa918959e6c331b23c56ab}{pot\+\_\+soil\+\_\+evap\+\_\+bs} (double $\ast$bserate, unsigned int nelyrs, double ecoeff\mbox{[}$\,$\mbox{]}, double petday, double shift, double shape, double inflec, double range, double width\mbox{[}$\,$\mbox{]}, double swc\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8h_a1bd1c1f3527cbe8b6bb9aac1bc737809}{pot\+\_\+transp} (double $\ast$bstrate, double swpavg, double biolive, double biodead, double fbst, double petday, double swp\+\_\+shift, double swp\+\_\+shape, double swp\+\_\+inflec, double swp\+\_\+range, double shade\+\_\+scale, double shade\+\_\+deadmax, double shade\+\_\+xinflex, double shade\+\_\+slope, double shade\+\_\+yinflex, double shade\+\_\+range)
+\item
+double \hyperlink{_s_w___flow__lib_8h_a2d2e41ea50a7a1771d0c6273e857b5be}{watrate} (double swp, double petday, double shift, double shape, double inflec, double range)
+\item
+void \hyperlink{_s_w___flow__lib_8h_af5e16e510229df213c7e3d2882390979}{evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water} (double $\ast$cwlit, double $\ast$cwstcr, double $\ast$standing\+Water, double $\ast$wevap, double $\ast$aet, double petday)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a41552e80ab8d387b43a80fef49b4d808}{evap\+\_\+from\+Surface} (double $\ast$water\+\_\+pool, double $\ast$evap\+\_\+rate, double $\ast$aet)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a719179c043543e75ab34fa0279be09d3}{remove\+\_\+from\+\_\+soil} (double swc\mbox{[}$\,$\mbox{]}, double qty\mbox{[}$\,$\mbox{]}, double $\ast$aet, unsigned int nlyrs, double ecoeff\mbox{[}$\,$\mbox{]}, double rate, double swcmin\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___flow__lib_8h_ade5212bfa19c58306595cafe95df820c}{infiltrate\+\_\+water\+\_\+low} (double swc\mbox{[}$\,$\mbox{]}, double drain\mbox{[}$\,$\mbox{]}, double $\ast$\hyperlink{_s_w___flow_8c_a4106901c0198609299d856b2b1f88304}{drainout}, unsigned int nlyrs, double sdrainpar, double sdraindpth, double swcfc\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]}, double swcmin\mbox{[}$\,$\mbox{]}, double swcsat\mbox{[}$\,$\mbox{]}, double impermeability\mbox{[}$\,$\mbox{]}, double $\ast$standing\+Water)
+\item
+void \hyperlink{_s_w___flow__lib_8h_aa9a45f022035636fd97bd9e01dd3b640}{hydraulic\+\_\+redistribution} (double swc\mbox{[}$\,$\mbox{]}, double swcwp\mbox{[}$\,$\mbox{]}, double lyr\+Root\+Co\mbox{[}$\,$\mbox{]}, double hydred\mbox{[}$\,$\mbox{]}, unsigned int nlyrs, double max\+Condroot, double swp50, double shape\+Cond, double scale)
+\item
+void \hyperlink{_s_w___flow__lib_8h_a2da161c71736e111d04ff43e5955366e}{soil\+\_\+temperature} (double air\+Temp, double pet, double aet, double biomass, double swc\mbox{[}$\,$\mbox{]}, double swc\+\_\+sat\mbox{[}$\,$\mbox{]}, double b\+Density\mbox{[}$\,$\mbox{]}, double width\mbox{[}$\,$\mbox{]}, double olds\+Temp\mbox{[}$\,$\mbox{]}, double s\+Temp\mbox{[}$\,$\mbox{]}, double surface\+Temp\mbox{[}2\mbox{]}, unsigned int nlyrs, double fc\mbox{[}$\,$\mbox{]}, double wp\mbox{[}$\,$\mbox{]}, double bm\+Limiter, double t1\+Param1, double t1\+Param2, double t1\+Param3, double cs\+Param1, double cs\+Param2, double sh\+Param, double snowdepth, double mean\+Air\+Temp, double deltaX, double the\+Max\+Depth, unsigned int n\+Rgr, double snow)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a9e0878124e3d15f54b5b1ba16b492577}\label{_s_w___flow__lib_8h_a9e0878124e3d15f54b5b1ba16b492577}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C@{F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C}}
+\index{F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C@{F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C}{FREEZING\_TEMP\_C}}
+{\footnotesize\ttfamily \#define F\+R\+E\+E\+Z\+I\+N\+G\+\_\+\+T\+E\+M\+P\+\_\+C~-\/1.}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a745edb311b1af71f4b09347bfd865f48}\label{_s_w___flow__lib_8h_a745edb311b1af71f4b09347bfd865f48}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O@{F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O}}
+\index{F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O@{F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O}{FUSIONHEAT\_H2O}}
+{\footnotesize\ttfamily \#define F\+U\+S\+I\+O\+N\+H\+E\+A\+T\+\_\+\+H2O~80.}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a443e9a21531fe8f7e72d0590e08fab22}\label{_s_w___flow__lib_8h_a443e9a21531fe8f7e72d0590e08fab22}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR@{M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR}}
+\index{M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR@{M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR}{MAX\_WINTFOR}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+W\+I\+N\+T\+F\+OR~(ppt)}
+
+
+
+Referenced by tree\+\_\+intercepted\+\_\+water().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_af12c31698ca0ea152f277050d252ce79}\label{_s_w___flow__lib_8h_af12c31698ca0ea152f277050d252ce79}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT@{M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT}}
+\index{M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT@{M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT}{MAX\_WINTLIT}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+W\+I\+N\+T\+L\+IT~(blitter $\ast$ .\+2)}
+
+
+
+Referenced by litter\+\_\+intercepted\+\_\+water().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a65c9896ad79cff15600e04ac3aaef23a}\label{_s_w___flow__lib_8h_a65c9896ad79cff15600e04ac3aaef23a}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR@{M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR}}
+\index{M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR@{M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR}{MAX\_WINTSTCR}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+W\+I\+N\+T\+S\+T\+CR~(vegcov $\ast$ .\+1)}
+
+
+
+Referenced by forb\+\_\+intercepted\+\_\+water(), grass\+\_\+intercepted\+\_\+water(), and shrub\+\_\+intercepted\+\_\+water().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_acff8f72e4dede0c8698523d1b7885ba7}\label{_s_w___flow__lib_8h_acff8f72e4dede0c8698523d1b7885ba7}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE@{M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE}}
+\index{M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE@{M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE}{MIN\_VWC\_TO\_FREEZE}}
+{\footnotesize\ttfamily \#define M\+I\+N\+\_\+\+V\+W\+C\+\_\+\+T\+O\+\_\+\+F\+R\+E\+E\+ZE~0.\+13}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a541d566d0e6d866c1116d3abf45dedad}\label{_s_w___flow__lib_8h_a541d566d0e6d866c1116d3abf45dedad}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!T\+C\+O\+R\+R\+E\+C\+T\+I\+ON@{T\+C\+O\+R\+R\+E\+C\+T\+I\+ON}}
+\index{T\+C\+O\+R\+R\+E\+C\+T\+I\+ON@{T\+C\+O\+R\+R\+E\+C\+T\+I\+ON}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{T\+C\+O\+R\+R\+E\+C\+T\+I\+ON}{TCORRECTION}}
+{\footnotesize\ttfamily \#define T\+C\+O\+R\+R\+E\+C\+T\+I\+ON~0.\+02}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a41552e80ab8d387b43a80fef49b4d808}\label{_s_w___flow__lib_8h_a41552e80ab8d387b43a80fef49b4d808}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!evap\+\_\+from\+Surface@{evap\+\_\+from\+Surface}}
+\index{evap\+\_\+from\+Surface@{evap\+\_\+from\+Surface}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{evap\+\_\+from\+Surface()}{evap\_fromSurface()}}
+{\footnotesize\ttfamily void evap\+\_\+from\+Surface (\begin{DoxyParamCaption}\item[{double $\ast$}]{water\+\_\+pool, }\item[{double $\ast$}]{evap\+\_\+rate, }\item[{double $\ast$}]{aet }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_af5e16e510229df213c7e3d2882390979}\label{_s_w___flow__lib_8h_af5e16e510229df213c7e3d2882390979}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water@{evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water}}
+\index{evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water@{evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water()}{evap\_litter\_veg\_surfaceWater()}}
+{\footnotesize\ttfamily void evap\+\_\+litter\+\_\+veg\+\_\+surface\+Water (\begin{DoxyParamCaption}\item[{double $\ast$}]{cwlit, }\item[{double $\ast$}]{cwstcr, }\item[{double $\ast$}]{standing\+Water, }\item[{double $\ast$}]{wevap, }\item[{double $\ast$}]{aet, }\item[{double}]{petday }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_ad06cdd37a42a5f79b86c25c8e90de0c3}\label{_s_w___flow__lib_8h_ad06cdd37a42a5f79b86c25c8e90de0c3}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!forb\+\_\+\+Es\+T\+\_\+partitioning@{forb\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{forb\+\_\+\+Es\+T\+\_\+partitioning@{forb\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{forb\+\_\+\+Es\+T\+\_\+partitioning()}{forb\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void forb\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a1465316e765759db20d065ace8d0d88e}\label{_s_w___flow__lib_8h_a1465316e765759db20d065ace8d0d88e}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!forb\+\_\+intercepted\+\_\+water@{forb\+\_\+intercepted\+\_\+water}}
+\index{forb\+\_\+intercepted\+\_\+water@{forb\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{forb\+\_\+intercepted\+\_\+water()}{forb\_intercepted\_water()}}
+{\footnotesize\ttfamily void forb\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintforb, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a509909394ec87616d70b0f98ff790bb6}\label{_s_w___flow__lib_8h_a509909394ec87616d70b0f98ff790bb6}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!grass\+\_\+\+Es\+T\+\_\+partitioning@{grass\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{grass\+\_\+\+Es\+T\+\_\+partitioning@{grass\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{grass\+\_\+\+Es\+T\+\_\+partitioning()}{grass\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void grass\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+calculates the fraction of water lost from bare soil
+
+\begin{DoxyAuthor}{Author}
+S\+LC
+\end{DoxyAuthor}
+
+\begin{DoxyParams}{Parameters}
+{\em fbse} & the fraction of water loss from bare soil evaporation \\
+\hline
+{\em fbst} & the fraction of water loss from bare soil transpiration \\
+\hline
+{\em blivelai} & the live biomass leaf area index \\
+\hline
+{\em lai\+\_\+param} & \\
+\hline
+\end{DoxyParams}
+\mbox{\Hypertarget{_s_w___flow__lib_8h_af96898fb97d62e17b02d0c6f719151ce}\label{_s_w___flow__lib_8h_af96898fb97d62e17b02d0c6f719151ce}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!grass\+\_\+intercepted\+\_\+water@{grass\+\_\+intercepted\+\_\+water}}
+\index{grass\+\_\+intercepted\+\_\+water@{grass\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{grass\+\_\+intercepted\+\_\+water()}{grass\_intercepted\_water()}}
+{\footnotesize\ttfamily void grass\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintgrass, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_aa9a45f022035636fd97bd9e01dd3b640}\label{_s_w___flow__lib_8h_aa9a45f022035636fd97bd9e01dd3b640}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!hydraulic\+\_\+redistribution@{hydraulic\+\_\+redistribution}}
+\index{hydraulic\+\_\+redistribution@{hydraulic\+\_\+redistribution}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{hydraulic\+\_\+redistribution()}{hydraulic\_redistribution()}}
+{\footnotesize\ttfamily void hydraulic\+\_\+redistribution (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcwp\mbox{[}$\,$\mbox{]}, }\item[{double}]{lyr\+Root\+Co\mbox{[}$\,$\mbox{]}, }\item[{double}]{hydred\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{nlyrs, }\item[{double}]{max\+Condroot, }\item[{double}]{swp50, }\item[{double}]{shape\+Cond, }\item[{double}]{scale }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a877c3d07d472ef356509efb287e89478}\label{_s_w___flow__lib_8h_a877c3d07d472ef356509efb287e89478}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!infiltrate\+\_\+water\+\_\+high@{infiltrate\+\_\+water\+\_\+high}}
+\index{infiltrate\+\_\+water\+\_\+high@{infiltrate\+\_\+water\+\_\+high}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{infiltrate\+\_\+water\+\_\+high()}{infiltrate\_water\_high()}}
+{\footnotesize\ttfamily void infiltrate\+\_\+water\+\_\+high (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{drain\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{drainout, }\item[{double}]{pptleft, }\item[{unsigned int}]{nlyrs, }\item[{double}]{swcfc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcsat\mbox{[}$\,$\mbox{]}, }\item[{double}]{impermeability\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{standing\+Water }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_ade5212bfa19c58306595cafe95df820c}\label{_s_w___flow__lib_8h_ade5212bfa19c58306595cafe95df820c}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!infiltrate\+\_\+water\+\_\+low@{infiltrate\+\_\+water\+\_\+low}}
+\index{infiltrate\+\_\+water\+\_\+low@{infiltrate\+\_\+water\+\_\+low}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{infiltrate\+\_\+water\+\_\+low()}{infiltrate\_water\_low()}}
+{\footnotesize\ttfamily void infiltrate\+\_\+water\+\_\+low (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{drain\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{drainout, }\item[{unsigned int}]{nlyrs, }\item[{double}]{sdrainpar, }\item[{double}]{sdraindpth, }\item[{double}]{swcfc\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcmin\mbox{[}$\,$\mbox{]}, }\item[{double}]{swcsat\mbox{[}$\,$\mbox{]}, }\item[{double}]{impermeability\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{standing\+Water }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a58d72436d25f98e09dfe7dad4876e033}\label{_s_w___flow__lib_8h_a58d72436d25f98e09dfe7dad4876e033}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!litter\+\_\+intercepted\+\_\+water@{litter\+\_\+intercepted\+\_\+water}}
+\index{litter\+\_\+intercepted\+\_\+water@{litter\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{litter\+\_\+intercepted\+\_\+water()}{litter\_intercepted\_water()}}
+{\footnotesize\ttfamily void litter\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintlit, }\item[{double}]{blitter, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a3bdea7cd6604199ad49673c073470038}\label{_s_w___flow__lib_8h_a3bdea7cd6604199ad49673c073470038}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!petfunc@{petfunc}}
+\index{petfunc@{petfunc}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{petfunc()}{petfunc()}}
+{\footnotesize\ttfamily double petfunc (\begin{DoxyParamCaption}\item[{unsigned int}]{doy, }\item[{double}]{avgtemp, }\item[{double}]{rlat, }\item[{double}]{elev, }\item[{double}]{slope, }\item[{double}]{aspect, }\item[{double}]{reflec, }\item[{double}]{humid, }\item[{double}]{windsp, }\item[{double}]{cloudcov, }\item[{double}]{transcoeff }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a12dc2157867a28f063bac79338e32daf}\label{_s_w___flow__lib_8h_a12dc2157867a28f063bac79338e32daf}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!pot\+\_\+soil\+\_\+evap@{pot\+\_\+soil\+\_\+evap}}
+\index{pot\+\_\+soil\+\_\+evap@{pot\+\_\+soil\+\_\+evap}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{pot\+\_\+soil\+\_\+evap()}{pot\_soil\_evap()}}
+{\footnotesize\ttfamily void pot\+\_\+soil\+\_\+evap (\begin{DoxyParamCaption}\item[{double $\ast$}]{bserate, }\item[{unsigned int}]{nelyrs, }\item[{double}]{ecoeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{totagb, }\item[{double}]{fbse, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{Es\+\_\+param\+\_\+limit }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a3a889cfc64aa918959e6c331b23c56ab}\label{_s_w___flow__lib_8h_a3a889cfc64aa918959e6c331b23c56ab}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!pot\+\_\+soil\+\_\+evap\+\_\+bs@{pot\+\_\+soil\+\_\+evap\+\_\+bs}}
+\index{pot\+\_\+soil\+\_\+evap\+\_\+bs@{pot\+\_\+soil\+\_\+evap\+\_\+bs}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{pot\+\_\+soil\+\_\+evap\+\_\+bs()}{pot\_soil\_evap\_bs()}}
+{\footnotesize\ttfamily void pot\+\_\+soil\+\_\+evap\+\_\+bs (\begin{DoxyParamCaption}\item[{double $\ast$}]{bserate, }\item[{unsigned int}]{nelyrs, }\item[{double}]{ecoeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a1bd1c1f3527cbe8b6bb9aac1bc737809}\label{_s_w___flow__lib_8h_a1bd1c1f3527cbe8b6bb9aac1bc737809}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!pot\+\_\+transp@{pot\+\_\+transp}}
+\index{pot\+\_\+transp@{pot\+\_\+transp}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{pot\+\_\+transp()}{pot\_transp()}}
+{\footnotesize\ttfamily void pot\+\_\+transp (\begin{DoxyParamCaption}\item[{double $\ast$}]{bstrate, }\item[{double}]{swpavg, }\item[{double}]{biolive, }\item[{double}]{biodead, }\item[{double}]{fbst, }\item[{double}]{petday, }\item[{double}]{swp\+\_\+shift, }\item[{double}]{swp\+\_\+shape, }\item[{double}]{swp\+\_\+inflec, }\item[{double}]{swp\+\_\+range, }\item[{double}]{shade\+\_\+scale, }\item[{double}]{shade\+\_\+deadmax, }\item[{double}]{shade\+\_\+xinflex, }\item[{double}]{shade\+\_\+slope, }\item[{double}]{shade\+\_\+yinflex, }\item[{double}]{shade\+\_\+range }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a719179c043543e75ab34fa0279be09d3}\label{_s_w___flow__lib_8h_a719179c043543e75ab34fa0279be09d3}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!remove\+\_\+from\+\_\+soil@{remove\+\_\+from\+\_\+soil}}
+\index{remove\+\_\+from\+\_\+soil@{remove\+\_\+from\+\_\+soil}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{remove\+\_\+from\+\_\+soil()}{remove\_from\_soil()}}
+{\footnotesize\ttfamily void remove\+\_\+from\+\_\+soil (\begin{DoxyParamCaption}\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{qty\mbox{[}$\,$\mbox{]}, }\item[{double $\ast$}]{aet, }\item[{unsigned int}]{nlyrs, }\item[{double}]{ecoeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{rate, }\item[{double}]{swcmin\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a07b599ca60ae18b36154e117789b4ba1}\label{_s_w___flow__lib_8h_a07b599ca60ae18b36154e117789b4ba1}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!shrub\+\_\+\+Es\+T\+\_\+partitioning@{shrub\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{shrub\+\_\+\+Es\+T\+\_\+partitioning@{shrub\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{shrub\+\_\+\+Es\+T\+\_\+partitioning()}{shrub\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void shrub\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_acc1aee51b5bbcb1380efeb93b025f0ad}\label{_s_w___flow__lib_8h_acc1aee51b5bbcb1380efeb93b025f0ad}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!shrub\+\_\+intercepted\+\_\+water@{shrub\+\_\+intercepted\+\_\+water}}
+\index{shrub\+\_\+intercepted\+\_\+water@{shrub\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{shrub\+\_\+intercepted\+\_\+water()}{shrub\_intercepted\_water()}}
+{\footnotesize\ttfamily void shrub\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintshrub, }\item[{double}]{ppt, }\item[{double}]{vegcov, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a2da161c71736e111d04ff43e5955366e}\label{_s_w___flow__lib_8h_a2da161c71736e111d04ff43e5955366e}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!soil\+\_\+temperature@{soil\+\_\+temperature}}
+\index{soil\+\_\+temperature@{soil\+\_\+temperature}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{soil\+\_\+temperature()}{soil\_temperature()}}
+{\footnotesize\ttfamily void soil\+\_\+temperature (\begin{DoxyParamCaption}\item[{double}]{air\+Temp, }\item[{double}]{pet, }\item[{double}]{aet, }\item[{double}]{biomass, }\item[{double}]{swc\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\+\_\+sat\mbox{[}$\,$\mbox{]}, }\item[{double}]{b\+Density\mbox{[}$\,$\mbox{]}, }\item[{double}]{width\mbox{[}$\,$\mbox{]}, }\item[{double}]{olds\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{s\+Temp\mbox{[}$\,$\mbox{]}, }\item[{double}]{surface\+Temp\mbox{[}2\mbox{]}, }\item[{unsigned int}]{nlyrs, }\item[{double}]{fc\mbox{[}$\,$\mbox{]}, }\item[{double}]{wp\mbox{[}$\,$\mbox{]}, }\item[{double}]{bm\+Limiter, }\item[{double}]{t1\+Param1, }\item[{double}]{t1\+Param2, }\item[{double}]{t1\+Param3, }\item[{double}]{cs\+Param1, }\item[{double}]{cs\+Param2, }\item[{double}]{sh\+Param, }\item[{double}]{snowdepth, }\item[{double}]{mean\+Air\+Temp, }\item[{double}]{deltaX, }\item[{double}]{the\+Max\+Depth, }\item[{unsigned int}]{n\+Rgr, }\item[{double}]{snow }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_aa86991fe46bc4a9b6bff3a175064464a}\label{_s_w___flow__lib_8h_aa86991fe46bc4a9b6bff3a175064464a}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!svapor@{svapor}}
+\index{svapor@{svapor}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{svapor()}{svapor()}}
+{\footnotesize\ttfamily double svapor (\begin{DoxyParamCaption}\item[{double}]{temp }\end{DoxyParamCaption})}
+
+calculates the saturation vapor pressure of water
+
+\begin{DoxyAuthor}{Author}
+S\+LC
+\end{DoxyAuthor}
+
+\begin{DoxyParams}{Parameters}
+{\em temp} & the average temperature for the day \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+svapor the saturation vapor pressure (mm of hg)
+\end{DoxyReturn}
+
+
+Referenced by petfunc().
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a7293b4daefd4b3104a2d6422c80fe187}\label{_s_w___flow__lib_8h_a7293b4daefd4b3104a2d6422c80fe187}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!transp\+\_\+weighted\+\_\+avg@{transp\+\_\+weighted\+\_\+avg}}
+\index{transp\+\_\+weighted\+\_\+avg@{transp\+\_\+weighted\+\_\+avg}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{transp\+\_\+weighted\+\_\+avg()}{transp\_weighted\_avg()}}
+{\footnotesize\ttfamily void transp\+\_\+weighted\+\_\+avg (\begin{DoxyParamCaption}\item[{double $\ast$}]{swp\+\_\+avg, }\item[{unsigned int}]{n\+\_\+tr\+\_\+rgns, }\item[{unsigned int}]{n\+\_\+layers, }\item[{unsigned int}]{tr\+\_\+regions\mbox{[}$\,$\mbox{]}, }\item[{double}]{tr\+\_\+coeff\mbox{[}$\,$\mbox{]}, }\item[{double}]{swc\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a17210cb66ba3a806d36a1ee36819ae09}\label{_s_w___flow__lib_8h_a17210cb66ba3a806d36a1ee36819ae09}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!tree\+\_\+\+Es\+T\+\_\+partitioning@{tree\+\_\+\+Es\+T\+\_\+partitioning}}
+\index{tree\+\_\+\+Es\+T\+\_\+partitioning@{tree\+\_\+\+Es\+T\+\_\+partitioning}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{tree\+\_\+\+Es\+T\+\_\+partitioning()}{tree\_EsT\_partitioning()}}
+{\footnotesize\ttfamily void tree\+\_\+\+Es\+T\+\_\+partitioning (\begin{DoxyParamCaption}\item[{double $\ast$}]{fbse, }\item[{double $\ast$}]{fbst, }\item[{double}]{blivelai, }\item[{double}]{lai\+\_\+param }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_af6e4f9a8a045eb85be00fa075a38e784}\label{_s_w___flow__lib_8h_af6e4f9a8a045eb85be00fa075a38e784}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!tree\+\_\+intercepted\+\_\+water@{tree\+\_\+intercepted\+\_\+water}}
+\index{tree\+\_\+intercepted\+\_\+water@{tree\+\_\+intercepted\+\_\+water}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{tree\+\_\+intercepted\+\_\+water()}{tree\_intercepted\_water()}}
+{\footnotesize\ttfamily void tree\+\_\+intercepted\+\_\+water (\begin{DoxyParamCaption}\item[{double $\ast$}]{pptleft, }\item[{double $\ast$}]{wintfor, }\item[{double}]{ppt, }\item[{double}]{L\+AI, }\item[{double}]{scale, }\item[{double}]{a, }\item[{double}]{b, }\item[{double}]{c, }\item[{double}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___flow__lib_8h_a2d2e41ea50a7a1771d0c6273e857b5be}\label{_s_w___flow__lib_8h_a2d2e41ea50a7a1771d0c6273e857b5be}}
+\index{S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}!watrate@{watrate}}
+\index{watrate@{watrate}!S\+W\+\_\+\+Flow\+\_\+lib.\+h@{S\+W\+\_\+\+Flow\+\_\+lib.\+h}}
+\subsubsection{\texorpdfstring{watrate()}{watrate()}}
+{\footnotesize\ttfamily double watrate (\begin{DoxyParamCaption}\item[{double}]{swp, }\item[{double}]{petday, }\item[{double}]{shift, }\item[{double}]{shape, }\item[{double}]{inflec, }\item[{double}]{range }\end{DoxyParamCaption})}
+
+
+
+Referenced by pot\+\_\+soil\+\_\+evap(), pot\+\_\+soil\+\_\+evap\+\_\+bs(), and pot\+\_\+transp().
+
diff --git a/doc/latex/_s_w___flow__subs_8h.tex b/doc/latex/_s_w___flow__subs_8h.tex
new file mode 100644
index 000000000..c12cbb1ae
--- /dev/null
+++ b/doc/latex/_s_w___flow__subs_8h.tex
@@ -0,0 +1,21 @@
+\hypertarget{_s_w___flow__subs_8h}{}\section{S\+W\+\_\+\+Flow\+\_\+subs.\+h File Reference}
+\label{_s_w___flow__subs_8h}\index{S\+W\+\_\+\+Flow\+\_\+subs.\+h@{S\+W\+\_\+\+Flow\+\_\+subs.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+double \hyperlink{_s_w___flow__subs_8h_a7a6303508b80765f963ac5c741749331}{S\+W\+Cbulk2\+S\+W\+Pmatric} (double fraction\+Gravel, double swc\+Bulk, int n)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___flow__subs_8h_a7a6303508b80765f963ac5c741749331}\label{_s_w___flow__subs_8h_a7a6303508b80765f963ac5c741749331}}
+\index{S\+W\+\_\+\+Flow\+\_\+subs.\+h@{S\+W\+\_\+\+Flow\+\_\+subs.\+h}!S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+Cbulk2\+S\+W\+Pmatric}}
+\index{S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+Cbulk2\+S\+W\+Pmatric}!S\+W\+\_\+\+Flow\+\_\+subs.\+h@{S\+W\+\_\+\+Flow\+\_\+subs.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+Cbulk2\+S\+W\+Pmatric()}{SWCbulk2SWPmatric()}}
+{\footnotesize\ttfamily double S\+W\+Cbulk2\+S\+W\+Pmatric (\begin{DoxyParamCaption}\item[{double}]{fraction\+Gravel, }\item[{double}]{swc\+Bulk, }\item[{int}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by pot\+\_\+soil\+\_\+evap(), pot\+\_\+soil\+\_\+evap\+\_\+bs(), and transp\+\_\+weighted\+\_\+avg().
+
diff --git a/doc/latex/_s_w___main_8c.tex b/doc/latex/_s_w___main_8c.tex
new file mode 100644
index 000000000..8938d7fff
--- /dev/null
+++ b/doc/latex/_s_w___main_8c.tex
@@ -0,0 +1,120 @@
+\hypertarget{_s_w___main_8c}{}\section{S\+W\+\_\+\+Main.\+c File Reference}
+\label{_s_w___main_8c}\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$unistd.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Control.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___main_8c_a562be42d6e61053fb27a605579e50c22}{init\+\_\+args} (int argc, char $\ast$$\ast$argv)
+\item
+int \hyperlink{_s_w___main_8c_a3c04138a5bfe5d72780bb7e82a18e627}{main} (int argc, char $\ast$$\ast$argv)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+char \hyperlink{_s_w___main_8c_a3db696ae82419b92cd8d064375e3ceaa}{inbuf} \mbox{[}1024\mbox{]}
+\item
+char \hyperlink{_s_w___main_8c_a00d494d2df26cd46f3f793b34d4c1741}{errstr} \mbox{[}\hyperlink{generic_8h_a7c213cc89d01ec9cdbaa3356698a86ce}{M\+A\+X\+\_\+\+E\+R\+R\+OR}\mbox{]}
+\item
+F\+I\+LE $\ast$ \hyperlink{_s_w___main_8c_ac16dab5cefce6fed135c20d1bae372a5}{logfp}
+\item
+int \hyperlink{_s_w___main_8c_ada051a4499e33e1d0fe82eeeee6d1699}{logged}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___main_8c_a89d055087b91bee4772110f089a82eb3}{Quiet\+Mode}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___main_8c_a46e5208554b79bebc83a481785e273c6}{Echo\+Inits}
+\item
+char \hyperlink{_s_w___main_8c_a4c51093e2a76fe0f02e21a6c1e6d9062}{\+\_\+firstfile} \mbox{[}1024\mbox{]}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___main_8c_a562be42d6e61053fb27a605579e50c22}\label{_s_w___main_8c_a562be42d6e61053fb27a605579e50c22}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!init\+\_\+args@{init\+\_\+args}}
+\index{init\+\_\+args@{init\+\_\+args}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{init\+\_\+args()}{init\_args()}}
+{\footnotesize\ttfamily void init\+\_\+args (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___main_8c_a3c04138a5bfe5d72780bb7e82a18e627}\label{_s_w___main_8c_a3c04138a5bfe5d72780bb7e82a18e627}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!main@{main}}
+\index{main@{main}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{main()}{main()}}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___main_8c_a4c51093e2a76fe0f02e21a6c1e6d9062}\label{_s_w___main_8c_a4c51093e2a76fe0f02e21a6c1e6d9062}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!\+\_\+firstfile@{\+\_\+firstfile}}
+\index{\+\_\+firstfile@{\+\_\+firstfile}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{\+\_\+firstfile}{\_firstfile}}
+{\footnotesize\ttfamily char \+\_\+firstfile\mbox{[}1024\mbox{]}}
+
+
+
+Referenced by init\+\_\+args().
+
+\mbox{\Hypertarget{_s_w___main_8c_a46e5208554b79bebc83a481785e273c6}\label{_s_w___main_8c_a46e5208554b79bebc83a481785e273c6}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!Echo\+Inits@{Echo\+Inits}}
+\index{Echo\+Inits@{Echo\+Inits}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{Echo\+Inits}{EchoInits}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Echo\+Inits}
+
+
+
+Referenced by init\+\_\+args().
+
+\mbox{\Hypertarget{_s_w___main_8c_a00d494d2df26cd46f3f793b34d4c1741}\label{_s_w___main_8c_a00d494d2df26cd46f3f793b34d4c1741}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!errstr@{errstr}}
+\index{errstr@{errstr}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{errstr}{errstr}}
+{\footnotesize\ttfamily char errstr\mbox{[}\hyperlink{generic_8h_a7c213cc89d01ec9cdbaa3356698a86ce}{M\+A\+X\+\_\+\+E\+R\+R\+OR}\mbox{]}}
+
+
+
+Referenced by Mk\+Dir().
+
+\mbox{\Hypertarget{_s_w___main_8c_a3db696ae82419b92cd8d064375e3ceaa}\label{_s_w___main_8c_a3db696ae82419b92cd8d064375e3ceaa}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!inbuf@{inbuf}}
+\index{inbuf@{inbuf}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{inbuf}{inbuf}}
+{\footnotesize\ttfamily char inbuf\mbox{[}1024\mbox{]}}
+
+\mbox{\Hypertarget{_s_w___main_8c_ac16dab5cefce6fed135c20d1bae372a5}\label{_s_w___main_8c_ac16dab5cefce6fed135c20d1bae372a5}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!logfp@{logfp}}
+\index{logfp@{logfp}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{logfp}{logfp}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ logfp}
+
+
+
+Referenced by Close\+File(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), and S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{_s_w___main_8c_ada051a4499e33e1d0fe82eeeee6d1699}\label{_s_w___main_8c_ada051a4499e33e1d0fe82eeeee6d1699}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!logged@{logged}}
+\index{logged@{logged}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{logged}{logged}}
+{\footnotesize\ttfamily int logged}
+
+
+
+Referenced by Log\+Error(), and main().
+
+\mbox{\Hypertarget{_s_w___main_8c_a89d055087b91bee4772110f089a82eb3}\label{_s_w___main_8c_a89d055087b91bee4772110f089a82eb3}}
+\index{S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}!Quiet\+Mode@{Quiet\+Mode}}
+\index{Quiet\+Mode@{Quiet\+Mode}!S\+W\+\_\+\+Main.\+c@{S\+W\+\_\+\+Main.\+c}}
+\subsubsection{\texorpdfstring{Quiet\+Mode}{QuietMode}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Quiet\+Mode}
+
+
+
+Referenced by init\+\_\+args().
+
diff --git a/doc/latex/_s_w___main___function_8c.tex b/doc/latex/_s_w___main___function_8c.tex
new file mode 100644
index 000000000..e1f891d3f
--- /dev/null
+++ b/doc/latex/_s_w___main___function_8c.tex
@@ -0,0 +1,2 @@
+\hypertarget{_s_w___main___function_8c}{}\section{S\+W\+\_\+\+Main\+\_\+\+Function.\+c File Reference}
+\label{_s_w___main___function_8c}\index{S\+W\+\_\+\+Main\+\_\+\+Function.\+c@{S\+W\+\_\+\+Main\+\_\+\+Function.\+c}}
diff --git a/doc/latex/_s_w___markov_8c.tex b/doc/latex/_s_w___markov_8c.tex
new file mode 100644
index 000000000..1eba5a074
--- /dev/null
+++ b/doc/latex/_s_w___markov_8c.tex
@@ -0,0 +1,79 @@
+\hypertarget{_s_w___markov_8c}{}\section{S\+W\+\_\+\+Markov.\+c File Reference}
+\label{_s_w___markov_8c}\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}rands.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Markov.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___markov_8c_a113409159a76f013e2a9ffb4ebc4a8c9}{S\+W\+\_\+\+M\+K\+V\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___markov_8c_a90a854462e03f8a79c1c2755f8bcc668}{S\+W\+\_\+\+M\+K\+V\+\_\+today} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$tmax, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$tmin, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$rain)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___markov_8c_afcd7e31841f2690ca09a7b5f6e6abeee}{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob} (void)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___markov_8c_a6153b2f3821b21e1284380b6423d22e6}{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___markov_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV} \hyperlink{_s_w___markov_8c_a29f5ff534069ae52995a51c7c186d1c2}{S\+W\+\_\+\+Markov}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___markov_8c_a113409159a76f013e2a9ffb4ebc4a8c9}\label{_s_w___markov_8c_a113409159a76f013e2a9ffb4ebc4a8c9}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+M\+K\+V\+\_\+construct@{S\+W\+\_\+\+M\+K\+V\+\_\+construct}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+construct@{S\+W\+\_\+\+M\+K\+V\+\_\+construct}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+construct()}{SW\_MKV\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+K\+V\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8c_a6153b2f3821b21e1284380b6423d22e6}\label{_s_w___markov_8c_a6153b2f3821b21e1284380b6423d22e6}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov()}{SW\_MKV\_read\_cov()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8c_afcd7e31841f2690ca09a7b5f6e6abeee}\label{_s_w___markov_8c_afcd7e31841f2690ca09a7b5f6e6abeee}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob()}{SW\_MKV\_read\_prob()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8c_a90a854462e03f8a79c1c2755f8bcc668}\label{_s_w___markov_8c_a90a854462e03f8a79c1c2755f8bcc668}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+M\+K\+V\+\_\+today@{S\+W\+\_\+\+M\+K\+V\+\_\+today}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+today@{S\+W\+\_\+\+M\+K\+V\+\_\+today}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+today()}{SW\_MKV\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+K\+V\+\_\+today (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{tmax, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{tmin, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{rain }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___markov_8c_a29f5ff534069ae52995a51c7c186d1c2}\label{_s_w___markov_8c_a29f5ff534069ae52995a51c7c186d1c2}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+Markov@{S\+W\+\_\+\+Markov}}
+\index{S\+W\+\_\+\+Markov@{S\+W\+\_\+\+Markov}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Markov}{SW\_Markov}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV} S\+W\+\_\+\+Markov}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov(), and S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob().
+
+\mbox{\Hypertarget{_s_w___markov_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___markov_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Markov.\+c@{S\+W\+\_\+\+Markov.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
diff --git a/doc/latex/_s_w___markov_8h.tex b/doc/latex/_s_w___markov_8h.tex
new file mode 100644
index 000000000..e2d0ac2c5
--- /dev/null
+++ b/doc/latex/_s_w___markov_8h.tex
@@ -0,0 +1,45 @@
+\hypertarget{_s_w___markov_8h}{}\section{S\+W\+\_\+\+Markov.\+h File Reference}
+\label{_s_w___markov_8h}\index{S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}}
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___markov_8h_a113409159a76f013e2a9ffb4ebc4a8c9}{S\+W\+\_\+\+M\+K\+V\+\_\+construct} (void)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___markov_8h_afcd7e31841f2690ca09a7b5f6e6abeee}{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob} (void)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___markov_8h_a6153b2f3821b21e1284380b6423d22e6}{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov} (void)
+\item
+void \hyperlink{_s_w___markov_8h_a90a854462e03f8a79c1c2755f8bcc668}{S\+W\+\_\+\+M\+K\+V\+\_\+today} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$tmax, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$tmin, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$rain)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___markov_8h_a113409159a76f013e2a9ffb4ebc4a8c9}\label{_s_w___markov_8h_a113409159a76f013e2a9ffb4ebc4a8c9}}
+\index{S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}!S\+W\+\_\+\+M\+K\+V\+\_\+construct@{S\+W\+\_\+\+M\+K\+V\+\_\+construct}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+construct@{S\+W\+\_\+\+M\+K\+V\+\_\+construct}!S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+construct()}{SW\_MKV\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+K\+V\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8h_a6153b2f3821b21e1284380b6423d22e6}\label{_s_w___markov_8h_a6153b2f3821b21e1284380b6423d22e6}}
+\index{S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}!S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov}!S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov()}{SW\_MKV\_read\_cov()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8h_afcd7e31841f2690ca09a7b5f6e6abeee}\label{_s_w___markov_8h_afcd7e31841f2690ca09a7b5f6e6abeee}}
+\index{S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}!S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob@{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob}!S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob()}{SW\_MKV\_read\_prob()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___markov_8h_a90a854462e03f8a79c1c2755f8bcc668}\label{_s_w___markov_8h_a90a854462e03f8a79c1c2755f8bcc668}}
+\index{S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}!S\+W\+\_\+\+M\+K\+V\+\_\+today@{S\+W\+\_\+\+M\+K\+V\+\_\+today}}
+\index{S\+W\+\_\+\+M\+K\+V\+\_\+today@{S\+W\+\_\+\+M\+K\+V\+\_\+today}!S\+W\+\_\+\+Markov.\+h@{S\+W\+\_\+\+Markov.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+K\+V\+\_\+today()}{SW\_MKV\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+K\+V\+\_\+today (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{tmax, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{tmin, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{rain }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___model_8c.tex b/doc/latex/_s_w___model_8c.tex
new file mode 100644
index 000000000..ea5de7657
--- /dev/null
+++ b/doc/latex/_s_w___model_8c.tex
@@ -0,0 +1,85 @@
+\hypertarget{_s_w___model_8c}{}\section{S\+W\+\_\+\+Model.\+c File Reference}
+\label{_s_w___model_8c}\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$ctype.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}rands.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___model_8c_a8d0cc13f8474418e9534a055b49cbcd9}{S\+W\+\_\+\+M\+D\+L\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___model_8c_aaaa6ecac4aec2768db6ac5c3c22801f3}{S\+W\+\_\+\+M\+D\+L\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___model_8c_ad092917290025f5984d564637dff94a7}{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year} ()
+\item
+void \hyperlink{_s_w___model_8c_a8c832846bf416df3351a02024a99448e}{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___model_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___model_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___model_8c_a8d0cc13f8474418e9534a055b49cbcd9}\label{_s_w___model_8c_a8d0cc13f8474418e9534a055b49cbcd9}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+M\+D\+L\+\_\+construct@{S\+W\+\_\+\+M\+D\+L\+\_\+construct}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+construct@{S\+W\+\_\+\+M\+D\+L\+\_\+construct}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+construct()}{SW\_MDL\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___model_8c_a8c832846bf416df3351a02024a99448e}\label{_s_w___model_8c_a8c832846bf416df3351a02024a99448e}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day()}{SW\_MDL\_new\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___model_8c_ad092917290025f5984d564637dff94a7}\label{_s_w___model_8c_ad092917290025f5984d564637dff94a7}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year()}{SW\_MDL\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___model_8c_aaaa6ecac4aec2768db6ac5c3c22801f3}\label{_s_w___model_8c_aaaa6ecac4aec2768db6ac5c3c22801f3}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+M\+D\+L\+\_\+read@{S\+W\+\_\+\+M\+D\+L\+\_\+read}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+read@{S\+W\+\_\+\+M\+D\+L\+\_\+read}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+read()}{SW\_MDL\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___model_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___model_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct(), S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year(), and S\+W\+\_\+\+M\+D\+L\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___model_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___model_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Model.\+c@{S\+W\+\_\+\+Model.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
diff --git a/doc/latex/_s_w___model_8h.tex b/doc/latex/_s_w___model_8h.tex
new file mode 100644
index 000000000..ea1ef80a8
--- /dev/null
+++ b/doc/latex/_s_w___model_8h.tex
@@ -0,0 +1,50 @@
+\hypertarget{_s_w___model_8h}{}\section{S\+W\+\_\+\+Model.\+h File Reference}
+\label{_s_w___model_8h}\index{S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}}
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___model_8h_aaaa6ecac4aec2768db6ac5c3c22801f3}{S\+W\+\_\+\+M\+D\+L\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___model_8h_a8d0cc13f8474418e9534a055b49cbcd9}{S\+W\+\_\+\+M\+D\+L\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___model_8h_abfc65ff89a725366ac8c2eceb11f031e}{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___model_8h_a8c832846bf416df3351a02024a99448e}{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___model_8h_a8d0cc13f8474418e9534a055b49cbcd9}\label{_s_w___model_8h_a8d0cc13f8474418e9534a055b49cbcd9}}
+\index{S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}!S\+W\+\_\+\+M\+D\+L\+\_\+construct@{S\+W\+\_\+\+M\+D\+L\+\_\+construct}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+construct@{S\+W\+\_\+\+M\+D\+L\+\_\+construct}!S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+construct()}{SW\_MDL\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___model_8h_a8c832846bf416df3351a02024a99448e}\label{_s_w___model_8h_a8c832846bf416df3351a02024a99448e}}
+\index{S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}!S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day}!S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day()}{SW\_MDL\_new\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___model_8h_abfc65ff89a725366ac8c2eceb11f031e}\label{_s_w___model_8h_abfc65ff89a725366ac8c2eceb11f031e}}
+\index{S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}!S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year@{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year}!S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year()}{SW\_MDL\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___model_8h_aaaa6ecac4aec2768db6ac5c3c22801f3}\label{_s_w___model_8h_aaaa6ecac4aec2768db6ac5c3c22801f3}}
+\index{S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}!S\+W\+\_\+\+M\+D\+L\+\_\+read@{S\+W\+\_\+\+M\+D\+L\+\_\+read}}
+\index{S\+W\+\_\+\+M\+D\+L\+\_\+read@{S\+W\+\_\+\+M\+D\+L\+\_\+read}!S\+W\+\_\+\+Model.\+h@{S\+W\+\_\+\+Model.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+D\+L\+\_\+read()}{SW\_MDL\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+M\+D\+L\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___output_8c.tex b/doc/latex/_s_w___output_8c.tex
new file mode 100644
index 000000000..ebfb6a288
--- /dev/null
+++ b/doc/latex/_s_w___output_8c.tex
@@ -0,0 +1,182 @@
+\hypertarget{_s_w___output_8c}{}\section{S\+W\+\_\+\+Output.\+c File Reference}
+\label{_s_w___output_8c}\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$ctype.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Output.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Estab.\+h\char`\"{}}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___output_8c_a3fa5549d021cf21378728eca2ebf91c4}{O\+U\+T\+S\+T\+R\+L\+EN}~3000 /$\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max} output string length\+: in get\+\_\+transp\+: 4$\ast$every soil layer with 14 chars $\ast$/
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___output_8c_ae06df802aa17b479cb10172f7d1903f2}{S\+W\+\_\+\+O\+U\+T\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___output_8c_a288bfdd3a3a04a61564b9cad8ef08a1f}{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___output_8c_a74b456e0f4eb9664213e6f7745c6edde}{S\+W\+\_\+\+O\+U\+T\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___output_8c_a53bb40694dbd09aee64905841fa711d4}{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files} (void)
+\item
+void \hyperlink{_s_w___output_8c_af0d316dbb4870395564ef5530adc3f93}{S\+W\+\_\+\+O\+U\+T\+\_\+flush} (void)
+\item
+void \hyperlink{_s_w___output_8c_a6926e3bfd4bd7577bcedd48b7ed78e03}{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today} (\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type} otyp)
+\item
+void \hyperlink{_s_w___output_8c_a93912f54cea8b60d2fda279448ca8449}{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___output_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} \hyperlink{_s_w___output_8c_afdb8ced0825a798336ba061396f7016c}{S\+W\+\_\+\+Soilwat}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___output_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} \hyperlink{_s_w___output_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}{S\+W\+\_\+\+Weather}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} \hyperlink{_s_w___output_8c_a4b2149c2e1b77da676359b0bc64b1710}{S\+W\+\_\+\+Veg\+Estab}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___output_8c_a46e5208554b79bebc83a481785e273c6}{Echo\+Inits}
+\item
+\hyperlink{struct_s_w___o_u_t_p_u_t}{S\+W\+\_\+\+O\+U\+T\+P\+UT} \hyperlink{_s_w___output_8c_a0403c81a40f6c4b5a34be286fb003019}{S\+W\+\_\+\+Output} \mbox{[}\hyperlink{_s_w___output_8h_a531e27bc55c78f5134678d0623c697b1}{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___output_8c_a758ba563f989ca4584558dfd664c613f}{is\+Partial\+Soilwat\+Output} =\hyperlink{generic_8h_a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a}{F\+A\+L\+SE}
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___output_8c_a3fa5549d021cf21378728eca2ebf91c4}\label{_s_w___output_8c_a3fa5549d021cf21378728eca2ebf91c4}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!O\+U\+T\+S\+T\+R\+L\+EN@{O\+U\+T\+S\+T\+R\+L\+EN}}
+\index{O\+U\+T\+S\+T\+R\+L\+EN@{O\+U\+T\+S\+T\+R\+L\+EN}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{O\+U\+T\+S\+T\+R\+L\+EN}{OUTSTRLEN}}
+{\footnotesize\ttfamily \#define O\+U\+T\+S\+T\+R\+L\+EN~3000 /$\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max} output string length\+: in get\+\_\+transp\+: 4$\ast$every soil layer with 14 chars $\ast$/}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___output_8c_a53bb40694dbd09aee64905841fa711d4}\label{_s_w___output_8c_a53bb40694dbd09aee64905841fa711d4}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files@{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files@{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files()}{SW\_OUT\_close\_files()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main().
+
+\mbox{\Hypertarget{_s_w___output_8c_ae06df802aa17b479cb10172f7d1903f2}\label{_s_w___output_8c_ae06df802aa17b479cb10172f7d1903f2}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+construct@{S\+W\+\_\+\+O\+U\+T\+\_\+construct}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+construct@{S\+W\+\_\+\+O\+U\+T\+\_\+construct}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+construct()}{SW\_OUT\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___output_8c_af0d316dbb4870395564ef5530adc3f93}\label{_s_w___output_8c_af0d316dbb4870395564ef5530adc3f93}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+flush@{S\+W\+\_\+\+O\+U\+T\+\_\+flush}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+flush@{S\+W\+\_\+\+O\+U\+T\+\_\+flush}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+flush()}{SW\_OUT\_flush()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+flush (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8c_a288bfdd3a3a04a61564b9cad8ef08a1f}\label{_s_w___output_8c_a288bfdd3a3a04a61564b9cad8ef08a1f}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year()}{SW\_OUT\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8c_a74b456e0f4eb9664213e6f7745c6edde}\label{_s_w___output_8c_a74b456e0f4eb9664213e6f7745c6edde}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+read@{S\+W\+\_\+\+O\+U\+T\+\_\+read}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+read@{S\+W\+\_\+\+O\+U\+T\+\_\+read}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+read()}{SW\_OUT\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8c_a6926e3bfd4bd7577bcedd48b7ed78e03}\label{_s_w___output_8c_a6926e3bfd4bd7577bcedd48b7ed78e03}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today()}{SW\_OUT\_sum\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today (\begin{DoxyParamCaption}\item[{\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type}}]{otyp }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8c_a93912f54cea8b60d2fda279448ca8449}\label{_s_w___output_8c_a93912f54cea8b60d2fda279448ca8449}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today()}{SW\_OUT\_write\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___output_8c_a46e5208554b79bebc83a481785e273c6}\label{_s_w___output_8c_a46e5208554b79bebc83a481785e273c6}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!Echo\+Inits@{Echo\+Inits}}
+\index{Echo\+Inits@{Echo\+Inits}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{Echo\+Inits}{EchoInits}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Echo\+Inits}
+
+\mbox{\Hypertarget{_s_w___output_8c_a758ba563f989ca4584558dfd664c613f}\label{_s_w___output_8c_a758ba563f989ca4584558dfd664c613f}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!is\+Partial\+Soilwat\+Output@{is\+Partial\+Soilwat\+Output}}
+\index{is\+Partial\+Soilwat\+Output@{is\+Partial\+Soilwat\+Output}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{is\+Partial\+Soilwat\+Output}{isPartialSoilwatOutput}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} is\+Partial\+Soilwat\+Output =\hyperlink{generic_8h_a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a}{F\+A\+L\+SE}}
+
+\mbox{\Hypertarget{_s_w___output_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___output_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+\mbox{\Hypertarget{_s_w___output_8c_a0403c81a40f6c4b5a34be286fb003019}\label{_s_w___output_8c_a0403c81a40f6c4b5a34be286fb003019}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Output@{S\+W\+\_\+\+Output}}
+\index{S\+W\+\_\+\+Output@{S\+W\+\_\+\+Output}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Output}{SW\_Output}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___o_u_t_p_u_t}{S\+W\+\_\+\+O\+U\+T\+P\+UT} S\+W\+\_\+\+Output\mbox{[}\hyperlink{_s_w___output_8h_a531e27bc55c78f5134678d0623c697b1}{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{_s_w___output_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___output_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+\mbox{\Hypertarget{_s_w___output_8c_afdb8ced0825a798336ba061396f7016c}\label{_s_w___output_8c_afdb8ced0825a798336ba061396f7016c}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}}
+\index{S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Soilwat}{SW\_Soilwat}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} S\+W\+\_\+\+Soilwat}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today().
+
+\mbox{\Hypertarget{_s_w___output_8c_a4b2149c2e1b77da676359b0bc64b1710}\label{_s_w___output_8c_a4b2149c2e1b77da676359b0bc64b1710}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}}
+\index{S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Estab}{SW\_VegEstab}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} S\+W\+\_\+\+Veg\+Estab}
+
+\mbox{\Hypertarget{_s_w___output_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}\label{_s_w___output_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}}
+\index{S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}!S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}}
+\index{S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}!S\+W\+\_\+\+Output.\+c@{S\+W\+\_\+\+Output.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather}{SW\_Weather}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} S\+W\+\_\+\+Weather}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today().
+
diff --git a/doc/latex/_s_w___output_8h.tex b/doc/latex/_s_w___output_8h.tex
new file mode 100644
index 000000000..75eb74e76
--- /dev/null
+++ b/doc/latex/_s_w___output_8h.tex
@@ -0,0 +1,681 @@
+\hypertarget{_s_w___output_8h}{}\section{S\+W\+\_\+\+Output.\+h File Reference}
+\label{_s_w___output_8h}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___o_u_t_p_u_t}{S\+W\+\_\+\+O\+U\+T\+P\+UT}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___output_8h_a9567f1221ef0b0a4dcafb787c0d1ac4c}{S\+W\+\_\+\+W\+E\+T\+HR}~\char`\"{}W\+T\+HR\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_ad0dd7a6892d29b47e33e27b4d4dab2f8}{S\+W\+\_\+\+T\+E\+MP}~\char`\"{}T\+E\+MP\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a997e3d0b97d225fcc9549b0f4fe9a18a}{S\+W\+\_\+\+P\+R\+E\+C\+IP}~\char`\"{}P\+R\+E\+C\+IP\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a179065dcb87be59208b8a31bf42d261b}{S\+W\+\_\+\+S\+O\+I\+L\+I\+NF}~\char`\"{}S\+O\+I\+L\+I\+N\+F\+I\+LT\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a213160cd3d072e7079143ee4f4e2ee06}{S\+W\+\_\+\+R\+U\+N\+O\+FF}~\char`\"{}R\+U\+N\+O\+FF\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_ad85a058f65275eee148281c9dbbfab80}{S\+W\+\_\+\+A\+L\+L\+H2O}~\char`\"{}A\+L\+L\+H2O\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a647ccbc9b71652417b3c3f72b146f0bc}{S\+W\+\_\+\+V\+W\+C\+B\+U\+LK}~\char`\"{}V\+W\+C\+B\+U\+LK\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_adf2018f9375c671489b5af769c4016a8}{S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC}~\char`\"{}V\+W\+C\+M\+A\+T\+R\+IC\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a8f91b3cf767f6f8e8f593b447a6cbbc7}{S\+W\+\_\+\+S\+W\+C\+B\+U\+LK}~\char`\"{}S\+W\+C\+B\+U\+LK\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aa7612da2dd2e721ba9f48f23f26cf0bd}{S\+W\+\_\+\+S\+W\+A\+B\+U\+LK}~\char`\"{}S\+W\+A\+B\+U\+LK\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_ab1394321bd8d71aed0690eed159ebdf2}{S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC}~\char`\"{}S\+W\+A\+M\+A\+T\+R\+IC\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a5cdd9c7bda4e1a4510d7cf60b46ac7f7}{S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC}~\char`\"{}S\+W\+P\+M\+A\+T\+R\+IC\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_acf7157dffdc51401199c2cdd656dbaf5}{S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW}~\char`\"{}S\+U\+R\+F\+A\+C\+E\+W\+A\+T\+ER\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aebe460eb3369765c76b645faa163a82e}{S\+W\+\_\+\+T\+R\+A\+N\+SP}~\char`\"{}T\+R\+A\+N\+SP\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a3edbf6d44d22737042ad072ce90e675f}{S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL}~\char`\"{}E\+V\+A\+P\+S\+O\+IL\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a4842f281ded0e865527479d9b1002f34}{S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE}~\char`\"{}E\+V\+A\+P\+S\+U\+R\+F\+A\+CE\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aed70dac899556c1aa15c36e275064384}{S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON}~\char`\"{}I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a6af9f97de70abfc55db9580ba412ca3d}{S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN}~\char`\"{}L\+Y\+R\+D\+R\+A\+IN\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a472963152480bcc0016b4b399d8e460c}{S\+W\+\_\+\+H\+Y\+D\+R\+ED}~\char`\"{}H\+Y\+D\+R\+ED\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_acbcddbc2944a2bb1f964ff534c9b97ba}{S\+W\+\_\+\+ET}~\char`\"{}ET\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aac824d412892327b84b19939751e9bf3}{S\+W\+\_\+\+A\+ET}~\char`\"{}A\+ET\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a201b3943e4dbbd094263a1baf550a09c}{S\+W\+\_\+\+P\+ET}~\char`\"{}P\+ET\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a2b1dd68e49bd264d92c70bb17fc102d2}{S\+W\+\_\+\+W\+E\+T\+D\+AY}~\char`\"{}W\+E\+T\+D\+AY\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a3808e4202866acc696dbe7e0fbb2f2a5}{S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK}~\char`\"{}S\+N\+O\+W\+P\+A\+CK\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_abbd7520834a88ae3bdf12ad4812525b1}{S\+W\+\_\+\+D\+E\+E\+P\+S\+WC}~\char`\"{}D\+E\+E\+P\+S\+WC\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a03ce06a9692d3adc3e48f572f26bbc1a}{S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP}~\char`\"{}S\+O\+I\+L\+T\+E\+MP\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_ac5ac3f49cc9add8082bddf0536f8f238}{S\+W\+\_\+\+A\+L\+L\+V\+EG}~\char`\"{}A\+L\+L\+V\+EG\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a79f8f7f406db4e0d528440c6870081f7}{S\+W\+\_\+\+E\+S\+T\+AB}~\char`\"{}E\+S\+T\+A\+BL\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a531e27bc55c78f5134678d0623c697b1}{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}~28 /$\ast$ must also match number of items in enum (minus \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}{e\+S\+W\+\_\+\+No\+Key} and \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}{e\+S\+W\+\_\+\+Last\+Key}) $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_a8444ee195d17de7e758028d4187d26a5}{S\+W\+\_\+\+D\+AY}~\char`\"{}DY\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_a1bd0f50e2d8aa0b1db1f2750b603fc33}{S\+W\+\_\+\+W\+E\+EK}~\char`\"{}WK\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_af06fb092a18e93aedd71c3db38dc5b8b}{S\+W\+\_\+\+M\+O\+N\+TH}~\char`\"{}MO\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aa672c5cdc6eaaaa0e25856b7c81f4fec}{S\+W\+\_\+\+Y\+E\+AR}~\char`\"{}YR\char`\"{}
+\item
+\#define \hyperlink{_s_w___output_8h_aeab56a7000588af57d1aab705252b21f}{S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS}~4 /$\ast$ must match with enum $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_aa836896b52395cd9870b09631dc1bf8e}{S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF}~\char`\"{}O\+FF\char`\"{} /$\ast$ don\textquotesingle{}t output $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_aa15c450a518e7144ebeb43a510e99576}{S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM}~\char`\"{}S\+UM\char`\"{} /$\ast$ sum for period $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_af2ce7e2d58f57997eec216c8d41d6f0c}{S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG}~\char`\"{}A\+VG\char`\"{} /$\ast$ arith. avg for period $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_a2d344e2c91fa5058f4612182a94c15ab}{S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL}~\char`\"{}F\+IN\char`\"{} /$\ast$ value on last day in period $\ast$/
+\item
+\#define \hyperlink{_s_w___output_8h_a9b4ce71575257d1fb4eab2f372868719}{S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES}~4
+\item
+\#define \hyperlink{_s_w___output_8h_a6347ac4541b0f5c1afa6c71430dc4ce4}{For\+Each\+Out\+Key}(k)~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}{e\+S\+W\+\_\+\+No\+Key}+1; (k)$<$\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}{e\+S\+W\+\_\+\+Last\+Key}; (k)++)
+\item
+\#define \hyperlink{_s_w___output_8h_a890f2f4f43109c5c128cec4be565119e}{For\+Each\+S\+W\+C\+\_\+\+Out\+Key}(k)~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d}{e\+S\+W\+\_\+\+All\+H2O}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50}{e\+S\+W\+\_\+\+Snow\+Pack}; (k)++)
+\item
+\#define \hyperlink{_s_w___output_8h_ac22b26e25ca088560962c1e3b7c938db}{For\+Each\+W\+T\+H\+\_\+\+Out\+Key}(k)~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0}{e\+S\+W\+\_\+\+All\+Wthr}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0}{e\+S\+W\+\_\+\+Precip}; (k)++)
+\item
+\#define \hyperlink{_s_w___output_8h_aa55936417c12da2b8bc90566ae450620}{For\+Each\+V\+E\+S\+\_\+\+Out\+Key}(k)~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5}{e\+S\+W\+\_\+\+All\+Veg}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7}{e\+S\+W\+\_\+\+Estab}; (k)++)
+\item
+\#define \hyperlink{_s_w___output_8h_ad024145315713e83bd6f8363fb0539de}{For\+Each\+Out\+Period}(k)~for((k)=\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626}{e\+S\+W\+\_\+\+Day}; (k)$<$=\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05}{e\+S\+W\+\_\+\+Year}; (k)++)
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}{Out\+Key} \{ \newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}{e\+S\+W\+\_\+\+No\+Key} = -\/1,
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0}{e\+S\+W\+\_\+\+All\+Wthr},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aea4b628e84d77ecd552e9c99048e49a5}{e\+S\+W\+\_\+\+Temp},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0}{e\+S\+W\+\_\+\+Precip},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35a4fee41bcae815ab9c6e0e9989ec72}{e\+S\+W\+\_\+\+Soil\+Inf},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a4d0c50f149d7307334fc75d0ad0245d9}{e\+S\+W\+\_\+\+Runoff},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d}{e\+S\+W\+\_\+\+All\+H2O},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a29604c729c37bb7a751f132b84711238}{e\+S\+W\+\_\+\+V\+W\+C\+Bulk},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad0d81bb9c03bb958e92632d26f694338}{e\+S\+W\+\_\+\+V\+W\+C\+Matric},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae3728dd18715885da407feff390d693e}{e\+S\+W\+\_\+\+S\+W\+C\+Bulk},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad59ad229cfd7a729ded93d16622d2281}{e\+S\+W\+\_\+\+S\+W\+A\+Bulk},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a6a0c8a3ce3aac770db080655a3e7e14c}{e\+S\+W\+\_\+\+S\+W\+A\+Matric},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a432272349ac16eed9e1cc3fa061242af}{e\+S\+W\+\_\+\+S\+W\+P\+Matric},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad6282a57b0244a2c62728855e702bd74}{e\+S\+W\+\_\+\+Surface\+Water},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73afdd833d2248c0b31b962b1abc59e6a4b}{e\+S\+W\+\_\+\+Transp},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae0c7a3e9e72710e884ee19f5618970f4}{e\+S\+W\+\_\+\+Evap\+Soil},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ab77322ec97a2250b742fa5c3df5ad128}{e\+S\+W\+\_\+\+Evap\+Surface},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35be171aa68edd06f8f2390b816fb566}{e\+S\+W\+\_\+\+Interception},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aeccc1ba66b3940055118968505ed9523}{e\+S\+W\+\_\+\+Lyr\+Drain},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0dab75d46291ed3e30f7ba98acbbbfab}{e\+S\+W\+\_\+\+Hyd\+Red},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a2ae19f75d932ae95504eddc4d4d9ac64}{e\+S\+W\+\_\+\+ET},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8f38156f17a4b183f41ebcc30d936cf9}{e\+S\+W\+\_\+\+A\+ET},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0e14e6206dab04fbcd510345b7c9e300}{e\+S\+W\+\_\+\+P\+ET},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a7ddbe08883fb61c09f04d7b894426621}{e\+S\+W\+\_\+\+Wet\+Days},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50}{e\+S\+W\+\_\+\+Snow\+Pack},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a70e5c820bf4f468537eaaafeac5ee426}{e\+S\+W\+\_\+\+Deep\+S\+WC},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a978fe191b559abd08d8a85642d344ae7}{e\+S\+W\+\_\+\+Soil\+Temp},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5}{e\+S\+W\+\_\+\+All\+Veg},
+\newline
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7}{e\+S\+W\+\_\+\+Estab},
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}{e\+S\+W\+\_\+\+Last\+Key}
+ \}
+\item
+enum \hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}{Out\+Period} \{ \hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626}{e\+S\+W\+\_\+\+Day},
+\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1caa8e1488252071239232b78f183c72917}{e\+S\+W\+\_\+\+Week},
+\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca89415921fff384c5416b5156bda31765}{e\+S\+W\+\_\+\+Month},
+\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05}{e\+S\+W\+\_\+\+Year}
+ \}
+\item
+enum \hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}{Out\+Sum} \{ \hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362acc23c6d47c35d8538cb1cec378641247}{e\+S\+W\+\_\+\+Off},
+\hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362af6555b0cd66fac469be5e1f4542c6052}{e\+S\+W\+\_\+\+Sum},
+\hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a63670e8b5d3242da69821492929fa0d6}{e\+S\+W\+\_\+\+Avg},
+\hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a2888085c254d30dac3d53321ddb691af}{e\+S\+W\+\_\+\+Fnl}
+ \}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___output_8h_ae06df802aa17b479cb10172f7d1903f2}{S\+W\+\_\+\+O\+U\+T\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___output_8h_a288bfdd3a3a04a61564b9cad8ef08a1f}{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___output_8h_a74b456e0f4eb9664213e6f7745c6edde}{S\+W\+\_\+\+O\+U\+T\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___output_8h_a6926e3bfd4bd7577bcedd48b7ed78e03}{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today} (\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type} otyp)
+\item
+void \hyperlink{_s_w___output_8h_a93912f54cea8b60d2fda279448ca8449}{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today} (void)
+\item
+void \hyperlink{_s_w___output_8h_aded347ed8aef731d3aab06bf27cc0b36}{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___output_8h_a53bb40694dbd09aee64905841fa711d4}{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files} (void)
+\item
+void \hyperlink{_s_w___output_8h_af0d316dbb4870395564ef5530adc3f93}{S\+W\+\_\+\+O\+U\+T\+\_\+flush} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___output_8h_a6347ac4541b0f5c1afa6c71430dc4ce4}\label{_s_w___output_8h_a6347ac4541b0f5c1afa6c71430dc4ce4}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!For\+Each\+Out\+Key@{For\+Each\+Out\+Key}}
+\index{For\+Each\+Out\+Key@{For\+Each\+Out\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Out\+Key}{ForEachOutKey}}
+{\footnotesize\ttfamily \#define For\+Each\+Out\+Key(\begin{DoxyParamCaption}\item[{}]{k }\end{DoxyParamCaption})~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}{e\+S\+W\+\_\+\+No\+Key}+1; (k)$<$\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}{e\+S\+W\+\_\+\+Last\+Key}; (k)++)}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files(), S\+W\+\_\+\+O\+U\+T\+\_\+construct(), S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year(), and S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today().
+
+\mbox{\Hypertarget{_s_w___output_8h_ad024145315713e83bd6f8363fb0539de}\label{_s_w___output_8h_ad024145315713e83bd6f8363fb0539de}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!For\+Each\+Out\+Period@{For\+Each\+Out\+Period}}
+\index{For\+Each\+Out\+Period@{For\+Each\+Out\+Period}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+Out\+Period}{ForEachOutPeriod}}
+{\footnotesize\ttfamily \#define For\+Each\+Out\+Period(\begin{DoxyParamCaption}\item[{}]{k }\end{DoxyParamCaption})~for((k)=\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626}{e\+S\+W\+\_\+\+Day}; (k)$<$=\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05}{e\+S\+W\+\_\+\+Year}; (k)++)}
+
+\mbox{\Hypertarget{_s_w___output_8h_a890f2f4f43109c5c128cec4be565119e}\label{_s_w___output_8h_a890f2f4f43109c5c128cec4be565119e}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!For\+Each\+S\+W\+C\+\_\+\+Out\+Key@{For\+Each\+S\+W\+C\+\_\+\+Out\+Key}}
+\index{For\+Each\+S\+W\+C\+\_\+\+Out\+Key@{For\+Each\+S\+W\+C\+\_\+\+Out\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+S\+W\+C\+\_\+\+Out\+Key}{ForEachSWC\_OutKey}}
+{\footnotesize\ttfamily \#define For\+Each\+S\+W\+C\+\_\+\+Out\+Key(\begin{DoxyParamCaption}\item[{}]{k }\end{DoxyParamCaption})~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d}{e\+S\+W\+\_\+\+All\+H2O}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50}{e\+S\+W\+\_\+\+Snow\+Pack}; (k)++)}
+
+\mbox{\Hypertarget{_s_w___output_8h_aa55936417c12da2b8bc90566ae450620}\label{_s_w___output_8h_aa55936417c12da2b8bc90566ae450620}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!For\+Each\+V\+E\+S\+\_\+\+Out\+Key@{For\+Each\+V\+E\+S\+\_\+\+Out\+Key}}
+\index{For\+Each\+V\+E\+S\+\_\+\+Out\+Key@{For\+Each\+V\+E\+S\+\_\+\+Out\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+V\+E\+S\+\_\+\+Out\+Key}{ForEachVES\_OutKey}}
+{\footnotesize\ttfamily \#define For\+Each\+V\+E\+S\+\_\+\+Out\+Key(\begin{DoxyParamCaption}\item[{}]{k }\end{DoxyParamCaption})~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5}{e\+S\+W\+\_\+\+All\+Veg}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7}{e\+S\+W\+\_\+\+Estab}; (k)++)}
+
+\mbox{\Hypertarget{_s_w___output_8h_ac22b26e25ca088560962c1e3b7c938db}\label{_s_w___output_8h_ac22b26e25ca088560962c1e3b7c938db}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!For\+Each\+W\+T\+H\+\_\+\+Out\+Key@{For\+Each\+W\+T\+H\+\_\+\+Out\+Key}}
+\index{For\+Each\+W\+T\+H\+\_\+\+Out\+Key@{For\+Each\+W\+T\+H\+\_\+\+Out\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{For\+Each\+W\+T\+H\+\_\+\+Out\+Key}{ForEachWTH\_OutKey}}
+{\footnotesize\ttfamily \#define For\+Each\+W\+T\+H\+\_\+\+Out\+Key(\begin{DoxyParamCaption}\item[{}]{k }\end{DoxyParamCaption})~for((k)=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0}{e\+S\+W\+\_\+\+All\+Wthr}; (k)$<$=\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0}{e\+S\+W\+\_\+\+Precip}; (k)++)}
+
+\mbox{\Hypertarget{_s_w___output_8h_aac824d412892327b84b19939751e9bf3}\label{_s_w___output_8h_aac824d412892327b84b19939751e9bf3}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+A\+ET@{S\+W\+\_\+\+A\+ET}}
+\index{S\+W\+\_\+\+A\+ET@{S\+W\+\_\+\+A\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+A\+ET}{SW\_AET}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+A\+ET~\char`\"{}A\+ET\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_ad85a058f65275eee148281c9dbbfab80}\label{_s_w___output_8h_ad85a058f65275eee148281c9dbbfab80}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+A\+L\+L\+H2O@{S\+W\+\_\+\+A\+L\+L\+H2O}}
+\index{S\+W\+\_\+\+A\+L\+L\+H2O@{S\+W\+\_\+\+A\+L\+L\+H2O}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+A\+L\+L\+H2O}{SW\_ALLH2O}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+A\+L\+L\+H2O~\char`\"{}A\+L\+L\+H2O\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_ac5ac3f49cc9add8082bddf0536f8f238}\label{_s_w___output_8h_ac5ac3f49cc9add8082bddf0536f8f238}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+A\+L\+L\+V\+EG@{S\+W\+\_\+\+A\+L\+L\+V\+EG}}
+\index{S\+W\+\_\+\+A\+L\+L\+V\+EG@{S\+W\+\_\+\+A\+L\+L\+V\+EG}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+A\+L\+L\+V\+EG}{SW\_ALLVEG}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+A\+L\+L\+V\+EG~\char`\"{}A\+L\+L\+V\+EG\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a8444ee195d17de7e758028d4187d26a5}\label{_s_w___output_8h_a8444ee195d17de7e758028d4187d26a5}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+D\+AY@{S\+W\+\_\+\+D\+AY}}
+\index{S\+W\+\_\+\+D\+AY@{S\+W\+\_\+\+D\+AY}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+D\+AY}{SW\_DAY}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+D\+AY~\char`\"{}DY\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_abbd7520834a88ae3bdf12ad4812525b1}\label{_s_w___output_8h_abbd7520834a88ae3bdf12ad4812525b1}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+D\+E\+E\+P\+S\+WC@{S\+W\+\_\+\+D\+E\+E\+P\+S\+WC}}
+\index{S\+W\+\_\+\+D\+E\+E\+P\+S\+WC@{S\+W\+\_\+\+D\+E\+E\+P\+S\+WC}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+D\+E\+E\+P\+S\+WC}{SW\_DEEPSWC}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+D\+E\+E\+P\+S\+WC~\char`\"{}D\+E\+E\+P\+S\+WC\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a79f8f7f406db4e0d528440c6870081f7}\label{_s_w___output_8h_a79f8f7f406db4e0d528440c6870081f7}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+E\+S\+T\+AB@{S\+W\+\_\+\+E\+S\+T\+AB}}
+\index{S\+W\+\_\+\+E\+S\+T\+AB@{S\+W\+\_\+\+E\+S\+T\+AB}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+E\+S\+T\+AB}{SW\_ESTAB}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+E\+S\+T\+AB~\char`\"{}E\+S\+T\+A\+BL\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_acbcddbc2944a2bb1f964ff534c9b97ba}\label{_s_w___output_8h_acbcddbc2944a2bb1f964ff534c9b97ba}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+ET@{S\+W\+\_\+\+ET}}
+\index{S\+W\+\_\+\+ET@{S\+W\+\_\+\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+ET}{SW\_ET}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+ET~\char`\"{}ET\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a3edbf6d44d22737042ad072ce90e675f}\label{_s_w___output_8h_a3edbf6d44d22737042ad072ce90e675f}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL@{S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL}}
+\index{S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL@{S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL}{SW\_EVAPSOIL}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+E\+V\+A\+P\+S\+O\+IL~\char`\"{}E\+V\+A\+P\+S\+O\+IL\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a4842f281ded0e865527479d9b1002f34}\label{_s_w___output_8h_a4842f281ded0e865527479d9b1002f34}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE@{S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE}}
+\index{S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE@{S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE}{SW\_EVAPSURFACE}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+E\+V\+A\+P\+S\+U\+R\+F\+A\+CE~\char`\"{}E\+V\+A\+P\+S\+U\+R\+F\+A\+CE\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a472963152480bcc0016b4b399d8e460c}\label{_s_w___output_8h_a472963152480bcc0016b4b399d8e460c}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+H\+Y\+D\+R\+ED@{S\+W\+\_\+\+H\+Y\+D\+R\+ED}}
+\index{S\+W\+\_\+\+H\+Y\+D\+R\+ED@{S\+W\+\_\+\+H\+Y\+D\+R\+ED}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+H\+Y\+D\+R\+ED}{SW\_HYDRED}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+H\+Y\+D\+R\+ED~\char`\"{}H\+Y\+D\+R\+ED\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_aed70dac899556c1aa15c36e275064384}\label{_s_w___output_8h_aed70dac899556c1aa15c36e275064384}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON@{S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON}}
+\index{S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON@{S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON}{SW\_INTERCEPTION}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON~\char`\"{}I\+N\+T\+E\+R\+C\+E\+P\+T\+I\+ON\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a6af9f97de70abfc55db9580ba412ca3d}\label{_s_w___output_8h_a6af9f97de70abfc55db9580ba412ca3d}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN@{S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN}}
+\index{S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN@{S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN}{SW\_LYRDRAIN}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+L\+Y\+R\+D\+R\+A\+IN~\char`\"{}L\+Y\+R\+D\+R\+A\+IN\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_af06fb092a18e93aedd71c3db38dc5b8b}\label{_s_w___output_8h_af06fb092a18e93aedd71c3db38dc5b8b}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+M\+O\+N\+TH@{S\+W\+\_\+\+M\+O\+N\+TH}}
+\index{S\+W\+\_\+\+M\+O\+N\+TH@{S\+W\+\_\+\+M\+O\+N\+TH}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+M\+O\+N\+TH}{SW\_MONTH}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+M\+O\+N\+TH~\char`\"{}MO\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a9b4ce71575257d1fb4eab2f372868719}\label{_s_w___output_8h_a9b4ce71575257d1fb4eab2f372868719}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES@{S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES}}
+\index{S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES@{S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES}{SW\_NSUMTYPES}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+N\+S\+U\+M\+T\+Y\+P\+ES~4}
+
+\mbox{\Hypertarget{_s_w___output_8h_a531e27bc55c78f5134678d0623c697b1}\label{_s_w___output_8h_a531e27bc55c78f5134678d0623c697b1}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS@{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}}
+\index{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS@{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS}{SW\_OUTNKEYS}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+O\+U\+T\+N\+K\+E\+YS~28 /$\ast$ must also match number of items in enum (minus \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}{e\+S\+W\+\_\+\+No\+Key} and \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}{e\+S\+W\+\_\+\+Last\+Key}) $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_aeab56a7000588af57d1aab705252b21f}\label{_s_w___output_8h_aeab56a7000588af57d1aab705252b21f}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS@{S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS}}
+\index{S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS@{S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS}{SW\_OUTNPERIODS}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+O\+U\+T\+N\+P\+E\+R\+I\+O\+DS~4 /$\ast$ must match with enum $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_a201b3943e4dbbd094263a1baf550a09c}\label{_s_w___output_8h_a201b3943e4dbbd094263a1baf550a09c}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+P\+ET@{S\+W\+\_\+\+P\+ET}}
+\index{S\+W\+\_\+\+P\+ET@{S\+W\+\_\+\+P\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+P\+ET}{SW\_PET}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+ET~\char`\"{}P\+ET\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a997e3d0b97d225fcc9549b0f4fe9a18a}\label{_s_w___output_8h_a997e3d0b97d225fcc9549b0f4fe9a18a}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+P\+R\+E\+C\+IP@{S\+W\+\_\+\+P\+R\+E\+C\+IP}}
+\index{S\+W\+\_\+\+P\+R\+E\+C\+IP@{S\+W\+\_\+\+P\+R\+E\+C\+IP}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+P\+R\+E\+C\+IP}{SW\_PRECIP}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+R\+E\+C\+IP~\char`\"{}P\+R\+E\+C\+IP\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a213160cd3d072e7079143ee4f4e2ee06}\label{_s_w___output_8h_a213160cd3d072e7079143ee4f4e2ee06}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+R\+U\+N\+O\+FF@{S\+W\+\_\+\+R\+U\+N\+O\+FF}}
+\index{S\+W\+\_\+\+R\+U\+N\+O\+FF@{S\+W\+\_\+\+R\+U\+N\+O\+FF}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+R\+U\+N\+O\+FF}{SW\_RUNOFF}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+R\+U\+N\+O\+FF~\char`\"{}R\+U\+N\+O\+FF\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a3808e4202866acc696dbe7e0fbb2f2a5}\label{_s_w___output_8h_a3808e4202866acc696dbe7e0fbb2f2a5}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK@{S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK}}
+\index{S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK@{S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK}{SW\_SNOWPACK}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+N\+O\+W\+P\+A\+CK~\char`\"{}S\+N\+O\+W\+P\+A\+CK\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a179065dcb87be59208b8a31bf42d261b}\label{_s_w___output_8h_a179065dcb87be59208b8a31bf42d261b}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+O\+I\+L\+I\+NF@{S\+W\+\_\+\+S\+O\+I\+L\+I\+NF}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+I\+NF@{S\+W\+\_\+\+S\+O\+I\+L\+I\+NF}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+O\+I\+L\+I\+NF}{SW\_SOILINF}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+O\+I\+L\+I\+NF~\char`\"{}S\+O\+I\+L\+I\+N\+F\+I\+LT\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a03ce06a9692d3adc3e48f572f26bbc1a}\label{_s_w___output_8h_a03ce06a9692d3adc3e48f572f26bbc1a}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP@{S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP@{S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP}{SW\_SOILTEMP}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+O\+I\+L\+T\+E\+MP~\char`\"{}S\+O\+I\+L\+T\+E\+MP\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_af2ce7e2d58f57997eec216c8d41d6f0c}\label{_s_w___output_8h_af2ce7e2d58f57997eec216c8d41d6f0c}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG@{S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG}}
+\index{S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG@{S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG}{SW\_SUM\_AVG}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+U\+M\+\_\+\+A\+VG~\char`\"{}A\+VG\char`\"{} /$\ast$ arith. avg for period $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_a2d344e2c91fa5058f4612182a94c15ab}\label{_s_w___output_8h_a2d344e2c91fa5058f4612182a94c15ab}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL@{S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL}}
+\index{S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL@{S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL}{SW\_SUM\_FNL}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+U\+M\+\_\+\+F\+NL~\char`\"{}F\+IN\char`\"{} /$\ast$ value on last day in period $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_aa836896b52395cd9870b09631dc1bf8e}\label{_s_w___output_8h_aa836896b52395cd9870b09631dc1bf8e}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF@{S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF}}
+\index{S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF@{S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF}{SW\_SUM\_OFF}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+U\+M\+\_\+\+O\+FF~\char`\"{}O\+FF\char`\"{} /$\ast$ don\textquotesingle{}t output $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_aa15c450a518e7144ebeb43a510e99576}\label{_s_w___output_8h_aa15c450a518e7144ebeb43a510e99576}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM@{S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM}}
+\index{S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM@{S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM}{SW\_SUM\_SUM}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+U\+M\+\_\+\+S\+UM~\char`\"{}S\+UM\char`\"{} /$\ast$ sum for period $\ast$/}
+
+\mbox{\Hypertarget{_s_w___output_8h_acf7157dffdc51401199c2cdd656dbaf5}\label{_s_w___output_8h_acf7157dffdc51401199c2cdd656dbaf5}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW@{S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW}}
+\index{S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW@{S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW}{SW\_SURFACEW}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+U\+R\+F\+A\+C\+EW~\char`\"{}S\+U\+R\+F\+A\+C\+E\+W\+A\+T\+ER\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_aa7612da2dd2e721ba9f48f23f26cf0bd}\label{_s_w___output_8h_aa7612da2dd2e721ba9f48f23f26cf0bd}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+W\+A\+B\+U\+LK@{S\+W\+\_\+\+S\+W\+A\+B\+U\+LK}}
+\index{S\+W\+\_\+\+S\+W\+A\+B\+U\+LK@{S\+W\+\_\+\+S\+W\+A\+B\+U\+LK}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+A\+B\+U\+LK}{SW\_SWABULK}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+W\+A\+B\+U\+LK~\char`\"{}S\+W\+A\+B\+U\+LK\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_ab1394321bd8d71aed0690eed159ebdf2}\label{_s_w___output_8h_ab1394321bd8d71aed0690eed159ebdf2}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC}}
+\index{S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC}{SW\_SWAMATRIC}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+W\+A\+M\+A\+T\+R\+IC~\char`\"{}S\+W\+A\+M\+A\+T\+R\+IC\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a8f91b3cf767f6f8e8f593b447a6cbbc7}\label{_s_w___output_8h_a8f91b3cf767f6f8e8f593b447a6cbbc7}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+W\+C\+B\+U\+LK@{S\+W\+\_\+\+S\+W\+C\+B\+U\+LK}}
+\index{S\+W\+\_\+\+S\+W\+C\+B\+U\+LK@{S\+W\+\_\+\+S\+W\+C\+B\+U\+LK}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+B\+U\+LK}{SW\_SWCBULK}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+W\+C\+B\+U\+LK~\char`\"{}S\+W\+C\+B\+U\+LK\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a5cdd9c7bda4e1a4510d7cf60b46ac7f7}\label{_s_w___output_8h_a5cdd9c7bda4e1a4510d7cf60b46ac7f7}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC}}
+\index{S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC}{SW\_SWPMATRIC}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+W\+P\+M\+A\+T\+R\+IC~\char`\"{}S\+W\+P\+M\+A\+T\+R\+IC\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_ad0dd7a6892d29b47e33e27b4d4dab2f8}\label{_s_w___output_8h_ad0dd7a6892d29b47e33e27b4d4dab2f8}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+T\+E\+MP@{S\+W\+\_\+\+T\+E\+MP}}
+\index{S\+W\+\_\+\+T\+E\+MP@{S\+W\+\_\+\+T\+E\+MP}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+T\+E\+MP}{SW\_TEMP}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+T\+E\+MP~\char`\"{}T\+E\+MP\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_aebe460eb3369765c76b645faa163a82e}\label{_s_w___output_8h_aebe460eb3369765c76b645faa163a82e}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+T\+R\+A\+N\+SP@{S\+W\+\_\+\+T\+R\+A\+N\+SP}}
+\index{S\+W\+\_\+\+T\+R\+A\+N\+SP@{S\+W\+\_\+\+T\+R\+A\+N\+SP}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+T\+R\+A\+N\+SP}{SW\_TRANSP}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+T\+R\+A\+N\+SP~\char`\"{}T\+R\+A\+N\+SP\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a647ccbc9b71652417b3c3f72b146f0bc}\label{_s_w___output_8h_a647ccbc9b71652417b3c3f72b146f0bc}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+V\+W\+C\+B\+U\+LK@{S\+W\+\_\+\+V\+W\+C\+B\+U\+LK}}
+\index{S\+W\+\_\+\+V\+W\+C\+B\+U\+LK@{S\+W\+\_\+\+V\+W\+C\+B\+U\+LK}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+W\+C\+B\+U\+LK}{SW\_VWCBULK}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+V\+W\+C\+B\+U\+LK~\char`\"{}V\+W\+C\+B\+U\+LK\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_adf2018f9375c671489b5af769c4016a8}\label{_s_w___output_8h_adf2018f9375c671489b5af769c4016a8}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC}}
+\index{S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC@{S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC}{SW\_VWCMATRIC}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+V\+W\+C\+M\+A\+T\+R\+IC~\char`\"{}V\+W\+C\+M\+A\+T\+R\+IC\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a1bd0f50e2d8aa0b1db1f2750b603fc33}\label{_s_w___output_8h_a1bd0f50e2d8aa0b1db1f2750b603fc33}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+W\+E\+EK@{S\+W\+\_\+\+W\+E\+EK}}
+\index{S\+W\+\_\+\+W\+E\+EK@{S\+W\+\_\+\+W\+E\+EK}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+E\+EK}{SW\_WEEK}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+W\+E\+EK~\char`\"{}WK\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a2b1dd68e49bd264d92c70bb17fc102d2}\label{_s_w___output_8h_a2b1dd68e49bd264d92c70bb17fc102d2}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+W\+E\+T\+D\+AY@{S\+W\+\_\+\+W\+E\+T\+D\+AY}}
+\index{S\+W\+\_\+\+W\+E\+T\+D\+AY@{S\+W\+\_\+\+W\+E\+T\+D\+AY}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+E\+T\+D\+AY}{SW\_WETDAY}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+W\+E\+T\+D\+AY~\char`\"{}W\+E\+T\+D\+AY\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_a9567f1221ef0b0a4dcafb787c0d1ac4c}\label{_s_w___output_8h_a9567f1221ef0b0a4dcafb787c0d1ac4c}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+W\+E\+T\+HR@{S\+W\+\_\+\+W\+E\+T\+HR}}
+\index{S\+W\+\_\+\+W\+E\+T\+HR@{S\+W\+\_\+\+W\+E\+T\+HR}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+E\+T\+HR}{SW\_WETHR}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+W\+E\+T\+HR~\char`\"{}W\+T\+HR\char`\"{}}
+
+\mbox{\Hypertarget{_s_w___output_8h_aa672c5cdc6eaaaa0e25856b7c81f4fec}\label{_s_w___output_8h_aa672c5cdc6eaaaa0e25856b7c81f4fec}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+Y\+E\+AR@{S\+W\+\_\+\+Y\+E\+AR}}
+\index{S\+W\+\_\+\+Y\+E\+AR@{S\+W\+\_\+\+Y\+E\+AR}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Y\+E\+AR}{SW\_YEAR}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+Y\+E\+AR~\char`\"{}YR\char`\"{}}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!Out\+Key@{Out\+Key}}
+\index{Out\+Key@{Out\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{Out\+Key}{OutKey}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}{Out\+Key}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+No\+Key@{e\+S\+W\+\_\+\+No\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+No\+Key@{e\+S\+W\+\_\+\+No\+Key}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73adcf9dfccd28cd69e3f444641e8727c03}}
+e\+S\+W\+\_\+\+No\+Key&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+All\+Wthr@{e\+S\+W\+\_\+\+All\+Wthr}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+All\+Wthr@{e\+S\+W\+\_\+\+All\+Wthr}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8dd381aecf68b220ec1c6043d5ce9ad0}}
+e\+S\+W\+\_\+\+All\+Wthr&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Temp@{e\+S\+W\+\_\+\+Temp}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Temp@{e\+S\+W\+\_\+\+Temp}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aea4b628e84d77ecd552e9c99048e49a5}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aea4b628e84d77ecd552e9c99048e49a5}}
+e\+S\+W\+\_\+\+Temp&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Precip@{e\+S\+W\+\_\+\+Precip}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Precip@{e\+S\+W\+\_\+\+Precip}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a521e540be36d9fceb6f23fb8854420d0}}
+e\+S\+W\+\_\+\+Precip&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Soil\+Inf@{e\+S\+W\+\_\+\+Soil\+Inf}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Soil\+Inf@{e\+S\+W\+\_\+\+Soil\+Inf}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35a4fee41bcae815ab9c6e0e9989ec72}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35a4fee41bcae815ab9c6e0e9989ec72}}
+e\+S\+W\+\_\+\+Soil\+Inf&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Runoff@{e\+S\+W\+\_\+\+Runoff}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Runoff@{e\+S\+W\+\_\+\+Runoff}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a4d0c50f149d7307334fc75d0ad0245d9}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a4d0c50f149d7307334fc75d0ad0245d9}}
+e\+S\+W\+\_\+\+Runoff&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+All\+H2O@{e\+S\+W\+\_\+\+All\+H2O}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+All\+H2O@{e\+S\+W\+\_\+\+All\+H2O}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a44830231cb02f47909c7ea660d4d819d}}
+e\+S\+W\+\_\+\+All\+H2O&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+V\+W\+C\+Bulk@{e\+S\+W\+\_\+\+V\+W\+C\+Bulk}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+V\+W\+C\+Bulk@{e\+S\+W\+\_\+\+V\+W\+C\+Bulk}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a29604c729c37bb7a751f132b84711238}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a29604c729c37bb7a751f132b84711238}}
+e\+S\+W\+\_\+\+V\+W\+C\+Bulk&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+V\+W\+C\+Matric@{e\+S\+W\+\_\+\+V\+W\+C\+Matric}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+V\+W\+C\+Matric@{e\+S\+W\+\_\+\+V\+W\+C\+Matric}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad0d81bb9c03bb958e92632d26f694338}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad0d81bb9c03bb958e92632d26f694338}}
+e\+S\+W\+\_\+\+V\+W\+C\+Matric&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+S\+W\+C\+Bulk@{e\+S\+W\+\_\+\+S\+W\+C\+Bulk}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+S\+W\+C\+Bulk@{e\+S\+W\+\_\+\+S\+W\+C\+Bulk}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae3728dd18715885da407feff390d693e}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae3728dd18715885da407feff390d693e}}
+e\+S\+W\+\_\+\+S\+W\+C\+Bulk&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+S\+W\+A\+Bulk@{e\+S\+W\+\_\+\+S\+W\+A\+Bulk}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+S\+W\+A\+Bulk@{e\+S\+W\+\_\+\+S\+W\+A\+Bulk}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad59ad229cfd7a729ded93d16622d2281}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad59ad229cfd7a729ded93d16622d2281}}
+e\+S\+W\+\_\+\+S\+W\+A\+Bulk&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+S\+W\+A\+Matric@{e\+S\+W\+\_\+\+S\+W\+A\+Matric}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+S\+W\+A\+Matric@{e\+S\+W\+\_\+\+S\+W\+A\+Matric}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a6a0c8a3ce3aac770db080655a3e7e14c}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a6a0c8a3ce3aac770db080655a3e7e14c}}
+e\+S\+W\+\_\+\+S\+W\+A\+Matric&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+S\+W\+P\+Matric@{e\+S\+W\+\_\+\+S\+W\+P\+Matric}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+S\+W\+P\+Matric@{e\+S\+W\+\_\+\+S\+W\+P\+Matric}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a432272349ac16eed9e1cc3fa061242af}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a432272349ac16eed9e1cc3fa061242af}}
+e\+S\+W\+\_\+\+S\+W\+P\+Matric&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Surface\+Water@{e\+S\+W\+\_\+\+Surface\+Water}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Surface\+Water@{e\+S\+W\+\_\+\+Surface\+Water}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad6282a57b0244a2c62728855e702bd74}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ad6282a57b0244a2c62728855e702bd74}}
+e\+S\+W\+\_\+\+Surface\+Water&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Transp@{e\+S\+W\+\_\+\+Transp}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Transp@{e\+S\+W\+\_\+\+Transp}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73afdd833d2248c0b31b962b1abc59e6a4b}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73afdd833d2248c0b31b962b1abc59e6a4b}}
+e\+S\+W\+\_\+\+Transp&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Evap\+Soil@{e\+S\+W\+\_\+\+Evap\+Soil}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Evap\+Soil@{e\+S\+W\+\_\+\+Evap\+Soil}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae0c7a3e9e72710e884ee19f5618970f4}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ae0c7a3e9e72710e884ee19f5618970f4}}
+e\+S\+W\+\_\+\+Evap\+Soil&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Evap\+Surface@{e\+S\+W\+\_\+\+Evap\+Surface}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Evap\+Surface@{e\+S\+W\+\_\+\+Evap\+Surface}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ab77322ec97a2250b742fa5c3df5ad128}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73ab77322ec97a2250b742fa5c3df5ad128}}
+e\+S\+W\+\_\+\+Evap\+Surface&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Interception@{e\+S\+W\+\_\+\+Interception}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Interception@{e\+S\+W\+\_\+\+Interception}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35be171aa68edd06f8f2390b816fb566}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a35be171aa68edd06f8f2390b816fb566}}
+e\+S\+W\+\_\+\+Interception&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Lyr\+Drain@{e\+S\+W\+\_\+\+Lyr\+Drain}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Lyr\+Drain@{e\+S\+W\+\_\+\+Lyr\+Drain}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aeccc1ba66b3940055118968505ed9523}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73aeccc1ba66b3940055118968505ed9523}}
+e\+S\+W\+\_\+\+Lyr\+Drain&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Hyd\+Red@{e\+S\+W\+\_\+\+Hyd\+Red}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Hyd\+Red@{e\+S\+W\+\_\+\+Hyd\+Red}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0dab75d46291ed3e30f7ba98acbbbfab}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0dab75d46291ed3e30f7ba98acbbbfab}}
+e\+S\+W\+\_\+\+Hyd\+Red&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+ET@{e\+S\+W\+\_\+\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+ET@{e\+S\+W\+\_\+\+ET}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a2ae19f75d932ae95504eddc4d4d9ac64}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a2ae19f75d932ae95504eddc4d4d9ac64}}
+e\+S\+W\+\_\+\+ET&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+A\+ET@{e\+S\+W\+\_\+\+A\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+A\+ET@{e\+S\+W\+\_\+\+A\+ET}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8f38156f17a4b183f41ebcc30d936cf9}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a8f38156f17a4b183f41ebcc30d936cf9}}
+e\+S\+W\+\_\+\+A\+ET&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+P\+ET@{e\+S\+W\+\_\+\+P\+ET}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+P\+ET@{e\+S\+W\+\_\+\+P\+ET}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0e14e6206dab04fbcd510345b7c9e300}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a0e14e6206dab04fbcd510345b7c9e300}}
+e\+S\+W\+\_\+\+P\+ET&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Wet\+Days@{e\+S\+W\+\_\+\+Wet\+Days}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Wet\+Days@{e\+S\+W\+\_\+\+Wet\+Days}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a7ddbe08883fb61c09f04d7b894426621}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a7ddbe08883fb61c09f04d7b894426621}}
+e\+S\+W\+\_\+\+Wet\+Days&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Snow\+Pack@{e\+S\+W\+\_\+\+Snow\+Pack}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Snow\+Pack@{e\+S\+W\+\_\+\+Snow\+Pack}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a057c48aded3b1e63589f83c19c955d50}}
+e\+S\+W\+\_\+\+Snow\+Pack&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Deep\+S\+WC@{e\+S\+W\+\_\+\+Deep\+S\+WC}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Deep\+S\+WC@{e\+S\+W\+\_\+\+Deep\+S\+WC}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a70e5c820bf4f468537eaaafeac5ee426}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a70e5c820bf4f468537eaaafeac5ee426}}
+e\+S\+W\+\_\+\+Deep\+S\+WC&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Soil\+Temp@{e\+S\+W\+\_\+\+Soil\+Temp}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Soil\+Temp@{e\+S\+W\+\_\+\+Soil\+Temp}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a978fe191b559abd08d8a85642d344ae7}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a978fe191b559abd08d8a85642d344ae7}}
+e\+S\+W\+\_\+\+Soil\+Temp&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+All\+Veg@{e\+S\+W\+\_\+\+All\+Veg}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+All\+Veg@{e\+S\+W\+\_\+\+All\+Veg}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73af3fda3a057e856b2dd9766ec88676bb5}}
+e\+S\+W\+\_\+\+All\+Veg&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Estab@{e\+S\+W\+\_\+\+Estab}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Estab@{e\+S\+W\+\_\+\+Estab}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a586415b671b52a5f9fb3aa8a9e7192f7}}
+e\+S\+W\+\_\+\+Estab&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Last\+Key@{e\+S\+W\+\_\+\+Last\+Key}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Last\+Key@{e\+S\+W\+\_\+\+Last\+Key}}}\mbox{\Hypertarget{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}\label{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73a95615635e897244d492145c0f6605f45}}
+e\+S\+W\+\_\+\+Last\+Key&\\
+\hline
+
+\end{DoxyEnumFields}
+\mbox{\Hypertarget{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}\label{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!Out\+Period@{Out\+Period}}
+\index{Out\+Period@{Out\+Period}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{Out\+Period}{OutPeriod}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}{Out\+Period}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Day@{e\+S\+W\+\_\+\+Day}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Day@{e\+S\+W\+\_\+\+Day}}}\mbox{\Hypertarget{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626}\label{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca7a9062183005c7f33a7d44f067346626}}
+e\+S\+W\+\_\+\+Day&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Week@{e\+S\+W\+\_\+\+Week}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Week@{e\+S\+W\+\_\+\+Week}}}\mbox{\Hypertarget{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1caa8e1488252071239232b78f183c72917}\label{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1caa8e1488252071239232b78f183c72917}}
+e\+S\+W\+\_\+\+Week&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Month@{e\+S\+W\+\_\+\+Month}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Month@{e\+S\+W\+\_\+\+Month}}}\mbox{\Hypertarget{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca89415921fff384c5416b5156bda31765}\label{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca89415921fff384c5416b5156bda31765}}
+e\+S\+W\+\_\+\+Month&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Year@{e\+S\+W\+\_\+\+Year}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Year@{e\+S\+W\+\_\+\+Year}}}\mbox{\Hypertarget{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05}\label{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1ca5d455a4c448e21fe530200db38fdcd05}}
+e\+S\+W\+\_\+\+Year&\\
+\hline
+
+\end{DoxyEnumFields}
+\mbox{\Hypertarget{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}\label{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!Out\+Sum@{Out\+Sum}}
+\index{Out\+Sum@{Out\+Sum}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{Out\+Sum}{OutSum}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}{Out\+Sum}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Off@{e\+S\+W\+\_\+\+Off}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Off@{e\+S\+W\+\_\+\+Off}}}\mbox{\Hypertarget{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362acc23c6d47c35d8538cb1cec378641247}\label{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362acc23c6d47c35d8538cb1cec378641247}}
+e\+S\+W\+\_\+\+Off&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Sum@{e\+S\+W\+\_\+\+Sum}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Sum@{e\+S\+W\+\_\+\+Sum}}}\mbox{\Hypertarget{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362af6555b0cd66fac469be5e1f4542c6052}\label{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362af6555b0cd66fac469be5e1f4542c6052}}
+e\+S\+W\+\_\+\+Sum&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Avg@{e\+S\+W\+\_\+\+Avg}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Avg@{e\+S\+W\+\_\+\+Avg}}}\mbox{\Hypertarget{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a63670e8b5d3242da69821492929fa0d6}\label{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a63670e8b5d3242da69821492929fa0d6}}
+e\+S\+W\+\_\+\+Avg&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{e\+S\+W\+\_\+\+Fnl@{e\+S\+W\+\_\+\+Fnl}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!e\+S\+W\+\_\+\+Fnl@{e\+S\+W\+\_\+\+Fnl}}}\mbox{\Hypertarget{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a2888085c254d30dac3d53321ddb691af}\label{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362a2888085c254d30dac3d53321ddb691af}}
+e\+S\+W\+\_\+\+Fnl&\\
+\hline
+
+\end{DoxyEnumFields}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___output_8h_a53bb40694dbd09aee64905841fa711d4}\label{_s_w___output_8h_a53bb40694dbd09aee64905841fa711d4}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files@{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files@{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files()}{SW\_OUT\_close\_files()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+close\+\_\+files (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main().
+
+\mbox{\Hypertarget{_s_w___output_8h_ae06df802aa17b479cb10172f7d1903f2}\label{_s_w___output_8h_ae06df802aa17b479cb10172f7d1903f2}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+construct@{S\+W\+\_\+\+O\+U\+T\+\_\+construct}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+construct@{S\+W\+\_\+\+O\+U\+T\+\_\+construct}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+construct()}{SW\_OUT\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___output_8h_af0d316dbb4870395564ef5530adc3f93}\label{_s_w___output_8h_af0d316dbb4870395564ef5530adc3f93}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+flush@{S\+W\+\_\+\+O\+U\+T\+\_\+flush}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+flush@{S\+W\+\_\+\+O\+U\+T\+\_\+flush}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+flush()}{SW\_OUT\_flush()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+flush (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8h_a288bfdd3a3a04a61564b9cad8ef08a1f}\label{_s_w___output_8h_a288bfdd3a3a04a61564b9cad8ef08a1f}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year()}{SW\_OUT\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8h_a74b456e0f4eb9664213e6f7745c6edde}\label{_s_w___output_8h_a74b456e0f4eb9664213e6f7745c6edde}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+read@{S\+W\+\_\+\+O\+U\+T\+\_\+read}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+read@{S\+W\+\_\+\+O\+U\+T\+\_\+read}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+read()}{SW\_OUT\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8h_a6926e3bfd4bd7577bcedd48b7ed78e03}\label{_s_w___output_8h_a6926e3bfd4bd7577bcedd48b7ed78e03}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today()}{SW\_OUT\_sum\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today (\begin{DoxyParamCaption}\item[{\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type}}]{otyp }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8h_a93912f54cea8b60d2fda279448ca8449}\label{_s_w___output_8h_a93912f54cea8b60d2fda279448ca8449}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today()}{SW\_OUT\_write\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+today (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___output_8h_aded347ed8aef731d3aab06bf27cc0b36}\label{_s_w___output_8h_aded347ed8aef731d3aab06bf27cc0b36}}
+\index{S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}!S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year}}
+\index{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year@{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year}!S\+W\+\_\+\+Output.\+h@{S\+W\+\_\+\+Output.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year()}{SW\_OUT\_write\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+O\+U\+T\+\_\+write\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___r__init_8c.tex b/doc/latex/_s_w___r__init_8c.tex
new file mode 100644
index 000000000..af72c1244
--- /dev/null
+++ b/doc/latex/_s_w___r__init_8c.tex
@@ -0,0 +1,52 @@
+\hypertarget{_s_w___r__init_8c}{}\section{S\+W\+\_\+\+R\+\_\+init.\+c File Reference}
+\label{_s_w___r__init_8c}\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+{\ttfamily \#include $<$R.\+h$>$}\newline
+{\ttfamily \#include $<$Rinternals.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$R\+\_\+ext/\+Rdynload.\+h$>$}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+S\+E\+XP \hyperlink{_s_w___r__init_8c_a25be7be717dbb98733617edc1f2e0f02}{start} (S\+E\+XP, S\+E\+XP, S\+E\+XP)
+\item
+S\+E\+XP \hyperlink{_s_w___r__init_8c_a9b86e018088875b36aba2761f4a2807e}{temp\+Error} ()
+\item
+S\+E\+XP \hyperlink{_s_w___r__init_8c_abb8983e166f2f4b4b6e1a8313e567cda}{on\+Get\+Input\+Data\+From\+Files} (S\+E\+XP)
+\item
+S\+E\+XP \hyperlink{_s_w___r__init_8c_a12c5324cc2d9de1a3993dbd113de2fd9}{on\+Get\+Output} (S\+E\+XP)
+\item
+void \hyperlink{_s_w___r__init_8c_a48cfcac76cca8ad995276bac0f160cbc}{R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2} (Dll\+Info $\ast$dll)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___r__init_8c_abb8983e166f2f4b4b6e1a8313e567cda}\label{_s_w___r__init_8c_abb8983e166f2f4b4b6e1a8313e567cda}}
+\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}!on\+Get\+Input\+Data\+From\+Files@{on\+Get\+Input\+Data\+From\+Files}}
+\index{on\+Get\+Input\+Data\+From\+Files@{on\+Get\+Input\+Data\+From\+Files}!S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+\subsubsection{\texorpdfstring{on\+Get\+Input\+Data\+From\+Files()}{onGetInputDataFromFiles()}}
+{\footnotesize\ttfamily S\+E\+XP on\+Get\+Input\+Data\+From\+Files (\begin{DoxyParamCaption}\item[{S\+E\+XP}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___r__init_8c_a12c5324cc2d9de1a3993dbd113de2fd9}\label{_s_w___r__init_8c_a12c5324cc2d9de1a3993dbd113de2fd9}}
+\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}!on\+Get\+Output@{on\+Get\+Output}}
+\index{on\+Get\+Output@{on\+Get\+Output}!S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+\subsubsection{\texorpdfstring{on\+Get\+Output()}{onGetOutput()}}
+{\footnotesize\ttfamily S\+E\+XP on\+Get\+Output (\begin{DoxyParamCaption}\item[{S\+E\+XP}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___r__init_8c_a48cfcac76cca8ad995276bac0f160cbc}\label{_s_w___r__init_8c_a48cfcac76cca8ad995276bac0f160cbc}}
+\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}!R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2@{R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2}}
+\index{R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2@{R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2}!S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+\subsubsection{\texorpdfstring{R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2()}{R\_init\_rSOILWAT2()}}
+{\footnotesize\ttfamily void R\+\_\+init\+\_\+r\+S\+O\+I\+L\+W\+A\+T2 (\begin{DoxyParamCaption}\item[{Dll\+Info $\ast$}]{dll }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___r__init_8c_a25be7be717dbb98733617edc1f2e0f02}\label{_s_w___r__init_8c_a25be7be717dbb98733617edc1f2e0f02}}
+\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}!start@{start}}
+\index{start@{start}!S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+\subsubsection{\texorpdfstring{start()}{start()}}
+{\footnotesize\ttfamily S\+E\+XP start (\begin{DoxyParamCaption}\item[{S\+E\+XP}]{, }\item[{S\+E\+XP}]{, }\item[{S\+E\+XP}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___r__init_8c_a9b86e018088875b36aba2761f4a2807e}\label{_s_w___r__init_8c_a9b86e018088875b36aba2761f4a2807e}}
+\index{S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}!temp\+Error@{temp\+Error}}
+\index{temp\+Error@{temp\+Error}!S\+W\+\_\+\+R\+\_\+init.\+c@{S\+W\+\_\+\+R\+\_\+init.\+c}}
+\subsubsection{\texorpdfstring{temp\+Error()}{tempError()}}
+{\footnotesize\ttfamily S\+E\+XP temp\+Error (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___r__lib_8c.tex b/doc/latex/_s_w___r__lib_8c.tex
new file mode 100644
index 000000000..e5bdac53b
--- /dev/null
+++ b/doc/latex/_s_w___r__lib_8c.tex
@@ -0,0 +1,2 @@
+\hypertarget{_s_w___r__lib_8c}{}\section{S\+W\+\_\+\+R\+\_\+lib.\+c File Reference}
+\label{_s_w___r__lib_8c}\index{S\+W\+\_\+\+R\+\_\+lib.\+c@{S\+W\+\_\+\+R\+\_\+lib.\+c}}
diff --git a/doc/latex/_s_w___r__lib_8h.tex b/doc/latex/_s_w___r__lib_8h.tex
new file mode 100644
index 000000000..7d541be4d
--- /dev/null
+++ b/doc/latex/_s_w___r__lib_8h.tex
@@ -0,0 +1,2 @@
+\hypertarget{_s_w___r__lib_8h}{}\section{S\+W\+\_\+\+R\+\_\+lib.\+h File Reference}
+\label{_s_w___r__lib_8h}\index{S\+W\+\_\+\+R\+\_\+lib.\+h@{S\+W\+\_\+\+R\+\_\+lib.\+h}}
diff --git a/doc/latex/_s_w___site_8c.tex b/doc/latex/_s_w___site_8c.tex
new file mode 100644
index 000000000..91d65be9e
--- /dev/null
+++ b/doc/latex/_s_w___site_8c.tex
@@ -0,0 +1,102 @@
+\hypertarget{_s_w___site_8c}{}\section{S\+W\+\_\+\+Site.\+c File Reference}
+\label{_s_w___site_8c}\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Prod.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___site_8c_af43568af2e8878619d5210ce73c0533a}{init\+\_\+site\+\_\+info} (void)
+\item
+void \hyperlink{_s_w___site_8c_abcdd55367ea6d330401f0cf306fd8578}{water\+\_\+eqn} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} sand, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} clay, \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} n)
+\item
+void \hyperlink{_s_w___site_8c_ae00ab6c54fd889df06e0ed8eb72c01af}{S\+W\+\_\+\+S\+I\+T\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___site_8c_ac9740b7b813c160d7172364950a115bc}{S\+W\+\_\+\+S\+I\+T\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___site_8c_af1d0a7df54820984363078c181b23b7d}{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} \hyperlink{_s_w___site_8c_a8f9709f4f153a6d19d922c1896a1e2a3}{S\+W\+\_\+\+Veg\+Prod}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___site_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___site_8c_a46e5208554b79bebc83a481785e273c6}{Echo\+Inits}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___site_8c_af43568af2e8878619d5210ce73c0533a}\label{_s_w___site_8c_af43568af2e8878619d5210ce73c0533a}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!init\+\_\+site\+\_\+info@{init\+\_\+site\+\_\+info}}
+\index{init\+\_\+site\+\_\+info@{init\+\_\+site\+\_\+info}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{init\+\_\+site\+\_\+info()}{init\_site\_info()}}
+{\footnotesize\ttfamily void init\+\_\+site\+\_\+info (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___site_8c_af1d0a7df54820984363078c181b23b7d}\label{_s_w___site_8c_af1d0a7df54820984363078c181b23b7d}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers@{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers@{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers()}{SW\_SIT\_clear\_layers()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___site_8c_ae00ab6c54fd889df06e0ed8eb72c01af}\label{_s_w___site_8c_ae00ab6c54fd889df06e0ed8eb72c01af}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!S\+W\+\_\+\+S\+I\+T\+\_\+construct@{S\+W\+\_\+\+S\+I\+T\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+construct@{S\+W\+\_\+\+S\+I\+T\+\_\+construct}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+construct()}{SW\_SIT\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___site_8c_ac9740b7b813c160d7172364950a115bc}\label{_s_w___site_8c_ac9740b7b813c160d7172364950a115bc}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!S\+W\+\_\+\+S\+I\+T\+\_\+read@{S\+W\+\_\+\+S\+I\+T\+\_\+read}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+read@{S\+W\+\_\+\+S\+I\+T\+\_\+read}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+read()}{SW\_SIT\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___site_8c_abcdd55367ea6d330401f0cf306fd8578}\label{_s_w___site_8c_abcdd55367ea6d330401f0cf306fd8578}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!water\+\_\+eqn@{water\+\_\+eqn}}
+\index{water\+\_\+eqn@{water\+\_\+eqn}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{water\+\_\+eqn()}{water\_eqn()}}
+{\footnotesize\ttfamily void water\+\_\+eqn (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{sand, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{clay, }\item[{\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}]{n }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___site_8c_a46e5208554b79bebc83a481785e273c6}\label{_s_w___site_8c_a46e5208554b79bebc83a481785e273c6}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!Echo\+Inits@{Echo\+Inits}}
+\index{Echo\+Inits@{Echo\+Inits}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{Echo\+Inits}{EchoInits}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Echo\+Inits}
+
+\mbox{\Hypertarget{_s_w___site_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___site_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers(), and S\+W\+\_\+\+S\+I\+T\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___site_8c_a8f9709f4f153a6d19d922c1896a1e2a3}\label{_s_w___site_8c_a8f9709f4f153a6d19d922c1896a1e2a3}}
+\index{S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}!S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}}
+\index{S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}!S\+W\+\_\+\+Site.\+c@{S\+W\+\_\+\+Site.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Prod}{SW\_VegProd}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} S\+W\+\_\+\+Veg\+Prod}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init(), and S\+W\+\_\+\+V\+P\+D\+\_\+read().
+
diff --git a/doc/latex/_s_w___site_8h.tex b/doc/latex/_s_w___site_8h.tex
new file mode 100644
index 000000000..8795fc46f
--- /dev/null
+++ b/doc/latex/_s_w___site_8h.tex
@@ -0,0 +1,58 @@
+\hypertarget{_s_w___site_8h}{}\section{S\+W\+\_\+\+Site.\+h File Reference}
+\label{_s_w___site_8h}\index{S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o}{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}
+\item
+struct \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE}
+\end{DoxyCompactItemize}
+\subsection*{Typedefs}
+\begin{DoxyCompactItemize}
+\item
+typedef unsigned int \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___site_8h_ac9740b7b813c160d7172364950a115bc}{S\+W\+\_\+\+S\+I\+T\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___site_8h_ae00ab6c54fd889df06e0ed8eb72c01af}{S\+W\+\_\+\+S\+I\+T\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___site_8h_af1d0a7df54820984363078c181b23b7d}{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Typedef Documentation}
+\mbox{\Hypertarget{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}\label{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}}
+\index{S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}!Lyr\+Index@{Lyr\+Index}}
+\index{Lyr\+Index@{Lyr\+Index}!S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}}
+\subsubsection{\texorpdfstring{Lyr\+Index}{LyrIndex}}
+{\footnotesize\ttfamily typedef unsigned int \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___site_8h_af1d0a7df54820984363078c181b23b7d}\label{_s_w___site_8h_af1d0a7df54820984363078c181b23b7d}}
+\index{S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}!S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers@{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers@{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers}!S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers()}{SW\_SIT\_clear\_layers()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___site_8h_ae00ab6c54fd889df06e0ed8eb72c01af}\label{_s_w___site_8h_ae00ab6c54fd889df06e0ed8eb72c01af}}
+\index{S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}!S\+W\+\_\+\+S\+I\+T\+\_\+construct@{S\+W\+\_\+\+S\+I\+T\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+construct@{S\+W\+\_\+\+S\+I\+T\+\_\+construct}!S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+construct()}{SW\_SIT\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___site_8h_ac9740b7b813c160d7172364950a115bc}\label{_s_w___site_8h_ac9740b7b813c160d7172364950a115bc}}
+\index{S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}!S\+W\+\_\+\+S\+I\+T\+\_\+read@{S\+W\+\_\+\+S\+I\+T\+\_\+read}}
+\index{S\+W\+\_\+\+S\+I\+T\+\_\+read@{S\+W\+\_\+\+S\+I\+T\+\_\+read}!S\+W\+\_\+\+Site.\+h@{S\+W\+\_\+\+Site.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+I\+T\+\_\+read()}{SW\_SIT\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+I\+T\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___sky_8c.tex b/doc/latex/_s_w___sky_8c.tex
new file mode 100644
index 000000000..6555044fa
--- /dev/null
+++ b/doc/latex/_s_w___sky_8c.tex
@@ -0,0 +1,57 @@
+\hypertarget{_s_w___sky_8c}{}\section{S\+W\+\_\+\+Sky.\+c File Reference}
+\label{_s_w___sky_8c}\index{S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Sky.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___sky_8c_a20224192c9ba86e3889fd3b1730295ea}{S\+W\+\_\+\+S\+K\+Y\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___sky_8c_af926d383d17bda1b210d39b2320b2008}{S\+W\+\_\+\+S\+K\+Y\+\_\+init} (double scale\+\_\+sky\mbox{[}$\,$\mbox{]}, double scale\+\_\+wind\mbox{[}$\,$\mbox{]}, double scale\+\_\+rH\mbox{[}$\,$\mbox{]}, double scale\+\_\+transmissivity\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___sky_8c_a09861339072e89448ab98d436a898636}{S\+W\+\_\+\+S\+K\+Y\+\_\+construct} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY} \hyperlink{_s_w___sky_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}{S\+W\+\_\+\+Sky}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___sky_8c_a09861339072e89448ab98d436a898636}\label{_s_w___sky_8c_a09861339072e89448ab98d436a898636}}
+\index{S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}!S\+W\+\_\+\+S\+K\+Y\+\_\+construct@{S\+W\+\_\+\+S\+K\+Y\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+construct@{S\+W\+\_\+\+S\+K\+Y\+\_\+construct}!S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+construct()}{SW\_SKY\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___sky_8c_af926d383d17bda1b210d39b2320b2008}\label{_s_w___sky_8c_af926d383d17bda1b210d39b2320b2008}}
+\index{S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}!S\+W\+\_\+\+S\+K\+Y\+\_\+init@{S\+W\+\_\+\+S\+K\+Y\+\_\+init}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+init@{S\+W\+\_\+\+S\+K\+Y\+\_\+init}!S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+init()}{SW\_SKY\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+init (\begin{DoxyParamCaption}\item[{double}]{scale\+\_\+sky\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+wind\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+rH\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+transmissivity\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___sky_8c_a20224192c9ba86e3889fd3b1730295ea}\label{_s_w___sky_8c_a20224192c9ba86e3889fd3b1730295ea}}
+\index{S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}!S\+W\+\_\+\+S\+K\+Y\+\_\+read@{S\+W\+\_\+\+S\+K\+Y\+\_\+read}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+read@{S\+W\+\_\+\+S\+K\+Y\+\_\+read}!S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+read()}{SW\_SKY\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___sky_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}\label{_s_w___sky_8c_a4ae75944adbc3d91fdf8ee7c9acdd875}}
+\index{S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}!S\+W\+\_\+\+Sky@{S\+W\+\_\+\+Sky}}
+\index{S\+W\+\_\+\+Sky@{S\+W\+\_\+\+Sky}!S\+W\+\_\+\+Sky.\+c@{S\+W\+\_\+\+Sky.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Sky}{SW\_Sky}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY} S\+W\+\_\+\+Sky}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init(), and S\+W\+\_\+\+S\+K\+Y\+\_\+read().
+
diff --git a/doc/latex/_s_w___sky_8h.tex b/doc/latex/_s_w___sky_8h.tex
new file mode 100644
index 000000000..71b6b8906
--- /dev/null
+++ b/doc/latex/_s_w___sky_8h.tex
@@ -0,0 +1,38 @@
+\hypertarget{_s_w___sky_8h}{}\section{S\+W\+\_\+\+Sky.\+h File Reference}
+\label{_s_w___sky_8h}\index{S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___sky_8h_a20224192c9ba86e3889fd3b1730295ea}{S\+W\+\_\+\+S\+K\+Y\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___sky_8h_af926d383d17bda1b210d39b2320b2008}{S\+W\+\_\+\+S\+K\+Y\+\_\+init} (double scale\+\_\+sky\mbox{[}$\,$\mbox{]}, double scale\+\_\+wind\mbox{[}$\,$\mbox{]}, double scale\+\_\+rH\mbox{[}$\,$\mbox{]}, double scale\+\_\+transmissivity\mbox{[}$\,$\mbox{]})
+\item
+void \hyperlink{_s_w___sky_8h_a09861339072e89448ab98d436a898636}{S\+W\+\_\+\+S\+K\+Y\+\_\+construct} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___sky_8h_a09861339072e89448ab98d436a898636}\label{_s_w___sky_8h_a09861339072e89448ab98d436a898636}}
+\index{S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}!S\+W\+\_\+\+S\+K\+Y\+\_\+construct@{S\+W\+\_\+\+S\+K\+Y\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+construct@{S\+W\+\_\+\+S\+K\+Y\+\_\+construct}!S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+construct()}{SW\_SKY\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___sky_8h_af926d383d17bda1b210d39b2320b2008}\label{_s_w___sky_8h_af926d383d17bda1b210d39b2320b2008}}
+\index{S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}!S\+W\+\_\+\+S\+K\+Y\+\_\+init@{S\+W\+\_\+\+S\+K\+Y\+\_\+init}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+init@{S\+W\+\_\+\+S\+K\+Y\+\_\+init}!S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+init()}{SW\_SKY\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+init (\begin{DoxyParamCaption}\item[{double}]{scale\+\_\+sky\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+wind\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+rH\mbox{[}$\,$\mbox{]}, }\item[{double}]{scale\+\_\+transmissivity\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___sky_8h_a20224192c9ba86e3889fd3b1730295ea}\label{_s_w___sky_8h_a20224192c9ba86e3889fd3b1730295ea}}
+\index{S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}!S\+W\+\_\+\+S\+K\+Y\+\_\+read@{S\+W\+\_\+\+S\+K\+Y\+\_\+read}}
+\index{S\+W\+\_\+\+S\+K\+Y\+\_\+read@{S\+W\+\_\+\+S\+K\+Y\+\_\+read}!S\+W\+\_\+\+Sky.\+h@{S\+W\+\_\+\+Sky.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+K\+Y\+\_\+read()}{SW\_SKY\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+K\+Y\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___soil_water_8c.tex b/doc/latex/_s_w___soil_water_8c.tex
new file mode 100644
index 000000000..86e2e175f
--- /dev/null
+++ b/doc/latex/_s_w___soil_water_8c.tex
@@ -0,0 +1,171 @@
+\hypertarget{_s_w___soil_water_8c}{}\section{S\+W\+\_\+\+Soil\+Water.\+c File Reference}
+\label{_s_w___soil_water_8c}\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Output.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___soil_water_8c_a6a9d5dbcefaf72eece66ed219bcd749f}{S\+W\+\_\+\+Water\+\_\+\+Flow} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_ad62fe931e2c8b2075d1d5a4df4b87151}{S\+W\+\_\+\+S\+W\+C\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_a15e0502fb9c5356bc78240f3240c42aa}{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_ac5e856e2b9ce7f50bf80a4b68990cdc3}{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_a27c49934c33e702aa2d942d7eed1b841}{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_ac0531314f7790b2c914bbe38cf51f04c}{S\+W\+\_\+\+S\+W\+C\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___soil_water_8c_aad28c324317c639162dc02a9ca41b050}{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+void \hyperlink{_s_w___soil_water_8c_ad186322d66e90e3b398c571d5f51b306}{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} temp\+\_\+min, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} temp\+\_\+max, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} ppt, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$rain, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snow, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snowmelt, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snowloss)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8c_aa6a58fb26f7ae185badd11539fc175d7}{S\+W\+\_\+\+Snow\+Depth} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+WE, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} snowdensity)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8c_a67d7bd8d16c69d650ade7002b6d07750}{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} swc\+Bulk, \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} n)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8c_a105a153ddf27179bbccb86c288926d4e}{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} swp\+Matric, \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} n)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8c_a98f205f5217dcb6a4ad1535ac3ebc79e}{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} sand, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} clay, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} porosity)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___soil_water_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___soil_water_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} \hyperlink{_s_w___soil_water_8c_afdb8ced0825a798336ba061396f7016c}{S\+W\+\_\+\+Soilwat}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___soil_water_8c_aa6a58fb26f7ae185badd11539fc175d7}\label{_s_w___soil_water_8c_aa6a58fb26f7ae185badd11539fc175d7}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+Snow\+Depth@{S\+W\+\_\+\+Snow\+Depth}}
+\index{S\+W\+\_\+\+Snow\+Depth@{S\+W\+\_\+\+Snow\+Depth}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Snow\+Depth()}{SW\_SnowDepth()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+Snow\+Depth (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{S\+WE, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{snowdensity }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_ad186322d66e90e3b398c571d5f51b306}\label{_s_w___soil_water_8c_ad186322d66e90e3b398c571d5f51b306}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow()}{SW\_SWC\_adjust\_snow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{temp\+\_\+min, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{temp\+\_\+max, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{ppt, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{rain, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snow, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snowmelt, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snowloss }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_aad28c324317c639162dc02a9ca41b050}\label{_s_w___soil_water_8c_aad28c324317c639162dc02a9ca41b050}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc()}{SW\_SWC\_adjust\_swc()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_ad62fe931e2c8b2075d1d5a4df4b87151}\label{_s_w___soil_water_8c_ad62fe931e2c8b2075d1d5a4df4b87151}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+construct@{S\+W\+\_\+\+S\+W\+C\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+construct@{S\+W\+\_\+\+S\+W\+C\+\_\+construct}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+construct()}{SW\_SWC\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_ac5e856e2b9ce7f50bf80a4b68990cdc3}\label{_s_w___soil_water_8c_ac5e856e2b9ce7f50bf80a4b68990cdc3}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day@{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day@{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day()}{SW\_SWC\_end\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a27c49934c33e702aa2d942d7eed1b841}\label{_s_w___soil_water_8c_a27c49934c33e702aa2d942d7eed1b841}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year@{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year@{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year()}{SW\_SWC\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_ac0531314f7790b2c914bbe38cf51f04c}\label{_s_w___soil_water_8c_ac0531314f7790b2c914bbe38cf51f04c}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+read@{S\+W\+\_\+\+S\+W\+C\+\_\+read}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+read@{S\+W\+\_\+\+S\+W\+C\+\_\+read}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+read()}{SW\_SWC\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a15e0502fb9c5356bc78240f3240c42aa}\label{_s_w___soil_water_8c_a15e0502fb9c5356bc78240f3240c42aa}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow@{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow@{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow()}{SW\_SWC\_water\_flow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a67d7bd8d16c69d650ade7002b6d07750}\label{_s_w___soil_water_8c_a67d7bd8d16c69d650ade7002b6d07750}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric}}
+\index{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric()}{SW\_SWCbulk2SWPmatric()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{swc\+Bulk, }\item[{\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a105a153ddf27179bbccb86c288926d4e}\label{_s_w___soil_water_8c_a105a153ddf27179bbccb86c288926d4e}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk@{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk}}
+\index{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk@{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk()}{SW\_SWPmatric2VWCBulk()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{swp\+Matric, }\item[{\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a98f205f5217dcb6a4ad1535ac3ebc79e}\label{_s_w___soil_water_8c_a98f205f5217dcb6a4ad1535ac3ebc79e}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+V\+W\+C\+Bulk\+Res@{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res}}
+\index{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res@{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res()}{SW\_VWCBulkRes()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+W\+C\+Bulk\+Res (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{sand, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{clay, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{porosity }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a6a9d5dbcefaf72eece66ed219bcd749f}\label{_s_w___soil_water_8c_a6a9d5dbcefaf72eece66ed219bcd749f}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+Water\+\_\+\+Flow@{S\+W\+\_\+\+Water\+\_\+\+Flow}}
+\index{S\+W\+\_\+\+Water\+\_\+\+Flow@{S\+W\+\_\+\+Water\+\_\+\+Flow}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Water\+\_\+\+Flow()}{SW\_Water\_Flow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+Water\+\_\+\+Flow (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___soil_water_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___soil_water_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___soil_water_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+\mbox{\Hypertarget{_s_w___soil_water_8c_afdb8ced0825a798336ba061396f7016c}\label{_s_w___soil_water_8c_afdb8ced0825a798336ba061396f7016c}}
+\index{S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}!S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}}
+\index{S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}!S\+W\+\_\+\+Soil\+Water.\+c@{S\+W\+\_\+\+Soil\+Water.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Soilwat}{SW\_Soilwat}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} S\+W\+\_\+\+Soilwat}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day(), and S\+W\+\_\+\+S\+W\+C\+\_\+read().
+
diff --git a/doc/latex/_s_w___soil_water_8h.tex b/doc/latex/_s_w___soil_water_8h.tex
new file mode 100644
index 000000000..034327e73
--- /dev/null
+++ b/doc/latex/_s_w___soil_water_8h.tex
@@ -0,0 +1,151 @@
+\hypertarget{_s_w___soil_water_8h}{}\section{S\+W\+\_\+\+Soil\+Water.\+h File Reference}
+\label{_s_w___soil_water_8h}\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}
+\item
+struct \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}
+\item
+struct \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2}{S\+W\+\_\+\+Adjust\+Methods} \{ \hyperlink{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a0804d509577b39ef0d76009ec07e8729}{S\+W\+\_\+\+Adjust\+\_\+\+Avg} = 1,
+\hyperlink{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a17e6f463e6708a7e18ca84739312ad88}{S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err}
+ \}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___soil_water_8h_ad62fe931e2c8b2075d1d5a4df4b87151}{S\+W\+\_\+\+S\+W\+C\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___soil_water_8h_a27c49934c33e702aa2d942d7eed1b841}{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___soil_water_8h_ac0531314f7790b2c914bbe38cf51f04c}{S\+W\+\_\+\+S\+W\+C\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___soil_water_8h_a15e0502fb9c5356bc78240f3240c42aa}{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow} (void)
+\item
+void \hyperlink{_s_w___soil_water_8h_aad28c324317c639162dc02a9ca41b050}{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+void \hyperlink{_s_w___soil_water_8h_ad186322d66e90e3b398c571d5f51b306}{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} temp\+\_\+min, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} temp\+\_\+max, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} ppt, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$rain, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snow, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snowmelt, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$snowloss)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8h_aa6a58fb26f7ae185badd11539fc175d7}{S\+W\+\_\+\+Snow\+Depth} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+WE, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} snowdensity)
+\item
+void \hyperlink{_s_w___soil_water_8h_ac5e856e2b9ce7f50bf80a4b68990cdc3}{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day} (void)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8h_a67d7bd8d16c69d650ade7002b6d07750}{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} swc\+Bulk, \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} n)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8h_a105a153ddf27179bbccb86c288926d4e}{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} swp\+Matric, \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} n)
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{_s_w___soil_water_8h_a98f205f5217dcb6a4ad1535ac3ebc79e}{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res} (\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} fraction\+Gravel, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} sand, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} clay, \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} porosity)
+\end{DoxyCompactItemize}
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2}\label{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+Adjust\+Methods@{S\+W\+\_\+\+Adjust\+Methods}}
+\index{S\+W\+\_\+\+Adjust\+Methods@{S\+W\+\_\+\+Adjust\+Methods}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Adjust\+Methods}{SW\_AdjustMethods}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2}{S\+W\+\_\+\+Adjust\+Methods}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{S\+W\+\_\+\+Adjust\+\_\+\+Avg@{S\+W\+\_\+\+Adjust\+\_\+\+Avg}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+Adjust\+\_\+\+Avg@{S\+W\+\_\+\+Adjust\+\_\+\+Avg}}}\mbox{\Hypertarget{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a0804d509577b39ef0d76009ec07e8729}\label{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a0804d509577b39ef0d76009ec07e8729}}
+S\+W\+\_\+\+Adjust\+\_\+\+Avg&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err@{S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err@{S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err}}}\mbox{\Hypertarget{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a17e6f463e6708a7e18ca84739312ad88}\label{_s_w___soil_water_8h_a45ad841e0e838b059cbb65cdeb267fc2a17e6f463e6708a7e18ca84739312ad88}}
+S\+W\+\_\+\+Adjust\+\_\+\+Std\+Err&\\
+\hline
+
+\end{DoxyEnumFields}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___soil_water_8h_aa6a58fb26f7ae185badd11539fc175d7}\label{_s_w___soil_water_8h_aa6a58fb26f7ae185badd11539fc175d7}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+Snow\+Depth@{S\+W\+\_\+\+Snow\+Depth}}
+\index{S\+W\+\_\+\+Snow\+Depth@{S\+W\+\_\+\+Snow\+Depth}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Snow\+Depth()}{SW\_SnowDepth()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+Snow\+Depth (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{S\+WE, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{snowdensity }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_ad186322d66e90e3b398c571d5f51b306}\label{_s_w___soil_water_8h_ad186322d66e90e3b398c571d5f51b306}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow()}{SW\_SWC\_adjust\_snow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{temp\+\_\+min, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{temp\+\_\+max, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{ppt, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{rain, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snow, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snowmelt, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$}]{snowloss }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_aad28c324317c639162dc02a9ca41b050}\label{_s_w___soil_water_8h_aad28c324317c639162dc02a9ca41b050}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc@{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc()}{SW\_SWC\_adjust\_swc()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_ad62fe931e2c8b2075d1d5a4df4b87151}\label{_s_w___soil_water_8h_ad62fe931e2c8b2075d1d5a4df4b87151}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+construct@{S\+W\+\_\+\+S\+W\+C\+\_\+construct}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+construct@{S\+W\+\_\+\+S\+W\+C\+\_\+construct}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+construct()}{SW\_SWC\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_ac5e856e2b9ce7f50bf80a4b68990cdc3}\label{_s_w___soil_water_8h_ac5e856e2b9ce7f50bf80a4b68990cdc3}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day@{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day@{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day()}{SW\_SWC\_end\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_a27c49934c33e702aa2d942d7eed1b841}\label{_s_w___soil_water_8h_a27c49934c33e702aa2d942d7eed1b841}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year@{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year@{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year()}{SW\_SWC\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_ac0531314f7790b2c914bbe38cf51f04c}\label{_s_w___soil_water_8h_ac0531314f7790b2c914bbe38cf51f04c}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+read@{S\+W\+\_\+\+S\+W\+C\+\_\+read}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+read@{S\+W\+\_\+\+S\+W\+C\+\_\+read}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+read()}{SW\_SWC\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_a15e0502fb9c5356bc78240f3240c42aa}\label{_s_w___soil_water_8h_a15e0502fb9c5356bc78240f3240c42aa}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow@{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow}}
+\index{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow@{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow()}{SW\_SWC\_water\_flow()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_a67d7bd8d16c69d650ade7002b6d07750}\label{_s_w___soil_water_8h_a67d7bd8d16c69d650ade7002b6d07750}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric}}
+\index{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric@{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric()}{SW\_SWCbulk2SWPmatric()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{swc\+Bulk, }\item[{\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_a105a153ddf27179bbccb86c288926d4e}\label{_s_w___soil_water_8h_a105a153ddf27179bbccb86c288926d4e}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk@{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk}}
+\index{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk@{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk()}{SW\_SWPmatric2VWCBulk()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{swp\+Matric, }\item[{\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index}}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{_s_w___soil_water_8h_a98f205f5217dcb6a4ad1535ac3ebc79e}\label{_s_w___soil_water_8h_a98f205f5217dcb6a4ad1535ac3ebc79e}}
+\index{S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}!S\+W\+\_\+\+V\+W\+C\+Bulk\+Res@{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res}}
+\index{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res@{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res}!S\+W\+\_\+\+Soil\+Water.\+h@{S\+W\+\_\+\+Soil\+Water.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+W\+C\+Bulk\+Res()}{SW\_VWCBulkRes()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+W\+C\+Bulk\+Res (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{fraction\+Gravel, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{sand, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{clay, }\item[{\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}]{porosity }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___times_8h.tex b/doc/latex/_s_w___times_8h.tex
new file mode 100644
index 000000000..4a11fc1fc
--- /dev/null
+++ b/doc/latex/_s_w___times_8h.tex
@@ -0,0 +1,88 @@
+\hypertarget{_s_w___times_8h}{}\section{S\+W\+\_\+\+Times.\+h File Reference}
+\label{_s_w___times_8h}\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___times_8h_ad01c1bae9947589a9fad290f7ce72b98}{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH}~1
+\item
+\#define \hyperlink{_s_w___times_8h_ada5c987fa013164310176535b71d34f6}{D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH}~366
+\item
+\#define \hyperlink{_s_w___times_8h_a007dadd83840adf66fa92d42546d7283}{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH}~183
+\item
+\#define \hyperlink{_s_w___times_8h_a03162deb667f2ff9dcc31571858cc5f1}{D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH}~182
+\item
+\#define \hyperlink{_s_w___times_8h_ae15bab367a811d76ab6b9bde26bfec33}{D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH}~183
+\item
+\#define \hyperlink{_s_w___times_8h_ac0f3d6f030eaea7119cd2ddd9d05de61}{D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH}~366
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918}{Two\+Days} \{ \hyperlink{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a98e439f15f69767d6030e63a926aa0be}{Yesterday},
+\hyperlink{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a029fabeb451b8545c8e5f5908549bc49}{Today}
+ \}
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___times_8h_ad01c1bae9947589a9fad290f7ce72b98}\label{_s_w___times_8h_ad01c1bae9947589a9fad290f7ce72b98}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH}}
+\index{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH}{DAYFIRST\_NORTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+N\+O\+R\+TH~1}
+
+\mbox{\Hypertarget{_s_w___times_8h_a007dadd83840adf66fa92d42546d7283}\label{_s_w___times_8h_a007dadd83840adf66fa92d42546d7283}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH}}
+\index{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH}{DAYFIRST\_SOUTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+F\+I\+R\+S\+T\+\_\+\+S\+O\+U\+TH~183}
+
+\mbox{\Hypertarget{_s_w___times_8h_ada5c987fa013164310176535b71d34f6}\label{_s_w___times_8h_ada5c987fa013164310176535b71d34f6}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH}}
+\index{D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH}{DAYLAST\_NORTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+L\+A\+S\+T\+\_\+\+N\+O\+R\+TH~366}
+
+\mbox{\Hypertarget{_s_w___times_8h_a03162deb667f2ff9dcc31571858cc5f1}\label{_s_w___times_8h_a03162deb667f2ff9dcc31571858cc5f1}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH}}
+\index{D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH}{DAYLAST\_SOUTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+L\+A\+S\+T\+\_\+\+S\+O\+U\+TH~182}
+
+\mbox{\Hypertarget{_s_w___times_8h_ae15bab367a811d76ab6b9bde26bfec33}\label{_s_w___times_8h_ae15bab367a811d76ab6b9bde26bfec33}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH}}
+\index{D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH@{D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH}{DAYMID\_NORTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+M\+I\+D\+\_\+\+N\+O\+R\+TH~183}
+
+\mbox{\Hypertarget{_s_w___times_8h_ac0f3d6f030eaea7119cd2ddd9d05de61}\label{_s_w___times_8h_ac0f3d6f030eaea7119cd2ddd9d05de61}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH}}
+\index{D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH@{D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH}{DAYMID\_SOUTH}}
+{\footnotesize\ttfamily \#define D\+A\+Y\+M\+I\+D\+\_\+\+S\+O\+U\+TH~366}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918}\label{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918}}
+\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!Two\+Days@{Two\+Days}}
+\index{Two\+Days@{Two\+Days}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}
+\subsubsection{\texorpdfstring{Two\+Days}{TwoDays}}
+{\footnotesize\ttfamily enum \hyperlink{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918}{Two\+Days}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Yesterday@{Yesterday}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!Yesterday@{Yesterday}}}\mbox{\Hypertarget{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a98e439f15f69767d6030e63a926aa0be}\label{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a98e439f15f69767d6030e63a926aa0be}}
+Yesterday&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Today@{Today}!S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}}\index{S\+W\+\_\+\+Times.\+h@{S\+W\+\_\+\+Times.\+h}!Today@{Today}}}\mbox{\Hypertarget{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a029fabeb451b8545c8e5f5908549bc49}\label{_s_w___times_8h_a66a0a6fe6a48e8c262f9bb90b644d918a029fabeb451b8545c8e5f5908549bc49}}
+Today&\\
+\hline
+
+\end{DoxyEnumFields}
diff --git a/doc/latex/_s_w___veg_estab_8c.tex b/doc/latex/_s_w___veg_estab_8c.tex
new file mode 100644
index 000000000..f02b567a2
--- /dev/null
+++ b/doc/latex/_s_w___veg_estab_8c.tex
@@ -0,0 +1,132 @@
+\hypertarget{_s_w___veg_estab_8c}{}\section{S\+W\+\_\+\+Veg\+Estab.\+c File Reference}
+\label{_s_w___veg_estab_8c}\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Site.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Estab.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___veg_estab_8c_a56324ee99877460f46a98d351ce6f885}{S\+W\+\_\+\+V\+E\+S\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8c_ad709b2c5fa0613c8abed1dba6d8cdb7a}{S\+W\+\_\+\+V\+E\+S\+\_\+clear} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8c_ad282fdcda9783fe422fc1381f02e92d9}{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8c_ae22bd4cee0bc829b7273d37419a0a1df}{S\+W\+\_\+\+V\+E\+S\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8c_a01bd300959e7ed05803e03188c1091a1}{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___veg_estab_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} \hyperlink{_s_w___veg_estab_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}{S\+W\+\_\+\+Site}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} \hyperlink{_s_w___veg_estab_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}{S\+W\+\_\+\+Weather}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} \hyperlink{_s_w___veg_estab_8c_afdb8ced0825a798336ba061396f7016c}{S\+W\+\_\+\+Soilwat}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___veg_estab_8c_a46e5208554b79bebc83a481785e273c6}{Echo\+Inits}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} \hyperlink{_s_w___veg_estab_8c_a4b2149c2e1b77da676359b0bc64b1710}{S\+W\+\_\+\+Veg\+Estab}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a01bd300959e7ed05803e03188c1091a1}\label{_s_w___veg_estab_8c_a01bd300959e7ed05803e03188c1091a1}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+V\+E\+S\+\_\+checkestab@{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab@{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab()}{SW\_VES\_checkestab()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+checkestab (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_ad709b2c5fa0613c8abed1dba6d8cdb7a}\label{_s_w___veg_estab_8c_ad709b2c5fa0613c8abed1dba6d8cdb7a}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+V\+E\+S\+\_\+clear@{S\+W\+\_\+\+V\+E\+S\+\_\+clear}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+clear@{S\+W\+\_\+\+V\+E\+S\+\_\+clear}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+clear()}{SW\_VES\_clear()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+clear (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a56324ee99877460f46a98d351ce6f885}\label{_s_w___veg_estab_8c_a56324ee99877460f46a98d351ce6f885}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+V\+E\+S\+\_\+construct@{S\+W\+\_\+\+V\+E\+S\+\_\+construct}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+construct@{S\+W\+\_\+\+V\+E\+S\+\_\+construct}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+construct()}{SW\_VES\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_ad282fdcda9783fe422fc1381f02e92d9}\label{_s_w___veg_estab_8c_ad282fdcda9783fe422fc1381f02e92d9}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year@{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year@{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year()}{SW\_VES\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_ae22bd4cee0bc829b7273d37419a0a1df}\label{_s_w___veg_estab_8c_ae22bd4cee0bc829b7273d37419a0a1df}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+V\+E\+S\+\_\+read@{S\+W\+\_\+\+V\+E\+S\+\_\+read}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+read@{S\+W\+\_\+\+V\+E\+S\+\_\+read}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+read()}{SW\_VES\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a46e5208554b79bebc83a481785e273c6}\label{_s_w___veg_estab_8c_a46e5208554b79bebc83a481785e273c6}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!Echo\+Inits@{Echo\+Inits}}
+\index{Echo\+Inits@{Echo\+Inits}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{Echo\+Inits}{EchoInits}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Echo\+Inits}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___veg_estab_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}\label{_s_w___veg_estab_8c_a11bcfe9d5a1ea9a25df26589c9e904f3}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}}
+\index{S\+W\+\_\+\+Site@{S\+W\+\_\+\+Site}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Site}{SW\_Site}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} S\+W\+\_\+\+Site}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers(), and S\+W\+\_\+\+S\+I\+T\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_afdb8ced0825a798336ba061396f7016c}\label{_s_w___veg_estab_8c_afdb8ced0825a798336ba061396f7016c}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}}
+\index{S\+W\+\_\+\+Soilwat@{S\+W\+\_\+\+Soilwat}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Soilwat}{SW\_Soilwat}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} S\+W\+\_\+\+Soilwat}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day(), and S\+W\+\_\+\+S\+W\+C\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a4b2149c2e1b77da676359b0bc64b1710}\label{_s_w___veg_estab_8c_a4b2149c2e1b77da676359b0bc64b1710}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}}
+\index{S\+W\+\_\+\+Veg\+Estab@{S\+W\+\_\+\+Veg\+Estab}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Estab}{SW\_VegEstab}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} S\+W\+\_\+\+Veg\+Estab}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}\label{_s_w___veg_estab_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}!S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}}
+\index{S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}!S\+W\+\_\+\+Veg\+Estab.\+c@{S\+W\+\_\+\+Veg\+Estab.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather}{SW\_Weather}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} S\+W\+\_\+\+Weather}
+
+
+
+Referenced by S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day(), and S\+W\+\_\+\+W\+T\+H\+\_\+read().
+
diff --git a/doc/latex/_s_w___veg_estab_8h.tex b/doc/latex/_s_w___veg_estab_8h.tex
new file mode 100644
index 000000000..963b27922
--- /dev/null
+++ b/doc/latex/_s_w___veg_estab_8h.tex
@@ -0,0 +1,93 @@
+\hypertarget{_s_w___veg_estab_8h}{}\section{S\+W\+\_\+\+Veg\+Estab.\+h File Reference}
+\label{_s_w___veg_estab_8h}\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}
+\item
+struct \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS}
+\item
+struct \hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___veg_estab_8h_abdc6714101f83c4348ab5f5338999b18}{S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS}~0
+\item
+\#define \hyperlink{_s_w___veg_estab_8h_adc47d4a3c4379c95fff1ac6a30ea246c}{S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS}~1
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___veg_estab_8h_ae22bd4cee0bc829b7273d37419a0a1df}{S\+W\+\_\+\+V\+E\+S\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8h_a56324ee99877460f46a98d351ce6f885}{S\+W\+\_\+\+V\+E\+S\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8h_ad709b2c5fa0613c8abed1dba6d8cdb7a}{S\+W\+\_\+\+V\+E\+S\+\_\+clear} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8h_a6d06912bdde61ca9b0b519df6e0f16fc}{S\+W\+\_\+\+V\+E\+S\+\_\+init} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8h_a01bd300959e7ed05803e03188c1091a1}{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab} (void)
+\item
+void \hyperlink{_s_w___veg_estab_8h_ad282fdcda9783fe422fc1381f02e92d9}{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___veg_estab_8h_adc47d4a3c4379c95fff1ac6a30ea246c}\label{_s_w___veg_estab_8h_adc47d4a3c4379c95fff1ac6a30ea246c}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS@{S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS}}
+\index{S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS@{S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS}{SW\_ESTAB\_BARS}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+E\+S\+T\+A\+B\+\_\+\+B\+A\+RS~1}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_abdc6714101f83c4348ab5f5338999b18}\label{_s_w___veg_estab_8h_abdc6714101f83c4348ab5f5338999b18}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS@{S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS}}
+\index{S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS@{S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS}{SW\_GERM\_BARS}}
+{\footnotesize\ttfamily \#define S\+W\+\_\+\+G\+E\+R\+M\+\_\+\+B\+A\+RS~0}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___veg_estab_8h_a01bd300959e7ed05803e03188c1091a1}\label{_s_w___veg_estab_8h_a01bd300959e7ed05803e03188c1091a1}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+checkestab@{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab@{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+checkestab()}{SW\_VES\_checkestab()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+checkestab (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_ad709b2c5fa0613c8abed1dba6d8cdb7a}\label{_s_w___veg_estab_8h_ad709b2c5fa0613c8abed1dba6d8cdb7a}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+clear@{S\+W\+\_\+\+V\+E\+S\+\_\+clear}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+clear@{S\+W\+\_\+\+V\+E\+S\+\_\+clear}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+clear()}{SW\_VES\_clear()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+clear (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_a56324ee99877460f46a98d351ce6f885}\label{_s_w___veg_estab_8h_a56324ee99877460f46a98d351ce6f885}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+construct@{S\+W\+\_\+\+V\+E\+S\+\_\+construct}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+construct@{S\+W\+\_\+\+V\+E\+S\+\_\+construct}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+construct()}{SW\_VES\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_a6d06912bdde61ca9b0b519df6e0f16fc}\label{_s_w___veg_estab_8h_a6d06912bdde61ca9b0b519df6e0f16fc}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+init@{S\+W\+\_\+\+V\+E\+S\+\_\+init}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+init@{S\+W\+\_\+\+V\+E\+S\+\_\+init}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+init()}{SW\_VES\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_ad282fdcda9783fe422fc1381f02e92d9}\label{_s_w___veg_estab_8h_ad282fdcda9783fe422fc1381f02e92d9}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year@{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year@{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year()}{SW\_VES\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_estab_8h_ae22bd4cee0bc829b7273d37419a0a1df}\label{_s_w___veg_estab_8h_ae22bd4cee0bc829b7273d37419a0a1df}}
+\index{S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}!S\+W\+\_\+\+V\+E\+S\+\_\+read@{S\+W\+\_\+\+V\+E\+S\+\_\+read}}
+\index{S\+W\+\_\+\+V\+E\+S\+\_\+read@{S\+W\+\_\+\+V\+E\+S\+\_\+read}!S\+W\+\_\+\+Veg\+Estab.\+h@{S\+W\+\_\+\+Veg\+Estab.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+E\+S\+\_\+read()}{SW\_VES\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+E\+S\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___veg_prod_8c.tex b/doc/latex/_s_w___veg_prod_8c.tex
new file mode 100644
index 000000000..af122e7dc
--- /dev/null
+++ b/doc/latex/_s_w___veg_prod_8c.tex
@@ -0,0 +1,84 @@
+\hypertarget{_s_w___veg_prod_8c}{}\section{S\+W\+\_\+\+Veg\+Prod.\+c File Reference}
+\label{_s_w___veg_prod_8c}\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Veg\+Prod.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___veg_prod_8c_a78fcfdb968b2355eee5a8f61bbd01270}{S\+W\+\_\+\+V\+P\+D\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___veg_prod_8c_abc0d9fc7beba00cae0821617b1013ab5}{S\+W\+\_\+\+V\+P\+D\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___veg_prod_8c_a637e8e57ca98f424e3e782d499f19368}{S\+W\+\_\+\+V\+P\+D\+\_\+init} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_s_w___veg_prod_8c_a46e5208554b79bebc83a481785e273c6}{Echo\+Inits}
+\item
+\hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} \hyperlink{_s_w___veg_prod_8c_a8f9709f4f153a6d19d922c1896a1e2a3}{S\+W\+\_\+\+Veg\+Prod}
+\item
+\hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} \hyperlink{_s_w___veg_prod_8c_a2ad9757141b05a2db17a8ff34467fb85}{Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___veg_prod_8c_abc0d9fc7beba00cae0821617b1013ab5}\label{_s_w___veg_prod_8c_abc0d9fc7beba00cae0821617b1013ab5}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!S\+W\+\_\+\+V\+P\+D\+\_\+construct@{S\+W\+\_\+\+V\+P\+D\+\_\+construct}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+construct@{S\+W\+\_\+\+V\+P\+D\+\_\+construct}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+construct()}{SW\_VPD\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___veg_prod_8c_a637e8e57ca98f424e3e782d499f19368}\label{_s_w___veg_prod_8c_a637e8e57ca98f424e3e782d499f19368}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!S\+W\+\_\+\+V\+P\+D\+\_\+init@{S\+W\+\_\+\+V\+P\+D\+\_\+init}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+init@{S\+W\+\_\+\+V\+P\+D\+\_\+init}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+init()}{SW\_VPD\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_prod_8c_a78fcfdb968b2355eee5a8f61bbd01270}\label{_s_w___veg_prod_8c_a78fcfdb968b2355eee5a8f61bbd01270}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!S\+W\+\_\+\+V\+P\+D\+\_\+read@{S\+W\+\_\+\+V\+P\+D\+\_\+read}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+read@{S\+W\+\_\+\+V\+P\+D\+\_\+read}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+read()}{SW\_VPD\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___veg_prod_8c_a46e5208554b79bebc83a481785e273c6}\label{_s_w___veg_prod_8c_a46e5208554b79bebc83a481785e273c6}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!Echo\+Inits@{Echo\+Inits}}
+\index{Echo\+Inits@{Echo\+Inits}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{Echo\+Inits}{EchoInits}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Echo\+Inits}
+
+
+
+Referenced by init\+\_\+args().
+
+\mbox{\Hypertarget{_s_w___veg_prod_8c_a2ad9757141b05a2db17a8ff34467fb85}\label{_s_w___veg_prod_8c_a2ad9757141b05a2db17a8ff34467fb85}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod@{Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod}}
+\index{Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod@{Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod}{Old\_SW\_VegProd}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} Old\+\_\+\+S\+W\+\_\+\+Veg\+Prod}
+
+\mbox{\Hypertarget{_s_w___veg_prod_8c_a8f9709f4f153a6d19d922c1896a1e2a3}\label{_s_w___veg_prod_8c_a8f9709f4f153a6d19d922c1896a1e2a3}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}!S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}}
+\index{S\+W\+\_\+\+Veg\+Prod@{S\+W\+\_\+\+Veg\+Prod}!S\+W\+\_\+\+Veg\+Prod.\+c@{S\+W\+\_\+\+Veg\+Prod.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Veg\+Prod}{SW\_VegProd}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} S\+W\+\_\+\+Veg\+Prod}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init(), and S\+W\+\_\+\+V\+P\+D\+\_\+read().
+
diff --git a/doc/latex/_s_w___veg_prod_8h.tex b/doc/latex/_s_w___veg_prod_8h.tex
new file mode 100644
index 000000000..ae84d4286
--- /dev/null
+++ b/doc/latex/_s_w___veg_prod_8h.tex
@@ -0,0 +1,44 @@
+\hypertarget{_s_w___veg_prod_8h}{}\section{S\+W\+\_\+\+Veg\+Prod.\+h File Reference}
+\label{_s_w___veg_prod_8h}\index{S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_veg_type}{Veg\+Type}
+\item
+struct \hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___veg_prod_8h_a78fcfdb968b2355eee5a8f61bbd01270}{S\+W\+\_\+\+V\+P\+D\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___veg_prod_8h_a637e8e57ca98f424e3e782d499f19368}{S\+W\+\_\+\+V\+P\+D\+\_\+init} (void)
+\item
+void \hyperlink{_s_w___veg_prod_8h_abc0d9fc7beba00cae0821617b1013ab5}{S\+W\+\_\+\+V\+P\+D\+\_\+construct} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___veg_prod_8h_abc0d9fc7beba00cae0821617b1013ab5}\label{_s_w___veg_prod_8h_abc0d9fc7beba00cae0821617b1013ab5}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}!S\+W\+\_\+\+V\+P\+D\+\_\+construct@{S\+W\+\_\+\+V\+P\+D\+\_\+construct}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+construct@{S\+W\+\_\+\+V\+P\+D\+\_\+construct}!S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+construct()}{SW\_VPD\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___veg_prod_8h_a637e8e57ca98f424e3e782d499f19368}\label{_s_w___veg_prod_8h_a637e8e57ca98f424e3e782d499f19368}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}!S\+W\+\_\+\+V\+P\+D\+\_\+init@{S\+W\+\_\+\+V\+P\+D\+\_\+init}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+init@{S\+W\+\_\+\+V\+P\+D\+\_\+init}!S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+init()}{SW\_VPD\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___veg_prod_8h_a78fcfdb968b2355eee5a8f61bbd01270}\label{_s_w___veg_prod_8h_a78fcfdb968b2355eee5a8f61bbd01270}}
+\index{S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}!S\+W\+\_\+\+V\+P\+D\+\_\+read@{S\+W\+\_\+\+V\+P\+D\+\_\+read}}
+\index{S\+W\+\_\+\+V\+P\+D\+\_\+read@{S\+W\+\_\+\+V\+P\+D\+\_\+read}!S\+W\+\_\+\+Veg\+Prod.\+h@{S\+W\+\_\+\+Veg\+Prod.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+V\+P\+D\+\_\+read()}{SW\_VPD\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+V\+P\+D\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_s_w___weather_8c.tex b/doc/latex/_s_w___weather_8c.tex
new file mode 100644
index 000000000..1584f5fb1
--- /dev/null
+++ b/doc/latex/_s_w___weather_8c.tex
@@ -0,0 +1,125 @@
+\hypertarget{_s_w___weather_8c}{}\section{S\+W\+\_\+\+Weather.\+c File Reference}
+\label{_s_w___weather_8c}\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Defines.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Files.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Model.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Output.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Soil\+Water.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Weather.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Markov.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Sky.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___weather_8c_ad5e5ffe16779cfa4aeecd4d2597a2add}{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list} (void)
+\item
+void \hyperlink{_s_w___weather_8c_ae3ced72037648c80ea72aaf4b7bf5f5d}{S\+W\+\_\+\+W\+T\+H\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___weather_8c_ab3b031bdd38b8694d1d506085b8117fb}{S\+W\+\_\+\+W\+T\+H\+\_\+init} (void)
+\item
+void \hyperlink{_s_w___weather_8c_a0dfd736f350b6a1fc05ae462f07375d2}{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___weather_8c_a526d1d74ee38f58df7a20ff52a70ec7b}{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day} (void)
+\item
+void \hyperlink{_s_w___weather_8c_a8e3dae10d74340f83f9d4ecba7493f2c}{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day} (void)
+\item
+void \hyperlink{_s_w___weather_8c_a17660a2e09eae210374567fbd558712b}{S\+W\+\_\+\+W\+T\+H\+\_\+read} (void)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} \hyperlink{_s_w___weather_8c_a7fe95d8828eeecd4a64b5a230bedea66}{S\+W\+\_\+\+Model}
+\item
+\hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV} \hyperlink{_s_w___weather_8c_a29f5ff534069ae52995a51c7c186d1c2}{S\+W\+\_\+\+Markov}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} \hyperlink{_s_w___weather_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}{S\+W\+\_\+\+Weather}
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___weather_8c_ad5e5ffe16779cfa4aeecd4d2597a2add}\label{_s_w___weather_8c_ad5e5ffe16779cfa4aeecd4d2597a2add}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list@{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list@{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list()}{SW\_WTH\_clear\_runavg\_list()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8c_ae3ced72037648c80ea72aaf4b7bf5f5d}\label{_s_w___weather_8c_ae3ced72037648c80ea72aaf4b7bf5f5d}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+construct@{S\+W\+\_\+\+W\+T\+H\+\_\+construct}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+construct@{S\+W\+\_\+\+W\+T\+H\+\_\+construct}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+construct()}{SW\_WTH\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___weather_8c_a526d1d74ee38f58df7a20ff52a70ec7b}\label{_s_w___weather_8c_a526d1d74ee38f58df7a20ff52a70ec7b}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day()}{SW\_WTH\_end\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8c_ab3b031bdd38b8694d1d506085b8117fb}\label{_s_w___weather_8c_ab3b031bdd38b8694d1d506085b8117fb}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+init@{S\+W\+\_\+\+W\+T\+H\+\_\+init}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+init@{S\+W\+\_\+\+W\+T\+H\+\_\+init}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+init()}{SW\_WTH\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8c_a8e3dae10d74340f83f9d4ecba7493f2c}\label{_s_w___weather_8c_a8e3dae10d74340f83f9d4ecba7493f2c}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day()}{SW\_WTH\_new\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8c_a0dfd736f350b6a1fc05ae462f07375d2}\label{_s_w___weather_8c_a0dfd736f350b6a1fc05ae462f07375d2}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year()}{SW\_WTH\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8c_a17660a2e09eae210374567fbd558712b}\label{_s_w___weather_8c_a17660a2e09eae210374567fbd558712b}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+W\+T\+H\+\_\+read@{S\+W\+\_\+\+W\+T\+H\+\_\+read}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+read@{S\+W\+\_\+\+W\+T\+H\+\_\+read}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+read()}{SW\_WTH\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{_s_w___weather_8c_a29f5ff534069ae52995a51c7c186d1c2}\label{_s_w___weather_8c_a29f5ff534069ae52995a51c7c186d1c2}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+Markov@{S\+W\+\_\+\+Markov}}
+\index{S\+W\+\_\+\+Markov@{S\+W\+\_\+\+Markov}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Markov}{SW\_Markov}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV} S\+W\+\_\+\+Markov}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+cov(), and S\+W\+\_\+\+M\+K\+V\+\_\+read\+\_\+prob().
+
+\mbox{\Hypertarget{_s_w___weather_8c_a7fe95d8828eeecd4a64b5a230bedea66}\label{_s_w___weather_8c_a7fe95d8828eeecd4a64b5a230bedea66}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}}
+\index{S\+W\+\_\+\+Model@{S\+W\+\_\+\+Model}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Model}{SW\_Model}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} S\+W\+\_\+\+Model}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct(), S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year(), and S\+W\+\_\+\+M\+D\+L\+\_\+read().
+
+\mbox{\Hypertarget{_s_w___weather_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}\label{_s_w___weather_8c_a5ec3b7159a2fccc79f5fa31d8f40c224}}
+\index{S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}!S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}}
+\index{S\+W\+\_\+\+Weather@{S\+W\+\_\+\+Weather}!S\+W\+\_\+\+Weather.\+c@{S\+W\+\_\+\+Weather.\+c}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+Weather}{SW\_Weather}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} S\+W\+\_\+\+Weather}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today(), S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day(), and S\+W\+\_\+\+W\+T\+H\+\_\+read().
+
diff --git a/doc/latex/_s_w___weather_8h.tex b/doc/latex/_s_w___weather_8h.tex
new file mode 100644
index 000000000..a835332eb
--- /dev/null
+++ b/doc/latex/_s_w___weather_8h.tex
@@ -0,0 +1,102 @@
+\hypertarget{_s_w___weather_8h}{}\section{S\+W\+\_\+\+Weather.\+h File Reference}
+\label{_s_w___weather_8h}\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+{\ttfamily \#include \char`\"{}S\+W\+\_\+\+Times.\+h\char`\"{}}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}
+\item
+struct \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}
+\item
+struct \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}
+\item
+struct \hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_s_w___weather_8h_a7d7a48bfc425c34e26ea6ec16aa8478e}{W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG}~999.
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_s_w___weather_8h_a17660a2e09eae210374567fbd558712b}{S\+W\+\_\+\+W\+T\+H\+\_\+read} (void)
+\item
+void \hyperlink{_s_w___weather_8h_ab3b031bdd38b8694d1d506085b8117fb}{S\+W\+\_\+\+W\+T\+H\+\_\+init} (void)
+\item
+void \hyperlink{_s_w___weather_8h_ae3ced72037648c80ea72aaf4b7bf5f5d}{S\+W\+\_\+\+W\+T\+H\+\_\+construct} (void)
+\item
+void \hyperlink{_s_w___weather_8h_a8e3dae10d74340f83f9d4ecba7493f2c}{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day} (void)
+\item
+void \hyperlink{_s_w___weather_8h_a0dfd736f350b6a1fc05ae462f07375d2}{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year} (void)
+\item
+void \hyperlink{_s_w___weather_8h_a02803ec7a1a165d6279b602fb57d556a}{S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today} (void)
+\item
+void \hyperlink{_s_w___weather_8h_a526d1d74ee38f58df7a20ff52a70ec7b}{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day} (void)
+\item
+void \hyperlink{_s_w___weather_8h_ad5e5ffe16779cfa4aeecd4d2597a2add}{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list} (void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_s_w___weather_8h_a7d7a48bfc425c34e26ea6ec16aa8478e}\label{_s_w___weather_8h_a7d7a48bfc425c34e26ea6ec16aa8478e}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG@{W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG}}
+\index{W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG@{W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG}{WTH\_MISSING}}
+{\footnotesize\ttfamily \#define W\+T\+H\+\_\+\+M\+I\+S\+S\+I\+NG~999.}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_s_w___weather_8h_ad5e5ffe16779cfa4aeecd4d2597a2add}\label{_s_w___weather_8h_ad5e5ffe16779cfa4aeecd4d2597a2add}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list@{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list@{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list()}{SW\_WTH\_clear\_runavg\_list()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+clear\+\_\+runavg\+\_\+list (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_ae3ced72037648c80ea72aaf4b7bf5f5d}\label{_s_w___weather_8h_ae3ced72037648c80ea72aaf4b7bf5f5d}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+construct@{S\+W\+\_\+\+W\+T\+H\+\_\+construct}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+construct@{S\+W\+\_\+\+W\+T\+H\+\_\+construct}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+construct()}{SW\_WTH\_construct()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+construct (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+init\+\_\+model().
+
+\mbox{\Hypertarget{_s_w___weather_8h_a526d1d74ee38f58df7a20ff52a70ec7b}\label{_s_w___weather_8h_a526d1d74ee38f58df7a20ff52a70ec7b}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day()}{SW\_WTH\_end\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+end\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_ab3b031bdd38b8694d1d506085b8117fb}\label{_s_w___weather_8h_ab3b031bdd38b8694d1d506085b8117fb}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+init@{S\+W\+\_\+\+W\+T\+H\+\_\+init}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+init@{S\+W\+\_\+\+W\+T\+H\+\_\+init}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+init()}{SW\_WTH\_init()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_a8e3dae10d74340f83f9d4ecba7493f2c}\label{_s_w___weather_8h_a8e3dae10d74340f83f9d4ecba7493f2c}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day()}{SW\_WTH\_new\_day()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_a0dfd736f350b6a1fc05ae462f07375d2}\label{_s_w___weather_8h_a0dfd736f350b6a1fc05ae462f07375d2}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year@{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year()}{SW\_WTH\_new\_year()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_a17660a2e09eae210374567fbd558712b}\label{_s_w___weather_8h_a17660a2e09eae210374567fbd558712b}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+read@{S\+W\+\_\+\+W\+T\+H\+\_\+read}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+read@{S\+W\+\_\+\+W\+T\+H\+\_\+read}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+read()}{SW\_WTH\_read()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_s_w___weather_8h_a02803ec7a1a165d6279b602fb57d556a}\label{_s_w___weather_8h_a02803ec7a1a165d6279b602fb57d556a}}
+\index{S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}!S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today@{S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today}}
+\index{S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today@{S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today}!S\+W\+\_\+\+Weather.\+h@{S\+W\+\_\+\+Weather.\+h}}
+\subsubsection{\texorpdfstring{S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today()}{SW\_WTH\_sum\_today()}}
+{\footnotesize\ttfamily void S\+W\+\_\+\+W\+T\+H\+\_\+sum\+\_\+today (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/_times_8c.tex b/doc/latex/_times_8c.tex
new file mode 100644
index 000000000..5bcd4e87e
--- /dev/null
+++ b/doc/latex/_times_8c.tex
@@ -0,0 +1,343 @@
+\hypertarget{_times_8c}{}\section{Times.\+c File Reference}
+\label{_times_8c}\index{Times.\+c@{Times.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}Times.\+h\char`\"{}}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_times_8c_a366734c22067f96c83a47f6cf64f471e}{M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR}~10
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_times_8c_abd08a2d32d0cdec2d63ce9fd5fabb057}{Time\+\_\+init} (void)
+\item
+void \hyperlink{_times_8c_abc93d05b3519c8a9049626750e8610e6}{Time\+\_\+now} (void)
+\item
+void \hyperlink{_times_8c_a3599fc76bc36c9d6db6f572304fcfe66}{Time\+\_\+new\+\_\+year} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8c_a8f99d7d02dbde6244b919ac6f133317e}{Time\+\_\+next\+\_\+day} (void)
+\item
+void \hyperlink{_times_8c_a2c7531da95b7fd0dffd8a172042166e4}{Time\+\_\+set\+\_\+year} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8c_a5e758681c6e49b14c299e121d880c854}{Time\+\_\+set\+\_\+doy} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+void \hyperlink{_times_8c_ab366018d0e70f2e6fc23b1b2807e7488}{Time\+\_\+set\+\_\+mday} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} day)
+\item
+void \hyperlink{_times_8c_a3a2d808e13355500fe34bf8fa71ded9f}{Time\+\_\+set\+\_\+month} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+time\+\_\+t \hyperlink{_times_8c_a12505c3ca0bd0af0455aefd10fb543fc}{Time\+\_\+timestamp} (void)
+\item
+time\+\_\+t \hyperlink{_times_8c_afa0290747ad44d077f8461969060a180}{Time\+\_\+timestamp\+\_\+now} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a1d1327b61cf229814149bf455c9c8262}{Time\+\_\+last\+D\+OY} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a118171d8631e8be0ad31cd4270128a73}{Time\+\_\+days\+\_\+in\+\_\+month} (\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months} month)
+\item
+char $\ast$ \hyperlink{_times_8c_ab5422238f153d1a963dc0050d7a6559b}{Time\+\_\+printtime} (void)
+\item
+char $\ast$ \hyperlink{_times_8c_a39bfa4779cc42a48e9a8de936ad48a44}{Time\+\_\+daynmshort} (void)
+\item
+char $\ast$ \hyperlink{_times_8c_ae01010231f2c4ee5d719495c47562d3d}{Time\+\_\+daynmshort\+\_\+d} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+char $\ast$ \hyperlink{_times_8c_a7d35e430bc9795351da86732a8e94d86}{Time\+\_\+daynmshort\+\_\+dm} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mday, const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+char $\ast$ \hyperlink{_times_8c_a2b02c9296a421c96a64eedab2e27fcba}{Time\+\_\+daynmlong} (void)
+\item
+char $\ast$ \hyperlink{_times_8c_a42da83f5485990b6040034e2b7bc70ed}{Time\+\_\+daynmlong\+\_\+d} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+char $\ast$ \hyperlink{_times_8c_aa0acdf736c364f383bade917b6c12a2c}{Time\+\_\+daynmlong\+\_\+dm} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mday, const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_af035967e4c9f8e312b7e9a8787c85efe}{Time\+\_\+get\+\_\+year} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a53949c8e1c891b6cd4408bfedd1bcea7}{Time\+\_\+get\+\_\+doy} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_aaad97bb254d59671f2701af8dc2cde21}{Time\+\_\+get\+\_\+month} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a9108259a9a7f72da449d6897c0c13dc4}{Time\+\_\+get\+\_\+week} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a19f6a46355208d0c822ab43d4d137d14}{Time\+\_\+get\+\_\+mday} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a5c249d5b9f0f6708895faac4a6609b29}{Time\+\_\+get\+\_\+hour} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_aa8ca82832f27ddd1ef7aee92ecfaf30c}{Time\+\_\+get\+\_\+mins} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a78561c93cbe2a0e95dc076f053276df5}{Time\+\_\+get\+\_\+secs} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a6efac9c9769c7e63ad27d5d19ae6e1c7}{Time\+\_\+get\+\_\+lastdoy} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_a50d4824dc7c06c0ba987e404667f3683}{Time\+\_\+get\+\_\+lastdoy\+\_\+y} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_ae77af3c6f456918720eae01ddc3714f9}{doy2month} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_af372297343d6dac7e1300f4ae9e39ffd}{doy2mday} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_afb72f5d7b4d8dba09b40a84ccc51e461}{doy2week} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8c_aa341c98032a26dd1bee65a9cb73c63b8}{yearto4digit} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} yr)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_times_8c_a087ca61b43a568e8023d02e70207818a}{isleapyear\+\_\+now} (void)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_times_8c_a95a7ed7f2f9ed567e45a42eb9a287d88}{isleapyear} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8c_aa8f5f562cbefb728dc97ac01417633bc}{interpolate\+\_\+monthly\+Values} (double monthly\+Values\mbox{[}$\,$\mbox{]}, double daily\+Values\mbox{[}$\,$\mbox{]})
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_times_8c_a366734c22067f96c83a47f6cf64f471e}\label{_times_8c_a366734c22067f96c83a47f6cf64f471e}}
+\index{Times.\+c@{Times.\+c}!M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR@{M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR}}
+\index{M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR@{M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR}{MAX\_DAYSTR}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+D\+A\+Y\+S\+TR~10}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_times_8c_af372297343d6dac7e1300f4ae9e39ffd}\label{_times_8c_af372297343d6dac7e1300f4ae9e39ffd}}
+\index{Times.\+c@{Times.\+c}!doy2mday@{doy2mday}}
+\index{doy2mday@{doy2mday}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{doy2mday()}{doy2mday()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2mday (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by interpolate\+\_\+monthly\+Values().
+
+\mbox{\Hypertarget{_times_8c_ae77af3c6f456918720eae01ddc3714f9}\label{_times_8c_ae77af3c6f456918720eae01ddc3714f9}}
+\index{Times.\+c@{Times.\+c}!doy2month@{doy2month}}
+\index{doy2month@{doy2month}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{doy2month()}{doy2month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2month (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by doy2mday(), interpolate\+\_\+monthly\+Values(), and S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{_times_8c_afb72f5d7b4d8dba09b40a84ccc51e461}\label{_times_8c_afb72f5d7b4d8dba09b40a84ccc51e461}}
+\index{Times.\+c@{Times.\+c}!doy2week@{doy2week}}
+\index{doy2week@{doy2week}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{doy2week()}{doy2week()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2week (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), and Time\+\_\+get\+\_\+week().
+
+\mbox{\Hypertarget{_times_8c_aa8f5f562cbefb728dc97ac01417633bc}\label{_times_8c_aa8f5f562cbefb728dc97ac01417633bc}}
+\index{Times.\+c@{Times.\+c}!interpolate\+\_\+monthly\+Values@{interpolate\+\_\+monthly\+Values}}
+\index{interpolate\+\_\+monthly\+Values@{interpolate\+\_\+monthly\+Values}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{interpolate\+\_\+monthly\+Values()}{interpolate\_monthlyValues()}}
+{\footnotesize\ttfamily void interpolate\+\_\+monthly\+Values (\begin{DoxyParamCaption}\item[{double}]{monthly\+Values\mbox{[}$\,$\mbox{]}, }\item[{double}]{daily\+Values\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{_times_8c_a95a7ed7f2f9ed567e45a42eb9a287d88}\label{_times_8c_a95a7ed7f2f9ed567e45a42eb9a287d88}}
+\index{Times.\+c@{Times.\+c}!isleapyear@{isleapyear}}
+\index{isleapyear@{isleapyear}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{isleapyear()}{isleapyear()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} isleapyear (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+
+
+Referenced by isleapyear\+\_\+now(), and Time\+\_\+get\+\_\+lastdoy\+\_\+y().
+
+\mbox{\Hypertarget{_times_8c_a087ca61b43a568e8023d02e70207818a}\label{_times_8c_a087ca61b43a568e8023d02e70207818a}}
+\index{Times.\+c@{Times.\+c}!isleapyear\+\_\+now@{isleapyear\+\_\+now}}
+\index{isleapyear\+\_\+now@{isleapyear\+\_\+now}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{isleapyear\+\_\+now()}{isleapyear\_now()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} isleapyear\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a2b02c9296a421c96a64eedab2e27fcba}\label{_times_8c_a2b02c9296a421c96a64eedab2e27fcba}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmlong@{Time\+\_\+daynmlong}}
+\index{Time\+\_\+daynmlong@{Time\+\_\+daynmlong}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong()}{Time\_daynmlong()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a42da83f5485990b6040034e2b7bc70ed}\label{_times_8c_a42da83f5485990b6040034e2b7bc70ed}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmlong\+\_\+d@{Time\+\_\+daynmlong\+\_\+d}}
+\index{Time\+\_\+daynmlong\+\_\+d@{Time\+\_\+daynmlong\+\_\+d}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong\+\_\+d()}{Time\_daynmlong\_d()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong\+\_\+d (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_aa0acdf736c364f383bade917b6c12a2c}\label{_times_8c_aa0acdf736c364f383bade917b6c12a2c}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmlong\+\_\+dm@{Time\+\_\+daynmlong\+\_\+dm}}
+\index{Time\+\_\+daynmlong\+\_\+dm@{Time\+\_\+daynmlong\+\_\+dm}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong\+\_\+dm()}{Time\_daynmlong\_dm()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong\+\_\+dm (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mday, }\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a39bfa4779cc42a48e9a8de936ad48a44}\label{_times_8c_a39bfa4779cc42a48e9a8de936ad48a44}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmshort@{Time\+\_\+daynmshort}}
+\index{Time\+\_\+daynmshort@{Time\+\_\+daynmshort}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort()}{Time\_daynmshort()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_ae01010231f2c4ee5d719495c47562d3d}\label{_times_8c_ae01010231f2c4ee5d719495c47562d3d}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmshort\+\_\+d@{Time\+\_\+daynmshort\+\_\+d}}
+\index{Time\+\_\+daynmshort\+\_\+d@{Time\+\_\+daynmshort\+\_\+d}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort\+\_\+d()}{Time\_daynmshort\_d()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort\+\_\+d (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a7d35e430bc9795351da86732a8e94d86}\label{_times_8c_a7d35e430bc9795351da86732a8e94d86}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+daynmshort\+\_\+dm@{Time\+\_\+daynmshort\+\_\+dm}}
+\index{Time\+\_\+daynmshort\+\_\+dm@{Time\+\_\+daynmshort\+\_\+dm}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort\+\_\+dm()}{Time\_daynmshort\_dm()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort\+\_\+dm (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mday, }\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a118171d8631e8be0ad31cd4270128a73}\label{_times_8c_a118171d8631e8be0ad31cd4270128a73}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+days\+\_\+in\+\_\+month@{Time\+\_\+days\+\_\+in\+\_\+month}}
+\index{Time\+\_\+days\+\_\+in\+\_\+month@{Time\+\_\+days\+\_\+in\+\_\+month}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+days\+\_\+in\+\_\+month()}{Time\_days\_in\_month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+days\+\_\+in\+\_\+month (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months}}]{month }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a53949c8e1c891b6cd4408bfedd1bcea7}\label{_times_8c_a53949c8e1c891b6cd4408bfedd1bcea7}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+doy@{Time\+\_\+get\+\_\+doy}}
+\index{Time\+\_\+get\+\_\+doy@{Time\+\_\+get\+\_\+doy}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+doy()}{Time\_get\_doy()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+doy (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a5c249d5b9f0f6708895faac4a6609b29}\label{_times_8c_a5c249d5b9f0f6708895faac4a6609b29}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+hour@{Time\+\_\+get\+\_\+hour}}
+\index{Time\+\_\+get\+\_\+hour@{Time\+\_\+get\+\_\+hour}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+hour()}{Time\_get\_hour()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+hour (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a6efac9c9769c7e63ad27d5d19ae6e1c7}\label{_times_8c_a6efac9c9769c7e63ad27d5d19ae6e1c7}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+lastdoy@{Time\+\_\+get\+\_\+lastdoy}}
+\index{Time\+\_\+get\+\_\+lastdoy@{Time\+\_\+get\+\_\+lastdoy}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+lastdoy()}{Time\_get\_lastdoy()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+lastdoy (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a50d4824dc7c06c0ba987e404667f3683}\label{_times_8c_a50d4824dc7c06c0ba987e404667f3683}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+lastdoy\+\_\+y@{Time\+\_\+get\+\_\+lastdoy\+\_\+y}}
+\index{Time\+\_\+get\+\_\+lastdoy\+\_\+y@{Time\+\_\+get\+\_\+lastdoy\+\_\+y}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+lastdoy\+\_\+y()}{Time\_get\_lastdoy\_y()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+lastdoy\+\_\+y (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a19f6a46355208d0c822ab43d4d137d14}\label{_times_8c_a19f6a46355208d0c822ab43d4d137d14}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+mday@{Time\+\_\+get\+\_\+mday}}
+\index{Time\+\_\+get\+\_\+mday@{Time\+\_\+get\+\_\+mday}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+mday()}{Time\_get\_mday()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+mday (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_aa8ca82832f27ddd1ef7aee92ecfaf30c}\label{_times_8c_aa8ca82832f27ddd1ef7aee92ecfaf30c}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+mins@{Time\+\_\+get\+\_\+mins}}
+\index{Time\+\_\+get\+\_\+mins@{Time\+\_\+get\+\_\+mins}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+mins()}{Time\_get\_mins()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+mins (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_aaad97bb254d59671f2701af8dc2cde21}\label{_times_8c_aaad97bb254d59671f2701af8dc2cde21}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+month@{Time\+\_\+get\+\_\+month}}
+\index{Time\+\_\+get\+\_\+month@{Time\+\_\+get\+\_\+month}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+month()}{Time\_get\_month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+month (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a78561c93cbe2a0e95dc076f053276df5}\label{_times_8c_a78561c93cbe2a0e95dc076f053276df5}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+secs@{Time\+\_\+get\+\_\+secs}}
+\index{Time\+\_\+get\+\_\+secs@{Time\+\_\+get\+\_\+secs}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+secs()}{Time\_get\_secs()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+secs (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a9108259a9a7f72da449d6897c0c13dc4}\label{_times_8c_a9108259a9a7f72da449d6897c0c13dc4}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+week@{Time\+\_\+get\+\_\+week}}
+\index{Time\+\_\+get\+\_\+week@{Time\+\_\+get\+\_\+week}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+week()}{Time\_get\_week()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+week (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_af035967e4c9f8e312b7e9a8787c85efe}\label{_times_8c_af035967e4c9f8e312b7e9a8787c85efe}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+get\+\_\+year@{Time\+\_\+get\+\_\+year}}
+\index{Time\+\_\+get\+\_\+year@{Time\+\_\+get\+\_\+year}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+year()}{Time\_get\_year()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_abd08a2d32d0cdec2d63ce9fd5fabb057}\label{_times_8c_abd08a2d32d0cdec2d63ce9fd5fabb057}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+init@{Time\+\_\+init}}
+\index{Time\+\_\+init@{Time\+\_\+init}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+init()}{Time\_init()}}
+{\footnotesize\ttfamily void Time\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct().
+
+\mbox{\Hypertarget{_times_8c_a1d1327b61cf229814149bf455c9c8262}\label{_times_8c_a1d1327b61cf229814149bf455c9c8262}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+last\+D\+OY@{Time\+\_\+last\+D\+OY}}
+\index{Time\+\_\+last\+D\+OY@{Time\+\_\+last\+D\+OY}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+last\+D\+O\+Y()}{Time\_lastDOY()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+last\+D\+OY (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a3599fc76bc36c9d6db6f572304fcfe66}\label{_times_8c_a3599fc76bc36c9d6db6f572304fcfe66}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+new\+\_\+year@{Time\+\_\+new\+\_\+year}}
+\index{Time\+\_\+new\+\_\+year@{Time\+\_\+new\+\_\+year}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+new\+\_\+year()}{Time\_new\_year()}}
+{\footnotesize\ttfamily void Time\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a8f99d7d02dbde6244b919ac6f133317e}\label{_times_8c_a8f99d7d02dbde6244b919ac6f133317e}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+next\+\_\+day@{Time\+\_\+next\+\_\+day}}
+\index{Time\+\_\+next\+\_\+day@{Time\+\_\+next\+\_\+day}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+next\+\_\+day()}{Time\_next\_day()}}
+{\footnotesize\ttfamily void Time\+\_\+next\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_abc93d05b3519c8a9049626750e8610e6}\label{_times_8c_abc93d05b3519c8a9049626750e8610e6}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+now@{Time\+\_\+now}}
+\index{Time\+\_\+now@{Time\+\_\+now}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+now()}{Time\_now()}}
+{\footnotesize\ttfamily void Time\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_ab5422238f153d1a963dc0050d7a6559b}\label{_times_8c_ab5422238f153d1a963dc0050d7a6559b}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+printtime@{Time\+\_\+printtime}}
+\index{Time\+\_\+printtime@{Time\+\_\+printtime}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+printtime()}{Time\_printtime()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+printtime (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a5e758681c6e49b14c299e121d880c854}\label{_times_8c_a5e758681c6e49b14c299e121d880c854}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+set\+\_\+doy@{Time\+\_\+set\+\_\+doy}}
+\index{Time\+\_\+set\+\_\+doy@{Time\+\_\+set\+\_\+doy}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+doy()}{Time\_set\_doy()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+doy (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_ab366018d0e70f2e6fc23b1b2807e7488}\label{_times_8c_ab366018d0e70f2e6fc23b1b2807e7488}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+set\+\_\+mday@{Time\+\_\+set\+\_\+mday}}
+\index{Time\+\_\+set\+\_\+mday@{Time\+\_\+set\+\_\+mday}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+mday()}{Time\_set\_mday()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+mday (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{day }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a3a2d808e13355500fe34bf8fa71ded9f}\label{_times_8c_a3a2d808e13355500fe34bf8fa71ded9f}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+set\+\_\+month@{Time\+\_\+set\+\_\+month}}
+\index{Time\+\_\+set\+\_\+month@{Time\+\_\+set\+\_\+month}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+month()}{Time\_set\_month()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+month (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a2c7531da95b7fd0dffd8a172042166e4}\label{_times_8c_a2c7531da95b7fd0dffd8a172042166e4}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+set\+\_\+year@{Time\+\_\+set\+\_\+year}}
+\index{Time\+\_\+set\+\_\+year@{Time\+\_\+set\+\_\+year}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+year()}{Time\_set\_year()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+year (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_a12505c3ca0bd0af0455aefd10fb543fc}\label{_times_8c_a12505c3ca0bd0af0455aefd10fb543fc}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+timestamp@{Time\+\_\+timestamp}}
+\index{Time\+\_\+timestamp@{Time\+\_\+timestamp}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+timestamp()}{Time\_timestamp()}}
+{\footnotesize\ttfamily time\+\_\+t Time\+\_\+timestamp (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_afa0290747ad44d077f8461969060a180}\label{_times_8c_afa0290747ad44d077f8461969060a180}}
+\index{Times.\+c@{Times.\+c}!Time\+\_\+timestamp\+\_\+now@{Time\+\_\+timestamp\+\_\+now}}
+\index{Time\+\_\+timestamp\+\_\+now@{Time\+\_\+timestamp\+\_\+now}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{Time\+\_\+timestamp\+\_\+now()}{Time\_timestamp\_now()}}
+{\footnotesize\ttfamily time\+\_\+t Time\+\_\+timestamp\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8c_aa341c98032a26dd1bee65a9cb73c63b8}\label{_times_8c_aa341c98032a26dd1bee65a9cb73c63b8}}
+\index{Times.\+c@{Times.\+c}!yearto4digit@{yearto4digit}}
+\index{yearto4digit@{yearto4digit}!Times.\+c@{Times.\+c}}
+\subsubsection{\texorpdfstring{yearto4digit()}{yearto4digit()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} yearto4digit (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{yr }\end{DoxyParamCaption})}
+
+
+
+Referenced by isleapyear(), Time\+\_\+new\+\_\+year(), and Time\+\_\+set\+\_\+year().
+
diff --git a/doc/latex/_times_8h.tex b/doc/latex/_times_8h.tex
new file mode 100644
index 000000000..df794225f
--- /dev/null
+++ b/doc/latex/_times_8h.tex
@@ -0,0 +1,475 @@
+\hypertarget{_times_8h}{}\section{Times.\+h File Reference}
+\label{_times_8h}\index{Times.\+h@{Times.\+h}}
+{\ttfamily \#include $<$time.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}~12
+\item
+\#define \hyperlink{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}{M\+A\+X\+\_\+\+W\+E\+E\+KS}~53
+\item
+\#define \hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}~366
+\item
+\#define \hyperlink{_times_8h_a2a7cd45ad028f22074bb745387bbc1c2}{W\+K\+D\+A\+YS}~7
+\end{DoxyCompactItemize}
+\subsection*{Typedefs}
+\begin{DoxyCompactItemize}
+\item
+typedef unsigned int \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months} \{ \newline
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d}{Jan},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a440438569d2f7021e13c06436bac455e}{Feb},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a2c937adab19ffaa90d92d907272681fc}{Mar},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a901d3b86defe97d76aa17f7959f45a4b}{Apr},
+\newline
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a56032654a15262d69e8be7d42a7ab381}{May},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a470a2bb850730d2f9f812d0cf05db069}{Jun},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a02dced4e5287dd4f89c944787c8fd209}{Jul},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a35b744bc15334aee236729b16b3763fb}{Aug},
+\newline
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2ae922a67b67c79fe59b1de79ba1ef3ec3}{Sep},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a3fa258f3bb2deccc3595e22fd129e1d9}{Oct},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a30c4611a7b0d26864d14fba180d1aa1f}{Nov},
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17}{Dec},
+\newline
+\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a006525d093472f85302a58ac758ad640}{No\+Month}
+ \}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{_times_8h_abd08a2d32d0cdec2d63ce9fd5fabb057}{Time\+\_\+init} (void)
+\item
+void \hyperlink{_times_8h_abc93d05b3519c8a9049626750e8610e6}{Time\+\_\+now} (void)
+\item
+void \hyperlink{_times_8h_a3599fc76bc36c9d6db6f572304fcfe66}{Time\+\_\+new\+\_\+year} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8h_a8f99d7d02dbde6244b919ac6f133317e}{Time\+\_\+next\+\_\+day} (void)
+\item
+void \hyperlink{_times_8h_a2c7531da95b7fd0dffd8a172042166e4}{Time\+\_\+set\+\_\+year} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8h_a5e758681c6e49b14c299e121d880c854}{Time\+\_\+set\+\_\+doy} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+void \hyperlink{_times_8h_ab366018d0e70f2e6fc23b1b2807e7488}{Time\+\_\+set\+\_\+mday} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} day)
+\item
+void \hyperlink{_times_8h_a3a2d808e13355500fe34bf8fa71ded9f}{Time\+\_\+set\+\_\+month} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+time\+\_\+t \hyperlink{_times_8h_a12505c3ca0bd0af0455aefd10fb543fc}{Time\+\_\+timestamp} (void)
+\item
+time\+\_\+t \hyperlink{_times_8h_afa0290747ad44d077f8461969060a180}{Time\+\_\+timestamp\+\_\+now} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a118171d8631e8be0ad31cd4270128a73}{Time\+\_\+days\+\_\+in\+\_\+month} (\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months} month)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a1d1327b61cf229814149bf455c9c8262}{Time\+\_\+last\+D\+OY} (void)
+\item
+char $\ast$ \hyperlink{_times_8h_ab5422238f153d1a963dc0050d7a6559b}{Time\+\_\+printtime} (void)
+\item
+char $\ast$ \hyperlink{_times_8h_a39bfa4779cc42a48e9a8de936ad48a44}{Time\+\_\+daynmshort} (void)
+\item
+char $\ast$ \hyperlink{_times_8h_ae01010231f2c4ee5d719495c47562d3d}{Time\+\_\+daynmshort\+\_\+d} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+char $\ast$ \hyperlink{_times_8h_a7d35e430bc9795351da86732a8e94d86}{Time\+\_\+daynmshort\+\_\+dm} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mday, const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+char $\ast$ \hyperlink{_times_8h_a2b02c9296a421c96a64eedab2e27fcba}{Time\+\_\+daynmlong} (void)
+\item
+char $\ast$ \hyperlink{_times_8h_a42da83f5485990b6040034e2b7bc70ed}{Time\+\_\+daynmlong\+\_\+d} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+char $\ast$ \hyperlink{_times_8h_aa0acdf736c364f383bade917b6c12a2c}{Time\+\_\+daynmlong\+\_\+dm} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mday, const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} mon)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_af035967e4c9f8e312b7e9a8787c85efe}{Time\+\_\+get\+\_\+year} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a53949c8e1c891b6cd4408bfedd1bcea7}{Time\+\_\+get\+\_\+doy} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_aaad97bb254d59671f2701af8dc2cde21}{Time\+\_\+get\+\_\+month} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a9108259a9a7f72da449d6897c0c13dc4}{Time\+\_\+get\+\_\+week} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a19f6a46355208d0c822ab43d4d137d14}{Time\+\_\+get\+\_\+mday} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a5c249d5b9f0f6708895faac4a6609b29}{Time\+\_\+get\+\_\+hour} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_aa8ca82832f27ddd1ef7aee92ecfaf30c}{Time\+\_\+get\+\_\+mins} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a78561c93cbe2a0e95dc076f053276df5}{Time\+\_\+get\+\_\+secs} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a6efac9c9769c7e63ad27d5d19ae6e1c7}{Time\+\_\+get\+\_\+lastdoy} (void)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_a50d4824dc7c06c0ba987e404667f3683}{Time\+\_\+get\+\_\+lastdoy\+\_\+y} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_ae77af3c6f456918720eae01ddc3714f9}{doy2month} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_af372297343d6dac7e1300f4ae9e39ffd}{doy2mday} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_afb72f5d7b4d8dba09b40a84ccc51e461}{doy2week} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy)
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{_times_8h_aa341c98032a26dd1bee65a9cb73c63b8}{yearto4digit} (\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} yr)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_times_8h_a087ca61b43a568e8023d02e70207818a}{isleapyear\+\_\+now} (void)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{_times_8h_a95a7ed7f2f9ed567e45a42eb9a287d88}{isleapyear} (const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} year)
+\item
+void \hyperlink{_times_8h_aa8f5f562cbefb728dc97ac01417633bc}{interpolate\+\_\+monthly\+Values} (double monthly\+Values\mbox{[}$\,$\mbox{]}, double daily\+Values\mbox{[}$\,$\mbox{]})
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{_times_8h_a01f08d46080872b9f4284873b7f9dee4}\label{_times_8h_a01f08d46080872b9f4284873b7f9dee4}}
+\index{Times.\+h@{Times.\+h}!M\+A\+X\+\_\+\+D\+A\+YS@{M\+A\+X\+\_\+\+D\+A\+YS}}
+\index{M\+A\+X\+\_\+\+D\+A\+YS@{M\+A\+X\+\_\+\+D\+A\+YS}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+D\+A\+YS}{MAX\_DAYS}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+D\+A\+YS~366}
+
+
+
+Referenced by interpolate\+\_\+monthly\+Values(), S\+W\+\_\+\+M\+K\+V\+\_\+construct(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{_times_8h_a9c97e6841188b672e984a4eba7479277}\label{_times_8h_a9c97e6841188b672e984a4eba7479277}}
+\index{Times.\+h@{Times.\+h}!M\+A\+X\+\_\+\+M\+O\+N\+T\+HS@{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}}
+\index{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS@{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}{MAX\_MONTHS}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+M\+O\+N\+T\+HS~12}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}\label{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}}
+\index{Times.\+h@{Times.\+h}!M\+A\+X\+\_\+\+W\+E\+E\+KS@{M\+A\+X\+\_\+\+W\+E\+E\+KS}}
+\index{M\+A\+X\+\_\+\+W\+E\+E\+KS@{M\+A\+X\+\_\+\+W\+E\+E\+KS}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+W\+E\+E\+KS}{MAX\_WEEKS}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+W\+E\+E\+KS~53}
+
+\mbox{\Hypertarget{_times_8h_a2a7cd45ad028f22074bb745387bbc1c2}\label{_times_8h_a2a7cd45ad028f22074bb745387bbc1c2}}
+\index{Times.\+h@{Times.\+h}!W\+K\+D\+A\+YS@{W\+K\+D\+A\+YS}}
+\index{W\+K\+D\+A\+YS@{W\+K\+D\+A\+YS}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{W\+K\+D\+A\+YS}{WKDAYS}}
+{\footnotesize\ttfamily \#define W\+K\+D\+A\+YS~7}
+
+
+
+Referenced by doy2week().
+
+
+
+\subsection{Typedef Documentation}
+\mbox{\Hypertarget{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}\label{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}}
+\index{Times.\+h@{Times.\+h}!Time\+Int@{Time\+Int}}
+\index{Time\+Int@{Time\+Int}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+Int}{TimeInt}}
+{\footnotesize\ttfamily typedef unsigned int \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}}
+\index{Times.\+h@{Times.\+h}!Months@{Months}}
+\index{Months@{Months}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Months}{Months}}
+{\footnotesize\ttfamily enum \hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Jan@{Jan}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Jan@{Jan}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a23843ac6d5d7fd949c87235067b0cf8d}}
+Jan&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Feb@{Feb}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Feb@{Feb}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a440438569d2f7021e13c06436bac455e}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a440438569d2f7021e13c06436bac455e}}
+Feb&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Mar@{Mar}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Mar@{Mar}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a2c937adab19ffaa90d92d907272681fc}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a2c937adab19ffaa90d92d907272681fc}}
+Mar&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Apr@{Apr}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Apr@{Apr}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a901d3b86defe97d76aa17f7959f45a4b}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a901d3b86defe97d76aa17f7959f45a4b}}
+Apr&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{May@{May}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!May@{May}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a56032654a15262d69e8be7d42a7ab381}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a56032654a15262d69e8be7d42a7ab381}}
+May&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Jun@{Jun}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Jun@{Jun}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a470a2bb850730d2f9f812d0cf05db069}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a470a2bb850730d2f9f812d0cf05db069}}
+Jun&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Jul@{Jul}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Jul@{Jul}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a02dced4e5287dd4f89c944787c8fd209}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a02dced4e5287dd4f89c944787c8fd209}}
+Jul&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Aug@{Aug}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Aug@{Aug}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a35b744bc15334aee236729b16b3763fb}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a35b744bc15334aee236729b16b3763fb}}
+Aug&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Sep@{Sep}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Sep@{Sep}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2ae922a67b67c79fe59b1de79ba1ef3ec3}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2ae922a67b67c79fe59b1de79ba1ef3ec3}}
+Sep&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Oct@{Oct}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Oct@{Oct}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a3fa258f3bb2deccc3595e22fd129e1d9}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a3fa258f3bb2deccc3595e22fd129e1d9}}
+Oct&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Nov@{Nov}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Nov@{Nov}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a30c4611a7b0d26864d14fba180d1aa1f}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a30c4611a7b0d26864d14fba180d1aa1f}}
+Nov&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{Dec@{Dec}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!Dec@{Dec}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a516ce3cb332b423a1b9707352fe5cd17}}
+Dec&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{No\+Month@{No\+Month}!Times.\+h@{Times.\+h}}\index{Times.\+h@{Times.\+h}!No\+Month@{No\+Month}}}\mbox{\Hypertarget{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a006525d093472f85302a58ac758ad640}\label{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2a006525d093472f85302a58ac758ad640}}
+No\+Month&\\
+\hline
+
+\end{DoxyEnumFields}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{_times_8h_af372297343d6dac7e1300f4ae9e39ffd}\label{_times_8h_af372297343d6dac7e1300f4ae9e39ffd}}
+\index{Times.\+h@{Times.\+h}!doy2mday@{doy2mday}}
+\index{doy2mday@{doy2mday}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{doy2mday()}{doy2mday()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2mday (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by interpolate\+\_\+monthly\+Values().
+
+\mbox{\Hypertarget{_times_8h_ae77af3c6f456918720eae01ddc3714f9}\label{_times_8h_ae77af3c6f456918720eae01ddc3714f9}}
+\index{Times.\+h@{Times.\+h}!doy2month@{doy2month}}
+\index{doy2month@{doy2month}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{doy2month()}{doy2month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2month (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by doy2mday(), interpolate\+\_\+monthly\+Values(), and S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{_times_8h_afb72f5d7b4d8dba09b40a84ccc51e461}\label{_times_8h_afb72f5d7b4d8dba09b40a84ccc51e461}}
+\index{Times.\+h@{Times.\+h}!doy2week@{doy2week}}
+\index{doy2week@{doy2week}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{doy2week()}{doy2week()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} doy2week (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), and Time\+\_\+get\+\_\+week().
+
+\mbox{\Hypertarget{_times_8h_aa8f5f562cbefb728dc97ac01417633bc}\label{_times_8h_aa8f5f562cbefb728dc97ac01417633bc}}
+\index{Times.\+h@{Times.\+h}!interpolate\+\_\+monthly\+Values@{interpolate\+\_\+monthly\+Values}}
+\index{interpolate\+\_\+monthly\+Values@{interpolate\+\_\+monthly\+Values}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{interpolate\+\_\+monthly\+Values()}{interpolate\_monthlyValues()}}
+{\footnotesize\ttfamily void interpolate\+\_\+monthly\+Values (\begin{DoxyParamCaption}\item[{double}]{monthly\+Values\mbox{[}$\,$\mbox{]}, }\item[{double}]{daily\+Values\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{_times_8h_a95a7ed7f2f9ed567e45a42eb9a287d88}\label{_times_8h_a95a7ed7f2f9ed567e45a42eb9a287d88}}
+\index{Times.\+h@{Times.\+h}!isleapyear@{isleapyear}}
+\index{isleapyear@{isleapyear}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{isleapyear()}{isleapyear()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} isleapyear (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+
+
+Referenced by isleapyear\+\_\+now(), and Time\+\_\+get\+\_\+lastdoy\+\_\+y().
+
+\mbox{\Hypertarget{_times_8h_a087ca61b43a568e8023d02e70207818a}\label{_times_8h_a087ca61b43a568e8023d02e70207818a}}
+\index{Times.\+h@{Times.\+h}!isleapyear\+\_\+now@{isleapyear\+\_\+now}}
+\index{isleapyear\+\_\+now@{isleapyear\+\_\+now}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{isleapyear\+\_\+now()}{isleapyear\_now()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} isleapyear\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a2b02c9296a421c96a64eedab2e27fcba}\label{_times_8h_a2b02c9296a421c96a64eedab2e27fcba}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmlong@{Time\+\_\+daynmlong}}
+\index{Time\+\_\+daynmlong@{Time\+\_\+daynmlong}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong()}{Time\_daynmlong()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a42da83f5485990b6040034e2b7bc70ed}\label{_times_8h_a42da83f5485990b6040034e2b7bc70ed}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmlong\+\_\+d@{Time\+\_\+daynmlong\+\_\+d}}
+\index{Time\+\_\+daynmlong\+\_\+d@{Time\+\_\+daynmlong\+\_\+d}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong\+\_\+d()}{Time\_daynmlong\_d()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong\+\_\+d (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_aa0acdf736c364f383bade917b6c12a2c}\label{_times_8h_aa0acdf736c364f383bade917b6c12a2c}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmlong\+\_\+dm@{Time\+\_\+daynmlong\+\_\+dm}}
+\index{Time\+\_\+daynmlong\+\_\+dm@{Time\+\_\+daynmlong\+\_\+dm}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmlong\+\_\+dm()}{Time\_daynmlong\_dm()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmlong\+\_\+dm (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mday, }\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a39bfa4779cc42a48e9a8de936ad48a44}\label{_times_8h_a39bfa4779cc42a48e9a8de936ad48a44}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmshort@{Time\+\_\+daynmshort}}
+\index{Time\+\_\+daynmshort@{Time\+\_\+daynmshort}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort()}{Time\_daynmshort()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_ae01010231f2c4ee5d719495c47562d3d}\label{_times_8h_ae01010231f2c4ee5d719495c47562d3d}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmshort\+\_\+d@{Time\+\_\+daynmshort\+\_\+d}}
+\index{Time\+\_\+daynmshort\+\_\+d@{Time\+\_\+daynmshort\+\_\+d}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort\+\_\+d()}{Time\_daynmshort\_d()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort\+\_\+d (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a7d35e430bc9795351da86732a8e94d86}\label{_times_8h_a7d35e430bc9795351da86732a8e94d86}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+daynmshort\+\_\+dm@{Time\+\_\+daynmshort\+\_\+dm}}
+\index{Time\+\_\+daynmshort\+\_\+dm@{Time\+\_\+daynmshort\+\_\+dm}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+daynmshort\+\_\+dm()}{Time\_daynmshort\_dm()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+daynmshort\+\_\+dm (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mday, }\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a118171d8631e8be0ad31cd4270128a73}\label{_times_8h_a118171d8631e8be0ad31cd4270128a73}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+days\+\_\+in\+\_\+month@{Time\+\_\+days\+\_\+in\+\_\+month}}
+\index{Time\+\_\+days\+\_\+in\+\_\+month@{Time\+\_\+days\+\_\+in\+\_\+month}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+days\+\_\+in\+\_\+month()}{Time\_days\_in\_month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+days\+\_\+in\+\_\+month (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a18ea97ce6c7a0ad2f40c4bd1ac7b26d2}{Months}}]{month }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a53949c8e1c891b6cd4408bfedd1bcea7}\label{_times_8h_a53949c8e1c891b6cd4408bfedd1bcea7}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+doy@{Time\+\_\+get\+\_\+doy}}
+\index{Time\+\_\+get\+\_\+doy@{Time\+\_\+get\+\_\+doy}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+doy()}{Time\_get\_doy()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+doy (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a5c249d5b9f0f6708895faac4a6609b29}\label{_times_8h_a5c249d5b9f0f6708895faac4a6609b29}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+hour@{Time\+\_\+get\+\_\+hour}}
+\index{Time\+\_\+get\+\_\+hour@{Time\+\_\+get\+\_\+hour}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+hour()}{Time\_get\_hour()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+hour (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a6efac9c9769c7e63ad27d5d19ae6e1c7}\label{_times_8h_a6efac9c9769c7e63ad27d5d19ae6e1c7}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+lastdoy@{Time\+\_\+get\+\_\+lastdoy}}
+\index{Time\+\_\+get\+\_\+lastdoy@{Time\+\_\+get\+\_\+lastdoy}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+lastdoy()}{Time\_get\_lastdoy()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+lastdoy (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a50d4824dc7c06c0ba987e404667f3683}\label{_times_8h_a50d4824dc7c06c0ba987e404667f3683}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+lastdoy\+\_\+y@{Time\+\_\+get\+\_\+lastdoy\+\_\+y}}
+\index{Time\+\_\+get\+\_\+lastdoy\+\_\+y@{Time\+\_\+get\+\_\+lastdoy\+\_\+y}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+lastdoy\+\_\+y()}{Time\_get\_lastdoy\_y()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+lastdoy\+\_\+y (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a19f6a46355208d0c822ab43d4d137d14}\label{_times_8h_a19f6a46355208d0c822ab43d4d137d14}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+mday@{Time\+\_\+get\+\_\+mday}}
+\index{Time\+\_\+get\+\_\+mday@{Time\+\_\+get\+\_\+mday}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+mday()}{Time\_get\_mday()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+mday (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_aa8ca82832f27ddd1ef7aee92ecfaf30c}\label{_times_8h_aa8ca82832f27ddd1ef7aee92ecfaf30c}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+mins@{Time\+\_\+get\+\_\+mins}}
+\index{Time\+\_\+get\+\_\+mins@{Time\+\_\+get\+\_\+mins}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+mins()}{Time\_get\_mins()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+mins (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_aaad97bb254d59671f2701af8dc2cde21}\label{_times_8h_aaad97bb254d59671f2701af8dc2cde21}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+month@{Time\+\_\+get\+\_\+month}}
+\index{Time\+\_\+get\+\_\+month@{Time\+\_\+get\+\_\+month}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+month()}{Time\_get\_month()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+month (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a78561c93cbe2a0e95dc076f053276df5}\label{_times_8h_a78561c93cbe2a0e95dc076f053276df5}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+secs@{Time\+\_\+get\+\_\+secs}}
+\index{Time\+\_\+get\+\_\+secs@{Time\+\_\+get\+\_\+secs}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+secs()}{Time\_get\_secs()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+secs (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a9108259a9a7f72da449d6897c0c13dc4}\label{_times_8h_a9108259a9a7f72da449d6897c0c13dc4}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+week@{Time\+\_\+get\+\_\+week}}
+\index{Time\+\_\+get\+\_\+week@{Time\+\_\+get\+\_\+week}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+week()}{Time\_get\_week()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+week (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_af035967e4c9f8e312b7e9a8787c85efe}\label{_times_8h_af035967e4c9f8e312b7e9a8787c85efe}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+get\+\_\+year@{Time\+\_\+get\+\_\+year}}
+\index{Time\+\_\+get\+\_\+year@{Time\+\_\+get\+\_\+year}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+get\+\_\+year()}{Time\_get\_year()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+get\+\_\+year (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_abd08a2d32d0cdec2d63ce9fd5fabb057}\label{_times_8h_abd08a2d32d0cdec2d63ce9fd5fabb057}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+init@{Time\+\_\+init}}
+\index{Time\+\_\+init@{Time\+\_\+init}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+init()}{Time\_init()}}
+{\footnotesize\ttfamily void Time\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct().
+
+\mbox{\Hypertarget{_times_8h_a1d1327b61cf229814149bf455c9c8262}\label{_times_8h_a1d1327b61cf229814149bf455c9c8262}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+last\+D\+OY@{Time\+\_\+last\+D\+OY}}
+\index{Time\+\_\+last\+D\+OY@{Time\+\_\+last\+D\+OY}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+last\+D\+O\+Y()}{Time\_lastDOY()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} Time\+\_\+last\+D\+OY (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a3599fc76bc36c9d6db6f572304fcfe66}\label{_times_8h_a3599fc76bc36c9d6db6f572304fcfe66}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+new\+\_\+year@{Time\+\_\+new\+\_\+year}}
+\index{Time\+\_\+new\+\_\+year@{Time\+\_\+new\+\_\+year}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+new\+\_\+year()}{Time\_new\_year()}}
+{\footnotesize\ttfamily void Time\+\_\+new\+\_\+year (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a8f99d7d02dbde6244b919ac6f133317e}\label{_times_8h_a8f99d7d02dbde6244b919ac6f133317e}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+next\+\_\+day@{Time\+\_\+next\+\_\+day}}
+\index{Time\+\_\+next\+\_\+day@{Time\+\_\+next\+\_\+day}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+next\+\_\+day()}{Time\_next\_day()}}
+{\footnotesize\ttfamily void Time\+\_\+next\+\_\+day (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_abc93d05b3519c8a9049626750e8610e6}\label{_times_8h_abc93d05b3519c8a9049626750e8610e6}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+now@{Time\+\_\+now}}
+\index{Time\+\_\+now@{Time\+\_\+now}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+now()}{Time\_now()}}
+{\footnotesize\ttfamily void Time\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_ab5422238f153d1a963dc0050d7a6559b}\label{_times_8h_ab5422238f153d1a963dc0050d7a6559b}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+printtime@{Time\+\_\+printtime}}
+\index{Time\+\_\+printtime@{Time\+\_\+printtime}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+printtime()}{Time\_printtime()}}
+{\footnotesize\ttfamily char$\ast$ Time\+\_\+printtime (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a5e758681c6e49b14c299e121d880c854}\label{_times_8h_a5e758681c6e49b14c299e121d880c854}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+set\+\_\+doy@{Time\+\_\+set\+\_\+doy}}
+\index{Time\+\_\+set\+\_\+doy@{Time\+\_\+set\+\_\+doy}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+doy()}{Time\_set\_doy()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+doy (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{doy }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_ab366018d0e70f2e6fc23b1b2807e7488}\label{_times_8h_ab366018d0e70f2e6fc23b1b2807e7488}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+set\+\_\+mday@{Time\+\_\+set\+\_\+mday}}
+\index{Time\+\_\+set\+\_\+mday@{Time\+\_\+set\+\_\+mday}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+mday()}{Time\_set\_mday()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+mday (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{day }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a3a2d808e13355500fe34bf8fa71ded9f}\label{_times_8h_a3a2d808e13355500fe34bf8fa71ded9f}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+set\+\_\+month@{Time\+\_\+set\+\_\+month}}
+\index{Time\+\_\+set\+\_\+month@{Time\+\_\+set\+\_\+month}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+month()}{Time\_set\_month()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+month (\begin{DoxyParamCaption}\item[{const \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{mon }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a2c7531da95b7fd0dffd8a172042166e4}\label{_times_8h_a2c7531da95b7fd0dffd8a172042166e4}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+set\+\_\+year@{Time\+\_\+set\+\_\+year}}
+\index{Time\+\_\+set\+\_\+year@{Time\+\_\+set\+\_\+year}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+set\+\_\+year()}{Time\_set\_year()}}
+{\footnotesize\ttfamily void Time\+\_\+set\+\_\+year (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{year }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_a12505c3ca0bd0af0455aefd10fb543fc}\label{_times_8h_a12505c3ca0bd0af0455aefd10fb543fc}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+timestamp@{Time\+\_\+timestamp}}
+\index{Time\+\_\+timestamp@{Time\+\_\+timestamp}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+timestamp()}{Time\_timestamp()}}
+{\footnotesize\ttfamily time\+\_\+t Time\+\_\+timestamp (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_afa0290747ad44d077f8461969060a180}\label{_times_8h_afa0290747ad44d077f8461969060a180}}
+\index{Times.\+h@{Times.\+h}!Time\+\_\+timestamp\+\_\+now@{Time\+\_\+timestamp\+\_\+now}}
+\index{Time\+\_\+timestamp\+\_\+now@{Time\+\_\+timestamp\+\_\+now}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{Time\+\_\+timestamp\+\_\+now()}{Time\_timestamp\_now()}}
+{\footnotesize\ttfamily time\+\_\+t Time\+\_\+timestamp\+\_\+now (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{_times_8h_aa341c98032a26dd1bee65a9cb73c63b8}\label{_times_8h_aa341c98032a26dd1bee65a9cb73c63b8}}
+\index{Times.\+h@{Times.\+h}!yearto4digit@{yearto4digit}}
+\index{yearto4digit@{yearto4digit}!Times.\+h@{Times.\+h}}
+\subsubsection{\texorpdfstring{yearto4digit()}{yearto4digit()}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} yearto4digit (\begin{DoxyParamCaption}\item[{\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}}]{yr }\end{DoxyParamCaption})}
+
+
+
+Referenced by isleapyear(), Time\+\_\+new\+\_\+year(), and Time\+\_\+set\+\_\+year().
+
diff --git a/doc/latex/annotated.tex b/doc/latex/annotated.tex
new file mode 100644
index 000000000..3ac7785fb
--- /dev/null
+++ b/doc/latex/annotated.tex
@@ -0,0 +1,25 @@
+\section{Data Structures}
+Here are the data structures with brief descriptions\+:\begin{DoxyCompactList}
+\item\contentsline{section}{\hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO} }{\pageref{struct_b_l_o_c_k_i_n_f_o}}{}
+\item\contentsline{section}{\hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s}{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES} }{\pageref{struct_s_t___r_g_r___v_a_l_u_e_s}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o}{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO} }{\pageref{struct_s_w___l_a_y_e_r___i_n_f_o}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___m_a_r_k_o_v}{S\+W\+\_\+\+M\+A\+R\+K\+OV} }{\pageref{struct_s_w___m_a_r_k_o_v}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___m_o_d_e_l}{S\+W\+\_\+\+M\+O\+D\+EL} }{\pageref{struct_s_w___m_o_d_e_l}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___o_u_t_p_u_t}{S\+W\+\_\+\+O\+U\+T\+P\+UT} }{\pageref{struct_s_w___o_u_t_p_u_t}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___s_i_t_e}{S\+W\+\_\+\+S\+I\+TE} }{\pageref{struct_s_w___s_i_t_e}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___s_k_y}{S\+W\+\_\+\+S\+KY} }{\pageref{struct_s_w___s_k_y}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___s_o_i_l_w_a_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT} }{\pageref{struct_s_w___s_o_i_l_w_a_t}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST} }{\pageref{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} }{\pageref{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES} }{\pageref{struct_s_w___t_i_m_e_s}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___v_e_g_e_s_t_a_b}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB} }{\pageref{struct_s_w___v_e_g_e_s_t_a_b}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO} }{\pageref{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS} }{\pageref{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___v_e_g_p_r_o_d}{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD} }{\pageref{struct_s_w___v_e_g_p_r_o_d}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___w_e_a_t_h_e_r}{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER} }{\pageref{struct_s_w___w_e_a_t_h_e_r}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS} }{\pageref{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST} }{\pageref{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}}{}
+\item\contentsline{section}{\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} }{\pageref{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}}{}
+\item\contentsline{section}{\hyperlink{structtanfunc__t}{tanfunc\+\_\+t} }{\pageref{structtanfunc__t}}{}
+\item\contentsline{section}{\hyperlink{struct_veg_type}{Veg\+Type} }{\pageref{struct_veg_type}}{}
+\end{DoxyCompactList}
diff --git a/doc/latex/bibTmpFile_1.bib b/doc/latex/bibTmpFile_1.bib
new file mode 100644
index 000000000..a3eaeeba0
--- /dev/null
+++ b/doc/latex/bibTmpFile_1.bib
@@ -0,0 +1,9 @@
+
+@Article{Cheng1978,
+ author = "R. Cheng",
+ title = "Generating Beta Variates with Nonintegral Shape Parameters",
+ journal = "Communications of the ACM",
+ volume = 21,
+ year = 1978,
+ pages = {317--322},
+ }
diff --git a/doc/latex/citelist.tex b/doc/latex/citelist.tex
new file mode 100644
index 000000000..c6145f045
--- /dev/null
+++ b/doc/latex/citelist.tex
@@ -0,0 +1,7 @@
+
+\begin{DoxyDescription}
+\item[\label{_CITEREF_Cheng1978}%
+\mbox{[}1\mbox{]}]R.~Cheng. Generating beta variates with nonintegral shape parameters. {\itshape Communications of the A\+CM}, 21\+:317--322, 1978.
+
+
+\end{DoxyDescription}
\ No newline at end of file
diff --git a/doc/latex/doxygen.sty b/doc/latex/doxygen.sty
new file mode 100644
index 000000000..e457acc1b
--- /dev/null
+++ b/doc/latex/doxygen.sty
@@ -0,0 +1,503 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{doxygen}
+
+% Packages used by this style file
+\RequirePackage{alltt}
+\RequirePackage{array}
+\RequirePackage{calc}
+\RequirePackage{float}
+\RequirePackage{ifthen}
+\RequirePackage{verbatim}
+\RequirePackage[table]{xcolor}
+\RequirePackage{longtable}
+\RequirePackage{tabu}
+\RequirePackage{tabularx}
+\RequirePackage{multirow}
+
+%---------- Internal commands used in this style file ----------------
+
+\newcommand{\ensurespace}[1]{%
+ \begingroup%
+ \setlength{\dimen@}{#1}%
+ \vskip\z@\@plus\dimen@%
+ \penalty -100\vskip\z@\@plus -\dimen@%
+ \vskip\dimen@%
+ \penalty 9999%
+ \vskip -\dimen@%
+ \vskip\z@skip% hide the previous |\vskip| from |\addvspace|
+ \endgroup%
+}
+
+\newcommand{\DoxyLabelFont}{}
+\newcommand{\entrylabel}[1]{%
+ {%
+ \parbox[b]{\labelwidth-4pt}{%
+ \makebox[0pt][l]{\DoxyLabelFont#1}%
+ \vspace{1.5\baselineskip}%
+ }%
+ }%
+}
+
+\newenvironment{DoxyDesc}[1]{%
+ \ensurespace{4\baselineskip}%
+ \begin{list}{}{%
+ \settowidth{\labelwidth}{20pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\leftmargin}{\labelwidth+\labelsep}%
+ \renewcommand{\makelabel}{\entrylabel}%
+ }%
+ \item[#1]%
+}{%
+ \end{list}%
+}
+
+\newsavebox{\xrefbox}
+\newlength{\xreflength}
+\newcommand{\xreflabel}[1]{%
+ \sbox{\xrefbox}{#1}%
+ \setlength{\xreflength}{\wd\xrefbox}%
+ \ifthenelse{\xreflength>\labelwidth}{%
+ \begin{minipage}{\textwidth}%
+ \setlength{\parindent}{0pt}%
+ \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
+ \end{minipage}%
+ }{%
+ \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
+ }%
+}
+
+%---------- Commands used by doxygen LaTeX output generator ----------
+
+% Used by ...
+\newenvironment{DoxyPre}{%
+ \small%
+ \begin{alltt}%
+}{%
+ \end{alltt}%
+ \normalsize%
+}
+
+% Used by @code ... @endcode
+\newenvironment{DoxyCode}{%
+ \par%
+ \scriptsize%
+ \begin{alltt}%
+}{%
+ \end{alltt}%
+ \normalsize%
+}
+
+% Used by @example, @include, @includelineno and @dontinclude
+\newenvironment{DoxyCodeInclude}{%
+ \DoxyCode%
+}{%
+ \endDoxyCode%
+}
+
+% Used by @verbatim ... @endverbatim
+\newenvironment{DoxyVerb}{%
+ \footnotesize%
+ \verbatim%
+}{%
+ \endverbatim%
+ \normalsize%
+}
+
+% Used by @verbinclude
+\newenvironment{DoxyVerbInclude}{%
+ \DoxyVerb%
+}{%
+ \endDoxyVerb%
+}
+
+% Used by numbered lists (using '-#' or ...
)
+\newenvironment{DoxyEnumerate}{%
+ \enumerate%
+}{%
+ \endenumerate%
+}
+
+% Used by bullet lists (using '-', @li, @arg, or )
+\newenvironment{DoxyItemize}{%
+ \itemize%
+}{%
+ \enditemize%
+}
+
+% Used by description lists (using ...
)
+\newenvironment{DoxyDescription}{%
+ \description%
+}{%
+ \enddescription%
+}
+
+% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
+% (only if caption is specified)
+\newenvironment{DoxyImage}{%
+ \begin{figure}[H]%
+ \begin{center}%
+}{%
+ \end{center}%
+ \end{figure}%
+}
+
+% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
+% (only if no caption is specified)
+\newenvironment{DoxyImageNoCaption}{%
+ \begin{center}%
+}{%
+ \end{center}%
+}
+
+% Used by @attention
+\newenvironment{DoxyAttention}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @author and @authors
+\newenvironment{DoxyAuthor}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @date
+\newenvironment{DoxyDate}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @invariant
+\newenvironment{DoxyInvariant}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @note
+\newenvironment{DoxyNote}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @post
+\newenvironment{DoxyPostcond}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @pre
+\newenvironment{DoxyPrecond}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @copyright
+\newenvironment{DoxyCopyright}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @remark
+\newenvironment{DoxyRemark}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @return and @returns
+\newenvironment{DoxyReturn}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @since
+\newenvironment{DoxySince}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @see
+\newenvironment{DoxySeeAlso}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @version
+\newenvironment{DoxyVersion}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @warning
+\newenvironment{DoxyWarning}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @internal
+\newenvironment{DoxyInternal}[1]{%
+ \paragraph*{#1}%
+}{%
+}
+
+% Used by @par and @paragraph
+\newenvironment{DoxyParagraph}[1]{%
+ \begin{list}{}{%
+ \settowidth{\labelwidth}{40pt}%
+ \setlength{\leftmargin}{\labelwidth}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\itemsep}{-4pt}%
+ \renewcommand{\makelabel}{\entrylabel}%
+ }%
+ \item[#1]%
+}{%
+ \end{list}%
+}
+
+% Used by parameter lists
+\newenvironment{DoxyParams}[2][]{%
+ \tabulinesep=1mm%
+ \par%
+ \ifthenelse{\equal{#1}{}}%
+ {\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
+ {\ifthenelse{\equal{#1}{1}}%
+ {\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
+ {\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
+ }
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used for fields of simple structs
+\newenvironment{DoxyFields}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used for fields simple class style enums
+\newenvironment{DoxyEnumFields}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used for parameters within a detailed function description
+\newenvironment{DoxyParamCaption}{%
+ \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}%
+}{%
+}
+
+% Used by return value lists
+\newenvironment{DoxyRetVals}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used by exception lists
+\newenvironment{DoxyExceptions}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used by template parameter lists
+\newenvironment{DoxyTemplParams}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu}%
+ \vspace{6pt}%
+}
+
+% Used for member lists
+\newenvironment{DoxyCompactItemize}{%
+ \begin{itemize}%
+ \setlength{\itemsep}{-3pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\topsep}{0pt}%
+ \setlength{\partopsep}{0pt}%
+}{%
+ \end{itemize}%
+}
+
+% Used for member descriptions
+\newenvironment{DoxyCompactList}{%
+ \begin{list}{}{%
+ \setlength{\leftmargin}{0.5cm}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\topsep}{0pt}%
+ \renewcommand{\makelabel}{\hfill}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used for reference lists (@bug, @deprecated, @todo, etc.)
+\newenvironment{DoxyRefList}{%
+ \begin{list}{}{%
+ \setlength{\labelwidth}{10pt}%
+ \setlength{\leftmargin}{\labelwidth}%
+ \addtolength{\leftmargin}{\labelsep}%
+ \renewcommand{\makelabel}{\xreflabel}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used by @bug, @deprecated, @todo, etc.
+\newenvironment{DoxyRefDesc}[1]{%
+ \begin{list}{}{%
+ \renewcommand\makelabel[1]{\textbf{##1}}%
+ \settowidth\labelwidth{\makelabel{#1}}%
+ \setlength\leftmargin{\labelwidth+\labelsep}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used by parameter lists and simple sections
+\newenvironment{Desc}
+{\begin{list}{}{%
+ \settowidth{\labelwidth}{20pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\leftmargin}{\labelwidth+\labelsep}%
+ \renewcommand{\makelabel}{\entrylabel}%
+ }
+}{%
+ \end{list}%
+}
+
+% Used by tables
+\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
+\newenvironment{TabularC}[1]%
+{\tabulinesep=1mm
+\begin{longtabu} spread 0pt [c]{*#1{|X[-1]}|}}%
+{\end{longtabu}\par}%
+
+\newenvironment{TabularNC}[1]%
+{\begin{tabu} spread 0pt [l]{*#1{|X[-1]}|}}%
+{\end{tabu}\par}%
+
+% Used for member group headers
+\newenvironment{Indent}{%
+ \begin{list}{}{%
+ \setlength{\leftmargin}{0.5cm}%
+ }%
+ \item[]\ignorespaces%
+}{%
+ \unskip%
+ \end{list}%
+}
+
+% Used when hyperlinks are turned off
+\newcommand{\doxyref}[3]{%
+ \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
+}
+
+% Used to link to a table when hyperlinks are turned on
+\newcommand{\doxytablelink}[2]{%
+ \ref{#1}%
+}
+
+% Used to link to a table when hyperlinks are turned off
+\newcommand{\doxytableref}[3]{%
+ \ref{#3}%
+}
+
+% Used by @addindex
+\newcommand{\lcurly}{\{}
+\newcommand{\rcurly}{\}}
+
+% Colors used for syntax highlighting
+\definecolor{comment}{rgb}{0.5,0.0,0.0}
+\definecolor{keyword}{rgb}{0.0,0.5,0.0}
+\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
+\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
+\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
+\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
+\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
+\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
+\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
+\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
+\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
+
+% Color used for table heading
+\newcommand{\tableheadbgcolor}{lightgray}%
+
+% Version of hypertarget with correct landing location
+\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
+
+% Define caption that is also suitable in a table
+\makeatletter
+\def\doxyfigcaption{%
+\refstepcounter{figure}%
+\@dblarg{\@caption{figure}}}
+\makeatother
diff --git a/doc/latex/filefuncs_8c.tex b/doc/latex/filefuncs_8c.tex
new file mode 100644
index 000000000..578534787
--- /dev/null
+++ b/doc/latex/filefuncs_8c.tex
@@ -0,0 +1,122 @@
+\hypertarget{filefuncs_8c}{}\section{filefuncs.\+c File Reference}
+\label{filefuncs_8c}\index{filefuncs.\+c@{filefuncs.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$errno.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$sys/stat.\+h$>$}\newline
+{\ttfamily \#include $<$sys/types.\+h$>$}\newline
+{\ttfamily \#include $<$dirent.\+h$>$}\newline
+{\ttfamily \#include $<$unistd.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+char $\ast$$\ast$ \hyperlink{filefuncs_8c_a0ddb6e2ce212307107a4da5decefcfee}{getfiles} (const char $\ast$fspec, int $\ast$nfound)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_a656ed10e1e8aadb73c9de41b827f8eee}{Get\+A\+Line} (F\+I\+LE $\ast$f, char buf\mbox{[}$\,$\mbox{]})
+\item
+char $\ast$ \hyperlink{filefuncs_8c_a839d04397d669fa064650a21875951b9}{Dir\+Name} (const char $\ast$p)
+\item
+const char $\ast$ \hyperlink{filefuncs_8c_ae46a4cb1dab4c7e7ed83d95175b29514}{Base\+Name} (const char $\ast$p)
+\item
+F\+I\+LE $\ast$ \hyperlink{filefuncs_8c_af8195946bfb8aee37b96820552679513}{Open\+File} (const char $\ast$name, const char $\ast$mode)
+\item
+void \hyperlink{filefuncs_8c_a69bd14b40775f048c8026b71a6c72329}{Close\+File} (F\+I\+LE $\ast$$\ast$f)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_ae115bd5076cb9ddf8f1b1dd1cd679ef1}{File\+Exists} (const char $\ast$name)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_ad267176fe1201c358d6ac3feb70f68b8}{Dir\+Exists} (const char $\ast$dname)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_ae6021195e9b5a4dd5b2bb95fdf76726f}{Ch\+Dir} (const char $\ast$dname)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_abdf5fe7756df6ee737353f7fbcbfbd4b}{Mk\+Dir} (const char $\ast$dname)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8c_add5288726b3ae23ec6c69e3d59e09b00}{Remove\+Files} (const char $\ast$fspec)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{filefuncs_8c_ae46a4cb1dab4c7e7ed83d95175b29514}\label{filefuncs_8c_ae46a4cb1dab4c7e7ed83d95175b29514}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Base\+Name@{Base\+Name}}
+\index{Base\+Name@{Base\+Name}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Base\+Name()}{BaseName()}}
+{\footnotesize\ttfamily const char$\ast$ Base\+Name (\begin{DoxyParamCaption}\item[{const char $\ast$}]{p }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
+\mbox{\Hypertarget{filefuncs_8c_ae6021195e9b5a4dd5b2bb95fdf76726f}\label{filefuncs_8c_ae6021195e9b5a4dd5b2bb95fdf76726f}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Ch\+Dir@{Ch\+Dir}}
+\index{Ch\+Dir@{Ch\+Dir}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Ch\+Dir()}{ChDir()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Ch\+Dir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dname }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_a69bd14b40775f048c8026b71a6c72329}\label{filefuncs_8c_a69bd14b40775f048c8026b71a6c72329}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Close\+File@{Close\+File}}
+\index{Close\+File@{Close\+File}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Close\+File()}{CloseFile()}}
+{\footnotesize\ttfamily void Close\+File (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$$\ast$}]{f }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_ad267176fe1201c358d6ac3feb70f68b8}\label{filefuncs_8c_ad267176fe1201c358d6ac3feb70f68b8}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Dir\+Exists@{Dir\+Exists}}
+\index{Dir\+Exists@{Dir\+Exists}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Dir\+Exists()}{DirExists()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Dir\+Exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dname }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mk\+Dir().
+
+\mbox{\Hypertarget{filefuncs_8c_a839d04397d669fa064650a21875951b9}\label{filefuncs_8c_a839d04397d669fa064650a21875951b9}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Dir\+Name@{Dir\+Name}}
+\index{Dir\+Name@{Dir\+Name}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Dir\+Name()}{DirName()}}
+{\footnotesize\ttfamily char$\ast$ Dir\+Name (\begin{DoxyParamCaption}\item[{const char $\ast$}]{p }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles(), and Remove\+Files().
+
+\mbox{\Hypertarget{filefuncs_8c_ae115bd5076cb9ddf8f1b1dd1cd679ef1}\label{filefuncs_8c_ae115bd5076cb9ddf8f1b1dd1cd679ef1}}
+\index{filefuncs.\+c@{filefuncs.\+c}!File\+Exists@{File\+Exists}}
+\index{File\+Exists@{File\+Exists}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{File\+Exists()}{FileExists()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} File\+Exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_a656ed10e1e8aadb73c9de41b827f8eee}\label{filefuncs_8c_a656ed10e1e8aadb73c9de41b827f8eee}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Get\+A\+Line@{Get\+A\+Line}}
+\index{Get\+A\+Line@{Get\+A\+Line}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Get\+A\+Line()}{GetALine()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Get\+A\+Line (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$}]{f, }\item[{char}]{buf\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_a0ddb6e2ce212307107a4da5decefcfee}\label{filefuncs_8c_a0ddb6e2ce212307107a4da5decefcfee}}
+\index{filefuncs.\+c@{filefuncs.\+c}!getfiles@{getfiles}}
+\index{getfiles@{getfiles}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{getfiles()}{getfiles()}}
+{\footnotesize\ttfamily char $\ast$$\ast$ getfiles (\begin{DoxyParamCaption}\item[{const char $\ast$}]{fspec, }\item[{int $\ast$}]{nfound }\end{DoxyParamCaption})}
+
+
+
+Referenced by Remove\+Files().
+
+\mbox{\Hypertarget{filefuncs_8c_abdf5fe7756df6ee737353f7fbcbfbd4b}\label{filefuncs_8c_abdf5fe7756df6ee737353f7fbcbfbd4b}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Mk\+Dir@{Mk\+Dir}}
+\index{Mk\+Dir@{Mk\+Dir}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Mk\+Dir()}{MkDir()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Mk\+Dir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dname }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_af8195946bfb8aee37b96820552679513}\label{filefuncs_8c_af8195946bfb8aee37b96820552679513}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Open\+File@{Open\+File}}
+\index{Open\+File@{Open\+File}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Open\+File()}{OpenFile()}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ Open\+File (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name, }\item[{const char $\ast$}]{mode }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8c_add5288726b3ae23ec6c69e3d59e09b00}\label{filefuncs_8c_add5288726b3ae23ec6c69e3d59e09b00}}
+\index{filefuncs.\+c@{filefuncs.\+c}!Remove\+Files@{Remove\+Files}}
+\index{Remove\+Files@{Remove\+Files}!filefuncs.\+c@{filefuncs.\+c}}
+\subsubsection{\texorpdfstring{Remove\+Files()}{RemoveFiles()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Remove\+Files (\begin{DoxyParamCaption}\item[{const char $\ast$}]{fspec }\end{DoxyParamCaption})}
+
diff --git a/doc/latex/filefuncs_8h.tex b/doc/latex/filefuncs_8h.tex
new file mode 100644
index 000000000..3a0c3a9dc
--- /dev/null
+++ b/doc/latex/filefuncs_8h.tex
@@ -0,0 +1,129 @@
+\hypertarget{filefuncs_8h}{}\section{filefuncs.\+h File Reference}
+\label{filefuncs_8h}\index{filefuncs.\+h@{filefuncs.\+h}}
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{filefuncs_8h_ab7141bab5837f75163a3e589affc0048}{F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+F\+I\+LE $\ast$ \hyperlink{filefuncs_8h_adf995fb05bea887c67de0267171e6ff4}{Open\+File} (const char $\ast$, const char $\ast$)
+\item
+void \hyperlink{filefuncs_8h_a4fd001db2f6530979aae0c4e1aa4e8d5}{Close\+File} (F\+I\+LE $\ast$$\ast$)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_a656ed10e1e8aadb73c9de41b827f8eee}{Get\+A\+Line} (F\+I\+LE $\ast$f, char buf\mbox{[}$\,$\mbox{]})
+\item
+char $\ast$ \hyperlink{filefuncs_8h_a839d04397d669fa064650a21875951b9}{Dir\+Name} (const char $\ast$p)
+\item
+const char $\ast$ \hyperlink{filefuncs_8h_ae46a4cb1dab4c7e7ed83d95175b29514}{Base\+Name} (const char $\ast$p)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_a5a98316bbdafe4e2aba0f7bfbd647238}{File\+Exists} (const char $\ast$f)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_a1eed0e73ac452256c2a5cd8dea914b99}{Dir\+Exists} (const char $\ast$d)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_ac1c6d5f8d6e6d853371b236f1a5f107b}{Ch\+Dir} (const char $\ast$d)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_aa21d4a908343c5aca34af8787f80c6c6}{Mk\+Dir} (const char $\ast$d)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{filefuncs_8h_add5288726b3ae23ec6c69e3d59e09b00}{Remove\+Files} (const char $\ast$fspec)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+char \hyperlink{filefuncs_8h_a9d98cc65c80843a2f3a287a05c662271}{inbuf} \mbox{[}$\,$\mbox{]}
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{filefuncs_8h_ab7141bab5837f75163a3e589affc0048}\label{filefuncs_8h_ab7141bab5837f75163a3e589affc0048}}
+\index{filefuncs.\+h@{filefuncs.\+h}!F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H@{F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H}}
+\index{F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H@{F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H}{FILEFUNCS\_H}}
+{\footnotesize\ttfamily \#define F\+I\+L\+E\+F\+U\+N\+C\+S\+\_\+H}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{filefuncs_8h_ae46a4cb1dab4c7e7ed83d95175b29514}\label{filefuncs_8h_ae46a4cb1dab4c7e7ed83d95175b29514}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Base\+Name@{Base\+Name}}
+\index{Base\+Name@{Base\+Name}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Base\+Name()}{BaseName()}}
+{\footnotesize\ttfamily const char$\ast$ Base\+Name (\begin{DoxyParamCaption}\item[{const char $\ast$}]{p }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
+\mbox{\Hypertarget{filefuncs_8h_ac1c6d5f8d6e6d853371b236f1a5f107b}\label{filefuncs_8h_ac1c6d5f8d6e6d853371b236f1a5f107b}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Ch\+Dir@{Ch\+Dir}}
+\index{Ch\+Dir@{Ch\+Dir}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Ch\+Dir()}{ChDir()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Ch\+Dir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_a4fd001db2f6530979aae0c4e1aa4e8d5}\label{filefuncs_8h_a4fd001db2f6530979aae0c4e1aa4e8d5}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Close\+File@{Close\+File}}
+\index{Close\+File@{Close\+File}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Close\+File()}{CloseFile()}}
+{\footnotesize\ttfamily void Close\+File (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$$\ast$}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_a1eed0e73ac452256c2a5cd8dea914b99}\label{filefuncs_8h_a1eed0e73ac452256c2a5cd8dea914b99}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Dir\+Exists@{Dir\+Exists}}
+\index{Dir\+Exists@{Dir\+Exists}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Dir\+Exists()}{DirExists()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Dir\+Exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{d }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mk\+Dir().
+
+\mbox{\Hypertarget{filefuncs_8h_a839d04397d669fa064650a21875951b9}\label{filefuncs_8h_a839d04397d669fa064650a21875951b9}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Dir\+Name@{Dir\+Name}}
+\index{Dir\+Name@{Dir\+Name}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Dir\+Name()}{DirName()}}
+{\footnotesize\ttfamily char$\ast$ Dir\+Name (\begin{DoxyParamCaption}\item[{const char $\ast$}]{p }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles(), and Remove\+Files().
+
+\mbox{\Hypertarget{filefuncs_8h_a5a98316bbdafe4e2aba0f7bfbd647238}\label{filefuncs_8h_a5a98316bbdafe4e2aba0f7bfbd647238}}
+\index{filefuncs.\+h@{filefuncs.\+h}!File\+Exists@{File\+Exists}}
+\index{File\+Exists@{File\+Exists}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{File\+Exists()}{FileExists()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} File\+Exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{f }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_a656ed10e1e8aadb73c9de41b827f8eee}\label{filefuncs_8h_a656ed10e1e8aadb73c9de41b827f8eee}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Get\+A\+Line@{Get\+A\+Line}}
+\index{Get\+A\+Line@{Get\+A\+Line}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Get\+A\+Line()}{GetALine()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Get\+A\+Line (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$}]{f, }\item[{char}]{buf\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_aa21d4a908343c5aca34af8787f80c6c6}\label{filefuncs_8h_aa21d4a908343c5aca34af8787f80c6c6}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Mk\+Dir@{Mk\+Dir}}
+\index{Mk\+Dir@{Mk\+Dir}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Mk\+Dir()}{MkDir()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Mk\+Dir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{d }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_adf995fb05bea887c67de0267171e6ff4}\label{filefuncs_8h_adf995fb05bea887c67de0267171e6ff4}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Open\+File@{Open\+File}}
+\index{Open\+File@{Open\+File}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Open\+File()}{OpenFile()}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ Open\+File (\begin{DoxyParamCaption}\item[{const char $\ast$}]{, }\item[{const char $\ast$}]{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{filefuncs_8h_add5288726b3ae23ec6c69e3d59e09b00}\label{filefuncs_8h_add5288726b3ae23ec6c69e3d59e09b00}}
+\index{filefuncs.\+h@{filefuncs.\+h}!Remove\+Files@{Remove\+Files}}
+\index{Remove\+Files@{Remove\+Files}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{Remove\+Files()}{RemoveFiles()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Remove\+Files (\begin{DoxyParamCaption}\item[{const char $\ast$}]{fspec }\end{DoxyParamCaption})}
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{filefuncs_8h_a9d98cc65c80843a2f3a287a05c662271}\label{filefuncs_8h_a9d98cc65c80843a2f3a287a05c662271}}
+\index{filefuncs.\+h@{filefuncs.\+h}!inbuf@{inbuf}}
+\index{inbuf@{inbuf}!filefuncs.\+h@{filefuncs.\+h}}
+\subsubsection{\texorpdfstring{inbuf}{inbuf}}
+{\footnotesize\ttfamily char inbuf\mbox{[}$\,$\mbox{]}}
+
diff --git a/doc/latex/files.tex b/doc/latex/files.tex
new file mode 100644
index 000000000..1ea566d4b
--- /dev/null
+++ b/doc/latex/files.tex
@@ -0,0 +1,47 @@
+\section{File List}
+Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList}
+\item\contentsline{section}{\hyperlink{filefuncs_8c}{filefuncs.\+c} }{\pageref{filefuncs_8c}}{}
+\item\contentsline{section}{\hyperlink{filefuncs_8h}{filefuncs.\+h} }{\pageref{filefuncs_8h}}{}
+\item\contentsline{section}{\hyperlink{generic_8c}{generic.\+c} }{\pageref{generic_8c}}{}
+\item\contentsline{section}{\hyperlink{generic_8h}{generic.\+h} }{\pageref{generic_8h}}{}
+\item\contentsline{section}{\hyperlink{memblock_8h}{memblock.\+h} }{\pageref{memblock_8h}}{}
+\item\contentsline{section}{\hyperlink{mymemory_8c}{mymemory.\+c} }{\pageref{mymemory_8c}}{}
+\item\contentsline{section}{\hyperlink{my_memory_8h}{my\+Memory.\+h} }{\pageref{my_memory_8h}}{}
+\item\contentsline{section}{\hyperlink{rands_8c}{rands.\+c} }{\pageref{rands_8c}}{}
+\item\contentsline{section}{\hyperlink{rands_8h}{rands.\+h} }{\pageref{rands_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___control_8c}{S\+W\+\_\+\+Control.\+c} }{\pageref{_s_w___control_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___control_8h}{S\+W\+\_\+\+Control.\+h} }{\pageref{_s_w___control_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___defines_8h}{S\+W\+\_\+\+Defines.\+h} }{\pageref{_s_w___defines_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___files_8c}{S\+W\+\_\+\+Files.\+c} }{\pageref{_s_w___files_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___files_8h}{S\+W\+\_\+\+Files.\+h} }{\pageref{_s_w___files_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___flow_8c}{S\+W\+\_\+\+Flow.\+c} }{\pageref{_s_w___flow_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___flow__lib_8c}{S\+W\+\_\+\+Flow\+\_\+lib.\+c} }{\pageref{_s_w___flow__lib_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___flow__lib_8h}{S\+W\+\_\+\+Flow\+\_\+lib.\+h} }{\pageref{_s_w___flow__lib_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___flow__subs_8h}{S\+W\+\_\+\+Flow\+\_\+subs.\+h} }{\pageref{_s_w___flow__subs_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___main_8c}{S\+W\+\_\+\+Main.\+c} }{\pageref{_s_w___main_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___main___function_8c}{S\+W\+\_\+\+Main\+\_\+\+Function.\+c} }{\pageref{_s_w___main___function_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___markov_8c}{S\+W\+\_\+\+Markov.\+c} }{\pageref{_s_w___markov_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___markov_8h}{S\+W\+\_\+\+Markov.\+h} }{\pageref{_s_w___markov_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___model_8c}{S\+W\+\_\+\+Model.\+c} }{\pageref{_s_w___model_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___model_8h}{S\+W\+\_\+\+Model.\+h} }{\pageref{_s_w___model_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___output_8c}{S\+W\+\_\+\+Output.\+c} }{\pageref{_s_w___output_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___output_8h}{S\+W\+\_\+\+Output.\+h} }{\pageref{_s_w___output_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___r__init_8c}{S\+W\+\_\+\+R\+\_\+init.\+c} }{\pageref{_s_w___r__init_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___r__lib_8c}{S\+W\+\_\+\+R\+\_\+lib.\+c} }{\pageref{_s_w___r__lib_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___r__lib_8h}{S\+W\+\_\+\+R\+\_\+lib.\+h} }{\pageref{_s_w___r__lib_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___site_8c}{S\+W\+\_\+\+Site.\+c} }{\pageref{_s_w___site_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___site_8h}{S\+W\+\_\+\+Site.\+h} }{\pageref{_s_w___site_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___sky_8c}{S\+W\+\_\+\+Sky.\+c} }{\pageref{_s_w___sky_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___sky_8h}{S\+W\+\_\+\+Sky.\+h} }{\pageref{_s_w___sky_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___soil_water_8c}{S\+W\+\_\+\+Soil\+Water.\+c} }{\pageref{_s_w___soil_water_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___soil_water_8h}{S\+W\+\_\+\+Soil\+Water.\+h} }{\pageref{_s_w___soil_water_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___times_8h}{S\+W\+\_\+\+Times.\+h} }{\pageref{_s_w___times_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___veg_estab_8c}{S\+W\+\_\+\+Veg\+Estab.\+c} }{\pageref{_s_w___veg_estab_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___veg_estab_8h}{S\+W\+\_\+\+Veg\+Estab.\+h} }{\pageref{_s_w___veg_estab_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___veg_prod_8c}{S\+W\+\_\+\+Veg\+Prod.\+c} }{\pageref{_s_w___veg_prod_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___veg_prod_8h}{S\+W\+\_\+\+Veg\+Prod.\+h} }{\pageref{_s_w___veg_prod_8h}}{}
+\item\contentsline{section}{\hyperlink{_s_w___weather_8c}{S\+W\+\_\+\+Weather.\+c} }{\pageref{_s_w___weather_8c}}{}
+\item\contentsline{section}{\hyperlink{_s_w___weather_8h}{S\+W\+\_\+\+Weather.\+h} }{\pageref{_s_w___weather_8h}}{}
+\item\contentsline{section}{\hyperlink{_times_8c}{Times.\+c} }{\pageref{_times_8c}}{}
+\item\contentsline{section}{\hyperlink{_times_8h}{Times.\+h} }{\pageref{_times_8h}}{}
+\end{DoxyCompactList}
diff --git a/doc/latex/generic_8c.tex b/doc/latex/generic_8c.tex
new file mode 100644
index 000000000..5eacfcde0
--- /dev/null
+++ b/doc/latex/generic_8c.tex
@@ -0,0 +1,151 @@
+\hypertarget{generic_8c}{}\section{generic.\+c File Reference}
+\label{generic_8c}\index{generic.\+c@{generic.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$ctype.\+h$>$}\newline
+{\ttfamily \#include $<$stdarg.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}filefuncs.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+char $\ast$ \hyperlink{generic_8c_a6150637c525c3ca076ca7cc755e29db2}{Str\+\_\+\+Trim\+Left} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8c_a9dd2b923dbcf0dcda1a436a5be02c09b}{Str\+\_\+\+Trim\+LeftQ} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8c_a3156a3189c9286cf2c56384b9d4f00ba}{Str\+\_\+\+Trim\+Right} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8c_ae76330d47526d546ea89a384fe788732}{Str\+\_\+\+To\+Upper} (char $\ast$s, char $\ast$r)
+\item
+char $\ast$ \hyperlink{generic_8c_a9e6077882ab6b9ddbe0532b293a2ccf4}{Str\+\_\+\+To\+Lower} (char $\ast$s, char $\ast$r)
+\item
+int \hyperlink{generic_8c_af36c688653758da1ec0e97b2f8ad02a9}{Str\+\_\+\+CompareI} (char $\ast$t, char $\ast$s)
+\item
+void \hyperlink{generic_8c_a4ad34bbb851d33a77269262427d3b072}{Un\+Comment} (char $\ast$s)
+\item
+void \hyperlink{generic_8c_a11003199b3d2783daca30d6c3110973b}{Log\+Error} (F\+I\+LE $\ast$fp, const int mode, const char $\ast$fmt,...)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{generic_8c_a1b59895791915578f7b7f96aa7f8e7c4}{Is\+\_\+\+Leap\+Year} (int yr)
+\item
+double \hyperlink{generic_8c_ac88c9c5fc37398d47ba569ca8149fe41}{interpolation} (double x1, double x2, double y1, double y2, double deltaX)
+\item
+void \hyperlink{generic_8c_a42c27317771c079928bf61523b38adfa}{st\+\_\+get\+Bounds} (unsigned int $\ast$x1, unsigned int $\ast$x2, unsigned int $\ast$equal, unsigned int size, double depth, double bounds\mbox{[}$\,$\mbox{]})
+\item
+double \hyperlink{generic_8c_a3b620cbbbff502ed6c23af6cb3fc46b2}{lobfM} (double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int n)
+\item
+double \hyperlink{generic_8c_a5dbdc3cf42590d2c34e896c3d8b80b43}{lobfB} (double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int n)
+\item
+void \hyperlink{generic_8c_a793c87571ac59fadacd623f5e3e4bb27}{lobf} (double $\ast$m, double $\ast$b, double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int n)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{generic_8c_ac88c9c5fc37398d47ba569ca8149fe41}\label{generic_8c_ac88c9c5fc37398d47ba569ca8149fe41}}
+\index{generic.\+c@{generic.\+c}!interpolation@{interpolation}}
+\index{interpolation@{interpolation}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{interpolation()}{interpolation()}}
+{\footnotesize\ttfamily double interpolation (\begin{DoxyParamCaption}\item[{double}]{x1, }\item[{double}]{x2, }\item[{double}]{y1, }\item[{double}]{y2, }\item[{double}]{deltaX }\end{DoxyParamCaption})}
+
+
+
+Referenced by lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature(), and lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature().
+
+\mbox{\Hypertarget{generic_8c_a1b59895791915578f7b7f96aa7f8e7c4}\label{generic_8c_a1b59895791915578f7b7f96aa7f8e7c4}}
+\index{generic.\+c@{generic.\+c}!Is\+\_\+\+Leap\+Year@{Is\+\_\+\+Leap\+Year}}
+\index{Is\+\_\+\+Leap\+Year@{Is\+\_\+\+Leap\+Year}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Is\+\_\+\+Leap\+Year()}{Is\_LeapYear()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Is\+\_\+\+Leap\+Year (\begin{DoxyParamCaption}\item[{int}]{yr }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a793c87571ac59fadacd623f5e3e4bb27}\label{generic_8c_a793c87571ac59fadacd623f5e3e4bb27}}
+\index{generic.\+c@{generic.\+c}!lobf@{lobf}}
+\index{lobf@{lobf}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{lobf()}{lobf()}}
+{\footnotesize\ttfamily void lobf (\begin{DoxyParamCaption}\item[{double $\ast$}]{m, }\item[{double $\ast$}]{b, }\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{n }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a5dbdc3cf42590d2c34e896c3d8b80b43}\label{generic_8c_a5dbdc3cf42590d2c34e896c3d8b80b43}}
+\index{generic.\+c@{generic.\+c}!lobfB@{lobfB}}
+\index{lobfB@{lobfB}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{lobf\+B()}{lobfB()}}
+{\footnotesize\ttfamily double lobfB (\begin{DoxyParamCaption}\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by lobf().
+
+\mbox{\Hypertarget{generic_8c_a3b620cbbbff502ed6c23af6cb3fc46b2}\label{generic_8c_a3b620cbbbff502ed6c23af6cb3fc46b2}}
+\index{generic.\+c@{generic.\+c}!lobfM@{lobfM}}
+\index{lobfM@{lobfM}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{lobf\+M()}{lobfM()}}
+{\footnotesize\ttfamily double lobfM (\begin{DoxyParamCaption}\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by lobf(), and lobf\+B().
+
+\mbox{\Hypertarget{generic_8c_a11003199b3d2783daca30d6c3110973b}\label{generic_8c_a11003199b3d2783daca30d6c3110973b}}
+\index{generic.\+c@{generic.\+c}!Log\+Error@{Log\+Error}}
+\index{Log\+Error@{Log\+Error}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Log\+Error()}{LogError()}}
+{\footnotesize\ttfamily void Log\+Error (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$}]{fp, }\item[{const int}]{mode, }\item[{const char $\ast$}]{fmt, }\item[{}]{... }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Free(), Mem\+\_\+\+Malloc(), Mem\+\_\+\+Re\+Alloc(), Open\+File(), S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{generic_8c_a42c27317771c079928bf61523b38adfa}\label{generic_8c_a42c27317771c079928bf61523b38adfa}}
+\index{generic.\+c@{generic.\+c}!st\+\_\+get\+Bounds@{st\+\_\+get\+Bounds}}
+\index{st\+\_\+get\+Bounds@{st\+\_\+get\+Bounds}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{st\+\_\+get\+Bounds()}{st\_getBounds()}}
+{\footnotesize\ttfamily void st\+\_\+get\+Bounds (\begin{DoxyParamCaption}\item[{unsigned int $\ast$}]{x1, }\item[{unsigned int $\ast$}]{x2, }\item[{unsigned int $\ast$}]{equal, }\item[{unsigned int}]{size, }\item[{double}]{depth, }\item[{double}]{bounds\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_af36c688653758da1ec0e97b2f8ad02a9}\label{generic_8c_af36c688653758da1ec0e97b2f8ad02a9}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+CompareI@{Str\+\_\+\+CompareI}}
+\index{Str\+\_\+\+CompareI@{Str\+\_\+\+CompareI}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Compare\+I()}{Str\_CompareI()}}
+{\footnotesize\ttfamily int Str\+\_\+\+CompareI (\begin{DoxyParamCaption}\item[{char $\ast$}]{t, }\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a9e6077882ab6b9ddbe0532b293a2ccf4}\label{generic_8c_a9e6077882ab6b9ddbe0532b293a2ccf4}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+To\+Lower@{Str\+\_\+\+To\+Lower}}
+\index{Str\+\_\+\+To\+Lower@{Str\+\_\+\+To\+Lower}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+To\+Lower()}{Str\_ToLower()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+To\+Lower (\begin{DoxyParamCaption}\item[{char $\ast$}]{s, }\item[{char $\ast$}]{r }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_ae76330d47526d546ea89a384fe788732}\label{generic_8c_ae76330d47526d546ea89a384fe788732}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+To\+Upper@{Str\+\_\+\+To\+Upper}}
+\index{Str\+\_\+\+To\+Upper@{Str\+\_\+\+To\+Upper}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+To\+Upper()}{Str\_ToUpper()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+To\+Upper (\begin{DoxyParamCaption}\item[{char $\ast$}]{s, }\item[{char $\ast$}]{r }\end{DoxyParamCaption})}
+
+
+
+Referenced by Str\+\_\+\+Compare\+I().
+
+\mbox{\Hypertarget{generic_8c_a6150637c525c3ca076ca7cc755e29db2}\label{generic_8c_a6150637c525c3ca076ca7cc755e29db2}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+Trim\+Left@{Str\+\_\+\+Trim\+Left}}
+\index{Str\+\_\+\+Trim\+Left@{Str\+\_\+\+Trim\+Left}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Left()}{Str\_TrimLeft()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+Left (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a9dd2b923dbcf0dcda1a436a5be02c09b}\label{generic_8c_a9dd2b923dbcf0dcda1a436a5be02c09b}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+Trim\+LeftQ@{Str\+\_\+\+Trim\+LeftQ}}
+\index{Str\+\_\+\+Trim\+LeftQ@{Str\+\_\+\+Trim\+LeftQ}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Left\+Q()}{Str\_TrimLeftQ()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+LeftQ (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a3156a3189c9286cf2c56384b9d4f00ba}\label{generic_8c_a3156a3189c9286cf2c56384b9d4f00ba}}
+\index{generic.\+c@{generic.\+c}!Str\+\_\+\+Trim\+Right@{Str\+\_\+\+Trim\+Right}}
+\index{Str\+\_\+\+Trim\+Right@{Str\+\_\+\+Trim\+Right}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Right()}{Str\_TrimRight()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+Right (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8c_a4ad34bbb851d33a77269262427d3b072}\label{generic_8c_a4ad34bbb851d33a77269262427d3b072}}
+\index{generic.\+c@{generic.\+c}!Un\+Comment@{Un\+Comment}}
+\index{Un\+Comment@{Un\+Comment}!generic.\+c@{generic.\+c}}
+\subsubsection{\texorpdfstring{Un\+Comment()}{UnComment()}}
+{\footnotesize\ttfamily void Un\+Comment (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+
+
+Referenced by Get\+A\+Line().
+
diff --git a/doc/latex/generic_8h.tex b/doc/latex/generic_8h.tex
new file mode 100644
index 000000000..0ebe5c8a1
--- /dev/null
+++ b/doc/latex/generic_8h.tex
@@ -0,0 +1,647 @@
+\hypertarget{generic_8h}{}\section{generic.\+h File Reference}
+\label{generic_8h}\index{generic.\+h@{generic.\+h}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$float.\+h$>$}\newline
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$assert.\+h$>$}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{generic_8h_a7c6368cf7d9d669e63321edc4f8929e1}{itob}(i)~((i)?T\+R\+U\+E\+:\+F\+A\+L\+SE)
+\item
+\#define \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(a, b)~(((a) $>$ (b)) ? (a) \+: (b))
+\item
+\#define \hyperlink{generic_8h_ac6afabdc09a49a433ee19d8a9486056d}{min}(a, b)~(((a) $<$ (b)) ? (a) \+: (b))
+\item
+\#define \hyperlink{generic_8h_ae55bc5afe1eabd76592c8e7a0c7b089c}{fmax}(a, b)~( ( \hyperlink{generic_8h_a8df7ad109bbbe1c1278157e968aecc1d}{GT}((a),(b)) ) ? (a) \+: (b))
+\item
+\#define \hyperlink{generic_8h_a3a446ef14fca6cda41a6634efdecdde6}{fmin}(a, b)~( ( \hyperlink{generic_8h_a375b5090161790d5783d4bdd92f3f750}{LT}((a),(b)) ) ? (a) \+: (b))
+\item
+\#define \hyperlink{generic_8h_a6a010865b10e541735fa2da8f3cd062d}{abs}(a)~( ( \hyperlink{generic_8h_a375b5090161790d5783d4bdd92f3f750}{LT}(a, 0.\+00) ) ? (-\/a) \+: (a) )
+\item
+\#define \hyperlink{generic_8h_ac4acb71b4114d72176466f9b52bf72ac}{sqrt}(x)~((sizeof(x)==sizeof(float)) ? sqrtf(x) \+: sqrt(x))
+\item
+\#define \hyperlink{generic_8h_aa1ff32598cc88bb9fc8bab0a24369ff3}{isnull}(a)~(N\+U\+LL == (a))
+\item
+\#define \hyperlink{generic_8h_a3da15c8b6dfbf1176ddeb33d5e40d3f9}{Year\+To4\+Digit}(y)
+\item
+\#define \hyperlink{generic_8h_aac1dbe1371c37f4c0d743a77108bb06e}{W\+E\+E\+K\+D\+A\+YS}~7
+\item
+\#define \hyperlink{generic_8h_a48da69c89756b1a25e3a7c618696fac9}{Doy2\+Week}(d)~((\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int})(((d)-\/1) /\hyperlink{generic_8h_aac1dbe1371c37f4c0d743a77108bb06e}{W\+E\+E\+K\+D\+A\+YS}))
+\item
+\#define \hyperlink{generic_8h_ae9894b66cd216d8ad25902a11ad2f941}{L\+O\+G\+N\+O\+TE}~0x01
+\item
+\#define \hyperlink{generic_8h_a4233bfd6249e6e43650106c6043808bb}{L\+O\+G\+W\+A\+RN}~0x02
+\item
+\#define \hyperlink{generic_8h_a29b9525322b08a5b2bb7fa30ebc48214}{L\+O\+G\+E\+R\+R\+OR}~0x04
+\item
+\#define \hyperlink{generic_8h_aa207fc3bd77ff692557b29468a5ca305}{L\+O\+G\+E\+X\+IT}~0x08
+\item
+\#define \hyperlink{generic_8h_ac082a1f175ecd155ccd9ee4bfafacb4a}{L\+O\+G\+F\+A\+T\+AL}~0x0c /$\ast$ L\+O\+G\+E\+X\+I\+T $\vert$ L\+O\+G\+E\+R\+R\+O\+R $\ast$/
+\item
+\#define \hyperlink{generic_8h_a7c213cc89d01ec9cdbaa3356698a86ce}{M\+A\+X\+\_\+\+E\+R\+R\+OR}~4096
+\item
+\#define \hyperlink{generic_8h_a0985d386e5604b94460bb60ac639d383}{F\+\_\+\+D\+E\+L\+TA}~(10$\ast$F\+L\+T\+\_\+\+E\+P\+S\+I\+L\+ON)
+\item
+\#define \hyperlink{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}{D\+\_\+\+D\+E\+L\+TA}~(10$\ast$D\+B\+L\+\_\+\+E\+P\+S\+I\+L\+ON)
+\item
+\#define \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y)~( (sizeof(x) == sizeof(float)) ? (\hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(\hyperlink{generic_8h_a0985d386e5604b94460bb60ac639d383}{F\+\_\+\+D\+E\+L\+TA}, F\+L\+T\+\_\+\+E\+P\+S\+I\+L\+ON $\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(fabs(x), fabs(y)))) \+: (\hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(\hyperlink{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}{D\+\_\+\+D\+E\+L\+TA}, D\+B\+L\+\_\+\+E\+P\+S\+I\+L\+ON $\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(fabs(x), fabs(y)))) )
+\item
+\#define \hyperlink{generic_8h_a10f769903592548e508a283bc2b31d42}{isless2}(x, y)~((x) $<$ ((y) -\/ \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y)))
+\item
+\#define \hyperlink{generic_8h_a88093fead5165843ef0498d47e621636}{ismore}(x, y)~((x) $>$ ((y) + \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y)))
+\item
+\#define \hyperlink{generic_8h_a25b8e4edb1775b70059a1a980aff6746}{iszero}(x)~( (sizeof(x) == sizeof(float)) ? (fabs(x) $<$= \hyperlink{generic_8h_a0985d386e5604b94460bb60ac639d383}{F\+\_\+\+D\+E\+L\+TA}) \+: (fabs(x) $<$= \hyperlink{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}{D\+\_\+\+D\+E\+L\+TA}) )
+\item
+\#define \hyperlink{generic_8h_a04d96a713785d741faaa620a475b745c}{isequal}(x, y)~(fabs((x) -\/ (y)) $<$= \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y))
+\item
+\#define \hyperlink{generic_8h_a9983412618e748f0ed750611860a2583}{Z\+RO}(x)~\hyperlink{generic_8h_a25b8e4edb1775b70059a1a980aff6746}{iszero}(x)
+\item
+\#define \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(x, y)~\hyperlink{generic_8h_a04d96a713785d741faaa620a475b745c}{isequal}(x,y)
+\item
+\#define \hyperlink{generic_8h_a375b5090161790d5783d4bdd92f3f750}{LT}(x, y)~\hyperlink{generic_8h_a10f769903592548e508a283bc2b31d42}{isless2}(x,y)
+\item
+\#define \hyperlink{generic_8h_a8df7ad109bbbe1c1278157e968aecc1d}{GT}(x, y)~\hyperlink{generic_8h_a88093fead5165843ef0498d47e621636}{ismore}(x,y)
+\item
+\#define \hyperlink{generic_8h_a2196b2e9c04f037b20b9c064276ee7c9}{LE}(x, y)~((x) $<$ (y) $\vert$$\vert$ \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(x,y))
+\item
+\#define \hyperlink{generic_8h_a14e32c27dc9b188856093ae003f78b5c}{GE}(x, y)~((x) $>$ (y) $\vert$$\vert$ \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(x,y))
+\item
+\#define \hyperlink{generic_8h_a547f3a33e6f36307e6b78d512e7ae8cb}{powe}(x, y)~(exp((y) $\ast$ log(x)))
+\item
+\#define \hyperlink{generic_8h_afbc7bc3d4affbba50477d4c7fb06cccd}{squared}(x)~\hyperlink{generic_8h_a547f3a33e6f36307e6b78d512e7ae8cb}{powe}(fabs(x), 2.\+0)
+\item
+\#define \hyperlink{generic_8h_a5863b1da36cc637653e94892978b74ad}{G\+E\+N\+E\+R\+I\+C\+\_\+H}
+\end{DoxyCompactItemize}
+\subsection*{Typedefs}
+\begin{DoxyCompactItemize}
+\item
+typedef float \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF}
+\item
+typedef double \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}
+\item
+typedef int \hyperlink{generic_8h_a7cc214a236ad3bb6ad435bdcf5262a3f}{Int}
+\item
+typedef unsigned int \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU}
+\item
+typedef short int \hyperlink{generic_8h_ad391d97dda769e4d573afb05c6196e70}{IntS}
+\item
+typedef unsigned short \hyperlink{generic_8h_a313988f3499dfdc18733ae046e2371dc}{Int\+US}
+\item
+typedef long \hyperlink{generic_8h_a0f993b6970226fa174326c1db4d0be0e}{IntL}
+\item
+typedef unsigned char \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte}
+\end{DoxyCompactItemize}
+\subsection*{Enumerations}
+\begin{DoxyCompactItemize}
+\item
+enum \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \{ \hyperlink{generic_8h_a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a}{F\+A\+L\+SE} = (1 != 1),
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309aa82764c3079aea4e60c80e45befbb839}{T\+R\+UE} = (1 == 1)
+ \}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+char $\ast$ \hyperlink{generic_8h_a3156a3189c9286cf2c56384b9d4f00ba}{Str\+\_\+\+Trim\+Right} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8h_a6150637c525c3ca076ca7cc755e29db2}{Str\+\_\+\+Trim\+Left} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8h_a9dd2b923dbcf0dcda1a436a5be02c09b}{Str\+\_\+\+Trim\+LeftQ} (char $\ast$s)
+\item
+char $\ast$ \hyperlink{generic_8h_ae76330d47526d546ea89a384fe788732}{Str\+\_\+\+To\+Upper} (char $\ast$s, char $\ast$r)
+\item
+char $\ast$ \hyperlink{generic_8h_a9e6077882ab6b9ddbe0532b293a2ccf4}{Str\+\_\+\+To\+Lower} (char $\ast$s, char $\ast$r)
+\item
+int \hyperlink{generic_8h_af36c688653758da1ec0e97b2f8ad02a9}{Str\+\_\+\+CompareI} (char $\ast$t, char $\ast$s)
+\item
+void \hyperlink{generic_8h_a4ad34bbb851d33a77269262427d3b072}{Un\+Comment} (char $\ast$s)
+\item
+void \hyperlink{generic_8h_a11003199b3d2783daca30d6c3110973b}{Log\+Error} (F\+I\+LE $\ast$fp, const int mode, const char $\ast$fmt,...)
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{generic_8h_a1b59895791915578f7b7f96aa7f8e7c4}{Is\+\_\+\+Leap\+Year} (int yr)
+\item
+double \hyperlink{generic_8h_ac88c9c5fc37398d47ba569ca8149fe41}{interpolation} (double x1, double x2, double y1, double y2, double deltaX)
+\item
+void \hyperlink{generic_8h_a42c27317771c079928bf61523b38adfa}{st\+\_\+get\+Bounds} (unsigned int $\ast$x1, unsigned int $\ast$x2, unsigned int $\ast$equal, unsigned int size, double depth, double bounds\mbox{[}$\,$\mbox{]})
+\item
+double \hyperlink{generic_8h_a3b620cbbbff502ed6c23af6cb3fc46b2}{lobfM} (double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int n)
+\item
+double \hyperlink{generic_8h_a5dbdc3cf42590d2c34e896c3d8b80b43}{lobfB} (double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int n)
+\item
+void \hyperlink{generic_8h_ad5a5ff1aa26b8bf3e12f3f1170b73f62}{lobf} (double $\ast$m, double $\ast$b, double xs\mbox{[}$\,$\mbox{]}, double ys\mbox{[}$\,$\mbox{]}, unsigned int size)
+\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+F\+I\+LE $\ast$ \hyperlink{generic_8h_ac16dab5cefce6fed135c20d1bae372a5}{logfp}
+\item
+char \hyperlink{generic_8h_afafc43142ae143f6f7a354ef676f24a2}{errstr} \mbox{[}$\,$\mbox{]}
+\item
+int \hyperlink{generic_8h_ada051a4499e33e1d0fe82eeeee6d1699}{logged}
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{generic_8h_a6a010865b10e541735fa2da8f3cd062d}\label{generic_8h_a6a010865b10e541735fa2da8f3cd062d}}
+\index{generic.\+h@{generic.\+h}!abs@{abs}}
+\index{abs@{abs}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{abs}{abs}}
+{\footnotesize\ttfamily \#define abs(\begin{DoxyParamCaption}\item[{}]{a }\end{DoxyParamCaption})~( ( \hyperlink{generic_8h_a375b5090161790d5783d4bdd92f3f750}{LT}(a, 0.\+00) ) ? (-\/a) \+: (a) )}
+
+
+
+Referenced by Rand\+Seed(), and Rand\+Uni\+\_\+good().
+
+\mbox{\Hypertarget{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}\label{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}}
+\index{generic.\+h@{generic.\+h}!D\+\_\+\+D\+E\+L\+TA@{D\+\_\+\+D\+E\+L\+TA}}
+\index{D\+\_\+\+D\+E\+L\+TA@{D\+\_\+\+D\+E\+L\+TA}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{D\+\_\+\+D\+E\+L\+TA}{D\_DELTA}}
+{\footnotesize\ttfamily \#define D\+\_\+\+D\+E\+L\+TA~(10$\ast$D\+B\+L\+\_\+\+E\+P\+S\+I\+L\+ON)}
+
+\mbox{\Hypertarget{generic_8h_a48da69c89756b1a25e3a7c618696fac9}\label{generic_8h_a48da69c89756b1a25e3a7c618696fac9}}
+\index{generic.\+h@{generic.\+h}!Doy2\+Week@{Doy2\+Week}}
+\index{Doy2\+Week@{Doy2\+Week}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Doy2\+Week}{Doy2Week}}
+{\footnotesize\ttfamily \#define Doy2\+Week(\begin{DoxyParamCaption}\item[{}]{d }\end{DoxyParamCaption})~((\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int})(((d)-\/1) /\hyperlink{generic_8h_aac1dbe1371c37f4c0d743a77108bb06e}{W\+E\+E\+K\+D\+A\+YS}))}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{generic_8h_a67a26698612a951cb54a963f77cee538}\label{generic_8h_a67a26698612a951cb54a963f77cee538}}
+\index{generic.\+h@{generic.\+h}!EQ@{EQ}}
+\index{EQ@{EQ}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{EQ}{EQ}}
+{\footnotesize\ttfamily \#define EQ(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~\hyperlink{generic_8h_a04d96a713785d741faaa620a475b745c}{isequal}(x,y)}
+
+
+
+Referenced by lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature(), st\+\_\+get\+Bounds(), and S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{generic_8h_a0985d386e5604b94460bb60ac639d383}\label{generic_8h_a0985d386e5604b94460bb60ac639d383}}
+\index{generic.\+h@{generic.\+h}!F\+\_\+\+D\+E\+L\+TA@{F\+\_\+\+D\+E\+L\+TA}}
+\index{F\+\_\+\+D\+E\+L\+TA@{F\+\_\+\+D\+E\+L\+TA}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{F\+\_\+\+D\+E\+L\+TA}{F\_DELTA}}
+{\footnotesize\ttfamily \#define F\+\_\+\+D\+E\+L\+TA~(10$\ast$F\+L\+T\+\_\+\+E\+P\+S\+I\+L\+ON)}
+
+\mbox{\Hypertarget{generic_8h_ae55bc5afe1eabd76592c8e7a0c7b089c}\label{generic_8h_ae55bc5afe1eabd76592c8e7a0c7b089c}}
+\index{generic.\+h@{generic.\+h}!fmax@{fmax}}
+\index{fmax@{fmax}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{fmax}{fmax}}
+{\footnotesize\ttfamily \#define fmax(\begin{DoxyParamCaption}\item[{}]{a, }\item[{}]{b }\end{DoxyParamCaption})~( ( \hyperlink{generic_8h_a8df7ad109bbbe1c1278157e968aecc1d}{GT}((a),(b)) ) ? (a) \+: (b))}
+
+
+
+Referenced by forb\+\_\+intercepted\+\_\+water(), grass\+\_\+intercepted\+\_\+water(), litter\+\_\+intercepted\+\_\+water(), petfunc(), shrub\+\_\+intercepted\+\_\+water(), surface\+\_\+temperature\+\_\+under\+\_\+snow(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+V\+W\+C\+Bulk\+Res(), tree\+\_\+intercepted\+\_\+water(), and watrate().
+
+\mbox{\Hypertarget{generic_8h_a3a446ef14fca6cda41a6634efdecdde6}\label{generic_8h_a3a446ef14fca6cda41a6634efdecdde6}}
+\index{generic.\+h@{generic.\+h}!fmin@{fmin}}
+\index{fmin@{fmin}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{fmin}{fmin}}
+{\footnotesize\ttfamily \#define fmin(\begin{DoxyParamCaption}\item[{}]{a, }\item[{}]{b }\end{DoxyParamCaption})~( ( \hyperlink{generic_8h_a375b5090161790d5783d4bdd92f3f750}{LT}((a),(b)) ) ? (a) \+: (b))}
+
+
+
+Referenced by forb\+\_\+\+Es\+T\+\_\+partitioning(), forb\+\_\+intercepted\+\_\+water(), grass\+\_\+\+Es\+T\+\_\+partitioning(), grass\+\_\+intercepted\+\_\+water(), litter\+\_\+intercepted\+\_\+water(), pot\+\_\+transp(), shrub\+\_\+\+Es\+T\+\_\+partitioning(), shrub\+\_\+intercepted\+\_\+water(), transp\+\_\+weighted\+\_\+avg(), tree\+\_\+\+Es\+T\+\_\+partitioning(), tree\+\_\+intercepted\+\_\+water(), and watrate().
+
+\mbox{\Hypertarget{generic_8h_a14e32c27dc9b188856093ae003f78b5c}\label{generic_8h_a14e32c27dc9b188856093ae003f78b5c}}
+\index{generic.\+h@{generic.\+h}!GE@{GE}}
+\index{GE@{GE}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{GE}{GE}}
+{\footnotesize\ttfamily \#define GE(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~((x) $>$ (y) $\vert$$\vert$ \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(x,y))}
+
+
+
+Referenced by lyr\+Soil\+\_\+to\+\_\+lyr\+Temp(), pot\+\_\+soil\+\_\+evap(), pot\+\_\+transp(), st\+\_\+get\+Bounds(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{generic_8h_a5863b1da36cc637653e94892978b74ad}\label{generic_8h_a5863b1da36cc637653e94892978b74ad}}
+\index{generic.\+h@{generic.\+h}!G\+E\+N\+E\+R\+I\+C\+\_\+H@{G\+E\+N\+E\+R\+I\+C\+\_\+H}}
+\index{G\+E\+N\+E\+R\+I\+C\+\_\+H@{G\+E\+N\+E\+R\+I\+C\+\_\+H}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{G\+E\+N\+E\+R\+I\+C\+\_\+H}{GENERIC\_H}}
+{\footnotesize\ttfamily \#define G\+E\+N\+E\+R\+I\+C\+\_\+H}
+
+\mbox{\Hypertarget{generic_8h_a66785db10ccce58e71eb3555c09188b0}\label{generic_8h_a66785db10ccce58e71eb3555c09188b0}}
+\index{generic.\+h@{generic.\+h}!G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA@{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}}
+\index{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA@{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}{GET\_F\_DELTA}}
+{\footnotesize\ttfamily \#define G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~( (sizeof(x) == sizeof(float)) ? (\hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(\hyperlink{generic_8h_a0985d386e5604b94460bb60ac639d383}{F\+\_\+\+D\+E\+L\+TA}, F\+L\+T\+\_\+\+E\+P\+S\+I\+L\+ON $\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(fabs(x), fabs(y)))) \+: (\hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(\hyperlink{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}{D\+\_\+\+D\+E\+L\+TA}, D\+B\+L\+\_\+\+E\+P\+S\+I\+L\+ON $\ast$ \hyperlink{generic_8h_affe776513b24d84b39af8ab0930fef7f}{max}(fabs(x), fabs(y)))) )}
+
+\mbox{\Hypertarget{generic_8h_a8df7ad109bbbe1c1278157e968aecc1d}\label{generic_8h_a8df7ad109bbbe1c1278157e968aecc1d}}
+\index{generic.\+h@{generic.\+h}!GT@{GT}}
+\index{GT@{GT}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{GT}{GT}}
+{\footnotesize\ttfamily \#define GT(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~\hyperlink{generic_8h_a88093fead5165843ef0498d47e621636}{ismore}(x,y)}
+
+
+
+Referenced by evap\+\_\+from\+Surface(), forb\+\_\+intercepted\+\_\+water(), grass\+\_\+intercepted\+\_\+water(), litter\+\_\+intercepted\+\_\+water(), lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature(), shrub\+\_\+intercepted\+\_\+water(), st\+\_\+get\+Bounds(), S\+W\+\_\+\+M\+K\+V\+\_\+today(), S\+W\+\_\+\+Snow\+Depth(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), S\+W\+\_\+\+V\+P\+D\+\_\+init(), transp\+\_\+weighted\+\_\+avg(), and tree\+\_\+intercepted\+\_\+water().
+
+\mbox{\Hypertarget{generic_8h_a04d96a713785d741faaa620a475b745c}\label{generic_8h_a04d96a713785d741faaa620a475b745c}}
+\index{generic.\+h@{generic.\+h}!isequal@{isequal}}
+\index{isequal@{isequal}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{isequal}{isequal}}
+{\footnotesize\ttfamily \#define isequal(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~(fabs((x) -\/ (y)) $<$= \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y))}
+
+\mbox{\Hypertarget{generic_8h_a10f769903592548e508a283bc2b31d42}\label{generic_8h_a10f769903592548e508a283bc2b31d42}}
+\index{generic.\+h@{generic.\+h}!isless2@{isless2}}
+\index{isless2@{isless2}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{isless2}{isless2}}
+{\footnotesize\ttfamily \#define isless2(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~((x) $<$ ((y) -\/ \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y)))}
+
+\mbox{\Hypertarget{generic_8h_a88093fead5165843ef0498d47e621636}\label{generic_8h_a88093fead5165843ef0498d47e621636}}
+\index{generic.\+h@{generic.\+h}!ismore@{ismore}}
+\index{ismore@{ismore}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{ismore}{ismore}}
+{\footnotesize\ttfamily \#define ismore(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~((x) $>$ ((y) + \hyperlink{generic_8h_a66785db10ccce58e71eb3555c09188b0}{G\+E\+T\+\_\+\+F\+\_\+\+D\+E\+L\+TA}(x, y)))}
+
+\mbox{\Hypertarget{generic_8h_aa1ff32598cc88bb9fc8bab0a24369ff3}\label{generic_8h_aa1ff32598cc88bb9fc8bab0a24369ff3}}
+\index{generic.\+h@{generic.\+h}!isnull@{isnull}}
+\index{isnull@{isnull}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{isnull}{isnull}}
+{\footnotesize\ttfamily \#define isnull(\begin{DoxyParamCaption}\item[{}]{a }\end{DoxyParamCaption})~(N\+U\+LL == (a))}
+
+
+
+Referenced by Get\+A\+Line(), Mk\+Dir(), Open\+File(), S\+W\+\_\+\+F\+\_\+read(), and S\+W\+\_\+\+O\+U\+T\+\_\+construct().
+
+\mbox{\Hypertarget{generic_8h_a25b8e4edb1775b70059a1a980aff6746}\label{generic_8h_a25b8e4edb1775b70059a1a980aff6746}}
+\index{generic.\+h@{generic.\+h}!iszero@{iszero}}
+\index{iszero@{iszero}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{iszero}{iszero}}
+{\footnotesize\ttfamily \#define iszero(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~( (sizeof(x) == sizeof(float)) ? (fabs(x) $<$= \hyperlink{generic_8h_a0985d386e5604b94460bb60ac639d383}{F\+\_\+\+D\+E\+L\+TA}) \+: (fabs(x) $<$= \hyperlink{generic_8h_a5c3660640cebde8a951b74d847b3dfeb}{D\+\_\+\+D\+E\+L\+TA}) )}
+
+\mbox{\Hypertarget{generic_8h_a7c6368cf7d9d669e63321edc4f8929e1}\label{generic_8h_a7c6368cf7d9d669e63321edc4f8929e1}}
+\index{generic.\+h@{generic.\+h}!itob@{itob}}
+\index{itob@{itob}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{itob}{itob}}
+{\footnotesize\ttfamily \#define itob(\begin{DoxyParamCaption}\item[{}]{i }\end{DoxyParamCaption})~((i)?T\+R\+U\+E\+:\+F\+A\+L\+SE)}
+
+\mbox{\Hypertarget{generic_8h_a2196b2e9c04f037b20b9c064276ee7c9}\label{generic_8h_a2196b2e9c04f037b20b9c064276ee7c9}}
+\index{generic.\+h@{generic.\+h}!LE@{LE}}
+\index{LE@{LE}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{LE}{LE}}
+{\footnotesize\ttfamily \#define LE(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~((x) $<$ (y) $\vert$$\vert$ \hyperlink{generic_8h_a67a26698612a951cb54a963f77cee538}{EQ}(x,y))}
+
+
+
+Referenced by lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature(), pot\+\_\+transp(), st\+\_\+get\+Bounds(), S\+W\+\_\+\+M\+K\+V\+\_\+today(), and S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow().
+
+\mbox{\Hypertarget{generic_8h_a29b9525322b08a5b2bb7fa30ebc48214}\label{generic_8h_a29b9525322b08a5b2bb7fa30ebc48214}}
+\index{generic.\+h@{generic.\+h}!L\+O\+G\+E\+R\+R\+OR@{L\+O\+G\+E\+R\+R\+OR}}
+\index{L\+O\+G\+E\+R\+R\+OR@{L\+O\+G\+E\+R\+R\+OR}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{L\+O\+G\+E\+R\+R\+OR}{LOGERROR}}
+{\footnotesize\ttfamily \#define L\+O\+G\+E\+R\+R\+OR~0x04}
+
+
+
+Referenced by Log\+Error(), and Open\+File().
+
+\mbox{\Hypertarget{generic_8h_aa207fc3bd77ff692557b29468a5ca305}\label{generic_8h_aa207fc3bd77ff692557b29468a5ca305}}
+\index{generic.\+h@{generic.\+h}!L\+O\+G\+E\+X\+IT@{L\+O\+G\+E\+X\+IT}}
+\index{L\+O\+G\+E\+X\+IT@{L\+O\+G\+E\+X\+IT}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{L\+O\+G\+E\+X\+IT}{LOGEXIT}}
+{\footnotesize\ttfamily \#define L\+O\+G\+E\+X\+IT~0x08}
+
+
+
+Referenced by Log\+Error(), and Open\+File().
+
+\mbox{\Hypertarget{generic_8h_ac082a1f175ecd155ccd9ee4bfafacb4a}\label{generic_8h_ac082a1f175ecd155ccd9ee4bfafacb4a}}
+\index{generic.\+h@{generic.\+h}!L\+O\+G\+F\+A\+T\+AL@{L\+O\+G\+F\+A\+T\+AL}}
+\index{L\+O\+G\+F\+A\+T\+AL@{L\+O\+G\+F\+A\+T\+AL}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{L\+O\+G\+F\+A\+T\+AL}{LOGFATAL}}
+{\footnotesize\ttfamily \#define L\+O\+G\+F\+A\+T\+AL~0x0c /$\ast$ L\+O\+G\+E\+X\+I\+T $\vert$ L\+O\+G\+E\+R\+R\+O\+R $\ast$/}
+
+
+
+Referenced by Mem\+\_\+\+Free(), Mem\+\_\+\+Malloc(), Mem\+\_\+\+Re\+Alloc(), S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{generic_8h_ae9894b66cd216d8ad25902a11ad2f941}\label{generic_8h_ae9894b66cd216d8ad25902a11ad2f941}}
+\index{generic.\+h@{generic.\+h}!L\+O\+G\+N\+O\+TE@{L\+O\+G\+N\+O\+TE}}
+\index{L\+O\+G\+N\+O\+TE@{L\+O\+G\+N\+O\+TE}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{L\+O\+G\+N\+O\+TE}{LOGNOTE}}
+{\footnotesize\ttfamily \#define L\+O\+G\+N\+O\+TE~0x01}
+
+
+
+Referenced by Log\+Error().
+
+\mbox{\Hypertarget{generic_8h_a4233bfd6249e6e43650106c6043808bb}\label{generic_8h_a4233bfd6249e6e43650106c6043808bb}}
+\index{generic.\+h@{generic.\+h}!L\+O\+G\+W\+A\+RN@{L\+O\+G\+W\+A\+RN}}
+\index{L\+O\+G\+W\+A\+RN@{L\+O\+G\+W\+A\+RN}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{L\+O\+G\+W\+A\+RN}{LOGWARN}}
+{\footnotesize\ttfamily \#define L\+O\+G\+W\+A\+RN~0x02}
+
+
+
+Referenced by Log\+Error(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{generic_8h_a375b5090161790d5783d4bdd92f3f750}\label{generic_8h_a375b5090161790d5783d4bdd92f3f750}}
+\index{generic.\+h@{generic.\+h}!LT@{LT}}
+\index{LT@{LT}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{LT}{LT}}
+{\footnotesize\ttfamily \#define LT(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~\hyperlink{generic_8h_a10f769903592548e508a283bc2b31d42}{isless2}(x,y)}
+
+
+
+Referenced by lyr\+Soil\+\_\+to\+\_\+lyr\+Temp(), lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature(), lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature(), st\+\_\+get\+Bounds(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), and watrate().
+
+\mbox{\Hypertarget{generic_8h_affe776513b24d84b39af8ab0930fef7f}\label{generic_8h_affe776513b24d84b39af8ab0930fef7f}}
+\index{generic.\+h@{generic.\+h}!max@{max}}
+\index{max@{max}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{max}{max}}
+{\footnotesize\ttfamily \#define max(\begin{DoxyParamCaption}\item[{}]{a, }\item[{}]{b }\end{DoxyParamCaption})~(((a) $>$ (b)) ? (a) \+: (b))}
+
+
+
+Referenced by Rand\+Beta(), Rand\+Uni\+\_\+fast(), Rand\+Uni\+\_\+good(), S\+W\+\_\+\+M\+K\+V\+\_\+today(), and S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{generic_8h_a7c213cc89d01ec9cdbaa3356698a86ce}\label{generic_8h_a7c213cc89d01ec9cdbaa3356698a86ce}}
+\index{generic.\+h@{generic.\+h}!M\+A\+X\+\_\+\+E\+R\+R\+OR@{M\+A\+X\+\_\+\+E\+R\+R\+OR}}
+\index{M\+A\+X\+\_\+\+E\+R\+R\+OR@{M\+A\+X\+\_\+\+E\+R\+R\+OR}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{M\+A\+X\+\_\+\+E\+R\+R\+OR}{MAX\_ERROR}}
+{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+E\+R\+R\+OR~4096}
+
+\mbox{\Hypertarget{generic_8h_ac6afabdc09a49a433ee19d8a9486056d}\label{generic_8h_ac6afabdc09a49a433ee19d8a9486056d}}
+\index{generic.\+h@{generic.\+h}!min@{min}}
+\index{min@{min}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{min}{min}}
+{\footnotesize\ttfamily \#define min(\begin{DoxyParamCaption}\item[{}]{a, }\item[{}]{b }\end{DoxyParamCaption})~(((a) $<$ (b)) ? (a) \+: (b))}
+
+
+
+Referenced by Rand\+Beta(), Rand\+Uni\+\_\+fast(), Rand\+Uni\+\_\+good(), and S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{generic_8h_a547f3a33e6f36307e6b78d512e7ae8cb}\label{generic_8h_a547f3a33e6f36307e6b78d512e7ae8cb}}
+\index{generic.\+h@{generic.\+h}!powe@{powe}}
+\index{powe@{powe}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{powe}{powe}}
+{\footnotesize\ttfamily \#define powe(\begin{DoxyParamCaption}\item[{}]{x, }\item[{}]{y }\end{DoxyParamCaption})~(exp((y) $\ast$ log(x)))}
+
+
+
+Referenced by petfunc(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{generic_8h_ac4acb71b4114d72176466f9b52bf72ac}\label{generic_8h_ac4acb71b4114d72176466f9b52bf72ac}}
+\index{generic.\+h@{generic.\+h}!sqrt@{sqrt}}
+\index{sqrt@{sqrt}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{sqrt}{sqrt}}
+{\footnotesize\ttfamily \#define sqrt(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~((sizeof(x)==sizeof(float)) ? sqrtf(x) \+: sqrt(x))}
+
+
+
+Referenced by petfunc(), Rand\+Beta(), and Rand\+Norm().
+
+\mbox{\Hypertarget{generic_8h_afbc7bc3d4affbba50477d4c7fb06cccd}\label{generic_8h_afbc7bc3d4affbba50477d4c7fb06cccd}}
+\index{generic.\+h@{generic.\+h}!squared@{squared}}
+\index{squared@{squared}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{squared}{squared}}
+{\footnotesize\ttfamily \#define squared(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\hyperlink{generic_8h_a547f3a33e6f36307e6b78d512e7ae8cb}{powe}(fabs(x), 2.\+0)}
+
+
+
+Referenced by lobf\+M(), and S\+W\+\_\+\+V\+W\+C\+Bulk\+Res().
+
+\mbox{\Hypertarget{generic_8h_aac1dbe1371c37f4c0d743a77108bb06e}\label{generic_8h_aac1dbe1371c37f4c0d743a77108bb06e}}
+\index{generic.\+h@{generic.\+h}!W\+E\+E\+K\+D\+A\+YS@{W\+E\+E\+K\+D\+A\+YS}}
+\index{W\+E\+E\+K\+D\+A\+YS@{W\+E\+E\+K\+D\+A\+YS}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{W\+E\+E\+K\+D\+A\+YS}{WEEKDAYS}}
+{\footnotesize\ttfamily \#define W\+E\+E\+K\+D\+A\+YS~7}
+
+\mbox{\Hypertarget{generic_8h_a3da15c8b6dfbf1176ddeb33d5e40d3f9}\label{generic_8h_a3da15c8b6dfbf1176ddeb33d5e40d3f9}}
+\index{generic.\+h@{generic.\+h}!Year\+To4\+Digit@{Year\+To4\+Digit}}
+\index{Year\+To4\+Digit@{Year\+To4\+Digit}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Year\+To4\+Digit}{YearTo4Digit}}
+{\footnotesize\ttfamily \#define Year\+To4\+Digit(\begin{DoxyParamCaption}\item[{}]{y }\end{DoxyParamCaption})}
+
+{\bfseries Value\+:}
+\begin{DoxyCode}
+((\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{TimeInt})(( (y) > 100) \(\backslash\)
+ ? (y) \(\backslash\)
+ : ((y)<50) ? 2000+(y) \(\backslash\)
+ : 1900+(y) ) )
+\end{DoxyCode}
+\mbox{\Hypertarget{generic_8h_a9983412618e748f0ed750611860a2583}\label{generic_8h_a9983412618e748f0ed750611860a2583}}
+\index{generic.\+h@{generic.\+h}!Z\+RO@{Z\+RO}}
+\index{Z\+RO@{Z\+RO}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Z\+RO}{ZRO}}
+{\footnotesize\ttfamily \#define Z\+RO(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\hyperlink{generic_8h_a25b8e4edb1775b70059a1a980aff6746}{iszero}(x)}
+
+
+
+Referenced by litter\+\_\+intercepted\+\_\+water(), S\+W\+\_\+\+M\+K\+V\+\_\+today(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+
+
+\subsection{Typedef Documentation}
+\mbox{\Hypertarget{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}\label{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}}
+\index{generic.\+h@{generic.\+h}!byte@{byte}}
+\index{byte@{byte}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{byte}{byte}}
+{\footnotesize\ttfamily typedef unsigned char \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte}}
+
+\mbox{\Hypertarget{generic_8h_a7cc214a236ad3bb6ad435bdcf5262a3f}\label{generic_8h_a7cc214a236ad3bb6ad435bdcf5262a3f}}
+\index{generic.\+h@{generic.\+h}!Int@{Int}}
+\index{Int@{Int}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Int}{Int}}
+{\footnotesize\ttfamily typedef int \hyperlink{generic_8h_a7cc214a236ad3bb6ad435bdcf5262a3f}{Int}}
+
+\mbox{\Hypertarget{generic_8h_a0f993b6970226fa174326c1db4d0be0e}\label{generic_8h_a0f993b6970226fa174326c1db4d0be0e}}
+\index{generic.\+h@{generic.\+h}!IntL@{IntL}}
+\index{IntL@{IntL}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{IntL}{IntL}}
+{\footnotesize\ttfamily typedef long \hyperlink{generic_8h_a0f993b6970226fa174326c1db4d0be0e}{IntL}}
+
+\mbox{\Hypertarget{generic_8h_ad391d97dda769e4d573afb05c6196e70}\label{generic_8h_ad391d97dda769e4d573afb05c6196e70}}
+\index{generic.\+h@{generic.\+h}!IntS@{IntS}}
+\index{IntS@{IntS}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{IntS}{IntS}}
+{\footnotesize\ttfamily typedef short int \hyperlink{generic_8h_ad391d97dda769e4d573afb05c6196e70}{IntS}}
+
+\mbox{\Hypertarget{generic_8h_a9c7b81b51177020e4735ba49298cf62b}\label{generic_8h_a9c7b81b51177020e4735ba49298cf62b}}
+\index{generic.\+h@{generic.\+h}!IntU@{IntU}}
+\index{IntU@{IntU}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{IntU}{IntU}}
+{\footnotesize\ttfamily typedef unsigned int \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU}}
+
+\mbox{\Hypertarget{generic_8h_a313988f3499dfdc18733ae046e2371dc}\label{generic_8h_a313988f3499dfdc18733ae046e2371dc}}
+\index{generic.\+h@{generic.\+h}!Int\+US@{Int\+US}}
+\index{Int\+US@{Int\+US}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Int\+US}{IntUS}}
+{\footnotesize\ttfamily typedef unsigned short \hyperlink{generic_8h_a313988f3499dfdc18733ae046e2371dc}{Int\+US}}
+
+\mbox{\Hypertarget{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}\label{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}}
+\index{generic.\+h@{generic.\+h}!RealD@{RealD}}
+\index{RealD@{RealD}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{RealD}{RealD}}
+{\footnotesize\ttfamily typedef double \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}}
+
+\mbox{\Hypertarget{generic_8h_a94d667c93da0511f21142d988f67674f}\label{generic_8h_a94d667c93da0511f21142d988f67674f}}
+\index{generic.\+h@{generic.\+h}!RealF@{RealF}}
+\index{RealF@{RealF}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{RealF}{RealF}}
+{\footnotesize\ttfamily typedef float \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF}}
+
+
+
+\subsection{Enumeration Type Documentation}
+\mbox{\Hypertarget{generic_8h_a39db6982619d623273fad8a383489309}\label{generic_8h_a39db6982619d623273fad8a383489309}}
+\index{generic.\+h@{generic.\+h}!Bool@{Bool}}
+\index{Bool@{Bool}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Bool}{Bool}}
+{\footnotesize\ttfamily enum \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool}}
+
+\begin{DoxyEnumFields}{Enumerator}
+\raisebox{\heightof{T}}[0pt][0pt]{\index{F\+A\+L\+SE@{F\+A\+L\+SE}!generic.\+h@{generic.\+h}}\index{generic.\+h@{generic.\+h}!F\+A\+L\+SE@{F\+A\+L\+SE}}}\mbox{\Hypertarget{generic_8h_a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a}\label{generic_8h_a39db6982619d623273fad8a383489309aa1e095cc966dbecf6a0d8aad75348d1a}}
+F\+A\+L\+SE&\\
+\hline
+
+\raisebox{\heightof{T}}[0pt][0pt]{\index{T\+R\+UE@{T\+R\+UE}!generic.\+h@{generic.\+h}}\index{generic.\+h@{generic.\+h}!T\+R\+UE@{T\+R\+UE}}}\mbox{\Hypertarget{generic_8h_a39db6982619d623273fad8a383489309aa82764c3079aea4e60c80e45befbb839}\label{generic_8h_a39db6982619d623273fad8a383489309aa82764c3079aea4e60c80e45befbb839}}
+T\+R\+UE&\\
+\hline
+
+\end{DoxyEnumFields}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{generic_8h_ac88c9c5fc37398d47ba569ca8149fe41}\label{generic_8h_ac88c9c5fc37398d47ba569ca8149fe41}}
+\index{generic.\+h@{generic.\+h}!interpolation@{interpolation}}
+\index{interpolation@{interpolation}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{interpolation()}{interpolation()}}
+{\footnotesize\ttfamily double interpolation (\begin{DoxyParamCaption}\item[{double}]{x1, }\item[{double}]{x2, }\item[{double}]{y1, }\item[{double}]{y2, }\item[{double}]{deltaX }\end{DoxyParamCaption})}
+
+
+
+Referenced by lyr\+Soil\+\_\+to\+\_\+lyr\+Temp\+\_\+temperature(), and lyr\+Temp\+\_\+to\+\_\+lyr\+Soil\+\_\+temperature().
+
+\mbox{\Hypertarget{generic_8h_a1b59895791915578f7b7f96aa7f8e7c4}\label{generic_8h_a1b59895791915578f7b7f96aa7f8e7c4}}
+\index{generic.\+h@{generic.\+h}!Is\+\_\+\+Leap\+Year@{Is\+\_\+\+Leap\+Year}}
+\index{Is\+\_\+\+Leap\+Year@{Is\+\_\+\+Leap\+Year}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Is\+\_\+\+Leap\+Year()}{Is\_LeapYear()}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Is\+\_\+\+Leap\+Year (\begin{DoxyParamCaption}\item[{int}]{yr }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_ad5a5ff1aa26b8bf3e12f3f1170b73f62}\label{generic_8h_ad5a5ff1aa26b8bf3e12f3f1170b73f62}}
+\index{generic.\+h@{generic.\+h}!lobf@{lobf}}
+\index{lobf@{lobf}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{lobf()}{lobf()}}
+{\footnotesize\ttfamily void lobf (\begin{DoxyParamCaption}\item[{double $\ast$}]{m, }\item[{double $\ast$}]{b, }\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{size }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_a5dbdc3cf42590d2c34e896c3d8b80b43}\label{generic_8h_a5dbdc3cf42590d2c34e896c3d8b80b43}}
+\index{generic.\+h@{generic.\+h}!lobfB@{lobfB}}
+\index{lobfB@{lobfB}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{lobf\+B()}{lobfB()}}
+{\footnotesize\ttfamily double lobfB (\begin{DoxyParamCaption}\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by lobf().
+
+\mbox{\Hypertarget{generic_8h_a3b620cbbbff502ed6c23af6cb3fc46b2}\label{generic_8h_a3b620cbbbff502ed6c23af6cb3fc46b2}}
+\index{generic.\+h@{generic.\+h}!lobfM@{lobfM}}
+\index{lobfM@{lobfM}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{lobf\+M()}{lobfM()}}
+{\footnotesize\ttfamily double lobfM (\begin{DoxyParamCaption}\item[{double}]{xs\mbox{[}$\,$\mbox{]}, }\item[{double}]{ys\mbox{[}$\,$\mbox{]}, }\item[{unsigned int}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by lobf(), and lobf\+B().
+
+\mbox{\Hypertarget{generic_8h_a11003199b3d2783daca30d6c3110973b}\label{generic_8h_a11003199b3d2783daca30d6c3110973b}}
+\index{generic.\+h@{generic.\+h}!Log\+Error@{Log\+Error}}
+\index{Log\+Error@{Log\+Error}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Log\+Error()}{LogError()}}
+{\footnotesize\ttfamily void Log\+Error (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$}]{fp, }\item[{const int}]{mode, }\item[{const char $\ast$}]{fmt, }\item[{}]{... }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Free(), Mem\+\_\+\+Malloc(), Mem\+\_\+\+Re\+Alloc(), Open\+File(), S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{generic_8h_a42c27317771c079928bf61523b38adfa}\label{generic_8h_a42c27317771c079928bf61523b38adfa}}
+\index{generic.\+h@{generic.\+h}!st\+\_\+get\+Bounds@{st\+\_\+get\+Bounds}}
+\index{st\+\_\+get\+Bounds@{st\+\_\+get\+Bounds}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{st\+\_\+get\+Bounds()}{st\_getBounds()}}
+{\footnotesize\ttfamily void st\+\_\+get\+Bounds (\begin{DoxyParamCaption}\item[{unsigned int $\ast$}]{x1, }\item[{unsigned int $\ast$}]{x2, }\item[{unsigned int $\ast$}]{equal, }\item[{unsigned int}]{size, }\item[{double}]{depth, }\item[{double}]{bounds\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_af36c688653758da1ec0e97b2f8ad02a9}\label{generic_8h_af36c688653758da1ec0e97b2f8ad02a9}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+CompareI@{Str\+\_\+\+CompareI}}
+\index{Str\+\_\+\+CompareI@{Str\+\_\+\+CompareI}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Compare\+I()}{Str\_CompareI()}}
+{\footnotesize\ttfamily int Str\+\_\+\+CompareI (\begin{DoxyParamCaption}\item[{char $\ast$}]{t, }\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_a9e6077882ab6b9ddbe0532b293a2ccf4}\label{generic_8h_a9e6077882ab6b9ddbe0532b293a2ccf4}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+To\+Lower@{Str\+\_\+\+To\+Lower}}
+\index{Str\+\_\+\+To\+Lower@{Str\+\_\+\+To\+Lower}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+To\+Lower()}{Str\_ToLower()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+To\+Lower (\begin{DoxyParamCaption}\item[{char $\ast$}]{s, }\item[{char $\ast$}]{r }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_ae76330d47526d546ea89a384fe788732}\label{generic_8h_ae76330d47526d546ea89a384fe788732}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+To\+Upper@{Str\+\_\+\+To\+Upper}}
+\index{Str\+\_\+\+To\+Upper@{Str\+\_\+\+To\+Upper}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+To\+Upper()}{Str\_ToUpper()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+To\+Upper (\begin{DoxyParamCaption}\item[{char $\ast$}]{s, }\item[{char $\ast$}]{r }\end{DoxyParamCaption})}
+
+
+
+Referenced by Str\+\_\+\+Compare\+I().
+
+\mbox{\Hypertarget{generic_8h_a6150637c525c3ca076ca7cc755e29db2}\label{generic_8h_a6150637c525c3ca076ca7cc755e29db2}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+Trim\+Left@{Str\+\_\+\+Trim\+Left}}
+\index{Str\+\_\+\+Trim\+Left@{Str\+\_\+\+Trim\+Left}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Left()}{Str\_TrimLeft()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+Left (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_a9dd2b923dbcf0dcda1a436a5be02c09b}\label{generic_8h_a9dd2b923dbcf0dcda1a436a5be02c09b}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+Trim\+LeftQ@{Str\+\_\+\+Trim\+LeftQ}}
+\index{Str\+\_\+\+Trim\+LeftQ@{Str\+\_\+\+Trim\+LeftQ}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Left\+Q()}{Str\_TrimLeftQ()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+LeftQ (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_a3156a3189c9286cf2c56384b9d4f00ba}\label{generic_8h_a3156a3189c9286cf2c56384b9d4f00ba}}
+\index{generic.\+h@{generic.\+h}!Str\+\_\+\+Trim\+Right@{Str\+\_\+\+Trim\+Right}}
+\index{Str\+\_\+\+Trim\+Right@{Str\+\_\+\+Trim\+Right}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Trim\+Right()}{Str\_TrimRight()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Trim\+Right (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{generic_8h_a4ad34bbb851d33a77269262427d3b072}\label{generic_8h_a4ad34bbb851d33a77269262427d3b072}}
+\index{generic.\+h@{generic.\+h}!Un\+Comment@{Un\+Comment}}
+\index{Un\+Comment@{Un\+Comment}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{Un\+Comment()}{UnComment()}}
+{\footnotesize\ttfamily void Un\+Comment (\begin{DoxyParamCaption}\item[{char $\ast$}]{s }\end{DoxyParamCaption})}
+
+
+
+Referenced by Get\+A\+Line().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{generic_8h_afafc43142ae143f6f7a354ef676f24a2}\label{generic_8h_afafc43142ae143f6f7a354ef676f24a2}}
+\index{generic.\+h@{generic.\+h}!errstr@{errstr}}
+\index{errstr@{errstr}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{errstr}{errstr}}
+{\footnotesize\ttfamily char errstr\mbox{[}$\,$\mbox{]}}
+
+
+
+Referenced by Mk\+Dir().
+
+\mbox{\Hypertarget{generic_8h_ac16dab5cefce6fed135c20d1bae372a5}\label{generic_8h_ac16dab5cefce6fed135c20d1bae372a5}}
+\index{generic.\+h@{generic.\+h}!logfp@{logfp}}
+\index{logfp@{logfp}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{logfp}{logfp}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ logfp}
+
+
+
+Referenced by Close\+File(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), and S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric().
+
+\mbox{\Hypertarget{generic_8h_ada051a4499e33e1d0fe82eeeee6d1699}\label{generic_8h_ada051a4499e33e1d0fe82eeeee6d1699}}
+\index{generic.\+h@{generic.\+h}!logged@{logged}}
+\index{logged@{logged}!generic.\+h@{generic.\+h}}
+\subsubsection{\texorpdfstring{logged}{logged}}
+{\footnotesize\ttfamily int logged}
+
+
+
+Referenced by Log\+Error(), and main().
+
diff --git a/doc/latex/index.tex b/doc/latex/index.tex
new file mode 100644
index 000000000..f7e06b7c0
--- /dev/null
+++ b/doc/latex/index.tex
@@ -0,0 +1,76 @@
+\tabulinesep=1mm
+\begin{longtabu} spread 0pt [c]{*{6}{|X[-1]}|}
+\hline
+\rowcolor{\tableheadbgcolor}\textbf{ Unix }&\textbf{ Windows }&\textbf{ Release }&\textbf{ License }&\textbf{ Coverage }&\textbf{ Downloads }\\\cline{1-6}
+\endfirsthead
+\hline
+\endfoot
+\hline
+\rowcolor{\tableheadbgcolor}\textbf{ Unix }&\textbf{ Windows }&\textbf{ Release }&\textbf{ License }&\textbf{ Coverage }&\textbf{ Downloads }\\\cline{1-6}
+\endhead
+\href{https://travis-ci.org/Burke-Lauenroth-Lab/SOILWAT2}{\tt } &\href{https://ci.appveyor.com/project/dschlaep/soilwat2/branch/master}{\tt } &\href{https://github.com/Burke-Lauenroth-Lab/SOILWAT2/releases}{\tt } &\href{https://www.gnu.org/licenses/gpl.html}{\tt } &\href{https://codecov.io/gh/Burke-Lauenroth-Lab/SOILWAT2}{\tt } &\href{https://github.com/Burke-Lauenroth-Lab/SOILWAT2}{\tt } \\\cline{1-6}
+\end{longtabu}
+
+
+\section*{S\+O\+I\+L\+W\+A\+T2}
+
+This version of Soil\+Wat brings new features. This is the same code that is used by \href{https://github.com/Burke-Lauenroth-Lab/rSOILWAT2}{\tt r\+S\+O\+I\+L\+W\+A\+T2} and \href{https://github.com/Burke-Lauenroth-Lab/STEPWAT2}{\tt S\+T\+E\+P\+W\+A\+T2}.
+
+If you make use of this model, please cite appropriate references, and we would like to hear about your particular study (especially a copy of any published paper).
+
+Some recent references
+
+
+\begin{DoxyItemize}
+\item Bradford, J. B., D. R. Schlaepfer, and W. K. Lauenroth. 2014. Ecohydrology of adjacent sagebrush and lodgepole pine ecosystems\+: The consequences of climate change and disturbance. Ecosystems 17\+:590-\/605.
+\item Palmquist, K.\+A., Schlaepfer, D.\+R., Bradford, J.\+B., and Lauenroth, W.\+K. 2016. Mid-\/latitude shrub steppe plant communities\+: climate change consequences for soil water resources. Ecology 97\+:2342–2354.
+\item Schlaepfer, D. R., W. K. Lauenroth, and J. B. Bradford. 2012. Ecohydrological niche of sagebrush ecosystems. Ecohydrology 5\+:453-\/466.
+\end{DoxyItemize}
+
+\subsection*{How to contribute}
+
+You can help us in different ways\+:
+
+
+\begin{DoxyEnumerate}
+\item Reporting \href{https://github.com/Burke-Lauenroth-Lab/SOILWAT2/issues}{\tt issues}
+\item Contributing code and sending a \href{https://github.com/Burke-Lauenroth-Lab/SOILWAT2/pulls}{\tt pull request}
+\end{DoxyEnumerate}
+
+{\bfseries S\+O\+I\+L\+W\+A\+T2 code is used as part of three applications}\+: stand-\/alone, as part of \href{https://github.com/Burke-Lauenroth-Lab/STEPWAT2}{\tt S\+T\+E\+P\+W\+A\+T2}, and as part of the R package \href{https://github.com/Burke-Lauenroth-Lab/rSOILWAT2}{\tt r\+S\+O\+I\+L\+W\+A\+T2}
+\begin{DoxyItemize}
+\item The files \textquotesingle{}Makevars\textquotesingle{}, \textquotesingle{}\hyperlink{_s_w___r__lib_8c}{S\+W\+\_\+\+R\+\_\+lib.\+c}\textquotesingle{} and \textquotesingle{}\hyperlink{_s_w___r__lib_8h}{S\+W\+\_\+\+R\+\_\+lib.\+h}\textquotesingle{} are used when compiling for \href{https://github.com/Burke-Lauenroth-Lab/rSOILWAT2}{\tt r\+S\+O\+I\+L\+W\+A\+T2} and ignored otherwise.
+\item The file \textquotesingle{}\hyperlink{_s_w___main___function_8c}{S\+W\+\_\+\+Main\+\_\+\+Function.\+c}\textquotesingle{} is used when compiling with \href{https://github.com/Burke-Lauenroth-Lab/STEPWAT2}{\tt S\+T\+E\+P\+W\+A\+T2} and ignored otherwise.
+\end{DoxyItemize}
+
+{\bfseries Follow our guidelines} as detailed \href{https://github.com/Burke-Lauenroth-Lab/workflow_guidelines}{\tt here}
+
+{\bfseries Tests, documentation, and code} form a trinity
+\begin{DoxyItemize}
+\item Code documentation
+\begin{DoxyItemize}
+\item Use \href{http://www.stack.nl/~dimitri/doxygen/}{\tt doxygen} to write inline code documentation
+\item Update help pages on the command-\/line with {\ttfamily doxygen Doxyfile}
+\end{DoxyItemize}
+\item Code tests
+\begin{DoxyItemize}
+\item Use https\+://github.com/google/googletest/blob/master/googletest/docs/\+Documentation.\+md \char`\"{}\+Google\+Test\char`\"{} to add unit tests to the existing framework
+\item Run unit tests locally on the command-\/line with ``` make gtest ./sw\+\_\+test make gtest\+\_\+clean ```
+\item We plan to update the continuous integration frameworks \textquotesingle{}travis\textquotesingle{} and \textquotesingle{}appveyor\textquotesingle{} to run these tests as well when commits are pushed
+\item Development/feature branches can only be merged into master if they pass all checks
+\end{DoxyItemize}
+\end{DoxyItemize}
+
+{\bfseries Version numbers}
+
+We attempt to follow guidelines of \href{http://semver.org/}{\tt semantic versioning} with version numbers of M\+A\+J\+O\+R.\+M\+I\+N\+O\+R.\+P\+A\+T\+CH.
+
+{\bfseries Repository renamed from S\+O\+I\+L\+W\+AT to S\+O\+I\+L\+W\+A\+T2 on Feb 23, 2017}
+
+All existing information should \href{https://help.github.com/articles/renaming-a-repository/}{\tt automatically be redirected} to the new name.
+
+Contributors are encouraged, however, to update local clones to \href{https://help.github.com/articles/changing-a-remote-s-url/}{\tt point to the new U\+RL}, i.\+e.,
+\begin{DoxyCode}
+git remote set-url origin https://github.com/Burke-Lauenroth-Lab/SOILWAT2.git
+\end{DoxyCode}
+
\ No newline at end of file
diff --git a/doc/latex/memblock_8h.tex b/doc/latex/memblock_8h.tex
new file mode 100644
index 000000000..bac03e0f3
--- /dev/null
+++ b/doc/latex/memblock_8h.tex
@@ -0,0 +1,211 @@
+\hypertarget{memblock_8h}{}\section{memblock.\+h File Reference}
+\label{memblock_8h}\index{memblock.\+h@{memblock.\+h}}
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$assert.\+h$>$}\newline
+\subsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO}
+\end{DoxyCompactItemize}
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{memblock_8h_a6d67fa985c8d55f8d9173418a61e74b2}{b\+Garbage}~0x\+CC
+\item
+\#define \hyperlink{memblock_8h_aa4d5299100f77188b65595e2b1c1219e}{f\+Ptr\+Less}(p\+Left, p\+Right)~((p\+Left) $<$ (p\+Right))
+\item
+\#define \hyperlink{memblock_8h_a0b53f89ac87accc22fb04fca40f9e08e}{f\+Ptr\+Grtr}(p\+Left, p\+Right)~((p\+Left) $>$ (p\+Right))
+\item
+\#define \hyperlink{memblock_8h_a538e8555fc01cadc5e29e331fb507d50}{f\+Ptr\+Equal}(p\+Left, p\+Right)~((p\+Left) == (p\+Right))
+\item
+\#define \hyperlink{memblock_8h_adb92aa47a6598a5135a40d1a435f3b1f}{f\+Ptr\+Less\+Eq}(p\+Left, p\+Right)~((p\+Left) $<$= (p\+Right))
+\item
+\#define \hyperlink{memblock_8h_aff9c0b5f74ec287fe3bd685699918fa7}{f\+Ptr\+Grtr\+Eq}(p\+Left, p\+Right)~((p\+Left) $>$= (p\+Right))
+\end{DoxyCompactItemize}
+\subsection*{Typedefs}
+\begin{DoxyCompactItemize}
+\item
+typedef signed char \hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag}
+\item
+typedef struct \hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO} \hyperlink{memblock_8h_a4efa813126bea264d5004452952d4183}{blockinfo}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} \hyperlink{memblock_8h_a7378f5b28e7040385c2b6ce1e0b8e414}{f\+Create\+Block\+Info} (\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$pb\+New, size\+\_\+t size\+New)
+\item
+void \hyperlink{memblock_8h_ad24a8f495ad9a9bfab3a390b975d775d}{Free\+Block\+Info} (\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$pb\+To\+Free)
+\item
+void \hyperlink{memblock_8h_aa60a6289aac74bde0007509fbc7ab03d}{Update\+Block\+Info} (\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$pb\+Old, \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$pb\+New, size\+\_\+t size\+New)
+\item
+size\+\_\+t \hyperlink{memblock_8h_adfabd20e8c4d10e3b9b9b9d4708f2362}{sizeof\+Block} (\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$pb)
+\item
+void \hyperlink{memblock_8h_a67c46872c2345268a29cad3d6ebacaae}{Clear\+Memory\+Refs} (void)
+\item
+void \hyperlink{memblock_8h_a517e4e9e49f638e79511b47817f86aaa}{Note\+Memory\+Ref} (void $\ast$pv)
+\item
+void \hyperlink{memblock_8h_a1c62ba217fbb728f4491fab75de0f8d6}{Check\+Memory\+Refs} (void)
+\item
+\hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} \hyperlink{memblock_8h_a0fb9fb15a1bdd6fe6cdae1d4a4caaea2}{f\+Valid\+Pointer} (void $\ast$pv, size\+\_\+t size)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{memblock_8h_a6d67fa985c8d55f8d9173418a61e74b2}\label{memblock_8h_a6d67fa985c8d55f8d9173418a61e74b2}}
+\index{memblock.\+h@{memblock.\+h}!b\+Garbage@{b\+Garbage}}
+\index{b\+Garbage@{b\+Garbage}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{b\+Garbage}{bGarbage}}
+{\footnotesize\ttfamily \#define b\+Garbage~0x\+CC}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), Mem\+\_\+\+Free(), Mem\+\_\+\+Malloc(), and Mem\+\_\+\+Re\+Alloc().
+
+\mbox{\Hypertarget{memblock_8h_a538e8555fc01cadc5e29e331fb507d50}\label{memblock_8h_a538e8555fc01cadc5e29e331fb507d50}}
+\index{memblock.\+h@{memblock.\+h}!f\+Ptr\+Equal@{f\+Ptr\+Equal}}
+\index{f\+Ptr\+Equal@{f\+Ptr\+Equal}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Ptr\+Equal}{fPtrEqual}}
+{\footnotesize\ttfamily \#define f\+Ptr\+Equal(\begin{DoxyParamCaption}\item[{}]{p\+Left, }\item[{}]{p\+Right }\end{DoxyParamCaption})~((p\+Left) == (p\+Right))}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_a0b53f89ac87accc22fb04fca40f9e08e}\label{memblock_8h_a0b53f89ac87accc22fb04fca40f9e08e}}
+\index{memblock.\+h@{memblock.\+h}!f\+Ptr\+Grtr@{f\+Ptr\+Grtr}}
+\index{f\+Ptr\+Grtr@{f\+Ptr\+Grtr}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Ptr\+Grtr}{fPtrGrtr}}
+{\footnotesize\ttfamily \#define f\+Ptr\+Grtr(\begin{DoxyParamCaption}\item[{}]{p\+Left, }\item[{}]{p\+Right }\end{DoxyParamCaption})~((p\+Left) $>$ (p\+Right))}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_aff9c0b5f74ec287fe3bd685699918fa7}\label{memblock_8h_aff9c0b5f74ec287fe3bd685699918fa7}}
+\index{memblock.\+h@{memblock.\+h}!f\+Ptr\+Grtr\+Eq@{f\+Ptr\+Grtr\+Eq}}
+\index{f\+Ptr\+Grtr\+Eq@{f\+Ptr\+Grtr\+Eq}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Ptr\+Grtr\+Eq}{fPtrGrtrEq}}
+{\footnotesize\ttfamily \#define f\+Ptr\+Grtr\+Eq(\begin{DoxyParamCaption}\item[{}]{p\+Left, }\item[{}]{p\+Right }\end{DoxyParamCaption})~((p\+Left) $>$= (p\+Right))}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_aa4d5299100f77188b65595e2b1c1219e}\label{memblock_8h_aa4d5299100f77188b65595e2b1c1219e}}
+\index{memblock.\+h@{memblock.\+h}!f\+Ptr\+Less@{f\+Ptr\+Less}}
+\index{f\+Ptr\+Less@{f\+Ptr\+Less}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Ptr\+Less}{fPtrLess}}
+{\footnotesize\ttfamily \#define f\+Ptr\+Less(\begin{DoxyParamCaption}\item[{}]{p\+Left, }\item[{}]{p\+Right }\end{DoxyParamCaption})~((p\+Left) $<$ (p\+Right))}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_adb92aa47a6598a5135a40d1a435f3b1f}\label{memblock_8h_adb92aa47a6598a5135a40d1a435f3b1f}}
+\index{memblock.\+h@{memblock.\+h}!f\+Ptr\+Less\+Eq@{f\+Ptr\+Less\+Eq}}
+\index{f\+Ptr\+Less\+Eq@{f\+Ptr\+Less\+Eq}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Ptr\+Less\+Eq}{fPtrLessEq}}
+{\footnotesize\ttfamily \#define f\+Ptr\+Less\+Eq(\begin{DoxyParamCaption}\item[{}]{p\+Left, }\item[{}]{p\+Right }\end{DoxyParamCaption})~((p\+Left) $<$= (p\+Right))}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+
+
+\subsection{Typedef Documentation}
+\mbox{\Hypertarget{memblock_8h_a4efa813126bea264d5004452952d4183}\label{memblock_8h_a4efa813126bea264d5004452952d4183}}
+\index{memblock.\+h@{memblock.\+h}!blockinfo@{blockinfo}}
+\index{blockinfo@{blockinfo}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{blockinfo}{blockinfo}}
+{\footnotesize\ttfamily typedef struct \hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO} \hyperlink{memblock_8h_a4efa813126bea264d5004452952d4183}{blockinfo}}
+
+\mbox{\Hypertarget{memblock_8h_a920d0054b069504874f34133907c0b42}\label{memblock_8h_a920d0054b069504874f34133907c0b42}}
+\index{memblock.\+h@{memblock.\+h}!flag@{flag}}
+\index{flag@{flag}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{flag}{flag}}
+{\footnotesize\ttfamily typedef signed char \hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag}}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{memblock_8h_a1c62ba217fbb728f4491fab75de0f8d6}\label{memblock_8h_a1c62ba217fbb728f4491fab75de0f8d6}}
+\index{memblock.\+h@{memblock.\+h}!Check\+Memory\+Refs@{Check\+Memory\+Refs}}
+\index{Check\+Memory\+Refs@{Check\+Memory\+Refs}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{Check\+Memory\+Refs()}{CheckMemoryRefs()}}
+{\footnotesize\ttfamily void Check\+Memory\+Refs (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_a67c46872c2345268a29cad3d6ebacaae}\label{memblock_8h_a67c46872c2345268a29cad3d6ebacaae}}
+\index{memblock.\+h@{memblock.\+h}!Clear\+Memory\+Refs@{Clear\+Memory\+Refs}}
+\index{Clear\+Memory\+Refs@{Clear\+Memory\+Refs}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{Clear\+Memory\+Refs()}{ClearMemoryRefs()}}
+{\footnotesize\ttfamily void Clear\+Memory\+Refs (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_a7378f5b28e7040385c2b6ce1e0b8e414}\label{memblock_8h_a7378f5b28e7040385c2b6ce1e0b8e414}}
+\index{memblock.\+h@{memblock.\+h}!f\+Create\+Block\+Info@{f\+Create\+Block\+Info}}
+\index{f\+Create\+Block\+Info@{f\+Create\+Block\+Info}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Create\+Block\+Info()}{fCreateBlockInfo()}}
+{\footnotesize\ttfamily \hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} f\+Create\+Block\+Info (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$}]{pb\+New, }\item[{size\+\_\+t}]{size\+New }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), and Mem\+\_\+\+Malloc().
+
+\mbox{\Hypertarget{memblock_8h_ad24a8f495ad9a9bfab3a390b975d775d}\label{memblock_8h_ad24a8f495ad9a9bfab3a390b975d775d}}
+\index{memblock.\+h@{memblock.\+h}!Free\+Block\+Info@{Free\+Block\+Info}}
+\index{Free\+Block\+Info@{Free\+Block\+Info}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{Free\+Block\+Info()}{FreeBlockInfo()}}
+{\footnotesize\ttfamily void Free\+Block\+Info (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$}]{pb\+To\+Free }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), and Mem\+\_\+\+Free().
+
+\mbox{\Hypertarget{memblock_8h_a0fb9fb15a1bdd6fe6cdae1d4a4caaea2}\label{memblock_8h_a0fb9fb15a1bdd6fe6cdae1d4a4caaea2}}
+\index{memblock.\+h@{memblock.\+h}!f\+Valid\+Pointer@{f\+Valid\+Pointer}}
+\index{f\+Valid\+Pointer@{f\+Valid\+Pointer}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{f\+Valid\+Pointer()}{fValidPointer()}}
+{\footnotesize\ttfamily \hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} f\+Valid\+Pointer (\begin{DoxyParamCaption}\item[{void $\ast$}]{pv, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), Mem\+\_\+\+Free(), and Mem\+\_\+\+Set().
+
+\mbox{\Hypertarget{memblock_8h_a517e4e9e49f638e79511b47817f86aaa}\label{memblock_8h_a517e4e9e49f638e79511b47817f86aaa}}
+\index{memblock.\+h@{memblock.\+h}!Note\+Memory\+Ref@{Note\+Memory\+Ref}}
+\index{Note\+Memory\+Ref@{Note\+Memory\+Ref}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{Note\+Memory\+Ref()}{NoteMemoryRef()}}
+{\footnotesize\ttfamily void Note\+Memory\+Ref (\begin{DoxyParamCaption}\item[{void $\ast$}]{pv }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{memblock_8h_adfabd20e8c4d10e3b9b9b9d4708f2362}\label{memblock_8h_adfabd20e8c4d10e3b9b9b9d4708f2362}}
+\index{memblock.\+h@{memblock.\+h}!sizeof\+Block@{sizeof\+Block}}
+\index{sizeof\+Block@{sizeof\+Block}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{sizeof\+Block()}{sizeofBlock()}}
+{\footnotesize\ttfamily size\+\_\+t sizeof\+Block (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$}]{pb }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), Mem\+\_\+\+Free(), and Mem\+\_\+\+Re\+Alloc().
+
+\mbox{\Hypertarget{memblock_8h_aa60a6289aac74bde0007509fbc7ab03d}\label{memblock_8h_aa60a6289aac74bde0007509fbc7ab03d}}
+\index{memblock.\+h@{memblock.\+h}!Update\+Block\+Info@{Update\+Block\+Info}}
+\index{Update\+Block\+Info@{Update\+Block\+Info}!memblock.\+h@{memblock.\+h}}
+\subsubsection{\texorpdfstring{Update\+Block\+Info()}{UpdateBlockInfo()}}
+{\footnotesize\ttfamily void Update\+Block\+Info (\begin{DoxyParamCaption}\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$}]{pb\+Old, }\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$}]{pb\+New, }\item[{size\+\_\+t}]{size\+New }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Copy(), and Mem\+\_\+\+Re\+Alloc().
+
diff --git a/doc/latex/my_memory_8h.tex b/doc/latex/my_memory_8h.tex
new file mode 100644
index 000000000..63af7f86b
--- /dev/null
+++ b/doc/latex/my_memory_8h.tex
@@ -0,0 +1,90 @@
+\hypertarget{my_memory_8h}{}\section{my\+Memory.\+h File Reference}
+\label{my_memory_8h}\index{my\+Memory.\+h@{my\+Memory.\+h}}
+{\ttfamily \#include $<$memory.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+char $\ast$ \hyperlink{my_memory_8h_abc338ac7d3b4778528e8cf66dd15dabb}{Str\+\_\+\+Dup} (const char $\ast$s)
+\item
+void $\ast$ \hyperlink{my_memory_8h_a670cfe63250ed93b3c3538d711b0ac12}{Mem\+\_\+\+Malloc} (size\+\_\+t size, const char $\ast$funcname)
+\item
+void $\ast$ \hyperlink{my_memory_8h_ab4c091b1ea6ff161b4f7ccdf053855eb}{Mem\+\_\+\+Calloc} (size\+\_\+t nobjs, size\+\_\+t size, const char $\ast$funcname)
+\item
+void $\ast$ \hyperlink{my_memory_8h_a82809648b82d65619a2813aebe75d979}{Mem\+\_\+\+Re\+Alloc} (void $\ast$block, size\+\_\+t size\+New)
+\item
+void \hyperlink{my_memory_8h_ac8a0b20f565c72550954aaa7caf2bf83}{Mem\+\_\+\+Free} (void $\ast$block)
+\item
+void \hyperlink{my_memory_8h_a281df42f7fff9db33264d5da49701011}{Mem\+\_\+\+Set} (void $\ast$block, \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} c, size\+\_\+t n)
+\item
+void \hyperlink{my_memory_8h_aa1beefabcae7d0eab711c2022bad03b4}{Mem\+\_\+\+Copy} (void $\ast$dest, const void $\ast$src, size\+\_\+t n)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{my_memory_8h_ab4c091b1ea6ff161b4f7ccdf053855eb}\label{my_memory_8h_ab4c091b1ea6ff161b4f7ccdf053855eb}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Calloc@{Mem\+\_\+\+Calloc}}
+\index{Mem\+\_\+\+Calloc@{Mem\+\_\+\+Calloc}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Calloc()}{Mem\_Calloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Calloc (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{nobjs, }\item[{size\+\_\+t}]{size, }\item[{const char $\ast$}]{funcname }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{my_memory_8h_aa1beefabcae7d0eab711c2022bad03b4}\label{my_memory_8h_aa1beefabcae7d0eab711c2022bad03b4}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Copy@{Mem\+\_\+\+Copy}}
+\index{Mem\+\_\+\+Copy@{Mem\+\_\+\+Copy}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Copy()}{Mem\_Copy()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Copy (\begin{DoxyParamCaption}\item[{void $\ast$}]{dest, }\item[{const void $\ast$}]{src, }\item[{size\+\_\+t}]{n }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{my_memory_8h_ac8a0b20f565c72550954aaa7caf2bf83}\label{my_memory_8h_ac8a0b20f565c72550954aaa7caf2bf83}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Free@{Mem\+\_\+\+Free}}
+\index{Mem\+\_\+\+Free@{Mem\+\_\+\+Free}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Free()}{Mem\_Free()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Free (\begin{DoxyParamCaption}\item[{void $\ast$}]{block }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Re\+Alloc(), Rand\+Uni\+List(), Remove\+Files(), and S\+W\+\_\+\+O\+U\+T\+\_\+construct().
+
+\mbox{\Hypertarget{my_memory_8h_a670cfe63250ed93b3c3538d711b0ac12}\label{my_memory_8h_a670cfe63250ed93b3c3538d711b0ac12}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Malloc@{Mem\+\_\+\+Malloc}}
+\index{Mem\+\_\+\+Malloc@{Mem\+\_\+\+Malloc}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Malloc()}{Mem\_Malloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Malloc (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{size, }\item[{const char $\ast$}]{funcname }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles(), Mem\+\_\+\+Calloc(), Mem\+\_\+\+Re\+Alloc(), Rand\+Uni\+List(), and Str\+\_\+\+Dup().
+
+\mbox{\Hypertarget{my_memory_8h_a82809648b82d65619a2813aebe75d979}\label{my_memory_8h_a82809648b82d65619a2813aebe75d979}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Re\+Alloc@{Mem\+\_\+\+Re\+Alloc}}
+\index{Mem\+\_\+\+Re\+Alloc@{Mem\+\_\+\+Re\+Alloc}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Re\+Alloc()}{Mem\_ReAlloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Re\+Alloc (\begin{DoxyParamCaption}\item[{void $\ast$}]{block, }\item[{size\+\_\+t}]{size\+New }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
+\mbox{\Hypertarget{my_memory_8h_a281df42f7fff9db33264d5da49701011}\label{my_memory_8h_a281df42f7fff9db33264d5da49701011}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Mem\+\_\+\+Set@{Mem\+\_\+\+Set}}
+\index{Mem\+\_\+\+Set@{Mem\+\_\+\+Set}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Set()}{Mem\_Set()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Set (\begin{DoxyParamCaption}\item[{void $\ast$}]{block, }\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte}}]{c, }\item[{size\+\_\+t}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Calloc(), and S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{my_memory_8h_abc338ac7d3b4778528e8cf66dd15dabb}\label{my_memory_8h_abc338ac7d3b4778528e8cf66dd15dabb}}
+\index{my\+Memory.\+h@{my\+Memory.\+h}!Str\+\_\+\+Dup@{Str\+\_\+\+Dup}}
+\index{Str\+\_\+\+Dup@{Str\+\_\+\+Dup}!my\+Memory.\+h@{my\+Memory.\+h}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Dup()}{Str\_Dup()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Dup (\begin{DoxyParamCaption}\item[{const char $\ast$}]{s }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
diff --git a/doc/latex/mymemory_8c.tex b/doc/latex/mymemory_8c.tex
new file mode 100644
index 000000000..553c1d31d
--- /dev/null
+++ b/doc/latex/mymemory_8c.tex
@@ -0,0 +1,94 @@
+\hypertarget{mymemory_8c}{}\section{mymemory.\+c File Reference}
+\label{mymemory_8c}\index{mymemory.\+c@{mymemory.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$assert.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+char $\ast$ \hyperlink{mymemory_8c_abc338ac7d3b4778528e8cf66dd15dabb}{Str\+\_\+\+Dup} (const char $\ast$s)
+\item
+void $\ast$ \hyperlink{mymemory_8c_a670cfe63250ed93b3c3538d711b0ac12}{Mem\+\_\+\+Malloc} (size\+\_\+t size, const char $\ast$funcname)
+\item
+void $\ast$ \hyperlink{mymemory_8c_ab4c091b1ea6ff161b4f7ccdf053855eb}{Mem\+\_\+\+Calloc} (size\+\_\+t nobjs, size\+\_\+t size, const char $\ast$funcname)
+\item
+void $\ast$ \hyperlink{mymemory_8c_a82809648b82d65619a2813aebe75d979}{Mem\+\_\+\+Re\+Alloc} (void $\ast$block, size\+\_\+t size\+New)
+\item
+void \hyperlink{mymemory_8c_ac8a0b20f565c72550954aaa7caf2bf83}{Mem\+\_\+\+Free} (void $\ast$block)
+\item
+void \hyperlink{mymemory_8c_a281df42f7fff9db33264d5da49701011}{Mem\+\_\+\+Set} (void $\ast$block, \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} c, size\+\_\+t n)
+\item
+void \hyperlink{mymemory_8c_aa1beefabcae7d0eab711c2022bad03b4}{Mem\+\_\+\+Copy} (void $\ast$dest, const void $\ast$src, size\+\_\+t n)
+\end{DoxyCompactItemize}
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{mymemory_8c_ab4c091b1ea6ff161b4f7ccdf053855eb}\label{mymemory_8c_ab4c091b1ea6ff161b4f7ccdf053855eb}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Calloc@{Mem\+\_\+\+Calloc}}
+\index{Mem\+\_\+\+Calloc@{Mem\+\_\+\+Calloc}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Calloc()}{Mem\_Calloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Calloc (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{nobjs, }\item[{size\+\_\+t}]{size, }\item[{const char $\ast$}]{funcname }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{mymemory_8c_aa1beefabcae7d0eab711c2022bad03b4}\label{mymemory_8c_aa1beefabcae7d0eab711c2022bad03b4}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Copy@{Mem\+\_\+\+Copy}}
+\index{Mem\+\_\+\+Copy@{Mem\+\_\+\+Copy}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Copy()}{Mem\_Copy()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Copy (\begin{DoxyParamCaption}\item[{void $\ast$}]{dest, }\item[{const void $\ast$}]{src, }\item[{size\+\_\+t}]{n }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{mymemory_8c_ac8a0b20f565c72550954aaa7caf2bf83}\label{mymemory_8c_ac8a0b20f565c72550954aaa7caf2bf83}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Free@{Mem\+\_\+\+Free}}
+\index{Mem\+\_\+\+Free@{Mem\+\_\+\+Free}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Free()}{Mem\_Free()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Free (\begin{DoxyParamCaption}\item[{void $\ast$}]{block }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Re\+Alloc(), Rand\+Uni\+List(), Remove\+Files(), and S\+W\+\_\+\+O\+U\+T\+\_\+construct().
+
+\mbox{\Hypertarget{mymemory_8c_a670cfe63250ed93b3c3538d711b0ac12}\label{mymemory_8c_a670cfe63250ed93b3c3538d711b0ac12}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Malloc@{Mem\+\_\+\+Malloc}}
+\index{Mem\+\_\+\+Malloc@{Mem\+\_\+\+Malloc}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Malloc()}{Mem\_Malloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Malloc (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{size, }\item[{const char $\ast$}]{funcname }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles(), Mem\+\_\+\+Calloc(), Mem\+\_\+\+Re\+Alloc(), Rand\+Uni\+List(), and Str\+\_\+\+Dup().
+
+\mbox{\Hypertarget{mymemory_8c_a82809648b82d65619a2813aebe75d979}\label{mymemory_8c_a82809648b82d65619a2813aebe75d979}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Re\+Alloc@{Mem\+\_\+\+Re\+Alloc}}
+\index{Mem\+\_\+\+Re\+Alloc@{Mem\+\_\+\+Re\+Alloc}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Re\+Alloc()}{Mem\_ReAlloc()}}
+{\footnotesize\ttfamily void$\ast$ Mem\+\_\+\+Re\+Alloc (\begin{DoxyParamCaption}\item[{void $\ast$}]{block, }\item[{size\+\_\+t}]{size\+New }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
+\mbox{\Hypertarget{mymemory_8c_a281df42f7fff9db33264d5da49701011}\label{mymemory_8c_a281df42f7fff9db33264d5da49701011}}
+\index{mymemory.\+c@{mymemory.\+c}!Mem\+\_\+\+Set@{Mem\+\_\+\+Set}}
+\index{Mem\+\_\+\+Set@{Mem\+\_\+\+Set}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Mem\+\_\+\+Set()}{Mem\_Set()}}
+{\footnotesize\ttfamily void Mem\+\_\+\+Set (\begin{DoxyParamCaption}\item[{void $\ast$}]{block, }\item[{\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte}}]{c, }\item[{size\+\_\+t}]{n }\end{DoxyParamCaption})}
+
+
+
+Referenced by Mem\+\_\+\+Calloc(), and S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{mymemory_8c_abc338ac7d3b4778528e8cf66dd15dabb}\label{mymemory_8c_abc338ac7d3b4778528e8cf66dd15dabb}}
+\index{mymemory.\+c@{mymemory.\+c}!Str\+\_\+\+Dup@{Str\+\_\+\+Dup}}
+\index{Str\+\_\+\+Dup@{Str\+\_\+\+Dup}!mymemory.\+c@{mymemory.\+c}}
+\subsubsection{\texorpdfstring{Str\+\_\+\+Dup()}{Str\_Dup()}}
+{\footnotesize\ttfamily char$\ast$ Str\+\_\+\+Dup (\begin{DoxyParamCaption}\item[{const char $\ast$}]{s }\end{DoxyParamCaption})}
+
+
+
+Referenced by getfiles().
+
diff --git a/doc/latex/rands_8c.tex b/doc/latex/rands_8c.tex
new file mode 100644
index 000000000..33fe639d3
--- /dev/null
+++ b/doc/latex/rands_8c.tex
@@ -0,0 +1,209 @@
+\hypertarget{rands_8c}{}\section{rands.\+c File Reference}
+\label{rands_8c}\index{rands.\+c@{rands.\+c}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$stdlib.\+h$>$}\newline
+{\ttfamily \#include $<$string.\+h$>$}\newline
+{\ttfamily \#include $<$ctype.\+h$>$}\newline
+{\ttfamily \#include $<$math.\+h$>$}\newline
+{\ttfamily \#include $<$time.\+h$>$}\newline
+{\ttfamily \#include \char`\"{}generic.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}rands.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}my\+Memory.\+h\char`\"{}}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{rands_8c_a1697ba8bc67aab0eb972da5596ee5cc9}{B\+U\+C\+K\+E\+T\+S\+I\+ZE}~97
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{rands_8c_ad17d320703c92d263551310bab8aedb5}{Rand\+Seed} (signed long seed)
+\begin{DoxyCompactList}\small\item\em Resets the random number seed. \end{DoxyCompactList}\item
+double \hyperlink{rands_8c_a76d078c2fef9e6b9d163f000d11c9346}{Rand\+Uni\+\_\+fast} (void)
+\begin{DoxyCompactList}\small\item\em Generate a uniform random variate. \end{DoxyCompactList}\item
+double \hyperlink{rands_8c_a6b2c3e2421d50b10f64a632c56f3cdaa}{Rand\+Uni\+\_\+good} (void)
+\begin{DoxyCompactList}\small\item\em Generate a uniform random variate. \end{DoxyCompactList}\item
+int \hyperlink{rands_8c_a5b70649d47341d10706e3a587294d589}{Rand\+Uni\+Range} (const long first, const long last)
+\begin{DoxyCompactList}\small\item\em Generate a random integer between two numbers. \end{DoxyCompactList}\item
+void \hyperlink{rands_8c_a99ad06019a6dd764a7150a67d55dc30c}{Rand\+Uni\+List} (long count, long first, long last, \hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type} list\mbox{[}$\,$\mbox{]})
+\item
+double \hyperlink{rands_8c_a360602f9de1bde286cb454a0e07c2808}{Rand\+Norm} (double mean, double stddev)
+\item
+float \hyperlink{rands_8c_aeecd655ab3f03f24d50688e6776586b3}{Rand\+Beta} (float aa, float bb)
+\begin{DoxyCompactList}\small\item\em Generates a beta random variate. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\subsection*{Variables}
+\begin{DoxyCompactItemize}
+\item
+long \hyperlink{rands_8c_a4e79841f0616bc326d924cc6fcd61b0e}{\+\_\+randseed} = 0L
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{rands_8c_a1697ba8bc67aab0eb972da5596ee5cc9}\label{rands_8c_a1697ba8bc67aab0eb972da5596ee5cc9}}
+\index{rands.\+c@{rands.\+c}!B\+U\+C\+K\+E\+T\+S\+I\+ZE@{B\+U\+C\+K\+E\+T\+S\+I\+ZE}}
+\index{B\+U\+C\+K\+E\+T\+S\+I\+ZE@{B\+U\+C\+K\+E\+T\+S\+I\+ZE}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{B\+U\+C\+K\+E\+T\+S\+I\+ZE}{BUCKETSIZE}}
+{\footnotesize\ttfamily \#define B\+U\+C\+K\+E\+T\+S\+I\+ZE~97}
+
+
+
+Referenced by Rand\+Uni\+\_\+fast(), and Rand\+Uni\+\_\+good().
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{rands_8c_aeecd655ab3f03f24d50688e6776586b3}\label{rands_8c_aeecd655ab3f03f24d50688e6776586b3}}
+\index{rands.\+c@{rands.\+c}!Rand\+Beta@{Rand\+Beta}}
+\index{Rand\+Beta@{Rand\+Beta}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Beta()}{RandBeta()}}
+{\footnotesize\ttfamily float Rand\+Beta (\begin{DoxyParamCaption}\item[{float}]{aa, }\item[{float}]{bb }\end{DoxyParamCaption})}
+
+
+
+Generates a beta random variate.
+
+Rand\+Beta returns a single random variate from the beta distribution with shape parameters a and b. The density is x$^\wedge$(a-\/1) $\ast$ (1-\/x)$^\wedge$(b-\/1) / Beta(a,b) for 0 $<$ x $<$ 1
+
+The code for Rand\+Beta was taken from ranlib, a F\+O\+R\+T\+R\+A\+N77 library. Original F\+O\+R\+T\+R\+A\+N77 version by Barry Brown, James Lovato. C version by John Burkardt.
+
+This code is distributed under the G\+NU L\+G\+PL license.
+
+\href{http://people.sc.fsu.edu/~jburkardt/f77_src/ranlib/ranlib.html}{\tt More info can be found here}
+
+\cite{Cheng1978}
+
+
+\begin{DoxyParams}{Parameters}
+{\em aa.} & The first shape parameter of the beta distribution with 0.\+0 $<$ aa. \\
+\hline
+{\em bb.} & The second shape parameter of the beta distribution with 0.\+0 $<$ bb. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+A random variate of a beta distribution.
+\end{DoxyReturn}
+\mbox{\Hypertarget{rands_8c_a360602f9de1bde286cb454a0e07c2808}\label{rands_8c_a360602f9de1bde286cb454a0e07c2808}}
+\index{rands.\+c@{rands.\+c}!Rand\+Norm@{Rand\+Norm}}
+\index{Rand\+Norm@{Rand\+Norm}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Norm()}{RandNorm()}}
+{\footnotesize\ttfamily double Rand\+Norm (\begin{DoxyParamCaption}\item[{double}]{mean, }\item[{double}]{stddev }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{rands_8c_ad17d320703c92d263551310bab8aedb5}\label{rands_8c_ad17d320703c92d263551310bab8aedb5}}
+\index{rands.\+c@{rands.\+c}!Rand\+Seed@{Rand\+Seed}}
+\index{Rand\+Seed@{Rand\+Seed}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Seed()}{RandSeed()}}
+{\footnotesize\ttfamily void Rand\+Seed (\begin{DoxyParamCaption}\item[{signed long}]{seed }\end{DoxyParamCaption})}
+
+
+
+Resets the random number seed.
+
+The seed is set to negative when this routine is called, so the generator routines ( eg, \hyperlink{rands_8h_a1455ba7faeab85f64b601634591b83de}{Rand\+Uni()}) can tell that it has changed. If called with seed==0, \+\_\+randseed is reset from process time. \textquotesingle{}\% 0xffff\textquotesingle{} is due to a bug in \hyperlink{rands_8h_a1455ba7faeab85f64b601634591b83de}{Rand\+Uni()} that conks if seed is too large; should be removed in the near future.
+
+
+\begin{DoxyParams}{Parameters}
+{\em seed} & The seed.\\
+\hline
+\end{DoxyParams}
+cwb -\/ 6/27/00
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct().
+
+\mbox{\Hypertarget{rands_8c_a76d078c2fef9e6b9d163f000d11c9346}\label{rands_8c_a76d078c2fef9e6b9d163f000d11c9346}}
+\index{rands.\+c@{rands.\+c}!Rand\+Uni\+\_\+fast@{Rand\+Uni\+\_\+fast}}
+\index{Rand\+Uni\+\_\+fast@{Rand\+Uni\+\_\+fast}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+\_\+fast()}{RandUni\_fast()}}
+{\footnotesize\ttfamily double Rand\+Uni\+\_\+fast (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Generate a uniform random variate.
+
+\char`\"{}\+Fast\char`\"{} because it utilizes the system rand() but shuffles the results to make a less correlated sequence. This code is based on F\+U\+N\+C\+T\+I\+ON R\+A\+N0 in Press, et al., 1986, Numerical Recipes, p196, Press Syndicate, NY.
+
+Of course, just how fast is \char`\"{}fast\char`\"{} depends on the implementation of the compiler. Some older generators may be quite simple, and so would be faster than a more complicated algorithm. Newer rand()\textquotesingle{}s are often fast and good.
+
+cwb 18-\/\+Dec-\/02
+
+\begin{DoxyReturn}{Returns}
+double. A value between 0 and 1.
+\end{DoxyReturn}
+\mbox{\Hypertarget{rands_8c_a6b2c3e2421d50b10f64a632c56f3cdaa}\label{rands_8c_a6b2c3e2421d50b10f64a632c56f3cdaa}}
+\index{rands.\+c@{rands.\+c}!Rand\+Uni\+\_\+good@{Rand\+Uni\+\_\+good}}
+\index{Rand\+Uni\+\_\+good@{Rand\+Uni\+\_\+good}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+\_\+good()}{RandUni\_good()}}
+{\footnotesize\ttfamily double Rand\+Uni\+\_\+good (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Generate a uniform random variate.
+
+Return a random number from uniform distribution. Result is between 0 and 1. This routine is adapted from F\+U\+N\+C\+T\+I\+ON R\+A\+N1 in Press, et al., 1986, Numerical Recipes, p196, Press Syndicate, NY. To reset the random number sequence, set \+\_\+randseed to any negative number prior to calling this function, or one that depends on it (eg, \hyperlink{rands_8c_a360602f9de1bde286cb454a0e07c2808}{Rand\+Norm()}).
+
+This code is preferable in terms of portability as well as consistency across compilers.
+
+cwb -\/ 6/20/00
+
+\begin{DoxyReturn}{Returns}
+double. A value between 0 and 1.
+\end{DoxyReturn}
+\mbox{\Hypertarget{rands_8c_a99ad06019a6dd764a7150a67d55dc30c}\label{rands_8c_a99ad06019a6dd764a7150a67d55dc30c}}
+\index{rands.\+c@{rands.\+c}!Rand\+Uni\+List@{Rand\+Uni\+List}}
+\index{Rand\+Uni\+List@{Rand\+Uni\+List}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+List()}{RandUniList()}}
+{\footnotesize\ttfamily void Rand\+Uni\+List (\begin{DoxyParamCaption}\item[{long}]{count, }\item[{long}]{first, }\item[{long}]{last, }\item[{\hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type}}]{list\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{rands_8c_a5b70649d47341d10706e3a587294d589}\label{rands_8c_a5b70649d47341d10706e3a587294d589}}
+\index{rands.\+c@{rands.\+c}!Rand\+Uni\+Range@{Rand\+Uni\+Range}}
+\index{Rand\+Uni\+Range@{Rand\+Uni\+Range}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+Range()}{RandUniRange()}}
+{\footnotesize\ttfamily int Rand\+Uni\+Range (\begin{DoxyParamCaption}\item[{const long}]{first, }\item[{const long}]{last }\end{DoxyParamCaption})}
+
+
+
+Generate a random integer between two numbers.
+
+Return a randomly selected integer between first and last, inclusive.
+
+cwb -\/ 12/5/00
+
+cwb -\/ 12/8/03 -\/ just noticed that the previous version only worked with positive numbers and when first $<$ last. Now it works with negative numbers as well as reversed order.
+
+Examples\+:
+\begin{DoxyItemize}
+\item first = 1, last = 10, result = 6
+\item first = 5, last = -\/1, result = 2
+\item first = -\/5, last = 5, result = 0
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em first.} & One bound of the range between two numbers. A const long argument. \\
+\hline
+{\em last.} & One bound of the range between two numbers. A const long argument.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+integer. Random number between the two bounds defined.
+\end{DoxyReturn}
+
+
+Referenced by Rand\+Uni\+List().
+
+
+
+\subsection{Variable Documentation}
+\mbox{\Hypertarget{rands_8c_a4e79841f0616bc326d924cc6fcd61b0e}\label{rands_8c_a4e79841f0616bc326d924cc6fcd61b0e}}
+\index{rands.\+c@{rands.\+c}!\+\_\+randseed@{\+\_\+randseed}}
+\index{\+\_\+randseed@{\+\_\+randseed}!rands.\+c@{rands.\+c}}
+\subsubsection{\texorpdfstring{\+\_\+randseed}{\_randseed}}
+{\footnotesize\ttfamily long \+\_\+randseed = 0L}
+
+
+
+Referenced by Rand\+Seed(), and Rand\+Uni\+\_\+good().
+
diff --git a/doc/latex/rands_8h.tex b/doc/latex/rands_8h.tex
new file mode 100644
index 000000000..d5adf86a8
--- /dev/null
+++ b/doc/latex/rands_8h.tex
@@ -0,0 +1,190 @@
+\hypertarget{rands_8h}{}\section{rands.\+h File Reference}
+\label{rands_8h}\index{rands.\+h@{rands.\+h}}
+{\ttfamily \#include $<$stdio.\+h$>$}\newline
+{\ttfamily \#include $<$float.\+h$>$}\newline
+\subsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \hyperlink{rands_8h_ad66856cf13352818eefa117fb3376660}{R\+A\+N\+D\+\_\+\+F\+A\+ST}~1
+\item
+\#define \hyperlink{rands_8h_a1455ba7faeab85f64b601634591b83de}{Rand\+Uni}~\hyperlink{rands_8h_a76d078c2fef9e6b9d163f000d11c9346}{Rand\+Uni\+\_\+fast}
+\item
+\#define \hyperlink{rands_8h_a264e95ffa78bb52b335b4ccce1228840}{R\+A\+N\+D\+S\+\_\+H}
+\end{DoxyCompactItemize}
+\subsection*{Typedefs}
+\begin{DoxyCompactItemize}
+\item
+typedef long \hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type}
+\end{DoxyCompactItemize}
+\subsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \hyperlink{rands_8h_ad17d320703c92d263551310bab8aedb5}{Rand\+Seed} (signed long seed)
+\begin{DoxyCompactList}\small\item\em Resets the random number seed. \end{DoxyCompactList}\item
+double \hyperlink{rands_8h_a6b2c3e2421d50b10f64a632c56f3cdaa}{Rand\+Uni\+\_\+good} (void)
+\begin{DoxyCompactList}\small\item\em Generate a uniform random variate. \end{DoxyCompactList}\item
+double \hyperlink{rands_8h_a76d078c2fef9e6b9d163f000d11c9346}{Rand\+Uni\+\_\+fast} (void)
+\begin{DoxyCompactList}\small\item\em Generate a uniform random variate. \end{DoxyCompactList}\item
+int \hyperlink{rands_8h_a5b70649d47341d10706e3a587294d589}{Rand\+Uni\+Range} (const long first, const long last)
+\begin{DoxyCompactList}\small\item\em Generate a random integer between two numbers. \end{DoxyCompactList}\item
+double \hyperlink{rands_8h_a360602f9de1bde286cb454a0e07c2808}{Rand\+Norm} (double mean, double stddev)
+\item
+void \hyperlink{rands_8h_ac710bab1ea1ca04eb37a4095cebe1450}{Rand\+Uni\+List} (long, long, long, \hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type}\mbox{[}$\,$\mbox{]})
+\item
+float \hyperlink{rands_8h_a7c113f4c25479e9dd7b60b2c382258fb}{genbet} (float aa, float bb)
+\end{DoxyCompactItemize}
+
+
+\subsection{Macro Definition Documentation}
+\mbox{\Hypertarget{rands_8h_ad66856cf13352818eefa117fb3376660}\label{rands_8h_ad66856cf13352818eefa117fb3376660}}
+\index{rands.\+h@{rands.\+h}!R\+A\+N\+D\+\_\+\+F\+A\+ST@{R\+A\+N\+D\+\_\+\+F\+A\+ST}}
+\index{R\+A\+N\+D\+\_\+\+F\+A\+ST@{R\+A\+N\+D\+\_\+\+F\+A\+ST}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{R\+A\+N\+D\+\_\+\+F\+A\+ST}{RAND\_FAST}}
+{\footnotesize\ttfamily \#define R\+A\+N\+D\+\_\+\+F\+A\+ST~1}
+
+\mbox{\Hypertarget{rands_8h_a264e95ffa78bb52b335b4ccce1228840}\label{rands_8h_a264e95ffa78bb52b335b4ccce1228840}}
+\index{rands.\+h@{rands.\+h}!R\+A\+N\+D\+S\+\_\+H@{R\+A\+N\+D\+S\+\_\+H}}
+\index{R\+A\+N\+D\+S\+\_\+H@{R\+A\+N\+D\+S\+\_\+H}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{R\+A\+N\+D\+S\+\_\+H}{RANDS\_H}}
+{\footnotesize\ttfamily \#define R\+A\+N\+D\+S\+\_\+H}
+
+\mbox{\Hypertarget{rands_8h_a1455ba7faeab85f64b601634591b83de}\label{rands_8h_a1455ba7faeab85f64b601634591b83de}}
+\index{rands.\+h@{rands.\+h}!Rand\+Uni@{Rand\+Uni}}
+\index{Rand\+Uni@{Rand\+Uni}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Uni}{RandUni}}
+{\footnotesize\ttfamily \#define Rand\+Uni~\hyperlink{rands_8h_a76d078c2fef9e6b9d163f000d11c9346}{Rand\+Uni\+\_\+fast}}
+
+
+
+Referenced by Rand\+Beta(), Rand\+Norm(), Rand\+Uni\+Range(), and S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+
+
+\subsection{Typedef Documentation}
+\mbox{\Hypertarget{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}\label{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}}
+\index{rands.\+h@{rands.\+h}!Rand\+List\+Type@{Rand\+List\+Type}}
+\index{Rand\+List\+Type@{Rand\+List\+Type}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+List\+Type}{RandListType}}
+{\footnotesize\ttfamily typedef long \hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type}}
+
+
+
+\subsection{Function Documentation}
+\mbox{\Hypertarget{rands_8h_a7c113f4c25479e9dd7b60b2c382258fb}\label{rands_8h_a7c113f4c25479e9dd7b60b2c382258fb}}
+\index{rands.\+h@{rands.\+h}!genbet@{genbet}}
+\index{genbet@{genbet}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{genbet()}{genbet()}}
+{\footnotesize\ttfamily float genbet (\begin{DoxyParamCaption}\item[{float}]{aa, }\item[{float}]{bb }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{rands_8h_a360602f9de1bde286cb454a0e07c2808}\label{rands_8h_a360602f9de1bde286cb454a0e07c2808}}
+\index{rands.\+h@{rands.\+h}!Rand\+Norm@{Rand\+Norm}}
+\index{Rand\+Norm@{Rand\+Norm}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Norm()}{RandNorm()}}
+{\footnotesize\ttfamily double Rand\+Norm (\begin{DoxyParamCaption}\item[{double}]{mean, }\item[{double}]{stddev }\end{DoxyParamCaption})}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{rands_8h_ad17d320703c92d263551310bab8aedb5}\label{rands_8h_ad17d320703c92d263551310bab8aedb5}}
+\index{rands.\+h@{rands.\+h}!Rand\+Seed@{Rand\+Seed}}
+\index{Rand\+Seed@{Rand\+Seed}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Seed()}{RandSeed()}}
+{\footnotesize\ttfamily void Rand\+Seed (\begin{DoxyParamCaption}\item[{signed long}]{seed }\end{DoxyParamCaption})}
+
+
+
+Resets the random number seed.
+
+The seed is set to negative when this routine is called, so the generator routines ( eg, \hyperlink{rands_8h_a1455ba7faeab85f64b601634591b83de}{Rand\+Uni()}) can tell that it has changed. If called with seed==0, \+\_\+randseed is reset from process time. \textquotesingle{}\% 0xffff\textquotesingle{} is due to a bug in \hyperlink{rands_8h_a1455ba7faeab85f64b601634591b83de}{Rand\+Uni()} that conks if seed is too large; should be removed in the near future.
+
+
+\begin{DoxyParams}{Parameters}
+{\em seed} & The seed.\\
+\hline
+\end{DoxyParams}
+cwb -\/ 6/27/00
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct().
+
+\mbox{\Hypertarget{rands_8h_a76d078c2fef9e6b9d163f000d11c9346}\label{rands_8h_a76d078c2fef9e6b9d163f000d11c9346}}
+\index{rands.\+h@{rands.\+h}!Rand\+Uni\+\_\+fast@{Rand\+Uni\+\_\+fast}}
+\index{Rand\+Uni\+\_\+fast@{Rand\+Uni\+\_\+fast}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+\_\+fast()}{RandUni\_fast()}}
+{\footnotesize\ttfamily double Rand\+Uni\+\_\+fast (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Generate a uniform random variate.
+
+\char`\"{}\+Fast\char`\"{} because it utilizes the system rand() but shuffles the results to make a less correlated sequence. This code is based on F\+U\+N\+C\+T\+I\+ON R\+A\+N0 in Press, et al., 1986, Numerical Recipes, p196, Press Syndicate, NY.
+
+Of course, just how fast is \char`\"{}fast\char`\"{} depends on the implementation of the compiler. Some older generators may be quite simple, and so would be faster than a more complicated algorithm. Newer rand()\textquotesingle{}s are often fast and good.
+
+cwb 18-\/\+Dec-\/02
+
+\begin{DoxyReturn}{Returns}
+double. A value between 0 and 1.
+\end{DoxyReturn}
+\mbox{\Hypertarget{rands_8h_a6b2c3e2421d50b10f64a632c56f3cdaa}\label{rands_8h_a6b2c3e2421d50b10f64a632c56f3cdaa}}
+\index{rands.\+h@{rands.\+h}!Rand\+Uni\+\_\+good@{Rand\+Uni\+\_\+good}}
+\index{Rand\+Uni\+\_\+good@{Rand\+Uni\+\_\+good}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+\_\+good()}{RandUni\_good()}}
+{\footnotesize\ttfamily double Rand\+Uni\+\_\+good (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}
+
+
+
+Generate a uniform random variate.
+
+Return a random number from uniform distribution. Result is between 0 and 1. This routine is adapted from F\+U\+N\+C\+T\+I\+ON R\+A\+N1 in Press, et al., 1986, Numerical Recipes, p196, Press Syndicate, NY. To reset the random number sequence, set \+\_\+randseed to any negative number prior to calling this function, or one that depends on it (eg, \hyperlink{rands_8c_a360602f9de1bde286cb454a0e07c2808}{Rand\+Norm()}).
+
+This code is preferable in terms of portability as well as consistency across compilers.
+
+cwb -\/ 6/20/00
+
+\begin{DoxyReturn}{Returns}
+double. A value between 0 and 1.
+\end{DoxyReturn}
+\mbox{\Hypertarget{rands_8h_ac710bab1ea1ca04eb37a4095cebe1450}\label{rands_8h_ac710bab1ea1ca04eb37a4095cebe1450}}
+\index{rands.\+h@{rands.\+h}!Rand\+Uni\+List@{Rand\+Uni\+List}}
+\index{Rand\+Uni\+List@{Rand\+Uni\+List}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+List()}{RandUniList()}}
+{\footnotesize\ttfamily void Rand\+Uni\+List (\begin{DoxyParamCaption}\item[{long}]{, }\item[{long}]{, }\item[{long}]{, }\item[{\hyperlink{rands_8h_af3c4c74d79e1f731f27b6edb3d0f3a49}{Rand\+List\+Type}}]{\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{rands_8h_a5b70649d47341d10706e3a587294d589}\label{rands_8h_a5b70649d47341d10706e3a587294d589}}
+\index{rands.\+h@{rands.\+h}!Rand\+Uni\+Range@{Rand\+Uni\+Range}}
+\index{Rand\+Uni\+Range@{Rand\+Uni\+Range}!rands.\+h@{rands.\+h}}
+\subsubsection{\texorpdfstring{Rand\+Uni\+Range()}{RandUniRange()}}
+{\footnotesize\ttfamily int Rand\+Uni\+Range (\begin{DoxyParamCaption}\item[{const long}]{first, }\item[{const long}]{last }\end{DoxyParamCaption})}
+
+
+
+Generate a random integer between two numbers.
+
+Return a randomly selected integer between first and last, inclusive.
+
+cwb -\/ 12/5/00
+
+cwb -\/ 12/8/03 -\/ just noticed that the previous version only worked with positive numbers and when first $<$ last. Now it works with negative numbers as well as reversed order.
+
+Examples\+:
+\begin{DoxyItemize}
+\item first = 1, last = 10, result = 6
+\item first = 5, last = -\/1, result = 2
+\item first = -\/5, last = 5, result = 0
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em first.} & One bound of the range between two numbers. A const long argument. \\
+\hline
+{\em last.} & One bound of the range between two numbers. A const long argument.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+integer. Random number between the two bounds defined.
+\end{DoxyReturn}
+
+
+Referenced by Rand\+Uni\+List().
+
diff --git a/doc/latex/refman.tex b/doc/latex/refman.tex
new file mode 100644
index 000000000..4ff3d9431
--- /dev/null
+++ b/doc/latex/refman.tex
@@ -0,0 +1,233 @@
+\documentclass[twoside]{book}
+
+% Packages required by doxygen
+\usepackage{fixltx2e}
+\usepackage{calc}
+\usepackage{doxygen}
+\usepackage[export]{adjustbox} % also loads graphicx
+\usepackage{graphicx}
+\usepackage[utf8]{inputenc}
+\usepackage{makeidx}
+\usepackage{multicol}
+\usepackage{multirow}
+\PassOptionsToPackage{warn}{textcomp}
+\usepackage{textcomp}
+\usepackage[nointegrals]{wasysym}
+\usepackage[table]{xcolor}
+
+% Font selection
+\usepackage[T1]{fontenc}
+\usepackage[scaled=.90]{helvet}
+\usepackage{courier}
+\usepackage{amssymb}
+\usepackage{sectsty}
+\renewcommand{\familydefault}{\sfdefault}
+\allsectionsfont{%
+ \fontseries{bc}\selectfont%
+ \color{darkgray}%
+}
+\renewcommand{\DoxyLabelFont}{%
+ \fontseries{bc}\selectfont%
+ \color{darkgray}%
+}
+\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
+
+% Page & text layout
+\usepackage{geometry}
+\geometry{%
+ a4paper,%
+ top=2.5cm,%
+ bottom=2.5cm,%
+ left=2.5cm,%
+ right=2.5cm%
+}
+\tolerance=750
+\hfuzz=15pt
+\hbadness=750
+\setlength{\emergencystretch}{15pt}
+\setlength{\parindent}{0cm}
+\setlength{\parskip}{3ex plus 2ex minus 2ex}
+\makeatletter
+\renewcommand{\paragraph}{%
+ \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
+ \normalfont\normalsize\bfseries\SS@parafont%
+ }%
+}
+\renewcommand{\subparagraph}{%
+ \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
+ \normalfont\normalsize\bfseries\SS@subparafont%
+ }%
+}
+\makeatother
+
+% Headers & footers
+\usepackage{fancyhdr}
+\pagestyle{fancyplain}
+\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
+\fancyhead[CE]{\fancyplain{}{}}
+\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
+\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
+\fancyhead[CO]{\fancyplain{}{}}
+\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
+\fancyfoot[LE]{\fancyplain{}{}}
+\fancyfoot[CE]{\fancyplain{}{}}
+\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
+\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
+\fancyfoot[CO]{\fancyplain{}{}}
+\fancyfoot[RO]{\fancyplain{}{}}
+\renewcommand{\footrulewidth}{0.4pt}
+\renewcommand{\chaptermark}[1]{%
+ \markboth{#1}{}%
+}
+\renewcommand{\sectionmark}[1]{%
+ \markright{\thesection\ #1}%
+}
+
+% Indices & bibliography
+\usepackage{natbib}
+\usepackage[titles]{tocloft}
+\setcounter{tocdepth}{3}
+\setcounter{secnumdepth}{5}
+\makeindex
+
+% Hyperlinks (required, but should be loaded last)
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage[pdftex,pagebackref=true]{hyperref}
+\else
+ \usepackage[ps2pdf,pagebackref=true]{hyperref}
+\fi
+\hypersetup{%
+ colorlinks=true,%
+ linkcolor=blue,%
+ citecolor=blue,%
+ unicode%
+}
+
+% Custom commands
+\newcommand{\clearemptydoublepage}{%
+ \newpage{\pagestyle{empty}\cleardoublepage}%
+}
+
+\usepackage{caption}
+\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
+
+%===== C O N T E N T S =====
+
+\begin{document}
+
+% Titlepage & ToC
+\hypersetup{pageanchor=false,
+ bookmarksnumbered=true,
+ pdfencoding=unicode
+ }
+\pagenumbering{alph}
+\begin{titlepage}
+\vspace*{7cm}
+\begin{center}%
+{\Large S\+O\+I\+L\+W\+A\+T2 \\[1ex]\large 3.\+2.\+7 }\\
+\vspace*{1cm}
+{\large Generated by Doxygen 1.8.13}\\
+\end{center}
+\end{titlepage}
+\clearemptydoublepage
+\pagenumbering{roman}
+\tableofcontents
+\clearemptydoublepage
+\pagenumbering{arabic}
+\hypersetup{pageanchor=true}
+
+%--- Begin generated contents ---
+\chapter{Main Page}
+\label{index}\hypertarget{index}{}\input{index}
+\chapter{Data Structure Index}
+\input{annotated}
+\chapter{File Index}
+\input{files}
+\chapter{Data Structure Documentation}
+\input{struct_b_l_o_c_k_i_n_f_o}
+\input{struct_s_t___r_g_r___v_a_l_u_e_s}
+\input{struct_s_w___l_a_y_e_r___i_n_f_o}
+\input{struct_s_w___m_a_r_k_o_v}
+\input{struct_s_w___m_o_d_e_l}
+\input{struct_s_w___o_u_t_p_u_t}
+\input{struct_s_w___s_i_t_e}
+\input{struct_s_w___s_k_y}
+\input{struct_s_w___s_o_i_l_w_a_t}
+\input{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}
+\input{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}
+\input{struct_s_w___t_i_m_e_s}
+\input{struct_s_w___v_e_g_e_s_t_a_b}
+\input{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}
+\input{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}
+\input{struct_s_w___v_e_g_p_r_o_d}
+\input{struct_s_w___w_e_a_t_h_e_r}
+\input{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}
+\input{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}
+\input{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}
+\input{structtanfunc__t}
+\input{struct_veg_type}
+\chapter{File Documentation}
+\input{filefuncs_8c}
+\input{filefuncs_8h}
+\input{generic_8c}
+\input{generic_8h}
+\input{memblock_8h}
+\input{mymemory_8c}
+\input{my_memory_8h}
+\input{rands_8c}
+\input{rands_8h}
+\input{_r_e_a_d_m_e_8md}
+\input{_s_w___control_8c}
+\input{_s_w___control_8h}
+\input{_s_w___defines_8h}
+\input{_s_w___files_8c}
+\input{_s_w___files_8h}
+\input{_s_w___flow_8c}
+\input{_s_w___flow__lib_8c}
+\input{_s_w___flow__lib_8h}
+\input{_s_w___flow__subs_8h}
+\input{_s_w___main_8c}
+\input{_s_w___main___function_8c}
+\input{_s_w___markov_8c}
+\input{_s_w___markov_8h}
+\input{_s_w___model_8c}
+\input{_s_w___model_8h}
+\input{_s_w___output_8c}
+\input{_s_w___output_8h}
+\input{_s_w___r__init_8c}
+\input{_s_w___r__lib_8c}
+\input{_s_w___r__lib_8h}
+\input{_s_w___site_8c}
+\input{_s_w___site_8h}
+\input{_s_w___sky_8c}
+\input{_s_w___sky_8h}
+\input{_s_w___soil_water_8c}
+\input{_s_w___soil_water_8h}
+\input{_s_w___times_8h}
+\input{_s_w___veg_estab_8c}
+\input{_s_w___veg_estab_8h}
+\input{_s_w___veg_prod_8c}
+\input{_s_w___veg_prod_8h}
+\input{_s_w___weather_8c}
+\input{_s_w___weather_8h}
+\input{_times_8c}
+\input{_times_8h}
+%--- End generated contents ---
+
+% Bibliography
+\newpage
+\phantomsection
+\bibliographystyle{plain}
+\bibliography{bibTmpFile_1}
+\addcontentsline{toc}{chapter}{Bibliography}
+
+% Index
+\backmatter
+\newpage
+\phantomsection
+\clearemptydoublepage
+\addcontentsline{toc}{chapter}{Index}
+\printindex
+
+\end{document}
diff --git a/doc/latex/struct_b_l_o_c_k_i_n_f_o.tex b/doc/latex/struct_b_l_o_c_k_i_n_f_o.tex
new file mode 100644
index 000000000..6099bb4a9
--- /dev/null
+++ b/doc/latex/struct_b_l_o_c_k_i_n_f_o.tex
@@ -0,0 +1,65 @@
+\hypertarget{struct_b_l_o_c_k_i_n_f_o}{}\section{B\+L\+O\+C\+K\+I\+N\+FO Struct Reference}
+\label{struct_b_l_o_c_k_i_n_f_o}\index{B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}}
+
+
+{\ttfamily \#include $<$memblock.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+struct \hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO} $\ast$ \hyperlink{struct_b_l_o_c_k_i_n_f_o_a3a3031c99ba0cc062336f8cd80fcfdb6}{pbi\+Next}
+\item
+\hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte} $\ast$ \hyperlink{struct_b_l_o_c_k_i_n_f_o_a880ef736b9b6b77c3607e60c34935ab1}{pb}
+\item
+size\+\_\+t \hyperlink{struct_b_l_o_c_k_i_n_f_o_a418663a53c4fa4a7611c50b0f4ccdffa}{size}
+\item
+\hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} \hyperlink{struct_b_l_o_c_k_i_n_f_o_acac311adb5793b084eedee9d61873bb0}{f\+Referenced}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_b_l_o_c_k_i_n_f_o_acac311adb5793b084eedee9d61873bb0}\label{struct_b_l_o_c_k_i_n_f_o_acac311adb5793b084eedee9d61873bb0}}
+\index{B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}!f\+Referenced@{f\+Referenced}}
+\index{f\+Referenced@{f\+Referenced}!B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{f\+Referenced}{fReferenced}}
+{\footnotesize\ttfamily \hyperlink{memblock_8h_a920d0054b069504874f34133907c0b42}{flag} B\+L\+O\+C\+K\+I\+N\+F\+O\+::f\+Referenced}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{struct_b_l_o_c_k_i_n_f_o_a880ef736b9b6b77c3607e60c34935ab1}\label{struct_b_l_o_c_k_i_n_f_o_a880ef736b9b6b77c3607e60c34935ab1}}
+\index{B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}!pb@{pb}}
+\index{pb@{pb}!B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{pb}{pb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a0c8186d9b9b7880309c27230bbb5e69d}{byte}$\ast$ B\+L\+O\+C\+K\+I\+N\+F\+O\+::pb}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{struct_b_l_o_c_k_i_n_f_o_a3a3031c99ba0cc062336f8cd80fcfdb6}\label{struct_b_l_o_c_k_i_n_f_o_a3a3031c99ba0cc062336f8cd80fcfdb6}}
+\index{B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}!pbi\+Next@{pbi\+Next}}
+\index{pbi\+Next@{pbi\+Next}!B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{pbi\+Next}{pbiNext}}
+{\footnotesize\ttfamily struct \hyperlink{struct_b_l_o_c_k_i_n_f_o}{B\+L\+O\+C\+K\+I\+N\+FO}$\ast$ B\+L\+O\+C\+K\+I\+N\+F\+O\+::pbi\+Next}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+\mbox{\Hypertarget{struct_b_l_o_c_k_i_n_f_o_a418663a53c4fa4a7611c50b0f4ccdffa}\label{struct_b_l_o_c_k_i_n_f_o_a418663a53c4fa4a7611c50b0f4ccdffa}}
+\index{B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}!size@{size}}
+\index{size@{size}!B\+L\+O\+C\+K\+I\+N\+FO@{B\+L\+O\+C\+K\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{size}{size}}
+{\footnotesize\ttfamily size\+\_\+t B\+L\+O\+C\+K\+I\+N\+F\+O\+::size}
+
+
+
+Referenced by Mem\+\_\+\+Copy().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{memblock_8h}{memblock.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_t___r_g_r___v_a_l_u_e_s.tex b/doc/latex/struct_s_t___r_g_r___v_a_l_u_e_s.tex
new file mode 100644
index 000000000..f8a43883d
--- /dev/null
+++ b/doc/latex/struct_s_t___r_g_r___v_a_l_u_e_s.tex
@@ -0,0 +1,89 @@
+\hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s}{}\section{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES Struct Reference}
+\label{struct_s_t___r_g_r___v_a_l_u_e_s}\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Flow\+\_\+lib.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_a2c59a03dc17326076e48d41f0305d7fb}{depths} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_a30a5d46be29a0732e31b9968dce948d3}{depthsR} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_abf7225426219da03920525e1d122e700}{fcR} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_a8373aee16290423cf2592a1a015c5dec}{wpR} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_a2e7bb52ccbacd589387f1ff34a24a8e1}{b\+DensityR} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_ae22c07ba3dabe9a2020f2a1e47614278}{olds\+Fusion\+Pool\+\_\+actual} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_a668387347cc176cdb71e844499ffb8ae}{olds\+TempR} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}
+\item
+int \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_aab2c5010a9480957dd2e5b3c8e0356e2}{lyr\+Frozen} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+double \hyperlink{struct_s_t___r_g_r___v_a_l_u_e_s_af5898a5d09563c03d2543060ff265847}{tlyrs\+\_\+by\+\_\+slyrs} \mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}+1\mbox{]}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_a2e7bb52ccbacd589387f1ff34a24a8e1}\label{struct_s_t___r_g_r___v_a_l_u_e_s_a2e7bb52ccbacd589387f1ff34a24a8e1}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!b\+DensityR@{b\+DensityR}}
+\index{b\+DensityR@{b\+DensityR}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{b\+DensityR}{bDensityR}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::b\+DensityR\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_a2c59a03dc17326076e48d41f0305d7fb}\label{struct_s_t___r_g_r___v_a_l_u_e_s_a2c59a03dc17326076e48d41f0305d7fb}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!depths@{depths}}
+\index{depths@{depths}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{depths}{depths}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::depths\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_a30a5d46be29a0732e31b9968dce948d3}\label{struct_s_t___r_g_r___v_a_l_u_e_s_a30a5d46be29a0732e31b9968dce948d3}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!depthsR@{depthsR}}
+\index{depthsR@{depthsR}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{depthsR}{depthsR}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::depthsR\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_abf7225426219da03920525e1d122e700}\label{struct_s_t___r_g_r___v_a_l_u_e_s_abf7225426219da03920525e1d122e700}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!fcR@{fcR}}
+\index{fcR@{fcR}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{fcR}{fcR}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::fcR\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_aab2c5010a9480957dd2e5b3c8e0356e2}\label{struct_s_t___r_g_r___v_a_l_u_e_s_aab2c5010a9480957dd2e5b3c8e0356e2}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!lyr\+Frozen@{lyr\+Frozen}}
+\index{lyr\+Frozen@{lyr\+Frozen}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{lyr\+Frozen}{lyrFrozen}}
+{\footnotesize\ttfamily int S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::lyr\+Frozen\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_ae22c07ba3dabe9a2020f2a1e47614278}\label{struct_s_t___r_g_r___v_a_l_u_e_s_ae22c07ba3dabe9a2020f2a1e47614278}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!olds\+Fusion\+Pool\+\_\+actual@{olds\+Fusion\+Pool\+\_\+actual}}
+\index{olds\+Fusion\+Pool\+\_\+actual@{olds\+Fusion\+Pool\+\_\+actual}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{olds\+Fusion\+Pool\+\_\+actual}{oldsFusionPool\_actual}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::olds\+Fusion\+Pool\+\_\+actual\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_a668387347cc176cdb71e844499ffb8ae}\label{struct_s_t___r_g_r___v_a_l_u_e_s_a668387347cc176cdb71e844499ffb8ae}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!olds\+TempR@{olds\+TempR}}
+\index{olds\+TempR@{olds\+TempR}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{olds\+TempR}{oldsTempR}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::olds\+TempR\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_af5898a5d09563c03d2543060ff265847}\label{struct_s_t___r_g_r___v_a_l_u_e_s_af5898a5d09563c03d2543060ff265847}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!tlyrs\+\_\+by\+\_\+slyrs@{tlyrs\+\_\+by\+\_\+slyrs}}
+\index{tlyrs\+\_\+by\+\_\+slyrs@{tlyrs\+\_\+by\+\_\+slyrs}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{tlyrs\+\_\+by\+\_\+slyrs}{tlyrs\_by\_slyrs}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::tlyrs\+\_\+by\+\_\+slyrs\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}+1\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_t___r_g_r___v_a_l_u_e_s_a8373aee16290423cf2592a1a015c5dec}\label{struct_s_t___r_g_r___v_a_l_u_e_s_a8373aee16290423cf2592a1a015c5dec}}
+\index{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}!wpR@{wpR}}
+\index{wpR@{wpR}!S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES@{S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+ES}}
+\subsubsection{\texorpdfstring{wpR}{wpR}}
+{\footnotesize\ttfamily double S\+T\+\_\+\+R\+G\+R\+\_\+\+V\+A\+L\+U\+E\+S\+::wpR\mbox{[}\hyperlink{_s_w___defines_8h_a30b7d70368683bce332d0cda6571adec}{M\+A\+X\+\_\+\+S\+T\+\_\+\+R\+GR}\mbox{]}}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___flow__lib_8h}{S\+W\+\_\+\+Flow\+\_\+lib.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___l_a_y_e_r___i_n_f_o.tex b/doc/latex/struct_s_w___l_a_y_e_r___i_n_f_o.tex
new file mode 100644
index 000000000..349bc08df
--- /dev/null
+++ b/doc/latex/struct_s_w___l_a_y_e_r___i_n_f_o.tex
@@ -0,0 +1,345 @@
+\hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o}{}\section{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO Struct Reference}
+\label{struct_s_w___l_a_y_e_r___i_n_f_o}\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Site.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_ab80d3d2ca7e78714d9a5dd0ecd9629c7}{width}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a964fdefe4cddfd0c0bb1fc287a358b0d}{soil\+Bulk\+\_\+density}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a271baacc4ff6a932df8965f964cd1660}{evap\+\_\+coeff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_acffa0e7788302bae3e54286438f3d4d2}{transp\+\_\+coeff\+\_\+forb}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_ad2082cfae8f7bf7e2d82a98e8cf79f8e}{transp\+\_\+coeff\+\_\+tree}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a2b233d5220b02ca94343cb98a947e316}{transp\+\_\+coeff\+\_\+shrub}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a025d80ebe5697358bfbce56e95e99f17}{transp\+\_\+coeff\+\_\+grass}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a70e2dd5ecdf2da74460d1eb053ab7933}{soil\+Matric\+\_\+density}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a15d47245fb784af757e13df1485705e6}{fraction\+Vol\+Bulk\+\_\+gravel}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_aa9bcd521cdee39d6792d571817c7d6c0}{fraction\+Weight\+Matric\+\_\+sand}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_aecd05eded6528b3dfa69a5b661041212}{fraction\+Weight\+Matric\+\_\+clay}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a6ba8d662c8909c6d9f33e5632f53546c}{swc\+Bulk\+\_\+fieldcap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a2e8a983e379de2e7630300efd934cde6}{swc\+Bulk\+\_\+wiltpt}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a4b2ebd3f61658ac8417113f3b0630eb9}{swc\+Bulk\+\_\+wet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a910247f504a1acb631b9338cc5ff4c92}{swc\+Bulk\+\_\+init}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_ac22990537dd4cfa68043884d95948de8}{swc\+Bulk\+\_\+min}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a472725f4e7ff3907925d1c76dd9df5d9}{swc\+Bulk\+\_\+saturated}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a1ab1eb5096cb8e4178b832b5de7bf620}{impermeability}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_aaf7e8e20e9385b48ef00ce833aee5f2b}{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a1923f54224d27020b1089838f284735e}{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_afb8d3bafddf8bad9adf8c1be4d96791a}{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a5d22dad514cba80ebf25e6a4a9c83a93}{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a2a846dc26291387c69852c77b47263b4}{thetas\+Matric}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a6d60ca2b86f8ac06933bc35c9c9145d5}{psis\+Matric}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_aebcc351f958bee84826254294de28bf5}{b\+Matric}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a0f3019c0b90e2f54cb557b0b70d09592}{binverse\+Matric}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a14025d325dc3a8f9d221ee5b64c1d592}{s\+Temp}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a96f6cd63fd866e38b65fee7d73e82b1d}{my\+\_\+transp\+\_\+rgn\+\_\+forb}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_ae861475a9a57909b6c016809981b64d6}{my\+\_\+transp\+\_\+rgn\+\_\+tree}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a61608f9fd666bb44e1821236145d1ba3}{my\+\_\+transp\+\_\+rgn\+\_\+shrub}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o_a0bcf0ca8b166ba657c4ad3f6286a183b}{my\+\_\+transp\+\_\+rgn\+\_\+grass}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a0f3019c0b90e2f54cb557b0b70d09592}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a0f3019c0b90e2f54cb557b0b70d09592}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!binverse\+Matric@{binverse\+Matric}}
+\index{binverse\+Matric@{binverse\+Matric}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{binverse\+Matric}{binverseMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::binverse\+Matric}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_aebcc351f958bee84826254294de28bf5}\label{struct_s_w___l_a_y_e_r___i_n_f_o_aebcc351f958bee84826254294de28bf5}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!b\+Matric@{b\+Matric}}
+\index{b\+Matric@{b\+Matric}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{b\+Matric}{bMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::b\+Matric}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a271baacc4ff6a932df8965f964cd1660}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a271baacc4ff6a932df8965f964cd1660}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!evap\+\_\+coeff@{evap\+\_\+coeff}}
+\index{evap\+\_\+coeff@{evap\+\_\+coeff}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{evap\+\_\+coeff}{evap\_coeff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::evap\+\_\+coeff}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a15d47245fb784af757e13df1485705e6}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a15d47245fb784af757e13df1485705e6}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!fraction\+Vol\+Bulk\+\_\+gravel@{fraction\+Vol\+Bulk\+\_\+gravel}}
+\index{fraction\+Vol\+Bulk\+\_\+gravel@{fraction\+Vol\+Bulk\+\_\+gravel}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{fraction\+Vol\+Bulk\+\_\+gravel}{fractionVolBulk\_gravel}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::fraction\+Vol\+Bulk\+\_\+gravel}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), pot\+\_\+soil\+\_\+evap(), pot\+\_\+soil\+\_\+evap\+\_\+bs(), and transp\+\_\+weighted\+\_\+avg().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_aecd05eded6528b3dfa69a5b661041212}\label{struct_s_w___l_a_y_e_r___i_n_f_o_aecd05eded6528b3dfa69a5b661041212}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!fraction\+Weight\+Matric\+\_\+clay@{fraction\+Weight\+Matric\+\_\+clay}}
+\index{fraction\+Weight\+Matric\+\_\+clay@{fraction\+Weight\+Matric\+\_\+clay}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{fraction\+Weight\+Matric\+\_\+clay}{fractionWeightMatric\_clay}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::fraction\+Weight\+Matric\+\_\+clay}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_aa9bcd521cdee39d6792d571817c7d6c0}\label{struct_s_w___l_a_y_e_r___i_n_f_o_aa9bcd521cdee39d6792d571817c7d6c0}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!fraction\+Weight\+Matric\+\_\+sand@{fraction\+Weight\+Matric\+\_\+sand}}
+\index{fraction\+Weight\+Matric\+\_\+sand@{fraction\+Weight\+Matric\+\_\+sand}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{fraction\+Weight\+Matric\+\_\+sand}{fractionWeightMatric\_sand}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::fraction\+Weight\+Matric\+\_\+sand}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a1ab1eb5096cb8e4178b832b5de7bf620}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a1ab1eb5096cb8e4178b832b5de7bf620}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!impermeability@{impermeability}}
+\index{impermeability@{impermeability}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{impermeability}{impermeability}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::impermeability}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a96f6cd63fd866e38b65fee7d73e82b1d}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a96f6cd63fd866e38b65fee7d73e82b1d}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!my\+\_\+transp\+\_\+rgn\+\_\+forb@{my\+\_\+transp\+\_\+rgn\+\_\+forb}}
+\index{my\+\_\+transp\+\_\+rgn\+\_\+forb@{my\+\_\+transp\+\_\+rgn\+\_\+forb}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{my\+\_\+transp\+\_\+rgn\+\_\+forb}{my\_transp\_rgn\_forb}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::my\+\_\+transp\+\_\+rgn\+\_\+forb}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a0bcf0ca8b166ba657c4ad3f6286a183b}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a0bcf0ca8b166ba657c4ad3f6286a183b}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!my\+\_\+transp\+\_\+rgn\+\_\+grass@{my\+\_\+transp\+\_\+rgn\+\_\+grass}}
+\index{my\+\_\+transp\+\_\+rgn\+\_\+grass@{my\+\_\+transp\+\_\+rgn\+\_\+grass}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{my\+\_\+transp\+\_\+rgn\+\_\+grass}{my\_transp\_rgn\_grass}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::my\+\_\+transp\+\_\+rgn\+\_\+grass}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a61608f9fd666bb44e1821236145d1ba3}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a61608f9fd666bb44e1821236145d1ba3}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!my\+\_\+transp\+\_\+rgn\+\_\+shrub@{my\+\_\+transp\+\_\+rgn\+\_\+shrub}}
+\index{my\+\_\+transp\+\_\+rgn\+\_\+shrub@{my\+\_\+transp\+\_\+rgn\+\_\+shrub}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{my\+\_\+transp\+\_\+rgn\+\_\+shrub}{my\_transp\_rgn\_shrub}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::my\+\_\+transp\+\_\+rgn\+\_\+shrub}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_ae861475a9a57909b6c016809981b64d6}\label{struct_s_w___l_a_y_e_r___i_n_f_o_ae861475a9a57909b6c016809981b64d6}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!my\+\_\+transp\+\_\+rgn\+\_\+tree@{my\+\_\+transp\+\_\+rgn\+\_\+tree}}
+\index{my\+\_\+transp\+\_\+rgn\+\_\+tree@{my\+\_\+transp\+\_\+rgn\+\_\+tree}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{my\+\_\+transp\+\_\+rgn\+\_\+tree}{my\_transp\_rgn\_tree}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::my\+\_\+transp\+\_\+rgn\+\_\+tree}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a6d60ca2b86f8ac06933bc35c9c9145d5}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a6d60ca2b86f8ac06933bc35c9c9145d5}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!psis\+Matric@{psis\+Matric}}
+\index{psis\+Matric@{psis\+Matric}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{psis\+Matric}{psisMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::psis\+Matric}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a964fdefe4cddfd0c0bb1fc287a358b0d}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a964fdefe4cddfd0c0bb1fc287a358b0d}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!soil\+Bulk\+\_\+density@{soil\+Bulk\+\_\+density}}
+\index{soil\+Bulk\+\_\+density@{soil\+Bulk\+\_\+density}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{soil\+Bulk\+\_\+density}{soilBulk\_density}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::soil\+Bulk\+\_\+density}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a70e2dd5ecdf2da74460d1eb053ab7933}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a70e2dd5ecdf2da74460d1eb053ab7933}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!soil\+Matric\+\_\+density@{soil\+Matric\+\_\+density}}
+\index{soil\+Matric\+\_\+density@{soil\+Matric\+\_\+density}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{soil\+Matric\+\_\+density}{soilMatric\_density}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::soil\+Matric\+\_\+density}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a14025d325dc3a8f9d221ee5b64c1d592}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a14025d325dc3a8f9d221ee5b64c1d592}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!s\+Temp@{s\+Temp}}
+\index{s\+Temp@{s\+Temp}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{s\+Temp}{sTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::s\+Temp}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+read().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_aaf7e8e20e9385b48ef00ce833aee5f2b}\label{struct_s_w___l_a_y_e_r___i_n_f_o_aaf7e8e20e9385b48ef00ce833aee5f2b}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb}}
+\index{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb}{swcBulk\_atSWPcrit\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+forb}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a5d22dad514cba80ebf25e6a4a9c83a93}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a5d22dad514cba80ebf25e6a4a9c83a93}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass}}
+\index{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass}{swcBulk\_atSWPcrit\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+grass}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_afb8d3bafddf8bad9adf8c1be4d96791a}\label{struct_s_w___l_a_y_e_r___i_n_f_o_afb8d3bafddf8bad9adf8c1be4d96791a}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub}}
+\index{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub}{swcBulk\_atSWPcrit\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+shrub}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a1923f54224d27020b1089838f284735e}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a1923f54224d27020b1089838f284735e}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree}}
+\index{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree@{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree}{swcBulk\_atSWPcrit\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+at\+S\+W\+Pcrit\+\_\+tree}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a6ba8d662c8909c6d9f33e5632f53546c}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a6ba8d662c8909c6d9f33e5632f53546c}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+fieldcap@{swc\+Bulk\+\_\+fieldcap}}
+\index{swc\+Bulk\+\_\+fieldcap@{swc\+Bulk\+\_\+fieldcap}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+fieldcap}{swcBulk\_fieldcap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+fieldcap}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a910247f504a1acb631b9338cc5ff4c92}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a910247f504a1acb631b9338cc5ff4c92}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+init@{swc\+Bulk\+\_\+init}}
+\index{swc\+Bulk\+\_\+init@{swc\+Bulk\+\_\+init}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+init}{swcBulk\_init}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+init}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_ac22990537dd4cfa68043884d95948de8}\label{struct_s_w___l_a_y_e_r___i_n_f_o_ac22990537dd4cfa68043884d95948de8}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+min@{swc\+Bulk\+\_\+min}}
+\index{swc\+Bulk\+\_\+min@{swc\+Bulk\+\_\+min}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+min}{swcBulk\_min}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+min}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a472725f4e7ff3907925d1c76dd9df5d9}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a472725f4e7ff3907925d1c76dd9df5d9}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+saturated@{swc\+Bulk\+\_\+saturated}}
+\index{swc\+Bulk\+\_\+saturated@{swc\+Bulk\+\_\+saturated}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+saturated}{swcBulk\_saturated}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+saturated}
+
+
+
+Referenced by water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a4b2ebd3f61658ac8417113f3b0630eb9}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a4b2ebd3f61658ac8417113f3b0630eb9}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+wet@{swc\+Bulk\+\_\+wet}}
+\index{swc\+Bulk\+\_\+wet@{swc\+Bulk\+\_\+wet}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+wet}{swcBulk\_wet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+wet}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a2e8a983e379de2e7630300efd934cde6}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a2e8a983e379de2e7630300efd934cde6}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!swc\+Bulk\+\_\+wiltpt@{swc\+Bulk\+\_\+wiltpt}}
+\index{swc\+Bulk\+\_\+wiltpt@{swc\+Bulk\+\_\+wiltpt}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{swc\+Bulk\+\_\+wiltpt}{swcBulk\_wiltpt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::swc\+Bulk\+\_\+wiltpt}
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a2a846dc26291387c69852c77b47263b4}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a2a846dc26291387c69852c77b47263b4}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!thetas\+Matric@{thetas\+Matric}}
+\index{thetas\+Matric@{thetas\+Matric}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{thetas\+Matric}{thetasMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::thetas\+Matric}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_acffa0e7788302bae3e54286438f3d4d2}\label{struct_s_w___l_a_y_e_r___i_n_f_o_acffa0e7788302bae3e54286438f3d4d2}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!transp\+\_\+coeff\+\_\+forb@{transp\+\_\+coeff\+\_\+forb}}
+\index{transp\+\_\+coeff\+\_\+forb@{transp\+\_\+coeff\+\_\+forb}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{transp\+\_\+coeff\+\_\+forb}{transp\_coeff\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::transp\+\_\+coeff\+\_\+forb}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a025d80ebe5697358bfbce56e95e99f17}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a025d80ebe5697358bfbce56e95e99f17}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!transp\+\_\+coeff\+\_\+grass@{transp\+\_\+coeff\+\_\+grass}}
+\index{transp\+\_\+coeff\+\_\+grass@{transp\+\_\+coeff\+\_\+grass}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{transp\+\_\+coeff\+\_\+grass}{transp\_coeff\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::transp\+\_\+coeff\+\_\+grass}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_a2b233d5220b02ca94343cb98a947e316}\label{struct_s_w___l_a_y_e_r___i_n_f_o_a2b233d5220b02ca94343cb98a947e316}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!transp\+\_\+coeff\+\_\+shrub@{transp\+\_\+coeff\+\_\+shrub}}
+\index{transp\+\_\+coeff\+\_\+shrub@{transp\+\_\+coeff\+\_\+shrub}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{transp\+\_\+coeff\+\_\+shrub}{transp\_coeff\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::transp\+\_\+coeff\+\_\+shrub}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_ad2082cfae8f7bf7e2d82a98e8cf79f8e}\label{struct_s_w___l_a_y_e_r___i_n_f_o_ad2082cfae8f7bf7e2d82a98e8cf79f8e}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!transp\+\_\+coeff\+\_\+tree@{transp\+\_\+coeff\+\_\+tree}}
+\index{transp\+\_\+coeff\+\_\+tree@{transp\+\_\+coeff\+\_\+tree}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{transp\+\_\+coeff\+\_\+tree}{transp\_coeff\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::transp\+\_\+coeff\+\_\+tree}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___l_a_y_e_r___i_n_f_o_ab80d3d2ca7e78714d9a5dd0ecd9629c7}\label{struct_s_w___l_a_y_e_r___i_n_f_o_ab80d3d2ca7e78714d9a5dd0ecd9629c7}}
+\index{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}!width@{width}}
+\index{width@{width}!S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{width}{width}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+F\+O\+::width}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and water\+\_\+eqn().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___site_8h}{S\+W\+\_\+\+Site.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___m_a_r_k_o_v.tex b/doc/latex/struct_s_w___m_a_r_k_o_v.tex
new file mode 100644
index 000000000..6335a1696
--- /dev/null
+++ b/doc/latex/struct_s_w___m_a_r_k_o_v.tex
@@ -0,0 +1,141 @@
+\hypertarget{struct_s_w___m_a_r_k_o_v}{}\section{S\+W\+\_\+\+M\+A\+R\+K\+OV Struct Reference}
+\label{struct_s_w___m_a_r_k_o_v}\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Markov.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_a0d300351fc442fd7cc9e99120cd24eb6}{wetprob}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_aa40f66a41ed1c308e8032b8065b30a4a}{dryprob}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_afe0733ac0a0dd4349cdb576c143fc6ce}{avg\+\_\+ppt}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_aab76285bb8aafa89e3fa56340962d9a1}{std\+\_\+ppt}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_a888f68abbef835953b6775730a65652c}{cfxw}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_ad8e63c0c85d5abe16a03d7ee008bdb0b}{cfxd}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_a8362112fd3d01a56ef16fb02b6922577}{cfnw}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ \hyperlink{struct_s_w___m_a_r_k_o_v_a7d55c486248a4f5546971939dc655d93}{cfnd}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___m_a_r_k_o_v_aef7204f999937d1b8f98310278c8e41c}{u\+\_\+cov} \mbox{[}\hyperlink{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}{M\+A\+X\+\_\+\+W\+E\+E\+KS}\mbox{]}\mbox{[}2\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___m_a_r_k_o_v_ac099b7578186299eae03a07324ae3948}{v\+\_\+cov} \mbox{[}\hyperlink{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}{M\+A\+X\+\_\+\+W\+E\+E\+KS}\mbox{]}\mbox{[}2\mbox{]}\mbox{[}2\mbox{]}
+\item
+int \hyperlink{struct_s_w___m_a_r_k_o_v_a1814b8674d464bb662cd4cc378f0311a}{ppt\+\_\+events}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_afe0733ac0a0dd4349cdb576c143fc6ce}\label{struct_s_w___m_a_r_k_o_v_afe0733ac0a0dd4349cdb576c143fc6ce}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!avg\+\_\+ppt@{avg\+\_\+ppt}}
+\index{avg\+\_\+ppt@{avg\+\_\+ppt}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{avg\+\_\+ppt}{avg\_ppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::avg\+\_\+ppt}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), and S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_a7d55c486248a4f5546971939dc655d93}\label{struct_s_w___m_a_r_k_o_v_a7d55c486248a4f5546971939dc655d93}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!cfnd@{cfnd}}
+\index{cfnd@{cfnd}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{cfnd}{cfnd}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::cfnd}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_a8362112fd3d01a56ef16fb02b6922577}\label{struct_s_w___m_a_r_k_o_v_a8362112fd3d01a56ef16fb02b6922577}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!cfnw@{cfnw}}
+\index{cfnw@{cfnw}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{cfnw}{cfnw}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::cfnw}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_ad8e63c0c85d5abe16a03d7ee008bdb0b}\label{struct_s_w___m_a_r_k_o_v_ad8e63c0c85d5abe16a03d7ee008bdb0b}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!cfxd@{cfxd}}
+\index{cfxd@{cfxd}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{cfxd}{cfxd}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::cfxd}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_a888f68abbef835953b6775730a65652c}\label{struct_s_w___m_a_r_k_o_v_a888f68abbef835953b6775730a65652c}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!cfxw@{cfxw}}
+\index{cfxw@{cfxw}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{cfxw}{cfxw}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::cfxw}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_aa40f66a41ed1c308e8032b8065b30a4a}\label{struct_s_w___m_a_r_k_o_v_aa40f66a41ed1c308e8032b8065b30a4a}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!dryprob@{dryprob}}
+\index{dryprob@{dryprob}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{dryprob}{dryprob}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::dryprob}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), and S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_a1814b8674d464bb662cd4cc378f0311a}\label{struct_s_w___m_a_r_k_o_v_a1814b8674d464bb662cd4cc378f0311a}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!ppt\+\_\+events@{ppt\+\_\+events}}
+\index{ppt\+\_\+events@{ppt\+\_\+events}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{ppt\+\_\+events}{ppt\_events}}
+{\footnotesize\ttfamily int S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::ppt\+\_\+events}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_aab76285bb8aafa89e3fa56340962d9a1}\label{struct_s_w___m_a_r_k_o_v_aab76285bb8aafa89e3fa56340962d9a1}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!std\+\_\+ppt@{std\+\_\+ppt}}
+\index{std\+\_\+ppt@{std\+\_\+ppt}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{std\+\_\+ppt}{std\_ppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} $\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::std\+\_\+ppt}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), and S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_aef7204f999937d1b8f98310278c8e41c}\label{struct_s_w___m_a_r_k_o_v_aef7204f999937d1b8f98310278c8e41c}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!u\+\_\+cov@{u\+\_\+cov}}
+\index{u\+\_\+cov@{u\+\_\+cov}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{u\+\_\+cov}{u\_cov}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::u\+\_\+cov\mbox{[}\hyperlink{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}{M\+A\+X\+\_\+\+W\+E\+E\+KS}\mbox{]}\mbox{[}2\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_ac099b7578186299eae03a07324ae3948}\label{struct_s_w___m_a_r_k_o_v_ac099b7578186299eae03a07324ae3948}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!v\+\_\+cov@{v\+\_\+cov}}
+\index{v\+\_\+cov@{v\+\_\+cov}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{v\+\_\+cov}{v\_cov}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::v\+\_\+cov\mbox{[}\hyperlink{_times_8h_a424fe822ecd3e435c4d8dd339b57d829}{M\+A\+X\+\_\+\+W\+E\+E\+KS}\mbox{]}\mbox{[}2\mbox{]}\mbox{[}2\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___m_a_r_k_o_v_a0d300351fc442fd7cc9e99120cd24eb6}\label{struct_s_w___m_a_r_k_o_v_a0d300351fc442fd7cc9e99120cd24eb6}}
+\index{S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}!wetprob@{wetprob}}
+\index{wetprob@{wetprob}!S\+W\+\_\+\+M\+A\+R\+K\+OV@{S\+W\+\_\+\+M\+A\+R\+K\+OV}}
+\subsubsection{\texorpdfstring{wetprob}{wetprob}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD}$\ast$ S\+W\+\_\+\+M\+A\+R\+K\+O\+V\+::wetprob}
+
+
+
+Referenced by S\+W\+\_\+\+M\+K\+V\+\_\+construct(), and S\+W\+\_\+\+M\+K\+V\+\_\+today().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___markov_8h}{S\+W\+\_\+\+Markov.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___m_o_d_e_l.tex b/doc/latex/struct_s_w___m_o_d_e_l.tex
new file mode 100644
index 000000000..fb41275c7
--- /dev/null
+++ b/doc/latex/struct_s_w___m_o_d_e_l.tex
@@ -0,0 +1,185 @@
+\hypertarget{struct_s_w___m_o_d_e_l}{}\section{S\+W\+\_\+\+M\+O\+D\+EL Struct Reference}
+\label{struct_s_w___m_o_d_e_l}\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Model.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a372a89e152904bcc59481c87fe51b0ad}{startyr}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_abed13a93f428ea87c32446b0a2ba362e}{endyr}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_acc7f14d03928972cab78b3bd83d0d68c}{startstart}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_ac1202a2b77de0209a9639ae983875b90}{endend}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_ab3c5fd1e0009d8cb42bda44103a5d22f}{daymid}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a4dcb1794a7e84fad27c836311346dd6c}{firstdoy}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a89974c4aa01556a7be50acd29689953e}{lastdoy}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a2fd6957c498589e9208edaac093808ea}{doy}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a232972133f960d8fa900b0c26fbf4445}{week}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a10500242c8b247ea53a1f55c1e099450}{month}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___m_o_d_e_l_a3080ab995b14b9e38ef8b41509efc16c}{year}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___m_o_d_e_l_a946ebc859cba698ceece86f3cb7715ac}{newweek}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___m_o_d_e_l_af3e628c4ec9aecdc306764c5d49785d2}{newmonth}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___m_o_d_e_l_aa63d4c1bbd8153d2bc8c73c4a0b415cc}{newyear}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___m_o_d_e_l_a51a1edc5cab17c7430c95a7522caa2e8}{isnorth}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_ab3c5fd1e0009d8cb42bda44103a5d22f}\label{struct_s_w___m_o_d_e_l_ab3c5fd1e0009d8cb42bda44103a5d22f}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!daymid@{daymid}}
+\index{daymid@{daymid}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{daymid}{daymid}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::daymid}
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a2fd6957c498589e9208edaac093808ea}\label{struct_s_w___m_o_d_e_l_a2fd6957c498589e9208edaac093808ea}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!doy@{doy}}
+\index{doy@{doy}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{doy}{doy}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::doy}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+run\+\_\+current\+\_\+year(), S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and S\+W\+\_\+\+Water\+\_\+\+Flow().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_ac1202a2b77de0209a9639ae983875b90}\label{struct_s_w___m_o_d_e_l_ac1202a2b77de0209a9639ae983875b90}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!endend@{endend}}
+\index{endend@{endend}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{endend}{endend}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::endend}
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_abed13a93f428ea87c32446b0a2ba362e}\label{struct_s_w___m_o_d_e_l_abed13a93f428ea87c32446b0a2ba362e}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!endyr@{endyr}}
+\index{endyr@{endyr}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{endyr}{endyr}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::endyr}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a4dcb1794a7e84fad27c836311346dd6c}\label{struct_s_w___m_o_d_e_l_a4dcb1794a7e84fad27c836311346dd6c}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!firstdoy@{firstdoy}}
+\index{firstdoy@{firstdoy}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{firstdoy}{firstdoy}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::firstdoy}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a51a1edc5cab17c7430c95a7522caa2e8}\label{struct_s_w___m_o_d_e_l_a51a1edc5cab17c7430c95a7522caa2e8}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!isnorth@{isnorth}}
+\index{isnorth@{isnorth}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{isnorth}{isnorth}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+O\+D\+E\+L\+::isnorth}
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a89974c4aa01556a7be50acd29689953e}\label{struct_s_w___m_o_d_e_l_a89974c4aa01556a7be50acd29689953e}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!lastdoy@{lastdoy}}
+\index{lastdoy@{lastdoy}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{lastdoy}{lastdoy}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::lastdoy}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), and S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a10500242c8b247ea53a1f55c1e099450}\label{struct_s_w___m_o_d_e_l_a10500242c8b247ea53a1f55c1e099450}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!month@{month}}
+\index{month@{month}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{month}{month}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::month}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), and S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_af3e628c4ec9aecdc306764c5d49785d2}\label{struct_s_w___m_o_d_e_l_af3e628c4ec9aecdc306764c5d49785d2}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!newmonth@{newmonth}}
+\index{newmonth@{newmonth}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{newmonth}{newmonth}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+O\+D\+E\+L\+::newmonth}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct(), and S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a946ebc859cba698ceece86f3cb7715ac}\label{struct_s_w___m_o_d_e_l_a946ebc859cba698ceece86f3cb7715ac}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!newweek@{newweek}}
+\index{newweek@{newweek}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{newweek}{newweek}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+O\+D\+E\+L\+::newweek}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct(), S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day(), and S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_aa63d4c1bbd8153d2bc8c73c4a0b415cc}\label{struct_s_w___m_o_d_e_l_aa63d4c1bbd8153d2bc8c73c4a0b415cc}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!newyear@{newyear}}
+\index{newyear@{newyear}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{newyear}{newyear}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+M\+O\+D\+E\+L\+::newyear}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+construct(), and S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_acc7f14d03928972cab78b3bd83d0d68c}\label{struct_s_w___m_o_d_e_l_acc7f14d03928972cab78b3bd83d0d68c}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!startstart@{startstart}}
+\index{startstart@{startstart}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{startstart}{startstart}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::startstart}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a372a89e152904bcc59481c87fe51b0ad}\label{struct_s_w___m_o_d_e_l_a372a89e152904bcc59481c87fe51b0ad}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!startyr@{startyr}}
+\index{startyr@{startyr}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{startyr}{startyr}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::startyr}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a232972133f960d8fa900b0c26fbf4445}\label{struct_s_w___m_o_d_e_l_a232972133f960d8fa900b0c26fbf4445}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!week@{week}}
+\index{week@{week}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{week}{week}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::week}
+
+
+
+Referenced by S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+day().
+
+\mbox{\Hypertarget{struct_s_w___m_o_d_e_l_a3080ab995b14b9e38ef8b41509efc16c}\label{struct_s_w___m_o_d_e_l_a3080ab995b14b9e38ef8b41509efc16c}}
+\index{S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}!year@{year}}
+\index{year@{year}!S\+W\+\_\+\+M\+O\+D\+EL@{S\+W\+\_\+\+M\+O\+D\+EL}}
+\subsubsection{\texorpdfstring{year}{year}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+M\+O\+D\+E\+L\+::year}
+
+
+
+Referenced by S\+W\+\_\+\+C\+T\+L\+\_\+main(), S\+W\+\_\+\+M\+D\+L\+\_\+new\+\_\+year(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), and S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___model_8h}{S\+W\+\_\+\+Model.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___o_u_t_p_u_t.tex b/doc/latex/struct_s_w___o_u_t_p_u_t.tex
new file mode 100644
index 000000000..a1426c528
--- /dev/null
+++ b/doc/latex/struct_s_w___o_u_t_p_u_t.tex
@@ -0,0 +1,161 @@
+\hypertarget{struct_s_w___o_u_t_p_u_t}{}\section{S\+W\+\_\+\+O\+U\+T\+P\+UT Struct Reference}
+\label{struct_s_w___o_u_t_p_u_t}\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Output.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}{Out\+Key} \hyperlink{struct_s_w___o_u_t_p_u_t_a48c42889301263af4fee4078171f5bb9}{mykey}
+\item
+\hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type} \hyperlink{struct_s_w___o_u_t_p_u_t_ad0253c3c36027641f106440b9e04338a}{myobj}
+\item
+\hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}{Out\+Period} \hyperlink{struct_s_w___o_u_t_p_u_t_a5ebae03675583fe9acd158fd8cfcf877}{period}
+\item
+\hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}{Out\+Sum} \hyperlink{struct_s_w___o_u_t_p_u_t_a2a29e58833af5162fa6dbc14c307af68}{sumtype}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___o_u_t_p_u_t_a86d069d21282a56d0f4b730eba846c37}{use}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___o_u_t_p_u_t_a9bfbb118c01c4f57f87d11fc53859756}{first}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___o_u_t_p_u_t_afbc2eca291a2288745d102a34c32d938}{last}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___o_u_t_p_u_t_a28a2b9c7bfdb4e5a8078386212e91545}{first\+\_\+orig}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___o_u_t_p_u_t_ae0dee45cd60304d876e3a6835fab4757}{last\+\_\+orig}
+\item
+char $\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_ad1ffdf6de051cc2520fe539415c31227}{outfile}
+\item
+F\+I\+LE $\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_aabb6232e4d83770f0d1c46010ade9dc5}{fp\+\_\+dy}
+\item
+F\+I\+LE $\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_aedb850b7e2cdddec6788dec4ae3cb2b9}{fp\+\_\+wk}
+\item
+F\+I\+LE $\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_a5269e635c4f1a5dfd8da16eed011563f}{fp\+\_\+mo}
+\item
+F\+I\+LE $\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_a6deda2af703cfc6c41bf105534ae7656}{fp\+\_\+yr}
+\item
+void($\ast$ \hyperlink{struct_s_w___o_u_t_p_u_t_a1b2e79aa8b30b491a7558244a42ef5b1}{pfunc} )(void)
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a9bfbb118c01c4f57f87d11fc53859756}\label{struct_s_w___o_u_t_p_u_t_a9bfbb118c01c4f57f87d11fc53859756}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!first@{first}}
+\index{first@{first}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{first}{first}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::first}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a28a2b9c7bfdb4e5a8078386212e91545}\label{struct_s_w___o_u_t_p_u_t_a28a2b9c7bfdb4e5a8078386212e91545}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!first\+\_\+orig@{first\+\_\+orig}}
+\index{first\+\_\+orig@{first\+\_\+orig}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{first\+\_\+orig}{first\_orig}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::first\+\_\+orig}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_aabb6232e4d83770f0d1c46010ade9dc5}\label{struct_s_w___o_u_t_p_u_t_aabb6232e4d83770f0d1c46010ade9dc5}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!fp\+\_\+dy@{fp\+\_\+dy}}
+\index{fp\+\_\+dy@{fp\+\_\+dy}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{fp\+\_\+dy}{fp\_dy}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::fp\+\_\+dy}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a5269e635c4f1a5dfd8da16eed011563f}\label{struct_s_w___o_u_t_p_u_t_a5269e635c4f1a5dfd8da16eed011563f}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!fp\+\_\+mo@{fp\+\_\+mo}}
+\index{fp\+\_\+mo@{fp\+\_\+mo}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{fp\+\_\+mo}{fp\_mo}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::fp\+\_\+mo}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_aedb850b7e2cdddec6788dec4ae3cb2b9}\label{struct_s_w___o_u_t_p_u_t_aedb850b7e2cdddec6788dec4ae3cb2b9}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!fp\+\_\+wk@{fp\+\_\+wk}}
+\index{fp\+\_\+wk@{fp\+\_\+wk}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{fp\+\_\+wk}{fp\_wk}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::fp\+\_\+wk}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a6deda2af703cfc6c41bf105534ae7656}\label{struct_s_w___o_u_t_p_u_t_a6deda2af703cfc6c41bf105534ae7656}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!fp\+\_\+yr@{fp\+\_\+yr}}
+\index{fp\+\_\+yr@{fp\+\_\+yr}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{fp\+\_\+yr}{fp\_yr}}
+{\footnotesize\ttfamily F\+I\+LE$\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::fp\+\_\+yr}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_afbc2eca291a2288745d102a34c32d938}\label{struct_s_w___o_u_t_p_u_t_afbc2eca291a2288745d102a34c32d938}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!last@{last}}
+\index{last@{last}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{last}{last}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::last}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_ae0dee45cd60304d876e3a6835fab4757}\label{struct_s_w___o_u_t_p_u_t_ae0dee45cd60304d876e3a6835fab4757}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!last\+\_\+orig@{last\+\_\+orig}}
+\index{last\+\_\+orig@{last\+\_\+orig}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{last\+\_\+orig}{last\_orig}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::last\+\_\+orig}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a48c42889301263af4fee4078171f5bb9}\label{struct_s_w___o_u_t_p_u_t_a48c42889301263af4fee4078171f5bb9}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!mykey@{mykey}}
+\index{mykey@{mykey}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{mykey}{mykey}}
+{\footnotesize\ttfamily \hyperlink{_s_w___output_8h_a02baefdececdc5dc8b1b48f924a03d73}{Out\+Key} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::mykey}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_ad0253c3c36027641f106440b9e04338a}\label{struct_s_w___o_u_t_p_u_t_ad0253c3c36027641f106440b9e04338a}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!myobj@{myobj}}
+\index{myobj@{myobj}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{myobj}{myobj}}
+{\footnotesize\ttfamily \hyperlink{_s_w___defines_8h_a21ada50c882656c2a4723dde25f56d4a}{Obj\+Type} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::myobj}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_ad1ffdf6de051cc2520fe539415c31227}\label{struct_s_w___o_u_t_p_u_t_ad1ffdf6de051cc2520fe539415c31227}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!outfile@{outfile}}
+\index{outfile@{outfile}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{outfile}{outfile}}
+{\footnotesize\ttfamily char$\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::outfile}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a5ebae03675583fe9acd158fd8cfcf877}\label{struct_s_w___o_u_t_p_u_t_a5ebae03675583fe9acd158fd8cfcf877}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!period@{period}}
+\index{period@{period}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{period}{period}}
+{\footnotesize\ttfamily \hyperlink{_s_w___output_8h_ad4bca29edbc3cfff634f5c23d1cefb1c}{Out\+Period} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::period}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a1b2e79aa8b30b491a7558244a42ef5b1}\label{struct_s_w___o_u_t_p_u_t_a1b2e79aa8b30b491a7558244a42ef5b1}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!pfunc@{pfunc}}
+\index{pfunc@{pfunc}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{pfunc}{pfunc}}
+{\footnotesize\ttfamily void($\ast$ S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::pfunc) (void)}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+construct().
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a2a29e58833af5162fa6dbc14c307af68}\label{struct_s_w___o_u_t_p_u_t_a2a29e58833af5162fa6dbc14c307af68}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!sumtype@{sumtype}}
+\index{sumtype@{sumtype}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{sumtype}{sumtype}}
+{\footnotesize\ttfamily \hyperlink{_s_w___output_8h_af6bc39c9780566b4a3891132f6977362}{Out\+Sum} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::sumtype}
+
+\mbox{\Hypertarget{struct_s_w___o_u_t_p_u_t_a86d069d21282a56d0f4b730eba846c37}\label{struct_s_w___o_u_t_p_u_t_a86d069d21282a56d0f4b730eba846c37}}
+\index{S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}!use@{use}}
+\index{use@{use}!S\+W\+\_\+\+O\+U\+T\+P\+UT@{S\+W\+\_\+\+O\+U\+T\+P\+UT}}
+\subsubsection{\texorpdfstring{use}{use}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+O\+U\+T\+P\+U\+T\+::use}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___output_8h}{S\+W\+\_\+\+Output.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___s_i_t_e.tex b/doc/latex/struct_s_w___s_i_t_e.tex
new file mode 100644
index 000000000..d44a905f5
--- /dev/null
+++ b/doc/latex/struct_s_w___s_i_t_e.tex
@@ -0,0 +1,345 @@
+\hypertarget{struct_s_w___s_i_t_e}{}\section{S\+W\+\_\+\+S\+I\+TE Struct Reference}
+\label{struct_s_w___s_i_t_e}\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Site.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___s_i_t_e_a765f882f259cb7b35e7add0c619487b5}{reset\+\_\+yr}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___s_i_t_e_aae633b81c30d64e202471683f49efb22}{deepdrain}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___s_i_t_e_ac833a8e8b0064ae71f4c9e5afbac3e2a}{use\+\_\+soil\+\_\+temp}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_a25d5e9b4d6a783d750815ed70335c7dc}{n\+\_\+layers}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_ac86e8be44e9ab1d2dcf446a6a3d2e49b}{n\+\_\+transp\+\_\+rgn}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_ac352e7034b6e5c5338506ed915dde58a}{n\+\_\+evap\+\_\+lyrs}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_aa8e2f435288f072fd2b54b671ef18b32}{n\+\_\+transp\+\_\+lyrs\+\_\+forb}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_aa50dc8a846261f34cbf9e1872708b617}{n\+\_\+transp\+\_\+lyrs\+\_\+tree}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_ad04993303b563bc613ebf91d49d0b907}{n\+\_\+transp\+\_\+lyrs\+\_\+shrub}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_a4da0818cfd5d9b714a44c6da2a52fc9b}{n\+\_\+transp\+\_\+lyrs\+\_\+grass}
+\item
+\hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} \hyperlink{struct_s_w___s_i_t_e_a333a975ee5a0f8ef83d046934ee3e07c}{deep\+\_\+lyr}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_ae719e82627da1854175c68f2a983b4e4}{slow\+\_\+drain\+\_\+coeff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a316a83f5e18d0ef96facdb137be204e8}{pet\+\_\+scale}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a1ee73c3e369f34738a512a3cfb347f6c}{latitude}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a629d32537e820e206d40130fad7c4062}{altitude}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a1fad2c5ab6f975f91f3239e0b6864a17}{slope}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a9e796e15a361229e4183113ed7513887}{aspect}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a5de1acbbf63fde3374e3c9dadfbf8e68}{Tmin\+Accu2}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a927f6cc5009de29764996f686dd76fda}{Tmax\+Crit}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_ae5f7fa59995e2f5bcee83c33a216f223}{lambdasnow}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a4d8fa1fc6e9d47a0df862b6fd17f4d55}{Rmelt\+Min}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a4195d9921f0aa2df1bf1253014c22aa8}{Rmelt\+Max}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a774f7dfc974665b01a20b03aece50014}{t1\+Param1}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_aba0f70cf5887bb434c2db3d3d3cd98d6}{t1\+Param2}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a78234f852f50c522c1eb5cd3deef0006}{t1\+Param3}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_abcbc9a27e4b7434550d3874ea122f773}{cs\+Param1}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a26e28e4d53192b0f8939ec18c6da1ca0}{cs\+Param2}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a2631d8dc67d0d6b2fcc8de1ff198b7e4}{sh\+Param}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a0ccaf8b11f1d955911baa672d01a69ca}{bm\+Limiter}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_ab57649eca8cb5925b1c64c2a272dded1}{mean\+Air\+Temp}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_ab341f5987573838aa27accaa76cb623d}{st\+DeltaX}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a2d0faa1184f98e69ebdce43ea73ff065}{st\+Max\+Depth}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_i_t_e_a5115e3635bb6564428f7a2d8bd58c397}{percent\+Runoff}
+\item
+unsigned int \hyperlink{struct_s_w___s_i_t_e_a027a8c196e4b1c06f1d5627498e36336}{st\+N\+R\+GR}
+\item
+\hyperlink{structtanfunc__t}{tanfunc\+\_\+t} \hyperlink{struct_s_w___s_i_t_e_a6f02194421ed4fd8e615c478ad65f50c}{evap}
+\item
+\hyperlink{structtanfunc__t}{tanfunc\+\_\+t} \hyperlink{struct_s_w___s_i_t_e_a1762feaaded27252b000f391a5d3259c}{transp}
+\item
+\hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o}{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO} $\ast$$\ast$ \hyperlink{struct_s_w___s_i_t_e_a95e72b7c2bc0c4e6ebb4a5dbd56855ce}{lyr}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a629d32537e820e206d40130fad7c4062}\label{struct_s_w___s_i_t_e_a629d32537e820e206d40130fad7c4062}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!altitude@{altitude}}
+\index{altitude@{altitude}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{altitude}{altitude}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::altitude}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a9e796e15a361229e4183113ed7513887}\label{struct_s_w___s_i_t_e_a9e796e15a361229e4183113ed7513887}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!aspect@{aspect}}
+\index{aspect@{aspect}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{aspect}{aspect}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::aspect}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a0ccaf8b11f1d955911baa672d01a69ca}\label{struct_s_w___s_i_t_e_a0ccaf8b11f1d955911baa672d01a69ca}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!bm\+Limiter@{bm\+Limiter}}
+\index{bm\+Limiter@{bm\+Limiter}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{bm\+Limiter}{bmLimiter}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::bm\+Limiter}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_abcbc9a27e4b7434550d3874ea122f773}\label{struct_s_w___s_i_t_e_abcbc9a27e4b7434550d3874ea122f773}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!cs\+Param1@{cs\+Param1}}
+\index{cs\+Param1@{cs\+Param1}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{cs\+Param1}{csParam1}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::cs\+Param1}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a26e28e4d53192b0f8939ec18c6da1ca0}\label{struct_s_w___s_i_t_e_a26e28e4d53192b0f8939ec18c6da1ca0}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!cs\+Param2@{cs\+Param2}}
+\index{cs\+Param2@{cs\+Param2}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{cs\+Param2}{csParam2}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::cs\+Param2}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a333a975ee5a0f8ef83d046934ee3e07c}\label{struct_s_w___s_i_t_e_a333a975ee5a0f8ef83d046934ee3e07c}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!deep\+\_\+lyr@{deep\+\_\+lyr}}
+\index{deep\+\_\+lyr@{deep\+\_\+lyr}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{deep\+\_\+lyr}{deep\_lyr}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::deep\+\_\+lyr}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_aae633b81c30d64e202471683f49efb22}\label{struct_s_w___s_i_t_e_aae633b81c30d64e202471683f49efb22}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!deepdrain@{deepdrain}}
+\index{deepdrain@{deepdrain}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{deepdrain}{deepdrain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+S\+I\+T\+E\+::deepdrain}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a6f02194421ed4fd8e615c478ad65f50c}\label{struct_s_w___s_i_t_e_a6f02194421ed4fd8e615c478ad65f50c}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!evap@{evap}}
+\index{evap@{evap}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{evap}{evap}}
+{\footnotesize\ttfamily \hyperlink{structtanfunc__t}{tanfunc\+\_\+t} S\+W\+\_\+\+S\+I\+T\+E\+::evap}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ae5f7fa59995e2f5bcee83c33a216f223}\label{struct_s_w___s_i_t_e_ae5f7fa59995e2f5bcee83c33a216f223}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!lambdasnow@{lambdasnow}}
+\index{lambdasnow@{lambdasnow}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{lambdasnow}{lambdasnow}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::lambdasnow}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a1ee73c3e369f34738a512a3cfb347f6c}\label{struct_s_w___s_i_t_e_a1ee73c3e369f34738a512a3cfb347f6c}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!latitude@{latitude}}
+\index{latitude@{latitude}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{latitude}{latitude}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::latitude}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a95e72b7c2bc0c4e6ebb4a5dbd56855ce}\label{struct_s_w___s_i_t_e_a95e72b7c2bc0c4e6ebb4a5dbd56855ce}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!lyr@{lyr}}
+\index{lyr@{lyr}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{lyr}{lyr}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___l_a_y_e_r___i_n_f_o}{S\+W\+\_\+\+L\+A\+Y\+E\+R\+\_\+\+I\+N\+FO}$\ast$$\ast$ S\+W\+\_\+\+S\+I\+T\+E\+::lyr}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), pot\+\_\+soil\+\_\+evap(), pot\+\_\+soil\+\_\+evap\+\_\+bs(), S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers(), S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), S\+W\+\_\+\+S\+W\+C\+\_\+read(), S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow(), S\+W\+\_\+\+S\+W\+Cbulk2\+S\+W\+Pmatric(), S\+W\+\_\+\+S\+W\+Pmatric2\+V\+W\+C\+Bulk(), transp\+\_\+weighted\+\_\+avg(), and water\+\_\+eqn().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ab57649eca8cb5925b1c64c2a272dded1}\label{struct_s_w___s_i_t_e_ab57649eca8cb5925b1c64c2a272dded1}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!mean\+Air\+Temp@{mean\+Air\+Temp}}
+\index{mean\+Air\+Temp@{mean\+Air\+Temp}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{mean\+Air\+Temp}{meanAirTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::mean\+Air\+Temp}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ac352e7034b6e5c5338506ed915dde58a}\label{struct_s_w___s_i_t_e_ac352e7034b6e5c5338506ed915dde58a}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+evap\+\_\+lyrs@{n\+\_\+evap\+\_\+lyrs}}
+\index{n\+\_\+evap\+\_\+lyrs@{n\+\_\+evap\+\_\+lyrs}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+evap\+\_\+lyrs}{n\_evap\_lyrs}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+evap\+\_\+lyrs}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a25d5e9b4d6a783d750815ed70335c7dc}\label{struct_s_w___s_i_t_e_a25d5e9b4d6a783d750815ed70335c7dc}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+layers@{n\+\_\+layers}}
+\index{n\+\_\+layers@{n\+\_\+layers}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+layers}{n\_layers}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+layers}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+S\+I\+T\+\_\+clear\+\_\+layers().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_aa8e2f435288f072fd2b54b671ef18b32}\label{struct_s_w___s_i_t_e_aa8e2f435288f072fd2b54b671ef18b32}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+transp\+\_\+lyrs\+\_\+forb@{n\+\_\+transp\+\_\+lyrs\+\_\+forb}}
+\index{n\+\_\+transp\+\_\+lyrs\+\_\+forb@{n\+\_\+transp\+\_\+lyrs\+\_\+forb}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+transp\+\_\+lyrs\+\_\+forb}{n\_transp\_lyrs\_forb}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+transp\+\_\+lyrs\+\_\+forb}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a4da0818cfd5d9b714a44c6da2a52fc9b}\label{struct_s_w___s_i_t_e_a4da0818cfd5d9b714a44c6da2a52fc9b}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+transp\+\_\+lyrs\+\_\+grass@{n\+\_\+transp\+\_\+lyrs\+\_\+grass}}
+\index{n\+\_\+transp\+\_\+lyrs\+\_\+grass@{n\+\_\+transp\+\_\+lyrs\+\_\+grass}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+transp\+\_\+lyrs\+\_\+grass}{n\_transp\_lyrs\_grass}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+transp\+\_\+lyrs\+\_\+grass}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ad04993303b563bc613ebf91d49d0b907}\label{struct_s_w___s_i_t_e_ad04993303b563bc613ebf91d49d0b907}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+transp\+\_\+lyrs\+\_\+shrub@{n\+\_\+transp\+\_\+lyrs\+\_\+shrub}}
+\index{n\+\_\+transp\+\_\+lyrs\+\_\+shrub@{n\+\_\+transp\+\_\+lyrs\+\_\+shrub}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+transp\+\_\+lyrs\+\_\+shrub}{n\_transp\_lyrs\_shrub}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+transp\+\_\+lyrs\+\_\+shrub}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_aa50dc8a846261f34cbf9e1872708b617}\label{struct_s_w___s_i_t_e_aa50dc8a846261f34cbf9e1872708b617}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+transp\+\_\+lyrs\+\_\+tree@{n\+\_\+transp\+\_\+lyrs\+\_\+tree}}
+\index{n\+\_\+transp\+\_\+lyrs\+\_\+tree@{n\+\_\+transp\+\_\+lyrs\+\_\+tree}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+transp\+\_\+lyrs\+\_\+tree}{n\_transp\_lyrs\_tree}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+transp\+\_\+lyrs\+\_\+tree}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ac86e8be44e9ab1d2dcf446a6a3d2e49b}\label{struct_s_w___s_i_t_e_ac86e8be44e9ab1d2dcf446a6a3d2e49b}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!n\+\_\+transp\+\_\+rgn@{n\+\_\+transp\+\_\+rgn}}
+\index{n\+\_\+transp\+\_\+rgn@{n\+\_\+transp\+\_\+rgn}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{n\+\_\+transp\+\_\+rgn}{n\_transp\_rgn}}
+{\footnotesize\ttfamily \hyperlink{_s_w___site_8h_a6fece0d49f08459808b94a38696a4180}{Lyr\+Index} S\+W\+\_\+\+S\+I\+T\+E\+::n\+\_\+transp\+\_\+rgn}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a5115e3635bb6564428f7a2d8bd58c397}\label{struct_s_w___s_i_t_e_a5115e3635bb6564428f7a2d8bd58c397}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!percent\+Runoff@{percent\+Runoff}}
+\index{percent\+Runoff@{percent\+Runoff}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{percent\+Runoff}{percentRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::percent\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a316a83f5e18d0ef96facdb137be204e8}\label{struct_s_w___s_i_t_e_a316a83f5e18d0ef96facdb137be204e8}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!pet\+\_\+scale@{pet\+\_\+scale}}
+\index{pet\+\_\+scale@{pet\+\_\+scale}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{pet\+\_\+scale}{pet\_scale}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::pet\+\_\+scale}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a765f882f259cb7b35e7add0c619487b5}\label{struct_s_w___s_i_t_e_a765f882f259cb7b35e7add0c619487b5}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!reset\+\_\+yr@{reset\+\_\+yr}}
+\index{reset\+\_\+yr@{reset\+\_\+yr}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{reset\+\_\+yr}{reset\_yr}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+S\+I\+T\+E\+::reset\+\_\+yr}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a4195d9921f0aa2df1bf1253014c22aa8}\label{struct_s_w___s_i_t_e_a4195d9921f0aa2df1bf1253014c22aa8}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!Rmelt\+Max@{Rmelt\+Max}}
+\index{Rmelt\+Max@{Rmelt\+Max}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{Rmelt\+Max}{RmeltMax}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::\+Rmelt\+Max}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a4d8fa1fc6e9d47a0df862b6fd17f4d55}\label{struct_s_w___s_i_t_e_a4d8fa1fc6e9d47a0df862b6fd17f4d55}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!Rmelt\+Min@{Rmelt\+Min}}
+\index{Rmelt\+Min@{Rmelt\+Min}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{Rmelt\+Min}{RmeltMin}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::\+Rmelt\+Min}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a2631d8dc67d0d6b2fcc8de1ff198b7e4}\label{struct_s_w___s_i_t_e_a2631d8dc67d0d6b2fcc8de1ff198b7e4}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!sh\+Param@{sh\+Param}}
+\index{sh\+Param@{sh\+Param}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{sh\+Param}{shParam}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::sh\+Param}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a1fad2c5ab6f975f91f3239e0b6864a17}\label{struct_s_w___s_i_t_e_a1fad2c5ab6f975f91f3239e0b6864a17}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!slope@{slope}}
+\index{slope@{slope}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{slope}{slope}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::slope}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ae719e82627da1854175c68f2a983b4e4}\label{struct_s_w___s_i_t_e_ae719e82627da1854175c68f2a983b4e4}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!slow\+\_\+drain\+\_\+coeff@{slow\+\_\+drain\+\_\+coeff}}
+\index{slow\+\_\+drain\+\_\+coeff@{slow\+\_\+drain\+\_\+coeff}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{slow\+\_\+drain\+\_\+coeff}{slow\_drain\_coeff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::slow\+\_\+drain\+\_\+coeff}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ab341f5987573838aa27accaa76cb623d}\label{struct_s_w___s_i_t_e_ab341f5987573838aa27accaa76cb623d}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!st\+DeltaX@{st\+DeltaX}}
+\index{st\+DeltaX@{st\+DeltaX}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{st\+DeltaX}{stDeltaX}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::st\+DeltaX}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a2d0faa1184f98e69ebdce43ea73ff065}\label{struct_s_w___s_i_t_e_a2d0faa1184f98e69ebdce43ea73ff065}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!st\+Max\+Depth@{st\+Max\+Depth}}
+\index{st\+Max\+Depth@{st\+Max\+Depth}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{st\+Max\+Depth}{stMaxDepth}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::st\+Max\+Depth}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a027a8c196e4b1c06f1d5627498e36336}\label{struct_s_w___s_i_t_e_a027a8c196e4b1c06f1d5627498e36336}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!st\+N\+R\+GR@{st\+N\+R\+GR}}
+\index{st\+N\+R\+GR@{st\+N\+R\+GR}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{st\+N\+R\+GR}{stNRGR}}
+{\footnotesize\ttfamily unsigned int S\+W\+\_\+\+S\+I\+T\+E\+::st\+N\+R\+GR}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a774f7dfc974665b01a20b03aece50014}\label{struct_s_w___s_i_t_e_a774f7dfc974665b01a20b03aece50014}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!t1\+Param1@{t1\+Param1}}
+\index{t1\+Param1@{t1\+Param1}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{t1\+Param1}{t1Param1}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::t1\+Param1}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_aba0f70cf5887bb434c2db3d3d3cd98d6}\label{struct_s_w___s_i_t_e_aba0f70cf5887bb434c2db3d3d3cd98d6}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!t1\+Param2@{t1\+Param2}}
+\index{t1\+Param2@{t1\+Param2}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{t1\+Param2}{t1Param2}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::t1\+Param2}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a78234f852f50c522c1eb5cd3deef0006}\label{struct_s_w___s_i_t_e_a78234f852f50c522c1eb5cd3deef0006}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!t1\+Param3@{t1\+Param3}}
+\index{t1\+Param3@{t1\+Param3}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{t1\+Param3}{t1Param3}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::t1\+Param3}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a927f6cc5009de29764996f686dd76fda}\label{struct_s_w___s_i_t_e_a927f6cc5009de29764996f686dd76fda}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!Tmax\+Crit@{Tmax\+Crit}}
+\index{Tmax\+Crit@{Tmax\+Crit}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{Tmax\+Crit}{TmaxCrit}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::\+Tmax\+Crit}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a5de1acbbf63fde3374e3c9dadfbf8e68}\label{struct_s_w___s_i_t_e_a5de1acbbf63fde3374e3c9dadfbf8e68}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!Tmin\+Accu2@{Tmin\+Accu2}}
+\index{Tmin\+Accu2@{Tmin\+Accu2}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{Tmin\+Accu2}{TminAccu2}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+I\+T\+E\+::\+Tmin\+Accu2}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow().
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_a1762feaaded27252b000f391a5d3259c}\label{struct_s_w___s_i_t_e_a1762feaaded27252b000f391a5d3259c}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!transp@{transp}}
+\index{transp@{transp}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{transp}{transp}}
+{\footnotesize\ttfamily \hyperlink{structtanfunc__t}{tanfunc\+\_\+t} S\+W\+\_\+\+S\+I\+T\+E\+::transp}
+
+\mbox{\Hypertarget{struct_s_w___s_i_t_e_ac833a8e8b0064ae71f4c9e5afbac3e2a}\label{struct_s_w___s_i_t_e_ac833a8e8b0064ae71f4c9e5afbac3e2a}}
+\index{S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}!use\+\_\+soil\+\_\+temp@{use\+\_\+soil\+\_\+temp}}
+\index{use\+\_\+soil\+\_\+temp@{use\+\_\+soil\+\_\+temp}!S\+W\+\_\+\+S\+I\+TE@{S\+W\+\_\+\+S\+I\+TE}}
+\subsubsection{\texorpdfstring{use\+\_\+soil\+\_\+temp}{use\_soil\_temp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+S\+I\+T\+E\+::use\+\_\+soil\+\_\+temp}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___site_8h}{S\+W\+\_\+\+Site.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___s_k_y.tex b/doc/latex/struct_s_w___s_k_y.tex
new file mode 100644
index 000000000..535627c71
--- /dev/null
+++ b/doc/latex/struct_s_w___s_k_y.tex
@@ -0,0 +1,137 @@
+\hypertarget{struct_s_w___s_k_y}{}\section{S\+W\+\_\+\+S\+KY Struct Reference}
+\label{struct_s_w___s_k_y}\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Sky.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_af017b36b9b0ac37ede5f754370feacd6}{cloudcov} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_aca3ab26df7089417506c37978cb7f418}{windspeed} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a83efc4f0d50703fb68cba8499d06ad23}{r\+\_\+humidity} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_aa6e86848395fa97cf26c2dddebbb23a0}{transmission} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a89810fdf277f73bd5775cf8eadab4e41}{snow\+\_\+density} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a5bc5d73d1ff5698d0854ed96b1f9efd9}{cloudcov\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a4ff5ab990d3ea971d383440c6548541f}{windspeed\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a5abbc167044f7218819f1ab24c8efd9a}{r\+\_\+humidity\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_a62644fcb44b1b155c44df63060efb6f1}{transmission\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_k_y_af459243a729395ba95b534bb03af3eaa}{snow\+\_\+density\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___s_k_y_af017b36b9b0ac37ede5f754370feacd6}\label{struct_s_w___s_k_y_af017b36b9b0ac37ede5f754370feacd6}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!cloudcov@{cloudcov}}
+\index{cloudcov@{cloudcov}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{cloudcov}{cloudcov}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::cloudcov\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a5bc5d73d1ff5698d0854ed96b1f9efd9}\label{struct_s_w___s_k_y_a5bc5d73d1ff5698d0854ed96b1f9efd9}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!cloudcov\+\_\+daily@{cloudcov\+\_\+daily}}
+\index{cloudcov\+\_\+daily@{cloudcov\+\_\+daily}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{cloudcov\+\_\+daily}{cloudcov\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::cloudcov\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a83efc4f0d50703fb68cba8499d06ad23}\label{struct_s_w___s_k_y_a83efc4f0d50703fb68cba8499d06ad23}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!r\+\_\+humidity@{r\+\_\+humidity}}
+\index{r\+\_\+humidity@{r\+\_\+humidity}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{r\+\_\+humidity}{r\_humidity}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::r\+\_\+humidity\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a5abbc167044f7218819f1ab24c8efd9a}\label{struct_s_w___s_k_y_a5abbc167044f7218819f1ab24c8efd9a}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!r\+\_\+humidity\+\_\+daily@{r\+\_\+humidity\+\_\+daily}}
+\index{r\+\_\+humidity\+\_\+daily@{r\+\_\+humidity\+\_\+daily}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{r\+\_\+humidity\+\_\+daily}{r\_humidity\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::r\+\_\+humidity\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a89810fdf277f73bd5775cf8eadab4e41}\label{struct_s_w___s_k_y_a89810fdf277f73bd5775cf8eadab4e41}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!snow\+\_\+density@{snow\+\_\+density}}
+\index{snow\+\_\+density@{snow\+\_\+density}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{snow\+\_\+density}{snow\_density}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::snow\+\_\+density\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_af459243a729395ba95b534bb03af3eaa}\label{struct_s_w___s_k_y_af459243a729395ba95b534bb03af3eaa}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!snow\+\_\+density\+\_\+daily@{snow\+\_\+density\+\_\+daily}}
+\index{snow\+\_\+density\+\_\+daily@{snow\+\_\+density\+\_\+daily}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{snow\+\_\+density\+\_\+daily}{snow\_density\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::snow\+\_\+density\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_aa6e86848395fa97cf26c2dddebbb23a0}\label{struct_s_w___s_k_y_aa6e86848395fa97cf26c2dddebbb23a0}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!transmission@{transmission}}
+\index{transmission@{transmission}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{transmission}{transmission}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::transmission\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a62644fcb44b1b155c44df63060efb6f1}\label{struct_s_w___s_k_y_a62644fcb44b1b155c44df63060efb6f1}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!transmission\+\_\+daily@{transmission\+\_\+daily}}
+\index{transmission\+\_\+daily@{transmission\+\_\+daily}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{transmission\+\_\+daily}{transmission\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::transmission\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_aca3ab26df7089417506c37978cb7f418}\label{struct_s_w___s_k_y_aca3ab26df7089417506c37978cb7f418}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!windspeed@{windspeed}}
+\index{windspeed@{windspeed}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{windspeed}{windspeed}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::windspeed\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___s_k_y_a4ff5ab990d3ea971d383440c6548541f}\label{struct_s_w___s_k_y_a4ff5ab990d3ea971d383440c6548541f}}
+\index{S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}!windspeed\+\_\+daily@{windspeed\+\_\+daily}}
+\index{windspeed\+\_\+daily@{windspeed\+\_\+daily}!S\+W\+\_\+\+S\+KY@{S\+W\+\_\+\+S\+KY}}
+\subsubsection{\texorpdfstring{windspeed\+\_\+daily}{windspeed\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+K\+Y\+::windspeed\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+K\+Y\+\_\+init().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___sky_8h}{S\+W\+\_\+\+Sky.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___s_o_i_l_w_a_t.tex b/doc/latex/struct_s_w___s_o_i_l_w_a_t.tex
new file mode 100644
index 000000000..de09eb466
--- /dev/null
+++ b/doc/latex/struct_s_w___s_o_i_l_w_a_t.tex
@@ -0,0 +1,377 @@
+\hypertarget{struct_s_w___s_o_i_l_w_a_t}{}\section{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT Struct Reference}
+\label{struct_s_w___s_o_i_l_w_a_t}\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Soil\+Water.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a91c38cb36f890054c8c7cac57fa9e1c3}{is\+\_\+wet} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a7d8626416b6c3999010e5e6f3b0b8b88}{swc\+Bulk} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a62e49bd4b9572f84fa6089324d5599ef}{snowpack} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ae42a92727559a0b8d92e5506496718cd}{snowdepth}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a5daee6e2e1a9137b841071b737e91774}{transpiration\+\_\+tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a68e5c33a1f6adf10b5a753a05f624d8d}{transpiration\+\_\+forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_afa1a05309f50aed97ddc45eb681cd64c}{transpiration\+\_\+shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a9d390d06432096765fa4ccee86c0d52c}{transpiration\+\_\+grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a97e5e7696bf9507aba5ce073dfa1c4ed}{evaporation} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a737c1f175842397814fb73010d6edf63}{drain} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_afddca5ce17b929a9d5ef90af851b91cf}{hydred\+\_\+tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_af4967dc3798621e76f8dfc46534cdd19}{hydred\+\_\+forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a57fe08c905dbed174e9ca34aecc21fed}{hydred\+\_\+shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ad7cc379ceaeccbcb0868e32670c36a87}{hydred\+\_\+grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ab3da39f45f394427be3b39284c4f5087}{surface\+Water}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a2f09c700a5a9c19d1f3d265c6e93de14}{surface\+Water\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a5d20e6c7bcc97871d0a6c45d85f1310e}{pet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ab20ee61d22fa1ea939c3588598820e64}{aet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_af2e9ae147acd4d374308794791069cca}{litter\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ae5711cd9496256efc48dedec4cc1290b}{tree\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a8f2a8306199efda056e5ba7d4a7cd139}{forb\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a2ae7767939fbe6768a76865181ebafba}{shrub\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a9bd6b6ed4f7a4046dedb095840f0cad2}{grass\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ab670488e0cb560b8b69241375a90de64}{litter\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a8c46d477811011c64adff79397b09cf4}{tree\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a03e041ce5230b534301d052d6e372a6f}{forb\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_abe95cdaea18b0e7040a922781abb752b}{shrub\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_aca40d0b466b93b565dc469e0cae4a8c7}{grass\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ad7083aac9276d0d6cd23c4b51a792f52}{s\+Temp} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a1805861c30af3374c3aa421ac4cc4893}{surface\+Temp}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ab6d815d17014699a8eb62e5cb18cb97c}{parts\+Error}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_aa8c53c96abedc3ca4403c599c8467438}{dysum}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a50c9180d0925a21ae999cf82a90281f3}{wksum}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a228de038c435a59e1fdde732dec48d65}{mosum}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a56d7bbf038b877fcd89e25afeac5e13c}{yrsum}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_ae4473100eb2fddaa76f6992003bf4375}{wkavg}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_af230932184eefc22bdce3843729544d4}{moavg}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a473caf3a53aaf6fcbf786dcd69358cff}{yravg}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___s_o_i_l_w_a_t_a68526d39106aabc0c7f2a1480e9cfe25}{hist\+\_\+use}
+\item
+\hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST} \hyperlink{struct_s_w___s_o_i_l_w_a_t_aa76de1bb45113a2e78860e6c1cec310d}{hist}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ab20ee61d22fa1ea939c3588598820e64}\label{struct_s_w___s_o_i_l_w_a_t_ab20ee61d22fa1ea939c3588598820e64}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!aet@{aet}}
+\index{aet@{aet}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{aet}{aet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::aet}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a737c1f175842397814fb73010d6edf63}\label{struct_s_w___s_o_i_l_w_a_t_a737c1f175842397814fb73010d6edf63}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!drain@{drain}}
+\index{drain@{drain}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{drain}{drain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::drain\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_aa8c53c96abedc3ca4403c599c8467438}\label{struct_s_w___s_o_i_l_w_a_t_aa8c53c96abedc3ca4403c599c8467438}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!dysum@{dysum}}
+\index{dysum@{dysum}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{dysum}{dysum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::dysum}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a97e5e7696bf9507aba5ce073dfa1c4ed}\label{struct_s_w___s_o_i_l_w_a_t_a97e5e7696bf9507aba5ce073dfa1c4ed}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!evaporation@{evaporation}}
+\index{evaporation@{evaporation}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{evaporation}{evaporation}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::evaporation\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a8f2a8306199efda056e5ba7d4a7cd139}\label{struct_s_w___s_o_i_l_w_a_t_a8f2a8306199efda056e5ba7d4a7cd139}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!forb\+\_\+evap@{forb\+\_\+evap}}
+\index{forb\+\_\+evap@{forb\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{forb\+\_\+evap}{forb\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::forb\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a03e041ce5230b534301d052d6e372a6f}\label{struct_s_w___s_o_i_l_w_a_t_a03e041ce5230b534301d052d6e372a6f}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!forb\+\_\+int@{forb\+\_\+int}}
+\index{forb\+\_\+int@{forb\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{forb\+\_\+int}{forb\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::forb\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a9bd6b6ed4f7a4046dedb095840f0cad2}\label{struct_s_w___s_o_i_l_w_a_t_a9bd6b6ed4f7a4046dedb095840f0cad2}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!grass\+\_\+evap@{grass\+\_\+evap}}
+\index{grass\+\_\+evap@{grass\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{grass\+\_\+evap}{grass\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::grass\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_aca40d0b466b93b565dc469e0cae4a8c7}\label{struct_s_w___s_o_i_l_w_a_t_aca40d0b466b93b565dc469e0cae4a8c7}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!grass\+\_\+int@{grass\+\_\+int}}
+\index{grass\+\_\+int@{grass\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{grass\+\_\+int}{grass\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::grass\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_aa76de1bb45113a2e78860e6c1cec310d}\label{struct_s_w___s_o_i_l_w_a_t_aa76de1bb45113a2e78860e6c1cec310d}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hist@{hist}}
+\index{hist@{hist}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hist}{hist}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hist}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a68526d39106aabc0c7f2a1480e9cfe25}\label{struct_s_w___s_o_i_l_w_a_t_a68526d39106aabc0c7f2a1480e9cfe25}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hist\+\_\+use@{hist\+\_\+use}}
+\index{hist\+\_\+use@{hist\+\_\+use}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hist\+\_\+use}{hist\_use}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hist\+\_\+use}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_af4967dc3798621e76f8dfc46534cdd19}\label{struct_s_w___s_o_i_l_w_a_t_af4967dc3798621e76f8dfc46534cdd19}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hydred\+\_\+forb@{hydred\+\_\+forb}}
+\index{hydred\+\_\+forb@{hydred\+\_\+forb}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hydred\+\_\+forb}{hydred\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hydred\+\_\+forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ad7cc379ceaeccbcb0868e32670c36a87}\label{struct_s_w___s_o_i_l_w_a_t_ad7cc379ceaeccbcb0868e32670c36a87}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hydred\+\_\+grass@{hydred\+\_\+grass}}
+\index{hydred\+\_\+grass@{hydred\+\_\+grass}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hydred\+\_\+grass}{hydred\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hydred\+\_\+grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a57fe08c905dbed174e9ca34aecc21fed}\label{struct_s_w___s_o_i_l_w_a_t_a57fe08c905dbed174e9ca34aecc21fed}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hydred\+\_\+shrub@{hydred\+\_\+shrub}}
+\index{hydred\+\_\+shrub@{hydred\+\_\+shrub}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hydred\+\_\+shrub}{hydred\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hydred\+\_\+shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_afddca5ce17b929a9d5ef90af851b91cf}\label{struct_s_w___s_o_i_l_w_a_t_afddca5ce17b929a9d5ef90af851b91cf}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!hydred\+\_\+tree@{hydred\+\_\+tree}}
+\index{hydred\+\_\+tree@{hydred\+\_\+tree}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{hydred\+\_\+tree}{hydred\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::hydred\+\_\+tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a91c38cb36f890054c8c7cac57fa9e1c3}\label{struct_s_w___s_o_i_l_w_a_t_a91c38cb36f890054c8c7cac57fa9e1c3}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!is\+\_\+wet@{is\+\_\+wet}}
+\index{is\+\_\+wet@{is\+\_\+wet}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{is\+\_\+wet}{is\_wet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::is\+\_\+wet\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_af2e9ae147acd4d374308794791069cca}\label{struct_s_w___s_o_i_l_w_a_t_af2e9ae147acd4d374308794791069cca}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!litter\+\_\+evap@{litter\+\_\+evap}}
+\index{litter\+\_\+evap@{litter\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{litter\+\_\+evap}{litter\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::litter\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ab670488e0cb560b8b69241375a90de64}\label{struct_s_w___s_o_i_l_w_a_t_ab670488e0cb560b8b69241375a90de64}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!litter\+\_\+int@{litter\+\_\+int}}
+\index{litter\+\_\+int@{litter\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{litter\+\_\+int}{litter\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::litter\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_af230932184eefc22bdce3843729544d4}\label{struct_s_w___s_o_i_l_w_a_t_af230932184eefc22bdce3843729544d4}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!moavg@{moavg}}
+\index{moavg@{moavg}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{moavg}{moavg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::moavg}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a228de038c435a59e1fdde732dec48d65}\label{struct_s_w___s_o_i_l_w_a_t_a228de038c435a59e1fdde732dec48d65}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!mosum@{mosum}}
+\index{mosum@{mosum}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{mosum}{mosum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::mosum}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ab6d815d17014699a8eb62e5cb18cb97c}\label{struct_s_w___s_o_i_l_w_a_t_ab6d815d17014699a8eb62e5cb18cb97c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!parts\+Error@{parts\+Error}}
+\index{parts\+Error@{parts\+Error}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{parts\+Error}{partsError}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::parts\+Error}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a5d20e6c7bcc97871d0a6c45d85f1310e}\label{struct_s_w___s_o_i_l_w_a_t_a5d20e6c7bcc97871d0a6c45d85f1310e}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!pet@{pet}}
+\index{pet@{pet}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{pet}{pet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::pet}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a2ae7767939fbe6768a76865181ebafba}\label{struct_s_w___s_o_i_l_w_a_t_a2ae7767939fbe6768a76865181ebafba}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!shrub\+\_\+evap@{shrub\+\_\+evap}}
+\index{shrub\+\_\+evap@{shrub\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{shrub\+\_\+evap}{shrub\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::shrub\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_abe95cdaea18b0e7040a922781abb752b}\label{struct_s_w___s_o_i_l_w_a_t_abe95cdaea18b0e7040a922781abb752b}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!shrub\+\_\+int@{shrub\+\_\+int}}
+\index{shrub\+\_\+int@{shrub\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{shrub\+\_\+int}{shrub\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::shrub\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ae42a92727559a0b8d92e5506496718cd}\label{struct_s_w___s_o_i_l_w_a_t_ae42a92727559a0b8d92e5506496718cd}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!snowdepth@{snowdepth}}
+\index{snowdepth@{snowdepth}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{snowdepth}{snowdepth}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::snowdepth}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a62e49bd4b9572f84fa6089324d5599ef}\label{struct_s_w___s_o_i_l_w_a_t_a62e49bd4b9572f84fa6089324d5599ef}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!snowpack@{snowpack}}
+\index{snowpack@{snowpack}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{snowpack}{snowpack}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::snowpack\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+snow(), S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day(), and S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ad7083aac9276d0d6cd23c4b51a792f52}\label{struct_s_w___s_o_i_l_w_a_t_ad7083aac9276d0d6cd23c4b51a792f52}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!s\+Temp@{s\+Temp}}
+\index{s\+Temp@{s\+Temp}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{s\+Temp}{sTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::s\+Temp\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+read().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a1805861c30af3374c3aa421ac4cc4893}\label{struct_s_w___s_o_i_l_w_a_t_a1805861c30af3374c3aa421ac4cc4893}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!surface\+Temp@{surface\+Temp}}
+\index{surface\+Temp@{surface\+Temp}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{surface\+Temp}{surfaceTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::surface\+Temp}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+read().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ab3da39f45f394427be3b39284c4f5087}\label{struct_s_w___s_o_i_l_w_a_t_ab3da39f45f394427be3b39284c4f5087}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!surface\+Water@{surface\+Water}}
+\index{surface\+Water@{surface\+Water}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{surface\+Water}{surfaceWater}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::surface\+Water}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a2f09c700a5a9c19d1f3d265c6e93de14}\label{struct_s_w___s_o_i_l_w_a_t_a2f09c700a5a9c19d1f3d265c6e93de14}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!surface\+Water\+\_\+evap@{surface\+Water\+\_\+evap}}
+\index{surface\+Water\+\_\+evap@{surface\+Water\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{surface\+Water\+\_\+evap}{surfaceWater\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::surface\+Water\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a7d8626416b6c3999010e5e6f3b0b8b88}\label{struct_s_w___s_o_i_l_w_a_t_a7d8626416b6c3999010e5e6f3b0b8b88}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!swc\+Bulk@{swc\+Bulk}}
+\index{swc\+Bulk@{swc\+Bulk}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{swc\+Bulk}{swcBulk}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::swc\+Bulk\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), S\+W\+\_\+\+S\+W\+C\+\_\+end\+\_\+day(), S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a68e5c33a1f6adf10b5a753a05f624d8d}\label{struct_s_w___s_o_i_l_w_a_t_a68e5c33a1f6adf10b5a753a05f624d8d}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!transpiration\+\_\+forb@{transpiration\+\_\+forb}}
+\index{transpiration\+\_\+forb@{transpiration\+\_\+forb}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{transpiration\+\_\+forb}{transpiration\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::transpiration\+\_\+forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a9d390d06432096765fa4ccee86c0d52c}\label{struct_s_w___s_o_i_l_w_a_t_a9d390d06432096765fa4ccee86c0d52c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!transpiration\+\_\+grass@{transpiration\+\_\+grass}}
+\index{transpiration\+\_\+grass@{transpiration\+\_\+grass}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{transpiration\+\_\+grass}{transpiration\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::transpiration\+\_\+grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_afa1a05309f50aed97ddc45eb681cd64c}\label{struct_s_w___s_o_i_l_w_a_t_afa1a05309f50aed97ddc45eb681cd64c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!transpiration\+\_\+shrub@{transpiration\+\_\+shrub}}
+\index{transpiration\+\_\+shrub@{transpiration\+\_\+shrub}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{transpiration\+\_\+shrub}{transpiration\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::transpiration\+\_\+shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a5daee6e2e1a9137b841071b737e91774}\label{struct_s_w___s_o_i_l_w_a_t_a5daee6e2e1a9137b841071b737e91774}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!transpiration\+\_\+tree@{transpiration\+\_\+tree}}
+\index{transpiration\+\_\+tree@{transpiration\+\_\+tree}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{transpiration\+\_\+tree}{transpiration\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::transpiration\+\_\+tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ae5711cd9496256efc48dedec4cc1290b}\label{struct_s_w___s_o_i_l_w_a_t_ae5711cd9496256efc48dedec4cc1290b}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!tree\+\_\+evap@{tree\+\_\+evap}}
+\index{tree\+\_\+evap@{tree\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{tree\+\_\+evap}{tree\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::tree\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a8c46d477811011c64adff79397b09cf4}\label{struct_s_w___s_o_i_l_w_a_t_a8c46d477811011c64adff79397b09cf4}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!tree\+\_\+int@{tree\+\_\+int}}
+\index{tree\+\_\+int@{tree\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{tree\+\_\+int}{tree\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::tree\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_ae4473100eb2fddaa76f6992003bf4375}\label{struct_s_w___s_o_i_l_w_a_t_ae4473100eb2fddaa76f6992003bf4375}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!wkavg@{wkavg}}
+\index{wkavg@{wkavg}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{wkavg}{wkavg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::wkavg}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a50c9180d0925a21ae999cf82a90281f3}\label{struct_s_w___s_o_i_l_w_a_t_a50c9180d0925a21ae999cf82a90281f3}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!wksum@{wksum}}
+\index{wksum@{wksum}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{wksum}{wksum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::wksum}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a473caf3a53aaf6fcbf786dcd69358cff}\label{struct_s_w___s_o_i_l_w_a_t_a473caf3a53aaf6fcbf786dcd69358cff}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!yravg@{yravg}}
+\index{yravg@{yravg}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{yravg}{yravg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::yravg}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t_a56d7bbf038b877fcd89e25afeac5e13c}\label{struct_s_w___s_o_i_l_w_a_t_a56d7bbf038b877fcd89e25afeac5e13c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}!yrsum@{yrsum}}
+\index{yrsum@{yrsum}!S\+W\+\_\+\+S\+O\+I\+L\+W\+AT@{S\+W\+\_\+\+S\+O\+I\+L\+W\+AT}}
+\subsubsection{\texorpdfstring{yrsum}{yrsum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+::yrsum}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___soil_water_8h}{S\+W\+\_\+\+Soil\+Water.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___s_o_i_l_w_a_t___h_i_s_t.tex b/doc/latex/struct_s_w___s_o_i_l_w_a_t___h_i_s_t.tex
new file mode 100644
index 000000000..263a12f39
--- /dev/null
+++ b/doc/latex/struct_s_w___s_o_i_l_w_a_t___h_i_s_t.tex
@@ -0,0 +1,73 @@
+\hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}{}\section{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST Struct Reference}
+\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t}\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Soil\+Water.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+int \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a0973f0ebe2ca6501995ae3563d59aa57}{method}
+\item
+\hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES} \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad6320d1a34ad896d6cf43162fa30c7b4}{yr}
+\item
+char $\ast$ \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ac3cd2f8bcae8e4fd379d7ba2abc232f3}{file\+\_\+prefix}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a66412728dccd4d1d3b5e99063baea807}{swc} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad8da2a3488424a1912ecc633269d7ad3}{std\+\_\+err} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ac3cd2f8bcae8e4fd379d7ba2abc232f3}\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ac3cd2f8bcae8e4fd379d7ba2abc232f3}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}!file\+\_\+prefix@{file\+\_\+prefix}}
+\index{file\+\_\+prefix@{file\+\_\+prefix}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{file\+\_\+prefix}{file\_prefix}}
+{\footnotesize\ttfamily char$\ast$ S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+S\+T\+::file\+\_\+prefix}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a0973f0ebe2ca6501995ae3563d59aa57}\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a0973f0ebe2ca6501995ae3563d59aa57}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}!method@{method}}
+\index{method@{method}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{method}{method}}
+{\footnotesize\ttfamily int S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+S\+T\+::method}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad8da2a3488424a1912ecc633269d7ad3}\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad8da2a3488424a1912ecc633269d7ad3}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}!std\+\_\+err@{std\+\_\+err}}
+\index{std\+\_\+err@{std\+\_\+err}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{std\+\_\+err}{std\_err}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+S\+T\+::std\+\_\+err\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a66412728dccd4d1d3b5e99063baea807}\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_a66412728dccd4d1d3b5e99063baea807}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}!swc@{swc}}
+\index{swc@{swc}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{swc}{swc}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+S\+T\+::swc\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+adjust\+\_\+swc(), and S\+W\+\_\+\+S\+W\+C\+\_\+water\+\_\+flow().
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad6320d1a34ad896d6cf43162fa30c7b4}\label{struct_s_w___s_o_i_l_w_a_t___h_i_s_t_ad6320d1a34ad896d6cf43162fa30c7b4}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}!yr@{yr}}
+\index{yr@{yr}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{yr}{yr}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+H\+I\+S\+T\+::yr}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___soil_water_8h}{S\+W\+\_\+\+Soil\+Water.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.tex b/doc/latex/struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.tex
new file mode 100644
index 000000000..72c0e59c2
--- /dev/null
+++ b/doc/latex/struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s.tex
@@ -0,0 +1,353 @@
+\hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}{}\section{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS Struct Reference}
+\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s}\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Soil\+Water.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aed2dfb051dba45c3686b8ec7e507ae7c}{wetdays} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a994933243a4cc2d79f473370c2a76053}{vwc\+Bulk} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a78733c0563f5cdc6c7086e0459ce64b1}{vwc\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aa01a03fb2985bfb56d3fe74c62d0b93c}{swc\+Bulk} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2732c7d89253515ee553d84302d6c1ea}{swp\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6025267482ec8ad65feb6ea92a6433f1}{swa\+Bulk} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04fce9cfb61a95c3693a91d063dea8a6}{swa\+Matric} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04519a8c7f27d6d6b5409f766e89ad5c}{transp\+\_\+total} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6d54ed116b7aad5ab860961030bbb04}{transp\+\_\+tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a52be93d2c988ec4c2e5a2d8cd1422813}{transp\+\_\+forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a363a24643a39beb0ca3f19f3c1b44d22}{transp\+\_\+shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adaf7d4faeca0252774a0fa5aa6c39719}{transp\+\_\+grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ae667fb63cc3c443bb163e5be66f04cda}{evap} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a660403d0f674a97bf8eb0e369a97e96c}{lyrdrain} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a8e7df238cdaa43818762d93e8807327c}{hydred\+\_\+total} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a62c0266c179509a69b235ae934c212a9}{hydred\+\_\+tree} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ac90c990df256cbb52aa538cc2673c8aa}{hydred\+\_\+forb} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6ad8ac38110a79b34c1f9681856dbc9}{hydred\+\_\+shrub} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a041a2ed3655b11e83b5acf8fe5ed9ce3}{hydred\+\_\+grass} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7b6c13a72a8a33b4c3c79c93cab2f13e}{surface\+Water}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6099933a1e8bc7009fead8e4cbf0aa3c}{total\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abd57d93e39a859160944629dc3797546}{surface\+Water\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a5256e09ef6e0a304a1edd408ca13f9ec}{tree\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a71af23e7901f350e959255b51e567d72}{forb\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a4891e54331124e8b93d04287c14b1813}{shrub\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6989725483305680ef30c1f589ff17fc}{grass\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a98cf23c06b8fdd2b19bafe6a3327600e}{litter\+\_\+evap}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a229c820acd5657a9ea24e136db1d2bc7}{total\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a95adc0361480da9fc7bf8d21db69eea8}{tree\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7c78a083211cc7cd32de4f43b5abb794}{forb\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a0355b8f785f6f968e837dc3a414a0433}{shrub\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3f9e74424a48896ca29b895b38b9d782}{grass\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_acce8ae04b534bec5ab4c783a387ed5df}{litter\+\_\+int}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3d6f483002bb01a607e9b851923df3c7}{snowpack}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_af07369c9647effd71ad6d52a616a09bb}{snowdepth}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7148ed89deb427e158c522ce00803942}{et}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2b09b224849349194f1a28bdb472abb9}{aet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6ba208ace69237bb2b8a9a034463cba1}{pet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a1c3b9354318089b7c00350220e3418d7}{deep}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adf9c843d00f6b2917cfa6bf2e7662641}{s\+Temp} \mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abc303bff69f694f8f5d61cb25a7e7e78}{surface\+Temp}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ad0d7bb899e05bce15829ca43c9d03f60}{parts\+Error}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2b09b224849349194f1a28bdb472abb9}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2b09b224849349194f1a28bdb472abb9}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!aet@{aet}}
+\index{aet@{aet}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{aet}{aet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::aet}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a1c3b9354318089b7c00350220e3418d7}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a1c3b9354318089b7c00350220e3418d7}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!deep@{deep}}
+\index{deep@{deep}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{deep}{deep}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::deep}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7148ed89deb427e158c522ce00803942}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7148ed89deb427e158c522ce00803942}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!et@{et}}
+\index{et@{et}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{et}{et}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::et}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ae667fb63cc3c443bb163e5be66f04cda}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ae667fb63cc3c443bb163e5be66f04cda}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!evap@{evap}}
+\index{evap@{evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{evap}{evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::evap\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a71af23e7901f350e959255b51e567d72}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a71af23e7901f350e959255b51e567d72}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!forb\+\_\+evap@{forb\+\_\+evap}}
+\index{forb\+\_\+evap@{forb\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{forb\+\_\+evap}{forb\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::forb\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7c78a083211cc7cd32de4f43b5abb794}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7c78a083211cc7cd32de4f43b5abb794}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!forb\+\_\+int@{forb\+\_\+int}}
+\index{forb\+\_\+int@{forb\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{forb\+\_\+int}{forb\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::forb\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6989725483305680ef30c1f589ff17fc}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6989725483305680ef30c1f589ff17fc}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!grass\+\_\+evap@{grass\+\_\+evap}}
+\index{grass\+\_\+evap@{grass\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{grass\+\_\+evap}{grass\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::grass\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3f9e74424a48896ca29b895b38b9d782}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3f9e74424a48896ca29b895b38b9d782}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!grass\+\_\+int@{grass\+\_\+int}}
+\index{grass\+\_\+int@{grass\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{grass\+\_\+int}{grass\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::grass\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ac90c990df256cbb52aa538cc2673c8aa}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ac90c990df256cbb52aa538cc2673c8aa}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!hydred\+\_\+forb@{hydred\+\_\+forb}}
+\index{hydred\+\_\+forb@{hydred\+\_\+forb}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{hydred\+\_\+forb}{hydred\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::hydred\+\_\+forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a041a2ed3655b11e83b5acf8fe5ed9ce3}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a041a2ed3655b11e83b5acf8fe5ed9ce3}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!hydred\+\_\+grass@{hydred\+\_\+grass}}
+\index{hydred\+\_\+grass@{hydred\+\_\+grass}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{hydred\+\_\+grass}{hydred\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::hydred\+\_\+grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6ad8ac38110a79b34c1f9681856dbc9}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6ad8ac38110a79b34c1f9681856dbc9}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!hydred\+\_\+shrub@{hydred\+\_\+shrub}}
+\index{hydred\+\_\+shrub@{hydred\+\_\+shrub}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{hydred\+\_\+shrub}{hydred\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::hydred\+\_\+shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a8e7df238cdaa43818762d93e8807327c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a8e7df238cdaa43818762d93e8807327c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!hydred\+\_\+total@{hydred\+\_\+total}}
+\index{hydred\+\_\+total@{hydred\+\_\+total}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{hydred\+\_\+total}{hydred\_total}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::hydred\+\_\+total\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a62c0266c179509a69b235ae934c212a9}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a62c0266c179509a69b235ae934c212a9}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!hydred\+\_\+tree@{hydred\+\_\+tree}}
+\index{hydred\+\_\+tree@{hydred\+\_\+tree}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{hydred\+\_\+tree}{hydred\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::hydred\+\_\+tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a98cf23c06b8fdd2b19bafe6a3327600e}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a98cf23c06b8fdd2b19bafe6a3327600e}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!litter\+\_\+evap@{litter\+\_\+evap}}
+\index{litter\+\_\+evap@{litter\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{litter\+\_\+evap}{litter\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::litter\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_acce8ae04b534bec5ab4c783a387ed5df}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_acce8ae04b534bec5ab4c783a387ed5df}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!litter\+\_\+int@{litter\+\_\+int}}
+\index{litter\+\_\+int@{litter\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{litter\+\_\+int}{litter\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::litter\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a660403d0f674a97bf8eb0e369a97e96c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a660403d0f674a97bf8eb0e369a97e96c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!lyrdrain@{lyrdrain}}
+\index{lyrdrain@{lyrdrain}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{lyrdrain}{lyrdrain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::lyrdrain\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ad0d7bb899e05bce15829ca43c9d03f60}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ad0d7bb899e05bce15829ca43c9d03f60}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!parts\+Error@{parts\+Error}}
+\index{parts\+Error@{parts\+Error}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{parts\+Error}{partsError}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::parts\+Error}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6ba208ace69237bb2b8a9a034463cba1}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6ba208ace69237bb2b8a9a034463cba1}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!pet@{pet}}
+\index{pet@{pet}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{pet}{pet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::pet}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a4891e54331124e8b93d04287c14b1813}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a4891e54331124e8b93d04287c14b1813}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!shrub\+\_\+evap@{shrub\+\_\+evap}}
+\index{shrub\+\_\+evap@{shrub\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{shrub\+\_\+evap}{shrub\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::shrub\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a0355b8f785f6f968e837dc3a414a0433}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a0355b8f785f6f968e837dc3a414a0433}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!shrub\+\_\+int@{shrub\+\_\+int}}
+\index{shrub\+\_\+int@{shrub\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{shrub\+\_\+int}{shrub\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::shrub\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_af07369c9647effd71ad6d52a616a09bb}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_af07369c9647effd71ad6d52a616a09bb}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!snowdepth@{snowdepth}}
+\index{snowdepth@{snowdepth}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snowdepth}{snowdepth}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snowdepth}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3d6f483002bb01a607e9b851923df3c7}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a3d6f483002bb01a607e9b851923df3c7}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!snowpack@{snowpack}}
+\index{snowpack@{snowpack}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snowpack}{snowpack}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snowpack}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adf9c843d00f6b2917cfa6bf2e7662641}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adf9c843d00f6b2917cfa6bf2e7662641}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!s\+Temp@{s\+Temp}}
+\index{s\+Temp@{s\+Temp}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{s\+Temp}{sTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::s\+Temp\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abc303bff69f694f8f5d61cb25a7e7e78}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abc303bff69f694f8f5d61cb25a7e7e78}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!surface\+Temp@{surface\+Temp}}
+\index{surface\+Temp@{surface\+Temp}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{surface\+Temp}{surfaceTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::surface\+Temp}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7b6c13a72a8a33b4c3c79c93cab2f13e}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a7b6c13a72a8a33b4c3c79c93cab2f13e}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!surface\+Water@{surface\+Water}}
+\index{surface\+Water@{surface\+Water}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{surface\+Water}{surfaceWater}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::surface\+Water}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abd57d93e39a859160944629dc3797546}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_abd57d93e39a859160944629dc3797546}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!surface\+Water\+\_\+evap@{surface\+Water\+\_\+evap}}
+\index{surface\+Water\+\_\+evap@{surface\+Water\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{surface\+Water\+\_\+evap}{surfaceWater\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::surface\+Water\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6025267482ec8ad65feb6ea92a6433f1}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6025267482ec8ad65feb6ea92a6433f1}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!swa\+Bulk@{swa\+Bulk}}
+\index{swa\+Bulk@{swa\+Bulk}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{swa\+Bulk}{swaBulk}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::swa\+Bulk\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04fce9cfb61a95c3693a91d063dea8a6}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04fce9cfb61a95c3693a91d063dea8a6}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!swa\+Matric@{swa\+Matric}}
+\index{swa\+Matric@{swa\+Matric}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{swa\+Matric}{swaMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::swa\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aa01a03fb2985bfb56d3fe74c62d0b93c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aa01a03fb2985bfb56d3fe74c62d0b93c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!swc\+Bulk@{swc\+Bulk}}
+\index{swc\+Bulk@{swc\+Bulk}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{swc\+Bulk}{swcBulk}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::swc\+Bulk\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2732c7d89253515ee553d84302d6c1ea}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a2732c7d89253515ee553d84302d6c1ea}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!swp\+Matric@{swp\+Matric}}
+\index{swp\+Matric@{swp\+Matric}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{swp\+Matric}{swpMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::swp\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6099933a1e8bc7009fead8e4cbf0aa3c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a6099933a1e8bc7009fead8e4cbf0aa3c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!total\+\_\+evap@{total\+\_\+evap}}
+\index{total\+\_\+evap@{total\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{total\+\_\+evap}{total\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::total\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a229c820acd5657a9ea24e136db1d2bc7}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a229c820acd5657a9ea24e136db1d2bc7}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!total\+\_\+int@{total\+\_\+int}}
+\index{total\+\_\+int@{total\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{total\+\_\+int}{total\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::total\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a52be93d2c988ec4c2e5a2d8cd1422813}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a52be93d2c988ec4c2e5a2d8cd1422813}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!transp\+\_\+forb@{transp\+\_\+forb}}
+\index{transp\+\_\+forb@{transp\+\_\+forb}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{transp\+\_\+forb}{transp\_forb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::transp\+\_\+forb\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adaf7d4faeca0252774a0fa5aa6c39719}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_adaf7d4faeca0252774a0fa5aa6c39719}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!transp\+\_\+grass@{transp\+\_\+grass}}
+\index{transp\+\_\+grass@{transp\+\_\+grass}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{transp\+\_\+grass}{transp\_grass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::transp\+\_\+grass\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a363a24643a39beb0ca3f19f3c1b44d22}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a363a24643a39beb0ca3f19f3c1b44d22}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!transp\+\_\+shrub@{transp\+\_\+shrub}}
+\index{transp\+\_\+shrub@{transp\+\_\+shrub}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{transp\+\_\+shrub}{transp\_shrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::transp\+\_\+shrub\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04519a8c7f27d6d6b5409f766e89ad5c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a04519a8c7f27d6d6b5409f766e89ad5c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!transp\+\_\+total@{transp\+\_\+total}}
+\index{transp\+\_\+total@{transp\+\_\+total}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{transp\+\_\+total}{transp\_total}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::transp\+\_\+total\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6d54ed116b7aad5ab860961030bbb04}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_ab6d54ed116b7aad5ab860961030bbb04}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!transp\+\_\+tree@{transp\+\_\+tree}}
+\index{transp\+\_\+tree@{transp\+\_\+tree}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{transp\+\_\+tree}{transp\_tree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::transp\+\_\+tree\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a5256e09ef6e0a304a1edd408ca13f9ec}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a5256e09ef6e0a304a1edd408ca13f9ec}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!tree\+\_\+evap@{tree\+\_\+evap}}
+\index{tree\+\_\+evap@{tree\+\_\+evap}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{tree\+\_\+evap}{tree\_evap}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::tree\+\_\+evap}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a95adc0361480da9fc7bf8d21db69eea8}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a95adc0361480da9fc7bf8d21db69eea8}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!tree\+\_\+int@{tree\+\_\+int}}
+\index{tree\+\_\+int@{tree\+\_\+int}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{tree\+\_\+int}{tree\_int}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::tree\+\_\+int}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a994933243a4cc2d79f473370c2a76053}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a994933243a4cc2d79f473370c2a76053}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!vwc\+Bulk@{vwc\+Bulk}}
+\index{vwc\+Bulk@{vwc\+Bulk}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{vwc\+Bulk}{vwcBulk}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::vwc\+Bulk\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a78733c0563f5cdc6c7086e0459ce64b1}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_a78733c0563f5cdc6c7086e0459ce64b1}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!vwc\+Matric@{vwc\+Matric}}
+\index{vwc\+Matric@{vwc\+Matric}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{vwc\+Matric}{vwcMatric}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::vwc\+Matric\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aed2dfb051dba45c3686b8ec7e507ae7c}\label{struct_s_w___s_o_i_l_w_a_t___o_u_t_p_u_t_s_aed2dfb051dba45c3686b8ec7e507ae7c}}
+\index{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}!wetdays@{wetdays}}
+\index{wetdays@{wetdays}!S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{wetdays}{wetdays}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+S\+O\+I\+L\+W\+A\+T\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::wetdays\mbox{[}\hyperlink{_s_w___defines_8h_ade9d4b2ac5f29fe89ffea40e7c58c9d6}{M\+A\+X\+\_\+\+L\+A\+Y\+E\+RS}\mbox{]}}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___soil_water_8h}{S\+W\+\_\+\+Soil\+Water.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___t_i_m_e_s.tex b/doc/latex/struct_s_w___t_i_m_e_s.tex
new file mode 100644
index 000000000..e68a2ea4f
--- /dev/null
+++ b/doc/latex/struct_s_w___t_i_m_e_s.tex
@@ -0,0 +1,45 @@
+\hypertarget{struct_s_w___t_i_m_e_s}{}\section{S\+W\+\_\+\+T\+I\+M\+ES Struct Reference}
+\label{struct_s_w___t_i_m_e_s}\index{S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Times.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___t_i_m_e_s_a2372efdb38727b02e23b656558133005}{first}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___t_i_m_e_s_a0de7d85c5eee4a0775985feb738ed990}{last}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___t_i_m_e_s_a946437b33df6064e8a2ceaff8d87403e}{total}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___t_i_m_e_s_a2372efdb38727b02e23b656558133005}\label{struct_s_w___t_i_m_e_s_a2372efdb38727b02e23b656558133005}}
+\index{S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}!first@{first}}
+\index{first@{first}!S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}}
+\subsubsection{\texorpdfstring{first}{first}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+T\+I\+M\+E\+S\+::first}
+
+
+
+Referenced by S\+W\+\_\+\+S\+W\+C\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___t_i_m_e_s_a0de7d85c5eee4a0775985feb738ed990}\label{struct_s_w___t_i_m_e_s_a0de7d85c5eee4a0775985feb738ed990}}
+\index{S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}!last@{last}}
+\index{last@{last}!S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}}
+\subsubsection{\texorpdfstring{last}{last}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+T\+I\+M\+E\+S\+::last}
+
+\mbox{\Hypertarget{struct_s_w___t_i_m_e_s_a946437b33df6064e8a2ceaff8d87403e}\label{struct_s_w___t_i_m_e_s_a946437b33df6064e8a2ceaff8d87403e}}
+\index{S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}!total@{total}}
+\index{total@{total}!S\+W\+\_\+\+T\+I\+M\+ES@{S\+W\+\_\+\+T\+I\+M\+ES}}
+\subsubsection{\texorpdfstring{total}{total}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+T\+I\+M\+E\+S\+::total}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___times_8h}{S\+W\+\_\+\+Times.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___v_e_g_e_s_t_a_b.tex b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b.tex
new file mode 100644
index 000000000..28cc8adc7
--- /dev/null
+++ b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b.tex
@@ -0,0 +1,69 @@
+\hypertarget{struct_s_w___v_e_g_e_s_t_a_b}{}\section{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB Struct Reference}
+\label{struct_s_w___v_e_g_e_s_t_a_b}\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Veg\+Estab.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b_a9872d00f71ccada3933694bb6eedd487}{use}
+\item
+\hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b_a92ccdbe60aa9b10d6b62e6c3748d09a0}{count}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO} $\ast$$\ast$ \hyperlink{struct_s_w___v_e_g_e_s_t_a_b_aa899661a9762cfbc13ea36468f1057e5}{parms}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b_ac2a02c6a1b5ca73fc08ce0616557a61a}{yrsum}
+\item
+\hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b_a30d9632d4c70acffd90399c8fc6f178d}{yravg}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b_a92ccdbe60aa9b10d6b62e6c3748d09a0}\label{struct_s_w___v_e_g_e_s_t_a_b_a92ccdbe60aa9b10d6b62e6c3748d09a0}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}!count@{count}}
+\index{count@{count}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+\subsubsection{\texorpdfstring{count}{count}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a9c7b81b51177020e4735ba49298cf62b}{IntU} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+::count}
+
+
+
+Referenced by S\+W\+\_\+\+V\+E\+S\+\_\+checkestab(), S\+W\+\_\+\+V\+E\+S\+\_\+clear(), and S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b_aa899661a9762cfbc13ea36468f1057e5}\label{struct_s_w___v_e_g_e_s_t_a_b_aa899661a9762cfbc13ea36468f1057e5}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}!parms@{parms}}
+\index{parms@{parms}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+\subsubsection{\texorpdfstring{parms}{parms}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}$\ast$$\ast$ S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+::parms}
+
+
+
+Referenced by S\+W\+\_\+\+V\+E\+S\+\_\+clear().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b_a9872d00f71ccada3933694bb6eedd487}\label{struct_s_w___v_e_g_e_s_t_a_b_a9872d00f71ccada3933694bb6eedd487}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}!use@{use}}
+\index{use@{use}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+\subsubsection{\texorpdfstring{use}{use}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+::use}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b_a30d9632d4c70acffd90399c8fc6f178d}\label{struct_s_w___v_e_g_e_s_t_a_b_a30d9632d4c70acffd90399c8fc6f178d}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}!yravg@{yravg}}
+\index{yravg@{yravg}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+\subsubsection{\texorpdfstring{yravg}{yravg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+::yravg}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b_ac2a02c6a1b5ca73fc08ce0616557a61a}\label{struct_s_w___v_e_g_e_s_t_a_b_ac2a02c6a1b5ca73fc08ce0616557a61a}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}!yrsum@{yrsum}}
+\index{yrsum@{yrsum}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+AB}}
+\subsubsection{\texorpdfstring{yrsum}{yrsum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+::yrsum}
+
+
+
+Referenced by S\+W\+\_\+\+V\+E\+S\+\_\+clear(), and S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___veg_estab_8h}{S\+W\+\_\+\+Veg\+Estab.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.tex b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.tex
new file mode 100644
index 000000000..6faa699c7
--- /dev/null
+++ b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o.tex
@@ -0,0 +1,209 @@
+\hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}{}\section{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO Struct Reference}
+\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o}\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Veg\+Estab.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a74e88b0e4800862aacd11a8673c52f82}{estab\+\_\+doy}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac0056e99466fe025bbcb8ea32d5712f2}{germ\+\_\+days}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a55d3c45fb5b1cf57d46dd685c52a0470}{drydays\+\_\+postgerm}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a6dce2c86264b4452fcf91d73cee9c5d3}{wetdays\+\_\+for\+\_\+germ}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a054f86d5c1977a42a8bed8afb6bcc487}{wetdays\+\_\+for\+\_\+estab}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_addc1acaa3c5432e4d0ed136ab5a1f031}{germd}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ad0b646285d2d7c3e17be68957704e184}{no\+\_\+estab}
+\item
+char \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a76b1af399e02593970f6089b22f4c1ff}{spp\+File\+Name} \mbox{[}\hyperlink{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}\mbox{]}
+\item
+char \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a7585284c370699db1e0d6902e0586fe3}{sppname} \mbox{[}\hyperlink{_s_w___defines_8h_a611f69bdc2c773cecd7c9b90f7a8b7bd}{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}+1\mbox{]}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aca1a5d4d1645e520a53e93286241d66c}{min\+\_\+pregerm\+\_\+days}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a405bfa3f4f32f4ce8c1d8a5eb768b655}{max\+\_\+pregerm\+\_\+days}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_abc919f26d643b86a7f5a08478fee792f}{min\+\_\+wetdays\+\_\+for\+\_\+germ}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_afc8df2155f6b9b9e9bdc2da790b00ee2}{max\+\_\+drydays\+\_\+postgerm}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a4a7b511e4277f8e3e4d7ffa5d2ef1c69}{min\+\_\+wetdays\+\_\+for\+\_\+estab}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a0d38bd0068b81d3538f8e1532bafdd6f}{min\+\_\+days\+\_\+germ2estab}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ab498ec318e597cdeb00c4e3831b3ac62}{max\+\_\+days\+\_\+germ2estab}
+\item
+unsigned int \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac3e3025d1ce22c3e79713b3b930d0d52}{estab\+\_\+lyrs}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a912efd96100f0924d71682579e2087eb}{bars} \mbox{[}2\mbox{]}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a668ef47eb53852897a816c87da53f88d}{min\+\_\+swc\+\_\+germ}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a28f5b722202e6c25714e63868472a116}{min\+\_\+swc\+\_\+estab}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a924385e29e4abeecf6d35323a17ae836}{min\+\_\+temp\+\_\+germ}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aee936f02dc75c6c3483f628222a79f80}{max\+\_\+temp\+\_\+germ}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a84b614fda58754c15cc8b015717fd83c}{min\+\_\+temp\+\_\+estab}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a88e075e6b30eae80f761ef71659c1383}{max\+\_\+temp\+\_\+estab}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a912efd96100f0924d71682579e2087eb}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a912efd96100f0924d71682579e2087eb}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!bars@{bars}}
+\index{bars@{bars}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{bars}{bars}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::bars\mbox{[}2\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a55d3c45fb5b1cf57d46dd685c52a0470}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a55d3c45fb5b1cf57d46dd685c52a0470}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!drydays\+\_\+postgerm@{drydays\+\_\+postgerm}}
+\index{drydays\+\_\+postgerm@{drydays\+\_\+postgerm}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{drydays\+\_\+postgerm}{drydays\_postgerm}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::drydays\+\_\+postgerm}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a74e88b0e4800862aacd11a8673c52f82}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a74e88b0e4800862aacd11a8673c52f82}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!estab\+\_\+doy@{estab\+\_\+doy}}
+\index{estab\+\_\+doy@{estab\+\_\+doy}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{estab\+\_\+doy}{estab\_doy}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::estab\+\_\+doy}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac3e3025d1ce22c3e79713b3b930d0d52}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac3e3025d1ce22c3e79713b3b930d0d52}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!estab\+\_\+lyrs@{estab\+\_\+lyrs}}
+\index{estab\+\_\+lyrs@{estab\+\_\+lyrs}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{estab\+\_\+lyrs}{estab\_lyrs}}
+{\footnotesize\ttfamily unsigned int S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::estab\+\_\+lyrs}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac0056e99466fe025bbcb8ea32d5712f2}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ac0056e99466fe025bbcb8ea32d5712f2}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!germ\+\_\+days@{germ\+\_\+days}}
+\index{germ\+\_\+days@{germ\+\_\+days}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{germ\+\_\+days}{germ\_days}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::germ\+\_\+days}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_addc1acaa3c5432e4d0ed136ab5a1f031}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_addc1acaa3c5432e4d0ed136ab5a1f031}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!germd@{germd}}
+\index{germd@{germd}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{germd}{germd}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::germd}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ab498ec318e597cdeb00c4e3831b3ac62}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ab498ec318e597cdeb00c4e3831b3ac62}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!max\+\_\+days\+\_\+germ2estab@{max\+\_\+days\+\_\+germ2estab}}
+\index{max\+\_\+days\+\_\+germ2estab@{max\+\_\+days\+\_\+germ2estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{max\+\_\+days\+\_\+germ2estab}{max\_days\_germ2estab}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::max\+\_\+days\+\_\+germ2estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_afc8df2155f6b9b9e9bdc2da790b00ee2}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_afc8df2155f6b9b9e9bdc2da790b00ee2}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!max\+\_\+drydays\+\_\+postgerm@{max\+\_\+drydays\+\_\+postgerm}}
+\index{max\+\_\+drydays\+\_\+postgerm@{max\+\_\+drydays\+\_\+postgerm}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{max\+\_\+drydays\+\_\+postgerm}{max\_drydays\_postgerm}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::max\+\_\+drydays\+\_\+postgerm}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a405bfa3f4f32f4ce8c1d8a5eb768b655}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a405bfa3f4f32f4ce8c1d8a5eb768b655}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!max\+\_\+pregerm\+\_\+days@{max\+\_\+pregerm\+\_\+days}}
+\index{max\+\_\+pregerm\+\_\+days@{max\+\_\+pregerm\+\_\+days}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{max\+\_\+pregerm\+\_\+days}{max\_pregerm\_days}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::max\+\_\+pregerm\+\_\+days}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a88e075e6b30eae80f761ef71659c1383}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a88e075e6b30eae80f761ef71659c1383}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!max\+\_\+temp\+\_\+estab@{max\+\_\+temp\+\_\+estab}}
+\index{max\+\_\+temp\+\_\+estab@{max\+\_\+temp\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{max\+\_\+temp\+\_\+estab}{max\_temp\_estab}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::max\+\_\+temp\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aee936f02dc75c6c3483f628222a79f80}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aee936f02dc75c6c3483f628222a79f80}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!max\+\_\+temp\+\_\+germ@{max\+\_\+temp\+\_\+germ}}
+\index{max\+\_\+temp\+\_\+germ@{max\+\_\+temp\+\_\+germ}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{max\+\_\+temp\+\_\+germ}{max\_temp\_germ}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::max\+\_\+temp\+\_\+germ}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a0d38bd0068b81d3538f8e1532bafdd6f}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a0d38bd0068b81d3538f8e1532bafdd6f}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+days\+\_\+germ2estab@{min\+\_\+days\+\_\+germ2estab}}
+\index{min\+\_\+days\+\_\+germ2estab@{min\+\_\+days\+\_\+germ2estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+days\+\_\+germ2estab}{min\_days\_germ2estab}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+days\+\_\+germ2estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aca1a5d4d1645e520a53e93286241d66c}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_aca1a5d4d1645e520a53e93286241d66c}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+pregerm\+\_\+days@{min\+\_\+pregerm\+\_\+days}}
+\index{min\+\_\+pregerm\+\_\+days@{min\+\_\+pregerm\+\_\+days}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+pregerm\+\_\+days}{min\_pregerm\_days}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+pregerm\+\_\+days}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a28f5b722202e6c25714e63868472a116}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a28f5b722202e6c25714e63868472a116}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+swc\+\_\+estab@{min\+\_\+swc\+\_\+estab}}
+\index{min\+\_\+swc\+\_\+estab@{min\+\_\+swc\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+swc\+\_\+estab}{min\_swc\_estab}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+swc\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a668ef47eb53852897a816c87da53f88d}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a668ef47eb53852897a816c87da53f88d}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+swc\+\_\+germ@{min\+\_\+swc\+\_\+germ}}
+\index{min\+\_\+swc\+\_\+germ@{min\+\_\+swc\+\_\+germ}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+swc\+\_\+germ}{min\_swc\_germ}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+swc\+\_\+germ}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a84b614fda58754c15cc8b015717fd83c}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a84b614fda58754c15cc8b015717fd83c}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+temp\+\_\+estab@{min\+\_\+temp\+\_\+estab}}
+\index{min\+\_\+temp\+\_\+estab@{min\+\_\+temp\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+temp\+\_\+estab}{min\_temp\_estab}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+temp\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a924385e29e4abeecf6d35323a17ae836}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a924385e29e4abeecf6d35323a17ae836}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+temp\+\_\+germ@{min\+\_\+temp\+\_\+germ}}
+\index{min\+\_\+temp\+\_\+germ@{min\+\_\+temp\+\_\+germ}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+temp\+\_\+germ}{min\_temp\_germ}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+temp\+\_\+germ}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a4a7b511e4277f8e3e4d7ffa5d2ef1c69}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a4a7b511e4277f8e3e4d7ffa5d2ef1c69}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+wetdays\+\_\+for\+\_\+estab@{min\+\_\+wetdays\+\_\+for\+\_\+estab}}
+\index{min\+\_\+wetdays\+\_\+for\+\_\+estab@{min\+\_\+wetdays\+\_\+for\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+wetdays\+\_\+for\+\_\+estab}{min\_wetdays\_for\_estab}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+wetdays\+\_\+for\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_abc919f26d643b86a7f5a08478fee792f}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_abc919f26d643b86a7f5a08478fee792f}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!min\+\_\+wetdays\+\_\+for\+\_\+germ@{min\+\_\+wetdays\+\_\+for\+\_\+germ}}
+\index{min\+\_\+wetdays\+\_\+for\+\_\+germ@{min\+\_\+wetdays\+\_\+for\+\_\+germ}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{min\+\_\+wetdays\+\_\+for\+\_\+germ}{min\_wetdays\_for\_germ}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::min\+\_\+wetdays\+\_\+for\+\_\+germ}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ad0b646285d2d7c3e17be68957704e184}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_ad0b646285d2d7c3e17be68957704e184}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!no\+\_\+estab@{no\+\_\+estab}}
+\index{no\+\_\+estab@{no\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{no\+\_\+estab}{no\_estab}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::no\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a76b1af399e02593970f6089b22f4c1ff}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a76b1af399e02593970f6089b22f4c1ff}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!spp\+File\+Name@{spp\+File\+Name}}
+\index{spp\+File\+Name@{spp\+File\+Name}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{spp\+File\+Name}{sppFileName}}
+{\footnotesize\ttfamily char S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::spp\+File\+Name\mbox{[}\hyperlink{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a7585284c370699db1e0d6902e0586fe3}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a7585284c370699db1e0d6902e0586fe3}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!sppname@{sppname}}
+\index{sppname@{sppname}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{sppname}{sppname}}
+{\footnotesize\ttfamily char S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::sppname\mbox{[}\hyperlink{_s_w___defines_8h_a611f69bdc2c773cecd7c9b90f7a8b7bd}{M\+A\+X\+\_\+\+S\+P\+E\+C\+I\+E\+S\+N\+A\+M\+E\+L\+EN}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a054f86d5c1977a42a8bed8afb6bcc487}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a054f86d5c1977a42a8bed8afb6bcc487}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!wetdays\+\_\+for\+\_\+estab@{wetdays\+\_\+for\+\_\+estab}}
+\index{wetdays\+\_\+for\+\_\+estab@{wetdays\+\_\+for\+\_\+estab}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{wetdays\+\_\+for\+\_\+estab}{wetdays\_for\_estab}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::wetdays\+\_\+for\+\_\+estab}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a6dce2c86264b4452fcf91d73cee9c5d3}\label{struct_s_w___v_e_g_e_s_t_a_b___i_n_f_o_a6dce2c86264b4452fcf91d73cee9c5d3}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}!wetdays\+\_\+for\+\_\+germ@{wetdays\+\_\+for\+\_\+germ}}
+\index{wetdays\+\_\+for\+\_\+germ@{wetdays\+\_\+for\+\_\+germ}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+FO}}
+\subsubsection{\texorpdfstring{wetdays\+\_\+for\+\_\+germ}{wetdays\_for\_germ}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+I\+N\+F\+O\+::wetdays\+\_\+for\+\_\+germ}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___veg_estab_8h}{S\+W\+\_\+\+Veg\+Estab.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.tex b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.tex
new file mode 100644
index 000000000..ee2652e23
--- /dev/null
+++ b/doc/latex/struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s.tex
@@ -0,0 +1,29 @@
+\hypertarget{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}{}\section{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS Struct Reference}
+\label{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s}\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Veg\+Estab.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} $\ast$ \hyperlink{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s_a1c2139d0c89d0adfd3a3ace8a416dca7}{days}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s_a1c2139d0c89d0adfd3a3ace8a416dca7}\label{struct_s_w___v_e_g_e_s_t_a_b___o_u_t_p_u_t_s_a1c2139d0c89d0adfd3a3ace8a416dca7}}
+\index{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS}!days@{days}}
+\index{days@{days}!S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{days}{days}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int}$\ast$ S\+W\+\_\+\+V\+E\+G\+E\+S\+T\+A\+B\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::days}
+
+
+
+Referenced by S\+W\+\_\+\+V\+E\+S\+\_\+clear(), and S\+W\+\_\+\+V\+E\+S\+\_\+new\+\_\+year().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___veg_estab_8h}{S\+W\+\_\+\+Veg\+Estab.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___v_e_g_p_r_o_d.tex b/doc/latex/struct_s_w___v_e_g_p_r_o_d.tex
new file mode 100644
index 000000000..f63601f78
--- /dev/null
+++ b/doc/latex/struct_s_w___v_e_g_p_r_o_d.tex
@@ -0,0 +1,129 @@
+\hypertarget{struct_s_w___v_e_g_p_r_o_d}{}\section{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD Struct Reference}
+\label{struct_s_w___v_e_g_p_r_o_d}\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Veg\+Prod.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{struct_veg_type}{Veg\+Type} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a3d6873adcf58d644b3fbd7ca937d803f}{grass}
+\item
+\hyperlink{struct_veg_type}{Veg\+Type} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a6dc02172f3656fc2c1d35be002b44d0a}{shrub}
+\item
+\hyperlink{struct_veg_type}{Veg\+Type} \hyperlink{struct_s_w___v_e_g_p_r_o_d_af9b2985ddc2863ecc84e1abb6585ac47}{tree}
+\item
+\hyperlink{struct_veg_type}{Veg\+Type} \hyperlink{struct_s_w___v_e_g_p_r_o_d_ab824467c4d0162c7388953956f15345d}{forb}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a632540c51146daf5baabc1a403be0b1f}{fraction\+Grass}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a50dd7e4e66bb24a38002c69590009af0}{fraction\+Shrub}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a42e80f66b6f5973b37090a9e70e9819a}{fraction\+Tree}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_ae8005e7931a10212d74caffeef6d1731}{fraction\+Forb}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_a041384568d1586b64687567143cbcd11}{fraction\+Bare\+Ground}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___v_e_g_p_r_o_d_ae3b995731fb05eb3b0b8424bf40ddcd2}{bare\+Ground\+\_\+albedo}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_ae3b995731fb05eb3b0b8424bf40ddcd2}\label{struct_s_w___v_e_g_p_r_o_d_ae3b995731fb05eb3b0b8424bf40ddcd2}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!bare\+Ground\+\_\+albedo@{bare\+Ground\+\_\+albedo}}
+\index{bare\+Ground\+\_\+albedo@{bare\+Ground\+\_\+albedo}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{bare\+Ground\+\_\+albedo}{bareGround\_albedo}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::bare\+Ground\+\_\+albedo}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_ab824467c4d0162c7388953956f15345d}\label{struct_s_w___v_e_g_p_r_o_d_ab824467c4d0162c7388953956f15345d}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!forb@{forb}}
+\index{forb@{forb}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{forb}{forb}}
+{\footnotesize\ttfamily \hyperlink{struct_veg_type}{Veg\+Type} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::forb}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a041384568d1586b64687567143cbcd11}\label{struct_s_w___v_e_g_p_r_o_d_a041384568d1586b64687567143cbcd11}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!fraction\+Bare\+Ground@{fraction\+Bare\+Ground}}
+\index{fraction\+Bare\+Ground@{fraction\+Bare\+Ground}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{fraction\+Bare\+Ground}{fractionBareGround}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::fraction\+Bare\+Ground}
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_ae8005e7931a10212d74caffeef6d1731}\label{struct_s_w___v_e_g_p_r_o_d_ae8005e7931a10212d74caffeef6d1731}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!fraction\+Forb@{fraction\+Forb}}
+\index{fraction\+Forb@{fraction\+Forb}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{fraction\+Forb}{fractionForb}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::fraction\+Forb}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a632540c51146daf5baabc1a403be0b1f}\label{struct_s_w___v_e_g_p_r_o_d_a632540c51146daf5baabc1a403be0b1f}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!fraction\+Grass@{fraction\+Grass}}
+\index{fraction\+Grass@{fraction\+Grass}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{fraction\+Grass}{fractionGrass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::fraction\+Grass}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a50dd7e4e66bb24a38002c69590009af0}\label{struct_s_w___v_e_g_p_r_o_d_a50dd7e4e66bb24a38002c69590009af0}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!fraction\+Shrub@{fraction\+Shrub}}
+\index{fraction\+Shrub@{fraction\+Shrub}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{fraction\+Shrub}{fractionShrub}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::fraction\+Shrub}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a42e80f66b6f5973b37090a9e70e9819a}\label{struct_s_w___v_e_g_p_r_o_d_a42e80f66b6f5973b37090a9e70e9819a}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!fraction\+Tree@{fraction\+Tree}}
+\index{fraction\+Tree@{fraction\+Tree}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{fraction\+Tree}{fractionTree}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::fraction\+Tree}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a3d6873adcf58d644b3fbd7ca937d803f}\label{struct_s_w___v_e_g_p_r_o_d_a3d6873adcf58d644b3fbd7ca937d803f}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!grass@{grass}}
+\index{grass@{grass}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{grass}{grass}}
+{\footnotesize\ttfamily \hyperlink{struct_veg_type}{Veg\+Type} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::grass}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_a6dc02172f3656fc2c1d35be002b44d0a}\label{struct_s_w___v_e_g_p_r_o_d_a6dc02172f3656fc2c1d35be002b44d0a}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!shrub@{shrub}}
+\index{shrub@{shrub}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{shrub}{shrub}}
+{\footnotesize\ttfamily \hyperlink{struct_veg_type}{Veg\+Type} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::shrub}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_s_w___v_e_g_p_r_o_d_af9b2985ddc2863ecc84e1abb6585ac47}\label{struct_s_w___v_e_g_p_r_o_d_af9b2985ddc2863ecc84e1abb6585ac47}}
+\index{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}!tree@{tree}}
+\index{tree@{tree}!S\+W\+\_\+\+V\+E\+G\+P\+R\+OD@{S\+W\+\_\+\+V\+E\+G\+P\+R\+OD}}
+\subsubsection{\texorpdfstring{tree}{tree}}
+{\footnotesize\ttfamily \hyperlink{struct_veg_type}{Veg\+Type} S\+W\+\_\+\+V\+E\+G\+P\+R\+O\+D\+::tree}
+
+
+
+Referenced by init\+\_\+site\+\_\+info(), and S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___veg_prod_8h}{S\+W\+\_\+\+Veg\+Prod.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___w_e_a_t_h_e_r.tex b/doc/latex/struct_s_w___w_e_a_t_h_e_r.tex
new file mode 100644
index 000000000..b402c6fca
--- /dev/null
+++ b/doc/latex/struct_s_w___w_e_a_t_h_e_r.tex
@@ -0,0 +1,241 @@
+\hypertarget{struct_s_w___w_e_a_t_h_e_r}{}\section{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER Struct Reference}
+\label{struct_s_w___w_e_a_t_h_e_r}\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Weather.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___w_e_a_t_h_e_r_ab5b33c69a26fbf22fa42129cf23b16ee}{use\+\_\+markov}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a6600260e93c46b9f8919838a32c9b389}{use\+\_\+snow}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_aba4ea01a4266e202f3186e3ec575ce32}{pct\+\_\+snowdrift}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a4526d6a3fa640bd31a13c32dfc570c08}{pct\+\_\+snow\+Runoff}
+\item
+\hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} \hyperlink{struct_s_w___w_e_a_t_h_e_r_aaf64b49da6982da69e2c4e2da6b49543}{days\+\_\+in\+\_\+runavg}
+\item
+\hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES} \hyperlink{struct_s_w___w_e_a_t_h_e_r_aace2db7867c79b8fc73174d7b424e8a4}{yr}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a2170f122c587227dac45c3a43e7b8c95}{scale\+\_\+precip} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a80cb12da6a34d3788ab56d0a75a5cb95}{scale\+\_\+temp\+\_\+max} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a2de26678616b0ee9fefa45581b8bc159}{scale\+\_\+temp\+\_\+min} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a074ca1575c0461684c2732407799689f}{scale\+\_\+sky\+Cover} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_abe2d9fedc0dfac60a96c04290f259695}{scale\+\_\+wind} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a2b842194349c9497002b60fadb9a8db4}{scale\+\_\+rH} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a33a06f37d77dc0a569fdd211910e8465}{scale\+\_\+transmissivity} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+char \hyperlink{struct_s_w___w_e_a_t_h_e_r_a969e83e2beda4da6066ccd62f4b1d02a}{name\+\_\+prefix} \mbox{[}\hyperlink{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a8db6babb6a12dd4196c04e89980c12f3}{snow\+Runoff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a398983debf906dbbcc6fc0153a9ca3e4}{surface\+Runoff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a784c80b1db5de6ec446d4f4ee3d65141}{soil\+\_\+inf}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r_ad361ff2517589387ffab2be71200b3a3}{surface\+Temp}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a761cd55309013cec80256c3a6cbbc6d0}{dysum}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_ae5d8febadccca16df669d1ca8b12041a}{wksum}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a6b689e645a924b30dd9a57520041c845}{mosum}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a07a5a49263519fac3a77224545c22147}{yrsum}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a6125c910aea131843c0faa4d8e41637a}{wkavg}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a0ed19288618188bf6ee97b79e933825f}{moavg}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_a390d116f1633413caff92d1268a9b5b0}{yravg}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST} \hyperlink{struct_s_w___w_e_a_t_h_e_r_abc15c2db7b608c36e2e2d05d1088ccd5}{hist}
+\item
+\hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS} \hyperlink{struct_s_w___w_e_a_t_h_e_r_abaaf1b1d5637c6395b97ffc856a51b94}{now}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_aaf64b49da6982da69e2c4e2da6b49543}\label{struct_s_w___w_e_a_t_h_e_r_aaf64b49da6982da69e2c4e2da6b49543}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!days\+\_\+in\+\_\+runavg@{days\+\_\+in\+\_\+runavg}}
+\index{days\+\_\+in\+\_\+runavg@{days\+\_\+in\+\_\+runavg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{days\+\_\+in\+\_\+runavg}{days\_in\_runavg}}
+{\footnotesize\ttfamily \hyperlink{_times_8h_a25ac787161a5cad0e3fdfe5a5aeb3236}{Time\+Int} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::days\+\_\+in\+\_\+runavg}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a761cd55309013cec80256c3a6cbbc6d0}\label{struct_s_w___w_e_a_t_h_e_r_a761cd55309013cec80256c3a6cbbc6d0}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!dysum@{dysum}}
+\index{dysum@{dysum}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{dysum}{dysum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::dysum}
+
+
+
+Referenced by S\+W\+\_\+\+O\+U\+T\+\_\+sum\+\_\+today().
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_abc15c2db7b608c36e2e2d05d1088ccd5}\label{struct_s_w___w_e_a_t_h_e_r_abc15c2db7b608c36e2e2d05d1088ccd5}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!hist@{hist}}
+\index{hist@{hist}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{hist}{hist}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::hist}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a0ed19288618188bf6ee97b79e933825f}\label{struct_s_w___w_e_a_t_h_e_r_a0ed19288618188bf6ee97b79e933825f}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!moavg@{moavg}}
+\index{moavg@{moavg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{moavg}{moavg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::moavg}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a6b689e645a924b30dd9a57520041c845}\label{struct_s_w___w_e_a_t_h_e_r_a6b689e645a924b30dd9a57520041c845}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!mosum@{mosum}}
+\index{mosum@{mosum}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{mosum}{mosum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::mosum}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a969e83e2beda4da6066ccd62f4b1d02a}\label{struct_s_w___w_e_a_t_h_e_r_a969e83e2beda4da6066ccd62f4b1d02a}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!name\+\_\+prefix@{name\+\_\+prefix}}
+\index{name\+\_\+prefix@{name\+\_\+prefix}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{name\+\_\+prefix}{name\_prefix}}
+{\footnotesize\ttfamily char S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::name\+\_\+prefix\mbox{[}\hyperlink{_s_w___defines_8h_a4492ee6bfc6ea32e904dd50c7c733f2f}{M\+A\+X\+\_\+\+F\+I\+L\+E\+N\+A\+M\+E\+S\+I\+ZE}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_abaaf1b1d5637c6395b97ffc856a51b94}\label{struct_s_w___w_e_a_t_h_e_r_abaaf1b1d5637c6395b97ffc856a51b94}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!now@{now}}
+\index{now@{now}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{now}{now}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::now}
+
+
+
+Referenced by S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+day(), and S\+W\+\_\+\+W\+T\+H\+\_\+new\+\_\+year().
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_aba4ea01a4266e202f3186e3ec575ce32}\label{struct_s_w___w_e_a_t_h_e_r_aba4ea01a4266e202f3186e3ec575ce32}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!pct\+\_\+snowdrift@{pct\+\_\+snowdrift}}
+\index{pct\+\_\+snowdrift@{pct\+\_\+snowdrift}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{pct\+\_\+snowdrift}{pct\_snowdrift}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::pct\+\_\+snowdrift}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a4526d6a3fa640bd31a13c32dfc570c08}\label{struct_s_w___w_e_a_t_h_e_r_a4526d6a3fa640bd31a13c32dfc570c08}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!pct\+\_\+snow\+Runoff@{pct\+\_\+snow\+Runoff}}
+\index{pct\+\_\+snow\+Runoff@{pct\+\_\+snow\+Runoff}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{pct\+\_\+snow\+Runoff}{pct\_snowRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::pct\+\_\+snow\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a2170f122c587227dac45c3a43e7b8c95}\label{struct_s_w___w_e_a_t_h_e_r_a2170f122c587227dac45c3a43e7b8c95}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+precip@{scale\+\_\+precip}}
+\index{scale\+\_\+precip@{scale\+\_\+precip}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+precip}{scale\_precip}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+precip\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a2b842194349c9497002b60fadb9a8db4}\label{struct_s_w___w_e_a_t_h_e_r_a2b842194349c9497002b60fadb9a8db4}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+rH@{scale\+\_\+rH}}
+\index{scale\+\_\+rH@{scale\+\_\+rH}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+rH}{scale\_rH}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+rH\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a074ca1575c0461684c2732407799689f}\label{struct_s_w___w_e_a_t_h_e_r_a074ca1575c0461684c2732407799689f}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+sky\+Cover@{scale\+\_\+sky\+Cover}}
+\index{scale\+\_\+sky\+Cover@{scale\+\_\+sky\+Cover}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+sky\+Cover}{scale\_skyCover}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+sky\+Cover\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a80cb12da6a34d3788ab56d0a75a5cb95}\label{struct_s_w___w_e_a_t_h_e_r_a80cb12da6a34d3788ab56d0a75a5cb95}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+temp\+\_\+max@{scale\+\_\+temp\+\_\+max}}
+\index{scale\+\_\+temp\+\_\+max@{scale\+\_\+temp\+\_\+max}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+temp\+\_\+max}{scale\_temp\_max}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+temp\+\_\+max\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a2de26678616b0ee9fefa45581b8bc159}\label{struct_s_w___w_e_a_t_h_e_r_a2de26678616b0ee9fefa45581b8bc159}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+temp\+\_\+min@{scale\+\_\+temp\+\_\+min}}
+\index{scale\+\_\+temp\+\_\+min@{scale\+\_\+temp\+\_\+min}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+temp\+\_\+min}{scale\_temp\_min}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+temp\+\_\+min\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a33a06f37d77dc0a569fdd211910e8465}\label{struct_s_w___w_e_a_t_h_e_r_a33a06f37d77dc0a569fdd211910e8465}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+transmissivity@{scale\+\_\+transmissivity}}
+\index{scale\+\_\+transmissivity@{scale\+\_\+transmissivity}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+transmissivity}{scale\_transmissivity}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+transmissivity\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_abe2d9fedc0dfac60a96c04290f259695}\label{struct_s_w___w_e_a_t_h_e_r_abe2d9fedc0dfac60a96c04290f259695}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!scale\+\_\+wind@{scale\+\_\+wind}}
+\index{scale\+\_\+wind@{scale\+\_\+wind}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{scale\+\_\+wind}{scale\_wind}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::scale\+\_\+wind\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a8db6babb6a12dd4196c04e89980c12f3}\label{struct_s_w___w_e_a_t_h_e_r_a8db6babb6a12dd4196c04e89980c12f3}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!snow\+Runoff@{snow\+Runoff}}
+\index{snow\+Runoff@{snow\+Runoff}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{snow\+Runoff}{snowRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::snow\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a784c80b1db5de6ec446d4f4ee3d65141}\label{struct_s_w___w_e_a_t_h_e_r_a784c80b1db5de6ec446d4f4ee3d65141}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!soil\+\_\+inf@{soil\+\_\+inf}}
+\index{soil\+\_\+inf@{soil\+\_\+inf}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{soil\+\_\+inf}{soil\_inf}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::soil\+\_\+inf}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a398983debf906dbbcc6fc0153a9ca3e4}\label{struct_s_w___w_e_a_t_h_e_r_a398983debf906dbbcc6fc0153a9ca3e4}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!surface\+Runoff@{surface\+Runoff}}
+\index{surface\+Runoff@{surface\+Runoff}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{surface\+Runoff}{surfaceRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::surface\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_ad361ff2517589387ffab2be71200b3a3}\label{struct_s_w___w_e_a_t_h_e_r_ad361ff2517589387ffab2be71200b3a3}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!surface\+Temp@{surface\+Temp}}
+\index{surface\+Temp@{surface\+Temp}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{surface\+Temp}{surfaceTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::surface\+Temp}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_ab5b33c69a26fbf22fa42129cf23b16ee}\label{struct_s_w___w_e_a_t_h_e_r_ab5b33c69a26fbf22fa42129cf23b16ee}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!use\+\_\+markov@{use\+\_\+markov}}
+\index{use\+\_\+markov@{use\+\_\+markov}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{use\+\_\+markov}{use\_markov}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::use\+\_\+markov}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a6600260e93c46b9f8919838a32c9b389}\label{struct_s_w___w_e_a_t_h_e_r_a6600260e93c46b9f8919838a32c9b389}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!use\+\_\+snow@{use\+\_\+snow}}
+\index{use\+\_\+snow@{use\+\_\+snow}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{use\+\_\+snow}{use\_snow}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::use\+\_\+snow}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a6125c910aea131843c0faa4d8e41637a}\label{struct_s_w___w_e_a_t_h_e_r_a6125c910aea131843c0faa4d8e41637a}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!wkavg@{wkavg}}
+\index{wkavg@{wkavg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{wkavg}{wkavg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::wkavg}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_ae5d8febadccca16df669d1ca8b12041a}\label{struct_s_w___w_e_a_t_h_e_r_ae5d8febadccca16df669d1ca8b12041a}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!wksum@{wksum}}
+\index{wksum@{wksum}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{wksum}{wksum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::wksum}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_aace2db7867c79b8fc73174d7b424e8a4}\label{struct_s_w___w_e_a_t_h_e_r_aace2db7867c79b8fc73174d7b424e8a4}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!yr@{yr}}
+\index{yr@{yr}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{yr}{yr}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___t_i_m_e_s}{S\+W\+\_\+\+T\+I\+M\+ES} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::yr}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a390d116f1633413caff92d1268a9b5b0}\label{struct_s_w___w_e_a_t_h_e_r_a390d116f1633413caff92d1268a9b5b0}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!yravg@{yravg}}
+\index{yravg@{yravg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{yravg}{yravg}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::yravg}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r_a07a5a49263519fac3a77224545c22147}\label{struct_s_w___w_e_a_t_h_e_r_a07a5a49263519fac3a77224545c22147}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}!yrsum@{yrsum}}
+\index{yrsum@{yrsum}!S\+W\+\_\+\+W\+E\+A\+T\+H\+ER@{S\+W\+\_\+\+W\+E\+A\+T\+H\+ER}}
+\subsubsection{\texorpdfstring{yrsum}{yrsum}}
+{\footnotesize\ttfamily \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+::yrsum}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___weather_8h}{S\+W\+\_\+\+Weather.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.tex b/doc/latex/struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.tex
new file mode 100644
index 000000000..4a99ae724
--- /dev/null
+++ b/doc/latex/struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s.tex
@@ -0,0 +1,113 @@
+\hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}{}\section{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS Struct Reference}
+\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s}\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Weather.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a75fdbfbedf39e4df22d75e6fbe99287d}{temp\+\_\+avg} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a2798e58bd5807bcb620ea55861db54ed}{temp\+\_\+run\+\_\+avg} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a833e32d3c690e4c8d0941514a87afbff}{temp\+\_\+yr\+\_\+avg}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a9b735922ec9885da9efd16dd6722fb05}{temp\+\_\+max} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a7353c64d2f60af0cba687656c5fb5fd0}{temp\+\_\+min} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae49402c75209c707546186af06576491}{ppt} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae2d64e328e13bf4c1fc27899493a65d1}{rain} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ac1c6e2b68aaae3cd4baf26490b90fd51}{snow} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_aae83dbc364205907becf4fc3532003fd}{snowmelt} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_abc1b6fae0878af3cdd2553a4004b2423}{snowloss} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a901c2350d1a374e305590490a2aee3b1}{ppt\+\_\+actual} \mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a483365c18e2c02bdf434ca14dd85cb37}{gsppt}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a483365c18e2c02bdf434ca14dd85cb37}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a483365c18e2c02bdf434ca14dd85cb37}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!gsppt@{gsppt}}
+\index{gsppt@{gsppt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{gsppt}{gsppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::gsppt}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae49402c75209c707546186af06576491}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae49402c75209c707546186af06576491}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!ppt@{ppt}}
+\index{ppt@{ppt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{ppt}{ppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::ppt\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a901c2350d1a374e305590490a2aee3b1}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a901c2350d1a374e305590490a2aee3b1}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!ppt\+\_\+actual@{ppt\+\_\+actual}}
+\index{ppt\+\_\+actual@{ppt\+\_\+actual}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{ppt\+\_\+actual}{ppt\_actual}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::ppt\+\_\+actual\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae2d64e328e13bf4c1fc27899493a65d1}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ae2d64e328e13bf4c1fc27899493a65d1}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!rain@{rain}}
+\index{rain@{rain}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{rain}{rain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::rain\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ac1c6e2b68aaae3cd4baf26490b90fd51}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_ac1c6e2b68aaae3cd4baf26490b90fd51}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!snow@{snow}}
+\index{snow@{snow}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{snow}{snow}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::snow\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_abc1b6fae0878af3cdd2553a4004b2423}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_abc1b6fae0878af3cdd2553a4004b2423}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!snowloss@{snowloss}}
+\index{snowloss@{snowloss}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{snowloss}{snowloss}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::snowloss\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_aae83dbc364205907becf4fc3532003fd}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_aae83dbc364205907becf4fc3532003fd}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!snowmelt@{snowmelt}}
+\index{snowmelt@{snowmelt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{snowmelt}{snowmelt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::snowmelt\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a75fdbfbedf39e4df22d75e6fbe99287d}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a75fdbfbedf39e4df22d75e6fbe99287d}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!temp\+\_\+avg@{temp\+\_\+avg}}
+\index{temp\+\_\+avg@{temp\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{temp\+\_\+avg}{temp\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::temp\+\_\+avg\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a9b735922ec9885da9efd16dd6722fb05}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a9b735922ec9885da9efd16dd6722fb05}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!temp\+\_\+max@{temp\+\_\+max}}
+\index{temp\+\_\+max@{temp\+\_\+max}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{temp\+\_\+max}{temp\_max}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::temp\+\_\+max\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a7353c64d2f60af0cba687656c5fb5fd0}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a7353c64d2f60af0cba687656c5fb5fd0}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!temp\+\_\+min@{temp\+\_\+min}}
+\index{temp\+\_\+min@{temp\+\_\+min}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{temp\+\_\+min}{temp\_min}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::temp\+\_\+min\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a2798e58bd5807bcb620ea55861db54ed}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a2798e58bd5807bcb620ea55861db54ed}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!temp\+\_\+run\+\_\+avg@{temp\+\_\+run\+\_\+avg}}
+\index{temp\+\_\+run\+\_\+avg@{temp\+\_\+run\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{temp\+\_\+run\+\_\+avg}{temp\_run\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::temp\+\_\+run\+\_\+avg\mbox{[}\hyperlink{_s_w___defines_8h_aa13584938d6d242c32df06115a94b01a}{T\+W\+O\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a833e32d3c690e4c8d0941514a87afbff}\label{struct_s_w___w_e_a_t_h_e_r__2_d_a_y_s_a833e32d3c690e4c8d0941514a87afbff}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}!temp\+\_\+yr\+\_\+avg@{temp\+\_\+yr\+\_\+avg}}
+\index{temp\+\_\+yr\+\_\+avg@{temp\+\_\+yr\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+YS}}
+\subsubsection{\texorpdfstring{temp\+\_\+yr\+\_\+avg}{temp\_yr\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+2\+D\+A\+Y\+S\+::temp\+\_\+yr\+\_\+avg}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___weather_8h}{S\+W\+\_\+\+Weather.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___w_e_a_t_h_e_r___h_i_s_t.tex b/doc/latex/struct_s_w___w_e_a_t_h_e_r___h_i_s_t.tex
new file mode 100644
index 000000000..51d115350
--- /dev/null
+++ b/doc/latex/struct_s_w___w_e_a_t_h_e_r___h_i_s_t.tex
@@ -0,0 +1,65 @@
+\hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}{}\section{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST Struct Reference}
+\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t}\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Weather.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_acd336b419dca4c9cddd46a32f305e143}{temp\+\_\+max} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a303edf6124c7432718098170f8005023}{temp\+\_\+min} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af9588a72d5368a35c402077fce55a14b}{temp\+\_\+avg} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_aaf702e69c95ad3e67cd21bc57068cc08}{ppt} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a205f87e5374bcf367f4457695b14cedd}{temp\+\_\+month\+\_\+avg} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af17370ce88e1413f03e096a3cee4d0f8}{temp\+\_\+year\+\_\+avg}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_aaf702e69c95ad3e67cd21bc57068cc08}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_aaf702e69c95ad3e67cd21bc57068cc08}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!ppt@{ppt}}
+\index{ppt@{ppt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{ppt}{ppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::ppt\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af9588a72d5368a35c402077fce55a14b}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af9588a72d5368a35c402077fce55a14b}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!temp\+\_\+avg@{temp\+\_\+avg}}
+\index{temp\+\_\+avg@{temp\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{temp\+\_\+avg}{temp\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::temp\+\_\+avg\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_acd336b419dca4c9cddd46a32f305e143}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_acd336b419dca4c9cddd46a32f305e143}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!temp\+\_\+max@{temp\+\_\+max}}
+\index{temp\+\_\+max@{temp\+\_\+max}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{temp\+\_\+max}{temp\_max}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::temp\+\_\+max\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a303edf6124c7432718098170f8005023}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a303edf6124c7432718098170f8005023}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!temp\+\_\+min@{temp\+\_\+min}}
+\index{temp\+\_\+min@{temp\+\_\+min}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{temp\+\_\+min}{temp\_min}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::temp\+\_\+min\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a205f87e5374bcf367f4457695b14cedd}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_a205f87e5374bcf367f4457695b14cedd}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!temp\+\_\+month\+\_\+avg@{temp\+\_\+month\+\_\+avg}}
+\index{temp\+\_\+month\+\_\+avg@{temp\+\_\+month\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{temp\+\_\+month\+\_\+avg}{temp\_month\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::temp\+\_\+month\+\_\+avg\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af17370ce88e1413f03e096a3cee4d0f8}\label{struct_s_w___w_e_a_t_h_e_r___h_i_s_t_af17370ce88e1413f03e096a3cee4d0f8}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}!temp\+\_\+year\+\_\+avg@{temp\+\_\+year\+\_\+avg}}
+\index{temp\+\_\+year\+\_\+avg@{temp\+\_\+year\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+ST}}
+\subsubsection{\texorpdfstring{temp\+\_\+year\+\_\+avg}{temp\_year\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+H\+I\+S\+T\+::temp\+\_\+year\+\_\+avg}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___weather_8h}{S\+W\+\_\+\+Weather.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.tex b/doc/latex/struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.tex
new file mode 100644
index 000000000..b24ae4ca7
--- /dev/null
+++ b/doc/latex/struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s.tex
@@ -0,0 +1,137 @@
+\hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}{}\section{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS Struct Reference}
+\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s}\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Weather.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a5b2247f11a4f701e4d8c4ce2efae48c0}{temp\+\_\+max}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adb824c9208853bdc6bc1dfeff9abf96f}{temp\+\_\+min}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a29fe7299188b0b52fd3faca4f90c7675}{temp\+\_\+avg}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ae8c1b34a0bba9e0ec69c114424347887}{ppt}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a89d70017d876b664f263aeae244d84e0}{rain}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a4069e1bd430c99c389f2a4436aa9517b}{snow}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a2b6f14f8fd6fdc71673585f055bb0ffd}{snowmelt}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa1c2aa2720f18d44b1e5a2a6373423ee}{snowloss}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a58a83baf91ef77a8f1c224f691277c8a}{snow\+Runoff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aadfb9af8bc88d40a2cb2fa6c7628c402}{surface\+Runoff}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aec8f3d80e3f5a5e592c5995a696112b4}{soil\+\_\+inf}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ac4dc863413215d260534d94c35dcd95d}{et}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa05d33552303b6987adc88e01e9cb914}{aet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adbceb5eaaab5ac51c09649dd4d51d929}{pet}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a844174bd6c875b41c6d1e556b97ee0ee}{surface\+Temp}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa05d33552303b6987adc88e01e9cb914}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa05d33552303b6987adc88e01e9cb914}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!aet@{aet}}
+\index{aet@{aet}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{aet}{aet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::aet}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ac4dc863413215d260534d94c35dcd95d}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ac4dc863413215d260534d94c35dcd95d}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!et@{et}}
+\index{et@{et}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{et}{et}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::et}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adbceb5eaaab5ac51c09649dd4d51d929}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adbceb5eaaab5ac51c09649dd4d51d929}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!pet@{pet}}
+\index{pet@{pet}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{pet}{pet}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::pet}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ae8c1b34a0bba9e0ec69c114424347887}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_ae8c1b34a0bba9e0ec69c114424347887}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!ppt@{ppt}}
+\index{ppt@{ppt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{ppt}{ppt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::ppt}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a89d70017d876b664f263aeae244d84e0}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a89d70017d876b664f263aeae244d84e0}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!rain@{rain}}
+\index{rain@{rain}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{rain}{rain}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::rain}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a4069e1bd430c99c389f2a4436aa9517b}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a4069e1bd430c99c389f2a4436aa9517b}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!snow@{snow}}
+\index{snow@{snow}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snow}{snow}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snow}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa1c2aa2720f18d44b1e5a2a6373423ee}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aa1c2aa2720f18d44b1e5a2a6373423ee}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!snowloss@{snowloss}}
+\index{snowloss@{snowloss}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snowloss}{snowloss}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snowloss}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a2b6f14f8fd6fdc71673585f055bb0ffd}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a2b6f14f8fd6fdc71673585f055bb0ffd}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!snowmelt@{snowmelt}}
+\index{snowmelt@{snowmelt}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snowmelt}{snowmelt}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snowmelt}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a58a83baf91ef77a8f1c224f691277c8a}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a58a83baf91ef77a8f1c224f691277c8a}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!snow\+Runoff@{snow\+Runoff}}
+\index{snow\+Runoff@{snow\+Runoff}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{snow\+Runoff}{snowRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::snow\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aec8f3d80e3f5a5e592c5995a696112b4}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aec8f3d80e3f5a5e592c5995a696112b4}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!soil\+\_\+inf@{soil\+\_\+inf}}
+\index{soil\+\_\+inf@{soil\+\_\+inf}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{soil\+\_\+inf}{soil\_inf}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::soil\+\_\+inf}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aadfb9af8bc88d40a2cb2fa6c7628c402}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_aadfb9af8bc88d40a2cb2fa6c7628c402}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!surface\+Runoff@{surface\+Runoff}}
+\index{surface\+Runoff@{surface\+Runoff}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{surface\+Runoff}{surfaceRunoff}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::surface\+Runoff}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a844174bd6c875b41c6d1e556b97ee0ee}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a844174bd6c875b41c6d1e556b97ee0ee}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!surface\+Temp@{surface\+Temp}}
+\index{surface\+Temp@{surface\+Temp}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{surface\+Temp}{surfaceTemp}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::surface\+Temp}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a29fe7299188b0b52fd3faca4f90c7675}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a29fe7299188b0b52fd3faca4f90c7675}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!temp\+\_\+avg@{temp\+\_\+avg}}
+\index{temp\+\_\+avg@{temp\+\_\+avg}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{temp\+\_\+avg}{temp\_avg}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::temp\+\_\+avg}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a5b2247f11a4f701e4d8c4ce2efae48c0}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_a5b2247f11a4f701e4d8c4ce2efae48c0}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!temp\+\_\+max@{temp\+\_\+max}}
+\index{temp\+\_\+max@{temp\+\_\+max}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{temp\+\_\+max}{temp\_max}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::temp\+\_\+max}
+
+\mbox{\Hypertarget{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adb824c9208853bdc6bc1dfeff9abf96f}\label{struct_s_w___w_e_a_t_h_e_r___o_u_t_p_u_t_s_adb824c9208853bdc6bc1dfeff9abf96f}}
+\index{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}!temp\+\_\+min@{temp\+\_\+min}}
+\index{temp\+\_\+min@{temp\+\_\+min}!S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS@{S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+TS}}
+\subsubsection{\texorpdfstring{temp\+\_\+min}{temp\_min}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} S\+W\+\_\+\+W\+E\+A\+T\+H\+E\+R\+\_\+\+O\+U\+T\+P\+U\+T\+S\+::temp\+\_\+min}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___weather_8h}{S\+W\+\_\+\+Weather.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/struct_veg_type.tex b/doc/latex/struct_veg_type.tex
new file mode 100644
index 000000000..2eea2346a
--- /dev/null
+++ b/doc/latex/struct_veg_type.tex
@@ -0,0 +1,349 @@
+\hypertarget{struct_veg_type}{}\section{Veg\+Type Struct Reference}
+\label{struct_veg_type}\index{Veg\+Type@{Veg\+Type}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Veg\+Prod.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a5046a57c5d9c224a683182ee4c2997c4}{conv\+\_\+stcr}
+\item
+\hyperlink{structtanfunc__t}{tanfunc\+\_\+t} \hyperlink{struct_veg_type_aac40e85a764b5b1efca9b21a8de7332a}{cnpy}
+\item
+\hyperlink{structtanfunc__t}{tanfunc\+\_\+t} \hyperlink{struct_veg_type_af3afdd2c85788d6b6a4c1d91c0d3e483}{tr\+\_\+shade\+\_\+effects}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a386cea6b73513d17ac0b87354922fd08}{canopy\+\_\+height\+\_\+constant}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a81084955a7bb26a6856a846e53c1f9f0}{shade\+\_\+scale}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_aff715aa3ea34e7408699818553e6cc75}{shade\+\_\+deadmax}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ac0050a00f702961caa7fead3d25485e9}{albedo}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a88a2f9babc0cc68dbe22df58f193ccab}{litter} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a48191a4cc8787965340dce0e05af21e7}{biomass} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a9a61329df61a5decb05e795460f079dd}{pct\+\_\+live} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a8e5483895a2af8a5f2e1304be81f216b}{lai\+\_\+conv} \mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a00218e0ea1cfc50562ffd87f8b16e834}{litter\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_aec9201d5b43b152d86a0450b757d0f97}{biomass\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ab621b22f5c59574f62956abe8e96efaa}{pct\+\_\+live\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ad959b9fa5752917c23350e152b727953}{veg\+\_\+height\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a9e4c05e607cbb0ee3ade5b94e1678dcf}{lai\+\_\+conv\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a19493f6685c21384883de51167240e15}{lai\+\_\+live\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a4e83736604de06c0958fa88a76221062}{pct\+\_\+cover\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_abbd82dad2f5476416a3979b04c3b213e}{vegcov\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a46c4bcc0a97c701c1593ad6cbd4a0472}{biolive\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a086af132e9ff5bd76be61b4845ca50b2}{biodead\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a3536780e65f7db9527448c4ee08908b4}{total\+\_\+agb\+\_\+daily} \mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}
+\item
+\hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} \hyperlink{struct_veg_type_a83b9fc0e45b383d631fabbe83316fb41}{flag\+Hydraulic\+Redistribution}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ad52fa22fc31200ff6ccf429746e947ad}{max\+Condroot}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a2d8ff7ce9d54b9b2e83757ed5ca6ab1f}{swp\+Matric50}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_aea3b830249ff5131c0fbed64fc1f4c05}{shape\+Cond}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a5eb5135d8e977bc384af507469e1f713}{S\+W\+Pcrit}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_afb4774c677b3cd85f2e36eab880c59d6}{veg\+\_\+int\+P\+P\+T\+\_\+a}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a749ea4c1e5dc7b1a2ebc16c15de3015d}{veg\+\_\+int\+P\+P\+T\+\_\+b}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a4a272eaac75b6ccef38abab3ad9afb0d}{veg\+\_\+int\+P\+P\+T\+\_\+c}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a39610c665011659163a7398b01b3aa89}{veg\+\_\+int\+P\+P\+T\+\_\+d}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a58f4245dbf2862ea99e77c98744a00dd}{litt\+\_\+int\+P\+P\+T\+\_\+a}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ac771ad7e7dfab92b5ddcd6f5332b7bf2}{litt\+\_\+int\+P\+P\+T\+\_\+b}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ab40333654c3536f7939ae1865a7feac4}{litt\+\_\+int\+P\+P\+T\+\_\+c}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a7b43bc786d7b25661a4a99e55f96bd9d}{litt\+\_\+int\+P\+P\+T\+\_\+d}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_a9a14971307084c7b7d2ae702cf9f7a7b}{Es\+Tpartitioning\+\_\+param}
+\item
+\hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} \hyperlink{struct_veg_type_ac93ec2505d567932f523ec92b793920f}{Es\+\_\+param\+\_\+limit}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{struct_veg_type_ac0050a00f702961caa7fead3d25485e9}\label{struct_veg_type_ac0050a00f702961caa7fead3d25485e9}}
+\index{Veg\+Type@{Veg\+Type}!albedo@{albedo}}
+\index{albedo@{albedo}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{albedo}{albedo}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::albedo}
+
+\mbox{\Hypertarget{struct_veg_type_a086af132e9ff5bd76be61b4845ca50b2}\label{struct_veg_type_a086af132e9ff5bd76be61b4845ca50b2}}
+\index{Veg\+Type@{Veg\+Type}!biodead\+\_\+daily@{biodead\+\_\+daily}}
+\index{biodead\+\_\+daily@{biodead\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{biodead\+\_\+daily}{biodead\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::biodead\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_a46c4bcc0a97c701c1593ad6cbd4a0472}\label{struct_veg_type_a46c4bcc0a97c701c1593ad6cbd4a0472}}
+\index{Veg\+Type@{Veg\+Type}!biolive\+\_\+daily@{biolive\+\_\+daily}}
+\index{biolive\+\_\+daily@{biolive\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{biolive\+\_\+daily}{biolive\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::biolive\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_a48191a4cc8787965340dce0e05af21e7}\label{struct_veg_type_a48191a4cc8787965340dce0e05af21e7}}
+\index{Veg\+Type@{Veg\+Type}!biomass@{biomass}}
+\index{biomass@{biomass}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{biomass}{biomass}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::biomass\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_aec9201d5b43b152d86a0450b757d0f97}\label{struct_veg_type_aec9201d5b43b152d86a0450b757d0f97}}
+\index{Veg\+Type@{Veg\+Type}!biomass\+\_\+daily@{biomass\+\_\+daily}}
+\index{biomass\+\_\+daily@{biomass\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{biomass\+\_\+daily}{biomass\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::biomass\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_a386cea6b73513d17ac0b87354922fd08}\label{struct_veg_type_a386cea6b73513d17ac0b87354922fd08}}
+\index{Veg\+Type@{Veg\+Type}!canopy\+\_\+height\+\_\+constant@{canopy\+\_\+height\+\_\+constant}}
+\index{canopy\+\_\+height\+\_\+constant@{canopy\+\_\+height\+\_\+constant}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{canopy\+\_\+height\+\_\+constant}{canopy\_height\_constant}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::canopy\+\_\+height\+\_\+constant}
+
+\mbox{\Hypertarget{struct_veg_type_aac40e85a764b5b1efca9b21a8de7332a}\label{struct_veg_type_aac40e85a764b5b1efca9b21a8de7332a}}
+\index{Veg\+Type@{Veg\+Type}!cnpy@{cnpy}}
+\index{cnpy@{cnpy}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{cnpy}{cnpy}}
+{\footnotesize\ttfamily \hyperlink{structtanfunc__t}{tanfunc\+\_\+t} Veg\+Type\+::cnpy}
+
+\mbox{\Hypertarget{struct_veg_type_a5046a57c5d9c224a683182ee4c2997c4}\label{struct_veg_type_a5046a57c5d9c224a683182ee4c2997c4}}
+\index{Veg\+Type@{Veg\+Type}!conv\+\_\+stcr@{conv\+\_\+stcr}}
+\index{conv\+\_\+stcr@{conv\+\_\+stcr}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{conv\+\_\+stcr}{conv\_stcr}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::conv\+\_\+stcr}
+
+\mbox{\Hypertarget{struct_veg_type_ac93ec2505d567932f523ec92b793920f}\label{struct_veg_type_ac93ec2505d567932f523ec92b793920f}}
+\index{Veg\+Type@{Veg\+Type}!Es\+\_\+param\+\_\+limit@{Es\+\_\+param\+\_\+limit}}
+\index{Es\+\_\+param\+\_\+limit@{Es\+\_\+param\+\_\+limit}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{Es\+\_\+param\+\_\+limit}{Es\_param\_limit}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::\+Es\+\_\+param\+\_\+limit}
+
+\mbox{\Hypertarget{struct_veg_type_a9a14971307084c7b7d2ae702cf9f7a7b}\label{struct_veg_type_a9a14971307084c7b7d2ae702cf9f7a7b}}
+\index{Veg\+Type@{Veg\+Type}!Es\+Tpartitioning\+\_\+param@{Es\+Tpartitioning\+\_\+param}}
+\index{Es\+Tpartitioning\+\_\+param@{Es\+Tpartitioning\+\_\+param}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{Es\+Tpartitioning\+\_\+param}{EsTpartitioning\_param}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::\+Es\+Tpartitioning\+\_\+param}
+
+\mbox{\Hypertarget{struct_veg_type_a83b9fc0e45b383d631fabbe83316fb41}\label{struct_veg_type_a83b9fc0e45b383d631fabbe83316fb41}}
+\index{Veg\+Type@{Veg\+Type}!flag\+Hydraulic\+Redistribution@{flag\+Hydraulic\+Redistribution}}
+\index{flag\+Hydraulic\+Redistribution@{flag\+Hydraulic\+Redistribution}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{flag\+Hydraulic\+Redistribution}{flagHydraulicRedistribution}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a39db6982619d623273fad8a383489309}{Bool} Veg\+Type\+::flag\+Hydraulic\+Redistribution}
+
+\mbox{\Hypertarget{struct_veg_type_a8e5483895a2af8a5f2e1304be81f216b}\label{struct_veg_type_a8e5483895a2af8a5f2e1304be81f216b}}
+\index{Veg\+Type@{Veg\+Type}!lai\+\_\+conv@{lai\+\_\+conv}}
+\index{lai\+\_\+conv@{lai\+\_\+conv}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{lai\+\_\+conv}{lai\_conv}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::lai\+\_\+conv\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_a9e4c05e607cbb0ee3ade5b94e1678dcf}\label{struct_veg_type_a9e4c05e607cbb0ee3ade5b94e1678dcf}}
+\index{Veg\+Type@{Veg\+Type}!lai\+\_\+conv\+\_\+daily@{lai\+\_\+conv\+\_\+daily}}
+\index{lai\+\_\+conv\+\_\+daily@{lai\+\_\+conv\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{lai\+\_\+conv\+\_\+daily}{lai\_conv\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::lai\+\_\+conv\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_a19493f6685c21384883de51167240e15}\label{struct_veg_type_a19493f6685c21384883de51167240e15}}
+\index{Veg\+Type@{Veg\+Type}!lai\+\_\+live\+\_\+daily@{lai\+\_\+live\+\_\+daily}}
+\index{lai\+\_\+live\+\_\+daily@{lai\+\_\+live\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{lai\+\_\+live\+\_\+daily}{lai\_live\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::lai\+\_\+live\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_a58f4245dbf2862ea99e77c98744a00dd}\label{struct_veg_type_a58f4245dbf2862ea99e77c98744a00dd}}
+\index{Veg\+Type@{Veg\+Type}!litt\+\_\+int\+P\+P\+T\+\_\+a@{litt\+\_\+int\+P\+P\+T\+\_\+a}}
+\index{litt\+\_\+int\+P\+P\+T\+\_\+a@{litt\+\_\+int\+P\+P\+T\+\_\+a}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litt\+\_\+int\+P\+P\+T\+\_\+a}{litt\_intPPT\_a}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litt\+\_\+int\+P\+P\+T\+\_\+a}
+
+\mbox{\Hypertarget{struct_veg_type_ac771ad7e7dfab92b5ddcd6f5332b7bf2}\label{struct_veg_type_ac771ad7e7dfab92b5ddcd6f5332b7bf2}}
+\index{Veg\+Type@{Veg\+Type}!litt\+\_\+int\+P\+P\+T\+\_\+b@{litt\+\_\+int\+P\+P\+T\+\_\+b}}
+\index{litt\+\_\+int\+P\+P\+T\+\_\+b@{litt\+\_\+int\+P\+P\+T\+\_\+b}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litt\+\_\+int\+P\+P\+T\+\_\+b}{litt\_intPPT\_b}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litt\+\_\+int\+P\+P\+T\+\_\+b}
+
+\mbox{\Hypertarget{struct_veg_type_ab40333654c3536f7939ae1865a7feac4}\label{struct_veg_type_ab40333654c3536f7939ae1865a7feac4}}
+\index{Veg\+Type@{Veg\+Type}!litt\+\_\+int\+P\+P\+T\+\_\+c@{litt\+\_\+int\+P\+P\+T\+\_\+c}}
+\index{litt\+\_\+int\+P\+P\+T\+\_\+c@{litt\+\_\+int\+P\+P\+T\+\_\+c}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litt\+\_\+int\+P\+P\+T\+\_\+c}{litt\_intPPT\_c}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litt\+\_\+int\+P\+P\+T\+\_\+c}
+
+\mbox{\Hypertarget{struct_veg_type_a7b43bc786d7b25661a4a99e55f96bd9d}\label{struct_veg_type_a7b43bc786d7b25661a4a99e55f96bd9d}}
+\index{Veg\+Type@{Veg\+Type}!litt\+\_\+int\+P\+P\+T\+\_\+d@{litt\+\_\+int\+P\+P\+T\+\_\+d}}
+\index{litt\+\_\+int\+P\+P\+T\+\_\+d@{litt\+\_\+int\+P\+P\+T\+\_\+d}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litt\+\_\+int\+P\+P\+T\+\_\+d}{litt\_intPPT\_d}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litt\+\_\+int\+P\+P\+T\+\_\+d}
+
+\mbox{\Hypertarget{struct_veg_type_a88a2f9babc0cc68dbe22df58f193ccab}\label{struct_veg_type_a88a2f9babc0cc68dbe22df58f193ccab}}
+\index{Veg\+Type@{Veg\+Type}!litter@{litter}}
+\index{litter@{litter}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litter}{litter}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litter\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_a00218e0ea1cfc50562ffd87f8b16e834}\label{struct_veg_type_a00218e0ea1cfc50562ffd87f8b16e834}}
+\index{Veg\+Type@{Veg\+Type}!litter\+\_\+daily@{litter\+\_\+daily}}
+\index{litter\+\_\+daily@{litter\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{litter\+\_\+daily}{litter\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::litter\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_ad52fa22fc31200ff6ccf429746e947ad}\label{struct_veg_type_ad52fa22fc31200ff6ccf429746e947ad}}
+\index{Veg\+Type@{Veg\+Type}!max\+Condroot@{max\+Condroot}}
+\index{max\+Condroot@{max\+Condroot}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{max\+Condroot}{maxCondroot}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::max\+Condroot}
+
+\mbox{\Hypertarget{struct_veg_type_a4e83736604de06c0958fa88a76221062}\label{struct_veg_type_a4e83736604de06c0958fa88a76221062}}
+\index{Veg\+Type@{Veg\+Type}!pct\+\_\+cover\+\_\+daily@{pct\+\_\+cover\+\_\+daily}}
+\index{pct\+\_\+cover\+\_\+daily@{pct\+\_\+cover\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{pct\+\_\+cover\+\_\+daily}{pct\_cover\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::pct\+\_\+cover\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_a9a61329df61a5decb05e795460f079dd}\label{struct_veg_type_a9a61329df61a5decb05e795460f079dd}}
+\index{Veg\+Type@{Veg\+Type}!pct\+\_\+live@{pct\+\_\+live}}
+\index{pct\+\_\+live@{pct\+\_\+live}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{pct\+\_\+live}{pct\_live}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::pct\+\_\+live\mbox{[}\hyperlink{_times_8h_a9c97e6841188b672e984a4eba7479277}{M\+A\+X\+\_\+\+M\+O\+N\+T\+HS}\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_ab621b22f5c59574f62956abe8e96efaa}\label{struct_veg_type_ab621b22f5c59574f62956abe8e96efaa}}
+\index{Veg\+Type@{Veg\+Type}!pct\+\_\+live\+\_\+daily@{pct\+\_\+live\+\_\+daily}}
+\index{pct\+\_\+live\+\_\+daily@{pct\+\_\+live\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{pct\+\_\+live\+\_\+daily}{pct\_live\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::pct\+\_\+live\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+Referenced by S\+W\+\_\+\+V\+P\+D\+\_\+init().
+
+\mbox{\Hypertarget{struct_veg_type_aff715aa3ea34e7408699818553e6cc75}\label{struct_veg_type_aff715aa3ea34e7408699818553e6cc75}}
+\index{Veg\+Type@{Veg\+Type}!shade\+\_\+deadmax@{shade\+\_\+deadmax}}
+\index{shade\+\_\+deadmax@{shade\+\_\+deadmax}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{shade\+\_\+deadmax}{shade\_deadmax}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::shade\+\_\+deadmax}
+
+\mbox{\Hypertarget{struct_veg_type_a81084955a7bb26a6856a846e53c1f9f0}\label{struct_veg_type_a81084955a7bb26a6856a846e53c1f9f0}}
+\index{Veg\+Type@{Veg\+Type}!shade\+\_\+scale@{shade\+\_\+scale}}
+\index{shade\+\_\+scale@{shade\+\_\+scale}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{shade\+\_\+scale}{shade\_scale}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::shade\+\_\+scale}
+
+\mbox{\Hypertarget{struct_veg_type_aea3b830249ff5131c0fbed64fc1f4c05}\label{struct_veg_type_aea3b830249ff5131c0fbed64fc1f4c05}}
+\index{Veg\+Type@{Veg\+Type}!shape\+Cond@{shape\+Cond}}
+\index{shape\+Cond@{shape\+Cond}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{shape\+Cond}{shapeCond}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::shape\+Cond}
+
+\mbox{\Hypertarget{struct_veg_type_a5eb5135d8e977bc384af507469e1f713}\label{struct_veg_type_a5eb5135d8e977bc384af507469e1f713}}
+\index{Veg\+Type@{Veg\+Type}!S\+W\+Pcrit@{S\+W\+Pcrit}}
+\index{S\+W\+Pcrit@{S\+W\+Pcrit}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{S\+W\+Pcrit}{SWPcrit}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::\+S\+W\+Pcrit}
+
+
+
+Referenced by init\+\_\+site\+\_\+info().
+
+\mbox{\Hypertarget{struct_veg_type_a2d8ff7ce9d54b9b2e83757ed5ca6ab1f}\label{struct_veg_type_a2d8ff7ce9d54b9b2e83757ed5ca6ab1f}}
+\index{Veg\+Type@{Veg\+Type}!swp\+Matric50@{swp\+Matric50}}
+\index{swp\+Matric50@{swp\+Matric50}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{swp\+Matric50}{swpMatric50}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::swp\+Matric50}
+
+\mbox{\Hypertarget{struct_veg_type_a3536780e65f7db9527448c4ee08908b4}\label{struct_veg_type_a3536780e65f7db9527448c4ee08908b4}}
+\index{Veg\+Type@{Veg\+Type}!total\+\_\+agb\+\_\+daily@{total\+\_\+agb\+\_\+daily}}
+\index{total\+\_\+agb\+\_\+daily@{total\+\_\+agb\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{total\+\_\+agb\+\_\+daily}{total\_agb\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::total\+\_\+agb\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_af3afdd2c85788d6b6a4c1d91c0d3e483}\label{struct_veg_type_af3afdd2c85788d6b6a4c1d91c0d3e483}}
+\index{Veg\+Type@{Veg\+Type}!tr\+\_\+shade\+\_\+effects@{tr\+\_\+shade\+\_\+effects}}
+\index{tr\+\_\+shade\+\_\+effects@{tr\+\_\+shade\+\_\+effects}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{tr\+\_\+shade\+\_\+effects}{tr\_shade\_effects}}
+{\footnotesize\ttfamily \hyperlink{structtanfunc__t}{tanfunc\+\_\+t} Veg\+Type\+::tr\+\_\+shade\+\_\+effects}
+
+\mbox{\Hypertarget{struct_veg_type_ad959b9fa5752917c23350e152b727953}\label{struct_veg_type_ad959b9fa5752917c23350e152b727953}}
+\index{Veg\+Type@{Veg\+Type}!veg\+\_\+height\+\_\+daily@{veg\+\_\+height\+\_\+daily}}
+\index{veg\+\_\+height\+\_\+daily@{veg\+\_\+height\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{veg\+\_\+height\+\_\+daily}{veg\_height\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::veg\+\_\+height\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+\mbox{\Hypertarget{struct_veg_type_afb4774c677b3cd85f2e36eab880c59d6}\label{struct_veg_type_afb4774c677b3cd85f2e36eab880c59d6}}
+\index{Veg\+Type@{Veg\+Type}!veg\+\_\+int\+P\+P\+T\+\_\+a@{veg\+\_\+int\+P\+P\+T\+\_\+a}}
+\index{veg\+\_\+int\+P\+P\+T\+\_\+a@{veg\+\_\+int\+P\+P\+T\+\_\+a}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{veg\+\_\+int\+P\+P\+T\+\_\+a}{veg\_intPPT\_a}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::veg\+\_\+int\+P\+P\+T\+\_\+a}
+
+\mbox{\Hypertarget{struct_veg_type_a749ea4c1e5dc7b1a2ebc16c15de3015d}\label{struct_veg_type_a749ea4c1e5dc7b1a2ebc16c15de3015d}}
+\index{Veg\+Type@{Veg\+Type}!veg\+\_\+int\+P\+P\+T\+\_\+b@{veg\+\_\+int\+P\+P\+T\+\_\+b}}
+\index{veg\+\_\+int\+P\+P\+T\+\_\+b@{veg\+\_\+int\+P\+P\+T\+\_\+b}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{veg\+\_\+int\+P\+P\+T\+\_\+b}{veg\_intPPT\_b}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::veg\+\_\+int\+P\+P\+T\+\_\+b}
+
+\mbox{\Hypertarget{struct_veg_type_a4a272eaac75b6ccef38abab3ad9afb0d}\label{struct_veg_type_a4a272eaac75b6ccef38abab3ad9afb0d}}
+\index{Veg\+Type@{Veg\+Type}!veg\+\_\+int\+P\+P\+T\+\_\+c@{veg\+\_\+int\+P\+P\+T\+\_\+c}}
+\index{veg\+\_\+int\+P\+P\+T\+\_\+c@{veg\+\_\+int\+P\+P\+T\+\_\+c}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{veg\+\_\+int\+P\+P\+T\+\_\+c}{veg\_intPPT\_c}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::veg\+\_\+int\+P\+P\+T\+\_\+c}
+
+\mbox{\Hypertarget{struct_veg_type_a39610c665011659163a7398b01b3aa89}\label{struct_veg_type_a39610c665011659163a7398b01b3aa89}}
+\index{Veg\+Type@{Veg\+Type}!veg\+\_\+int\+P\+P\+T\+\_\+d@{veg\+\_\+int\+P\+P\+T\+\_\+d}}
+\index{veg\+\_\+int\+P\+P\+T\+\_\+d@{veg\+\_\+int\+P\+P\+T\+\_\+d}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{veg\+\_\+int\+P\+P\+T\+\_\+d}{veg\_intPPT\_d}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::veg\+\_\+int\+P\+P\+T\+\_\+d}
+
+\mbox{\Hypertarget{struct_veg_type_abbd82dad2f5476416a3979b04c3b213e}\label{struct_veg_type_abbd82dad2f5476416a3979b04c3b213e}}
+\index{Veg\+Type@{Veg\+Type}!vegcov\+\_\+daily@{vegcov\+\_\+daily}}
+\index{vegcov\+\_\+daily@{vegcov\+\_\+daily}!Veg\+Type@{Veg\+Type}}
+\subsubsection{\texorpdfstring{vegcov\+\_\+daily}{vegcov\_daily}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_af1c105fd5732f70b91ddaeda0cc340e3}{RealD} Veg\+Type\+::vegcov\+\_\+daily\mbox{[}\hyperlink{_times_8h_a01f08d46080872b9f4284873b7f9dee4}{M\+A\+X\+\_\+\+D\+A\+YS}+1\mbox{]}}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___veg_prod_8h}{S\+W\+\_\+\+Veg\+Prod.\+h}\end{DoxyCompactItemize}
diff --git a/doc/latex/structtanfunc__t.tex b/doc/latex/structtanfunc__t.tex
new file mode 100644
index 000000000..37b0ce822
--- /dev/null
+++ b/doc/latex/structtanfunc__t.tex
@@ -0,0 +1,49 @@
+\hypertarget{structtanfunc__t}{}\section{tanfunc\+\_\+t Struct Reference}
+\label{structtanfunc__t}\index{tanfunc\+\_\+t@{tanfunc\+\_\+t}}
+
+
+{\ttfamily \#include $<$S\+W\+\_\+\+Defines.\+h$>$}
+
+\subsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{structtanfunc__t_af302497555fcc6e85d0e5f5aff7a0751}{xinflec}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{structtanfunc__t_a7b917642c1d68005c5fc6f055ef7024d}{yinflec}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{structtanfunc__t_a19c51d283c353fdce3d5b1ad305efdb2}{range}
+\item
+\hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} \hyperlink{structtanfunc__t_a6517acc9d0c732fbb6cb8cfafe22a4cd}{slope}
+\end{DoxyCompactItemize}
+
+
+\subsection{Field Documentation}
+\mbox{\Hypertarget{structtanfunc__t_a19c51d283c353fdce3d5b1ad305efdb2}\label{structtanfunc__t_a19c51d283c353fdce3d5b1ad305efdb2}}
+\index{tanfunc\+\_\+t@{tanfunc\+\_\+t}!range@{range}}
+\index{range@{range}!tanfunc\+\_\+t@{tanfunc\+\_\+t}}
+\subsubsection{\texorpdfstring{range}{range}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} tanfunc\+\_\+t\+::range}
+
+\mbox{\Hypertarget{structtanfunc__t_a6517acc9d0c732fbb6cb8cfafe22a4cd}\label{structtanfunc__t_a6517acc9d0c732fbb6cb8cfafe22a4cd}}
+\index{tanfunc\+\_\+t@{tanfunc\+\_\+t}!slope@{slope}}
+\index{slope@{slope}!tanfunc\+\_\+t@{tanfunc\+\_\+t}}
+\subsubsection{\texorpdfstring{slope}{slope}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} tanfunc\+\_\+t\+::slope}
+
+\mbox{\Hypertarget{structtanfunc__t_af302497555fcc6e85d0e5f5aff7a0751}\label{structtanfunc__t_af302497555fcc6e85d0e5f5aff7a0751}}
+\index{tanfunc\+\_\+t@{tanfunc\+\_\+t}!xinflec@{xinflec}}
+\index{xinflec@{xinflec}!tanfunc\+\_\+t@{tanfunc\+\_\+t}}
+\subsubsection{\texorpdfstring{xinflec}{xinflec}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} tanfunc\+\_\+t\+::xinflec}
+
+\mbox{\Hypertarget{structtanfunc__t_a7b917642c1d68005c5fc6f055ef7024d}\label{structtanfunc__t_a7b917642c1d68005c5fc6f055ef7024d}}
+\index{tanfunc\+\_\+t@{tanfunc\+\_\+t}!yinflec@{yinflec}}
+\index{yinflec@{yinflec}!tanfunc\+\_\+t@{tanfunc\+\_\+t}}
+\subsubsection{\texorpdfstring{yinflec}{yinflec}}
+{\footnotesize\ttfamily \hyperlink{generic_8h_a94d667c93da0511f21142d988f67674f}{RealF} tanfunc\+\_\+t\+::yinflec}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+\hyperlink{_s_w___defines_8h}{S\+W\+\_\+\+Defines.\+h}\end{DoxyCompactItemize}
diff --git a/rands.c b/rands.c
index 751a079d4..c4f952d47 100644
--- a/rands.c
+++ b/rands.c
@@ -353,7 +353,15 @@ double RandNorm(double mean, double stddev) {
with shape parameters a and b. The density is
x^(a-1) * (1-x)^(b-1) / Beta(a,b) for 0 < x < 1
- TODO: Provide appropriate reference(s) and license statements for the 'GENBET' algorithm.
+ The code for RandBeta was taken from ranlib, a FORTRAN77 library. Original
+ FORTRAN77 version by Barry Brown, James Lovato. C version by John Burkardt.
+ \cite Cheng1978
+
+ This code is distributed under the GNU LGPL license.
+
+ [More info can be found here](http://people.sc.fsu.edu/~jburkardt/f77_src/ranlib/ranlib.html)
+
+
\param aa. The first shape parameter of the beta distribution with 0.0 < aa.
\param bb. The second shape parameter of the beta distribution with 0.0 < bb.
From 794afbd7bfda82b4249b4f758fbc10e337756160 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 14:45:14 -0500
Subject: [PATCH 02/34] Re-organized unit test folder and files
- one file with 'main' plus necessary global SOILWAT2 variables -->
'test/sw_maintest.cc'
- renamed file 'test/sw_test.cc' to 'test/test_rands.cc' which contains
all unit tests for functionality from the rands.c/rands.h files
-> additional unit tests can be written and added their own file like
'test_rands.cc'
---
test/sw_maintest.cc | 30 ++++++++++++++++++++++++++++++
test/{sw_test.cc => test_rands.cc} | 22 +---------------------
2 files changed, 31 insertions(+), 21 deletions(-)
create mode 100644 test/sw_maintest.cc
rename test/{sw_test.cc => test_rands.cc} (64%)
diff --git a/test/sw_maintest.cc b/test/sw_maintest.cc
new file mode 100644
index 000000000..6be312fbd
--- /dev/null
+++ b/test/sw_maintest.cc
@@ -0,0 +1,30 @@
+#include "gtest/gtest.h"
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include "../generic.h"
+
+
+
+char errstr[MAX_ERROR]; /* used to compose an error msg */
+FILE *logfp; /* file handle for logging messages */
+int logged; /* boolean: true = we logged a msg */
+
+
+int main(int argc, char **argv) {
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
+
diff --git a/test/sw_test.cc b/test/test_rands.cc
similarity index 64%
rename from test/sw_test.cc
rename to test/test_rands.cc
index e9a2dac93..6bd0051c4 100644
--- a/test/sw_test.cc
+++ b/test/test_rands.cc
@@ -23,13 +23,8 @@
#include "../rands.h"
#include "../rands.c"
-char errstr[MAX_ERROR]; /* used to compose an error msg */
-FILE *logfp; /* file handle for logging messages */
-int logged; /* boolean: true = we logged a msg */
-
-
namespace {
- // This test belongs to the beta random number generator
+ // This tests the beta random number generator
TEST(BetaGeneratorTest, ZeroToOneOutput) {
EXPECT_LT(RandBeta(0.5, 2), 1);
EXPECT_LT(RandBeta(1, 3), 1);
@@ -43,19 +38,4 @@ namespace {
EXPECT_DEATH(RandBeta(-1, -3), "AA <= 0.0");
}
-
-TEST(IsTestTest, Failure) {
- // This test belongs to the IsTestTest test case.
-
- EXPECT_FALSE(3 == 4);
-}
-
} // namespace
-
-
-int main(int argc, char **argv) {
- ::testing::InitGoogleTest(&argc, argv);
- return RUN_ALL_TESTS();
-
-
-}
From 71258d238805d948e6d3c50079c59fac3e120c50 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 14:47:35 -0500
Subject: [PATCH 03/34] Updated (and re-organized) makefile
- updated makefile to reflect updated unit tests, i.e., allow an
arbitrary number of test files in the folder 'test/' --> i.e., added a
new file with new unit tests to this folder does not require updating
the make target
- renamed, re-organized, and updated documentation for targets in
makefile
- updated CI yaml files
---
.travis.yml | 5 ++-
appveyor.yml | 7 ++--
makefile | 92 +++++++++++++++++++++++++++++-----------------------
3 files changed, 57 insertions(+), 47 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 33082d27f..421d13a26 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,7 +3,6 @@ compiler:
- clang
- gcc
script:
- - make compilel
- - make gtest
- - ./sw_test
+ - make bin
+ - make test test_run
- make cleaner
diff --git a/appveyor.yml b/appveyor.yml
index ab48147ae..86b257222 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -11,7 +11,6 @@ install:
# to run your custom scripts instead of automatic MSBuild
build_script:
- set PATH=%PATH%;c:\cygwin\bin
- - make compile
- - make gtest
- - sw_test.exe
- - make gtest_clean cleaner
+ - make bin
+ - make test test_runWin
+ - make cleaner
diff --git a/makefile b/makefile
index 7c70792b3..04defe8a1 100644
--- a/makefile
+++ b/makefile
@@ -5,19 +5,21 @@
#-----------------------------------------------------------------------------------
# commands explanations
#-----------------------------------------------------------------------------------
-# make make the exe and all the o (object) files
-# make all
-# make compile compile the exe using optimizations (no making of o files), for
-# outputting finished version (exe smaller in size & most-likely faster
-# then the version produced by the make), gives warnings as well
-# make compilet same as make compile except also makes a copy of the exe
-# (named test) and moves it to the 'testing/' folder
-# make gtest compile unit tests in 'test/ folder with googltest
-# make compilel is used for compiling on Linux (explicitly link output against
-# GCC's libmath library)
+# make all creates a shared object for use in rSOILWAT2 ('all' target is required
+# by R CMD)
+# make bin compile the binary executable using optimizations
+# make bint same as 'make bin' plus moves a copy of the binary to the
+# 'testing/' folder
+# make binl same as 'make bin', but for compiling on Linux (i.e., explicitly link
+# output against GCC's libmath library)
+# make test compile unit tests in 'test/ folder with googletest
+# make test_run run unit tests (in a previous step compiled with 'make test')
+# make test_runWin run unit tests on a Windows OS (in a previous step compiled with
+# 'make test')
+# make test_clean delete test files and libraries
# make clean delete all of the o files
-# make gtest_clean delete test files and libraries
-# make cleaner delete all of the o files, the shared object file(s), test files and libraries, and the exe
+# make cleaner delete all of the o files, the shared object file(s), test files and
+# libraries, and the binary exe
#-----------------------------------------------------------------------------------
pkg = rSOILWAT2
@@ -32,49 +34,59 @@ objects = $(sources:.c=.o)
OBJECTS = $(objects) SW_R_lib.o SW_R_init.o
-target_exe = sw_v31
+bin_target = sw_v31
+bin_test = sw_test
SHLIB = $(pkg)$(SHLIB_EXT)
GTEST_DIR = googletest/googletest
+GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)
+GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
+ $(GTEST_DIR)/include/gtest/internal/*.h
+
all: $(SHLIB)
$(SHLIB) :
R CMD SHLIB -o $(SHLIB) $(OBJECTS)
@rm -f $(OBJECTS)
-.PHONY : clean
-clean :
- @rm -f $(OBJECTS)
-
-.PHONY : gtest_clean
-gtest_clean :
- @rm -f libgtest.a gtest-all.o sw_test
+.PHONY : bin bint binl
+bin :
+ gcc -O3 -Wall -Wextra -o $(bin_target) $(sources)
-.PHONY : cleaner
-cleaner :
- @rm -f $(OBJECTS) $(target_exe) $(pkg).so $(pkg).dll
- @rm -f testing/test
- @rm -f testing/Output/*
- @rm -f libgtest.a gtest-all.o sw_test
-
-.PHONY : compile
-compile :
- gcc -O3 -Wall -Wextra -o $(target_exe) $(sources)
+bint :
+ gcc -O3 -Wall -Wextra -o $(bin_target) $(sources)
+ cp $(bin_target) testing/$(bin_target)
-.PHONY : compilet
-compilet :
- gcc -O3 -Wall -Wextra -o $(target_exe) $(sources)
- cp $(target_exe) testing/test
+binl :
+ gcc -O3 -Wall -Wextra -o $(bin_target) $(sources) -lm
-.PHONY : compilel
-compilel :
- gcc -O3 -Wall -Wextra -o $(target_exe) $(sources) -lm
-.PHONY : gtest
+.PHONY : test test_run test_runWin
# based on section 'Generic Build Instructions' in https://github.com/google/googletest/tree/master/googletest)
# 1) build googletest library
# 2) compile SOILWAT2 test source file
-gtest :
+test : $(GTEST_SRCS_)
g++ -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
ar -rv libgtest.a gtest-all.o
- g++ -isystem ${GTEST_DIR}/include -pthread test/sw_test.cc libgtest.a -o sw_test
+ g++ -isystem ${GTEST_DIR}/include -pthread test/*.cc libgtest.a -o $(bin_test)
+
+test_run :
+ ./$(bin_test)
+
+test_runWin :
+ $(bin_test).exe
+
+
+.PHONY : clean clean2 test_clean cleaner
+clean :
+ @rm -f $(OBJECTS)
+
+clean2 :
+ @rm -f $(bin_target) $(pkg).so $(pkg).dll
+ @rm -f testing/$(bin_target)
+ @rm -f testing/Output/*
+
+test_clean :
+ @rm -f libgtest.a gtest-all.o $(bin_test)
+
+cleaner : clean clean2 test_clean
From 999c9db3d894cf4239a789ce3edd8c2e21e13bfd Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 14:54:20 -0500
Subject: [PATCH 04/34] travis CI requires the linux binary target...
---
.travis.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.travis.yml b/.travis.yml
index 421d13a26..935bdc413 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,6 +3,6 @@ compiler:
- clang
- gcc
script:
- - make bin
+ - make binl
- make test test_run
- make cleaner
From 804a069b4571348382cb39cc8ba6c7789bdafef9 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 15:16:17 -0500
Subject: [PATCH 05/34] Attempts to fix appveyor.yml
Appveyor fails with:
> sw_test.exe
> make: sw_test.exe: Command not found
---
appveyor.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/appveyor.yml b/appveyor.yml
index 86b257222..3687c91cd 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -13,4 +13,8 @@ build_script:
- set PATH=%PATH%;c:\cygwin\bin
- make bin
- make test test_runWin
+ - ls -alp
+ - sw_test
+ - sw_test.exe
+ - make test_run
- make cleaner
From cfcaba837793f0da3622a2975b77934a9efe9595 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 15:18:00 -0500
Subject: [PATCH 06/34] test multiple attempts at once for appveyor CI
---
appveyor.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/appveyor.yml b/appveyor.yml
index 3687c91cd..81a300143 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -3,7 +3,7 @@ platform:
- Any CPU
matrix:
- fast_finish: true
+ fast_finish: false
install:
- git submodule update --init --recursive
From efc61ec120a3111e1c83ce407f24400b81ccea00 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 15:20:08 -0500
Subject: [PATCH 07/34] test multiple attempts at once for appveyor CI: v2
---
appveyor.yml | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/appveyor.yml b/appveyor.yml
index 81a300143..8f5341c14 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -2,8 +2,6 @@ platform:
- x86
- Any CPU
-matrix:
- fast_finish: false
install:
- git submodule update --init --recursive
@@ -12,9 +10,10 @@ install:
build_script:
- set PATH=%PATH%;c:\cygwin\bin
- make bin
- - make test test_runWin
+ - make test
- ls -alp
- - sw_test
- sw_test.exe
+ - sw_test
- make test_run
+ - make test_runWin
- make cleaner
From ca17b96d60138067581409839b025b56c63c04b5 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 15:25:28 -0500
Subject: [PATCH 08/34] Fix appveyor-ci
- we don't need a dedicate make target 'test_runWin'
> make test_run
> ./sw_test
> [==========] Running 2 tests from 2 test cases.
> ...
> [==========] 2 tests from 2 test cases ran. (24 ms total)
> [ PASSED ] 2 tests.
---
appveyor.yml | 9 +++------
makefile | 5 -----
2 files changed, 3 insertions(+), 11 deletions(-)
diff --git a/appveyor.yml b/appveyor.yml
index 8f5341c14..446eb2732 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -2,6 +2,8 @@ platform:
- x86
- Any CPU
+matrix:
+ fast_finish: true
install:
- git submodule update --init --recursive
@@ -10,10 +12,5 @@ install:
build_script:
- set PATH=%PATH%;c:\cygwin\bin
- make bin
- - make test
- - ls -alp
- - sw_test.exe
- - sw_test
- - make test_run
- - make test_runWin
+ - make test test_run
- make cleaner
diff --git a/makefile b/makefile
index 04defe8a1..965dbeea2 100644
--- a/makefile
+++ b/makefile
@@ -14,8 +14,6 @@
# output against GCC's libmath library)
# make test compile unit tests in 'test/ folder with googletest
# make test_run run unit tests (in a previous step compiled with 'make test')
-# make test_runWin run unit tests on a Windows OS (in a previous step compiled with
-# 'make test')
# make test_clean delete test files and libraries
# make clean delete all of the o files
# make cleaner delete all of the o files, the shared object file(s), test files and
@@ -73,9 +71,6 @@ test : $(GTEST_SRCS_)
test_run :
./$(bin_test)
-test_runWin :
- $(bin_test).exe
-
.PHONY : clean clean2 test_clean cleaner
clean :
From 2b44c057aee21805603d2ea0cc440a2700235c71 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 21:04:25 -0500
Subject: [PATCH 09/34] Add new target "lib" to makefile
- target "lib" creates a library/archive with SOILWAT2 functionality
- this target should reduce the need to repeatedly compile the same
source files
- ideally it would also eliminate the need to include source files in
the unit test files (but I believe this doesn't work)
- fix RandBeta function declaration in rands.h
---
makefile | 65 ++++++++++++++++++++++++++++++++++++--------------------
rands.h | 2 +-
2 files changed, 43 insertions(+), 24 deletions(-)
diff --git a/makefile b/makefile
index 965dbeea2..cb49b3ca9 100644
--- a/makefile
+++ b/makefile
@@ -12,6 +12,7 @@
# 'testing/' folder
# make binl same as 'make bin', but for compiling on Linux (i.e., explicitly link
# output against GCC's libmath library)
+# make lib create SOILWAT2 library
# make test compile unit tests in 'test/ folder with googletest
# make test_run run unit tests (in a previous step compiled with 'make test')
# make test_clean delete test files and libraries
@@ -20,21 +21,26 @@
# libraries, and the binary exe
#-----------------------------------------------------------------------------------
-pkg = rSOILWAT2
-sources = SW_Main.c SW_VegEstab.c SW_Control.c generic.c \
+sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
rands.c Times.c mymemory.c filefuncs.c \
SW_Files.c SW_Model.c SW_Site.c SW_SoilWater.c \
SW_Markov.c SW_Weather.c SW_Sky.c SW_Output.c \
SW_VegProd.c SW_Flow_lib.c SW_Flow.c
-
objects = $(sources:.c=.o)
-OBJECTS = $(objects) SW_R_lib.o SW_R_init.o
+bin_sources = SW_Main.c
+bin_objects = $(bin_sources:.c=.o)
+
+Rpkg_objects = $(objects) SW_R_lib.o SW_R_init.o
-bin_target = sw_v31
+target = SOILWAT2
bin_test = sw_test
-SHLIB = $(pkg)$(SHLIB_EXT)
+lib_target = lib$(target).a
+SHLIB = r$(target)$(SHLIB_EXT)
+
+gtest = gtest
+lib_gtest = lib$(gtest)
GTEST_DIR = googletest/googletest
GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)
GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
@@ -43,30 +49,43 @@ GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
all: $(SHLIB)
$(SHLIB) :
- R CMD SHLIB -o $(SHLIB) $(OBJECTS)
- @rm -f $(OBJECTS)
+ R CMD SHLIB -o $(SHLIB) $(Rpkg_objects)
+ @rm -f $(Rpkg_objects)
+
-.PHONY : bin bint binl
-bin :
- gcc -O3 -Wall -Wextra -o $(bin_target) $(sources)
+.PHONY : lib bin bint binl
+lib : $(lib_target)
-bint :
- gcc -O3 -Wall -Wextra -o $(bin_target) $(sources)
- cp $(bin_target) testing/$(bin_target)
+$(lib_target):
+ gcc -O3 -Wall -Wextra -c $(sources)
+ ar -ruv $(lib_target) $(objects)
+ @rm -f $(objects)
+
+bin : $(lib_target)
+ gcc -O3 -Wall -Wextra -o $(target) $(lib_target) $(bin_sources)
+
+bint : $(lib_target)
+ gcc -O3 -Wall -Wextra -o $(target) $(lib_target) $(bin_sources)
+ cp $(target) testing/$(target)
binl :
- gcc -O3 -Wall -Wextra -o $(bin_target) $(sources) -lm
+ gcc -O3 -Wall -Wextra -o $(target) $(sources) $(bin_sources) -lm
-.PHONY : test test_run test_runWin
+.PHONY : test_lib test test_run
# based on section 'Generic Build Instructions' in https://github.com/google/googletest/tree/master/googletest)
# 1) build googletest library
# 2) compile SOILWAT2 test source file
-test : $(GTEST_SRCS_)
+lib_test : $(lib_gtest)
+
+$(lib_gtest) :
g++ -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
- ar -rv libgtest.a gtest-all.o
- g++ -isystem ${GTEST_DIR}/include -pthread test/*.cc libgtest.a -o $(bin_test)
+ ar -rv $(lib_gtest) gtest-all.o
+
+test : $(lib_gtest)
+ g++ -isystem ${GTEST_DIR}/include -pthread test/*.cc $(lib_gtest) \
+ -o $(bin_test)
test_run :
./$(bin_test)
@@ -74,14 +93,14 @@ test_run :
.PHONY : clean clean2 test_clean cleaner
clean :
- @rm -f $(OBJECTS)
+ @rm -f $(objects) $(bin_objects)
clean2 :
- @rm -f $(bin_target) $(pkg).so $(pkg).dll
- @rm -f testing/$(bin_target)
+ @rm -f $(target) $(SHLIB) $(lib_target)
+ @rm -f testing/$(target)
@rm -f testing/Output/*
test_clean :
- @rm -f libgtest.a gtest-all.o $(bin_test)
+ @rm -f gtest-all.o $(lib_gtest) $(bin_test)
cleaner : clean clean2 test_clean
diff --git a/rands.h b/rands.h
index f02421113..37c8df07e 100644
--- a/rands.h
+++ b/rands.h
@@ -52,7 +52,7 @@ double RandUni_fast(void);
int RandUniRange(const long first, const long last);
double RandNorm(double mean, double stddev);
void RandUniList(long, long, long, RandListType[]);
-float genbet ( float aa, float bb );
+float RandBeta(float aa, float bb);
#if RAND_FAST
#define RandUni RandUni_fast
#else
From b0ee1364d31a60936657a8201b753075235c7d43 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 21:05:45 -0500
Subject: [PATCH 10/34] Move main function to own dedicated file
- file 'SW_Main.c' is now only used for SOILWAT2 standalone executable
- all other global definitions are in SW_Main_lib.c
---
SW_Main.c | 157 +---------------------------------------
SW_Main_lib.c | 197 ++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 198 insertions(+), 156 deletions(-)
create mode 100644 SW_Main_lib.c
diff --git a/SW_Main.c b/SW_Main.c
index 0da323591..c03989466 100644
--- a/SW_Main.c
+++ b/SW_Main.c
@@ -35,50 +35,8 @@
#include "SW_Control.h"
#include "SW_Site.h"
#include "SW_Weather.h"
+#include "SW_Main_lib.c"
-/* =================================================== */
-/* Global Declarations */
-/* externed by other routines elsewhere in the program */
-/* --------------------------------------------------- */
-
-/* see generic.h and filefuncs.h for more info on these vars */
-char inbuf[1024]; /* buffer used by input statements */
-char errstr[MAX_ERROR]; /* used to compose an error msg */
-FILE *logfp; /* file handle for logging messages */
-int logged; /* boolean: true = we logged a msg */
-/* if true, write indicator to stderr */
-#ifdef RSOILWAT
-extern int logFatl;
-#endif
-Bool QuietMode, EchoInits; /* if true, echo inits to logfile */
-//function
-void init_args(int argc, char **argv);
-
-/* =================================================== */
-/* Module-Level Declarations */
-/* --------------------------------------------------- */
-
-static void check_log(void);
-static void usage(void) {
- char *s1 = "Soil water model version 2.2a (SGS-LTER Oct-2003).\n"
- "Usage: soilwat [-d startdir] [-f files.in] [-e] [-q]\n"
- " -d : operate (chdir) in startdir (default=.)\n"
- " -f : supply list of input files (default=files.in)\n"
- " a preceeding path applies to all input files\n"
- " -e : echo initial values from site and estab to logfile\n"
- " -q : quiet mode, don't print message to check logfile.\n";
-#ifndef RSOILWAT
- fprintf(stderr, "%s", s1);
- exit(0);
-#else
- Rprintf("%s", s1);
- Rprintf("EXIT 0");
- warning("");
- //exit(0);
-#endif
-}
-
-char _firstfile[1024];
#ifndef RSOILWAT
/************ Main() ************************/
@@ -102,117 +60,4 @@ int main(int argc, char **argv) {
return 0;
}
/*********** End of Main() *******************/
-
-static void check_log(void) {
- /* =================================================== */
- /* function to be called by atexit() so it's the last
- * to execute before termination. This is the place to
- * do any cleanup or progress reporting.
- */
- if (logfp != stdout && logfp != stderr) {
- if (logged && !QuietMode)
- fprintf(stderr, "\nCheck logfile for error or status messages.\n");
- CloseFile(&logfp);
- }
-
-}
#endif
-void init_args(int argc, char **argv) {
- /* =================================================== */
- /* to add an option:
- * - include it in opts[]
- * - set a flag in valopts indicating no value (0),
- * value required (1), or value optional (-1),
- * - then tell us what to do in the switch statement
- *
- * 3/1/03 - cwb - Current options are
- * -d=chg to work dir
- * -f=chg deflt first file
- * -q=quiet, don't print "Check logfile"
- * at end of program.
- */
- char str[1024], *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
- int valopts[] = { 1, 1, 0, 0 }; /* indicates options with values */
- /* 0=none, 1=required, -1=optional */
- int i, /* looper through all cmdline arguments */
- a, /* current valid argument-value position */
- op, /* position number of found option */
- nopts = sizeof(opts) / sizeof(char *);
-
- /* Defaults */
- strcpy(_firstfile, DFLT_FIRSTFILE);
- QuietMode = EchoInits = FALSE;
-
- a = 1;
- for (i = 1; i <= nopts; i++) {
- if (a >= argc)
- break;
-
- /* figure out which option by its position 0-(nopts-1) */
- for (op = 0; op < nopts; op++) {
- if (strncmp(opts[op], argv[a], 2) == 0)
- break; /* found it, move on */
- }
- if (op == nopts) {
-#ifndef RSOILWAT
- fprintf(stderr, "Invalid option %s\n", argv[a]);
- usage();
- exit(-1);
-#else
- Rprintf("Invalid option %s\n", argv[a]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
- }
-
- *str = '\0';
- /* extract value part of option-value pair */
- if (valopts[op]) {
- if ('\0' != argv[a][2]) { /* no space betw opt-value */
- strcpy(str, (argv[a] + 2));
-
- } else if ('-' != *argv[a + 1]) { /* space betw opt-value */
- strcpy(str, argv[++a]);
-
- } else if (0 < valopts[op]) { /* required opt-val not found */
-#ifndef RSOILWAT
- fprintf(stderr, "Incomplete option %s\n", opts[op]);
- usage();
- exit(-1);
-#else
- Rprintf("Incomplete option %s\n", opts[op]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
- } /* opt-val not required */
- }
-
- /* tell us what to do here */
- /* set indicators/variables based on results */
- switch (op) {
- case 0: /* -d */
- if (!ChDir(str)) {
- LogError(stderr, LOGFATAL, "Invalid project directory (%s)", str);
- }
- break;
- case 1:
- strcpy(_firstfile, str);
- break; /* -f */
- case 2:
- EchoInits = TRUE;
- break; /* -e */
- case 3:
- QuietMode = TRUE;
- break; /* -q */
- default:
- LogError(logfp, LOGFATAL, "Programmer: bad option in main:init_args:switch");
- }
-
- a++; /* move to next valid arg-value position */
-
- } /* end for(i) */
-
-}
-
diff --git a/SW_Main_lib.c b/SW_Main_lib.c
new file mode 100644
index 000000000..59c353f2d
--- /dev/null
+++ b/SW_Main_lib.c
@@ -0,0 +1,197 @@
+/********************************************************/
+/********************************************************/
+/* Application: SOILWAT - soilwater dynamics simulator
+ * Source file: Main.c
+ * Type: main module
+ * Purpose: Contains the main loops and initializations.
+ *
+ 06/24/2013 (rjm) included "SW_Site.h" and "SW_Weather.h";
+ added calls at end of main() to SW_SIT_clear_layers() and SW_WTH_clear_runavg_list() to free memory
+ */
+/********************************************************/
+/********************************************************/
+
+/* =================================================== */
+/* INCLUDES / DEFINES */
+/* --------------------------------------------------- */
+#include
+#include
+#include
+#ifdef RSOILWAT
+#include
+#include
+#include
+#include
+#endif
+
+#ifdef __BCC__
+#include
+#else
+#include
+#endif
+#include "generic.h"
+#include "filefuncs.h"
+#include "SW_Defines.h"
+#include "SW_Control.h"
+#include "SW_Site.h"
+#include "SW_Weather.h"
+
+/* =================================================== */
+/* Global Declarations */
+/* externed by other routines elsewhere in the program */
+/* --------------------------------------------------- */
+
+/* see generic.h and filefuncs.h for more info on these vars */
+char inbuf[1024]; /* buffer used by input statements */
+char errstr[MAX_ERROR]; /* used to compose an error msg */
+FILE *logfp; /* file handle for logging messages */
+int logged; /* boolean: true = we logged a msg */
+/* if true, write indicator to stderr */
+#ifdef RSOILWAT
+extern int logFatl;
+#endif
+Bool QuietMode, EchoInits; /* if true, echo inits to logfile */
+//function
+void init_args(int argc, char **argv);
+
+/* =================================================== */
+/* Module-Level Declarations */
+/* --------------------------------------------------- */
+
+static void check_log(void);
+static void usage(void) {
+ char *s1 = "Soil water model version 2.2a (SGS-LTER Oct-2003).\n"
+ "Usage: soilwat [-d startdir] [-f files.in] [-e] [-q]\n"
+ " -d : operate (chdir) in startdir (default=.)\n"
+ " -f : supply list of input files (default=files.in)\n"
+ " a preceeding path applies to all input files\n"
+ " -e : echo initial values from site and estab to logfile\n"
+ " -q : quiet mode, don't print message to check logfile.\n";
+#ifndef RSOILWAT
+ fprintf(stderr, "%s", s1);
+ exit(0);
+#else
+ Rprintf("%s", s1);
+ Rprintf("EXIT 0");
+ warning("");
+ //exit(0);
+#endif
+}
+
+char _firstfile[1024];
+
+#ifndef RSOILWAT
+
+static void check_log(void) {
+ /* =================================================== */
+ /* function to be called by atexit() so it's the last
+ * to execute before termination. This is the place to
+ * do any cleanup or progress reporting.
+ */
+ if (logfp != stdout && logfp != stderr) {
+ if (logged && !QuietMode)
+ fprintf(stderr, "\nCheck logfile for error or status messages.\n");
+ CloseFile(&logfp);
+ }
+
+}
+#endif
+void init_args(int argc, char **argv) {
+ /* =================================================== */
+ /* to add an option:
+ * - include it in opts[]
+ * - set a flag in valopts indicating no value (0),
+ * value required (1), or value optional (-1),
+ * - then tell us what to do in the switch statement
+ *
+ * 3/1/03 - cwb - Current options are
+ * -d=chg to work dir
+ * -f=chg deflt first file
+ * -q=quiet, don't print "Check logfile"
+ * at end of program.
+ */
+ char str[1024], *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
+ int valopts[] = { 1, 1, 0, 0 }; /* indicates options with values */
+ /* 0=none, 1=required, -1=optional */
+ int i, /* looper through all cmdline arguments */
+ a, /* current valid argument-value position */
+ op, /* position number of found option */
+ nopts = sizeof(opts) / sizeof(char *);
+
+ /* Defaults */
+ strcpy(_firstfile, DFLT_FIRSTFILE);
+ QuietMode = EchoInits = FALSE;
+
+ a = 1;
+ for (i = 1; i <= nopts; i++) {
+ if (a >= argc)
+ break;
+
+ /* figure out which option by its position 0-(nopts-1) */
+ for (op = 0; op < nopts; op++) {
+ if (strncmp(opts[op], argv[a], 2) == 0)
+ break; /* found it, move on */
+ }
+ if (op == nopts) {
+#ifndef RSOILWAT
+ fprintf(stderr, "Invalid option %s\n", argv[a]);
+ usage();
+ exit(-1);
+#else
+ Rprintf("Invalid option %s\n", argv[a]);
+ usage();
+ Rprintf("EXIT -1");
+ error("options");
+#endif
+ }
+
+ *str = '\0';
+ /* extract value part of option-value pair */
+ if (valopts[op]) {
+ if ('\0' != argv[a][2]) { /* no space betw opt-value */
+ strcpy(str, (argv[a] + 2));
+
+ } else if ('-' != *argv[a + 1]) { /* space betw opt-value */
+ strcpy(str, argv[++a]);
+
+ } else if (0 < valopts[op]) { /* required opt-val not found */
+#ifndef RSOILWAT
+ fprintf(stderr, "Incomplete option %s\n", opts[op]);
+ usage();
+ exit(-1);
+#else
+ Rprintf("Incomplete option %s\n", opts[op]);
+ usage();
+ Rprintf("EXIT -1");
+ error("options");
+#endif
+ } /* opt-val not required */
+ }
+
+ /* tell us what to do here */
+ /* set indicators/variables based on results */
+ switch (op) {
+ case 0: /* -d */
+ if (!ChDir(str)) {
+ LogError(stderr, LOGFATAL, "Invalid project directory (%s)", str);
+ }
+ break;
+ case 1:
+ strcpy(_firstfile, str);
+ break; /* -f */
+ case 2:
+ EchoInits = TRUE;
+ break; /* -e */
+ case 3:
+ QuietMode = TRUE;
+ break; /* -q */
+ default:
+ LogError(logfp, LOGFATAL, "Programmer: bad option in main:init_args:switch");
+ }
+
+ a++; /* move to next valid arg-value position */
+
+ } /* end for(i) */
+
+}
+
From f0eacad305986846ef837768472a7de28ba6f16d Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 22:07:37 -0500
Subject: [PATCH 11/34] Remove source files from test/*.cc unit test files
- addressing issue #82
- Remove source files from test/*.cc unit test files
- link SOILWAT2-library to 'test' target of make
- however, this does not compile and errors out with
> Undefined symbols for architecture x86_64:
"RandBeta(float, float)", referenced from:
(anonymous
namespace)::BetaGeneratorTest_ZeroToOneOutput_Test::TestBody() in
test_rands-0f5d64.o
(anonymous
namespace)::BetaGeneratorDeathTest_Errors_Test::TestBody() in
test_rands-0f5d64.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
---
makefile | 6 +++---
test/test_rands.cc | 5 +----
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/makefile b/makefile
index cb49b3ca9..50661f23d 100644
--- a/makefile
+++ b/makefile
@@ -40,7 +40,7 @@ lib_target = lib$(target).a
SHLIB = r$(target)$(SHLIB_EXT)
gtest = gtest
-lib_gtest = lib$(gtest)
+lib_gtest = lib$(gtest).a
GTEST_DIR = googletest/googletest
GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)
GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
@@ -83,8 +83,8 @@ $(lib_gtest) :
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
ar -rv $(lib_gtest) gtest-all.o
-test : $(lib_gtest)
- g++ -isystem ${GTEST_DIR}/include -pthread test/*.cc $(lib_gtest) \
+test : $(lib_gtest) $(lib_target)
+ g++ -isystem ${GTEST_DIR}/include -pthread $(lib_gtest) $(lib_target) test/*.cc \
-o $(bin_test)
test_run :
diff --git a/test/test_rands.cc b/test/test_rands.cc
index 6bd0051c4..8a99cad61 100644
--- a/test/test_rands.cc
+++ b/test/test_rands.cc
@@ -15,13 +15,10 @@
#include
#include
#include "../generic.h"
-#include "../generic.c"
#include "../myMemory.h"
-#include "../mymemory.c"
#include "../filefuncs.h"
-#include "../filefuncs.c"
#include "../rands.h"
-#include "../rands.c"
+
namespace {
// This tests the beta random number generator
From e15d89e323b23fc744635b687f84b2379eed36a5 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 22:42:47 -0500
Subject: [PATCH 12/34] A bunch of explicit casts to avoid compiler
warnings/errors
---
SW_Output.c | 12 ++++++------
SW_VegProd.c | 24 ++++++++++++------------
2 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/SW_Output.c b/SW_Output.c
index 07822bccd..cef9cfb71 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -303,7 +303,7 @@ static OutPeriod str2period(char *s)
IntUS pd;
for (pd = 0; Str_CompareI(s, pd2str[pd]) && pd < SW_OUTNPERIODS; pd++) ;
- return pd;
+ return (OutPeriod) pd;
}
static OutKey str2key(char *s)
@@ -316,7 +316,7 @@ static OutKey str2key(char *s)
{
LogError(logfp, LOGFATAL, "%s : Invalid key (%s) in %s", SW_F_name(eOutput), s);
}
- return key;
+ return (OutKey) key;
}
static OutSum str2stype(char *s)
@@ -329,7 +329,7 @@ static OutSum str2stype(char *s)
{
LogError(logfp, LOGFATAL, "%s : Invalid summary type (%s)\n", SW_F_name(eOutput), s);
}
- return styp;
+ return (OutSum) styp;
}
/* =================================================== */
@@ -1216,15 +1216,15 @@ void SW_OUT_write_today(void)
t = SW_Model.doy;
break;
case eSW_Week:
- writeit = (SW_Model.newweek || bFlush);
+ writeit = (Bool) (SW_Model.newweek || bFlush);
t = (SW_Model.week + 1) - tOffset;
break;
case eSW_Month:
- writeit = (SW_Model.newmonth || bFlush);
+ writeit = (Bool) (SW_Model.newmonth || bFlush);
t = (SW_Model.month + 1) - tOffset;
break;
case eSW_Year:
- writeit = (SW_Model.newyear || bFlush);
+ writeit = (Bool) (SW_Model.newyear || bFlush);
t = SW_Output[k].first; /* always output this period */
break;
default:
diff --git a/SW_VegProd.c b/SW_VegProd.c
index b27312851..382e11a48 100644
--- a/SW_VegProd.c
+++ b/SW_VegProd.c
@@ -413,10 +413,10 @@ void SW_VPD_read(void) {
CloseFile(&f);
LogError(logfp, LOGFATAL, errstr);
}
- v->grass.flagHydraulicRedistribution = help_grass;
- v->shrub.flagHydraulicRedistribution = help_shrub;
- v->tree.flagHydraulicRedistribution = help_tree;
- v->forb.flagHydraulicRedistribution = help_forb;
+ v->grass.flagHydraulicRedistribution = (Bool) help_grass;
+ v->shrub.flagHydraulicRedistribution = (Bool) help_shrub;
+ v->tree.flagHydraulicRedistribution = (Bool) help_tree;
+ v->forb.flagHydraulicRedistribution = (Bool) help_forb;
break;
case 26:
x = sscanf(inbuf, "%f %f %f %f", &help_grass, &help_shrub, &help_tree, &help_forb);
@@ -534,7 +534,7 @@ void SW_VPD_read(void) {
#ifdef RSOILWAT
if (!collectInData)
#endif
-
+
SW_VPD_init();
if (EchoInits)
@@ -600,7 +600,7 @@ SEXP onGet_SW_VPD() {
REAL(VegComp)[2] = v->fractionTree; //Tree
REAL(VegComp)[3] = v->fractionForb; //forb
REAL(VegComp)[4] = v->fractionBareGround; //Bare Ground
-
+
PROTECT(VegComp_names = allocVector(STRSXP, 5));
SET_STRING_ELT(VegComp_names, 0, mkChar("Grasses"));
SET_STRING_ELT(VegComp_names, 1, mkChar("Shrubs"));
@@ -622,7 +622,7 @@ SEXP onGet_SW_VPD() {
REAL(conv_stcr)[1] = v->shrub.conv_stcr; //Shrub
REAL(conv_stcr)[2] = v->tree.conv_stcr; //Tree
REAL(conv_stcr)[3] = v->forb.conv_stcr; //forb
-
+
PROTECT(col_names = allocVector(STRSXP, 4));
SET_STRING_ELT(col_names, 0, mkChar("Grasses"));
SET_STRING_ELT(col_names, 1, mkChar("Shrubs"));
@@ -842,7 +842,7 @@ SEXP onGet_SW_VPD() {
SET_VECTOR_ELT(Forest_names, 0, MonthlyProductionValues_Row_names);
SET_VECTOR_ELT(Forest_names, 1, MonthlyProductionValues_Column_names);
setAttrib(Forest, R_DimNamesSymbol, Forest_names);
-
+
PROTECT(Forb = allocMatrix(REALSXP, 12, 4));
p_Forb = REAL(Forb);
for (i = 0; i < 12; i++) {
@@ -951,7 +951,7 @@ void onSet_SW_VPD(SEXP SW_VPD) {
v->forb.cnpy.range = p_Canopy[17];
v->forb.cnpy.slope = p_Canopy[18];
v->forb.canopy_height_constant = p_Canopy[19];
-
+
PROTECT(VegInterception = GET_SLOT(SW_VPD, install(cVegProd_names[4])));
p_VegInterception = REAL(VegInterception);
v->grass.veg_intPPT_a = p_VegInterception[0];
@@ -970,7 +970,7 @@ void onSet_SW_VPD(SEXP SW_VPD) {
v->forb.veg_intPPT_b = p_VegInterception[13];
v->forb.veg_intPPT_c = p_VegInterception[14];
v->forb.veg_intPPT_d = p_VegInterception[15];
-
+
PROTECT(LitterInterception = GET_SLOT(SW_VPD, install(cVegProd_names[5])));
p_LitterInterception = REAL(LitterInterception);
v->grass.litt_intPPT_a = p_LitterInterception[0];
@@ -989,7 +989,7 @@ void onSet_SW_VPD(SEXP SW_VPD) {
v->forb.litt_intPPT_b = p_LitterInterception[13];
v->forb.litt_intPPT_c = p_LitterInterception[14];
v->forb.litt_intPPT_d = p_LitterInterception[15];
-
+
PROTECT(EsTpartitioning_param = GET_SLOT(SW_VPD, install(cVegProd_names[6])));
v->grass.EsTpartitioning_param = REAL(EsTpartitioning_param)[0]; //Grass
v->shrub.EsTpartitioning_param = REAL(EsTpartitioning_param)[1]; //Shrub
@@ -1028,7 +1028,7 @@ void onSet_SW_VPD(SEXP SW_VPD) {
v->forb.tr_shade_effects.yinflec = p_Shade[21];
v->forb.tr_shade_effects.range = p_Shade[22];
v->forb.tr_shade_effects.slope = p_Shade[23];
-
+
PROTECT(Hydraulic_flag = GET_SLOT(SW_VPD, install(cVegProd_names[9])));
PROTECT(Hydraulic = GET_SLOT(SW_VPD, install(cVegProd_names[10])));
v->grass.flagHydraulicRedistribution = LOGICAL_POINTER(Hydraulic_flag)[0]; //Grass
From ca61a042d040de664a5bc0c8b3d96f5f344aecd5 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Mon, 20 Nov 2017 23:34:13 -0500
Subject: [PATCH 13/34] Eliminate compiler warnings and notes
- eliminated all compiler warnings and notes on my computer
---
SW_Flow_lib.c | 15 ++++++++++++---
SW_Main.c | 17 +++++++++++++++++
SW_Main_Function.c | 3 ++-
SW_Main_lib.c | 17 ++---------------
SW_Model.c | 4 ++--
SW_Output.c | 2 +-
SW_Site.c | 12 ++++++------
SW_Site.h | 13 +++++++------
SW_SoilWater.c | 4 ++--
SW_VegEstab.c | 6 +++---
filefuncs.c | 4 ++--
generic.h | 45 +++++++++++++--------------------------------
12 files changed, 69 insertions(+), 73 deletions(-)
diff --git a/SW_Flow_lib.c b/SW_Flow_lib.c
index c0a2b8d90..f1dc570a6 100644
--- a/SW_Flow_lib.c
+++ b/SW_Flow_lib.c
@@ -1323,7 +1323,7 @@ void lyrSoil_to_lyrTemp(double cor[MAX_ST_RGR + 1][MAX_LAYERS + 1], unsigned int
*/
double surface_temperature_under_snow(double airTempAvg, double snow){
double kSnow; /** the effect of snow based on swe */
- double tSoilAvg; /** the average temeperature of the soil surface */
+ double tSoilAvg = 0.0; /** the average temeperature of the soil surface */
/** Parton et al. 1998. Equation 6. */
if (snow == 0){
return 0.0;
@@ -1515,14 +1515,23 @@ void set_frozen_unfrozen(unsigned int nlyrs, double sTemp[], double swc[], doubl
}
-unsigned int adjust_Tsoil_by_freezing_and_thawing(double oldsTemp[], double sTemp[], double shParam, unsigned int nlyrs, double vwc[], double bDensity[]){
+unsigned int adjust_Tsoil_by_freezing_and_thawing(double oldsTemp[], double sTemp[],
+ double shParam, unsigned int nlyrs, double vwc[], double bDensity[]){
// Calculate fusion pools based on soil profile layers, soil freezing/thawing, and if freezing/thawing not completed during one day, then adjust soil temperature
// based on Eitzinger, J., W. J. Parton, and M. Hartman. 2000. Improvement and Validation of A Daily Soil Temperature Submodel for Freezing/Thawing Periods. Soil Science 165:525-534.
// NOTE: THIS FUNCTION IS CURRENTLY NOT OPERATIONAL: DESCRIPTION BY EITZINGER ET AL. 2000 SEEMS INSUFFICIENT
+// To avoid compiler warnings 'unused parameter' until function is operational:
+oldsTemp[0] = 0.0;
+sTemp[0] = 0.0;
+shParam = 0.0;
+nlyrs = 0;
+vwc[0] = 0.0;
+bDensity[0] = 0.0;
+// double deltaTemp, Cis, sFusionPool[nlyrs], sFusionPool_actual[nlyrs];
+// end avoid compiler warnings
unsigned int i, sFadjusted_sTemp;
- double deltaTemp, Cis, sFusionPool[nlyrs], sFusionPool_actual[nlyrs];
/* local variables explained:
toDebug - 1 to print out debug messages & then exit the program after completing the function, 0 to not. default is 0.
diff --git a/SW_Main.c b/SW_Main.c
index c03989466..b7fd18294 100644
--- a/SW_Main.c
+++ b/SW_Main.c
@@ -39,6 +39,23 @@
#ifndef RSOILWAT
+static void check_log(void);
+
+
+static void check_log(void) {
+ /* =================================================== */
+ /* function to be called by atexit() so it's the last
+ * to execute before termination. This is the place to
+ * do any cleanup or progress reporting.
+ */
+ if (logfp != stdout && logfp != stderr) {
+ if (logged && !QuietMode)
+ fprintf(stderr, "\nCheck logfile for error or status messages.\n");
+ CloseFile(&logfp);
+ }
+
+}
+
/************ Main() ************************/
int main(int argc, char **argv) {
/* =================================================== */
diff --git a/SW_Main_Function.c b/SW_Main_Function.c
index bd726319e..85667dac5 100644
--- a/SW_Main_Function.c
+++ b/SW_Main_Function.c
@@ -157,7 +157,8 @@ void init_args(int argc, char **argv) {
* -q=quiet, don't print "Check logfile"
* at end of program.
*/
- char str[1024], *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
+ char str[1024]
+ const char *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
int valopts[] = { 1, 1, 0, 0 }; /* indicates options with values */
/* 0=none, 1=required, -1=optional */
int i, /* looper through all cmdline arguments */
diff --git a/SW_Main_lib.c b/SW_Main_lib.c
index 59c353f2d..cc7ce9451 100644
--- a/SW_Main_lib.c
+++ b/SW_Main_lib.c
@@ -58,9 +58,9 @@ void init_args(int argc, char **argv);
/* Module-Level Declarations */
/* --------------------------------------------------- */
-static void check_log(void);
static void usage(void) {
- char *s1 = "Soil water model version 2.2a (SGS-LTER Oct-2003).\n"
+ const char *s1 = "Ecosystem water simulation model SOILWAT2\n"
+ "More details at https://github.com/Burke-Lauenroth-Lab/SOILWAT2\n"
"Usage: soilwat [-d startdir] [-f files.in] [-e] [-q]\n"
" -d : operate (chdir) in startdir (default=.)\n"
" -f : supply list of input files (default=files.in)\n"
@@ -82,19 +82,6 @@ char _firstfile[1024];
#ifndef RSOILWAT
-static void check_log(void) {
- /* =================================================== */
- /* function to be called by atexit() so it's the last
- * to execute before termination. This is the place to
- * do any cleanup or progress reporting.
- */
- if (logfp != stdout && logfp != stderr) {
- if (logged && !QuietMode)
- fprintf(stderr, "\nCheck logfile for error or status messages.\n");
- CloseFile(&logfp);
- }
-
-}
#endif
void init_args(int argc, char **argv) {
/* =================================================== */
diff --git a/SW_Model.c b/SW_Model.c
index 5ca5fbc76..ed7ea1756 100644
--- a/SW_Model.c
+++ b/SW_Model.c
@@ -151,7 +151,7 @@ void SW_MDL_read(void) {
while (GetALine(f, inbuf)) {
cnt++;
if (isalpha(*inbuf) && strcmp(inbuf, "end")) { /* get hemisphere */
- m->isnorth = (toupper((int) *inbuf) == 'N');
+ m->isnorth = (Bool) (toupper((int) *inbuf) == 'N');
fhemi = TRUE;
break;
}//TODO: SHOULDN'T WE SKIP THIS BELOW IF ABOVE IS TRUE
@@ -170,7 +170,7 @@ void SW_MDL_read(void) {
fenddy = TRUE;
break;
case 3:
- m->isnorth = (toupper((int) *inbuf) == 'N');
+ m->isnorth = (Bool) (toupper((int) *inbuf) == 'N');
fhemi = TRUE;
break;
default:
diff --git a/SW_Output.c b/SW_Output.c
index cef9cfb71..cc7facea7 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -322,7 +322,7 @@ static OutKey str2key(char *s)
static OutSum str2stype(char *s)
{
/* --------------------------------------------------- */
- OutSum styp;
+ IntUS styp;
for (styp = eSW_Off; styp < SW_NSUMTYPES && Str_CompareI(s, styp2str[styp]); styp++) ;
if (styp == SW_NSUMTYPES)
diff --git a/SW_Site.c b/SW_Site.c
index a33d865d5..b8ba0f7b1 100644
--- a/SW_Site.c
+++ b/SW_Site.c
@@ -372,7 +372,7 @@ static void _read_layers(void) {
fail = FALSE;
LyrIndex lyrno;
int x;
- char *errtype = '\0';
+ const char *errtype = "\0";
RealF dmin = 0.0, dmax, evco, trco_forb, trco_tree, trco_shrub, trco_grass, psand, pclay, matricd, imperm, soiltemp, fval = 0, f_gravel;
/* note that Files.read() must be called prior to this. */
@@ -558,7 +558,7 @@ void onSet_SW_LYR(SEXP SW_SOILS) {
fail = FALSE;
LyrIndex lyrno;
int x, i, j, columns;
- char *errtype = '\0';
+ const char *errtype = "\0";
RealF dmin = 0.0, dmax, evco, trco_forb, trco_tree, trco_shrub, trco_grass, psand, pclay, matricd, imperm, soiltemp, fval = 0, f_gravel;
RealD *p_Layers;
SEXP SW_LYR;
@@ -1009,7 +1009,7 @@ void init_site_info(void) {
}
}
- if (curregion || ZRO(_TranspRgnBounds[curregion])) {
+ if (curregion || _TranspRgnBounds[curregion] == 0) {
LogError(logfp, LOGNOTE, " Layer %d : curregion %d _TranspRgnBounds %d", s + 1, curregion, _TranspRgnBounds[curregion]);
lyr->my_transp_rgn_forb = curregion;
sp->n_transp_lyrs_forb = max(sp->n_transp_lyrs_forb, s);
@@ -1036,7 +1036,7 @@ void init_site_info(void) {
}
}
- if (curregion || ZRO(_TranspRgnBounds[curregion])) {
+ if (curregion || _TranspRgnBounds[curregion] == 0) {
lyr->my_transp_rgn_tree = curregion;
sp->n_transp_lyrs_tree = max(sp->n_transp_lyrs_tree, s);
@@ -1062,7 +1062,7 @@ void init_site_info(void) {
}
}
- if (curregion || ZRO(_TranspRgnBounds[curregion])) {
+ if (curregion || _TranspRgnBounds[curregion] == 0) {
lyr->my_transp_rgn_shrub = curregion;
sp->n_transp_lyrs_shrub = max(sp->n_transp_lyrs_shrub, s);
@@ -1087,7 +1087,7 @@ void init_site_info(void) {
}
}
- if (curregion || ZRO(_TranspRgnBounds[curregion])) {
+ if (curregion || _TranspRgnBounds[curregion] == 0) {
lyr->my_transp_rgn_grass = curregion;
sp->n_transp_lyrs_grass = max(sp->n_transp_lyrs_grass, s);
diff --git a/SW_Site.h b/SW_Site.h
index f31c0bcbb..2d6bff22f 100644
--- a/SW_Site.h
+++ b/SW_Site.h
@@ -90,13 +90,14 @@ typedef struct {
typedef struct {
Bool reset_yr, /* 1: reset values at start of each year */
- deepdrain, /* 1: allow drainage into deepest layer */
- use_soil_temp; /* whether or not to do soil_temperature calculations */
+ deepdrain, /* 1: allow drainage into deepest layer */
+ use_soil_temp; /* whether or not to do soil_temperature calculations */
+
LyrIndex n_layers, /* total number of soil layers */
- n_transp_rgn, /* soil layers are grouped into n transp. regions */
- n_evap_lyrs, /* number of layers in which evap is possible */
- n_transp_lyrs_forb, n_transp_lyrs_tree, n_transp_lyrs_shrub, n_transp_lyrs_grass, /* layer index of deepest transp. region */
- deep_lyr; /* index of deep drainage layer if deepdrain, 0 otherwise */
+ n_transp_rgn, /* soil layers are grouped into n transp. regions */
+ n_evap_lyrs, /* number of layers in which evap is possible */
+ n_transp_lyrs_forb, n_transp_lyrs_tree, n_transp_lyrs_shrub, n_transp_lyrs_grass, /* layer index of deepest transp. region */
+ deep_lyr; /* index of deep drainage layer if deepdrain, 0 otherwise */
RealD slow_drain_coeff, /* low soil water drainage coefficient */
pet_scale, /* changes relative effect of PET calculation */
latitude, /* latitude of the site (radians) */
diff --git a/SW_SoilWater.c b/SW_SoilWater.c
index f59a47b91..9a6d2c614 100644
--- a/SW_SoilWater.c
+++ b/SW_SoilWater.c
@@ -145,7 +145,7 @@ void SW_SWC_water_flow(void) {
}
ForEachSoilLayer(i)
- SW_Soilwat.is_wet[i] = (GE( SW_Soilwat.swcBulk[Today][i],
+ SW_Soilwat.is_wet[i] = (Bool) (GE( SW_Soilwat.swcBulk[Today][i],
SW_Site.lyr[i]->swcBulk_wet));
}
@@ -170,7 +170,7 @@ void SW_SWC_new_year(void) {
LyrIndex lyr;
TimeInt year = SW_Model.year;
- Bool reset = (SW_Site.reset_yr || SW_Model.year == SW_Model.startyr);
+ Bool reset = (Bool) (SW_Site.reset_yr || SW_Model.year == SW_Model.startyr);
memset(&SW_Soilwat.yrsum, 0, sizeof(SW_SOILWAT_OUTPUTS));
diff --git a/SW_VegEstab.c b/SW_VegEstab.c
index 34dd786a9..f43edd430 100644
--- a/SW_VegEstab.c
+++ b/SW_VegEstab.c
@@ -526,9 +526,9 @@ static void _sanity_check(unsigned int sppnum) {
/* =================================================== */
SW_LAYER_INFO **lyr = SW_Site.lyr;
SW_VEGESTAB_INFO *v = SW_VegEstab.parms[sppnum];
- double min_transp_lyrs;
+ LyrIndex min_transp_lyrs;
- min_transp_lyrs = fmin(SW_Site.n_transp_lyrs_tree, fmin(SW_Site.n_transp_lyrs_forb, fmin(SW_Site.n_transp_lyrs_shrub, SW_Site.n_transp_lyrs_grass)));
+ min_transp_lyrs = min(SW_Site.n_transp_lyrs_tree, min(SW_Site.n_transp_lyrs_forb, min(SW_Site.n_transp_lyrs_shrub, SW_Site.n_transp_lyrs_grass)));
if (v->estab_lyrs > min_transp_lyrs) {
LogError(logfp, LOGFATAL, "%s : Layers requested (estab_lyrs) > (# transpiration layers=%d).", MyFileName, min_transp_lyrs);
@@ -560,7 +560,7 @@ static unsigned int _new_species(void) {
not initialized yet, malloc() required. For each
species thereafter realloc() is called.
*/
- char *me = "SW_VegEstab_newspecies()";
+ const char *me = "SW_VegEstab_newspecies()";
SW_VEGESTAB *v = &SW_VegEstab;
v->parms =
diff --git a/filefuncs.c b/filefuncs.c
index 118aac53c..48395ec4d 100644
--- a/filefuncs.c
+++ b/filefuncs.c
@@ -180,8 +180,8 @@ Bool MkDir(const char *dname) {
int r, i, n;
Bool result = TRUE;
char *a[256] = { 0 }, /* points to each path element for mkdir -p behavior */
- *delim = "\\/", /* path separators */
- *c; /* duplicate of dname so we don't change it */
+ *c; /* duplicate of dname so we don't change it */
+ const char *delim = "\\/"; /* path separators */
if (isnull(dname))
return FALSE;
diff --git a/generic.h b/generic.h
index 5e0449728..9051daf45 100644
--- a/generic.h
+++ b/generic.h
@@ -40,7 +40,7 @@
#define fmax(a,b) ( ( GT((a),(b)) ) ? (a) : (b))
#define fmin(a,b) ( ( LT((a),(b)) ) ? (a) : (b))
/* absolute value for floating point values */
-#define abs(a) ( ( LT(a, 0.00) ) ? (-a) : (a) )
+#define abs(a) ( ((a) < 0) ? (-a) : (a) )
/* redefine sqrt for double (default) or float */
#ifdef NO_SQRTF
/* the case for Borland's compiler */
@@ -146,46 +146,27 @@ extern int logged; /* REQUIRED */
#define F_DELTA (10*FLT_EPSILON)
#define D_DELTA (10*DBL_EPSILON)
-/*#define iszero(x) \
-( (sizeof(x) == sizeof(float)) \
- ? ((x)>-( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),FLT_EPSILON)+1.)) ) ) ) && (x)<( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),FLT_EPSILON)+1.)) ) ) )) \
- : ((x)>-( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),DBL_EPSILON)+1.)) ) ) ) && (x)<( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),DBL_EPSILON)+1.)) ) ) )) )
-
- #define isequal(x,y) \
-( (sizeof(x) == sizeof(float)) \
- ? ((x)>(y)-( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), FLT_EPSILON))+1.)) ) ) ) && (x)<(y)+( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), FLT_EPSILON))+1.)) ) ) )) \
- : ((x)>(y)-( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), DBL_EPSILON))+1.)) ) ) ) && (x)<(y)+( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), DBL_EPSILON))+1.)) ) ) )) )
-
-
- #define isless2(x,y) \
-( (sizeof(x) == sizeof(float)) \
- ? ((x)<(y)-( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), FLT_EPSILON))+1.)) ) ) )) \
- : ((x)<(y)-( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), DBL_EPSILON))+1.)) ) ) )) )
-
- #define ismore(x,y) \
-( (sizeof(x) == sizeof(float)) \
- ? ((x)>(y)+( max( 10.*FLT_EPSILON, FLT_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), FLT_EPSILON))+1.)) ) ) )) \
- : ((x)>(y)+( max( 10.*DBL_EPSILON, DBL_EPSILON*pow(10., ceil(log10(max(fabs(x),max(fabs(y), DBL_EPSILON))+1.)) ) ) )) )*/
// new definitions for these four macros (MUCH MUCH faster, by a factor of about 4)... just trying them out for now. The idea behind how these work is that both an absolute error and relative error check are being used in conjunction with one another. In this for now I'm using F_DELTA for the amount of absolute error allowed and FLT_EPSILON for the amount of relative error allowed.
#define GET_F_DELTA(x, y) ( (sizeof(x) == sizeof(float)) ? (max(F_DELTA, FLT_EPSILON * max(fabs(x), fabs(y)))) : (max(D_DELTA, DBL_EPSILON * max(fabs(x), fabs(y)))) )
-#define isless2(x, y) ((x) < ((y) - GET_F_DELTA(x, y)))
-#define ismore(x, y) ((x) > ((y) + GET_F_DELTA(x, y)))
-#define iszero(x) ( (sizeof(x) == sizeof(float)) ? (fabs(x) <= F_DELTA) : (fabs(x) <= D_DELTA) ) //for iszero(x) we just use an absolute error check, because a relative error check doesn't make sense for any number close enough to zero to be considered equal... it would be a waste of time.
-#define isequal(x, y) (fabs((x) - (y)) <= GET_F_DELTA(x, y))
-
-/* some simpler invocations */
-#define ZRO(x) iszero(x)
-#define EQ(x,y) isequal(x,y)
-#define LT(x,y) isless2(x,y)
-#define GT(x,y) ismore(x,y)
-#define LE(x,y) ((x) < (y) || EQ(x,y)) //changed from "(LT(x,y)||EQ(x,y))" because it evaluates to the same result (since EQ is already doing the checking for precision errors so use < instead of LT to avoid checking for precision errors twice) and this version is faster by avoiding the expensive LT() call.
+/**< LT tests whether x is less than y while accounting for floating-point arithmetic */
+#define LT(x, y) ((x) < ((y) - GET_F_DELTA(x, y)))
+/**< GT tests whether x is greater than y while accounting for floating-point arithmetic */
+#define GT(x, y) ((x) > ((y) + GET_F_DELTA(x, y)))
+/**< ZRO tests whether x is equal to zero while accounting for floating-point arithmetic */
+#define ZRO(x) ( (sizeof(x) == sizeof(float)) ? (fabs(x) <= F_DELTA) : (fabs(x) <= D_DELTA) ) //for iszero(x) we just use an absolute error check, because a relative error check doesn't make sense for any number close enough to zero to be considered equal... it would be a waste of time.
+/**< EQ tests whether x and y are equal while accounting for floating-point arithmetic */
+#define EQ(x, y) (fabs((x) - (y)) <= GET_F_DELTA(x, y))
+/**< LE tests whether x is less than or equal to y while accounting for floating-point arithmetic */
+#define LE(x,y) ((x) < (y) || EQ(x,y)) //changed from "(LT(x,y)||EQ(x,y))" because it evaluates to the same result (since EQ is already doing the checking for precision errors so use < instead of LT to avoid checking for precision errors twice) and this version is faster by avoiding the expensive LT() call.
+/**< LE tests whether x is greater than or equal to y while accounting for floating-point arithmetic */
#define GE(x,y) ((x) > (y) || EQ(x,y))
// 06/26/2013 (dlm) powe(): an alternate definition of pow(x, y) for x>0... this is faster (ca. 20%) then the one in math.h, but comes with a cost as the precision is slightly lower. The measured precision drop I was getting was at max a relative error of about 100 billion percent (12 places after the decimal point) per calculation though so I don't think it's a big deal... (though it's hard to even accurately tell)
#define powe(x, y) (exp((y) * log(x))) //x^y == exponential(y * ln(x)) or e^(y * ln(x)). NOTE: this will only work when x > 0 I believe
#define squared(x) powe(fabs(x), 2.0) // added for convenience
+
/***************************************************
* Function definitions
***************************************************/
From 4c756bd769ec09d875e8293bdac07054ab09c0b4 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Fri, 17 Nov 2017 15:03:33 -0500
Subject: [PATCH 14/34] Clean up warnings with C function registration for
rSOILWAT2
- variable 'CEntries' was not initialized properly because we don't
have a .C() call in rSOILWAT2
---
SW_R_init.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/SW_R_init.c b/SW_R_init.c
index 569cad04e..c80ced1f8 100644
--- a/SW_R_init.c
+++ b/SW_R_init.c
@@ -4,9 +4,6 @@
#include
/* .C calls */
-static const R_CallMethodDef CEntries[] = {
- {NULL, NULL, 0, NULL}
-};
/* .Call calls */
extern SEXP start(SEXP, SEXP, SEXP);
@@ -24,7 +21,7 @@ static const R_CallMethodDef CallEntries[] = {
/* Register package calls with R */
void R_init_rSOILWAT2(DllInfo *dll) {
- R_registerRoutines(dll, CEntries, CallEntries, NULL, NULL);
+ R_registerRoutines(dll, NULL, CallEntries, NULL, NULL);
R_useDynamicSymbols(dll, FALSE);
R_forceSymbols(dll, TRUE);
}
From cc16d0198cd5e2b2e978dd1b6bd74cbc9918e3a2 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Fri, 17 Nov 2017 22:46:39 -0500
Subject: [PATCH 15/34] Macro for printing
- addressing issue #33
- defined macro for printing so that we can write `swprintf(format,
...)` whether we are compiling with RSOILWAT flag or for standalone
SOILWAT2
---
generic.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/generic.h b/generic.h
index 9051daf45..9f9c6bc4f 100644
--- a/generic.h
+++ b/generic.h
@@ -90,6 +90,12 @@ typedef unsigned char byte;
/* --------------------------------------------------*/
/* These are facilities for logging errors. */
+#ifdef RSOILWAT
+ #define swprintf Rprintf
+#else
+ #define swprintf printf
+#endif
+
/* constants for LogError() mode */
#define LOGNOTE 0x01
#define LOGWARN 0x02
From 482817734acd5f7489a50b608fb392822b961b50 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 12:11:53 -0500
Subject: [PATCH 16/34] New function 'sw_error'
Prints an error message and throws an error or warning. Works both for
rSOILWAT2 and SOILWAT2-standalone.
-> eliminate all 'exit()' from code compiled for rSOILWAT2
-> addresses issues #33 and #30, as well as
https://github.com/Burke-Lauenroth-Lab/rSOILWAT2/issues/14
---
SW_Flow_lib.c | 9 ++-------
SW_Main_Function.c | 34 +++++-----------------------------
SW_Main_lib.c | 34 +++++-----------------------------
filefuncs.c | 39 +++++++++++++++++++++++++++++++++++++--
filefuncs.h | 2 ++
generic.c | 12 +++---------
generic.h | 2 ++
mymemory.c | 41 +++++++++++++++++------------------------
rands.c | 40 ++++++----------------------------------
9 files changed, 79 insertions(+), 134 deletions(-)
diff --git a/SW_Flow_lib.c b/SW_Flow_lib.c
index f1dc570a6..6ed9f391a 100644
--- a/SW_Flow_lib.c
+++ b/SW_Flow_lib.c
@@ -92,6 +92,7 @@
#include
#include "generic.h"
+#include "filefuncs.h"
#include "SW_Defines.h"
#include "SW_Flow_lib.h"
#include "SW_Flow_subs.h"
@@ -1868,12 +1869,6 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
}
if (toDebug) {
- #ifndef RSOILWAT
- exit(0); // terminates the program, make sure to take this out later
- #else
- Rprintf("\nEXIT DEBUG IS ON IN SOIL TEMPERATURE. CONSIDER TURNING OFF.\n");
- //exit(0); // terminates the program, make sure to take this out later
- error("@ SW_Flow_lib.c function soil_temperature");
- #endif
+ sw_error(0, "EXIT DEBUG IS ON IN SOIL TEMPERATURE. CONSIDER TURNING OFF.\n");
}
}
diff --git a/SW_Main_Function.c b/SW_Main_Function.c
index 85667dac5..e50be8115 100644
--- a/SW_Main_Function.c
+++ b/SW_Main_Function.c
@@ -86,15 +86,7 @@ static void usage(void) {
" a preceeding path applies to all input files\n"
" -e : echo initial values from site and estab to logfile\n"
" -q : quiet mode, don't print message to check logfile.\n";
-#ifndef RSOILWAT
- fprintf(stderr, "%s", s1);
- exit(0);
-#else
- Rprintf("%s", s1);
- Rprintf("EXIT 0");
- warning("");
- //exit(0);
-#endif
+ sw_error(0, "%s", s1);
}
char _firstfile[1024];
@@ -181,16 +173,8 @@ void init_args(int argc, char **argv) {
break; /* found it, move on */
}
if (op == nopts) {
-#ifndef RSOILWAT
- fprintf(stderr, "Invalid option %s\n", argv[a]);
- usage();
- exit(-1);
-#else
- Rprintf("Invalid option %s\n", argv[a]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
+ usage();
+ sw_error(-1, "Invalid option %s\n", argv[a]);
}
*str = '\0';
@@ -203,16 +187,8 @@ void init_args(int argc, char **argv) {
strcpy(str, argv[++a]);
} else if (0 < valopts[op]) { /* required opt-val not found */
-#ifndef RSOILWAT
- fprintf(stderr, "Incomplete option %s\n", opts[op]);
- usage();
- exit(-1);
-#else
- Rprintf("Incomplete option %s\n", opts[op]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
+ usage();
+ sw_error(-1, "Incomplete option %s\n", opts[op]);
} /* opt-val not required */
}
diff --git a/SW_Main_lib.c b/SW_Main_lib.c
index cc7ce9451..4612d41b8 100644
--- a/SW_Main_lib.c
+++ b/SW_Main_lib.c
@@ -67,15 +67,7 @@ static void usage(void) {
" a preceeding path applies to all input files\n"
" -e : echo initial values from site and estab to logfile\n"
" -q : quiet mode, don't print message to check logfile.\n";
-#ifndef RSOILWAT
- fprintf(stderr, "%s", s1);
- exit(0);
-#else
- Rprintf("%s", s1);
- Rprintf("EXIT 0");
- warning("");
- //exit(0);
-#endif
+ sw_error(0, "%s", s1);
}
char _firstfile[1024];
@@ -120,16 +112,8 @@ void init_args(int argc, char **argv) {
break; /* found it, move on */
}
if (op == nopts) {
-#ifndef RSOILWAT
- fprintf(stderr, "Invalid option %s\n", argv[a]);
- usage();
- exit(-1);
-#else
- Rprintf("Invalid option %s\n", argv[a]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
+ usage();
+ sw_error(-1, "Invalid option %s\n", argv[a]);
}
*str = '\0';
@@ -142,16 +126,8 @@ void init_args(int argc, char **argv) {
strcpy(str, argv[++a]);
} else if (0 < valopts[op]) { /* required opt-val not found */
-#ifndef RSOILWAT
- fprintf(stderr, "Incomplete option %s\n", opts[op]);
- usage();
- exit(-1);
-#else
- Rprintf("Incomplete option %s\n", opts[op]);
- usage();
- Rprintf("EXIT -1");
- error("options");
-#endif
+ usage();
+ sw_error(-1, "Incomplete option %s\n", opts[op]);
} /* opt-val not required */
}
diff --git a/filefuncs.c b/filefuncs.c
index 48395ec4d..40b079d96 100644
--- a/filefuncs.c
+++ b/filefuncs.c
@@ -1,5 +1,6 @@
#include
#include
+#include
#include
#include
#include
@@ -22,6 +23,41 @@
char **getfiles(const char *fspec, int *nfound);
+
+/**
+ * @brief Prints an error message and throws an error or warning. Works both for rSOILWAT2
+ * and SOILWAT2-standalone.
+ *
+ * @param code The error/warning code. If `code` is not 0, then it is passed to `exit`
+ * (SOILWAT2) / `error` (rSOILWAT2). If `code` is 0, then it is passed to
+ * `exit` (SOILWAT2) / `warning` (rSOILWAT2), respectively.
+ * @param format The character string with formatting (as for `printf`).
+ * @param ... Variables to be printed.
+ */
+void sw_error(int code, const char *format, ...)
+{
+ va_list(ap);
+ va_start(ap, format);
+#ifdef RSOILWAT
+ REvprintf(format, ap);
+#else
+ vfprintf(stderr, format, ap);
+#endif
+ va_end(ap);
+
+#ifdef RSOILWAT
+ if (code == 0) {
+ warning("Warning: %d\n", code);
+ } else {
+ error("exit %d\n", code);
+ }
+#else
+ exit(code);
+#endif
+}
+
+
+
/**************************************************************/
Bool GetALine(FILE *f, char buf[]) {
/* Read a line of possibly commented input from the file *f.
@@ -187,8 +223,7 @@ Bool MkDir(const char *dname) {
return FALSE;
if (NULL == (c = strdup(dname))) {
- fprintf(stderr, "Out of memory making string in MkDir()");
- exit(-1);
+ sw_error(-1, "Out of memory making string in MkDir()");
}
n = 0;
diff --git a/filefuncs.h b/filefuncs.h
index cdac0e726..0416f2b8c 100644
--- a/filefuncs.h
+++ b/filefuncs.h
@@ -29,6 +29,8 @@ Bool DirExists(const char *d);
Bool ChDir(const char *d);
Bool MkDir(const char *d);
Bool RemoveFiles(const char *fspec);
+void sw_error(int errorcode, const char *format, ...);
+
extern char inbuf[]; /* declare in main, use anywhere */
diff --git a/generic.c b/generic.c
index f707523d4..48ff6336d 100644
--- a/generic.c
+++ b/generic.c
@@ -30,6 +30,8 @@
extern int RlogIndex;
#endif
+
+
static void uncomment_cstyle(char *p) {
/*-------------------------------------------
overwrite chars in a string pointed to by p with
@@ -251,15 +253,7 @@ void LogError(FILE *fp, const int mode, const char *fmt, ...) {
va_end(args);
if (LOGEXIT & mode) {
-#ifndef RSOILWAT
- exit(-1);
-#else
- //strcpy(outfmt, "ERROR: ");
- //strcat(outfmt, fmt);
- //vsnprintf(message, 80 + strlen(fmt), outfmt, args);
- Rprintf("Exit.. %s",message);
- error("@ generic.c LogError");
-#endif
+ sw_error(-1, "@ generic.c LogError");
}
}
diff --git a/generic.h b/generic.h
index 9f9c6bc4f..d44c9ec13 100644
--- a/generic.h
+++ b/generic.h
@@ -90,12 +90,14 @@ typedef unsigned char byte;
/* --------------------------------------------------*/
/* These are facilities for logging errors. */
+/**< Print macro that can be used both for rSOILWAT2 and for SOILWAT2-standalone. Use instead of (R)printf */
#ifdef RSOILWAT
#define swprintf Rprintf
#else
#define swprintf printf
#endif
+
/* constants for LogError() mode */
#define LOGNOTE 0x01
#define LOGWARN 0x02
diff --git a/mymemory.c b/mymemory.c
index 1ac920949..1cb6507a8 100644
--- a/mymemory.c
+++ b/mymemory.c
@@ -103,20 +103,13 @@ void *Mem_Malloc(size_t size, const char *funcname) {
p = malloc(size);
#ifdef DEBUG_MEM_LOG
- if( NULL==(f=fopen("memory.log","a")) ) {
-#ifndef RSOILWAT
- fprintf(stderr, "Can't open memory.log for errors\n");
- exit(-1);
-#else
- Rprintf("Can't open memory.log for errors\n");
- error("mymemory.c NULL==(f=fopen(");
-#endif
- }
+ if( NULL==(f=fopen("memory.log","a")) ) {
+ sw_error(-1, "Can't open memory.log for errors\n");
+ }
+ swprintf("%s: %d: %p\n", funcname, size, p);
#ifndef RSOILWAT
fprintf(f,"%s: %d: %p\n", funcname, size, p);
- fclose(f);
-#else
- Rprintf("%s: %d: %p\n", funcname, size, p);
+ fclose(f);
#endif
#endif
@@ -192,12 +185,12 @@ void *Mem_ReAlloc(void *block, size_t sizeNew) {
#ifdef DEBUG_MEM
size_t sizeOld;
#endif
-
+
#ifndef RSOILWAT
assert(p != NULL && sizeNew > 0);
#else
if(p == NULL || sizeNew == 0)
- error("assert failed in ReAlloc");
+ error("assert failed in ReAlloc");
#endif
#ifdef DEBUG_MEM
@@ -282,9 +275,9 @@ void Mem_Set(void *block, byte c, size_t n) {
7/23/01 - added Macguire's code.
-------------------------------------------*/
-#ifdef DEBUG_MEM
+#ifdef DEBUG_MEM
#ifndef RSOILWAT
- assert(fValidPointer(block, n));
+ assert(fValidPointer(block, n));
#endif
#endif
@@ -301,14 +294,14 @@ void Mem_Copy(void *dest, const void *src, size_t n) {
-------------------------------------------*/
#ifdef DEBUG_MEM
- {
+ {
#ifndef RSOILWAT
assert(fValidPointer((byte *)dest, n));
assert(fValidPointer((byte *)src, n));
if (fPtrLess( ((byte *)src), (byte *)dest) )
assert(fPtrLess( ((byte *)src+n), (byte *)dest));
else
- assert(fPtrGrtr( ((byte *)src+1), (byte *)dest));
+ assert(fPtrGrtr( ((byte *)src+1), (byte *)dest));
#endif
}
#endif
@@ -483,7 +476,7 @@ void UpdateBlockInfo(byte *pbOld, byte *pbNew, size_t sizeNew) {
#ifndef RSOILWAT
assert(pbNew != NULL && sizeNew > 0);
#endif
- pbi = pbiGetBlockInfo(pbOld);
+ pbi = pbiGetBlockInfo(pbOld);
#ifndef RSOILWAT
assert(pbOld == pbi->pb);
#endif
@@ -503,7 +496,7 @@ size_t sizeofBlock(byte *pb) {
blockinfo *pbi;
- pbi = pbiGetBlockInfo(pb);
+ pbi = pbiGetBlockInfo(pb);
#ifndef RSOILWAT
assert(pb == pbi->pb);
#endif
@@ -567,9 +560,9 @@ void CheckMemoryRefs(void) {
* with the debug code that manages blockinfo or,
* possibly, that a wild memory store has trashed the
* data structure. Either way, it's a bug.
- */
+ */
#ifndef RSOILWAT
- assert(pbi->pb != NULL && pbi->size > 0);
+ assert(pbi->pb != NULL && pbi->size > 0);
#endif
/* printf("i=%d, size=%d, p=%p\n", ++i, pbi->size, pbi->pb); */
@@ -577,9 +570,9 @@ void CheckMemoryRefs(void) {
* fires, it means that the app has either lost track
* of this block or that not all global pointers have
* been accounted for with NoteMemoryRef.
- */
+ */
#ifndef RSOILWAT
- assert(pbi->fReferenced);
+ assert(pbi->fReferenced);
#endif
}
}
diff --git a/rands.c b/rands.c
index c4f952d47..3c49bcd20 100644
--- a/rands.c
+++ b/rands.c
@@ -7,6 +7,7 @@
#include "generic.h"
#include "rands.h"
#include "myMemory.h"
+#include "filefuncs.h"
long _randseed = 0L;
@@ -33,15 +34,7 @@ void RandSeed(signed long seed) {
if (seed == 0L) {
_randseed = ((long) time(NULL ));
if (_randseed == -1) {
-#ifndef RSOILWAT
- fprintf(stderr, "ERROR: RandSeed(0) called, "
- "but time() not available\n");
- exit(-1);
-#else
- Rprintf("ERROR: RandSeed(0) called, but time() not available\n");
- Rprintf("EXIT -1");
- error("@ RandSeed");
-#endif
+ sw_error(-1, "ERROR: RandSeed(0) called, but time() not available\n");
}
/* _randseed %= 0xffff; */
_randseed *= -1;
@@ -138,14 +131,7 @@ double RandUni_good(void) {
static long ix1, ix2, ix3;
if (_randseed == 0L) {
-#ifndef RSOILWAT
- fprintf(stderr, "RandUni() error: seed not set\n");
- exit(-1);
-#else
- Rprintf("RandUni() error: seed not set\n");
- Rprintf("EXIT -1");
- error("@ _randseed==0L");
-#endif
+ sw_error(-1, "RandUni() error: seed not set\n");
}
if (first_time || _randseed < 0) {
first_time = 0;
@@ -246,15 +232,7 @@ void RandUniList(long count, long first, long last, RandListType list[]) {
range = last - first + 1;
if (count > range || range <= 0) {
-#ifndef RSOILWAT
- fprintf(stderr, "Programmer error in RandUniList: "
- "count > range || range <= 0\n");
- exit(-1);
-#else
- Rprintf("Programmer error in RandUniList: "
- "count > range || range <= 0\n");
- Rprintf("EXIT -1 RandUniList");
-#endif
+ sw_error(-1, "Programmer error in RandUniList: count > range || range <= 0\n");
}
/* if count == range for some weird reason, just
@@ -392,18 +370,12 @@ float RandBeta ( float aa, float bb )
if ( aa <= 0.0 )
{
- fprintf ( stderr, "\n" );
- fprintf ( stderr, "GENBET - Fatal error!\n" );
- fprintf ( stderr, " AA <= 0.0\n" );
- exit ( 1 );
+ sw_error(1, "GENBET - Fatal error: AA <= 0.0\n");
}
if ( bb <= 0.0 )
{
- fprintf ( stderr, "\n" );
- fprintf ( stderr, "GENBET - Fatal error!\n" );
- fprintf ( stderr, " BB <= 0.0\n" );
- exit ( 1 );
+ sw_error(1, "GENBET - Fatal error: BB <= 0.0\n");
}
/*
Algorithm BB
From e1ca559e61a10e0d193bb440ac22ea386842725e Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 12:42:28 -0500
Subject: [PATCH 17/34] Use R's random number generators for rSOILWAT2 instead
C's
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- contribute to issue
https://github.com/Burke-Lauenroth-Lab/rSOILWAT2/issues/14
Eliminated R CMD check warnings:
"checking compiled code ... WARNING
Found ‘_rand’, possibly from ‘rand’ (C)
Found ‘_srand’, possibly from ‘srand’ (C)"
---
rands.c | 190 +++++++++++++++++++++++++++++++++-----------------------
1 file changed, 112 insertions(+), 78 deletions(-)
diff --git a/rands.c b/rands.c
index 3c49bcd20..5b0342c63 100644
--- a/rands.c
+++ b/rands.c
@@ -11,6 +11,11 @@
long _randseed = 0L;
+#ifdef RSOILWAT
+ #include // for the random number generators
+#endif
+
+
/*****************************************************/
/**
\fn void RandSeed(signed long seed)
@@ -42,9 +47,11 @@ void RandSeed(signed long seed) {
_randseed = abs(seed) * -1;
}
+#ifndef RSOILWAT
#if RAND_FAST
srand(abs(_randseed));
#endif
+#endif
}
@@ -72,23 +79,35 @@ void RandSeed(signed long seed) {
\return double. A value between 0 and 1.
*/
double RandUni_fast(void) {
- static short first_time = 1;
- static int bucket[BUCKETSIZE];
- static double y, rmax = RAND_MAX;
- int i, j;
-
- if (first_time) {
- first_time = 0;
- for (j = 0; j < BUCKETSIZE; j++)
- rand();
- for (j = 0; j < BUCKETSIZE; j++)
- bucket[j] = rand();
- y = rand() / rmax;
- }
- i = 1 + (int) ((double) BUCKETSIZE * y);
- i = max(BUCKETSIZE -1, min(i,0));
- y = bucket[i] / rmax;
- bucket[i] = rand();
+ static double y;
+
+ #ifdef RSOILWAT
+ GetRNGstate();
+ y = unif_rand();
+ PutRNGstate();
+
+ #else
+ static short first_time = 1;
+ static int bucket[BUCKETSIZE];
+ static double rmax = RAND_MAX;
+ int i, j;
+
+
+ if (first_time) {
+ first_time = 0;
+ for (j = 0; j < BUCKETSIZE; j++) {
+ rand();
+ }
+ for (j = 0; j < BUCKETSIZE; j++) {
+ bucket[j] = rand();
+ }
+ y = rand() / rmax;
+ }
+ i = 1 + (int) ((double) BUCKETSIZE * y);
+ i = max(BUCKETSIZE -1, min(i,0));
+ y = bucket[i] / rmax;
+ bucket[i] = rand();
+ #endif
return y;
}
@@ -118,50 +137,57 @@ double RandUni_fast(void) {
*/
double RandUni_good(void) {
-
-
- long i;
- static short first_time = 1;
- static double bucket[BUCKETSIZE], y;
- static const long im1 = 259200, ia1 = 7141, ic1 = 54773, im2 = 134456,
- ia2 = 8121, ic2 = 28411, im3 = 243000, ia3 = 4561, ic3 = 51349;
- static const double rm1 = 3.8580247e-6, /* 1/im1 */
- rm2 = 7.4373773e-6; /* 1/im2 */
-
- static long ix1, ix2, ix3;
-
- if (_randseed == 0L) {
- sw_error(-1, "RandUni() error: seed not set\n");
- }
- if (first_time || _randseed < 0) {
- first_time = 0;
- ix1 = abs(ic1 - abs(_randseed)) % im1;
- ix1 = (ia1 * ix1 + ic1) % im1;
- ix2 = ix1 % im2;
- ix2 = (ia2 * ix2 + ic2) % im2; /* looks like a typo in the book */
- ix3 = ix1 % im3;
- for (i = 0; i < BUCKETSIZE; i++) {
+ static double y;
+
+ #ifdef RSOILWAT
+ GetRNGstate();
+ y = unif_rand();
+ PutRNGstate();
+
+ #else
+ long i;
+ static short first_time = 1;
+ static double bucket[BUCKETSIZE], y;
+ static const long im1 = 259200, ia1 = 7141, ic1 = 54773, im2 = 134456,
+ ia2 = 8121, ic2 = 28411, im3 = 243000, ia3 = 4561, ic3 = 51349;
+ static const double rm1 = 3.8580247e-6, /* 1/im1 */
+ rm2 = 7.4373773e-6; /* 1/im2 */
+
+ static long ix1, ix2, ix3;
+
+ if (_randseed == 0L) {
+ sw_error(-1, "RandUni() error: seed not set\n");
+ }
+ if (first_time || _randseed < 0) {
+ first_time = 0;
+ ix1 = abs(ic1 - abs(_randseed)) % im1;
ix1 = (ia1 * ix1 + ic1) % im1;
- ix2 = (ia2 * ix2 + ic2) % im2;
- bucket[i] = ((double) ix1 + (double) ix2 * rm2) * rm1;
+ ix2 = ix1 % im2;
+ ix2 = (ia2 * ix2 + ic2) % im2; /* looks like a typo in the book */
+ ix3 = ix1 % im3;
+ for (i = 0; i < BUCKETSIZE; i++) {
+ ix1 = (ia1 * ix1 + ic1) % im1;
+ ix2 = (ia2 * ix2 + ic2) % im2;
+ bucket[i] = ((double) ix1 + (double) ix2 * rm2) * rm1;
+ }
+ _randseed = 1;
}
- _randseed = 1;
- }
- /* start here if not initializing, */
- /* and make the numbers happen */
- ix1 = (ia1 * ix1 + ic1) % im1;
- ix2 = (ia2 * ix2 + ic2) % im2;
- ix3 = (ia3 * ix3 + ic3) % im3;
+ /* start here if not initializing, */
+ /* and make the numbers happen */
+ ix1 = (ia1 * ix1 + ic1) % im1;
+ ix2 = (ia2 * ix2 + ic2) % im2;
+ ix3 = (ia3 * ix3 + ic3) % im3;
- /* get a random index into the bucket */
- i = 1 + (ix3 * BUCKETSIZE) / im3;
- i = max(BUCKETSIZE -1, min( i,0));
- /* i = (i > BUCKETSIZE -1 ) ? BUCKETSIZE -1 : i; */
+ /* get a random index into the bucket */
+ i = 1 + (ix3 * BUCKETSIZE) / im3;
+ i = max(BUCKETSIZE -1, min( i,0));
+ /* i = (i > BUCKETSIZE -1 ) ? BUCKETSIZE -1 : i; */
- /* snatch a random number and replace it */
- y = bucket[i];
- bucket[i] = ((double) ix1 + (double) ix2 * rm2) * rm1;
+ /* snatch a random number and replace it */
+ y = bucket[i];
+ bucket[i] = ((double) ix1 + (double) ix2 * rm2) * rm1;
+ #endif
return y;
}
@@ -193,8 +219,6 @@ double RandUni_good(void) {
*/
int RandUniRange(const long first, const long last) {
-
-
long f, l, r;
if (first == last)
@@ -210,7 +234,6 @@ int RandUniRange(const long first, const long last) {
r = l - f + 1;
return (long) (RandUni() * r) + f;
-
}
/*****************************************************/
@@ -301,26 +324,37 @@ double RandNorm(double mean, double stddev) {
gasdev and gset have to be static!
might as well set the others.
-------------------------------------------*/
- static short set = 0;
-
- static double v1, v2, r, fac, gset, gasdev;
-
- if (!set) {
- do {
- v1 = 2.0 * RandUni() - 1.0;
- v2 = 2.0 * RandUni() - 1.0;
- r = v1 * v1 + v2 * v2;
- } while (r >= 1.0);
- fac = sqrt(-2.0 *log(r)/r);
- gset = v1 * fac;
- gasdev = v2 * fac;
- set = 1;
- } else {
- gasdev = gset;
- set = 0;
- }
+ double y;
+
+ #ifdef RSOILWAT
+ GetRNGstate();
+ y = norm_rand();
+ PutRNGstate();
+
+ #else
+ static short set = 0;
+
+ static double v1, v2, r, fac, gset, gasdev;
+
+ if (!set) {
+ do {
+ v1 = 2.0 * RandUni() - 1.0;
+ v2 = 2.0 * RandUni() - 1.0;
+ r = v1 * v1 + v2 * v2;
+ } while (r >= 1.0);
+ fac = sqrt(-2.0 *log(r)/r);
+ gset = v1 * fac;
+ gasdev = v2 * fac;
+ set = 1;
+ } else {
+ gasdev = gset;
+ set = 0;
+ }
- return mean + gasdev * stddev;
+ y = mean + gasdev * stddev;
+ #endif
+
+ return y;
}
/**
From 4e0cc0eb8a402c70b0e4e531670d3192ba63f3bf Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 13:33:34 -0500
Subject: [PATCH 18/34] Updated 'LogError'
- close issue https://github.com/Burke-Lauenroth-Lab/rSOILWAT2/issues/14
- function 'LogError' under rSOILWAT2 prints with 'REprintf' and
ignores argument 'fp'
- all calls "LogError(stderr, ..." and "LogError(stdout, ..." replaced
with "LogError(logfp, ..." where logfp is set to NULL under rSOILWAT2
(because ignored)
---
SW_Files.c | 2 +-
SW_Main.c | 2 +-
SW_Main_Function.c | 4 ++--
SW_Main_lib.c | 2 +-
SW_Output.c | 14 ++++++------
SW_R_lib.c | 4 ++--
SW_Site.c | 2 +-
filefuncs.c | 19 ++++++++++-------
generic.c | 53 +++++++++++++---------------------------------
generic.h | 7 ++++++
mymemory.c | 8 +++----
rands.c | 2 +-
12 files changed, 53 insertions(+), 66 deletions(-)
diff --git a/SW_Files.c b/SW_Files.c
index b135cc7c2..c4b2c53a0 100644
--- a/SW_Files.c
+++ b/SW_Files.c
@@ -121,7 +121,7 @@ void SW_F_read(const char *s) {
if (fileno < eEndFile - 1) {
CloseFile(&f);
- LogError(stdout, LOGFATAL, "Too few files (%d) in %s", fileno, MyFileName);
+ LogError(logfp, LOGFATAL, "Too few files (%d) in %s", fileno, MyFileName);
}
CloseFile(&f);
diff --git a/SW_Main.c b/SW_Main.c
index b7fd18294..f02f2456e 100644
--- a/SW_Main.c
+++ b/SW_Main.c
@@ -50,7 +50,7 @@ static void check_log(void) {
*/
if (logfp != stdout && logfp != stderr) {
if (logged && !QuietMode)
- fprintf(stderr, "\nCheck logfile for error or status messages.\n");
+ sw_error(0, "\nCheck logfile for error or status messages.\n");
CloseFile(&logfp);
}
diff --git a/SW_Main_Function.c b/SW_Main_Function.c
index e50be8115..0874328cf 100644
--- a/SW_Main_Function.c
+++ b/SW_Main_Function.c
@@ -129,7 +129,7 @@ static void check_log(void) {
*/
if (logfp != stdout && logfp != stderr) {
if (logged && !QuietMode)
- fprintf(stderr, "\nCheck logfile for error or status messages.\n");
+ sw_error(0, "\nCheck logfile for error or status messages.\n");
CloseFile(&logfp);
}
@@ -197,7 +197,7 @@ void init_args(int argc, char **argv) {
switch (op) {
case 0: /* -d */
if (!ChDir(str)) {
- LogError(stderr, LOGFATAL, "Invalid project directory (%s)", str);
+ LogError(logfp, LOGFATAL, "Invalid project directory (%s)", str);
}
break;
case 1:
diff --git a/SW_Main_lib.c b/SW_Main_lib.c
index 4612d41b8..b625ef22e 100644
--- a/SW_Main_lib.c
+++ b/SW_Main_lib.c
@@ -136,7 +136,7 @@ void init_args(int argc, char **argv) {
switch (op) {
case 0: /* -d */
if (!ChDir(str)) {
- LogError(stderr, LOGFATAL, "Invalid project directory (%s)", str);
+ LogError(logfp, LOGFATAL, "Invalid project directory (%s)", str);
}
break;
case 1:
diff --git a/SW_Output.c b/SW_Output.c
index cc7facea7..56bcfd983 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -1097,7 +1097,7 @@ void SW_OUT_sum_today(ObjType otyp)
case eVES:
return; /* a stub; we don't do anything with ves until get_() */
default:
- LogError(stdout, LOGFATAL,
+ LogError(logfp, LOGFATAL,
"Invalid object type in SW_OUT_sum_today().");
}
@@ -1228,7 +1228,7 @@ void SW_OUT_write_today(void)
t = SW_Output[k].first; /* always output this period */
break;
default:
- LogError(stdout, LOGFATAL,
+ LogError(logfp, LOGFATAL,
"Invalid period in SW_OUT_write_today().");
}
if (!writeit || t < SW_Output[k].first || t > SW_Output[k].last)
@@ -3850,7 +3850,7 @@ static void sumof_wth(SW_WEATHER *v, SW_WEATHER_OUTPUTS *s, OutKey k)
s->surfaceRunoff += v->surfaceRunoff;
break;
default:
- LogError(stderr, LOGFATAL, "PGMR: Invalid key in sumof_wth(%s)", key2str[k]);
+ LogError(logfp, LOGFATAL, "PGMR: Invalid key in sumof_wth(%s)", key2str[k]);
}
}
@@ -3984,7 +3984,7 @@ static void sumof_swc(SW_SOILWAT *v, SW_SOILWAT_OUTPUTS *s, OutKey k)
break;
default:
- LogError(stderr, LOGFATAL, "PGMR: Invalid key in sumof_swc(%s)", key2str[k]);
+ LogError(logfp, LOGFATAL, "PGMR: Invalid key in sumof_swc(%s)", key2str[k]);
}
}
@@ -4008,7 +4008,7 @@ static void average_for(ObjType otyp, OutPeriod pd)
int j;
if (!(otyp == eSWC || otyp == eWTH))
- LogError(stdout, LOGFATAL, "Invalid object type in OUT_averagefor().");
+ LogError(logfp, LOGFATAL, "Invalid object type in OUT_averagefor().");
ForEachOutKey(k)
{
@@ -4049,7 +4049,7 @@ static void average_for(ObjType otyp, OutPeriod pd)
break;
default:
- LogError(stdout, LOGFATAL, "Programmer: Invalid period in average_for().");
+ LogError(logfp, LOGFATAL, "Programmer: Invalid period in average_for().");
} /* end switch(pd) */
if (SW_Output[k].period != pd || SW_Output[k].myobj != otyp
@@ -4239,7 +4239,7 @@ static void average_for(ObjType otyp, OutPeriod pd)
default:
- LogError(stderr, LOGFATAL, "PGMR: Invalid key in average_for(%s)", key2str[k]);
+ LogError(logfp, LOGFATAL, "PGMR: Invalid key in average_for(%s)", key2str[k]);
}
}
} /* end of for loop */
diff --git a/SW_R_lib.c b/SW_R_lib.c
index 3b0e21048..dbeb7656f 100644
--- a/SW_R_lib.c
+++ b/SW_R_lib.c
@@ -65,7 +65,7 @@ SEXP onGetInputDataFromFiles(SEXP inputOptions) {
char *ListNames[] = {"files.in", "years.in", "weathersetup.in", "prod.in", "site.in","estab.in","outsetup.in","swcsetup.in","LogFile"};
logged = FALSE;
- logfp = stdout;
+ logfp = NULL;
int argc = length(inputOptions);
char *argv[7];
collectInData = TRUE;
@@ -156,7 +156,7 @@ SEXP start(SEXP inputOptions, SEXP inputData, SEXP weatherList) {
SEXP oRlogfile;
logged = FALSE;
- logfp = stdout;
+ logfp = NULL;
int argc = length(inputOptions);
char *argv[7];
collectInData = FALSE;
diff --git a/SW_Site.c b/SW_Site.c
index b8ba0f7b1..f845a9457 100644
--- a/SW_Site.c
+++ b/SW_Site.c
@@ -116,7 +116,7 @@ void water_eqn(RealD fractionGravel, RealD sand, RealD clay, LyrIndex n) {
SW_Site.lyr[n]->bMatric = -0.3 * sand + 15.7 * clay + 3.10;
if (ZRO(SW_Site.lyr[n]->bMatric)) {
- LogError(stdout, LOGFATAL, "Value of beta in SW_SIT_read() = %f\n"
+ LogError(logfp, LOGFATAL, "Value of beta in SW_SIT_read() = %f\n"
"Possible division by zero. Exiting", SW_Site.lyr[n]->bMatric);
}
diff --git a/filefuncs.c b/filefuncs.c
index 40b079d96..e265b0ac7 100644
--- a/filefuncs.c
+++ b/filefuncs.c
@@ -30,7 +30,7 @@ char **getfiles(const char *fspec, int *nfound);
*
* @param code The error/warning code. If `code` is not 0, then it is passed to `exit`
* (SOILWAT2) / `error` (rSOILWAT2). If `code` is 0, then it is passed to
- * `exit` (SOILWAT2) / `warning` (rSOILWAT2), respectively.
+ * `warning` (rSOILWAT2), respectively.
* @param format The character string with formatting (as for `printf`).
* @param ... Variables to be printed.
*/
@@ -45,15 +45,18 @@ void sw_error(int code, const char *format, ...)
#endif
va_end(ap);
-#ifdef RSOILWAT
if (code == 0) {
- warning("Warning: %d\n", code);
+ #ifdef RSOILWAT
+ warning("Warning: %d\n", code);
+ #endif
+
} else {
- error("exit %d\n", code);
+ #ifdef RSOILWAT
+ error("exit %d\n", code);
+ #else
+ exit(code);
+ #endif
}
-#else
- exit(code);
-#endif
}
@@ -122,7 +125,7 @@ FILE * OpenFile(const char *name, const char *mode) {
fp = fopen(name, mode);
if (isnull(fp))
- LogError(stdout, LOGERROR | LOGEXIT, "Cannot open file %s: %s", name, strerror(errno));
+ LogError(logfp, LOGERROR | LOGEXIT, "Cannot open file %s: %s", name, strerror(errno));
return (fp);
}
diff --git a/generic.c b/generic.c
index 48ff6336d..ac1c3746b 100644
--- a/generic.c
+++ b/generic.c
@@ -199,13 +199,10 @@ void LogError(FILE *fp, const int mode, const char *fmt, ...) {
char outfmt[50 + strlen(fmt)]; /* to prepend err type str */
va_list args;
-#ifdef RSOILWAT
- char *message;
- message = R_alloc(strlen(fmt) + 121, sizeof(char));
-#endif
+ int check_eof;
va_start(args, fmt);
-#ifndef RSOILWAT
+
if (LOGNOTE & mode)
strcpy(outfmt, "NOTE: ");
else if (LOGWARN & mode)
@@ -216,46 +213,26 @@ void LogError(FILE *fp, const int mode, const char *fmt, ...) {
strcat(outfmt, fmt);
strcat(outfmt, "\n");
- if (EOF == vfprintf(fp, outfmt, args))
- fprintf(stderr, "SYSTEM: Cannot write to FILE *fp in LogError()\n");
- fflush(fp);
-#else
- if (RlogIndex == 150) {
- Rprintf("Error Log Full. Increase limit from %i", RlogIndex);
- } else {
- if ((LOGNOTE & mode) && logNote) {
- strcpy(outfmt, "NOTE: ");
- strcat(outfmt, fmt);
- strcat(outfmt, "\n");
- vsnprintf(message, 120 + strlen(fmt), outfmt, args);
- SET_STRING_ELT(Rlogfile, RlogIndex, mkChar(message));
- RlogIndex++;
- } else if ((LOGWARN & mode) && logWarn) {
- strcpy(outfmt, "WARNING: ");
- strcat(outfmt, fmt);
- strcat(outfmt, "\n");
- vsnprintf(message, 120 + strlen(fmt), outfmt, args);
- SET_STRING_ELT(Rlogfile, RlogIndex, mkChar(message));
- RlogIndex++;
- } else if ((LOGERROR & mode) && logFatl) {
- strcpy(outfmt, "ERROR: ");
- strcat(outfmt, fmt);
- strcat(outfmt, "\n");
- vsnprintf(message, 120 + strlen(fmt), outfmt, args);
- SET_STRING_ELT(Rlogfile, RlogIndex, mkChar(message));
- RlogIndex++;
- }
- }
-#endif
+ #ifdef RSOILWAT
+ check_eof = TRUE;
+ REvprintf(outfmt, args);
+ #else
+ check_eof = (EOF == vfprintf(fp, outfmt, args));
+ #endif
- logged = TRUE;
+ if (check_eof)
+ sw_error(0, "SYSTEM: Cannot write to FILE *fp in LogError()\n");
+
+ #ifndef RSOILWAT
+ fflush(fp);
+ #endif
+ logged = TRUE;
va_end(args);
if (LOGEXIT & mode) {
sw_error(-1, "@ generic.c LogError");
}
-
}
/**************************************************************/
diff --git a/generic.h b/generic.h
index d44c9ec13..80307d051 100644
--- a/generic.h
+++ b/generic.h
@@ -97,6 +97,13 @@ typedef unsigned char byte;
#define swprintf printf
#endif
+/**< Print file macro that can be used both for rSOILWAT2 and for SOILWAT2-standalone. Use instead of (R)fprintf */
+#ifdef RSOILWAT
+ #define swfprintf Rfprintf
+#else
+ #define swfprintf fprintf
+#endif
+
/* constants for LogError() mode */
#define LOGNOTE 0x01
diff --git a/mymemory.c b/mymemory.c
index 1cb6507a8..78c6753af 100644
--- a/mymemory.c
+++ b/mymemory.c
@@ -94,7 +94,7 @@ void *Mem_Malloc(size_t size, const char *funcname) {
#ifdef DEBUG_MEM
{
if (size == 0)
- LogError(stderr, LOGFATAL,"Programmer Error: "
+ LogError(logfp, LOGFATAL, "Programmer Error: "
"size == 0 in MallocErr()");
}
@@ -114,7 +114,7 @@ void *Mem_Malloc(size_t size, const char *funcname) {
#endif
if (p == NULL )
- LogError(stderr, LOGFATAL, "Out of memory in %s()", funcname);
+ LogError(logfp, LOGFATAL, "Out of memory in %s()", funcname);
#ifdef DEBUG_MEM
{
@@ -231,7 +231,7 @@ void *Mem_ReAlloc(void *block, size_t sizeNew) {
p = pNew;
} else
- LogError(stderr, LOGFATAL, "realloc failed in Mem_ReAlloc()");
+ LogError(logfp, LOGFATAL, "realloc failed in Mem_ReAlloc()");
return p;
}
@@ -248,7 +248,7 @@ void Mem_Free(void *block) {
#ifdef DEBUG_MEM_X
{
if (mem_SizeOf(block) > SizeOfMalloc)
- LogError(stderr, LOGFATAL,"Mem: Inconsistency in SizeOfMalloc");
+ LogError(logfp, LOGFATAL,"Mem: Inconsistency in SizeOfMalloc");
mem_DelNode(block);
}
diff --git a/rands.c b/rands.c
index 5b0342c63..938a55a53 100644
--- a/rands.c
+++ b/rands.c
@@ -147,7 +147,7 @@ double RandUni_good(void) {
#else
long i;
static short first_time = 1;
- static double bucket[BUCKETSIZE], y;
+ static double bucket[BUCKETSIZE];
static const long im1 = 259200, ia1 = 7141, ic1 = 54773, im2 = 134456,
ia2 = 8121, ic2 = 28411, im3 = 243000, ia3 = 4561, ic3 = 51349;
static const double rm1 = 3.8580247e-6, /* 1/im1 */
From 353fd98451ca2e8891233a8deae5063800692b80 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 16:01:34 -0500
Subject: [PATCH 19/34] Improved makefile
- defined CC, CFLAGS, CXX, CXXFLAGS, and LDIBS
- specified target architecture (as this was mentioned online that
different steps may target different architectures and that this may be
the problem underlying issue #82 -- but it didn't help)
- initialize global variable in main() of unit tests
- realized that linking with the libmath also works on macOS if done
correctly --> removed target 'binl'
---
.travis.yml | 2 +-
makefile | 32 ++++++++++++++++++--------------
test/sw_maintest.cc | 3 +++
3 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 935bdc413..421d13a26 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,6 +3,6 @@ compiler:
- clang
- gcc
script:
- - make binl
+ - make bin
- make test test_run
- make cleaner
diff --git a/makefile b/makefile
index 50661f23d..b7167f272 100644
--- a/makefile
+++ b/makefile
@@ -10,8 +10,6 @@
# make bin compile the binary executable using optimizations
# make bint same as 'make bin' plus moves a copy of the binary to the
# 'testing/' folder
-# make binl same as 'make bin', but for compiling on Linux (i.e., explicitly link
-# output against GCC's libmath library)
# make lib create SOILWAT2 library
# make test compile unit tests in 'test/ folder with googletest
# make test_run run unit tests (in a previous step compiled with 'make test')
@@ -21,6 +19,13 @@
# libraries, and the binary exe
#-----------------------------------------------------------------------------------
+uname_m = $(shell uname -m)
+
+CC = gcc
+CFLAGS = -O3 -Wall -Wextra -arch $(uname_m)
+CXX = g++
+CXXFLAGS = -Wall -Wextra -arch $(uname_m)
+LDLIBS = -lm
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
rands.c Times.c mymemory.c filefuncs.c \
@@ -47,6 +52,7 @@ GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
$(GTEST_DIR)/include/gtest/internal/*.h
+
all: $(SHLIB)
$(SHLIB) :
R CMD SHLIB -o $(SHLIB) $(Rpkg_objects)
@@ -56,20 +62,18 @@ $(SHLIB) :
.PHONY : lib bin bint binl
lib : $(lib_target)
-$(lib_target):
- gcc -O3 -Wall -Wextra -c $(sources)
+$(lib_target) :
+ $(CC) $(CFLAGS) -c $(sources)
ar -ruv $(lib_target) $(objects)
@rm -f $(objects)
-bin : $(lib_target)
- gcc -O3 -Wall -Wextra -o $(target) $(lib_target) $(bin_sources)
+bin : $(target)
-bint : $(lib_target)
- gcc -O3 -Wall -Wextra -o $(target) $(lib_target) $(bin_sources)
- cp $(target) testing/$(target)
+$(target) : $(lib_target)
+ $(CC) $(CFLAGS) -o $(target) $(lib_target) $(bin_sources) $(LDLIBS)
-binl :
- gcc -O3 -Wall -Wextra -o $(target) $(sources) $(bin_sources) -lm
+bint : $(target)
+ cp $(target) testing/$(target)
.PHONY : test_lib test test_run
@@ -79,13 +83,13 @@ binl :
lib_test : $(lib_gtest)
$(lib_gtest) :
- g++ -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
+ $(CXX) $(CXXFLAGS) -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
ar -rv $(lib_gtest) gtest-all.o
test : $(lib_gtest) $(lib_target)
- g++ -isystem ${GTEST_DIR}/include -pthread $(lib_gtest) $(lib_target) test/*.cc \
- -o $(bin_test)
+ $(CXX) $(CXXFLAGS) -isystem ${GTEST_DIR}/include -pthread \
+ $(lib_gtest) $(lib_target) test/*.cc -o $(bin_test) $(LDLIBS)
test_run :
./$(bin_test)
diff --git a/test/sw_maintest.cc b/test/sw_maintest.cc
index 6be312fbd..b48adc3bf 100644
--- a/test/sw_maintest.cc
+++ b/test/sw_maintest.cc
@@ -24,6 +24,9 @@ int logged; /* boolean: true = we logged a msg */
int main(int argc, char **argv) {
+ logged = FALSE;
+ logfp = stdout;
+
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
From 6db701f559b2a8e6544776887c12d7752bbc1dc6 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Fri, 17 Nov 2017 22:56:10 -0500
Subject: [PATCH 20/34] Clarify init function and define cleanly input
functions
- function 'SW_CTL_init_model' no longer calls '_read_inputs' so that
we can call it inside the function 'onGetInputDataFromFiles' for
initialization only
- renamed '_read_inputs' to 'SW_CTL_obtain_inputs'
- defined 'SW_CTL_read_inputs_from_disk'
---
SW_Control.c | 111 +++++++++++++++++++++++++++++----------------
SW_Control.h | 2 +
SW_Main.c | 1 +
SW_Main_Function.c | 1 +
SW_R_lib.c | 53 +++++-----------------
SW_R_lib.h | 3 ++
6 files changed, 91 insertions(+), 80 deletions(-)
diff --git a/SW_Control.c b/SW_Control.c
index 0ea3aacd2..dd33f8052 100644
--- a/SW_Control.c
+++ b/SW_Control.c
@@ -43,15 +43,18 @@
/* --------------------------------------------------- */
extern SW_MODEL SW_Model;
extern SW_VEGESTAB SW_VegEstab;
+extern SW_SITE SW_Site;
+extern SW_VEGPROD SW_VegProd;
#ifdef RSOILWAT
extern Bool useFiles;
extern SEXP InputData;
void SW_FLW_construct(void);
#endif
+
+
/* =================================================== */
/* Module-Level Declarations */
/* --------------------------------------------------- */
-static void _read_inputs(void);
static void _begin_year(void);
static void _begin_day(void);
static void _end_day(void);
@@ -69,7 +72,7 @@ void SW_CTL_main(void) {
for (*cur_yr = SW_Model.startyr; *cur_yr <= SW_Model.endyr; (*cur_yr)++) {
SW_CTL_run_current_year();
- }
+ }
#ifndef RSOILWAT
SW_OUT_close_files();
@@ -90,9 +93,6 @@ void SW_CTL_init_model(const char *firstfile) {
SW_OUT_construct();
SW_SWC_construct();
SW_FLW_construct();
-
- _read_inputs();
-
}
void SW_CTL_run_current_year(void) {
@@ -154,44 +154,77 @@ static void _collect_values(void) {
}
-static void _read_inputs(void) {
+void SW_CTL_read_inputs_from_disk(void) {
+ int debug = 0;
+
+ if (debug) swprintf("'SW_CTL_read_inputs_from_disk': Read input from disk:");
+ SW_F_read(NULL);
+ if (debug) swprintf(" 'files'");
+
+ SW_MDL_read();
+ if (debug) swprintf(" > 'model'");
+
+ SW_WTH_read();
+ if (debug) swprintf(" > 'weather'");
+
+ SW_VPD_read();
+ if (debug) swprintf(" > 'veg'");
+
+ SW_SIT_read();
+ if (debug) swprintf(" > 'site'");
+
+ SW_VES_read();
+ if (debug) swprintf(" > 'establishment'");
+
+ SW_OUT_read();
+ if (debug) swprintf(" > 'ouput'");
+
+ SW_SWC_read();
+ if (debug) swprintf(" > 'swc'");
+ if (debug) swprintf(" completed.\n");
+}
+
+
+void SW_CTL_obtain_inputs(void) {
/*=======================================================*/
+ int debug = 0;
+
#ifndef RSOILWAT
- SW_F_read(NULL );
- SW_MDL_read();
- SW_WTH_read();
- SW_VPD_read();
- SW_SIT_read();
- SW_VES_read();
- SW_OUT_read();
- SW_SWC_read();
+ SW_CTL_read_inputs_from_disk();
+
#else
- if (useFiles) { //Read in the data and set it
- SW_F_read(NULL );
- SW_MDL_read();
- SW_WTH_read();
- SW_VPD_read();
- SW_SIT_read();
- SW_VES_read();
- SW_OUT_read();
- SW_SWC_read();
+ if (useFiles) {
+ SW_CTL_read_inputs_from_disk();
+
} else { //Use R data to set the data
- onSet_SW_F(GET_SLOT(InputData,install("files")));
- //Rprintf("swFiles\n");
- onSet_SW_MDL(GET_SLOT(InputData,install("years")));
- //Rprintf("swYears\n");
- onSet_SW_WTH(GET_SLOT(InputData,install("weather")));
- //Rprintf("swWeather\n");
- onSet_SW_VPD(GET_SLOT(InputData,install("prod")));
- //Rprintf("swProd\n");
- onSet_SW_SIT(GET_SLOT(InputData,install("site")));
- //Rprintf("swSite\n");
- onSet_SW_VES(GET_SLOT(InputData,install("estab")));
- //Rprintf("swEstab\n");
- onSet_SW_OUT(GET_SLOT(InputData,install("output")));
- //Rprintf("swOutput\n");
- onSet_SW_SWC(GET_SLOT(InputData,install("swc")));
- //Rprintf("swSWC\n");
+ if (debug) swprintf("'SW_CTL_obtain_inputs': Copy input from 'InputData':");
+
+ onSet_SW_F(GET_SLOT(InputData, install("files")));
+ if (debug) swprintf(" 'files'");
+
+ onSet_SW_MDL(GET_SLOT(InputData, install("years")));
+ if (debug) swprintf(" > 'model'");
+
+ onSet_SW_WTH(GET_SLOT(InputData, install("weather")));
+ if (debug) swprintf(" > 'weather'");
+
+ onSet_SW_VPD(GET_SLOT(InputData, install("prod")));
+ if (debug) swprintf(" > 'veg'");
+
+ onSet_SW_SIT(GET_SLOT(InputData, install("site")));
+ if (debug) swprintf(" > 'site'");
+
+ onSet_SW_VES(GET_SLOT(InputData, install("estab")));
+ if (debug) swprintf(" > 'establishment'");
+
+ onSet_SW_OUT(GET_SLOT(InputData, install("output")));
+ if (debug) swprintf(" > 'ouput'");
+
+
+
+ onSet_SW_SWC(GET_SLOT(InputData, install("swc")));
+ if (debug) swprintf(" > 'swc'");
+ if (debug) swprintf(" completed.\n");
}
#endif
}
diff --git a/SW_Control.h b/SW_Control.h
index 168047dc1..68903c05d 100644
--- a/SW_Control.h
+++ b/SW_Control.h
@@ -19,6 +19,8 @@
#define SW_CONTROL_H
void SW_CTL_init_model(const char *firstfile);
+void SW_CTL_obtain_inputs(void);
+void SW_CTL_read_inputs_from_disk(void);
void SW_CTL_main(void); /* main controlling loop for SOILWAT */
void SW_CTL_run_current_year(void);
diff --git a/SW_Main.c b/SW_Main.c
index f02f2456e..a6580316b 100644
--- a/SW_Main.c
+++ b/SW_Main.c
@@ -69,6 +69,7 @@ int main(int argc, char **argv) {
init_args(argc, argv);
SW_CTL_init_model(_firstfile);
+ SW_CTL_obtain_inputs();
SW_CTL_main();
SW_SIT_clear_layers();
diff --git a/SW_Main_Function.c b/SW_Main_Function.c
index 0874328cf..493e17cb5 100644
--- a/SW_Main_Function.c
+++ b/SW_Main_Function.c
@@ -107,6 +107,7 @@ void main_function(int argc, char **argv) {
printf("inside soilwat main: init_args successful \n" );
SW_CTL_init_model(_firstfile);
+ SW_CTL_obtain_inputs();
printf("inside soilwat main: SW_CTL_init_model successful _firstfile=%s \n",_firstfile );
SW_CTL_main();
diff --git a/SW_R_lib.c b/SW_R_lib.c
index dbeb7656f..db2ef5e7f 100644
--- a/SW_R_lib.c
+++ b/SW_R_lib.c
@@ -9,6 +9,7 @@
#include "SW_R_lib.h"
#include "SW_Files.h"
+#include "generic.h"
/* =================================================== */
/* Global Declarations */
@@ -57,7 +58,7 @@ static int periodUse[28][4];
void SW_FLW_construct(void);
SEXP onGetInputDataFromFiles(SEXP inputOptions) {
- int i;
+ int i, debug = 0;
SEXP swInputData;
SEXP SW_DataList;
SEXP swLog;
@@ -69,6 +70,7 @@ SEXP onGetInputDataFromFiles(SEXP inputOptions) {
int argc = length(inputOptions);
char *argv[7];
collectInData = TRUE;
+ if (debug) swprintf("Set args\n");
PROTECT(inputOptions = AS_CHARACTER(inputOptions));
for (i = 0; i < argc; i++) {
argv[i] = R_alloc(strlen(CHAR(STRING_ELT(inputOptions, i))), sizeof(char));
@@ -76,66 +78,34 @@ SEXP onGetInputDataFromFiles(SEXP inputOptions) {
for (i = 0; i < argc; i++) {
strcpy(argv[i], CHAR(STRING_ELT(inputOptions, i)));
}
- //Rprintf("set Args\n");
+
+ if (debug) swprintf("Set log\n");
PROTECT(swLog = MAKE_CLASS("swLog"));
PROTECT(oRlogfile = NEW_OBJECT(swLog));
PROTECT(Rlogfile = GET_SLOT(oRlogfile,install("LogData")));
- //Rprintf("swLog\n");
+
+ if (debug) swprintf("Construct variables\n");
init_args(argc, argv);
- SW_F_construct(_firstfile);
- SW_MDL_construct();
- SW_WTH_construct();
- SW_SIT_construct();
- SW_VES_construct();
- SW_VPD_construct();
- SW_OUT_construct();
- SW_SWC_construct();
- SW_FLW_construct();
- //Rprintf("Construct\n");
- SW_F_read(NULL);
- //Rprintf("FilesRead\n");
- SW_MDL_read();
- //Rprintf("mdlRead\n");
- SW_WTH_read();
- //Rprintf("wthRead\n");
- SW_VPD_read();
- //Rprintf("vpdRead\n");
- SW_SIT_read();
- //Rprintf("sitRead\n");
- SW_VES_read();
- //Rprintf("vesRead\n");
- SW_OUT_read();
- //Rprintf("outRead\n");
- SW_SWC_read();
- //Rprintf("Read\n");
+ SW_CTL_init_model(_firstfile);
+ SW_CTL_read_inputs_from_disk();
+ if (debug) swprintf("Copy data to classes\n");
PROTECT(swInputData = MAKE_CLASS("swInputData"));
PROTECT(SW_DataList = NEW_OBJECT(swInputData));
SET_SLOT(SW_DataList, install("files"), onGet_SW_F());
- //Rprintf("swFiles\n");
SET_SLOT(SW_DataList, install("years"), onGet_SW_MDL());
- //Rprintf("swYears\n");
SET_SLOT(SW_DataList, install("weather"), onGet_SW_WTH());
- //Rprintf("swWeather\n");
SET_SLOT(SW_DataList, install("cloud"), onGet_SW_SKY());
- //Rprintf("swSky\n");
SET_SLOT(SW_DataList, install("weatherHistory"), onGet_WTH_DATA());
- //Rprintf("swWeatherHistory\n");
if (LOGICAL(GET_SLOT(GET_SLOT(SW_DataList, install("weather")), install("use_Markov")))[0]) {
SET_SLOT(SW_DataList, install("markov"), onGet_MKV());
- //Rprintf("swMarkov\n");
}
SET_SLOT(SW_DataList,install("prod"),onGet_SW_VPD());
- //Rprintf("swProd\n");
SET_SLOT(SW_DataList,install("site"),onGet_SW_SIT());
- //Rprintf("swSite\n");
SET_SLOT(SW_DataList,install("soils"),onGet_SW_LYR());
- //Rprintf("swSoils\n");
SET_SLOT(SW_DataList,install("estab"),onGet_SW_VES());
- //Rprintf("swEstab\n");
+
SET_SLOT(SW_DataList,install("output"), onGet_SW_OUT());
- //Rprintf("swOUT\n");
SET_SLOT(SW_DataList,install("swc"),onGet_SW_SWC());
- //Rprintf("swSWC\n");
SET_SLOT(SW_DataList,install("log"),oRlogfile);
SW_SIT_clear_layers();
@@ -190,6 +160,7 @@ SEXP start(SEXP inputOptions, SEXP inputData, SEXP weatherList) {
//Set the input data either from files or from memory
init_args(argc, argv);
SW_CTL_init_model(_firstfile);
+ SW_CTL_obtain_inputs();
PROTECT(outputData = onGetOutput(inputData));
diff --git a/SW_R_lib.h b/SW_R_lib.h
index 4f8fa0dba..825a3f96c 100644
--- a/SW_R_lib.h
+++ b/SW_R_lib.h
@@ -30,6 +30,9 @@ void usage(void);
void init_args(int argc, char **argv);
void SW_CTL_main(void);
void SW_CTL_init_model(const char *firstfile);
+void SW_CTL_obtain_inputs(void);
+void SW_CTL_read_inputs_from_disk(void);
+
SEXP onGetInputDataFromFiles(SEXP input);
SEXP start(SEXP inputOptions, SEXP inputData, SEXP weatherList);
From ba3d2833599ddae7ac2f1742cdc032d9b809c066 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 16:36:51 -0500
Subject: [PATCH 21/34] Converted all Rprintf and printf to 'swprintf'
- close #33
---
SW_Control.c | 3 +-
SW_Flow_lib.c | 204 ++++++++++------------------------
SW_Main_Function.c | 12 +-
SW_Output.c | 54 ++++-----
SW_R_lib.c | 267 ++++++++++++++++++++++-----------------------
SW_Site.c | 17 +--
mymemory.c | 2 +-
7 files changed, 235 insertions(+), 324 deletions(-)
diff --git a/SW_Control.c b/SW_Control.c
index dd33f8052..8e62679a1 100644
--- a/SW_Control.c
+++ b/SW_Control.c
@@ -187,7 +187,6 @@ void SW_CTL_read_inputs_from_disk(void) {
void SW_CTL_obtain_inputs(void) {
/*=======================================================*/
- int debug = 0;
#ifndef RSOILWAT
SW_CTL_read_inputs_from_disk();
@@ -197,6 +196,8 @@ void SW_CTL_obtain_inputs(void) {
SW_CTL_read_inputs_from_disk();
} else { //Use R data to set the data
+ int debug = 0;
+
if (debug) swprintf("'SW_CTL_obtain_inputs': Copy input from 'InputData':");
onSet_SW_F(GET_SLOT(InputData, install("files")));
diff --git a/SW_Flow_lib.c b/SW_Flow_lib.c
index 6ed9f391a..dbd1adabc 100644
--- a/SW_Flow_lib.c
+++ b/SW_Flow_lib.c
@@ -1225,12 +1225,7 @@ void lyrTemp_to_lyrSoil_temperature(double cor[MAX_ST_RGR + 1][MAX_LAYERS + 1],
sTemp[j] = sTemp[j] / n;
if (toDebug)
- #ifndef RSOILWAT
- printf("\nConf T : i=%i, j=%i, n=%i, sTemp[%i]=%2.2f, acc=%2.2f", i, j, n, j, sTemp[j], acc);
- #else
- Rprintf("\nConf T : i=%i, j=%i, n=%i, sTemp[%i]=%2.2f, acc=%2.2f", i, j, n, j, sTemp[j], acc);
- #endif
-
+ swprintf("\nConf T : i=%i, j=%i, n=%i, sTemp[%i]=%2.2f, acc=%2.2f", i, j, n, j, sTemp[j], acc);
}
}
@@ -1259,22 +1254,12 @@ void lyrSoil_to_lyrTemp_temperature(unsigned int nlyrSoil, double depth_Soil[],
sTempR[i + 1] = interpolation(depth_Soil2[j1], depth_Soil2[j2], sTemp2[j1], sTemp2[j2], depth_Temp[i]);
if (toDebug)
- #ifndef RSOILWAT
- printf("\nConf T: i=%i, j1=%i, j2=%i, sTempR[%i]=%2.2f, sTemp2[%i]=%2.2f, sTemp2[%i]=%2.2f, depthT[%i]=%2.2f, depthS2[%i]=%2.2f, depthS2[%i]=%2.2f", i, j1, j2, i, sTempR[i], j1, sTemp2[j1], j2, sTemp2[j2], i, depth_Temp[i], j1, depth_Soil2[j1], j2, depth_Soil2[j2]);
- #else
- Rprintf("\nConf T: i=%i, j1=%i, j2=%i, sTempR[%i]=%2.2f, sTemp2[%i]=%2.2f, sTemp2[%i]=%2.2f, depthT[%i]=%2.2f, depthS2[%i]=%2.2f, depthS2[%i]=%2.2f", i, j1, j2, i, sTempR[i], j1, sTemp2[j1], j2, sTemp2[j2], i, depth_Temp[i], j1, depth_Soil2[j1], j2, depth_Soil2[j2]);
- #endif
-
+ swprintf("\nConf T: i=%i, j1=%i, j2=%i, sTempR[%i]=%2.2f, sTemp2[%i]=%2.2f, sTemp2[%i]=%2.2f, depthT[%i]=%2.2f, depthS2[%i]=%2.2f, depthS2[%i]=%2.2f", i, j1, j2, i, sTempR[i], j1, sTemp2[j1], j2, sTemp2[j2], i, depth_Temp[i], j1, depth_Soil2[j1], j2, depth_Soil2[j2]);
}
sTempR[nlyrTemp + 1] = endTemp;
if (toDebug)
- #ifndef RSOILWAT
- printf("\nConf T: sTempR[%i]=%2.2f, sTempR[%i]=%2.2f", i, sTempR[i], i+1, sTempR[i+1]);
- #else
- Rprintf("\nConf T: sTempR[%i]=%2.2f, sTempR[%i]=%2.2f", i, sTempR[i], i+1, sTempR[i+1]);
- #endif
-
+ swprintf("\nConf T: sTempR[%i]=%2.2f, sTempR[%i]=%2.2f", i, sTempR[i], i+1, sTempR[i+1]);
}
void lyrSoil_to_lyrTemp(double cor[MAX_ST_RGR + 1][MAX_LAYERS + 1], unsigned int nlyrSoil, double width_Soil[], double var[], unsigned int nlyrTemp, double width_Temp, double res[]){
@@ -1303,12 +1288,7 @@ void lyrSoil_to_lyrTemp(double cor[MAX_ST_RGR + 1][MAX_LAYERS + 1], unsigned int
res[i] = res[i] / sum;
if (toDebug)
- #ifndef RSOILWAT
- printf("\nConf A: acc=%2.2f, sum=%2.2f, res[%i]=%2.2f, var[%i]=%2.2f, [%i]=%2.2f, cor[%i][%i]=%2.2f, width_Soil[%i]=%2.2f, [%i]=%2.2f", acc, sum, i, res[i], j, var[j], j-1, var[j-1], i, j, cor[i][j], j, width_Soil[j], j-1, width_Soil[j-1]);
- #else
- Rprintf("\nConf A: acc=%2.2f, sum=%2.2f, res[%i]=%2.2f, var[%i]=%2.2f, [%i]=%2.2f, cor[%i][%i]=%2.2f, width_Soil[%i]=%2.2f, [%i]=%2.2f", acc, sum, i, res[i], j, var[j], j-1, var[j-1], i, j, cor[i][j], j, width_Soil[j], j-1, width_Soil[j-1]);
- #endif
-
+ swprintf("\nConf A: acc=%2.2f, sum=%2.2f, res[%i]=%2.2f, var[%i]=%2.2f, [%i]=%2.2f, cor[%i][%i]=%2.2f, width_Soil[%i]=%2.2f, [%i]=%2.2f", acc, sum, i, res[i], j, var[j], j-1, var[j-1], i, j, cor[i][j], j, width_Soil[j], j-1, width_Soil[j-1]);
}
}
@@ -1351,11 +1331,7 @@ void soil_temperature_init(double bDensity[], double width[], double surfaceTemp
if (toDebug)
- #ifndef RSOILWAT
- printf("\nInit soil layer profile: nlyrs=%i, surfaceTemp=%2.2f, meanAirTemp=%2.2F;\nSoil temperature profile: deltaX=%F, theMaxDepth=%F, nRgr=%i\n", nlyrs, surfaceTemp, meanAirTemp, deltaX, theMaxDepth, nRgr);
- #else
- Rprintf("\nInit soil layer profile: nlyrs=%i, surfaceTemp=%2.2f, meanAirTemp=%2.2F;\nSoil temperature profile: deltaX=%F, theMaxDepth=%F, nRgr=%i\n", nlyrs, surfaceTemp, meanAirTemp, deltaX, theMaxDepth, nRgr);
- #endif
+ swprintf("\nInit soil layer profile: nlyrs=%i, surfaceTemp=%2.2f, meanAirTemp=%2.2F;\nSoil temperature profile: deltaX=%F, theMaxDepth=%F, nRgr=%i\n", nlyrs, surfaceTemp, meanAirTemp, deltaX, theMaxDepth, nRgr);
// init st
@@ -1385,11 +1361,7 @@ void soil_temperature_init(double bDensity[], double width[], double surfaceTemp
if (LT(theMaxDepth, st->depths[nlyrs - 1])) {
if (!soil_temp_error) { // if the error hasn't been reported yet... print an error to the stderr and one to the logfile
- #ifndef RSOILWAT
- printf("\nSOIL_TEMP FUNCTION ERROR: soil temperature max depth (%5.2f cm) must be more than soil layer depth (%5.2f cm)... soil temperature will NOT be calculated\n", theMaxDepth, st->depths[nlyrs - 1]);
- #else
- Rprintf("\nSOIL_TEMP FUNCTION ERROR: soil temperature max depth (%5.2f cm) must be more than soil layer depth (%5.2f cm)... soil temperature will NOT be calculated\n", theMaxDepth, st->depths[nlyrs - 1]);
- #endif
+ swprintf("\nSOIL_TEMP FUNCTION ERROR: soil temperature max depth (%5.2f cm) must be more than soil layer depth (%5.2f cm)... soil temperature will NOT be calculated\n", theMaxDepth, st->depths[nlyrs - 1]);
soil_temp_error = 1;
}
@@ -1435,18 +1407,9 @@ void soil_temperature_init(double bDensity[], double width[], double surfaceTemp
if (toDebug) {
for (i = 0; i < nRgr + 1; i++) {
- #ifndef RSOILWAT
- printf("\ntl_by_sl");
- for (j = 0; j < nlyrs + 1; j++)
- printf("[%i,%i]=%3.2f ", i, j, st->tlyrs_by_slyrs[i][j]);
-
- #else
- Rprintf("\ntl_by_sl");
- for (j = 0; j < nlyrs + 1; j++)
- Rprintf("[%i,%i]=%3.2f ", i, j, st->tlyrs_by_slyrs[i][j]);
- #endif
-
-
+ swprintf("\ntl_by_sl");
+ for (j = 0; j < nlyrs + 1; j++)
+ swprintf("[%i,%i]=%3.2f ", i, j, st->tlyrs_by_slyrs[i][j]);
}
}
@@ -1463,30 +1426,18 @@ void soil_temperature_init(double bDensity[], double width[], double surfaceTemp
// st->oldsTempR: index 0 is surface temperature
if (toDebug){
+ for (j = 0; j < nlyrs; j++) {
+ swprintf("\nConv Soil depth[%i]=%2.2f, fc=%2.2f, wp=%2.2f, bDens=%2.2f, oldT=%2.2f",
+ j, st->depths[j], fc[j], wp[j], bDensity[j], oldsTemp[j]);
+ }
- #ifndef RSOILWAT
- for (j = 0; j < nlyrs; j++)
- printf("\nConv Soil depth[%i]=%2.2f, fc=%2.2f, wp=%2.2f, bDens=%2.2f, oldT=%2.2f",
- j, st->depths[j], fc[j], wp[j], bDensity[j], oldsTemp[j]);
- printf("\nConv ST oldSurfaceTR=%2.2f", st->oldsTempR[0]);
- for (i = 0; i < nRgr + 1; i++)
- printf("\nConv ST depth[%i]=%2.2f, fcR=%2.2f, wpR=%2.2f, bDensR=%2.2f, oldTR=%2.2f",
- i, st->depthsR[i], st->fcR[i], st->wpR[i], st->bDensityR[i], st->oldsTempR[i+1]);
-
-
- #else
- for (j = 0; j < nlyrs; j++)
- Rprintf("\nConv Soil depth[%i]=%2.2f, fc=%2.2f, wp=%2.2f, bDens=%2.2f, oldT=%2.2f",
- j, st->depths[j], fc[j], wp[j], bDensity[j], oldsTemp[j]);
- Rprintf("\nConv ST oldSurfaceTR=%2.2f", st->oldsTempR[0]);
- for (i = 0; i < nRgr + 1; i++)
- Rprintf("\nConv ST depth[%i]=%2.2f, fcR=%2.2f, wpR=%2.2f, bDensR=%2.2f, oldTR=%2.2f",
- i, st->depthsR[i], st->fcR[i], st->wpR[i], st->bDensityR[i], st->oldsTempR[i+1]);
-
- #endif
-
+ swprintf("\nConv ST oldSurfaceTR=%2.2f", st->oldsTempR[0]);
+ for (i = 0; i < nRgr + 1; i++) {
+ swprintf("\nConv ST depth[%i]=%2.2f, fcR=%2.2f, wpR=%2.2f, bDensR=%2.2f, oldTR=%2.2f",
+ i, st->depthsR[i], st->fcR[i], st->wpR[i], st->bDensityR[i], st->oldsTempR[i+1]);
}
+ }
}
void set_frozen_unfrozen(unsigned int nlyrs, double sTemp[], double swc[], double swc_sat[], double width[]){
@@ -1686,22 +1637,14 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
depths[nlyrs] - the depths of each layer of soil, calculated in the function
vwcR[], sTempR[] - anything with a R at the end of the variable name stands for the interpolation of that array
*/
- if (toDebug){
- #ifndef RSOILWAT
- printf("\n\nNew call to soil_temperature()");
- #else
- Rprintf("\n\nNew call to soil_temperature()");
- #endif
+ if (toDebug) {
+ swprintf("\n\nNew call to soil_temperature()");
}
if (!soil_temp_init) {
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nCalling soil_temperature_init\n");
- #else
- Rprintf("\nCalling soil_temperature_init\n");
- #endif
+ swprintf("\nCalling soil_temperature_init\n");
}
surfaceTemp[Today] = airTemp;
@@ -1718,27 +1661,20 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
// calculating T1, the average daily soil surface temperature
if(GT(snowdepth, 0.0)) {
T1 = surface_temperature_under_snow(airTemp, snow);
- if(toDebug) printf("\nThere is snow on the ground, T1=%5.4f calculated using new equation from Parton 1998\n", T1);
+ if (toDebug) swprintf("\nThere is snow on the ground, T1=%5.4f calculated using new equation from Parton 1998\n", T1);
+
} else {
if (LE(biomass, bmLimiter)) { // bmLimiter = 300
T1 = airTemp + (t1Param1 * pet * (1. - (aet / pet)) * (1. - (biomass / bmLimiter))); // t1Param1 = 15; drs (Dec 16, 2014): this interpretation of Parton 1978's 2.20 equation (the printed version misses a closing parenthesis) removes a jump of T1 for biomass = bmLimiter
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nT1 = %5.4f = %5.4f + (%5.4f * %5.4f * (1 - (%5.4f / %5.4f)) * (1 - (%5.4f / %5.4f)) ) )",
- airTemp, T1, t1Param1, pet, aet, pet, biomass, bmLimiter);
- #else
- Rprintf("\nT1 = %5.4f = %5.4f + (%5.4f * %5.4f * (1 - (%5.4f / %5.4f)) * (1 - (%5.4f / %5.4f)) ) )",
- airTemp, T1, t1Param1, pet, aet, pet, biomass, bmLimiter);
- #endif
+ swprintf("\nT1 = %5.4f = %5.4f + (%5.4f * %5.4f * (1 - (%5.4f / %5.4f)) * (1 - (%5.4f / %5.4f)) ) )",
+ airTemp, T1, t1Param1, pet, aet, pet, biomass, bmLimiter);
}
} else {
T1 = airTemp + ((t1Param2 * (biomass - bmLimiter)) / t1Param3); // t1Param2 = -4, t1Param3 = 600; math is correct
if (toDebug){
- #ifndef RSOILWAT
- printf("\nT1 = %5.4f = %5.4f + ((%5.4f * (%5.4f - %5.4f)) / %5.4f)", airTemp, T1, t1Param2, biomass, bmLimiter, t1Param3);
- #else
- Rprintf("\nT1 = %5.4f = %5.4f + ((%5.4f * (%5.4f - %5.4f)) / %5.4f)", airTemp, T1, t1Param2, biomass, bmLimiter, t1Param3);
- #endif
+ swprintf("\nT1 = %5.4f = %5.4f + ((%5.4f * (%5.4f - %5.4f)) / %5.4f)",
+ airTemp, T1, t1Param2, biomass, bmLimiter, t1Param3);
}
}
}
@@ -1748,23 +1684,17 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
lyrSoil_to_lyrTemp(st->tlyrs_by_slyrs, nlyrs, width, vwc, nRgr, deltaX, vwcR);
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nregression values:");
- for (i = 0; i < nRgr; i++)
- printf("\nk %2d width %5.4f depth %5.4f vwcR %5.4f fcR %5.4f wpR %5.4f oldsTempR %5.4f bDensityR %5.4f", i, deltaX, st->depthsR[i], vwcR[i], st->fcR[i], st->wpR[i], st->oldsTempR[i], st->bDensityR[i]);
-
- printf("\nlayer values:");
- for (i = 0; i < nlyrs; i++)
- printf("\ni %2d width %5.4f depth %5.4f vwc %5.4f fc %5.4f wp %5.4f oldsTemp %5.4f bDensity %5.4f", i, width[i], st->depths[i], vwc[i], fc[i], wp[i], oldsTemp[i], bDensity[i]);
- #else
- Rprintf("\nregression values:");
- for (i = 0; i < nRgr; i++)
- Rprintf("\nk %2d width %5.4f depth %5.4f vwcR %5.4f fcR %5.4f wpR %5.4f oldsTempR %5.4f bDensityR %5.4f", i, deltaX, st->depthsR[i], vwcR[i], st->fcR[i], st->wpR[i], st->oldsTempR[i], st->bDensityR[i]);
-
- Rprintf("\nlayer values:");
- for (i = 0; i < nlyrs; i++)
- Rprintf("\ni %2d width %5.4f depth %5.4f vwc %5.4f fc %5.4f wp %5.4f oldsTemp %5.4f bDensity %5.4f", i, width[i], st->depths[i], vwc[i], fc[i], wp[i], oldsTemp[i], bDensity[i]);
- #endif
+ swprintf("\nregression values:");
+ for (i = 0; i < nRgr; i++) {
+ swprintf("\nk %2d width %5.4f depth %5.4f vwcR %5.4f fcR %5.4f wpR %5.4f oldsTempR %5.4f bDensityR %5.4f",
+ i, deltaX, st->depthsR[i], vwcR[i], st->fcR[i], st->wpR[i], st->oldsTempR[i], st->bDensityR[i]);
+ }
+
+ swprintf("\nlayer values:");
+ for (i = 0; i < nlyrs; i++) {
+ swprintf("\ni %2d width %5.4f depth %5.4f vwc %5.4f fc %5.4f wp %5.4f oldsTemp %5.4f bDensity %5.4f",
+ i, width[i], st->depths[i], vwc[i], fc[i], wp[i], oldsTemp[i], bDensity[i]);
+ }
}
// calculate the new soil temperature for each layer
@@ -1785,7 +1715,7 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
VWCnew: why 0.5 and not 1? and they use a fixed alpha * K whereas here it is 1/(cs * sh)*/
if (GE(parts, 1.0)){
#ifndef RSOILWAT
- printf("\n SOILWAT has encountered an ERROR: Parts Exceeds 1.0 and May Produce Extreme Values");
+ swprintf("\n SOILWAT has encountered an ERROR: Parts Exceeds 1.0 and May Produce Extreme Values");
soil_temp_error = 1;
#else
/* Flag that an error has occurred for use in RSoilwat */
@@ -1798,26 +1728,19 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
sTempR[i] = st->oldsTempR[i] + parts * part2; // Parton (1978) eq. 2.21
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nk %d cs %5.4f sh %5.4f p1 %5.4f ps %5.4f p2 %5.4f p %5.4f", k, cs, sh, part1, parts, part2, parts * part2);
- #else
- Rprintf("\nk %d cs %5.4f sh %5.4f p1 %5.4f ps %5.4f p2 %5.4f p %5.4f", k, cs, sh, part1, parts, part2, parts * part2);
- #endif
+ swprintf("\nk %d cs %5.4f sh %5.4f p1 %5.4f ps %5.4f p2 %5.4f p %5.4f",
+ k, cs, sh, part1, parts, part2, parts * part2);
}
}
sTempR[nRgr + 1] = meanAirTemp; // again... the last layer of the interpolation is set to the constant meanAirTemp
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nSoil temperature profile values:");
- for (i = 0; i <= nRgr + 1; i++)
- printf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f", i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
- #else
- Rprintf("\nSoil temperature profile values:");
- for (i = 0; i <= nRgr + 1; i++)
- Rprintf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f", i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
- #endif
+ swprintf("\nSoil temperature profile values:");
+ for (i = 0; i <= nRgr + 1; i++) {
+ swprintf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f",
+ i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
+ }
}
@@ -1840,27 +1763,20 @@ void soil_temperature(double airTemp, double pet, double aet, double biomass, do
if (toDebug) {
- #ifndef RSOILWAT
- printf("\nsTemp %5.4f surface; soil temperature adjusted by freeze/thaw: %i", surfaceTemp[Today], sFadjusted_sTemp);
-
- printf("\nSoil temperature profile values:");
- for (i = 0; i <= nRgr + 1; i++)
- printf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f", i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
-
- printf("\nSoil profile layer temperatures:");
- for (i = 0; i < nlyrs; i++)
- printf("\ni %d oldTemp %5.4f sTemp %5.4f depth %5.4f frozen %d", i, oldsTemp[i], sTemp[i], st->depths[i], st->lyrFrozen[i]);
- #else
- Rprintf("\nsTemp %5.4f surface; soil temperature adjusted by freeze/thaw: %i", surfaceTemp[Today], sFadjusted_sTemp);
-
- Rprintf("\nSoil temperature profile values:");
- for (i = 0; i <= nRgr + 1; i++)
- Rprintf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f", i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
-
- Rprintf("\nSoil profile layer temperatures:");
- for (i = 0; i < nlyrs; i++)
- Rprintf("\ni %d oldTemp %5.4f sTemp %5.4f depth %5.4f frozen %d", i, oldsTemp[i], sTemp[i], st->depths[i], st->lyrFrozen[i]);
- #endif
+ swprintf("\nsTemp %5.4f surface; soil temperature adjusted by freeze/thaw: %i",
+ surfaceTemp[Today], sFadjusted_sTemp);
+
+ swprintf("\nSoil temperature profile values:");
+ for (i = 0; i <= nRgr + 1; i++) {
+ swprintf("\nk %d oldsTempR %5.4f sTempR %5.4f depth %5.4f",
+ i, st->oldsTempR[i], sTempR[i], (i * deltaX)); // *(oldsTempR + i) is equivalent to writing oldsTempR[i]
+ }
+
+ swprintf("\nSoil profile layer temperatures:");
+ for (i = 0; i < nlyrs; i++) {
+ swprintf("\ni %d oldTemp %5.4f sTemp %5.4f depth %5.4f frozen %d",
+ i, oldsTemp[i], sTemp[i], st->depths[i], st->lyrFrozen[i]);
+ }
}
// updating the values of yesterdays temperature for the next time the function is called...
diff --git a/SW_Main_Function.c b/SW_Main_Function.c
index 493e17cb5..2cc600b85 100644
--- a/SW_Main_Function.c
+++ b/SW_Main_Function.c
@@ -96,7 +96,7 @@ char _firstfile[1024];
void main_function(int argc, char **argv) {
/* =================================================== */
- printf("inside soilwat main: argc=%d argv[0]=%s ,argv[1]=%s,argv[2]=%s \n ",argc,argv[0],argv[1],argv[2]);
+ swprintf("inside soilwat main: argc=%d argv[0]=%s ,argv[1]=%s,argv[2]=%s \n ",argc,argv[0],argv[1],argv[2]);
logged = FALSE;
//atexit(check_log);
logfp = stdout; /* provides a way to inform user that something */
@@ -104,20 +104,20 @@ void main_function(int argc, char **argv) {
/* but must be set before init_args(). see generic.h */
init_args(argc, argv);
- printf("inside soilwat main: init_args successful \n" );
+ swprintf("inside soilwat main: init_args successful \n" );
SW_CTL_init_model(_firstfile);
SW_CTL_obtain_inputs();
- printf("inside soilwat main: SW_CTL_init_model successful _firstfile=%s \n",_firstfile );
+ swprintf("inside soilwat main: SW_CTL_init_model successful _firstfile=%s \n",_firstfile );
SW_CTL_main();
- printf("inside soilwat main: SW_CTL_main successful \n" );
+ swprintf("inside soilwat main: SW_CTL_main successful \n" );
SW_SIT_clear_layers();
- printf("inside soilwat main: SW_SIT_clear_layers successful \n" );
+ swprintf("inside soilwat main: SW_SIT_clear_layers successful \n" );
SW_WTH_clear_runavg_list();
- printf("inside soilwat main: SW_WTH_clear_runavg_list successful exit main \n" );
+ swprintf("inside soilwat main: SW_WTH_clear_runavg_list successful exit main \n" );
}
/*********** End of Main() *******************/
diff --git a/SW_Output.c b/SW_Output.c
index 56bcfd983..2de7f7368 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -645,7 +645,7 @@ void SW_OUT_read(void)
{
if (timeSteps[k][i] < 4)
{
- // printf( "inside Soilwat SW_Output.c : isPartialSoilwatOutput=%d \n", isPartialSoilwatOutput);
+ // swprintf( "inside Soilwat SW_Output.c : isPartialSoilwatOutput=%d \n", isPartialSoilwatOutput);
#if !defined(STEPWAT) && !defined(RSOILWAT)
SW_OutputPrefix(prefix);
strcpy(str, prefix);
@@ -869,7 +869,7 @@ SEXP onGet_SW_OUT(void)
char *cKEY[] =
{ "mykey", "myobj", "period", "sumtype", "use", "first", "last", "first_orig", "last_orig", "outfile"};
- if(debug) Rprintf("onGet_SW_OUT begin\n");
+ if (debug) swprintf("onGet_SW_OUT begin\n");
PROTECT(swOUT = MAKE_CLASS("swOUT"));
PROTECT(OUT = NEW_OBJECT(swOUT));
@@ -878,21 +878,21 @@ SEXP onGet_SW_OUT(void)
SET_STRING_ELT(sep, 0, mkCharLen(&_Sep,1));
SET_SLOT(OUT, install("outputSeparator"), sep);
- if(debug) Rprintf("useTimeStep before assignment = %d\n", useTimeStep);
+ if (debug) swprintf("useTimeStep before assignment = %d\n", useTimeStep);
PROTECT(useTimeStep = NEW_LOGICAL(1));
if(numPeriod == 0)
- LOGICAL(useTimeStep)[0] = FALSE;
+ LOGICAL(useTimeStep)[0] = FALSE;
else
- LOGICAL(useTimeStep)[0] = TRUE;
- if(debug)
- {
- Rprintf("useTimeStep after assignment = %d\n", useTimeStep);
- Rprintf(" - type of slot (10 = 'logical') %d\n", TYPEOF(useTimeStep));
- Rprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(useTimeStep));
- if( 10 == TYPEOF(useTimeStep) )
- Rprintf(" - logdata of slot %d\n", LOGICAL_DATA(useTimeStep));
+ LOGICAL(useTimeStep)[0] = TRUE;
+
+ if (debug) {
+ swprintf("useTimeStep after assignment = %d\n", useTimeStep);
+ swprintf(" - type of slot (10 = 'logical') %d\n", TYPEOF(useTimeStep));
+ swprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(useTimeStep));
+ if ( 10 == TYPEOF(useTimeStep) )
+ swprintf(" - logdata of slot %d\n", LOGICAL_DATA(useTimeStep));
else
- Rprintf(" - logdata of slot not available because not of type 'logical'\n");
+ swprintf(" - logdata of slot not available because not of type 'logical'\n");
}
PROTECT(timestep = NEW_INTEGER(numPeriod));
@@ -911,13 +911,13 @@ SEXP onGet_SW_OUT(void)
{
if(useTimeStep && SW_Output[k].use && !doOnce)
{
- if(debug) Rprintf("length(timestep) = %d, numPeriod = %d\n", GET_LENGTH(timestep), numPeriod);
+ if (debug) swprintf("length(timestep) = %d, numPeriod = %d\n", GET_LENGTH(timestep), numPeriod);
for (i = 0; i < numPeriod; i++)
{
- if(debug) Rprintf("timestep, timestep[%d], and timeSteps[%d][%d] before %d assignment = %d, %d, %d\n",
+ if (debug) swprintf("timestep, timestep[%d], and timeSteps[%d][%d] before %d assignment = %d, %d, %d\n",
i, i, k, k, timestep, INTEGER(timestep)[i], timeSteps[k][i]);
INTEGER(timestep)[i] = timeSteps[k][i];
- if(debug) Rprintf("timestep, timestep[%d], and timeSteps[%d][%d] after %d assignment = %d, %d, %d\n",
+ if (debug) swprintf("timestep, timestep[%d], and timeSteps[%d][%d] after %d assignment = %d, %d, %d\n",
i, i, k, k, timestep, INTEGER(timestep)[i], timeSteps[k][i]);
}
doOnce=TRUE;
@@ -943,24 +943,24 @@ SEXP onGet_SW_OUT(void)
if(debug)
{
- Rprintf("useTimeStep slot of OUT before assignment = %d\n", GET_SLOT(OUT, install("useTimeStep")));
- Rprintf(" - type of slot %d\n", TYPEOF(GET_SLOT(OUT, install("useTimeStep"))));
- Rprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf("useTimeStep slot of OUT before assignment = %d\n", GET_SLOT(OUT, install("useTimeStep")));
+ swprintf(" - type of slot %d\n", TYPEOF(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(GET_SLOT(OUT, install("useTimeStep"))));
if( 10 == TYPEOF(GET_SLOT(OUT, install("useTimeStep"))) )
- Rprintf(" - logdata of slot %d\n", LOGICAL_DATA(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf(" - logdata of slot %d\n", LOGICAL_DATA(GET_SLOT(OUT, install("useTimeStep"))));
else
- Rprintf(" - logdata of slot not available because not of type 'logical'\n");
+ swprintf(" - logdata of slot not available because not of type 'logical'\n");
}
SET_SLOT(OUT, install("useTimeStep"), useTimeStep);
if(debug)
{
- Rprintf("useTimeStep slot of OUT after assignment = %d\n", GET_SLOT(OUT, install("useTimeStep")));
- Rprintf(" - type of slot (4 = 'environments') %d\n", TYPEOF(GET_SLOT(OUT, install("useTimeStep"))));
- Rprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf("useTimeStep slot of OUT after assignment = %d\n", GET_SLOT(OUT, install("useTimeStep")));
+ swprintf(" - type of slot (4 = 'environments') %d\n", TYPEOF(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf(" - logvalue of slot %d\n", LOGICAL_VALUE(GET_SLOT(OUT, install("useTimeStep"))));
if( 10 == TYPEOF(GET_SLOT(OUT, install("useTimeStep"))) )
- Rprintf(" - logdata of slot %d\n", LOGICAL_DATA(GET_SLOT(OUT, install("useTimeStep"))));
+ swprintf(" - logdata of slot %d\n", LOGICAL_DATA(GET_SLOT(OUT, install("useTimeStep"))));
else
- Rprintf(" - logdata of slot not available because not of type 'logical'\n");
+ swprintf(" - logdata of slot not available because not of type 'logical'\n");
}
SET_SLOT(OUT, install(cKEY[0]), mykey);
@@ -975,7 +975,7 @@ SEXP onGet_SW_OUT(void)
SET_SLOT(OUT, install(cKEY[9]), outfile);
UNPROTECT(15);
- if(debug) Rprintf("onGet_SW_OUT end\n");
+ if(debug) swprintf("onGet_SW_OUT end\n");
return OUT;
}
#endif
diff --git a/SW_R_lib.c b/SW_R_lib.c
index db2ef5e7f..53f4b484e 100644
--- a/SW_R_lib.c
+++ b/SW_R_lib.c
@@ -291,7 +291,6 @@ SEXP start(SEXP inputOptions, SEXP inputData, SEXP weatherList) {
if(periodUse[eSW_WetDays][0]) p_Rwetdays_dy = REAL(GET_SLOT(GET_SLOT(outputData, install("WETDAY")),install("Day")));
- //Rprintf("Day Pointers Set\n");
SW_CTL_main();
SW_SIT_clear_layers();
@@ -402,7 +401,7 @@ SEXP onGetOutput(SEXP inputData) {
tevapLayers++;
}
- if(debug) Rprintf("tYears: %d, tLayers: %d, tEvapLayers: %d \n", tYears, tLayers, tevapLayers);
+ if(debug) swprintf("tYears: %d, tLayers: %d, tEvapLayers: %d \n", tYears, tLayers, tevapLayers);
PROTECT(TimeSteps = GET_SLOT(GET_SLOT(inputData, install("output")),install("timePeriods")));
useTimeStep = LOGICAL(GET_SLOT(GET_SLOT(inputData, install("output")),install("useTimeStep")))[0];
@@ -456,18 +455,18 @@ SEXP onGetOutput(SEXP inputData) {
for (i = INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("StartYear")))[0]; i <= INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("EndYear")))[0]; i++) {
if(i==0) {//Need to calculate the starting first day of first year
dy_nrow += Time_get_lastdoy_y(i) - INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("FDOFY")))[0] + 1;
- if(debug) Rprintf("Year: %d DAYSINYEAR: %d\n",i,Time_get_lastdoy_y(i) - INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("FDOFY")))[0] + 1);
+ if(debug) swprintf("Year: %d DAYSINYEAR: %d\n",i,Time_get_lastdoy_y(i) - INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("FDOFY")))[0] + 1);
} else if(i==(tYears-1)) {//and last day of last year.
dy_nrow += INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("EDOEY")))[0];
- if(debug) Rprintf("Year: %d DAYSINYEAR: %d\n",i,INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("EDOEY")))[0]);
+ if(debug) swprintf("Year: %d DAYSINYEAR: %d\n",i,INTEGER(GET_SLOT(GET_SLOT(inputData, install("years")), install("EDOEY")))[0]);
} else {
dy_nrow += Time_get_lastdoy_y(i);
- if(debug) Rprintf("Year: %d DAYSINYEAR: %d\n",i,Time_get_lastdoy_y(i));
+ if(debug) swprintf("Year: %d DAYSINYEAR: %d\n",i,Time_get_lastdoy_y(i));
}
}
}
- if(debug) Rprintf("Year Rows: %d, Month Rows: %d, Week Rows: %d, Day Rows: %d\n",yr_nrow, mo_nrow, wk_nrow, dy_nrow);
+ if(debug) swprintf("Year Rows: %d, Month Rows: %d, Week Rows: %d, Day Rows: %d\n",yr_nrow, mo_nrow, wk_nrow, dy_nrow);
for(i=0; i<28; i++) {
periodUse[i][0]=periodUse[i][1]=periodUse[i][2]=periodUse[i][3]=0;
@@ -535,7 +534,7 @@ SEXP onGetOutput(SEXP inputData) {
pCount+=9;
//WTHR - NOTUSED
if(use[0]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[0]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[0]);
PROTECT(swOutput_KEY_WTHR = NEW_OBJECT(swOutput_KEY));
PROTECT(r_WTHR_NAME = NEW_STRING(1));
SET_STRING_ELT(r_WTHR_NAME, 0, mkChar(cSWoutput_KEY_Titles[0]));
@@ -581,7 +580,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//TEMP
if(use[1]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[1]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[1]);
PROTECT(swOutput_KEY_TEMP = NEW_OBJECT(swOutput_KEY));
PROTECT(r_TEMP_NAME = NEW_STRING(1));
SET_STRING_ELT(r_TEMP_NAME, 0, mkChar(cSWoutput_KEY_Titles[1]));
@@ -599,7 +598,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[1][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(Rtemp_dy = allocMatrix(REALSXP, dy_nrow, Rtemp_columns+2));
PROTECT(Rtemp_names_dy = allocVector(VECSXP, 2));
PROTECT(Rtemp_names_y_dy = allocVector(STRSXP, Rtemp_columns + 2));
@@ -613,7 +612,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[1][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(Rtemp_wk = allocMatrix(REALSXP, wk_nrow, Rtemp_columns+2));
PROTECT(Rtemp_names_wk = allocVector(VECSXP, 2));
PROTECT(Rtemp_names_y_wk = allocVector(STRSXP, Rtemp_columns + 2));
@@ -627,7 +626,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[1][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(Rtemp_mo = allocMatrix(REALSXP, mo_nrow, Rtemp_columns+2));
PROTECT(Rtemp_names_mo = allocVector(VECSXP, 2));
PROTECT(Rtemp_names_y_mo = allocVector(STRSXP, Rtemp_columns + 2));
@@ -641,7 +640,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[1][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(Rtemp_yr = allocMatrix(REALSXP, yr_nrow, Rtemp_columns+1));
PROTECT(Rtemp_names_yr = allocVector(VECSXP, 2));
PROTECT(Rtemp_names_y_yr = allocVector(STRSXP, Rtemp_columns + 1));
@@ -661,7 +660,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//PRECIP
if(use[2]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[2]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[2]);
PROTECT(swOutput_KEY_PRECIP = NEW_OBJECT(swOutput_KEY));
PROTECT(r_PRECIP_NAME = NEW_STRING(1));
SET_STRING_ELT(r_PRECIP_NAME, 0, mkChar(cSWoutput_KEY_Titles[2]));
@@ -679,7 +678,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[2][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(Rprecip_dy = allocMatrix(REALSXP, dy_nrow, Rprecip_columns+2));
PROTECT(Rprecip_names_dy = allocVector(VECSXP, 2));
PROTECT(Rprecip_names_y_dy = allocVector(STRSXP, Rprecip_columns + 2));
@@ -693,7 +692,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[2][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(Rprecip_wk = allocMatrix(REALSXP, wk_nrow, Rprecip_columns+2));
PROTECT(Rprecip_names_wk = allocVector(VECSXP, 2));
PROTECT(Rprecip_names_y_wk = allocVector(STRSXP, Rprecip_columns + 2));
@@ -707,7 +706,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[2][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(Rprecip_mo = allocMatrix(REALSXP, mo_nrow, Rprecip_columns+2));
PROTECT(Rprecip_names_mo = allocVector(VECSXP, 2));
PROTECT(Rprecip_names_y_mo = allocVector(STRSXP, Rprecip_columns + 2));
@@ -721,7 +720,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[2][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(Rprecip_yr = allocMatrix(REALSXP, yr_nrow, Rprecip_columns+1));
PROTECT(Rprecip_names_yr = allocVector(VECSXP, 2));
PROTECT(Rprecip_names_y_yr = allocVector(STRSXP, Rprecip_columns + 1));
@@ -741,7 +740,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//SoilInf
if(use[3]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[3]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[3]);
PROTECT(swOutput_KEY_SOILINFILT = NEW_OBJECT(swOutput_KEY));
PROTECT(r_SOILINFILT_NAME = NEW_STRING(1));
SET_STRING_ELT(r_SOILINFILT_NAME, 0, mkChar(cSWoutput_KEY_Titles[3]));
@@ -759,7 +758,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[3][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(Rinfiltration_dy = allocMatrix(REALSXP, dy_nrow, Rinfiltration_columns+2));
PROTECT(Rinfiltration_names_dy = allocVector(VECSXP, 2));
PROTECT(Rinfiltration_names_y_dy = allocVector(STRSXP, Rinfiltration_columns + 2));
@@ -772,7 +771,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[3][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(Rinfiltration_wk = allocMatrix(REALSXP, wk_nrow, Rinfiltration_columns+2));
PROTECT(Rinfiltration_names_wk = allocVector(VECSXP, 2));
PROTECT(Rinfiltration_names_y_wk = allocVector(STRSXP, Rinfiltration_columns + 2));
@@ -785,7 +784,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[3][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(Rinfiltration_mo = allocMatrix(REALSXP, mo_nrow, Rinfiltration_columns+2));
PROTECT(Rinfiltration_names_mo = allocVector(VECSXP, 2));
PROTECT(Rinfiltration_names_y_mo = allocVector(STRSXP, Rinfiltration_columns + 2));
@@ -798,7 +797,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[3][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(Rinfiltration_yr = allocMatrix(REALSXP, yr_nrow, Rinfiltration_columns+1));
PROTECT(Rinfiltration_names_yr = allocVector(VECSXP, 2));
PROTECT(Rinfiltration_names_y_yr = allocVector(STRSXP, Rinfiltration_columns + 1));
@@ -817,7 +816,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//Runoff
if(use[4]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[4]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[4]);
PROTECT(swOutput_KEY_RUNOFF = NEW_OBJECT(swOutput_KEY));
PROTECT(r_RUNOFF_NAME = NEW_STRING(1));
SET_STRING_ELT(r_RUNOFF_NAME, 0, mkChar(cSWoutput_KEY_Titles[4]));
@@ -835,7 +834,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[4][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(Rrunoff_dy = allocMatrix(REALSXP, dy_nrow, Rrunoff_columns+2));
PROTECT(Rrunoff_names_dy = allocVector(VECSXP, 2));
PROTECT(Rrunoff_names_y_dy = allocVector(STRSXP, Rrunoff_columns + 2));
@@ -849,7 +848,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[4][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(Rrunoff_wk = allocMatrix(REALSXP, wk_nrow, Rrunoff_columns+2));
PROTECT(Rrunoff_names_wk = allocVector(VECSXP, 2));
PROTECT(Rrunoff_names_y_wk = allocVector(STRSXP, Rrunoff_columns + 2));
@@ -863,7 +862,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[4][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(Rrunoff_mo = allocMatrix(REALSXP, mo_nrow, Rrunoff_columns+2));
PROTECT(Rrunoff_names_mo = allocVector(VECSXP, 2));
PROTECT(Rrunoff_names_y_mo = allocVector(STRSXP, Rrunoff_columns + 2));
@@ -877,7 +876,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[4][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(Rrunoff_yr = allocMatrix(REALSXP, yr_nrow, Rrunoff_columns+1));
PROTECT(Rrunoff_names_yr = allocVector(VECSXP, 2));
PROTECT(Rrunoff_names_y_yr = allocVector(STRSXP, Rrunoff_columns + 1));
@@ -897,7 +896,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//AllH2O - NOT USED
if(use[5]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[5]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[5]);
PROTECT(swOutput_KEY_ALLH2O = NEW_OBJECT(swOutput_KEY));
PROTECT(r_ALLH2O_NAME = NEW_STRING(1));
SET_STRING_ELT(r_ALLH2O_NAME, 0, mkChar(cSWoutput_KEY_Titles[5]));
@@ -942,7 +941,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//VWCBulk
if(use[6]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[6]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[6]);
PROTECT(swOutput_KEY_VWCBULK = NEW_OBJECT(swOutput_KEY));
PROTECT(r_VWCBULK_NAME = NEW_STRING(1));
SET_STRING_ELT(r_VWCBULK_NAME, 0, mkChar(cSWoutput_KEY_Titles[6]));
@@ -960,7 +959,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[6][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(RvwcBulk_dy = allocMatrix(REALSXP, dy_nrow, RvwcBulk_columns+2));
PROTECT(RvwcBulk_names_dy = allocVector(VECSXP, 2));
PROTECT(RvwcBulk_names_y_dy = allocVector(STRSXP, RvwcBulk_columns + 2));
@@ -974,7 +973,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[6][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RvwcBulk_wk = allocMatrix(REALSXP, wk_nrow, RvwcBulk_columns+2));
PROTECT(RvwcBulk_names_wk = allocVector(VECSXP, 2));
PROTECT(RvwcBulk_names_y_wk = allocVector(STRSXP, RvwcBulk_columns + 2));
@@ -988,7 +987,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[6][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(RvwcBulk_mo = allocMatrix(REALSXP, mo_nrow, RvwcBulk_columns+2));
PROTECT(RvwcBulk_names_mo = allocVector(VECSXP, 2));
PROTECT(RvwcBulk_names_y_mo = allocVector(STRSXP, RvwcBulk_columns + 2));
@@ -1002,7 +1001,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[6][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(RvwcBulk_yr = allocMatrix(REALSXP, yr_nrow, RvwcBulk_columns+1));
PROTECT(RvwcBulk_names_yr = allocVector(VECSXP, 2));
PROTECT(RvwcBulk_names_y_yr = allocVector(STRSXP, RvwcBulk_columns + 1));
@@ -1022,7 +1021,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//VWCMatrix
if(use[7]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[7]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[7]);
PROTECT(swOutput_KEY_VWCMATRIC = NEW_OBJECT(swOutput_KEY));
PROTECT(r_VWCMATRIC_NAME = NEW_STRING(1));
SET_STRING_ELT(r_VWCMATRIC_NAME, 0, mkChar(cSWoutput_KEY_Titles[7]));
@@ -1040,7 +1039,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[7][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(RvwcMatric_dy = allocMatrix(REALSXP, dy_nrow, RvwcMatric_columns+2));
PROTECT(RvwcMatric_names_dy = allocVector(VECSXP, 2));
PROTECT(RvwcMatric_names_y_dy = allocVector(STRSXP, RvwcMatric_columns + 2));
@@ -1054,7 +1053,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[7][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RvwcMatric_wk = allocMatrix(REALSXP, wk_nrow, RvwcMatric_columns+2));
PROTECT(RvwcMatric_names_wk = allocVector(VECSXP, 2));
PROTECT(RvwcMatric_names_y_wk = allocVector(STRSXP, RvwcMatric_columns + 2));
@@ -1068,7 +1067,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[7][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(RvwcMatric_mo = allocMatrix(REALSXP, mo_nrow, RvwcMatric_columns+2));
PROTECT(RvwcMatric_names_mo = allocVector(VECSXP, 2));
PROTECT(RvwcMatric_names_y_mo = allocVector(STRSXP, RvwcMatric_columns + 2));
@@ -1082,7 +1081,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[7][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(RvwcMatric_yr = allocMatrix(REALSXP, yr_nrow, RvwcMatric_columns+1));
PROTECT(RvwcMatric_names_yr = allocVector(VECSXP, 2));
PROTECT(RvwcMatric_names_y_yr = allocVector(STRSXP, RvwcMatric_columns + 1));
@@ -1102,7 +1101,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//SWCBulk
if(use[8]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[8]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[8]);
PROTECT(swOutput_KEY_SWCBULK = NEW_OBJECT(swOutput_KEY));
PROTECT(r_SWCBULK_NAME = NEW_STRING(1));
SET_STRING_ELT(r_SWCBULK_NAME, 0, mkChar(cSWoutput_KEY_Titles[8]));
@@ -1120,7 +1119,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[8][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(RswcBulk_dy = allocMatrix(REALSXP, dy_nrow, RswcBulk_columns+2));
PROTECT(RswcBulk_names_dy = allocVector(VECSXP, 2));
PROTECT(RswcBulk_names_y_dy = allocVector(STRSXP, RswcBulk_columns + 2));
@@ -1134,7 +1133,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[8][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RswcBulk_wk = allocMatrix(REALSXP, wk_nrow, RswcBulk_columns+2));
PROTECT(RswcBulk_names_wk = allocVector(VECSXP, 2));
PROTECT(RswcBulk_names_y_wk = allocVector(STRSXP, RswcBulk_columns + 2));
@@ -1148,7 +1147,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[8][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(RswcBulk_mo = allocMatrix(REALSXP, mo_nrow, RswcBulk_columns+2));
PROTECT(RswcBulk_names_mo = allocVector(VECSXP, 2));
PROTECT(RswcBulk_names_y_mo = allocVector(STRSXP, RswcBulk_columns + 2));
@@ -1162,7 +1161,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[8][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(RswcBulk_yr = allocMatrix(REALSXP, yr_nrow, RswcBulk_columns+1));
PROTECT(RswcBulk_names_yr = allocVector(VECSXP, 2));
PROTECT(RswcBulk_names_y_yr = allocVector(STRSXP, RswcBulk_columns + 1));
@@ -1182,7 +1181,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//SWABULK
if(use[9]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[9]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[9]);
PROTECT(swOutput_KEY_SWABULK = NEW_OBJECT(swOutput_KEY));
PROTECT(r_SWABULK_NAME = NEW_STRING(1));
SET_STRING_ELT(r_SWABULK_NAME, 0, mkChar(cSWoutput_KEY_Titles[9]));
@@ -1200,7 +1199,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[9][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(RswaBulk_dy = allocMatrix(REALSXP, dy_nrow, RswaBulk_columns+2));
PROTECT(RswaBulk_names_dy = allocVector(VECSXP, 2));
PROTECT(RswaBulk_names_y_dy = allocVector(STRSXP, RswaBulk_columns + 2));
@@ -1214,7 +1213,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[9][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RswaBulk_wk = allocMatrix(REALSXP, wk_nrow, RswaBulk_columns+2));
PROTECT(RswaBulk_names_wk = allocVector(VECSXP, 2));
PROTECT(RswaBulk_names_y_wk = allocVector(STRSXP, RswaBulk_columns + 2));
@@ -1228,7 +1227,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[9][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(RswaBulk_mo = allocMatrix(REALSXP, mo_nrow, RswaBulk_columns+2));
PROTECT(RswaBulk_names_mo = allocVector(VECSXP, 2));
PROTECT(RswaBulk_names_y_mo = allocVector(STRSXP, RswaBulk_columns + 2));
@@ -1242,7 +1241,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[9][3]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RswaBulk_yr = allocMatrix(REALSXP, yr_nrow, RswaBulk_columns+1));
PROTECT(RswaBulk_names_yr = allocVector(VECSXP, 2));
PROTECT(RswaBulk_names_y_yr = allocVector(STRSXP, RswaBulk_columns + 1));
@@ -1262,7 +1261,7 @@ SEXP onGetOutput(SEXP inputData) {
}
//SWAMATRIC
if(use[10]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[10]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[10]);
PROTECT(swOutput_KEY_SWAMATRIC = NEW_OBJECT(swOutput_KEY));
PROTECT(r_SWAMATRIC_NAME = NEW_STRING(1));
SET_STRING_ELT(r_SWAMATRIC_NAME, 0, mkChar(cSWoutput_KEY_Titles[10]));
@@ -1280,7 +1279,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(1);
}
if(periodUse[10][0]) {
- if(debug) Rprintf("\tdy\n");
+ if(debug) swprintf("\tdy\n");
PROTECT(RswaMatric_dy = allocMatrix(REALSXP, dy_nrow, RswaMatric_columns+2));
PROTECT(RswaMatric_names_dy = allocVector(VECSXP, 2));
PROTECT(RswaMatric_names_y_dy = allocVector(STRSXP, RswaMatric_columns + 2));
@@ -1294,7 +1293,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[10][1]) {
- if(debug) Rprintf("\twk\n");
+ if(debug) swprintf("\twk\n");
PROTECT(RswaMatric_wk = allocMatrix(REALSXP, wk_nrow, RswaMatric_columns+2));
PROTECT(RswaMatric_names_wk = allocVector(VECSXP, 2));
PROTECT(RswaMatric_names_y_wk = allocVector(STRSXP, RswaMatric_columns + 2));
@@ -1308,7 +1307,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[10][2]) {
- if(debug) Rprintf("\tmo\n");
+ if(debug) swprintf("\tmo\n");
PROTECT(RswaMatric_mo = allocMatrix(REALSXP, mo_nrow, RswaMatric_columns+2));
PROTECT(RswaMatric_names_mo = allocVector(VECSXP, 2));
PROTECT(RswaMatric_names_y_mo = allocVector(STRSXP, RswaMatric_columns + 2));
@@ -1322,7 +1321,7 @@ SEXP onGetOutput(SEXP inputData) {
UNPROTECT(3);
}
if(periodUse[10][3]) {
- if(debug) Rprintf("\tyr\n");
+ if(debug) swprintf("\tyr\n");
PROTECT(RswaMatric_yr = allocMatrix(REALSXP, yr_nrow, RswaMatric_columns+1));
PROTECT(RswaMatric_names_yr = allocVector(VECSXP, 2));
PROTECT(RswaMatric_names_y_yr = allocVector(STRSXP, RswaMatric_columns + 1));
@@ -1342,28 +1341,28 @@ SEXP onGetOutput(SEXP inputData) {
}
//SWP Matric
if(use[11]) {
- if(debug) Rprintf("%s\n",cSWoutput_KEY_Titles[11]);
+ if(debug) swprintf("%s\n",cSWoutput_KEY_Titles[11]);
PROTECT(swOutput_KEY_SWPMATRIC = NEW_OBJECT(swOutput_KEY));
PROTECT(r_SWPMATRIC_NAME = NEW_STRING(1));
SET_STRING_ELT(r_SWPMATRIC_NAME, 0, mkChar(cSWoutput_KEY_Titles[11]));
SET_SLOT(swOutput_KEY_SWPMATRIC, install("Title"), r_SWPMATRIC_NAME);
if (useTimeStep) {
- if(debug) Rprintf("\tUseTimeStep - %d\n", length(Periods));
+ if(debug) swprintf("\tUseTimeStep - %d\n", length(Periods));
PROTECT(r_SWPMATRIC_PERIOD = NEW_INTEGER(length(Periods)));
- if(debug) Rprintf("\tr_SWPMATRIC_PERIOD - %d\n", length(r_SWPMATRIC_PERIOD));
+ if(debug) swprintf("\tr_SWPMATRIC_PERIOD - %d\n", length(r_SWPMATRIC_PERIOD));
for(i=0; i 0.5), or too LOW (<0.0): %0.3f", f_gravel);
- printf("\nParameterization for Brooks-Corey equation may fall outside of valid range.");
- printf("\nThis can cause implausible SWP values.");
- printf("\nConsider setting SWC minimum in siteparam.in file.");
-#else
- Rprintf("\nGravel content is either too HIGH (> 0.5), or too LOW (<0.0).");
- Rprintf("\nParameterization for Brooks-Corey equation may fall outside of valid range.");
- Rprintf("\nThis can cause implausible SWP values.");
- Rprintf("\nConsider setting SWC minimum in siteparam.in file.");
-#endif
+
+ swprintf("\nGravel content is either too HIGH (> 0.5), or too LOW (<0.0): %0.3f", f_gravel);
+ swprintf("\nParameterization for Brooks-Corey equation may fall outside of valid range.");
+ swprintf("\nThis can cause implausible SWP values.");
+ swprintf("\nConsider setting SWC minimum in siteparam.in file.");
+
} else if (LE(psand,0.)) {
fail = TRUE;
fval = psand;
diff --git a/mymemory.c b/mymemory.c
index 78c6753af..3d31c6857 100644
--- a/mymemory.c
+++ b/mymemory.c
@@ -564,7 +564,7 @@ void CheckMemoryRefs(void) {
#ifndef RSOILWAT
assert(pbi->pb != NULL && pbi->size > 0);
#endif
- /* printf("i=%d, size=%d, p=%p\n", ++i, pbi->size, pbi->pb); */
+ /* swprintf("i=%d, size=%d, p=%p\n", ++i, pbi->size, pbi->pb); */
/* A check for lost or leaky memory. if this assert
* fires, it means that the app has either lost track
From 614e001502759878b15ab322e003db37a7e5ddd7 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 17:19:05 -0500
Subject: [PATCH 22/34] Include source files in unit tests
- bad practice, see issue #82 which remains unsolved
- I want this branch to be merged into master so that I can use the
last set of commits as basis for development in other branches. sorry.
---
test/test_rands.cc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/test/test_rands.cc b/test/test_rands.cc
index 8a99cad61..cacee3101 100644
--- a/test/test_rands.cc
+++ b/test/test_rands.cc
@@ -15,9 +15,13 @@
#include
#include
#include "../generic.h"
+#include "../generic.c"
#include "../myMemory.h"
+#include "../myMemory.c"
#include "../filefuncs.h"
+#include "../filefuncs.c"
#include "../rands.h"
+#include "../rands.c"
namespace {
From a4a3b24f5fe467c68dc84dbb3750b8e06baf121a Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Tue, 21 Nov 2017 17:24:14 -0500
Subject: [PATCH 23/34] compilers on travis-ci and appveyor-ci don't understand
option '-arch'
- removed compiler flag '-arch' because it didn't help addressing issue
#82
---
makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/makefile b/makefile
index b7167f272..63e4d8138 100644
--- a/makefile
+++ b/makefile
@@ -22,9 +22,9 @@
uname_m = $(shell uname -m)
CC = gcc
-CFLAGS = -O3 -Wall -Wextra -arch $(uname_m)
+CFLAGS = -O3 -Wall -Wextra
CXX = g++
-CXXFLAGS = -Wall -Wextra -arch $(uname_m)
+CXXFLAGS = -Wall -Wextra
LDLIBS = -lm
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
From 93fe1a90faa0afab2e448ce85b26b2452d0da509 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 10:04:38 -0500
Subject: [PATCH 24/34] Attempts to update makefile
- avoid compiler warnings "warning: parameter set but not used"
- remove explicit definition of CC and CXX (e.g., so that CIs can set
their own, e.g., on travis we want to test with both clang and gnu gcc)
- add SOILWAT2 library to LDLIBS instead (now needs LDFLAGS)
- still does not resolve issue #82
- apparently, compilers on my machine produce different warnings/errors
than travis-ci and appveyor-ci (I can compile without warnings/errors
while they produce warnings and error out)
---
SW_Flow_lib.c | 4 ++++
makefile | 19 ++++++++++---------
test/test_rands.cc | 2 +-
3 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/SW_Flow_lib.c b/SW_Flow_lib.c
index dbd1adabc..3dc435817 100644
--- a/SW_Flow_lib.c
+++ b/SW_Flow_lib.c
@@ -1481,6 +1481,10 @@ nlyrs = 0;
vwc[0] = 0.0;
bDensity[0] = 0.0;
// double deltaTemp, Cis, sFusionPool[nlyrs], sFusionPool_actual[nlyrs];
+// To avoid compiler warnings "warning: parameter set but not used"
+double temp;
+temp = oldsTemp[0] + sTemp[0] + shParam + nlyrs + vwc[0] + bDensity[0];
+temp += temp;
// end avoid compiler warnings
unsigned int i, sFadjusted_sTemp;
diff --git a/makefile b/makefile
index 63e4d8138..2b39d0561 100644
--- a/makefile
+++ b/makefile
@@ -21,11 +21,12 @@
uname_m = $(shell uname -m)
-CC = gcc
-CFLAGS = -O3 -Wall -Wextra
-CXX = g++
+# CC = gcc
+# CXX = g++
+CFLAGS = -O3 -Wall -Wextra -pedantic
CXXFLAGS = -Wall -Wextra
-LDLIBS = -lm
+LDFLAGS = -L.
+LDLIBS = -lm -l$(target)
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
rands.c Times.c mymemory.c filefuncs.c \
@@ -64,13 +65,13 @@ lib : $(lib_target)
$(lib_target) :
$(CC) $(CFLAGS) -c $(sources)
- ar -ruv $(lib_target) $(objects)
+ ar -rcsu $(lib_target) $(objects)
@rm -f $(objects)
bin : $(target)
$(target) : $(lib_target)
- $(CC) $(CFLAGS) -o $(target) $(lib_target) $(bin_sources) $(LDLIBS)
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $(target) $(bin_sources) $(LDLIBS)
bint : $(target)
cp $(target) testing/$(target)
@@ -85,11 +86,11 @@ lib_test : $(lib_gtest)
$(lib_gtest) :
$(CXX) $(CXXFLAGS) -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
- ar -rv $(lib_gtest) gtest-all.o
+ ar -r $(lib_gtest) gtest-all.o
test : $(lib_gtest) $(lib_target)
- $(CXX) $(CXXFLAGS) -isystem ${GTEST_DIR}/include -pthread \
- $(lib_gtest) $(lib_target) test/*.cc -o $(bin_test) $(LDLIBS)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -isystem ${GTEST_DIR}/include -pthread \
+ $(lib_gtest) test/*.cc -o $(bin_test) $(LDLIBS)
test_run :
./$(bin_test)
diff --git a/test/test_rands.cc b/test/test_rands.cc
index cacee3101..4bc08912f 100644
--- a/test/test_rands.cc
+++ b/test/test_rands.cc
@@ -17,7 +17,7 @@
#include "../generic.h"
#include "../generic.c"
#include "../myMemory.h"
-#include "../myMemory.c"
+#include "../mymemory.c"
#include "../filefuncs.h"
#include "../filefuncs.c"
#include "../rands.h"
From c126bbae75b82e3e03ea7ce1bec0f316d18718df Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 11:26:36 -0500
Subject: [PATCH 25/34] Avoid more compile warnings
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- avoid compile warnings:
* warning: format '%d' expects argument of type 'int *', but argument 3
has type 'LyrIndex * {aka unsigned int *}' [-Wformat=]
* warning: self-comparison always evaluates to true
[-Wtautological-compare]
* warning: format '%d' expects argument of type 'int *', but argument 3
has type 'TimeInt * {aka unsigned int *}' [-Wformat=]
* warning: ISO C90 forbids mixed declarations and code [-Wpedantic]
* warning: string length ‘807’ is greater than the length ‘509’ ISO C90
compilers are required to support [-Woverlength-strings]
* warning: ISO C90 forbids mixed declarations and code [-Wpedantic]
- changed definition of macro 'squared' in 'generic.h' to be
self-sufficient (i.e., not call macro 'powe')
- set c standard explicitly in makefile '-std=c11' (and c++ standard to
'-std=c++11') because c90 is the default value on travis-ci with gcc
* c90 throws many warnings/errors such as
** // comments are not allowed in this language [-Wcomment]
** ISO C90 forbids mixing declarations and code
[-Wdeclaration-after-statement]
** variable length arrays are a C99 feature [-Wvla-extension]
--> both c99 and c11 work fine on my local computer and don't throw any
warnings/errors
--> i take c11 for now as it is the more modern one
---
SW_Output.c | 9 ++++-----
SW_Site.c | 11 ++++++-----
SW_SoilWater.c | 3 +--
SW_VegEstab.c | 26 +++++++++++++++-----------
SW_Weather.c | 5 ++---
generic.c | 1 -
generic.h | 2 +-
makefile | 4 ++--
8 files changed, 31 insertions(+), 30 deletions(-)
diff --git a/SW_Output.c b/SW_Output.c
index 2de7f7368..555774119 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -3812,12 +3812,11 @@ static void sumof_ves(SW_VEGESTAB *v, SW_VEGESTAB_OUTPUTS *s, OutKey k)
* establishment variables.
*/
-// just a few lines of nonsense to supress the compile warnings, doesn't actually do anything
- if (&v == &v)
- if (&s == &s)
- if (k != 0)
- return;
+// just a few lines of nonsense to supress the compile warnings
+ int temp;
+ temp = (int) v->count + (int) s->days + (int) k;
+ return;
}
static void sumof_wth(SW_WEATHER *v, SW_WEATHER_OUTPUTS *s, OutKey k)
diff --git a/SW_Site.c b/SW_Site.c
index dde544c24..a4ededfff 100644
--- a/SW_Site.c
+++ b/SW_Site.c
@@ -190,9 +190,10 @@ void SW_SIT_read(void) {
*/
SW_SITE *v = &SW_Site;
FILE *f;
- int lineno = 0, x;
- LyrIndex r, region, /* transp region definition number */
- rgnlow; /* lower layer of region */
+ int lineno = 0, x,
+ rgnlow, /* lower layer of region */
+ region; /* transp region definition number */
+ LyrIndex r;
Bool too_many_regions = FALSE;
/* note that Files.read() must be called prior to this. */
@@ -320,11 +321,11 @@ void SW_SIT_read(void) {
goto Label_End_Read;
}
x = sscanf(inbuf, "%d %d", ®ion, &rgnlow);
- if (x < 2) {
+ if (x < 2 || region < 1 || rgnlow < 1) {
CloseFile(&f);
LogError(logfp, LOGFATAL, "%s : Bad record %d.\n", MyFileName, lineno);
}
- _TranspRgnBounds[region - 1] = rgnlow - 1;
+ _TranspRgnBounds[region - 1] = (LyrIndex) (rgnlow - 1);
v->n_transp_rgn++;
}
diff --git a/SW_SoilWater.c b/SW_SoilWater.c
index 9a6d2c614..402cd8ddf 100644
--- a/SW_SoilWater.c
+++ b/SW_SoilWater.c
@@ -373,8 +373,7 @@ static void _read_hist(TimeInt year) {
*/
SW_SOILWAT *v = &SW_Soilwat;
FILE *f;
- TimeInt doy;
- int x, lyr, recno = 0;
+ int x, lyr, recno = 0, doy;
RealF swc, st_err;
char fname[MAX_FILENAMESIZE];
diff --git a/SW_VegEstab.c b/SW_VegEstab.c
index f43edd430..6db5d47da 100644
--- a/SW_VegEstab.c
+++ b/SW_VegEstab.c
@@ -324,7 +324,9 @@ static void _read_spp(const char *infile) {
f = OpenFile(infile, "r");
- unsigned int count = _new_species();
+ unsigned int count;
+
+ count = _new_species();
v = SW_VegEstab.parms[count];
strcpy(v->sppFileName, inbuf); //have to copy before the pointer infile gets reset below by getAline
@@ -465,7 +467,9 @@ void onSet_SW_VES_spp(SEXP SPP, IntU i) {
SEXP fileName, Name;
int lineno = 0;
char name[80]; /* only allow 4 char sppnames */
- unsigned int count = _new_species();
+ unsigned int count;
+
+ count = _new_species();
v = SW_VegEstab.parms[count];
v->estab_lyrs = INTEGER(GET_SLOT(SPP, install("estab_lyrs")))[i];
@@ -595,9 +599,12 @@ static void _echo_inits(void) {
"\tMaximum temperature : %.1f\n"
"\tFirst possible day : %d\n"
"\tLast possible day : %d\n"
- "\tMinimum consecutive wet days (after first possible day): %d\n"
+ "\tMinimum consecutive wet days (after first possible day): %d\n",
+ v[i]->sppname, v[i]->bars[SW_GERM_BARS], v[i]->min_swc_germ / lyr[0]->width,
+ v[i]->min_swc_germ, v[i]->min_temp_germ, v[i]->max_temp_germ,
+ v[i]->min_pregerm_days, v[i]->max_pregerm_days, v[i]->min_wetdays_for_germ);
- "Establishment parameters:\n"
+ sprintf(errstr, "Establishment parameters:\n"
"\tNumber of layers affecting successful establishment: %d\n"
"\tMinimum SWP (bars) : -%.4f\n"
"\tMinimum SWC (cm/layer) averaged across top %d layers: %.4f\n"
@@ -608,14 +615,11 @@ static void _echo_inits(void) {
"\tMinimum consecutive wet days after germination: %d\n"
"\tMaximum consecutive dry days after germination: %d\n"
"---------------------------------------------------------------\n\n",
+ v[i]->estab_lyrs, v[i]->bars[SW_ESTAB_BARS], v[i]->estab_lyrs,
+ v[i]->min_swc_estab, v[i]->min_temp_estab, v[i]->max_temp_estab,
+ v[i]->min_days_germ2estab, v[i]->max_days_germ2estab, v[i]->min_wetdays_for_estab,
+ v[i]->max_drydays_postgerm);
- v[i]->sppname, v[i]->bars[SW_GERM_BARS], v[i]->min_swc_germ / lyr[0]->width, v[i]->min_swc_germ, v[i]->min_temp_germ, v[i]->max_temp_germ, v[i]->min_pregerm_days,
- v[i]->max_pregerm_days, v[i]->min_wetdays_for_germ,
-
- v[i]->estab_lyrs, v[i]->bars[SW_ESTAB_BARS], v[i]->estab_lyrs, v[i]->min_swc_estab, v[i]->min_temp_estab, v[i]->max_temp_estab, v[i]->min_days_germ2estab,
- v[i]->max_days_germ2estab, v[i]->min_wetdays_for_estab, v[i]->max_drydays_postgerm
-
- );
strcat(outstr, errstr);
}
strcat(outstr, "\n----------------- End of Establishment Parameters ------------\n");
diff --git a/SW_Weather.c b/SW_Weather.c
index 7fcdd2f4e..1a8352811 100644
--- a/SW_Weather.c
+++ b/SW_Weather.c
@@ -538,7 +538,7 @@ SEXP onGet_WTH_DATA(void) {
PROTECT(WTH_DATA = allocVector(VECSXP,nWeathData));
PROTECT(WTH_DATA_names = allocVector(STRSXP,nWeathData));
-
+
if (nWeathData > 0){
weth_found = TRUE;
for (year = SW_Model.startyr; year <= SW_Model.endyr; year++) {
@@ -704,9 +704,8 @@ static Bool _read_hist(TimeInt year) {
SW_WEATHER_HIST *wh = &SW_Weather.hist;
FILE *f;
- int x, lineno = 0, k = 0, i, j;
+ int x, lineno = 0, k = 0, i, j, doy;
RealF tmpmax, tmpmin, ppt, acc = 0.0;
- TimeInt doy;
char fname[MAX_FILENAMESIZE];
diff --git a/generic.c b/generic.c
index ac1c3746b..dc4f5bb09 100644
--- a/generic.c
+++ b/generic.c
@@ -343,7 +343,6 @@ double lobfM(double xs[], double ys[], unsigned int n) {
**************************************************************************************************************************************/
double lobfB(double xs[], double ys[], unsigned int n) {
double sumX, sumY, temp;
- ;
unsigned int i;
sumX = sumY = 0.0;
diff --git a/generic.h b/generic.h
index 80307d051..42c75ddcc 100644
--- a/generic.h
+++ b/generic.h
@@ -180,7 +180,7 @@ extern int logged; /* REQUIRED */
// 06/26/2013 (dlm) powe(): an alternate definition of pow(x, y) for x>0... this is faster (ca. 20%) then the one in math.h, but comes with a cost as the precision is slightly lower. The measured precision drop I was getting was at max a relative error of about 100 billion percent (12 places after the decimal point) per calculation though so I don't think it's a big deal... (though it's hard to even accurately tell)
#define powe(x, y) (exp((y) * log(x))) //x^y == exponential(y * ln(x)) or e^(y * ln(x)). NOTE: this will only work when x > 0 I believe
-#define squared(x) powe(fabs(x), 2.0) // added for convenience
+#define squared(x) (x) * (x) // added for convenience
/***************************************************
* Function definitions
diff --git a/makefile b/makefile
index 2b39d0561..b61428f9f 100644
--- a/makefile
+++ b/makefile
@@ -23,8 +23,8 @@ uname_m = $(shell uname -m)
# CC = gcc
# CXX = g++
-CFLAGS = -O3 -Wall -Wextra -pedantic
-CXXFLAGS = -Wall -Wextra
+CFLAGS = -O3 -Wall -Wextra -pedantic -std=c11
+CXXFLAGS = -Wall -Wextra -std=c++11
LDFLAGS = -L.
LDLIBS = -lm -l$(target)
From 586727d844376dbe926f256f47da7354d3e38647 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 11:50:25 -0500
Subject: [PATCH 26/34] =?UTF-8?q?Address=20errors:=20=E2=80=98S=5FIFREG?=
=?UTF-8?q?=E2=80=99=20/=20'S=5FIFDIR'=20undeclared?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- this error is thrown on travis-ci (both with clang and gcc), but not
on appveyor or my local machine
- maybe related to this discussion
https://stackoverflow.com/questions/28547271/s-ifmt-and-s-ifreg-undefine
d-with-std-c11-or-std-gnu11
- replace masking with 'S_IFREG' by 'S_ISREG' call and with 'S_IFDIR'
by 'S_ISDIR' call
---
filefuncs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/filefuncs.c b/filefuncs.c
index e265b0ac7..ffd811915 100644
--- a/filefuncs.c
+++ b/filefuncs.c
@@ -156,7 +156,7 @@ Bool FileExists(const char *name) {
Bool result = FALSE;
if (0 == stat(name, &statbuf))
- result = (statbuf.st_mode & S_IFREG) ? TRUE : FALSE;
+ result = S_ISREG(statbuf.st_mode) ? TRUE : FALSE;
return (result);
}
@@ -171,7 +171,7 @@ Bool DirExists(const char *dname) {
Bool result = FALSE;
if (0 == stat(dname, &statbuf))
- result = (statbuf.st_mode & S_IFDIR) ? TRUE : FALSE;
+ result = S_ISDIR(statbuf.st_mode) ? TRUE : FALSE;
return (result);
}
From a2d86ce3bedaf07103f552b15d4e7f06be3a4c85 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 12:29:45 -0500
Subject: [PATCH 27/34] Define 'strdup' if not already defined
- warning: implicit declaration of function 'strdup'
[-Wimplicit-function-declaration]
- 'strdup' is not part of the C standard (but of POSIX), see
https://stackoverflow.com/questions/252782/strdup-what-does-it-do-in-c
- define 'strdup' in generic.h (as taken from that discussion) if not
defined
---
filefuncs.c | 1 +
generic.c | 14 ++++++++++++++
generic.h | 5 +++++
3 files changed, 20 insertions(+)
diff --git a/filefuncs.c b/filefuncs.c
index ffd811915..2a50324c5 100644
--- a/filefuncs.c
+++ b/filefuncs.c
@@ -14,6 +14,7 @@
#endif
#include "filefuncs.h"
+#include "generic.h"
#include "myMemory.h"
/* Note that errstr[] is externed in generic.h via filefuncs.h */
diff --git a/generic.c b/generic.c
index dc4f5bb09..e9568472c 100644
--- a/generic.c
+++ b/generic.c
@@ -368,3 +368,17 @@ void lobf(double *m, double *b, double xs[], double ys[], unsigned int n) {
*b = lobfB(xs, ys, n); // b = y-intercept
}
+/** @brief Duplicate strings. Used if `strdup` is not available.
+
+ `strdup` is not a ISO C standard, but included in the POSIX standard. That means that
+ it is not available on some compilers, e.g., travis-ci with -std=c11 flag set.
+
+ Code from https://stackoverflow.com/questions/482375/strdup-function
+*/
+char * sw_strdup(const char * s)
+{
+ size_t len = 1 + strlen(s);
+ char *p = (char*) malloc(len); // explicit cast necessary for c++ compiler when unit testing against googletest
+
+ return p ? (char*) memcpy(p, s, len) : NULL;
+}
diff --git a/generic.h b/generic.h
index 42c75ddcc..31c453eed 100644
--- a/generic.h
+++ b/generic.h
@@ -208,5 +208,10 @@ extern errstr[];
LogError(fp, m, errstr);
#endif
+#ifndef strdup
+ char * sw_strdup(const char * s);
+ #define strdup(x) sw_strdup(x)
+#endif
+
#define GENERIC_H
#endif
From fd1ea9c957fa33b9b7a110b1c6cca1b74ccf8d03 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 12:32:24 -0500
Subject: [PATCH 28/34] makefile: new target 'bint_run'
- new target 'bint_run' is same as 'make bint' plus executes the binary
in the testing/ folder
- clean up phony/non-phony targets
---
makefile | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/makefile b/makefile
index b61428f9f..a0bf1cfb8 100644
--- a/makefile
+++ b/makefile
@@ -10,6 +10,7 @@
# make bin compile the binary executable using optimizations
# make bint same as 'make bin' plus moves a copy of the binary to the
# 'testing/' folder
+# make bint_run same as 'make bint' plus executes the binary in the testing/ folder
# make lib create SOILWAT2 library
# make test compile unit tests in 'test/ folder with googletest
# make test_run run unit tests (in a previous step compiled with 'make test')
@@ -60,7 +61,6 @@ $(SHLIB) :
@rm -f $(Rpkg_objects)
-.PHONY : lib bin bint binl
lib : $(lib_target)
$(lib_target) :
@@ -73,14 +73,19 @@ bin : $(target)
$(target) : $(lib_target)
$(CC) $(CFLAGS) $(LDFLAGS) -o $(target) $(bin_sources) $(LDLIBS)
+.PHONY : bint
bint : $(target)
cp $(target) testing/$(target)
+.PHONY : bint_run
+bint_run : bint
+ ./testing/$(target) -d ./testing -f files_v31.in
-.PHONY : test_lib test test_run
- # based on section 'Generic Build Instructions' in https://github.com/google/googletest/tree/master/googletest)
- # 1) build googletest library
- # 2) compile SOILWAT2 test source file
+
+# GoogleTest:
+# based on section 'Generic Build Instructions' in https://github.com/google/googletest/tree/master/googletest)
+# 1) build googletest library
+# 2) compile SOILWAT2 test source file
lib_test : $(lib_gtest)
$(lib_gtest) :
@@ -96,16 +101,19 @@ test_run :
./$(bin_test)
-.PHONY : clean clean2 test_clean cleaner
+.PHONY : clean
clean :
@rm -f $(objects) $(bin_objects)
+.PHONY : clean2
clean2 :
@rm -f $(target) $(SHLIB) $(lib_target)
@rm -f testing/$(target)
@rm -f testing/Output/*
+.PHONY : test_clean
test_clean :
@rm -f gtest-all.o $(lib_gtest) $(bin_test)
+.PHONY : cleaner
cleaner : clean clean2 test_clean
From bda73e811191b6e970d298a423aa38d49926924e Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 12:43:44 -0500
Subject: [PATCH 29/34] Avoid yet more compile warnings
- avoid compile warnings
* warning: variable 'temp' set but not used [-Wunused-but-set-variable]
* warning: cast from pointer to integer of different size
[-Wpointer-to-int-cast]
---
SW_Output.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/SW_Output.c b/SW_Output.c
index 555774119..c2e22eced 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -3813,9 +3813,13 @@ static void sumof_ves(SW_VEGESTAB *v, SW_VEGESTAB_OUTPUTS *s, OutKey k)
*/
// just a few lines of nonsense to supress the compile warnings
- int temp;
- temp = (int) v->count + (int) s->days + (int) k;
+ int tmp1;
+ TimeInt tmp2;
+ tmp1 = (int) v->count + (int) k;
+ tmp1 += tmp1;
+ tmp2 = (TimeInt) s->days;
+ tmp2 += tmp2;
return;
}
From 1e6bca4973ba4b4be2552fd73d3dc139d6dd8a33 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 12:59:44 -0500
Subject: [PATCH 30/34] makefile: add gtest library to LDIBS instead of listing
as input file
- travis-ci (both clang and g++) and appveyor-ci error out during `make
test` with warnings such as "undefined reference to
testing::InitGoogleTest(int*, char**)'"
- maybe this is because the google test library is not correctly
linked? --> attempt to fix this by adding `-l$(gtest)` instead of
$(lib_gtest)
---
makefile | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/makefile b/makefile
index a0bf1cfb8..f606f33d8 100644
--- a/makefile
+++ b/makefile
@@ -28,6 +28,7 @@ CFLAGS = -O3 -Wall -Wextra -pedantic -std=c11
CXXFLAGS = -Wall -Wextra -std=c++11
LDFLAGS = -L.
LDLIBS = -lm -l$(target)
+gtest_ldlibs = $(LDLIBS) -l$(gtest)
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
rands.c Times.c mymemory.c filefuncs.c \
@@ -94,8 +95,8 @@ $(lib_gtest) :
ar -r $(lib_gtest) gtest-all.o
test : $(lib_gtest) $(lib_target)
- $(CXX) $(CXXFLAGS) $(LDFLAGS) -isystem ${GTEST_DIR}/include -pthread \
- $(lib_gtest) test/*.cc -o $(bin_test) $(LDLIBS)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -isystem ${GTEST_DIR}/include -pthread \
+ test/*.cc -o $(bin_test) $(gtest_ldlibs)
test_run :
./$(bin_test)
From dc4f14419b026ff895512fb84233e3c02c480396 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 13:36:46 -0500
Subject: [PATCH 31/34] makefile: fix order of libraries
- The order of libraries in LDLIBS is important for GNU gcc
(libSOILWAT2 depends on libm and thus must come first).
- The order is not important for clang.
---
makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/makefile b/makefile
index f606f33d8..1e7301fd2 100644
--- a/makefile
+++ b/makefile
@@ -27,7 +27,7 @@ uname_m = $(shell uname -m)
CFLAGS = -O3 -Wall -Wextra -pedantic -std=c11
CXXFLAGS = -Wall -Wextra -std=c++11
LDFLAGS = -L.
-LDLIBS = -lm -l$(target)
+LDLIBS = -l$(target) -lm # order of libraries is important for GNU gcc (libSOILWAT2 depends on libm)
gtest_ldlibs = $(LDLIBS) -l$(gtest)
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
From 6d4a9e0e6c91127478721903af03526c936c772a Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 13:48:17 -0500
Subject: [PATCH 32/34] Support googletest compilation in CYGWIN and GCC
Under CYGWIN googletest uses GNU extensions, i.e., `-std=c++11` is not
enough.
See google/googletest#813
---
makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/makefile b/makefile
index 1e7301fd2..a6cf5b8e8 100644
--- a/makefile
+++ b/makefile
@@ -25,7 +25,7 @@ uname_m = $(shell uname -m)
# CC = gcc
# CXX = g++
CFLAGS = -O3 -Wall -Wextra -pedantic -std=c11
-CXXFLAGS = -Wall -Wextra -std=c++11
+CXXFLAGS = -Wall -Wextra -std=gnu++11 # gnu++11 required for googletest on Windows/cygwin
LDFLAGS = -L.
LDLIBS = -l$(target) -lm # order of libraries is important for GNU gcc (libSOILWAT2 depends on libm)
gtest_ldlibs = $(LDLIBS) -l$(gtest)
From 83a6429f86d21b14e04274e54013477f0d7c5d17 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 15:35:59 -0500
Subject: [PATCH 33/34] Compile SOILWAT2 library with c++ when used for linking
to unit tests
- close #82
- this required addressing following "error: cannot increment
expression of enum type 'Months'"
- use defined values for each month instead of `typdef enum` which
doesn't allow mathematical operations (easily); then define variables
as 'TimeInt' instead of 'Months'
---
SW_VegProd.c | 2 +-
Times.c | 2 +-
Times.h | 21 +++++++++++++++++----
makefile | 16 +++++++++++-----
test/test_rands.cc | 4 ----
5 files changed, 30 insertions(+), 15 deletions(-)
diff --git a/SW_VegProd.c b/SW_VegProd.c
index 382e11a48..e44db947b 100644
--- a/SW_VegProd.c
+++ b/SW_VegProd.c
@@ -85,7 +85,7 @@ void SW_VPD_read(void) {
/* =================================================== */
SW_VEGPROD *v = &SW_VegProd;
FILE *f;
- Months mon = Jan;
+ TimeInt mon = Jan;
int x, lineno = 0;
const int line_help = 29;
RealF help_grass, help_shrub, help_tree, help_forb, help_bareGround, litt, biom, pctl, laic;
diff --git a/Times.c b/Times.c
index 3c635e278..415671074 100644
--- a/Times.c
+++ b/Times.c
@@ -166,7 +166,7 @@ TimeInt Time_lastDOY(void) {
return cum_monthdays[Dec];
}
-TimeInt Time_days_in_month(Months month) {
+TimeInt Time_days_in_month(TimeInt month) {
/* =================================================== */
return days_in_month[month];
diff --git a/Times.h b/Times.h
index 2be046fe1..23964ecbb 100644
--- a/Times.h
+++ b/Times.h
@@ -48,9 +48,22 @@
#define MAX_WEEKS 53
#define MAX_DAYS 366
-typedef enum {
- Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec, NoMonth
-} Months; /* note base0 */
+/* constants for each month; this was previously a typedef enum.
+ * Note: this has to be base0 and continuous. */
+#define Jan 0
+#define Feb 1
+#define Mar 2
+#define Apr 3
+#define May 4
+#define Jun 5
+#define Jul 6
+#define Aug 7
+#define Sep 8
+#define Oct 9
+#define Nov 10
+#define Dec 11
+#define NoMonth 12
+
typedef unsigned int TimeInt;
@@ -74,7 +87,7 @@ void Time_set_mday(const TimeInt day);
void Time_set_month(const TimeInt mon);
time_t Time_timestamp(void);
time_t Time_timestamp_now(void);
-TimeInt Time_days_in_month(Months month);
+TimeInt Time_days_in_month(TimeInt month);
TimeInt Time_lastDOY(void);
char *Time_printtime(void);
diff --git a/makefile b/makefile
index a6cf5b8e8..3a25f4e4e 100644
--- a/makefile
+++ b/makefile
@@ -28,7 +28,6 @@ CFLAGS = -O3 -Wall -Wextra -pedantic -std=c11
CXXFLAGS = -Wall -Wextra -std=gnu++11 # gnu++11 required for googletest on Windows/cygwin
LDFLAGS = -L.
LDLIBS = -l$(target) -lm # order of libraries is important for GNU gcc (libSOILWAT2 depends on libm)
-gtest_ldlibs = $(LDLIBS) -l$(gtest)
sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
rands.c Times.c mymemory.c filefuncs.c \
@@ -45,6 +44,7 @@ Rpkg_objects = $(objects) SW_R_lib.o SW_R_init.o
target = SOILWAT2
bin_test = sw_test
lib_target = lib$(target).a
+lib_target++ = lib$(target)++.a
SHLIB = r$(target)$(SHLIB_EXT)
gtest = gtest
@@ -53,7 +53,7 @@ GTEST_DIR = googletest/googletest
GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)
GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
$(GTEST_DIR)/include/gtest/internal/*.h
-
+gtest_LDLIBS = -l$(gtest) -l$(target)++ -lm
all: $(SHLIB)
@@ -69,6 +69,12 @@ $(lib_target) :
ar -rcsu $(lib_target) $(objects)
@rm -f $(objects)
+$(lib_target++) :
+ $(CXX) $(CXXFLAGS) -c $(sources)
+ ar -rcsu $(lib_target++) $(objects)
+ @rm -f $(objects)
+
+
bin : $(target)
$(target) : $(lib_target)
@@ -94,9 +100,9 @@ $(lib_gtest) :
-pthread -c ${GTEST_DIR}/src/gtest-all.cc
ar -r $(lib_gtest) gtest-all.o
-test : $(lib_gtest) $(lib_target)
+test : $(lib_gtest) $(lib_target++)
$(CXX) $(CXXFLAGS) $(LDFLAGS) -isystem ${GTEST_DIR}/include -pthread \
- test/*.cc -o $(bin_test) $(gtest_ldlibs)
+ test/*.cc -o $(bin_test) $(gtest_LDLIBS)
test_run :
./$(bin_test)
@@ -108,7 +114,7 @@ clean :
.PHONY : clean2
clean2 :
- @rm -f $(target) $(SHLIB) $(lib_target)
+ @rm -f $(target) $(SHLIB) $(lib_target) $(lib_target++)
@rm -f testing/$(target)
@rm -f testing/Output/*
diff --git a/test/test_rands.cc b/test/test_rands.cc
index 4bc08912f..8a99cad61 100644
--- a/test/test_rands.cc
+++ b/test/test_rands.cc
@@ -15,13 +15,9 @@
#include
#include
#include "../generic.h"
-#include "../generic.c"
#include "../myMemory.h"
-#include "../mymemory.c"
#include "../filefuncs.h"
-#include "../filefuncs.c"
#include "../rands.h"
-#include "../rands.c"
namespace {
From 9aa08d20a74fdd31dc086540ec2580f318f1a021 Mon Sep 17 00:00:00 2001
From: dschlaep
Date: Wed, 22 Nov 2017 16:09:16 -0500
Subject: [PATCH 34/34] We still cannot include SW_Output.c when unit testing
- now close #82
We still cannot include SW_Output.c when unit testing:
* "error: cannot increment expression of enum type" (e.g., OutKey,
OutPeriod)
* "error: assigning to 'OutKey' from incompatible type 'int'", and
similar cases
--> for now, exclude SW_Output.c (see new issue #85), work on fixing
the errors under c++ and then
- address c++ compile "warning: ISO C++11 does not allow conversion
from string literal to 'char *'"
--> don't define such variables as "char *" but instead as "char const
*" (see
https://stackoverflow.com/questions/20944784/why-is-conversion-from-stri
ng-constant-to-char-valid-in-c-but-invalid-in-c#20944858)
---
SW_Main_lib.c | 3 ++-
SW_Output.c | 24 ++++++++++++------------
makefile | 19 +++++++++++++++----
3 files changed, 29 insertions(+), 17 deletions(-)
diff --git a/SW_Main_lib.c b/SW_Main_lib.c
index b625ef22e..0c874a668 100644
--- a/SW_Main_lib.c
+++ b/SW_Main_lib.c
@@ -89,7 +89,8 @@ void init_args(int argc, char **argv) {
* -q=quiet, don't print "Check logfile"
* at end of program.
*/
- char str[1024], *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
+ char str[1024];
+ char const *opts[] = { "-d", "-f", "-e", "-q" }; /* valid options */
int valopts[] = { 1, 1, 0, 0 }; /* indicates options with values */
/* 0=none, 1=required, -1=optional */
int i, /* looper through all cmdline arguments */
diff --git a/SW_Output.c b/SW_Output.c
index c2e22eced..22986b9d4 100644
--- a/SW_Output.c
+++ b/SW_Output.c
@@ -238,7 +238,7 @@ static TimeInt tOffset; /* 1 or 0 means we're writing previous or current period
/* These MUST be in the same order as enum OutKey in
* SW_Output.h */
-static char *key2str[] =
+static char const *key2str[] =
{ SW_WETHR, SW_TEMP, SW_PRECIP, SW_SOILINF, SW_RUNOFF, SW_ALLH2O, SW_VWCBULK,
SW_VWCMATRIC, SW_SWCBULK, SW_SWABULK, SW_SWAMATRIC, SW_SWPMATRIC,
SW_SURFACEW, SW_TRANSP, SW_EVAPSOIL, SW_EVAPSURFACE, SW_INTERCEPTION,
@@ -252,9 +252,9 @@ static ObjType key2obj[] =
{ eWTH, eWTH, eWTH, eWTH, eWTH, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC,
eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC, eSWC,
eSWC, eVES, eVES };
-static char *pd2str[] =
+static char const *pd2str[] =
{ SW_DAY, SW_WEEK, SW_MONTH, SW_YEAR };
-static char *styp2str[] =
+static char const *styp2str[] =
{ SW_SUM_OFF, SW_SUM_SUM, SW_SUM_AVG, SW_SUM_FNL };
/* =================================================== */
@@ -301,7 +301,7 @@ static OutPeriod str2period(char *s)
{
/* --------------------------------------------------- */
IntUS pd;
- for (pd = 0; Str_CompareI(s, pd2str[pd]) && pd < SW_OUTNPERIODS; pd++) ;
+ for (pd = 0; Str_CompareI(s, (char *)pd2str[pd]) && pd < SW_OUTNPERIODS; pd++) ;
return (OutPeriod) pd;
}
@@ -311,7 +311,7 @@ static OutKey str2key(char *s)
/* --------------------------------------------------- */
IntUS key;
- for (key = 0; key < SW_OUTNKEYS && Str_CompareI(s, key2str[key]); key++) ;
+ for (key = 0; key < SW_OUTNKEYS && Str_CompareI(s, (char *)key2str[key]); key++) ;
if (key == SW_OUTNKEYS)
{
LogError(logfp, LOGFATAL, "%s : Invalid key (%s) in %s", SW_F_name(eOutput), s);
@@ -324,7 +324,7 @@ static OutSum str2stype(char *s)
/* --------------------------------------------------- */
IntUS styp;
- for (styp = eSW_Off; styp < SW_NSUMTYPES && Str_CompareI(s, styp2str[styp]); styp++) ;
+ for (styp = eSW_Off; styp < SW_NSUMTYPES && Str_CompareI(s, (char *)styp2str[styp]); styp++) ;
if (styp == SW_NSUMTYPES)
{
LogError(logfp, LOGFATAL, "%s : Invalid summary type (%s)\n", SW_F_name(eOutput), s);
@@ -528,7 +528,7 @@ void SW_OUT_read(void)
x = sscanf(inbuf, "%s %s %s %d %s %s", keyname, sumtype, period, &first,
last, outfile);
- if (Str_CompareI(keyname, "TIMESTEP") == 0) // condition to read in the TIMESTEP line in outsetup.in
+ if (Str_CompareI(keyname, (char *)"TIMESTEP") == 0) // condition to read in the TIMESTEP line in outsetup.in
{
numPeriod = sscanf(inbuf, "%s %s %s %s %s", keyname, timeStep[0],
timeStep[1], timeStep[2], timeStep[3]); // need to rescan the line because you are looking for all strings, unlike the original scan
@@ -541,7 +541,7 @@ void SW_OUT_read(void)
{ // If the line TIMESTEP is present, only need to read in five variables not six, so re read line.
if (x < 6)
{
- if (Str_CompareI(keyname, "OUTSEP") == 0)
+ if (Str_CompareI(keyname, (char *)"OUTSEP") == 0)
{
switch ((int) *sumtype)
{
@@ -627,7 +627,7 @@ void SW_OUT_read(void)
SW_Output[k].period = str2period(Str_ToUpper(period, ext));
SW_Output[k].first_orig = first;
SW_Output[k].last_orig =
- !Str_CompareI("END", last) ? 366 : atoi(last);
+ !Str_CompareI("END", (char *)last) ? 366 : atoi(last);
if (SW_Output[k].last_orig == 0)
{
CloseFile(&f);
@@ -1642,7 +1642,7 @@ static void get_vwcBulk(void)
LyrIndex i;
SW_SOILWAT *v = &SW_Soilwat;
OutPeriod pd = SW_Output[eSW_VWCBulk].period;
- RealD *val = malloc(sizeof(RealD) * SW_Site.n_layers);
+ RealD *val = (RealD *) malloc(sizeof(RealD) * SW_Site.n_layers);
ForEachSoilLayer(i)
val[i] = SW_MISSING;
@@ -1740,7 +1740,7 @@ static void get_vwcMatric(void)
SW_SOILWAT *v = &SW_Soilwat;
OutPeriod pd = SW_Output[eSW_VWCMatric].period;
RealD convert;
- RealD *val = malloc(sizeof(RealD) * SW_Site.n_layers);
+ RealD *val = (RealD *) malloc(sizeof(RealD) * SW_Site.n_layers);
ForEachSoilLayer(i)
val[i] = SW_MISSING;
@@ -2343,7 +2343,7 @@ static void get_transp(void)
LyrIndex i;
SW_SOILWAT *v = &SW_Soilwat;
OutPeriod pd = SW_Output[eSW_Transp].period;
- RealD *val = malloc(sizeof(RealD) * SW_Site.n_layers);
+ RealD *val = (RealD *) malloc(sizeof(RealD) * SW_Site.n_layers);
#if !defined(STEPWAT) && !defined(RSOILWAT)
char str[OUTSTRLEN];
#elif defined(STEPWAT)
diff --git a/makefile b/makefile
index 3a25f4e4e..dc863f67a 100644
--- a/makefile
+++ b/makefile
@@ -36,6 +36,17 @@ sources = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
SW_VegProd.c SW_Flow_lib.c SW_Flow.c
objects = $(sources:.c=.o)
+# Unfortunately, we cannot include 'SW_Output.c' currently because
+# - cannot increment expression of enum type (e.g., OutKey, OutPeriod)
+# - assigning to 'OutKey' from incompatible type 'int'
+sources_tests = SW_Main_lib.c SW_VegEstab.c SW_Control.c generic.c \
+ rands.c Times.c mymemory.c filefuncs.c \
+ SW_Files.c SW_Model.c SW_Site.c SW_SoilWater.c \
+ SW_Markov.c SW_Weather.c SW_Sky.c\
+ SW_VegProd.c SW_Flow_lib.c SW_Flow.c
+objects_tests = $(sources_tests:.c=.o)
+
+
bin_sources = SW_Main.c
bin_objects = $(bin_sources:.c=.o)
@@ -70,8 +81,8 @@ $(lib_target) :
@rm -f $(objects)
$(lib_target++) :
- $(CXX) $(CXXFLAGS) -c $(sources)
- ar -rcsu $(lib_target++) $(objects)
+ $(CXX) $(CXXFLAGS) -c $(sources_tests)
+ ar -rcsu $(lib_target++) $(objects_tests)
@rm -f $(objects)
@@ -81,7 +92,7 @@ $(target) : $(lib_target)
$(CC) $(CFLAGS) $(LDFLAGS) -o $(target) $(bin_sources) $(LDLIBS)
.PHONY : bint
-bint : $(target)
+bint : bin
cp $(target) testing/$(target)
.PHONY : bint_run
@@ -104,7 +115,7 @@ test : $(lib_gtest) $(lib_target++)
$(CXX) $(CXXFLAGS) $(LDFLAGS) -isystem ${GTEST_DIR}/include -pthread \
test/*.cc -o $(bin_test) $(gtest_LDLIBS)
-test_run :
+test_run : test
./$(bin_test)