Skip to content

Commit

Permalink
Merge pull request #1359 from PecanProject/release/1.4.10.1
Browse files Browse the repository at this point in the history
Release/1.4.10.1
  • Loading branch information
robkooper committed Apr 21, 2017
2 parents f25c810 + 45bf6f0 commit afd5e89
Show file tree
Hide file tree
Showing 71 changed files with 1,379 additions and 162 deletions.
1 change: 1 addition & 0 deletions .travis.yml
Expand Up @@ -33,6 +33,7 @@ addons:
- udunits-bin
- libgmp-dev
- libproj-dev
- pandoc
# need to compile documentation
# BROKEN MISSING FONT
#- texinfo
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Expand Up @@ -7,8 +7,14 @@ For more information about this file see also [Keep a Changelog](http://keepacha

## [Unreleased]

## [1.4.10.1] - 2017-04-18

### Changed
- Bugfix in Fluxnet2015
- Update Git workflow in Documentation
- download.CRUNCEP now uses CF-compliant time units (days since start of year instead of "secs")
- Bugfixes in met.process


## [1.4.10] - 2017-03-27
Documentation
Expand Down
4 changes: 2 additions & 2 deletions all/DESCRIPTION
Expand Up @@ -2,8 +2,8 @@ Package: PEcAn.all
Type: Package
Title: PEcAn functions used for ecological forecasts and
reanalysis
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: David LeBauer, Mike Dietze, Xiaohui Feng, Dan Wang,
Mike Dietze, Carl Davidson, Rob Kooper, Shawn Serbin
Maintainer: David LeBauer <dlebauer@illinois.edu>
Expand Down
35 changes: 24 additions & 11 deletions book_source/deploy.sh
Expand Up @@ -6,28 +6,41 @@ set -e
#check for environment variable
[ -z "${GITHUB_PAT}" ] && exit 0

# only deploy if this is the master branch build
branch_name=$(git symbolic-ref -q HEAD)
branch_name=${branch_name##refs/heads/}
branch_name=${branch_name:-HEAD}
[ "${branch_name}" != "master" ] && exit 0
# don't run on pull requests
[ "$TRAVIS_PULL_REQUEST" != "false" ] && exit 0

# find version if we are develop/latest/release and if should be pushed
if [ "$TRAVIS_BRANCH" = "master" ]; then
VERSION="master"
elif [ "$TRAVIS_BRANCH" = "develop" ]; then
VERSION="develop"
elif [ "$( echo $TRAVIS_BRANCH | sed -e 's#^release/.*$#release#')" = "release" ]; then
VERSION="$( echo $TRAVIS_BRANCH | sed -e 's#^release/\(.*\)$#\1#' )"
else
echo "Not Master, Develop, or Release Branch. Will not render Book."
exit 0
fi

#set USER
USER=${TRAVIS_REPO_SLUG%/*}


# configure your name and email if you have not done so
git config --global user.email "pecanproj@gmail.com"
git config --global user.name "TRAVIS-DOC-BUILD"

# clone documentation git repo
git clone https://${GITHUB_PAT}@github.com/${USER}/pecan-documentation.git book_hosted
cd book_hosted

## Check if branch named directory exists
if [ ! -d $VERSION ]; then
mkdir $VERSION
fi

cp -r _book/* book_hosted

# copy new documentation
rsync -a --delete ../_book/ $VERSION/

cd book_hosted
# push updated documentation back up
git add --all *
git commit -m"Update the book `date`" || true
git commit -m "Update the book `date`" || true
git push -q origin master

4 changes: 2 additions & 2 deletions db/DESCRIPTION
@@ -1,8 +1,8 @@
Package: PEcAn.DB
Type: Package
Title: PEcAn functions used for ecological forecasts and reanalysis
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: David LeBauer, Mike Dietze, Xiaohui Feng, Dan Wang, Carl
Davidson, Rob Kooper, Shawn Serbin
Maintainer: David LeBauer <dlebauer@illinois.edu>
Expand Down
38 changes: 20 additions & 18 deletions db/R/query.format.vars.R
Expand Up @@ -4,10 +4,10 @@
##' @param con : database connection
##' @export query.format.vars
##'
##' @author Betsy Cowdery , Ankur Desai
##' @author Betsy Cowdery , Ankur Desai, Istem Fer
##'
query.format.vars <- function(bety,input.id=NA,format.id=NA,var.ids=NA){

if(is.na(input.id) & is.na(format.id)){PEcAn.utils::logger.error("Must specify input id or format id")}

con <- bety$con
Expand Down Expand Up @@ -49,40 +49,42 @@ query.format.vars <- function(bety,input.id=NA,format.id=NA,var.ids=NA){
colnames(fv) <- c("variable_id", "input_name", "input_units", "storage_type", "column_number")
fv$variable_id <- as.numeric(fv$variable_id)
n <- dim(fv)[1]

# get bety names and units
vars <- as.data.frame(matrix(NA, ncol=3, nrow=n))
vars <- as.data.frame(matrix(NA, ncol=2, nrow=n))
colnames(vars) <- c("bety_name", "bety_units")

# fv and vars need to go together from now on,
# otherwise when there are more than one of the same variable_id it confuses merge
vars_bety <- cbind(fv, vars)
for(i in 1:n){
vars[i,] <- as.matrix(db.query(paste("SELECT id, name, units from variables where id = ",
fv$variable_id[i]),con))
vars_bety[i, (ncol(vars_bety)-1):ncol(vars_bety)] <- as.matrix(db.query(paste("SELECT name, units from variables where id = ",
fv$variable_id[i]),con))
}
colnames(vars) <- c("variable_id", "bety_name", "bety_units")
vars$variable_id <- as.numeric(fv$variable_id)

# Fill in input names and units with bety names and units if they are missing

ind1 <- fv$input_name == ""
fv$input_name[ind1] <- vars$bety_name[ind1]
vars_bety$input_name[ind1] <- vars_bety$bety_name[ind1]
ind2 <- fv$input_units == ""
fv$input_units[ind2] <- vars$bety_units[ind2]
vars_bety$input_units[ind2] <- vars_bety$bety_units[ind2]

# Fill in CF vars
# This will ultimately be useful when looking at met variables where CF != Bety
# met <- read.csv(system.file("/data/met.lookup.csv", package= "PEcAn.data.atmosphere"), header = T, stringsAsFactors=FALSE)

#Fill in MstMIP vars
#All pecan output is in MstMIP variables

bety_mstmip <- read.csv(system.file("bety_mstmip_lookup.csv", package= "PEcAn.DB"), header = T, stringsAsFactors=FALSE)

vars_full <- merge(fv, merge(vars, bety_mstmip, by = "bety_name", all.x = TRUE), by="variable_id", all=TRUE) # not sure if all=TRUE is appropriate here or not.

vars_full <- merge(vars_bety, bety_mstmip, by = "bety_name", all.x = TRUE)

vars_full$pecan_name <- vars_full$mstmip_name
vars_full$pecan_units <- vars_full$mstmip_units
ind <- is.na(vars_full$pecan_name)
vars_full$pecan_name[ind] <- vars_full$bety_name[ind]
vars_full$pecan_units[ind] <- vars_full$bety_units[ind]

header <- as.numeric(f$header)
skip <- ifelse(is.na(as.numeric(f$skip)),0,as.numeric(f$skip))

Expand All @@ -105,7 +107,7 @@ query.format.vars <- function(bety,input.id=NA,format.id=NA,var.ids=NA){
site = site.id,
lat = site.lat,
lon = site.lon
)
)
} else {
format <- list(file_name = f$name,
mimetype = f$mimetype,
Expand Down
4 changes: 2 additions & 2 deletions models/biocro/DESCRIPTION
@@ -1,8 +1,8 @@
Package: PEcAn.BIOCRO
Type: Package
Title: PEcAn package for integration of the BioCro model
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: David LeBauer, Deepak Jaiswal
Maintainer: David LeBauer <dlebauer@illinois.edu>
Description: This module provides functions to link BioCro to PEcAn.
Expand Down
4 changes: 2 additions & 2 deletions models/clm45/DESCRIPTION
@@ -1,8 +1,8 @@
Package: PEcAn.CLM45
Type: Package
Title: PEcAn package for integration of CLM4.5 model
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: Mike Dietze
Maintainer: Mike Dietze <dietze@bu.edu>
Description: The Predictive Ecosystem Carbon Analyzer (PEcAn) is a scientific
Expand Down
4 changes: 2 additions & 2 deletions models/dalec/DESCRIPTION
@@ -1,8 +1,8 @@
Package: PEcAn.DALEC
Type: Package
Title: PEcAn package for integration of the DALEC model
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: Mike Dietze, Tristain Quaife
Maintainer: Mike Dietze <dietze@bu.edu>
Description: This module provides functions to link DALEC to PEcAn.
Expand Down
4 changes: 2 additions & 2 deletions models/ed/DESCRIPTION
@@ -1,8 +1,8 @@
Package: PEcAn.ED2
Type: Package
Title: PEcAn package for integration of ED2 model
Version: 1.4.10
Date: 2017-03-27
Version: 1.4.10.1
Date: 2017-04-18
Author: David LeBauer, Mike Dietze, Xiaohui Feng, Dan Wang, Mike Dietze, Carl
Davidson, Rob Kooper, Shawn Serbin
Maintainer: Mike Dietze <dietze@bu.edu>
Expand Down
1 change: 1 addition & 0 deletions models/ed/NAMESPACE
Expand Up @@ -10,6 +10,7 @@ export(read.output.ED2)
export(read.output.file.ed)
export(read_restart.ED2)
export(remove.config.ED2)
export(veg2model.ED2)
export(write.config.ED2)
export(write.config.jobsh.ED2)
export(write.config.xml.ED2)
Expand Down
31 changes: 19 additions & 12 deletions models/ed/R/model2netcdf.ED2.R
Expand Up @@ -21,7 +21,7 @@
##' @importFrom PEcAn.utils logger.info
##' @export
##'
##' @author Michael Dietze, Shawn Serbin, Rob Kooper, Toni Viskari
##' @author Michael Dietze, Shawn Serbin, Rob Kooper, Toni Viskari, Istem Fer
## modified M. Dietze 07/08/12 modified S. Serbin 05/06/13
model2netcdf.ED2 <- function(outdir, sitelat, sitelon, start_date, end_date) {

Expand Down Expand Up @@ -538,16 +538,21 @@ model2netcdf.ED2 <- function(outdir, sitelat, sitelon, start_date, end_date) {
nc_var[[3]] <- mstmipvar("CarbPools", lat, lon, t, zg)
nc_var[[4]] <- mstmipvar("CO2CAS", lat, lon, t, zg)
nc_var[[5]] <- mstmipvar("CropYield", lat, lon, t, zg)
out <- conversion(6, umol2kg_C) ## umol/m2 s-1 -> kg m-2 s-1
nc_var[[6]] <- mstmipvar("GPP", lat, lon, t, zg)
out <- conversion(7, umol2kg_C) ## umol/m2 s-1 -> kg m-2 s-1
nc_var[[7]] <- mstmipvar("HeteroResp", lat, lon, t, zg)
out <- conversion(8, umol2kg_C) ## umol/m2 s-1 -> kg m-2 s-1
nc_var[[8]] <- mstmipvar("NEE", lat, lon, t, zg)
out <- conversion(9, umol2kg_C) ## umol/m2 s-1 -> kg m-2 s-1
nc_var[[9]] <- mstmipvar("NPP", lat, lon, t, zg)
out <- conversion(10, umol2kg_C) ## umol/m2 s-1 -> kg m-2 s-1
nc_var[[10]] <- mstmipvar("TotalResp", lat, lon, t, zg)
out <- conversion(6, yr2s) ## kg C m-2 yr-1 -> kg C m-2 s-1
nc_var[[6]]<- ncdf4::ncvar_def("GPP", units = "kg C m-2 s-1", dim = list(lon, lat, t), missval = -999,
longname = "Gross Primary Productivity")
out <- conversion(7, yr2s) ## kg C m-2 yr-1 -> kg C m-2 s-1
nc_var[[7]]<- ncdf4::ncvar_def("HeteroResp", units = "kg C m-2 s-1", dim = list(lon, lat, t), missval = -999,
longname = "Heterotrophic Respiration")
out <- conversion(8, yr2s) ## kg C m-2 yr-1 -> kg C m-2 s-1
nc_var[[8]]<- ncdf4::ncvar_def("NEE", units = "kg C m-2 s-1", dim = list(lon, lat, t), missval = -999,
longname = "Net Ecosystem Exchange")
out <- conversion(9, yr2s) ## kg C m-2 yr-1 -> kg C m-2 s-1
nc_var[[9]]<- ncdf4::ncvar_def("NPP", units = "kg C m-2 s-1", dim = list(lon, lat, t), missval = -999,
longname = "Net Primary Productivity")
out <- conversion(10, yr2s) ## kg C m-2 yr-1 -> kg C m-2 s-1
nc_var[[10]]<- ncdf4::ncvar_def("TotalResp", units = "kg C m-2 s-1", dim = list(lon, lat, t), missval = -999,
longname = "Total Respiration")
nc_var[[11]] <- mstmipvar("TotLivBiom", lat, lon, t, zg)
nc_var[[12]] <- mstmipvar("TotSoilCarb", lat, lon, t, zg)
nc_var[[13]] <- mstmipvar("Fdepth", lat, lon, t, zg)
Expand All @@ -566,7 +571,9 @@ model2netcdf.ED2 <- function(outdir, sitelat, sitelon, start_date, end_date) {
nc_var[[25]] <- mstmipvar("Lwnet", lat, lon, t, zg)
nc_var[[26]] <- mstmipvar("Qg", lat, lon, t, zg)
nc_var[[27]] <- mstmipvar("Qh", lat, lon, t, zg)
nc_var[[28]] <- mstmipvar("Qle", lat, lon, t, zg)
out <- conversion(28, get.lv()) ## kg m-2 s-1 -> W m-2
nc_var[[28]]<- ncdf4::ncvar_def("Qle", units = "W m-2", dim = list(lon, lat, t), missval = -999,
longname = "Latent heat")
nc_var[[29]] <- mstmipvar("Swnet", lat, lon, t, zg)
nc_var[[30]] <- mstmipvar("RootMoist", lat, lon, t, zg)
nc_var[[31]] <- mstmipvar("Tveg", lat, lon, t, zg)
Expand Down

0 comments on commit afd5e89

Please sign in to comment.