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

Bugfix/240 #263

Merged
merged 14 commits into from
Apr 21, 2018
Merged

Bugfix/240 #263

merged 14 commits into from
Apr 21, 2018

Commits on Apr 11, 2018

  1. Add zoo_graze terms to zooplankton_share_type

    Several tendencies in marbl_ciso_mod.F90 are missing zoo_graze terms; the first
    step to add them in is to make them accessible in the module via the share
    type.
    mnlevy1981 committed Apr 11, 2018
    Configuration menu
    Copy the full SHA
    d2fbb78 View commit details
    Browse the repository at this point in the history
  2. Include all grazing terms for ciso dtracer

    Previously, marbl_ciso_mod.F90 computed tendencies without considering
    the possibility that zooplankton could be grazed, so no zoo_graze_*
    terms were included. The mass balance check did not catch this (even in
    a test run where zoo grazes itself) because the way the mass balance
    checks are constructed the missing terms all canceled each other out.
    
    I did confirm that adding some zoo_graze terms (but not all of them)
    triggered the error when zoo grazed itself and had no effect when zoo
    was not grazed.
    mnlevy1981 committed Apr 11, 2018
    Configuration menu
    Copy the full SHA
    dbb7cd0 View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2018

  1. Sum zooplankton terms before putting in share

    marbl_ciso_mod.F90 only wants the sum of zooplankton terms like zoo_loss
    and zoo_graze (sum over all zooplankton species). Instead of sending
    each individual loss / grazing term, marbl_mod.F90 now does the sum in
    marbl_export_zooplankton_shared_variables().
    
    Also, marbl_ciso_mod.F90 does not need x_graze_zoo so that field is not
    included in the share type.
    mnlevy1981 committed Apr 12, 2018
    Configuration menu
    Copy the full SHA
    739f597 View commit details
    Browse the repository at this point in the history
  2. Remove auto_loss and auto_graze from share type

    Instead of copying these into marbl_autotroph_share_type, just pass
    autotroph_secondary_species to marbl_ciso_set_interior_forcing().
    mnlevy1981 committed Apr 12, 2018
    Configuration menu
    Copy the full SHA
    394deb0 View commit details
    Browse the repository at this point in the history
  3. Use more of autotroph_secondary_species

    Cleaned up more variables that were available to marbl_ciso_mod.F90 via
    autotroph_secondary_species but were still being copied to
    marbl_autotroph_share_type. At this point, the only use of the share
    type is to copy tracer_local terms and there is already a plan to pass
    tracer_local instead.
    mnlevy1981 committed Apr 12, 2018
    Configuration menu
    Copy the full SHA
    53b4b0a View commit details
    Browse the repository at this point in the history

Commits on Apr 13, 2018

  1. zoo1[34]Ctot -> zootot1[34]C

    Part of some post-review code-cleanup - realized that the
    zooplankton_share_type and marbl_ciso_mod.F90 should be using zootot instead of
    zoo to signify this is a sum over zooplankton species. As a first pass, I
    changed zoo13Ctot and zoo14Ctot to zootot13C and zootot14C, respectively.
    mnlevy1981 committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    6a9a3ec View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2018

  1. All zoo references in ciso mod are zootot

    Since marbl_mod.F90 sums over all zooplankton when storing data in the
    zooplankton share type, those variables are now refered to as zootot:
    
    zoototC
    zootot_loss
    zootot_graze
    
    And so on. This is most pronounced in marbl_ciso_mod.F90, but also is apparent
    in the diagnostics module.
    mnlevy1981 committed Apr 16, 2018
    Configuration menu
    Copy the full SHA
    08995f3 View commit details
    Browse the repository at this point in the history
  2. Diagnostic changes from 08995f3 reflected in YAML

    The changes to diagnostic names and metadata from the previous commit
    were not included in default_diagnostics.yaml, so GCMs were looking for
    CISO_zooC_d1[34]C instead of CISO_zoototC_d1[34]C
    mnlevy1981 committed Apr 16, 2018
    Configuration menu
    Copy the full SHA
    9deb765 View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2018

  1. Remove autotroph_share_type

    Expand autotroph_local_type to include carbon isotope elements, and then pass
    autotroph_local to marbl_ciso_set_interior() instead of copying data into the
    share type. Other related clean-ups:
    
    * marbl_autotroph_share_type is no longer needed
    * marbl_compute_autotroph_phyto_diatoms() does not need autotroph_local
    * marbl_ciso_mod.F90 no longer needs its own autotroph_local_type, so there is
      no longer a consistency check there (or a setup_autotroph_local, since that
      is taken care of in marbl_mod)
    mnlevy1981 committed Apr 17, 2018
    Configuration menu
    Copy the full SHA
    394e9c7 View commit details
    Browse the repository at this point in the history
  2. Increase size of tracer_local

    tracer_local is no longer restricted to the base tracers, it also
    contains carbon isotope tracers if ciso_on = .true. This fixes a bug in
    attempts to put carbon isotope fields in autotroph_local.
    mnlevy1981 committed Apr 17, 2018
    Configuration menu
    Copy the full SHA
    3d31170 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2018

  1. Only compute R1[34]C_autotrophCaCO3 for calcifiers

    No need to compute this ratio for autotrophs that do not have CaCO3
    tracer
    mnlevy1981 committed Apr 18, 2018
    Configuration menu
    Copy the full SHA
    91e40ae View commit details
    Browse the repository at this point in the history
  2. Pass tracer_local to ciso_set_interior_forcing()

    Instead of copying some elements of tracer_local to interior_share and
    recomputing other elements in setup_local_column_tracers, just pass
    tracer_local (instead of tracers) to marbl_ciso_set_interior_forcing(). This
    means that some associate statements need to be updated to point to elements of
    tracer_local instead of marbl_interior_share_type (and some local variables are
    now associate statements instead of being computed in marbl_ciso_mod).
    mnlevy1981 committed Apr 18, 2018
    Configuration menu
    Copy the full SHA
    d700590 View commit details
    Browse the repository at this point in the history
  3. Fix typo from last commit

    DO13Ctot_loc was inadvertently pointing to DO14Ctot_loc
    mnlevy1981 committed Apr 18, 2018
    Configuration menu
    Copy the full SHA
    a284a46 View commit details
    Browse the repository at this point in the history

Commits on Apr 20, 2018

  1. Code clean-up following review

    * several "zooC" -> "total zooC" or "zoototC" in comments
    * R1[34]C_zooC -> R1[34]C_zoototC
    * autotroph consistency check has a single "if (ciso_on) then" block
      and checks for Ca1[34]CO3_ind instead of individual checks for all
      isotopic autotroph tracers
    * ciso_set_interior_forcing(): reordered arguments in interface so all
      intent(in)s are clumped together, followed by the (inout)s
    mnlevy1981 committed Apr 20, 2018
    Configuration menu
    Copy the full SHA
    d106c6d View commit details
    Browse the repository at this point in the history