Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added code to put the PCT_NAT_PFT_MAX and PCT_CFT_MAX on the landuse.… #331

Merged
merged 6 commits into from
Jul 6, 2018

Commits on Mar 27, 2018

  1. Added code to put the PCT_NAT_PFT_MAX and PCT_CFT_MAX on the landuse.…

    …timeseries
    
    file to register the maximum values for PCT_NAT_PFT and PCT_CFT through the time series.
    This is used to determine how many PFTs and CFTs are instantiated at run time in CLM5
    Peter Lawrence committed Mar 27, 2018
    Configuration menu
    Copy the full SHA
    ff3a5c6 View commit details
    Browse the repository at this point in the history

Commits on Apr 2, 2018

  1. Following suggestions by Bill Sacks the code has been updated to outp…

    …ut PCT_CROP_MAX in addition to
    
    PCT_NAT_PFT_MAX and PCT_CFT_MAX. This involved modifying the new subroutine to update both p2l and l2g
    and renaming it update_max_array. Additional changes were made to match Bill's suggestions of
    the sub_routine subname parameter and moving the initial assignment of the max array within the
    if (mksrf_fdynuse /= ' ') then code
    The code has been tested and produces the maximum PCT_CROP_MAX variable as expected. PJL
    Peter Lawrence committed Apr 2, 2018
    Configuration menu
    Copy the full SHA
    4291c19 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2018

  1. Added code to put the PCT_NAT_PFT_MAX and PCT_CFT_MAX on the landuse.…

    …timeseries
    
    file to register the maximum values for PCT_NAT_PFT and PCT_CFT through the time series.
    This is used to determine how many PFTs and CFTs are instantiated at run time in CLM5
    Peter Lawrence authored and ekluzek committed Jul 3, 2018
    Configuration menu
    Copy the full SHA
    8e96f42 View commit details
    Browse the repository at this point in the history
  2. Following suggestions by Bill Sacks the code has been updated to outp…

    …ut PCT_CROP_MAX in addition to
    
    PCT_NAT_PFT_MAX and PCT_CFT_MAX. This involved modifying the new subroutine to update both p2l and l2g
    and renaming it update_max_array. Additional changes were made to match Bill's suggestions of
    the sub_routine subname parameter and moving the initial assignment of the max array within the
    if (mksrf_fdynuse /= ' ') then code
    The code has been tested and produces the maximum PCT_CROP_MAX variable as expected. PJL
    Peter Lawrence authored and ekluzek committed Jul 3, 2018
    Configuration menu
    Copy the full SHA
    668370a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    18cdc13 View commit details
    Browse the repository at this point in the history
  4. Merge tag 'ctsm1.0.dev001' into clm5_maxpftcft

    Begin separating SoilHydrology flux calculations
    
    Note the new tag naming: Starting with this tag, we are naming tags
    "ctsm..." rather than "clm...". We are starting with ctsm version 1,
    which for now is nearly the same as clm version 5. We are moving to this
    new tag naming now because:
    
    (1) The changes in this tag represent the first step towards
        implementing the CTSM vision (separating the biogeophysics flux
        calculations from state updates, making it easier to plug in
        alternative parameterizations, etc.).
    
    (2) This tag changes answers relative to the CLM5 release. (We expect
        the climate to be the same, but we haven't tested this carefully
        yet.)
    
    Purpose of changes
    ------------------
    
    First steps toward separating various flux calculations in the soil
    hydrology code. The focus here is on saturated surface runoff and
    infiltration excess runoff. The changes here separate flux calculations
    from state updates and extract various calculations into their own
    subroutines to facilitate swapping in alternative parameterizations.
    
    Most of the changes here are refactorings that are either bit-for-bit or
    just introduce roundoff-level differences. However, there are also a few
    larger answer changes, as described below.
    
    These are the greater-than-roundoff-level answer changes:
    
    (A1) Use full qflx_surf in BGC code. Previously, the subroutines ch4 and
         SoilBiogeochemNLeaching had been using a flux that excluded surface
         water runoff (qflx_h2osfc_surf). That was deemed to be incorrect
         (by Dave Lawrence and others), so these BGC subroutines have been
         changed to use the full surface runoff (saturated excess runoff +
         infiltration excess runoff + h2osfc runoff).
    
         Configurations affected: BGC compsets
    
         Magnitude of change: Larger than roundoff; expected to be same
         climate, but not investigated carefully
    
    (A2) VIC: Don't ever use the TOPModel formulation for SurfaceRunoff
    
         The code was using the TOPModel-based formulation for SurfaceRunoff
         if frost_table > zwt_perched. Sean Swenson felt this shouldn't be
         done, and refactoring will be easier if VIC always uses the
         vic-looking formulation, so I'm stopping applying this formulation
         when using VIC.
    
         Configurations affected: VIC compsets
    
         Magnitude of change: Larger than roundoff; not investigated carefully
    
    (A3) VIC: Remove infiltration excess runoff
    
         Martyn Clark reviewed the VIC implementation, and felt that the
         current implementation of infiltration excess runoff is
         inconsistent with the standard VIC implementation. It appears that
         what was being called VIC's infiltration excess runoff was actually
         just an attempt to give a better numerical approximation to the
         solution for saturated surface excess runoff. So deleting this
         leaves only a first-order approximation to VIC's saturated surface
         excess runoff.
    
         Eventually we may want to put in place a more accurate solution for
         VIC's saturated surface excess runoff. But Martyn's feeling is that
         this can come in with other changes we want to make regarding
         numerical solutions in CTSM.
    
         Configurations affected: VIC compsets
    
         Magnitude of change: Larger than roundoff; expected to be same
         climate, but not investigated carefully
    
    (A4) Change in QOVER diagnostic field: now includes QH2OSFC.
    
    These are the major refactorings (either bit-for-bit or just
    roundoff-level differences):
    
    (R1) Extract surface runoff to its own module, and other modularization
         related to what used to be subroutine SurfaceRunoff: extract a
         subroutine for each fsat method, move urban surface runoff code
         into different routines.
    
    (R2) Extract infiltration excess runoff to its own module, and other
         modularization related to what used to be subroutine Infiltration.
    
    NOTE: For a detailed breakdown of changes, including documentation of
    which changed changed answers, see the file ChangeLog_branch which was
    deleted from this branch shortly before it was merged to master.
    ekluzek committed Jul 3, 2018
    Configuration menu
    Copy the full SHA
    c65eccd View commit details
    Browse the repository at this point in the history