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.3.1
sda.enkf.R Description
9.3.2
sda.enkf.R Arguments
9.3.3
State Data Assimilation Workflow
9.3.4
State Data Assimilation Tags Example
9.3.5
State Data Assimilation Tags Descriptions
9.3.6
Model Specific Functions for SDA Workflow
9.3.7
Analysis Options
9.3.8
The Generalized Ensemble Filter
9.4
MultiSettings
9.5
Benchmarking
9.5.1
Data Preparation
9.5.2
Model Runs
9.5.3
The Benchmarking Shiny App
9.5.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 modules 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
18
Reference Runs
18.1
Editing records
18.2
Standalone tools (modules)
18.3
Loading Data in PEcAn
18.3.1
Function
load_data
18.3.2
Example
19
Working with the VM
19.1
Connecting to the VM via SSH
19.2
Connecting to bety on the VM via SSh
20
VM Desktop Conversion
20.0.1
Install RStudio Desktop
V Developer user guide
21
Introduction: Developer Guide
22
PEcAn Setup
22.1
Installing the PEcAn VM
22.2
Install PEcAn by hand
22.2.1
Installation Prerequisites
22.2.2
OS Specific Installations
22.2.3
Installing BETY
22.2.4
Install Models
22.2.5
Download and Compile PEcAn
22.2.6
PEcAn Testrun
22.2.7
PEcAn Customizations
22.3
AWS Setup
22.3.1
Porting VM to AWS
22.3.2
Set up multiple instances (optional)
22.4
Shiny Setup
22.4.1
Install the Shiny R package and Shiny server
22.4.2
Modify the shiny configuration file
22.4.3
Set the Apache proxy
22.4.4
Enable and start the shiny server, and restart apache
22.4.5
Troubleshooting
22.4.6
Further reading
22.5
Thredds Setup
22.5.1
Install the Tomcat 8 and Thredds webapp
22.5.2
Ubuntu
22.5.3
Customize the Thredds server
22.5.4
Update the catalog
22.5.5
Troubleshooting
22.5.6
Further reading
23
Maintaining PEcAn
23.1
Updating PEcAn Code and Bety Database
23.1.1
Updating PEcAn
23.2
Updating BETY
23.3
Database synchronization
23.3.1
How does it work?
23.3.2
Set up
23.3.3
Fetch latest data
23.3.4
Sharing data
23.3.5
Automation
23.3.6
Network Status Map
23.3.7
Tasks
24
Git and GitHub Workflow
24.1
Using Git
24.1.1
Git
24.1.2
Recommended Git Workflow
24.1.3
During development:
24.1.4
For PEcAn
24.1.5
Git + Rstudio
24.1.6
For development:
24.2
References:
24.3
GitHub use with PEcAn
24.3.1
Bugs, Issues, Features, etc.
24.3.2
Requesting a feature
24.3.3
Closing an issue
24.3.4
When to submit an issue?
25
Coding Practices
25.1
Coding Style
25.1.1
Use Roxygen2 documentation
25.1.2
Write your name at the top
25.1.3
Use testthat testing package
25.1.4
Don’t use shortcuts
25.1.5
Package Dependencies:
25.2
Logging
25.2.1
PEcAn logging functions
25.2.2
Other R logging packages
25.2.3
Example Usage
25.3
Package Data
25.3.1
Summary:
25.3.2
Accessing data
25.4
Packages used in development
25.5
Roxygen2
25.5.1
Canonical references:
25.5.2
Basic Roxygen2 instructions:
25.5.3
Example
25.5.4
Updating documentation
25.6
Testing
25.6.1
Rationale
25.6.2
Tests makes development easier and less error prone
25.6.3
Quick Start:
25.6.4
Test files
25.6.5
Testing the Shiny Server
26
Directory structure
26.1
Overview of PEcAn repository as of PEcAn 1.5.3
26.2
Generic R package structure:
VI Reference Materials
27
PEcAn standard formats
27.1
Defining new input formats
27.1.1
Outputs
28
Models in PEcAn
28.1
BioCro Configuration
28.2
BioCro
28.3
CLM
28.4
DALEC
28.5
ED
28.6
ED2 Configuration
28.6.1
ED2IN configuration variables
28.7
GDAY
28.8
LINKAGES
28.9
LPJ-GUESS
28.10
MAESPA
29
PEcAn Models
29.1
PRELES
29.2
SIPNET configuration
29.3
Sipnet
30
Template MODEL page
30.1
Model Variables
30.1.1
Download GFDL
30.1.2
CM3
30.1.3
ESM2M & ESM2G
31
Available Meteorological Drivers
31.1
Ameriflux
31.2
AmerifluxLBL
31.3
Fluxnet2015
31.4
NARR
31.5
CRUNCEP
31.6
CMIP5
31.7
NLDAS
31.8
GLDAS
31.9
PalEON
31.10
FluxnetLaThuile
31.11
Geostreams
32
PEcAn Docker Architecture
33
What is Docker?
34
Dockerfiles for Models
34.1
SIPNET
34.1.1
Using the PEcAn download.file() function
35
Debugging
35.0.1
Using
tests/workflow.R
35.0.2
Useful scripts
35.0.3
Debugging Shiny Apps
35.1
Troubleshooting PEcAn
35.1.1
Cookies and pecan web pages
35.1.2
Warning: mkdir() [function.mkdir]: No such file or directory
35.1.3
After creating a new PFT the
tag for PFT not passed to config.xml in ED
35.2
PEcAn Project use to teach Ecological model-data synthesis
35.2.1
University classes
35.2.2
Summer Courses / Workshops
35.2.3
Selected Publications
35.3
Data assimilation with DART
VII Demos and Vignettes
36
PEcAn Hands-On Demo 01: Basic Run
36.1
Objective
36.1.1
PEcAn URL
36.2
Basic Run
36.2.1
Start PEcAn:
36.2.2
Site Selection
36.2.3
Host
36.2.4
Mode
36.2.5
Site Group
36.2.6
Conversion:
36.2.7
Site:
36.2.8
Model Run Workflow
36.3
Next steps
37
Demo 02: Sensitivity and Uncertainty Analysis
37.1
Run Specification
37.1.1
Additional Outputs:
37.1.2
1. Run ID:
37.1.3
2. Inputs:
37.1.4
3. Outputs:
37.1.5
4. PFTs:
37.1.6
PEcAn Files:
37.2
Global Sensitivity: Shiny
37.2.1
Next Steps
37.2.2
Assimilation ‘by hand’
37.2.3
MCMC Concepts
37.2.4
More info about tools, analyses, and specific tasks…
38
PEcAn: Testing the Sensitivity Analysis Against Observations"
38.0.1
Author: “Ankur Desai”
38.1
Flux Measurements and Modeling Course,
Tutorial Part 2
38.2
Introduction
39
Simple Model-Data Comparisons
39.0.1
Author: Istem Fer, Tess McCabe
39.1
Starting RStudio Server
39.2
Read in settings From an XML file
39.3
Read in model output from specific variables
39.4
Compare model to flux observations
40
Parameter Data Assimilation
40.1
Objectives
40.2
Larger Context
40.3
Connect to Rstudio
40.4
Defining variables
40.5
Initial Ensemble Analysis
40.5.1
Questions:
40.6
Choosing Parameters
40.6.1
Questions:
40.7
Editing PEcAn settings
40.8
Investigating PEcAn function pda.emulator (optional)
40.9
Running a demo PDA
40.10
Outputs from PEcAn’s Parameter Data Assimilation
40.10.1
Questions:
40.11
Post-PDA analyses
40.11.1
Questions:
41
State-Variable Data Assimilation
41.1
Objectives:
41.2
Overview:
41.2.1
Initial Run
41.2.2
Settings:
41.2.3
Loading data
41.2.4
Estimating tree-level data uncertainties
41.3
Allometric equations
41.4
Estimate stand-level NPP
41.5
Build Initial Conditions
41.6
Load Priors
41.7
Ensemble Kalman Filter
41.8
Finishing up
42
Data Assimilation Concepts"
42.1
Fitting the model
42.2
What’s going on
42.3
Evaluating the model output
42.4
Additional information
42.5
Citations
VIII Appendix
43
FAQ
The Predictive Ecosystem Analyzer
43
FAQ