Welcome
Project Overview
Contributor Covenant Code of Conduct
1
About the PEcAn Book
1.1
How to Contribute
1.1.1
Editing the book yourself
1.1.2
Feedback/Comments/Suggestions
2
Main Topics
2.0.1
Using PEcAn
I Basic User Guide
3
Getting Started
3.1
How PEcAn Works in a nutshell
3.2
Quick Start
3.2.1
Working with the PEcAn VM
3.2.2
Using AmazonWeb Services (AWS)
3.3
PEcAN Demos
4
The model-site page
4.1
Selecting a model
4.2
Selecting a site
4.2.1
Using existing sites
4.2.2
Adding a new site
4.2.3
Troubleshooting
5
Basic model configuration
5.1
Choosing meteorology
5.1.1
Met workflow
5.1.2
Troubleshooting meteorological conversions
5.2
Choosing initial vegetation
5.2.1
Spin up
5.2.2
Veg workflow
5.3
Selecting a soils product
6
VM Desktop Conversion
6.0.1
Install RStudio Desktop
II Advanced User Guide - Web
7
Advanced Web Interface Guide
7.0.1
What do all those other buttons on the web interface do?
7.0.2
How do I perform specific analyses?
8
Using Browndog
9
PEcAn XML Configuration
9.1
PEcAn folders
9.2
Database Access
9.3
BETY Database Configuration
9.4
Brown Dog Configuration
9.5
PFT Selection
9.6
Meta Analysis
9.7
Ensemble Runs
9.8
Sensitivity Runs
9.9
Model Setup
9.10
Run Setup
9.11
State Data Assimilation Tags
9.12
Parameter Data Assimilation
9.13
Benchmarking
10
Parameter Data Assimilation
10.1
All functions pertaining to Parameter Data Assimilation are housed within:
pecan/modules/assim.batch
10.1.1
pda.mcmc.R
10.1.2
pda.mcmc.bs.R
10.1.3
pda.emulator
10.1.4
pda.mcmc.recover.R
10.1.5
pda.utils.R
10.1.6
**get.da.data.*.R, plot.da.R** Old codes written by Carl Davidson. Defunct now, but may contain good ideas so currently left in.
11
State Data Assimilation
11.1
sda.enkf.R is housed within:
/pecan/modules/assim.sequential/R
11.2
The tree ring tutorial is housed within:
/pecan/documentation/tutorials/StateAssimilation
11.2.1
sda.enkf.R Description
11.2.2
sda.enkf.R Arguments
11.2.3
State Data Assimilation Workflow
11.2.4
State Data Assimilation Tags Example
11.2.5
State Data Assimilation Tags Descriptions
11.2.6
Model Specific Functions for SDA Workflow
11.2.7
Analysis Options
11.2.8
The Generalized Ensemble Filter
12
Specific Model Configurations
13
Advanced Setup
III Advanced User Guide - Cmd Line
14
Advanced Command Line Guide
15
Run PEcAn from COmmand Line
16
Working with the VM
16.1
Connecting to the VM via SSH
17
Extra Tools In PEcAn
IV User Appendix
18
User Appendix
18.0.1
File download: Alternative options when behind a firewall
19
Updating PEcAn Code and Bety Database
19.0.1
Updating PEcAn
19.1
Updating BETY
20
PEcAn Models
20.1
BioCro
20.2
BioCro Configuration
20.3
CLM
20.4
DALEC
20.5
ED
20.5.1
ED Configuration
20.6
ED2IN configuration variables
20.7
GDAY
20.8
LINKAGES
20.9
LPJ-GUESS
20.10
MAESPA
20.11
PRELES
20.12
Sipnet
21
Model Output Variables
22
Available Meteorological Drivers
22.1
Ameriflux
22.2
AmerifluxLBL
22.3
Fluxnet2015
22.4
NARR
22.5
CRUNCEP
22.6
CMIP5
22.7
NLDAS
22.8
GLDAS
22.9
PalEON
22.10
FluxnetLaThuile
V PEcAn Workflow
23
Workflow
24
The PEcAN BETY connection
VI Development Guide
25
Overview
25.1
Bugs, Issues, Features, etc.
25.1.1
Reporting a bug
25.1.2
Required content
25.2
Requesting a feature
25.3
Closing an issue
25.4
When to submit an issue?
25.4.1
Ideally, non-trivial code changes will be linked to an issue and a commit.
26
Using Git
26.1
Git
26.1.1
PEcAnProject on GitHub:
https://github.com/organizations/PecanProject
26.1.2
Milestones, Issues, Tasks
26.1.3
Quick and Easy
26.2
Recommended Git Workflow
26.2.1
Before any work is done:
26.3
During development:
26.3.1
Basic Workflow
26.3.2
Advanced Workflow: A new branch for each change
26.3.3
After pull request is merged
26.3.4
Link commits to issues
26.4
For PEcAn
26.4.1
Committing Changes Using Pull Requests
26.4.2
Other Useful Git Commands:
26.4.3
Tags
26.5
Git + Rstudio
26.5.1
Creating a Read-only version:
26.6
For development:
26.7
References:
27
Directory structure
27.1
Overview of PEcAn repository as of PEcAn 1.2
27.2
Generic R package structure:
28
Adding An Ecosystem Model
28.1
PEcAn Database
28.2
Define MODEL_TYPE
28.3
MACHINE
28.4
MODEL
28.5
FORMATS
28.5.1
Formats -> Variables
28.5.2
MODEL_TYPE -> Formats
28.6
INPUTS
28.7
PFTS (Plant Functional Types)
28.7.1
Species
28.8
PRIORS
28.9
Interface Modules
28.9.1
Setting up the module directory (required)
28.9.2
DESCRIPTION
28.9.3
NAMESPACE
28.9.4
Building the package
28.9.5
write.config.MODEL (required)
28.9.6
Output Conversions
28.9.7
met2model.MODEL
28.9.8
Commit changes
29
Met Data
29.1
Dimensions:
29.2
The variable names should be
standard_name
30
How to Insert new Input Data
30.0.1
PEcAn Configuration Files
30.0.2
Model-specific configuration files
31
Coding Style
31.1
Use Roxygen2 documentation
31.2
Write your name at the top
31.3
Use testthat testing package
31.4
Don’t use shortcuts
31.4.1
Function Names (
verb.noun
)
31.4.2
File Names
31.4.3
Use “<-” as an assignment operator
31.4.4
Use Spaces
31.4.5
Use curly braces
31.5
Package Dependencies:
31.5.1
library vs require
31.5.2
DEPENDS, SUGGESTS, IMPORTS
32
Roxygen2
32.1
Canonical references:
32.2
Basic Roxygen2 instructions:
32.2.1
Tags
32.2.2
Text markup
32.3
Example
32.4
Updating documentation
33
Testing
33.1
Rationale
33.2
Tests makes development easier and less error prone
33.3
Quick Start:
33.4
Test files
33.4.1
Settings
33.4.2
Helper functions created to make testing easier
33.4.3
When should I test?
33.4.4
What types of testing are important to understand?
33.4.5
Unit Testing / Test Driven Development
33.4.6
Regression Testing
33.4.7
How should I test in R? The testthat package.
33.4.8
basic use of the testthat package
34
Package Data
34.1
Summary:
34.2
Accessing data
34.3
Packages used in development
34.3.1
roxygen2
34.3.2
devtools
35
Logging
35.1
PEcAn logging functions
35.1.1
Examples
35.1.2
Related Issues (requires Redmine developer account)
35.2
Other R logging packages
35.2.1
logging
35.2.2
futile
35.3
Example Usage
35.4
Inputs
35.4.1
Defining new input formats
35.5
Outputs
VII Appendix
36
Installing PEcAn
36.1
Installing Prerequisites
36.1.1
Set
R_LIBS_USER
36.2
Install models
36.2.1
ED2
36.2.2
SIPNET
36.2.3
BioCro
36.2.4
Linkages
36.2.5
DALEC
36.2.6
LINKAGES
36.2.7
CLM 4.5
36.3
CLM-FATES
36.4
PEcAn Installation
36.5
Installing PEcAn
36.6
Installing BETY
36.6.1
Install Postgres
36.6.2
Install Database + Data
36.6.3
Installing BETYdb Web Application
36.6.4
PEcAn Testrun
37
Creating a Virtual Machine
38
CentOS/RedHat
38.1
Install build environment
38.2
Install Postgres
38.3
Apache Configuration PEcAn
38.4
Apache Configuration BETY
38.5
Rstudio-server
38.6
Additional packages
39
CentOS / RHEL
39.1
Install build environment
39.2
Apache Configuration
39.3
Install and configure Rstudio-server
39.4
Install Postgres
40
Mac OSX
40.1
Install build environment
40.2
Install Postgres
40.3
Additional installs
40.3.1
Install JAGS
40.3.2
Install udunits
40.4
Apache Configuration
40.5
Ruby
40.6
Rstudio Server
41
Ubuntu
41.1
Install build environment
41.2
Install Postgres
41.3
Apache Configuration BETY
41.4
Rstudio-server
41.5
Additional packages
41.6
Download and Install Models
41.7
Install instructions
41.7.1
ED2
41.7.2
SIPNET
41.7.3
BioCro
41.7.4
Linkages
41.7.5
DALEC
41.7.6
LINKAGES
41.7.7
CLM 4.5
41.7.8
JULES
41.7.9
MAESPA
41.7.10
GDAY
41.7.11
LPJ-GUESS
42
Porting VM to AWS
42.0.1
Convert PEcAn VM
42.0.2
Set up an account on
AWS
42.0.3
Install
EC2 command line tools
42.0.4
Create an AWS S3 ‘bucket’ to upload VM to
42.0.5
Upload
42.0.6
Configuring the VM
42.0.7
Set up multiple instances (optional)
42.0.8
Booting the VM
43
Installing and configuring Shiny for PEcAn
43.1
Install the Shiny R package and Shiny server
43.2
CentOS
43.3
Ubuntu
43.4
Modify the shiny configuration file
43.5
Set the httpd proxy
43.6
Create a symbolic link to the shiny server service
43.7
Start the shiny server and restart httpd
43.8
Troubleshooting
43.9
Further reading
44
Installing and configuring Thredds for PEcAn
44.1
Install the Tomcat 8 and Thredds webapp
44.2
Ubuntu
44.3
Customize the Thredds server
44.4
Update the catalog
44.5
Troubleshooting
44.6
Further reading
45
FAQ
The Predictive Ecosystem Analyzer
45
FAQ