Read model output and save parsed results for sensitivity and ensemble analyses
Source:R/get.results.R
get.results.RdRead model output and save parsed results for sensitivity and ensemble analyses
Usage
get.results(
settings,
sa.ensemble.id = NULL,
ens.ensemble.id = NULL,
variable = NULL,
start.year = NULL,
end.year = NULL
)Arguments
- settings
list, read from settings file (xml) using
PEcAn.settings::read.settings()- sa.ensemble.id, ens.ensemble.id
ensemble IDs for the sensitivity analysis and ensemble analysis. If not provided, they are first looked up from
settings, then if not found they are not used and the most recent set of results is read fromsamples.Rdatain directorysettings$outdir- variable
variables to retrieve, as vector of names or expressions
- start.year, end.year
first and last years to retrieve
Value
Nothing (called for side effects). Saves sensitivity.output and/or
ensemble.output .Rdata files to settings$outdir.
Details
Upstream contract (reads from settings$outdir):
sensitivity.samples.<id>.Rdataorsamples.RdataLoaded to obtain
sa.run.ids,pft.names,trait.names, andsa.samplesfor sensitivity analysis. Produced byrun.write.configs.ensemble.samples.<id>.Rdataorsamples.RdataLoaded to obtain
ens.run.ids,pft.names, andtrait.namesfor ensemble analysis. Produced byrun.write.configs.
File-based side effects (saved to settings$outdir):
sensitivity.output.<var>.<years>.<id>.RdataContains
sensitivity.output: a named list (PFT -> matrix[n_quantiles x n_traits]) of model output values corresponding to each SA run. One file per variable/year combination.ensemble.output.<var>.<years>.<id>.RdataContains
ensemble.output: a numeric vector of model output values, one per ensemble member. One file per variable/year combination.
Downstream contract: sensitivity.output.*.Rdata is loaded by
run.sensitivity.analysis. ensemble.output.*.Rdata is loaded by
run.ensemble.analysis. Both use these files to compute diagnostics
and plots. This implicit file-based coupling is a refactoring target.