You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book_source/03_topical_pages/03_pecan_xml.Rmd
+3Lines changed: 3 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -580,6 +580,9 @@ Tags related to ensemble setup are:
580
580
*`size` : (required) the number of runs in the ensemble.
581
581
*`samplingspace`: (optional) Contains tags for defining how the ensembles will be generated.
582
582
583
+
Shared sampling design: In multi-site workflows, PEcAn now generates one joint ensemble design and reuses the same input sample indices (parameters, meteorology, etc.) across all sites to ensure consistent draws; previously, inputs were sampled independently per site. This change does not introduce new XML tags and applies whenever multiple sites are processed together.
584
+
The joint sampling design is created once at the start of configuration using generate_joint_ensemble_design(), called from the run configuration module, and the resulting indices are threaded through to write.ensemble.configs().
585
+
583
586
Each piece in the sampling space can potentially have a method tag and a parent tag. Method refers to the sampling method and parent refers to the cases where we need to link the samples of two components. When no tag is defined for one component, one sample will be generated and used for all the ensembles. This allows for partitioning/studying different sources of uncertainties. For example, if no met tag is defined then, one met path will be used for all the ensembles and as a result the output uncertainty will come from the variability in the parameters. At the moment no sampling method is implemented for soil and vegetation.
584
587
Available sampling methods for `parameters` can be found in the documentation of the `PEcAn.utils::get.ensemble.samples` function.
585
588
For the cases where we need simulations with a predefined set of parameters, met and initial condition we can use the restart argument. Restart needs to be a list with name tags of `runid`, `inputs`, `new.params` (parameters), `new.state` (initial condition), `ensemble.id` (ensemble ids), `start.time`, and `stop.time`.
parent_ids=if( !is.null(myparent)) samples[[myparent]]) # if I have parent then give me their ids - this is where the ordering matters making sure the parent is done before it's asked
0 commit comments