Welcome
I Introduction
1
Project Overview
2
Contributor Covenant Code of Conduct
3
About the PEcAn Book
3.0.1
Main Topics
3.1
How to Contribute
3.1.1
Editing the book yourself
3.1.2
Feedback/Comments/Suggestions
II Basic User Guide
4
Getting Started
4.1
How PEcAn Works in a nutshell
4.2
Download the PEcAn VM
4.3
Using AmazonWeb Services (AWS)
4.4
Working with the PEcAn Containers (Docker) [Experimental]
4.5
PEcAn Demos
5
Web workflow
5.1
Site and model selection
5.1.1
Selecting a model
5.1.2
Selecting a site
5.2
Model configuration
5.2.1
Choosing meteorology
5.2.2
Selecting Plant Functional Types (PFTs) and other parameter groupings.
5.2.3
Choosing initial vegetation
5.2.4
Spin up
5.2.5
Selecting a soils product
5.2.6
Other model inputs
III Intermediate user guide
6
Introduction
7
The PEcAn XML
7.1
PEcAn folders
7.2
Database Access
7.3
BETY Database Configuration
7.4
Brown Dog Configuration
7.5
PFT Selection
7.6
Meta Analysis
7.7
Ensemble Runs
7.8
Sensitivity Runs
7.9
Model Setup
7.10
Run Setup
7.11
State Data Assimilation Tags
7.12
Parameter Data Assimilation
7.13
Benchmarking
7.14
Model-specific configuration
8
Additional web configuration
8.1
Brown Dog
8.2
Advanced Setup
8.3
Editing model configurations
8.4
Basic Setups
9
Settings-configured analyses
9.1
Parameter data assimilation (PDA)
9.1.1
pda.mcmc.R
9.1.2
pda.mcmc.bs.R
9.1.3
pda.emulator
9.1.4
pda.mcmc.recover.R
9.1.5
pda.utils.R
9.1.6
get.da.data.*.R, plot.da.R
9.2
For a detailed usage of the module, please see the vignette under
/modules/assim.batch/vignettes
9.3
State data assimilation (SDA)
9.4
sda.enkf.R is housed within:
/pecan/modules/assim.sequential/R
9.5
The tree ring tutorial is housed within:
/pecan/documentation/tutorials/StateAssimilation
9.6
More descriptive SDA methods can be found at:
/pecan/book_source/adve_user_guide_web/SDA_Methods.Rmd
9.6.1
sda.enkf.R Description
9.6.2
sda.enkf.R Arguments
9.6.3
State Data Assimilation Workflow
9.6.4
State Data Assimilation Tags Example
9.6.5
State Data Assimilation Tags Descriptions
9.6.6
Model Specific Functions for SDA Workflow
9.6.7
Analysis Options
9.6.8
The Generalized Ensemble Filter
9.7
SDA_Methods
9.8
Data Products
9.8.1
Tree Rings
9.8.2
Pollen
9.9
Current Models
9.10
Model Calibration
9.11
Initial Conditions
9.12
Drivers
9.13
Sequential State Data Assimilation
9.13.1
General Description
9.13.2
EnKF
9.13.3
Generalized Ensemble Filter
9.13.4
Ensemble Adjustment
9.13.5
Diagnostics
9.14
MultiSettings
9.15
Benchmarking
9.15.1
Data Preparation
9.15.2
Model Runs
9.15.3
The Benchmarking Shiny App
9.15.4
Benchmarking in pecan.xml
10
Remote execution with PEcAn
10.1
Basics of SSH
10.2
SSH authentication – password vs. SSH key
10.2.1
SSH tunneling
10.2.2
SSH tunnels and PEcAn
10.3
Basic remote execute functions
10.4
Remote model execution with PEcAn
10.4.1
XML configuration
10.4.2
Configuration for PEcAn web interface
10.5
Running PEcAn code for remotely
10.5.1
geo.bu.edu
IV Advanced user guide
11
Introduction
12
PEcAn workflow (web/workflow.R)
12.1
Read Settings
12.2
Input Conversions
12.2.1
Input Data
12.2.2
Initial Conditions
12.3
Meteorological Data
12.3.1
Downloading Raw data (Description of Process)
12.4
Traits
12.5
Meta Analysis
12.6
Model Configuration
12.7
Run Execution
12.8
Post Run Analysis
12.9
Advanced Analysis
13
Submitting Workflow from Command Line
14
Workflow modules
14.1
Overview
14.1.1
Load Settings:
14.1.2
Query Database:
14.1.3
Meta Analysis:
14.1.4
Write Configuration Files
14.1.5
Start Runs:
14.1.6
Get Model Output
14.1.7
Ensemble Analysis
14.1.8
Sensitivity Analysis, Variance Decomposition
14.2
Glossary
15
Adding to PEcAn
15.1
Case studies
15.2
Adding An Ecosystem Model
16
Formats records in BETY
17
Creating a new Format record in BETY
17.1
Formats -> Variables
17.1.1
Name and Unit
17.1.2
Storage Type
17.1.3
Column Number
17.2
Retrieving Format Information
17.2.1
Inputs
17.2.2
Output
17.3
Input records in BETY
17.4
Create a database file record for the input data
17.5
Creating a new Input record in BETY
17.5.1
Input Conversion
17.5.2
Vegetation Data
17.5.3
Soil Data
18
Reference Runs
19
Pecan Data Ingest via Web Interface
20
1. Loading Data
20.1
Selecting Ingest Method
20.1.1
DataONE Upload Example
20.2
Local Upload Example
20.3
2. Creating an Input Record
20.4
3. Creating a format record
20.5
4. Formats_Variables Record
20.6
Editing records
20.7
Standalone tools (modules)
20.8
Loading Data in PEcAn
20.8.1
Function
load_data
20.8.2
Example
21
Working with the VM
21.1
Connecting to the VM via SSH
21.2
Connecting to bety on the VM via SSh
22
VM Desktop Conversion
22.0.1
Install RStudio Desktop
V Developer user guide
23
Introduction: Developer Guide
24
PEcAn Setup
24.1
Installing the PEcAn VM
24.2
Install PEcAn by hand
24.2.1
Installation Prerequisites
24.2.2
OS Specific Installations
24.2.3
Installing BETY
24.2.4
Install Models
24.2.5
Download and Compile PEcAn
24.2.6
PEcAn Testrun
24.2.7
PEcAn Customizations
24.3
AWS Setup
24.3.1
Porting VM to AWS
24.3.2
Set up multiple instances (optional)
24.4
Shiny Setup
24.4.1
Install the Shiny R package and Shiny server
24.4.2
Modify the shiny configuration file
24.4.3
Set the Apache proxy
24.4.4
Enable and start the shiny server, and restart apache
24.4.5
Troubleshooting
24.4.6
Further reading
24.5
Thredds Setup
24.5.1
Install the Tomcat 8 and Thredds webapp
24.5.2
Ubuntu
24.5.3
Customize the Thredds server
24.5.4
Update the catalog
24.5.5
Troubleshooting
24.5.6
Further reading
25
Maintaining PEcAn
25.1
Updating PEcAn Code and Bety Database
25.1.1
Updating PEcAn
25.2
Updating BETY
25.3
Database synchronization
25.3.1
How does it work?
25.3.2
Set up
25.3.3
Fetch latest data
25.3.4
Sharing data
25.3.5
Automation
25.3.6
Network Status Map
25.3.7
Tasks
26
Git and GitHub Workflow
26.1
Using Git
26.1.1
Git
26.1.2
PEcAn Project and Github
26.1.3
PEcAn Project Branches
26.1.4
Git + Rstudio
26.1.5
For development:
26.1.6
References
26.2
GitHub use with PEcAn
26.2.1
Bugs, Issues, Features, etc.
26.2.2
Requesting a feature
26.2.3
Closing an issue
26.2.4
When to submit an issue?
27
Coding Practices
27.1
Coding Style
27.1.1
Use Roxygen2 documentation
27.1.2
Write your name at the top
27.1.3
Use testthat testing package
27.1.4
Don’t use shortcuts
27.1.5
Package Dependencies:
27.2
Logging
27.2.1
PEcAn logging functions
27.2.2
Other R logging packages
27.2.3
Example Usage
27.3
Package Data
27.3.1
Summary:
27.3.2
Accessing data
27.4
Packages used in development
27.5
Roxygen2
27.5.1
Canonical references:
27.5.2
Basic Roxygen2 instructions:
27.5.3
Example
27.5.4
Updating documentation
27.6
Testing
27.6.1
Rationale
27.6.2
Tests makes development easier and less error prone
27.6.3
Quick Start:
27.6.4
Test files
27.6.5
Testing the Shiny Server
28
Directory structure
28.1
Overview of PEcAn repository as of PEcAn 1.5.3
28.2
Generic R package structure:
VI Reference Materials
29
PEcAn standard formats
29.1
Defining new input formats
29.1.1
Input Standards
29.1.2
Output Standards
30
Models in PEcAn
31
Template MODEL page
31.1
BioCro Configuration
31.2
BioCro
31.3
CLM
31.4
DALEC
31.5
ED
31.5.1
Introduction
31.5.2
PEcAn configuration file additions
31.5.3
Model specific input files
31.5.4
Model configuration files
31.5.5
Installation notes
31.6
GDAY
31.7
LINKAGES
31.8
LPJ-GUESS
31.9
MAESPA
32
PEcAn Models
32.1
PRELES
32.2
SIPNET configuration
32.3
Sipnet
32.3.1
Download GFDL
32.3.2
CM3
32.3.3
ESM2M & ESM2G
33
Available Meteorological Drivers
33.1
Ameriflux
33.2
AmerifluxLBL
33.3
Fluxnet2015
33.4
NARR
33.5
CRUNCEP
33.6
CMIP5
33.7
NLDAS
33.8
GLDAS
33.9
PalEON
33.10
FluxnetLaThuile
33.11
Geostreams
34
What is Docker?
34.1
Working with Docker
34.2
Working with docker-compose
35
PEcAn Docker Architecture
36
Quickstart for Docker and PEcAn.
36.1
Install Docker
36.2
Running PEcAn
36.3
Testing PEcAn
37
Dockerfiles for Models
37.1
Common problems
37.1.1
Debugging missing libraries
37.1.2
Using the PEcAn download.file() function
38
Debugging
38.0.1
Using
tests/workflow.R
38.0.2
Useful scripts
38.0.3
Debugging Shiny Apps
38.1
Troubleshooting PEcAn
38.1.1
Cookies and pecan web pages
38.1.2
Warning: mkdir() [function.mkdir]: No such file or directory
38.1.3
After creating a new PFT the
tag for PFT not passed to config.xml in ED
38.2
PEcAn Project use to teach Ecological model-data synthesis
38.2.1
University classes
38.2.2
Summer Courses / Workshops
38.2.3
Selected Publications
38.3
Data assimilation with DART
VII Demos and Vignettes
39
PEcAn Hands-On Demo 01: Basic Run
39.1
Objective
39.1.1
PEcAn URL
39.2
Basic Run
39.2.1
Start PEcAn:
39.2.2
Site Selection
39.2.3
Host
39.2.4
Mode
39.2.5
Site Group
39.2.6
Conversion:
39.2.7
Site:
39.2.8
Model Run Workflow
39.3
Next steps
40
Demo 02: Sensitivity and Uncertainty Analysis
40.1
Run Specification
40.1.1
Additional Outputs:
40.1.2
1. Run ID:
40.1.3
2. Inputs:
40.1.4
3. Outputs:
40.1.5
4. PFTs:
40.1.6
PEcAn Files:
40.2
Global Sensitivity: Shiny
40.2.1
Next Steps
40.2.2
Assimilation ‘by hand’
40.2.3
MCMC Concepts
40.2.4
More info about tools, analyses, and specific tasks…
41
PEcAn: Testing the Sensitivity Analysis Against Observations"
41.0.1
Author: “Ankur Desai”
41.1
Introduction
42
Simple Model-Data Comparisons
42.0.1
Author: Istem Fer, Tess McCabe
42.1
Starting RStudio Server
42.2
Read in settings From an XML file
42.3
Read in model output from specific variables
42.4
Compare model to flux observations
43
Parameter Data Assimilation
43.1
Objectives
43.2
Larger Context
43.3
Connect to Rstudio
43.4
Defining variables
43.5
Initial Ensemble Analysis
43.5.1
Questions:
43.6
Choosing Parameters
43.6.1
Questions:
43.7
Editing PEcAn settings
43.8
Investigating PEcAn function pda.emulator (optional)
43.9
Running a demo PDA
43.10
Outputs from PEcAn’s Parameter Data Assimilation
43.10.1
Questions:
43.11
Post-PDA analyses
43.11.1
Questions:
44
State-Variable Data Assimilation
44.1
Objectives:
44.2
Overview:
44.2.1
Initial Run
44.2.2
Settings:
44.2.3
Loading data
44.2.4
Estimating tree-level data uncertainties
44.3
Allometric equations
44.4
Estimate stand-level NPP
44.5
Build Initial Conditions
44.6
Load Priors
44.7
Ensemble Kalman Filter
44.8
Finishing up
45
Data Assimilation Concepts"
45.1
Fitting the model
45.2
What’s going on
45.3
Evaluating the model output
45.4
Additional information
45.5
Citations
VIII Appendix
46
FAQ
The Predictive Ecosystem Analyzer
46
FAQ