aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Ranke <jranke@uni-bremen.de>2017-01-30 18:04:53 +0100
committerJohannes Ranke <jranke@uni-bremen.de>2017-01-30 18:04:53 +0100
commit03bda75d343402dad99df2aad55611e11279b833 (patch)
tree5801b2facfa7c731ad35b7378d6b2b72dee66d5c
parent39d202b0a0f833c756bc98fb4961483de1b15353 (diff)
Correct psm file in the example with metabolites
-rw-r--r--ChangeLog15
-rw-r--r--R/PELMO_runs.R30
-rw-r--r--README.md2
-rw-r--r--docs/index.html1
-rw-r--r--docs/reference/PELMO_path.html2
-rw-r--r--docs/reference/PELMO_runs.html75
-rw-r--r--inst/testdata/Pesticide_D.psm68
-rw-r--r--inst/testdata/Pesticide_D_1_May_every_other_year_mets.psm336
-rw-r--r--inst/testdata/Pesticide_D_1_day_pre_em_every_third_year.psm64
-rw-r--r--man/PELMO_runs.Rd27
10 files changed, 613 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 6923efa..9cb0481 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+commit 39d202b0a0f833c756bc98fb4961483de1b15353
+Author: Johannes Ranke <jranke@uni-bremen.de>
+Date: 2017-01-30 16:14:15 +0100
+
+ Ignore windows binary builds in git and in R package
+
+commit e6bb9654679f43af6958d6e28cb5206abb91d574
+Author: Johannes Ranke <jranke@uni-bremen.de>
+Date: 2017-01-30 16:10:30 +0100
+
+ Test reproducing the FOCUS Summary information
+
+ generated from the FOCUS PELMO GUI, as copied into the text files
+ in the testdata directory.
+
commit 80b451ddb4e749041c2b216603274a012dc83d59
Author: Johannes Ranke <jranke@uni-bremen.de>
Date: 2017-01-30 14:28:23 +0100
diff --git a/R/PELMO_runs.R b/R/PELMO_runs.R
index 3d4f03b..e5a78ff 100644
--- a/R/PELMO_runs.R
+++ b/R/PELMO_runs.R
@@ -12,7 +12,7 @@
#' run directory, holding the results for all FOCUS periods, equivalent to
#' the period.plm file generated by the FOCUS PELMO GUI.
#'
-#' @return If evaluate is TRUE, a list of lists of data frames holding the
+#' @return If evaluate is TRUE, a list of lists of matrices holding the
#' PEC data.
#' @param runs A list of lists. Each inner lists has an element named 'psm'
#' that holds the psm string, and elements named using three letter crop acronyms,
@@ -29,7 +29,31 @@
#' @references PELMO.installeR \url{https://jranke.github.io/PELMO.installeR}
#'
#' Wine \url{https://winehq.org}
+#'
+#' PELMO test results \url{http://esdac.jrc.ec.europa.eu/public_path/projects_data/focus/gw/models/pelmo/test-results/test_results_FOCUS_PELMO_5_5_3.doc}
#' @export
+#' @examples
+#' # Reproduce the official test results for annual application of Pesticide D
+#' # to winter cereals at the day before emergence
+#' runs_1 <- list(
+#' list(psm = 'Pesticide_D',
+#' win = c("Cha", "Ham", "Jok", "Kre", "Oke", "Pia", "Por", "Sev", "Thi")),
+#' list(psm = 'Pesticide_D_1_day_pre_em_every_third_year',
+#' pot = c("Cha", "Ham", "Jok", "Kre", "Oke", "Pia", "Por", "Sev", "Thi")))
+#' time_1 <- system.time(
+#' PECgw_1 <- PELMO_runs(runs_1, psm_dir = system.file("testdata", package = "pfm"),
+#' cores = 6, overwrite = TRUE)
+#' )
+#' print(PECgw_1)
+#' # We get exactly the same PECgw values (on Linux, calling PELMO using Wine).
+#' print(time_1)
+#'
+#' # Demonstrate some results with metabolites.
+#' runs_2 <- list(list(psm = 'Pesticide_D_1_May_every_other_year_mets',
+#' win = c("Cha", "Ham", "Kre")))
+#' PECgw_2 <- PELMO_runs(runs_2, psm_dir = system.file("testdata", package = "pfm"),
+#' cores = 3, overwrite = TRUE)
+#' print(PECgw_2)
PELMO_runs <- function(runs, psm_dir = ".", version = "5.5.3", PELMO_base = "auto",
execute = TRUE, cores = getOption("mc.cores", 2L),
evaluate = TRUE, overwrite = FALSE)
@@ -142,13 +166,11 @@ PELMO_runs <- function(runs, psm_dir = ".", version = "5.5.3", PELMO_base = "aut
# the exe file from this directory
file.copy(file.path(PELMO_base, "lf90.eer"), run_dir)
}
- run_list[[7]]
- setup_run(run_list[[7]])
lapply(run_list, setup_run)
if (execute) {
- run_PELMO(runs, version = version, PELMO_base = PELMO_base)
+ run_PELMO(runs, version = version, PELMO_base = PELMO_base, cores = cores)
}
if (evaluate) {
diff --git a/README.md b/README.md
index 3e7c869..98529e6 100644
--- a/README.md
+++ b/README.md
@@ -41,3 +41,5 @@ One recent nice example of the usage of this package is the visualisation
of a time weighted average for a sawtooth curve obtained from several overlays
of mkinfit predictions as shown [here](http://jranke.github.io/pfm/reference/plot.one_box.html).
+Another, even more recent example shows how FOCUS PELMO can be run in parallel under Linux
+as shown [here](http://jranke.github.io/pfm/reference/PELMO_runs.html).
diff --git a/docs/index.html b/docs/index.html
index db22eb0..0c53fe9 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -75,6 +75,7 @@ this program. If not, see &lt;http:<span class="er">//</span>www.gnu.org/license
<h2 class="hasAnchor">
<a href="#examples" class="anchor"> </a>Examples</h2>
<p>One recent nice example of the usage of this package is the visualisation of a time weighted average for a sawtooth curve obtained from several overlays of mkinfit predictions as shown <a href="http://jranke.github.io/pfm/reference/plot.one_box.html">here</a>.</p>
+<p>Another, even more recent example shows how FOCUS PELMO can be run in parallel under Linux as shown <a href="http://jranke.github.io/pfm/reference/PELMO_runs.html">here</a>.</p>
</div>
</div>
</div>
diff --git a/docs/reference/PELMO_path.html b/docs/reference/PELMO_path.html
index 79aa89d..ab24341 100644
--- a/docs/reference/PELMO_path.html
+++ b/docs/reference/PELMO_path.html
@@ -73,7 +73,7 @@
<p>Create a path of run directories as the PELMO GUI does</p>
- <pre><span class='fu'>PELMO_path</span>(<span class='no'>psm</span>, <span class='no'>crop</span>, <span class='no'>scenario</span>)</pre>
+ <pre><span class='fu'>PELMO_path</span>(<span class='no'>psm</span>, <span class='no'>crop</span>, <span class='kw'>scenario</span> <span class='kw'>=</span> <span class='fl'>NA</span>)</pre>
<h2 class="hasAnchor" id="arguments"><a class="anchor" href="#arguments"></a> Arguments</h2>
<dl class="dl-horizontal">
diff --git a/docs/reference/PELMO_runs.html b/docs/reference/PELMO_runs.html
index 03b7b7b..e299b7c 100644
--- a/docs/reference/PELMO_runs.html
+++ b/docs/reference/PELMO_runs.html
@@ -112,20 +112,93 @@ as used in <code><a href='FOCUS_GW_scenarios_2012.html'>FOCUS_GW_scenarios_2012<
<dd>Should an existing run directories be overwritten</dd>
</dl>
+ <h2 class="hasAnchor" id="value"><a class="anchor" href="#value"></a>Value</h2>
+
+ <p>If evaluate is TRUE, a list of lists of matrices holding the
+ PEC data.</p>
+
+ <h2 class="hasAnchor" id="details"><a class="anchor" href="#details"></a>Details</h2>
+
+ <p>As a side effect, an R data file (period_pfm.rda) is generated in each
+run directory, holding the results for all FOCUS periods, equivalent to
+the period.plm file generated by the FOCUS PELMO GUI.</p>
+
<h2 class="hasAnchor" id="references"><a class="anchor" href="#references"></a>References</h2>
<p>PELMO.installeR <a href = 'https://jranke.github.io/PELMO.installeR'>https://jranke.github.io/PELMO.installeR</a></p>
<p>Wine <a href = 'https://winehq.org'>https://winehq.org</a></p>
+ <p>PELMO test results <a href = 'http://esdac.jrc.ec.europa.eu/public_path/projects_data/focus/gw/models/pelmo/test-results/test_results_FOCUS_PELMO_5_5_3.doc'>http://esdac.jrc.ec.europa.eu/public_path/projects_data/focus/gw/models/pelmo/test-results/test_results_FOCUS_PELMO_5_5_3.doc</a></p>
+ <h2 class="hasAnchor" id="examples"><a class="anchor" href="#examples"></a>Examples</h2>
+ <pre class="examples"><div class='input'><span class='co'># Reproduce the official test results for annual application of Pesticide D</span>
+<span class='co'># to winter cereals at the day before emergence</span>
+<span class='no'>runs_1</span> <span class='kw'>&lt;-</span> <span class='fu'>list</span>(
+ <span class='fu'>list</span>(<span class='kw'>psm</span> <span class='kw'>=</span> <span class='st'>'Pesticide_D'</span>,
+ <span class='kw'>win</span> <span class='kw'>=</span> <span class='fu'>c</span>(<span class='st'>"Cha"</span>, <span class='st'>"Ham"</span>, <span class='st'>"Jok"</span>, <span class='st'>"Kre"</span>, <span class='st'>"Oke"</span>, <span class='st'>"Pia"</span>, <span class='st'>"Por"</span>, <span class='st'>"Sev"</span>, <span class='st'>"Thi"</span>)),
+ <span class='fu'>list</span>(<span class='kw'>psm</span> <span class='kw'>=</span> <span class='st'>'Pesticide_D_1_day_pre_em_every_third_year'</span>,
+ <span class='kw'>pot</span> <span class='kw'>=</span> <span class='fu'>c</span>(<span class='st'>"Cha"</span>, <span class='st'>"Ham"</span>, <span class='st'>"Jok"</span>, <span class='st'>"Kre"</span>, <span class='st'>"Oke"</span>, <span class='st'>"Pia"</span>, <span class='st'>"Por"</span>, <span class='st'>"Sev"</span>, <span class='st'>"Thi"</span>)))
+<span class='no'>time_1</span> <span class='kw'>&lt;-</span> <span class='fu'>system.time</span>(
+ <span class='no'>PECgw_1</span> <span class='kw'>&lt;-</span> <span class='fu'>PELMO_runs</span>(<span class='no'>runs_1</span>, <span class='kw'>psm_dir</span> <span class='kw'>=</span> <span class='fu'>system.file</span>(<span class='st'>"testdata"</span>, <span class='kw'>package</span> <span class='kw'>=</span> <span class='st'>"pfm"</span>),
+ <span class='kw'>cores</span> <span class='kw'>=</span> <span class='fl'>6</span>, <span class='kw'>overwrite</span> <span class='kw'>=</span> <span class='fl'>TRUE</span>)
+)
+<span class='fu'>print</span>(<span class='no'>PECgw_1</span>)</div><div class='output co'>#&gt; $Pesticide_D
+#&gt; $Pesticide_D$win
+#&gt; FOCUS DUMMY D
+#&gt; Cha 0.025
+#&gt; Ham 1.621
+#&gt; Jok 0.388
+#&gt; Kre 0.467
+#&gt; Oke 1.608
+#&gt; Pia 0.848
+#&gt; Por 2.386
+#&gt; Sev 0.009
+#&gt; Thi 0.030
+#&gt;
+#&gt;
+#&gt; $Pesticide_D_1_day_pre_em_every_third_year
+#&gt; $Pesticide_D_1_day_pre_em_every_third_year$pot
+#&gt; FOCUS DUMMY D
+#&gt; Cha 0.010
+#&gt; Ham 0.014
+#&gt; Jok 0.009
+#&gt; Kre 0.027
+#&gt; Oke 0.085
+#&gt; Pia 0.051
+#&gt; Por 0.021
+#&gt; Sev 0.000
+#&gt; Thi 0.001
+#&gt;
+#&gt; </div><div class='input'><span class='co'># We get exactly the same PECgw values (on Linux, calling PELMO using Wine).</span>
+<span class='fu'>print</span>(<span class='no'>time_1</span>)</div><div class='output co'>#&gt; User System verstrichen
+#&gt; 231.892 0.496 57.056 </div><div class='input'>
+<span class='co'># Demonstrate some results with metabolites.</span>
+<span class='no'>runs_2</span> <span class='kw'>&lt;-</span> <span class='fu'>list</span>(<span class='fu'>list</span>(<span class='kw'>psm</span> <span class='kw'>=</span> <span class='st'>'Pesticide_D_1_May_every_other_year_mets'</span>,
+ <span class='kw'>win</span> <span class='kw'>=</span> <span class='fu'>c</span>(<span class='st'>"Cha"</span>, <span class='st'>"Ham"</span>, <span class='st'>"Kre"</span>)))
+<span class='no'>PECgw_2</span> <span class='kw'>&lt;-</span> <span class='fu'>PELMO_runs</span>(<span class='no'>runs_2</span>, <span class='kw'>psm_dir</span> <span class='kw'>=</span> <span class='fu'>system.file</span>(<span class='st'>"testdata"</span>, <span class='kw'>package</span> <span class='kw'>=</span> <span class='st'>"pfm"</span>),
+ <span class='kw'>cores</span> <span class='kw'>=</span> <span class='fl'>3</span>, <span class='kw'>overwrite</span> <span class='kw'>=</span> <span class='fl'>TRUE</span>)
+<span class='fu'>print</span>(<span class='no'>PECgw_2</span>)</div><div class='output co'>#&gt; $Pesticide_D_1_May_every_other_year_mets
+#&gt; $Pesticide_D_1_May_every_other_year_mets$win
+#&gt; FOCUS DUMMY D M1 M2
+#&gt; Cha 0.001 126.195 0.000
+#&gt; Ham 0.054 82.196 0.001
+#&gt; Kre 0.103 75.494 0.001
+#&gt;
+#&gt; </div></pre>
</div>
<div class="col-md-3 hidden-xs hidden-sm" id="sidebar">
<h2>Contents</h2>
<ul class="nav nav-pills nav-stacked">
<li><a href="#arguments">Arguments</a></li>
+ <li><a href="#value">Value</a></li>
+
+ <li><a href="#details">Details</a></li>
+
<li><a href="#references">References</a></li>
- </ul>
+
+ <li><a href="#examples">Examples</a></li>
+ </ul>
</div>
</div>
diff --git a/inst/testdata/Pesticide_D.psm b/inst/testdata/Pesticide_D.psm
new file mode 100644
index 0000000..8204f3c
--- /dev/null
+++ b/inst/testdata/Pesticide_D.psm
@@ -0,0 +1,68 @@
+<COMMENT>
+Pesticide D, 1 day before emergence <FOCUS DUMMY D>
+<END COMMENT>
+<NUMBER OF SOIL HORIZONS>
+ 0
+<END NUMBER OF SOIL HORIZONS>
+<APPLICATION>
+ 1 0 9 <number of locations absolute app/relative app>
+026 <number of application location>
+-01 00 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 02 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 04 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 06 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 08 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 10 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 12 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 14 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 16 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 18 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 20 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 22 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 24 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 26 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+ 1 <pesticide appl. flag: 1=soil 2 =linear 3=exp. foliar 4=manually
+<END APPLICATION>
+<FLAGS>
+ 1 1 <henry(0=direct 1=calc.) kd_flag(0=direct 1=calc.)>
+<END FLAGS>
+<VOLATILIZATION>
+<henry solub. molmass vap.press diff air depth volat. Hv Temperature>
+ 3.33E-04 90 300 1.00E-04 0.0498 0.1 98400 20
+ 6.67E-10 180 300 4.00E-04 0.0498 0.1 98400 30
+<END VOLATILIZATION>
+<PLANT UPTAKE>
+ 0.5 <plant uptake factor
+<END PLANT UPTAKE>
+<DEGRADATION>
+<degrate degtemp q10 moist-abs moist-rel moist-exp rel deg neq sites
+ 0.00E+00 0 0 0 0 0 0 <Met A1>
+ 0.00E+00 20 2 19 0 0 0 <Met B1>
+ 0.00E+00 20 2 19 0 0 0 <Met C1>
+ 0.00E+00 20 2 19 0 0 0 <Met D1>
+ 0.0346570 20 2.2 0 100 0.7 0 <BR/CO2>
+ 0 <0 = degradation according to degradation factors, 1 = constant with depth,2 individual,3 = degradation according to degradation factors, 4 = constant with depth,5 individual, >2 deg in liquid phase only)
+<PHOTODEGRADATION>
+<rate 1/n> <I_Ref W/mē>
+ 0 500 0 0 0 0 0 0 0 0
+<END DEGRADATION>
+<ADSORPTION>
+<Koc-value Fr.exp.Koc pH pKa limit for Freundl. ann.incr.> <k_doc> <% change> KOC2 pH2 f_neq kdes>
+ 60 0.9 -99 20 0 0 0 1 -99 -99 0 0
+<END ADSORPTION>
+<DEPTH DEPENDENT SORPTION AND TRANSFORMATION VALUES>
+<Kd Fr.exp. Met A1 Met B1 Met C1 Met D1 BR/CO2 >
+<END DEPTH DEPENDENT>
+<END PSM>
diff --git a/inst/testdata/Pesticide_D_1_May_every_other_year_mets.psm b/inst/testdata/Pesticide_D_1_May_every_other_year_mets.psm
new file mode 100644
index 0000000..cf91533
--- /dev/null
+++ b/inst/testdata/Pesticide_D_1_May_every_other_year_mets.psm
@@ -0,0 +1,336 @@
+<COMMENT>
+Pesticide D, 1 May C H every other year <FOCUS DUMMY D>
+<END COMMENT>
+<NUMBER OF SOIL HORIZONS>
+ 0
+<END NUMBER OF SOIL HORIZONS>
+<APPLICATION>
+ 10 0 0 <number of locations absolute app/relative app>
+022 <number of application location>
+01 01 01 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 02 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 03 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 04 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 05 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 06 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 07 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 08 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 09 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 10 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 11 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 12 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 13 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 14 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 15 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 16 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 17 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 18 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 19 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 20 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 21 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 01 22 0 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 C <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 H <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 J <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 K <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 N <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 P <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 O <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 S <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+023 T <number of application location>
+01 05 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 03 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 05 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 09 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 11 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 15 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 17 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 21 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 23 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 27 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 29 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 33 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 35 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 39 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 41 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+01 05 45 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+ 1 <pesticide appl. flag: 1=soil 2 =linear 3=exp. foliar 4=manually
+<END APPLICATION>
+<FLAGS>
+ 1 1 <henry(0=direct 1=calc.) kd_flag(0=direct 1=calc.)>
+<END FLAGS>
+<VOLATILIZATION>
+<henry solub. molmass vap.press diff air depth volat. Hv Temperature>
+ 3.33E-04 90 300 1.00E-04 0.0498 0.1 98400 20
+ 6.67E-10 180 300 4.00E-04 0.0498 0.1 98400 30
+<END VOLATILIZATION>
+<PLANT UPTAKE>
+ 0.5 <plant uptake factor
+<END PLANT UPTAKE>
+<DEGRADATION>
+<degrate degtemp q10 moist-abs moist-rel moist-exp rel deg neq sites
+ 0.0277260 20 2.2 0 100 0.7 0 <Met A1>
+ 0.0069310 20 2.2 0 100 0.7 0 <Met B1>
+ 0.00E+00 20 2 19 0 0 0 <Met C1>
+ 0.00E+00 20 2 19 0 0 0 <Met D1>
+ 0.00E+00 20 2.2 0 100 0.7 0 <BR/CO2>
+ 0 <0 = degradation according to degradation factors, 1 = constant with depth,2 individual,3 = degradation according to degradation factors, 4 = constant with depth,5 individual, >2 deg in liquid phase only)
+<PHOTODEGRADATION>
+<rate 1/n> <I_Ref W/mē>
+ 0 500 0 0 0 0 0 0 0 0
+<END DEGRADATION>
+<ADSORPTION>
+<Koc-value Fr.exp.Koc pH pKa limit for Freundl. ann.incr.> <k_doc> <% change> KOC2 pH2 f_neq kdes>
+ 60 0.9 -99 20 0 0 0 1 -99 -99 0 0
+<END ADSORPTION>
+<DEPTH DEPENDENT SORPTION AND TRANSFORMATION VALUES>
+<Kd Fr.exp. Met A1 Met B1 Met C1 Met D1 BR/CO2 >
+<END DEPTH DEPENDENT>
+###############################################
+<COMMENT>
+METABOLITE A1 M1
+<END COMMENT>
+<FLAGS>
+ 1 <kd_flag(0=direct 1=calc.)>
+<END FLAGS>
+<MOLMASS>
+ 200
+<END MOLMASS>
+<PLANT UPTAKE>
+ 0 <plant uptake factor>
+<END PLANT UPTAKE>
+<DEGRADATION>
+<degrate degtemp q10 moist-abs moist-rel moist-exp <rel deg in neq sites>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met B1>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met A2>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met B2>
+ 0.0023100 20 2.2 0 100 0.7 0 <BR/CO2>
+ 0 <0 = degradation according to degradation factors, 1 = constant with depth,2 individual,3 = degradation according to degradation factors, 4 = constant with depth,5 individual, >2 deg in liquid phase only)
+<END DEGRADATION>
+<ADSORPTION>
+<Koc-value Fr.exp.Koc pH pKa limit for Freundl. ann.incr.> <k_doc> <% change> KOC2 pH2 f_neq kdes>
+10 0.9 -99 20 0.01 0 0 1 -99 -99 0 0
+<END ADSORPTION>
+<DEPTH DEPENDENT SORPTION AND TRANSFORMATION VALUES>
+<Kd Fr.exp. Met B1 Met A2 Met B2 BR/CO2 >
+<END DEPTH DEPENDENT>
+###############################################
+<COMMENT>
+METABOLITE B1 M2
+<END COMMENT>
+<FLAGS>
+ 1 <kd_flag(0=direct 1=calc.)>
+<END FLAGS>
+<MOLMASS>
+ 200
+<END MOLMASS>
+<PLANT UPTAKE>
+ 0 <plant uptake factor>
+<END PLANT UPTAKE>
+<DEGRADATION>
+<degrate degtemp q10 moist-abs moist-rel moist-exp <rel deg in neq sites>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met C1>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met B2>
+ 0.00E+00 20 2.58 0 100 0.7 0 <Met C2>
+ 0.0693150 20 2.2 0 100 0.7 0 <BR/CO2>
+ 0 <0 = degradation according to degradation factors, 1 = constant with depth,2 individual,3 = degradation according to degradation factors, 4 = constant with depth,5 individual, >2 deg in liquid phase only)
+<END DEGRADATION>
+<ADSORPTION>
+<Koc-value Fr.exp.Koc pH pKa limit for Freundl. ann.incr.> <k_doc> <% change> KOC2 pH2 f_neq kdes>
+1000 0.9 -99 20 0.01 0 0 1 -99 -99 0 0
+<END ADSORPTION>
+<DEPTH DEPENDENT SORPTION AND TRANSFORMATION VALUES>
+<Kd Fr.exp. Met C1 Met B2 Met C2 BR/CO2 >
+<END DEPTH DEPENDENT>
+<END PSM>
diff --git a/inst/testdata/Pesticide_D_1_day_pre_em_every_third_year.psm b/inst/testdata/Pesticide_D_1_day_pre_em_every_third_year.psm
new file mode 100644
index 0000000..c6f5945
--- /dev/null
+++ b/inst/testdata/Pesticide_D_1_day_pre_em_every_third_year.psm
@@ -0,0 +1,64 @@
+<COMMENT>
+Pesticide D, 1 day before emergence <FOCUS DUMMY D>
+<END COMMENT>
+<NUMBER OF SOIL HORIZONS>
+ 0
+<END NUMBER OF SOIL HORIZONS>
+<APPLICATION>
+ 1 0 9 <number of locations absolute app/relative app>
+022 <number of application location>
+-01 00 01 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 04 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 07 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 10 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 13 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 16 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 19 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 22 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 25 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 28 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 31 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 34 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 37 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 40 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 43 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 46 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 49 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 52 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 55 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 58 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 61 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+-01 00 64 1 0 0 0 0 <day month year app_rate app_depth frpex time>
+ 1 <pesticide appl. flag: 1=soil 2 =linear 3=exp. foliar 4=manually
+<END APPLICATION>
+<FLAGS>
+ 1 1 <henry(0=direct 1=calc.) kd_flag(0=direct 1=calc.)>
+<END FLAGS>
+<VOLATILIZATION>
+<henry solub. molmass vap.press diff air depth volat. Hv Temperature>
+ 3.33E-04 90 300 1.00E-04 0.0498 0.1 98400 20
+ 6.67E-10 180 300 4.00E-04 0.0498 0.1 98400 30
+<END VOLATILIZATION>
+<PLANT UPTAKE>
+ 0.5 <plant uptake factor
+<END PLANT UPTAKE>
+<DEGRADATION>
+<degrate degtemp q10 moist-abs moist-rel moist-exp rel deg neq sites
+ 0.00E+00 0 0 0 0 0 0 <Met A1>
+ 0.00E+00 20 2 19 0 0 0 <Met B1>
+ 0.00E+00 20 2 19 0 0 0 <Met C1>
+ 0.00E+00 20 2 19 0 0 0 <Met D1>
+ 0.0346570 20 2.2 0 100 0.7 0 <BR/CO2>
+ 0 <0 = degradation according to degradation factors, 1 = constant with depth,2 individual,3 = degradation according to degradation factors, 4 = constant with depth,5 individual, >2 deg in liquid phase only)
+<PHOTODEGRADATION>
+<rate 1/n> <I_Ref W/mē>
+ 0 500 0 0 0 0 0 0 0 0
+<END DEGRADATION>
+<ADSORPTION>
+<Koc-value Fr.exp.Koc pH pKa limit for Freundl. ann.incr.> <k_doc> <% change> KOC2 pH2 f_neq kdes>
+ 60 0.9 -99 20 0 0 0 1 -99 -99 0 0
+<END ADSORPTION>
+<DEPTH DEPENDENT SORPTION AND TRANSFORMATION VALUES>
+<Kd Fr.exp. Met A1 Met B1 Met C1 Met D1 BR/CO2 >
+<END DEPTH DEPENDENT>
+<END PSM>
diff --git a/man/PELMO_runs.Rd b/man/PELMO_runs.Rd
index 60519bd..ce5c7af 100644
--- a/man/PELMO_runs.Rd
+++ b/man/PELMO_runs.Rd
@@ -37,7 +37,7 @@ as used in \code{\link{FOCUS_GW_scenarios_2012}}.}
\item{overwrite}{Should an existing run directories be overwritten}
}
\value{
-If evaluate is TRUE, a list of lists of data frames holding the
+If evaluate is TRUE, a list of lists of matrices holding the
PEC data.
}
\description{
@@ -54,8 +54,33 @@ As a side effect, an R data file (period_pfm.rda) is generated in each
run directory, holding the results for all FOCUS periods, equivalent to
the period.plm file generated by the FOCUS PELMO GUI.
}
+\examples{
+# Reproduce the official test results for annual application of Pesticide D
+# to winter cereals at the day before emergence
+runs_1 <- list(
+ list(psm = 'Pesticide_D',
+ win = c("Cha", "Ham", "Jok", "Kre", "Oke", "Pia", "Por", "Sev", "Thi")),
+ list(psm = 'Pesticide_D_1_day_pre_em_every_third_year',
+ pot = c("Cha", "Ham", "Jok", "Kre", "Oke", "Pia", "Por", "Sev", "Thi")))
+time_1 <- system.time(
+ PECgw_1 <- PELMO_runs(runs_1, psm_dir = system.file("testdata", package = "pfm"),
+ cores = 6, overwrite = TRUE)
+)
+print(PECgw_1)
+# We get exactly the same PECgw values (on Linux, calling PELMO using Wine).
+print(time_1)
+
+# Demonstrate some results with metabolites.
+runs_2 <- list(list(psm = 'Pesticide_D_1_May_every_other_year_mets',
+ win = c("Cha", "Ham", "Kre")))
+PECgw_2 <- PELMO_runs(runs_2, psm_dir = system.file("testdata", package = "pfm"),
+ cores = 3, overwrite = TRUE)
+print(PECgw_2)
+}
\references{
PELMO.installeR \url{https://jranke.github.io/PELMO.installeR}
Wine \url{https://winehq.org}
+
+PELMO test results \url{http://esdac.jrc.ec.europa.eu/public_path/projects_data/focus/gw/models/pelmo/test-results/test_results_FOCUS_PELMO_5_5_3.doc}
}

Contact - Imprint