Skip to content

PEcAn v1.8.0

Latest
Compare
Choose a tag to compare
@robkooper robkooper released this 13 Jul 02:48
1f4c805

Added

  • Created a new soilgrids function to extract the mean soil organic carbon profile with associated undertainty values at each depth for any lat/long location (#3040). Function was created for the CMS SDA workflow

  • PEcAn.all gains new function pecan_version, which reports for each PEcAn
    package the version that was provided with this release and the version that
    is currently installed. Use it in scripts to record your system state for
    reproducibility, or for debugging.

  • Added a new function unit_is_parseable in PEcAn.utils to replace udunits2::ud.is.parseable.
    (#3002; @nanu1605)

  • Initial LDNDC model coupling

  • Added optional process_partial argument to model2netcdf.ED2() to allow it to process existing output from failed runs.

  • Added litter_mass_content_of_water to standard_vars table and model2netcdf.SIPNET

  • Added all SIPNET state variables to read_restart and write_restart

  • Added Observation preparation functions into the SDA workflow, which supports AGB, LAI, Soil Carbon, and Soil moisture.

  • Added an optional pfts argument to PEcAn.uncertainty::run.sensitivity.analysis() so that sensitivity analysis and variance decomposition can be run on a subset of PFTs defined in settings if desired (#3155).

  • Added new features of the SDA function including: 1) allow user-defined free-run mode;

  1. allow user-defined parallel mode for the qsub submission; 3) allow user-defined email option to report the progress.
  • PEcAnAssimSequential::GET.MultiSite() now supports the parallelization of multi-chain MCMC sampling with the fully randomized inits function.
  • Added the new feature of the block-based SDA workflow, which supports the parallel computation.
  • Added new SDA workflow for the 342 North America anchor sites.
  • Added new feature of preparing initial conditions for MODIS LAI, AGB, ISCN SOC, and soil moisture across NA anchor sites.
  • Added GEDI AGB preparation workflow.
  • Added new feature of downloading datasets from the NASA DAAC ORNL database.

Fixed

  • Replaced the broken ameriflux download pipeline with the new amerifluxr package's function.
  • Fix broken build caused by BioCro updates #2925
  • rstudio was not working behind traefik.
  • plots now work in docker containers
  • when specifying diferent rstudio user, dev setup would mount pecan folder in wrong path.
  • fixed the pagination error in the next_page field of the workflows, inputs and runs Rest API.
  • bugs in model2ncdf.ED2() that were causing it to both error and also only
    convert data for a single PFT fixed (#1329, #2974, #2981)
  • Code cleanup in PEcAn.MA to protect against global namespace pollution (#2965, #2973; @nanu1605)
  • Fixed vignettes and cleaned up internal warnings in PEcAn.DB (#2966, #2971; @nanu1605).
  • Updated unit conversions throughout PEcAn to use the units R package
    instead of the unmaintained udunits2.
    Note that both units and udunits2 interface with the same underlying
    compiled code, so the udunits2 system library is still required.
    (#2989; @nanu1605)
  • Occasionally some run directories were not getting copied over to remote hosts. This should be fixed now (#3025)
  • Fixed a bug with ED2 where ED2IN tags supplied in settings that were not in the ED2IN template file were not getting added to ED2IN config files (#3034, #3033)
  • Fixed a bug where warnings were printed for file paths on remote servers even when they did exist (#3020)
  • Fixed bug in model2netcdf.SIPNET that caused LE to be overestimaed 10^3 (#3036)
  • Added an updated ED2IN template file, models/ed/inst/ED2IN.r2.2.0.github, to reflect new variables in the development version of ED2
  • PEcAn.data.land::gSSURGO.Query has been updated to work again after changes to the gSSURGO API.
  • PEcAn.settings::read.settings() now prints a warning when falling back on default "pecan.xml" if the named inputfile doesn't exist.
  • fqdn() can access hostname on Windows (#3044 fixed by #3058)
  • write.config.xml.ED2() wasn't using the tag in settings correctly (#3080)
  • runModule.get.trait.data() now correctly respects the settings$database$bety$write setting (#2968)
  • Fixed a bug in model2netcdf.ed2() where .nc file connections were being closed multiple times, printing warnings (#3078)
  • Fixed a bug causing the model2netcdf.ED2() step in jobs.sh to be incorrectly written (#3075)
  • Fixed a bug where plant_min_temp trait value wasn't being converted from ºC to K when writing config file for ED2 (#3110)
  • Fixed a bug in PEcAn.ED2::read_E_files() affecting PEcAn.ED2::model2netcdf.ED2() that resulted in incorrect calculations (#3126)
  • Fixed a bug in PEcAn.utils::ud_convert() where it failed with objects of class "difftime" introduced by refactoring to use the units package instead of udunits (#3012)
  • The propagation of aqq and bqq for the SINGLE Q type has been corrected.
  • The issue where the indirect constraints will be increase with the increase of the covariance sizes.
  • Updated URL for MERRA downloads (#2888)

Changed

  • The default build of PEcAn now uses R 4.1. PEcAn is also tested daily on R 4.2 and weekly on R-devel. R 4.0 and older are no longer tested and will probably not work.
  • Some changes have been made to the docker-compose file. Check your .env file to
    see if you need to change any of these:
    • TRAEFIK_HOST is now TRAEFIK_HOSTNAME without the Host: and ;, for example if you have
      TRAEFIK_HOST=Host:pecan.example.com; you will need to change this to
      TRAEFIK_HOST=pecan.example.com.
    • TRAEFIK_IPFILTER is no longer used, and should be removed.
    • TRAEFIK_HTTP_PORT now defaults to port 80
    • TRAEFIK_HTTPS_PORT now defaults to port 443
    • TRAEFIK_ACME_ENABLE is no longer used. If you want to use https you will need to add
      docker-compose.https.yml to your command line. You can use the script compose.sh
      to start PEcAn with https.
    • TRAEFIK_HTTPS_OPTIONS is no longer used, this is the default when you use https.
    • TRAEFIK_HTTP_REDIRECT is no longer used, this is the default when you use https.
  • Updated Dockerfile for sipnet/maespa/template to use pecan/models:tag to build.
  • The yr and yfiles arguments of PEcAn.ED2::read_E_files() are no longer used
    and the simulation date is extracted from the names of the .h5 files output by ED2.
  • DDBH (change in DBH over time) is no longer extracted and summarized from
    monthly -E- files by PEcAn.ED2::model2netcdf.ED2(). We are not sure it makes
    sense to summarize this variable across cohorts of different sizes.
  • PEcAn.SIPNET::model2netcdf.SIPNET can now export full year nc files by using
    the cdo_setup argument in the template job file. In detail, people will need
    to specify `cdosetup = "module load cdo/2.0.6"`` in the host section. More details
    are in the Create_Multi_settings.R script. (#3052)
  • PEcAn.settings::read.settings() now strips comments so HTML style comments (e.g. <!-- a comment -->) are now allowed in pecan.xml files
  • PEcAn.logger::setLevel() now invisibly returns the previously set logger level
  • Warning messages for model2netcdf.ed2() coming from ncdf4::ncvar_put() now are prepended with the variable name for easier debugging (#3078)
  • Database connections consistently use DBI::dbConnect instead of the deprecated dplyr::src_postgres (#2881). This change should be invisible to most users, but it involved converting a lot of internal variables from bety$con to con. If you see errors involving these symbols it means we missed a place, so please report them as bugs.
  • PEcAn.utils::download.url argument retry404 is now renamed to retry and
    now functions as intended (it was being ignored completely before).
  • We have begun the process of relicensing the PEcAn packages from the previous NCSA license to BSD-3, with the consent of all contributors. PEcAn.logger is now distributed as BSD-3; others will be changed as their authors sign off.
  • Skipped ICOS and MERRA download tests when running in github actions
  • Converted .zenodo.json to CITATION.cff
  • Using traefik 2.5 instead of 1.7
  • api is now open by default (was auth required in the past)
  • Installation instructions updated in documentation
  • PEcAn.assim.sequential is renamed to PEcAnAssimSequential
  • convert.input is moved from PEcAn.utils to PEcAn.DB and renamed as convert_input.
    This was needed to resolve a cyclic dependency between PEcAn.DB and PEcAn.utils.
    (#3026; @nanu1605)
  • Internal changes to keep up to date with tidyselect v1.2.0
  • The PEcAn.utils::download.file() function has now been renamed to PEcAn.utils::download_file()
  • The regrid() and grid2netcdf() function from PEcAn.utils have been moved to PEcAn.data.remote package.
  • Web is now build using PHP 8 since PHP 7 is EOL.

Removed

  • the check image (used in kubernetes) is removed, please use ncsa/checks instead.
  • Unused (and apparently long-broken) function PEcAn.data.land::find.land has been removed.
  • No longer building r136 sipnet docker image.