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

Candidate for main from GFDL 2020-09-18 #1211

Merged
merged 415 commits into from
Oct 22, 2020
Merged
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jun 26, 2020

  1. Configuration menu
    Copy the full SHA
    487a33e View commit details
    Browse the repository at this point in the history
  2. (*)Corrected halo size in EOS call if VERTEX_SHEAR=T

      Corrected halo size in density derivative calculations in smoothed_dRdT_dRdS
    This fixes an i-parallelization problem that was recently introduced (as a part
    of MOM6 PR#1089) when VERTEX_SHEAR is True, and closes MOM6 issue #1146.  All
    answers in the existing MOM6-examples test suite are bitwise identical, but this
    does change (correct) answers when VERTEX_SHEAR is true.
    Hallberg-NOAA committed Jun 26, 2020
    Configuration menu
    Copy the full SHA
    c95421f View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2020

  1. Fixing openmp issues with FMS2020 cpu affinity

    - FMS2020 has newer cpu affinity work. These are mostly to fix the
      issues with thread placing and  hyperthreadng under slurm on gaea.
      But it also works on Orion.
    - The new affinity module simplifies the thread-placing calls in the
      component models.
    - The name of some functions has changed, that's the reason for crashes
      like:
          FATAL: input domain does not have an io_domain.
    - This update fixes those issues.
    - openmp runs with 1 and 2 threads gives the same answers as non-openmp
    - NOTE: I don't rememer why we put the thread placing calls in MOM_domains.F90
            They look as unnecessary and the whole #ifndef NOT_SET_AFFINITY block
            can probably be removed. ocean_nthreads is either set in coupler
    or solo_driver.
    nikizadehgfdl committed Jun 28, 2020
    Configuration menu
    Copy the full SHA
    7bf4a30 View commit details
    Browse the repository at this point in the history

Commits on Jun 29, 2020

  1. Merge pull request #1147 from Hallberg-NOAA/fix_vertex_shear_halo

    (*)Corrected halo size in EOS call if VERTEX_SHEAR=T
    adcroft authored Jun 29, 2020
    Configuration menu
    Copy the full SHA
    d44e79b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bd57b78 View commit details
    Browse the repository at this point in the history

Commits on Jul 1, 2020

  1. Testing: Explicit OpenMP CPU affinity

    FMS affinity operations, often used in OpenMP directives, require
    explicit CPU affinities such that the number of available CPUs matches
    the number of requested PEs.
    
    To accommodate this, we explicit configure OpenMP to use cpu=0 for our
    ARM tests.
    marshallward committed Jul 1, 2020
    Configuration menu
    Copy the full SHA
    ccd4cbf View commit details
    Browse the repository at this point in the history
  2. Removed #ifdef debugging blocks

      Removed old debugging code in blocks of code surrounded by #ifdef statements
    and removed unnecessary #ifdef around other blocks of debugging code.  MOM6
    standards discourage the use of CPP macros except for a limited set of uses
    related to memory where this is unavoidable, so this commit is bringing MOM6
    closer to its stated standards.  All answers and output are identical.
    Hallberg-NOAA committed Jul 1, 2020
    Configuration menu
    Copy the full SHA
    d64be20 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    af55cce View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8f21d4c View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2020

  1. +Aligned newlines with module documentation

      Modified doc_module so that new lines are added only when modules are
    documented, and are added in all parameter_doc files in which modules are
    documented.  All answers and output are identical, but there are white space
    changes in MOM_parameter_doc and SIS_parameter_doc files.
    Hallberg-NOAA committed Jul 2, 2020
    Configuration menu
    Copy the full SHA
    650683c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    515f329 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2020

  1. Fixing the OMP issue?

    kshedstrom committed Jul 3, 2020
    Configuration menu
    Copy the full SHA
    2c18649 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    209389a View commit details
    Browse the repository at this point in the history
  3. +Add like_default optional argument to log_param

      Added the new optional argument like_default to the log_param and doc_param
    routines to help control where the documentation appears.  This new argument is
    used for logging EPBL_USTAR_MIN, the diagnosed output value of MAXIMUM_DEPTH
    when the input value is negative, and the diagnosed number of columns where
    sponges occur with MOM_ALE_sponge.  An '!' was also added to the logging of
    EPBL_USTAR_MIN.  All answers are bitwise identical but there are minor changes
    in the contents of some MOM_parameter_doc.short files.
    Hallberg-NOAA committed Jul 3, 2020
    Configuration menu
    Copy the full SHA
    d1cd696 View commit details
    Browse the repository at this point in the history
  4. altered OpenMP directive for diagnostic

    Graeme MacGilchrist authored and Graeme MacGilchrist committed Jul 3, 2020
    Configuration menu
    Copy the full SHA
    e9c1f6c View commit details
    Browse the repository at this point in the history
  5. Merge branch 'add_dens_deriv_diag' of github.com:gmacgilchrist/MOM6 i…

    …nto add_dens_deriv_diag
    Graeme MacGilchrist authored and Graeme MacGilchrist committed Jul 3, 2020
    Configuration menu
    Copy the full SHA
    3951b70 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    dd8d3ab View commit details
    Browse the repository at this point in the history
  7. Merge pull request #1142 from gmacgilchrist/add_dens_deriv_diag

    Added diagnostics for partial derivatives of density
    marshallward authored Jul 3, 2020
    Configuration menu
    Copy the full SHA
    33792c6 View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2020

  1. Configuration menu
    Copy the full SHA
    af25108 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1152 from Hallberg-NOAA/remove_ifdefs

    Removed #ifdef debugging blocks
    marshallward authored Jul 5, 2020
    Configuration menu
    Copy the full SHA
    ff1bef0 View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2020

  1. Configuration menu
    Copy the full SHA
    b656ce3 View commit details
    Browse the repository at this point in the history
  2. +Set all_default for 4 log_version calls

      Added code to determine whether all parameters in the MOM_grid, MOM_restart,
    MOM_write_cputime and MOM_tracer_registry modules are being used with their
    default settings, and added all_default arguments to the log_version calls for
    these modules.  All answers and output are identical, but there are white space
    changes in MOM_parameter_doc.short and SIS_parameter_doc.short files.
    Hallberg-NOAA committed Jul 6, 2020
    Configuration menu
    Copy the full SHA
    029af68 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    14d4cda View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1150 from marshallward/omp_affinity_test

    Testing: Explicit OpenMP CPU affinity
    Hallberg-NOAA authored Jul 6, 2020
    Configuration menu
    Copy the full SHA
    56ec441 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b97e31b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a6d5d28 View commit details
    Browse the repository at this point in the history
  7. Correted OMP directives for two OBC variables

    - Members of a type cannot be individually labelled as shared/private
    - One variable was converted to shared since it was defiend in a non-OMP
      section and then labelled as private which meant it was uninitialized.
    adcroft committed Jul 6, 2020
    Configuration menu
    Copy the full SHA
    153417f View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9aed664 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    4647870 View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2020

  1. Merge branch 'module_doc_newlines' of https://github.com/Hallberg-NOA…

    …A/MOM6 into Hallberg-NOAA-module_doc_newlines
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    a0e019b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    13e61a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5736bcf View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    371d4e7 View commit details
    Browse the repository at this point in the history
  5. Merge branch 'fix_openmp_affinity_issues_with_FMS2020' of https://git…

    …hub.com/nikizadehgfdl/MOM6 into nikizadehgfdl-fix_openmp_affinity_issues_with_FMS2020
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    10afb0b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5aae165 View commit details
    Browse the repository at this point in the history
  7. Adds the Stanley version of EOS

    - Stanley et al., 2020, adds the Brankart modification to volume mean
      density via linear corrections involving SGS sample variances and
      covariances of T and S. This commit adds the new interfaces that
      allow a call to calculate_density to include the variances and
      covariance as arguments. This correction sits above the particular
      EOS and thus can use any EOS so long as second derivatives are
      available within the EOS module.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    5019710 View commit details
    Browse the repository at this point in the history
  8. Renamed pressure_gradient_plm() to TS_PLM_edge_values()

    - The routines pressure_gradient_plm() and pressure_gradient_ppm()
      were poorly named and had comments referring to the pressure gradient
      calculation even though the only calculate edge values in the vertical
      for T/S using ALE functions. The routines are actually more general
      and can be used outside of the PGF. The comments have been shortened
      and no longer refer to the PGF.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    3006b9c View commit details
    Browse the repository at this point in the history
  9. Break out density integrals into a new module

    - The integrals of density routines used (mostly) by the PGF calculation
      were part of MOM_EOS. Originally, when writing the analytic FV PGF paper,
      this was the right place to put the integrals. The additional variants
      using the ALE reconstruction functions mean that it is cleaner to have
      these routines sit in a layer above EOS and ALE.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    7e8ac75 View commit details
    Browse the repository at this point in the history
  10. Renamed ppoly_E to edge_values for a bit of clarity

    - ppoly_E meant something to someone a while ago but we felt it
      would be better to clean up the ALE APIs. This is a pre-cursor
      to switching to a more precise description of reconstructions.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    2e1d823 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    05dbf86 View commit details
    Browse the repository at this point in the history
  12. Tidied up logic for EOS_QUADRATURE

    - Undid nesting of if / select statemnent
    - Changed FATAL messages
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    7171c1a View commit details
    Browse the repository at this point in the history
  13. Removed find_depth_of_pressure_in_cell() from MOM_EOS

    - Function had been moved to density_integrals already but not
      deleted
    - Also ordered public statements in MOM_EOS to help find things.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    6a0b23d View commit details
    Browse the repository at this point in the history
  14. Reordered function in MOM_density_integrals

    - Order was frustratingly illogical
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    5b59cdc View commit details
    Browse the repository at this point in the history
  15. Use SZ macros in declarations

    - When converting from the two hor_index types to one (HII and HIO
      became HI) I retained the HI%isd:... declaration statements. We
      normally use `SZI_(G)` or `SZI_(HI)` so this switches to that style.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    d3e1790 View commit details
    Browse the repository at this point in the history
  16. Implemented elemental PLM functions

    - This adds elemental functions for cellwise operations within the PLM
      construction procedure which allows the operations to be accessed
      from outside of the ALE functions on different array shapes but recover
      bitwise identical results.
    - The older subroutines now use the functions and some optimizations were
      obtained in the process.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    3e1f6b6 View commit details
    Browse the repository at this point in the history
  17. Add time for unit_tests

    - Out of curiosity I want to be sure these weren't implicated in the long
      initialization cost.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    5930855 View commit details
    Browse the repository at this point in the history
  18. Fixed index capitalization in int_density_dz_generic_plm()

    - Soft index convention was not properly implemented in original PLM
      density integrals. Fixed to avoid confusion.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    a9d0caa View commit details
    Browse the repository at this point in the history
  19. Re-used pre-computed weights in int_density_dz_generic_plm()

    - Probably makes no difference but we re-computed weights repeatedly
      even though we'd pre-computed them (and used only once).
      - Reduces number of local variables.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    7fbcb01 View commit details
    Browse the repository at this point in the history
  20. Adds the PPM form of PGF by quadrature

    - Removes (now) unused functions for quadrature and polynomial evaluation
    - Has been tested by setting the logical use_PPM=.false.
      - reproduces PLM mode bitwise
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    d25a36b View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    d945d70 View commit details
    Browse the repository at this point in the history
  22. Fixed openmp in MOM_ALE.F90

    - Use of new PLM functions led to out of date directives
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    aaa0487 View commit details
    Browse the repository at this point in the history
  23. Updated to int_density_dz_generic_ppm() to use k and tv arguments

    - Now passing in 3D structures and tv so that we can access other fields
      in tv%.
    - Corrected calculation of curvatures s6, t6 for interpolated interior
      line integrals.
    - Tested with use_PPM=.false. and PLM edge values.
      - Using PLM edge values with use_PPM=.true. does give different answers
        because t6,s6 are non-zero albeit tiny. This is due to FP truncation
        errors.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    80da001 View commit details
    Browse the repository at this point in the history
  24. Renamed MOM_PressureGradient_AFV

    - Since the majority of code is not about the analytic integration
      I thought it time to rename this module
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    783983e View commit details
    Browse the repository at this point in the history
  25. After renaming module, change _AFV_ to _FV_

    - Continuation of rename of module
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    e833677 View commit details
    Browse the repository at this point in the history
  26. Removed conditional scaling from int_density_dz_generic_ppm()

    - This routine was suffering from if's inside loops. I've removed this
      one since it was just obfuscation, pretending to care about performance
      and actually reducing it.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    660150f View commit details
    Browse the repository at this point in the history
  27. Adds SGS variance to tv and adds Brankart effect to PGF

    - Makes use of the Stanley equation of state to include effects of
      SGS temperature variance, salinity variance and T-S covariance.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    7ae38fe View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    b7afafb View commit details
    Browse the repository at this point in the history
  29. Re-wrote Stanley parameterization using vertical weights

    - This now calculates the gradient of SGS temperature variance
      using the same discretization as used for the gradient of
      density along coordinate surfaces.
    - Added run-time coefficient for Stanley parameterization
    - Fixed openmp directives.
    - Alters halo over which vert_fill_TS() is called.
    - Add Stanley parameter to tc2 to test new code.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    f462c4d View commit details
    Browse the repository at this point in the history
  30. Added STANLEY_PRM_DET_COEFF run time parameter

    - Renamed STANLEY_DET_COEFF to STANLEY_PRM_DET_COEFF to indicate
      this is for the Stanley parameterization as opposed to a related
      approach by Stanley for implementing the Brankart PGF correction.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    75a20d8 View commit details
    Browse the repository at this point in the history
  31. Adds the T variance Stanley component to PGF

    - PGF_STANLEY_T2_DET_COEFF>=0. now adds the temperature variance
      contribution to the Brankart correction using the Stanley linearization
      of the EOS and parameterization of SGS variance.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    c94e0cb View commit details
    Browse the repository at this point in the history
  32. Nullified new pointers in tv

    - After starting with allocatables and switching to pointers
      I'd forgotten to nullify them.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    073b422 View commit details
    Browse the repository at this point in the history
  33. Correct scaling for second derivs in Stanley param

    - Passing the scale= to calculate_density_second_derivs() was the
      double scaling the density contribution from SGS variance in the
      Stanley parameterization.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    b7341c2 View commit details
    Browse the repository at this point in the history
  34. Corrected indentation in MOM_EOS

    - select case statements were indented as if once inside a loop.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    6356092 View commit details
    Browse the repository at this point in the history
  35. Fixed pressure scaling for calculate_stanley_density_array()

    - The pressure scaling was wrong when trying to call
      calculate_density_second_derivs_array() from within
      calculate_stanley_density_array() because the latter should not do
      any scaling but the former always did. I had to call the lower level
      functions provided by WRIGHT, TEOS10, etc to avoid get the scaling
      tests to pass.
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    7544c79 View commit details
    Browse the repository at this point in the history
  36. Re-factored int_density_dz_generic_plm()

    - In preparing to add Brankartc terms to PLM form of presure gradient
      I'm adapting the routine to look like the PPM routine which takes 3D
      arguments but only works on layer "k".
    adcroft committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    31b7e0a View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2020

  1. Implement Brankart terms in PLM form of PGF

    - The Brankart PGF terms are now implemented in the PLM recontruction
      routines, just as they were for the PPM form.
    adcroft committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    5d4f1eb View commit details
    Browse the repository at this point in the history
  2. Cleaned up tc2 MOM_input

    - Added documentation lines for PGF_STANLEY_T2_DET_COEFF
    adcroft committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    ee1232a View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2020

  1. Configuration menu
    Copy the full SHA
    f0bab12 View commit details
    Browse the repository at this point in the history
  2. Corrected scaling in _1d and _scalar EOS functions

    - Per feedback on #1156, corrected scaling for calculate_stanley_density_scalar()
      and calculate_stanley_density_1d().
    adcroft committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    e8adc48 View commit details
    Browse the repository at this point in the history
  3. Removed unused member in PressureForce_CS

    - Per feedback on #1156.
    adcroft committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    ec0946c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4307fa5 View commit details
    Browse the repository at this point in the history
  5. (*)Set maximum value of au_visc

      Set a hard-coded maximum value of CS%a_u and CS%a_v of 1e37 m s-1 so that
    these can be represented in diagnostics that are written with 32-bit floating
    point numbers.  These values are so large that all answers are bitwise identical
    in the MOM6-examples test cases, but it is possible that answers could change.
    Hallberg-NOAA committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    b3a584d View commit details
    Browse the repository at this point in the history
  6. Added comments for local variables

    - Per feedback on #1156.
    adcroft committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    553166a View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2020

  1. Configuration menu
    Copy the full SHA
    50a7b3c View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2020

  1. +Eliminate uhbt_IC and ubt_IC from restart files

      Eliminated the unused variables CS%uhbt_IC and CS%vhbt_IC from the barotropic
    control structure and from the MOM6 restart files.  Also placed a logical test
    for CS%Gradual_BT_ICs around all references to CS%ubt_IC and CS%vbt_IC and
    eliminated these variables from the restart files when they would not be used.
    Additionally some unused arguments were removed from internal subroutines and
    some spelling or index case errors were corrected.  All answers are bitwise
    identical, but the MOM6 restart files have fewer variables and some unused
    entries in the MOM_parameter_doc files have changed.
    Hallberg-NOAA committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    8df3e7f View commit details
    Browse the repository at this point in the history
  2. +Add the new parameter INTEGRAL_BT_CONTINUITY

      Add the new runtime parameter INTEGRAL_BT_CONTINUITY which enables the use of
    the time-integrated barotropic velocity to determine the cumulative transport
    since the start of the barotropic stepping.  This new option works in all of the
    MOM6-examples test cases with a SPLIT=True and USE_BT_CONT_TYPE=True.  By
    default all answers are bitwise identical, but there are changes to the entries
    in the MOM_parameter_doc files.
    Hallberg-NOAA committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    14d6348 View commit details
    Browse the repository at this point in the history
  3. +Add find_duhbt_dubt_int

      Added the new subroutines find_duhbt_dubt_int and find_dvhbt_dvbt_int, and use
    the time-integrated forms to set the inverse face area, the transport correction
    for consistency between the transport from the initial barotropic velocity and
    the summed layer transports, and the maximum corrective mass source when
    INTEGRAL_BT_CONT=True.  Also only log BT_CONT_CORR_BOUNDS when BOUND_BT_CORR is
    set to true.  By default, all answers are bitwise identical, but there are minor
    changes to the entries in the MOM_parameter_doc files.
    Hallberg-NOAA committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6374aaf View commit details
    Browse the repository at this point in the history
  4. +Implemented integral_BT_cont options for OBCs

      Added code to implement new integral_BT_cont options within the barotropic
    open boundary condition code.  A number of new arguments were added to
    apply_velocity_OBCS.  In addition, the handling of updates to ubt_sum, uhbt_sum
    and ubt_wtd with open boundary conditions were simplified.  There are minor
    answer changes if INTEGRAL_BT_CONTINUITY=True, but all answers in the existing
    MOM6-examples tess cases are bitwise identical.
    Hallberg-NOAA committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    4743f8c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2a73d7d View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2020

  1. +Reuse find_uhbt with INTEGRAL_BT_CONT

      Revised the dimensions of the entries in the local_BT_Cont types when
    INTEGRAL_BT_CONT=True for efficiency and to enable find_uhbt and other routines
    to be used regardless of the value of INTEGRAL_BT_CONT.  Some arguments that are
    no longer needed have been removed from some subroutines. All answers are
    bitwise identical in the MOM6-examples test suite, but changes to the order of
    arithmetic leads to changes from the previous version when
    INTEGRAL_BT_CONT=True, and the rescaling is controlled via new optional
    arguments to internal routines.
    Hallberg-NOAA committed Jul 16, 2020
    Configuration menu
    Copy the full SHA
    37a7ee0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7a6a10a View commit details
    Browse the repository at this point in the history
  3. (*?)Revised ice_shelf_driver.F90 so it compiles

      Revised ice_shelf_driver.F90 so that it compiles successfully and is similar
    to MOM_driver.F90 where possible.  In addition, deleted the files
    MOM_surface_forcing.F90 and user_surface_forcing.F90 in the ice_solo_driver
    directory, as these are unused and out-of-date versions of the equivalent files
    in the solo_driver directory.  Some of the changes are not as streamlines as
    they could be if the solo_ice_shelf code used its own version of diag_mediator,
    or if the interface to diag_mediator were revised so that some of its
    ocean-specific arguments are optional.  There is no test-case exercising this
    code, but at least it now compiles, whereas it did not compile before.
    Hallberg-NOAA committed Jul 16, 2020
    Configuration menu
    Copy the full SHA
    e218354 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2020

  1. Move FMS tag to 2019.01.03

    - FMS tag 2019.01.03 fixes problems for EMC allowing the newer FV3 to
      work with MOM6 which is not yet compatible with FMS2020.
    adcroft committed Jul 20, 2020
    Configuration menu
    Copy the full SHA
    f5df25d View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2020

  1. Merge pull request #1164 from adcroft/fms-2019.01.03

    Move FMS tag to 2019.01.03
    marshallward authored Jul 22, 2020
    Configuration menu
    Copy the full SHA
    6b0f83d View commit details
    Browse the repository at this point in the history
  2. Avoid using uninitialized arrays

      Modified recent additions to avoid using uninitialized arrays.  This was not
    detected in tests of the previous PR because the arrays that were created from
    uninitialized arrays were themselves never used, so there are no answer changes
    but there were errors with intolerant compiler settings.  Also corrected the
    dOxygen syntax in a comment and corrected some openMP directives that had been
    triggering warnings or errors.  All answers are bitwise identical.
    Hallberg-NOAA committed Jul 22, 2020
    Configuration menu
    Copy the full SHA
    535b43c View commit details
    Browse the repository at this point in the history
  3. Merge pull request #1159 from ESMG/dev/esmg

    +Adding a halo update for tracer reservoirs.
    Hallberg-NOAA authored Jul 22, 2020
    Configuration menu
    Copy the full SHA
    e55ef75 View commit details
    Browse the repository at this point in the history
  4. Added missing openMP directives

      Added some missing openMP directives that had been triggering warnings or
    errors, and could have created problems with more extensive testing.  Also set
    some unset array bounds in the ice_shelf_dynamics code.  All answers are bitwise
    identical in all working test cases.
    Hallberg-NOAA committed Jul 22, 2020
    Configuration menu
    Copy the full SHA
    2a9248a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3c92d4c View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2020

  1. Merge pull request #1161 from Hallberg-NOAA/integral_bt_solver

    MOM6: +(*)Add option to use time-integrated barotropic continuity
    adcroft authored Jul 23, 2020
    Configuration menu
    Copy the full SHA
    edc674c View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1162 from Hallberg-NOAA/ice_shelf_driver

    MOM6: (*?)Revised ice_shelf_driver.F90 so it compiles
    adcroft authored Jul 23, 2020
    Configuration menu
    Copy the full SHA
    3e44491 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2020

  1. Fixing loop bound error in MOM_PressureForce_Montgomery.F90

    The "for" loop at L510 should be to nz instead of nz+1.  Due to array allocation sizes, this loop was extending beyond the shope of the argument arrays.
    breichl committed Jul 27, 2020
    Configuration menu
    Copy the full SHA
    5680fe5 View commit details
    Browse the repository at this point in the history
  2. Testing: tc4 installs python-netCDF4 via venv (#1166)

    Squash merge of following commits:
    
    * Testing: tc4 installs python-netCDF4 via venv
    
    Currently, users are expected to have numpy and netcdf4 python modules
    in order to generate the necessary netCDF input files.  This fails in
    environments where these modules are unavailable.
    
    This patch now installs the modules into a virtual environment which are
    accessible when generating the tc4 inputs.
    
    This solution is local to tc4 but could be extended to other tests as
    needed.
    
    * Testing: remove Python numpy and netCDF4 modules
    
    The numpy and netCDF4 packages are no longer needed since tc4 now
    installs these locally.
    
    * Test: Install virtualenv for Python2
    
    tc4 was using the venv module which appears to be python3-specific, and
    Travis Ubuntu defaults to python2.  Also virtualenv was not installed in
    either case.
    
    This patch adds python-virtualenv to the install packages and uses the
    virtualenv module.
    
    * Test: Add python-dev for ARM64 numpy
    
    Travis ARM nodes need to build numpy natively when installed by pip, and
    thus require Python headers.  These are provided by the python-dev
    package.
    
    * Test: Revert to Py3 for tc4 generation scripts
    
    Reverting the python 2 support (default for Travis) to use Python 3
    syntax.
    
    The main reason is that Python 3 includes venv (equivalent to
    virtualenv) as its standard library, and is therefore guaranteed to
    exist if Python 3 exists.
    
    Python 3's virtualenv must be independently installed, which cannot be
    confirmed.
    
    This will cause problems for people without Python 3, but this is
    probably the best solution, or at least the starting point for a more
    general solution.
    
    * Test: Adding python3-venv to Travis
    
    Ubuntu apparently requires an explicit install of python3-venv despite
    it being part of the standard library.  Go figure...
    
    * Test: Arm64 tc4 Configuration support
    
    Arm64 Ubuntu environments require explicit installations which are
    otherwise provided on x86 Ubuntu:
    
    * Python 3 Pip must be installed (python3-pip)
    * Wheel installation must be explicitly installed
    * Cython is required for numpy
    * Numpy must be explicitly built before installing python-netCDF4
    
    * Test: tc4 common Python local-env
    
    Build times for setting up the virtual environments can be very
    expensive on the Arm64 Ubuntu nodes, so we now create a shared directory
    for launching the environments.
    
    * Test: Use '.' in place of 'source' for Make
    
    * Test: Test for required Python modules in tc4
    
    We have reworked the Makefile to conditionally test for required Python
    modules in tc4.  If unavailable, we install these in a virtual
    environment.
    
    This does not address many scenarios, such as if Python 3 is missing,
    venv is missing (as in Ubuntu), or handle the situation if they do not
    exist.  It assumes that either the modules exist, or that they can be
    installed by venv.
    
    This should be seen as an iterative step to get things working on Travis
    x86 and Arm64, as well as GFDL's Gaea and most user Linux platforms.
    
    * Test: Explicit python execs for tc4 input build
    
    This resolves some issues with python2/3 resolution and limited support
    of various platforms for module support.
    
    Specifically, older platform with basic Python 3 support may not also
    have numpy support.  In this case, we can defer back to Python 2 (or
    whatever the system Python may be).
    
    * Test: Setup Python venv at build time
    
    This patch moves the Python virtual environment configuration to the
    main Makefile, which is setup at build time, rather than in the model
    configuration Makefile, which will typically not have internet access if
    run on a compute node.
    
    As before, the venv will only be setup when the numpy and netCDF4
    modules are unavailable.  A minor bug in the logic of the check has
    also been fixed.
    marshallward authored Jul 27, 2020
    Configuration menu
    Copy the full SHA
    6529752 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #1169 from breichl/BugFix_MontgomeryPressureForce

    Fixing loop bound error in MOM_PressureForce_Montgomery.F90
    marshallward authored Jul 27, 2020
    Configuration menu
    Copy the full SHA
    df33724 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2020

  1. Momentum budget terms multiplied by fractional layer-thicknesses (#1163)

    Squash merge:
    
    * New diagnostics for barotropic momentum budget calculations are created. In these, different budget terms multiplied by fractional layer thicknesses are saved. Thus, these terms can be added over the whole to obtain the barotropic momentum budget. 'btstep' subroutine in MOM_barotropic module is modified to return fractional thicknesses. Pressure force acceleration multiplied by fractional thickness as diagnostics are added in this commit.
    
    * More thickness weighted diagnostics
    
    * Implemented Andrew Shao's suggestions
    
    * More fractional thickness multiplied diagnostics
    
    * Some barotropic diagnostics obtained from fractional thickness multiplied momentum budget terms
    
    * Removed trailing spaces
    
    * All fractional-thickness multiplied diagnostics implemented
    
    * define diagnostic variables as pointers
    
    * Shorter initialization of 2D arrays
    
    * Modifications in vertical friction diagnostics
    
    * Diagnostics initialization as pointers to save memory allocation
    
    * Vertical friction module
    
    * Removed commented lines and trailing spaces
    
    * Diagnostic description change
    
    * Fractional thickness-weighted diagnostics for acceleration due to relative vorticity and gradient of kinetic energy
    
    * Modifications in vertical friction diagnostics (fractional thickness-weighted)
    
    * Modifications in diag_hfrac_u and diag_hfrac_v calls
    
    * Made allocation of hfrac at u/v points optional. These arrays are only allocated if any of the relevant diagnostics are called.
    
    * Fractional-thickness weighted 3D diagnostics are now commented out as we do not the proper grid remapping option.
    
    * Initialization of 2D diagnostic arrays changed from pointer type to allocatable array style.
    
    * Trailing spaces removed and line lengths reduced to be under 120 characters
    
    * Comment modified
    
    Reviewed by Robert Hallberg <[email protected]>
    hmkhatri authored Jul 29, 2020
    Configuration menu
    Copy the full SHA
    4c030e6 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2020

  1. OBC: H-dimensionality fixes

    This patch fixes three dimensionality errors in the OBC segments.
    
    - We add a missing GV%m_to_H conversion for time-dependent eta segments.
    
    - The `adjustSegmentEtaToFitBathymetry` function depends on the
      `segment%Htot` field when computing the dz_src cell spacings.
    
      While the calculation primarily assumes that all quantities scale as
      Z, the segment%Htot field scales as H, which was causing
      dimensionality errors.
    
      We resolve this by converting Htot from Z to H whenever it is used in
      the calculation.
    
    - Segment barotropic velocitys based on transports were limited to a
      hard-coded thickness of 1e-12, which was not scaled.  We have added
      H-dimensional scaling to these constants.
    marshallward committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    16a0a06 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0c6a7d0 View commit details
    Browse the repository at this point in the history
  3. OBC: Removal of segment zero

    The current OBC segment list includes a "segment zero" which corresponds
    to when the segment maps (segnum_u, segnum_v) point to OBC_NONE, which
    is set to zero.
    
    The purpose of this "segment zero" seems to be for avoiding invalid
    references, so that OBC%segment(OBC%segnum_[uv](i,j)) always returns a
    valid result, included when set to OBC_NONE.  This results in reading
    and setting values which are unused or unneeded.
    
    This patch replaces these redundant accesses to segment zero with
    various conditional blocks for avoiding these accesses.
    marshallward committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    46714ec View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    dca4d1b View commit details
    Browse the repository at this point in the history
  5. Merge pull request #1170 from marshallward/tc4a_dimh_bug

    OBC: H-dimensionality fixes
    Hallberg-NOAA authored Jul 30, 2020
    Configuration menu
    Copy the full SHA
    390188e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9b75b6a View commit details
    Browse the repository at this point in the history
  7. OBC: Remove segment 0 refs in mask_outside_OBCs

    There were a few remaining segnum_[uv] references in MOM_open_boundary
    which could reference segment zero.  This patch fixes those references.
    marshallward committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    a243225 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    c027b9d View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2020

  1. Merge pull request #1171 from marshallward/remove_obc_seg0

    OBC: Removal of segment zero
    Hallberg-NOAA authored Jul 31, 2020
    Configuration menu
    Copy the full SHA
    3d557d9 View commit details
    Browse the repository at this point in the history
  2. (*)Improve make_frazil

      Improve the handling of very thin layers in make_frazil.  This does not change
    answers for typical values of ANGSTROM, but can avoid problems that can arise
    when ANGSTROM=0.  All answers in the existing MOM6-examples test cases are
    bitwise identical.
    Hallberg-NOAA committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    1daad44 View commit details
    Browse the repository at this point in the history
  3. (*)Improve advective CFL calculation with tiny h

      Improved handling of massless layers in the calculation of the advective CFL
    numbers used in PPM tracer advection by using an Adcroft reciprocal instead of
    adding a small value in the denominator.  Although all answers are bitwise
    identical in the existing MOM6-examples test cases, this can avoid problems
    with tracer advection when ANGSTROM is 0 or very small like those that were
    recently found in analogous SIS2 code.
    Hallberg-NOAA committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    948e292 View commit details
    Browse the repository at this point in the history
  4. Infrastructure calls via framework directory

      Revised module use statements and some infrastructure calls to go via the
    MOM6 framework directory rather than directly calling FMS infrastructure
    routines.  All answers are bitwise identical.
    Hallberg-NOAA committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    cbbf848 View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2020

  1. Add diagnostic of SGS T variance in Stanley PGF

    - Adds a diagnostic of the parameterized SGS T variance used in the
      Brankart correction to the PGF
    adcroft committed Aug 4, 2020
    Configuration menu
    Copy the full SHA
    859abbd View commit details
    Browse the repository at this point in the history
  2. Use thickness weighted variance estimate in PGF

    - The SGS T variance is measure from the grid-scale variance. It should
      be a horizontal difference but is approximated as along coordinate.
      This adds thickness weighting to avoid large values near topography.
    adcroft committed Aug 4, 2020
    Configuration menu
    Copy the full SHA
    f549dd0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bba60af View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2020

  1. (*)Set dSV_dT and dSV_dS with unassociated fluxes

      Set dSV_dT and dSV_dS if present in applyBoundaryFluxesInOut, even if boundary
    fluxes are not associated.  With this change, setting BUOY_CONFIG='NONE' and
    BUOY_CONFIG='zero' both work and give similar (but not identical) answers in
    some test cases with an ePBL boundary layer parameterization, whereas before
    answers were tainted with uninitialized values when BUOY_CONFIG='NONE'.  All
    answers in the existing MOM6-examples test suite are bitwise identical, but
    answers can change in other cases.
    Hallberg-NOAA committed Aug 7, 2020
    Configuration menu
    Copy the full SHA
    7be0883 View commit details
    Browse the repository at this point in the history
  2. (*)Fix an indexing bug in int_density_dz_linear

      Corrected a horizontal indexing bug in int_density_dz_linear that caused the
    ISOMIP/layer test case to fail.  This bug was first introduced with PR#732 on
    March 8, 2018.  This bug fix will change answers with a linear equation of state
    and the finite volume pressure gradient force, however it does not change any of
    the verified answers in the MOM6-examples regression suite.
    Hallberg-NOAA committed Aug 7, 2020
    Configuration menu
    Copy the full SHA
    feed9ba View commit details
    Browse the repository at this point in the history
  3. Merge pull request #1173 from Hallberg-NOAA/infra_via_framework

    Infrastructure calls via framework directory
    marshallward authored Aug 7, 2020
    Configuration menu
    Copy the full SHA
    f16c250 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ef85adb View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2020

  1. Merge pull request #1172 from Hallberg-NOAA/better_advective_CFL

    (*)Improve advective CFL calculation with tiny h
    marshallward authored Aug 8, 2020
    Configuration menu
    Copy the full SHA
    f8d1379 View commit details
    Browse the repository at this point in the history

Commits on Aug 10, 2020

  1. Configuration menu
    Copy the full SHA
    6461d75 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3c10ae1 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #1175 from Hallberg-NOAA/ISOMIP_fixes

    (*)Fix code problems that appear in ISOMIP cases
    marshallward authored Aug 10, 2020
    Configuration menu
    Copy the full SHA
    73746cb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6838177 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #1174 from MJHarrison-GFDL/move_init_OBC_seg_data

    Move call to initialize_segment_data to MOM_state_initialization
    marshallward authored Aug 10, 2020
    Configuration menu
    Copy the full SHA
    068c3cb View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2020

  1. +Move find_interfaces to MOM_state_initialization

      Simplified and cleaned up find_interfaces and moved it from MOM_tracer_Z_init
    to MOM_state_initialization, reflecting the fact that it is only used from
    within MOM_state_initialization and that it has very little to do with tracer
    initialization.  The subroutine fast_bisect was inlined into find_interfaces
    and the stand-alone version was deleted.  One minor bug that could change
    answers was noted but not corrected.  All answers are bitwise identical, but
    the previously publicly visible interface to find_interfaces was made private
    to the MOM_state_initialization module.
    Hallberg-NOAA committed Aug 13, 2020
    Configuration menu
    Copy the full SHA
    f4281ed View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2020

  1. Configuration menu
    Copy the full SHA
    f147071 View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2020

  1. Configuration menu
    Copy the full SHA
    fefa30e View commit details
    Browse the repository at this point in the history
  2. (*)Revised the routine wave_speeds

      Revised wave_speeds to agree with the calculation of the first mode wave speed
    in wave_speed, and to also avoid returning speeds that report back uninitialized
    values that do not reproduce across processor layouts and are not dimensionally
    consistent.  With these revisions, the diagnosed speeds of the modes reproduce
    other solutions, reproduce across layouts, are of sensible magnitude and are
    demonstrably dimensionally consistent.  This includes a complete rewrite of
    tridiag_det, which previously was just wrong.  Also revised the calls to
    register_diag_field for the cn1 and cn_mode# diagnostics to include conversion
    factors.  All existing MOM6-examples solutions are bitwise identical, although
    there would be answer changes in cases where the wave speeds are used in active
    parameterizations.
    Hallberg-NOAA committed Aug 17, 2020
    Configuration menu
    Copy the full SHA
    13d74a4 View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2020

  1. Use similar routines in wave_speed and wave_speeds

      Revised both wave_speed and wave_speeds to use the same tridiag_det routine to
    estimate the determinant and its derivative for their Newton's method solver,
    making it more obvious where these two functions are using the same techniques.
    In turn, tridiag_deg was modified to take arguments that exploit the fact that
    only the upper and lower diagonals plus the candidate eigenvalue are needed in
    the specific case used here, avoiding the need for extra arrays and array
    copies.  The internal routine tdma6 was also modified to expand similar
    expressions relating the center, upper and lower diagonals, and switching the
    sign convention in the diagonal arguments to avoid extra copies.  All answers
    are  bitwise identical.
    Hallberg-NOAA committed Aug 18, 2020
    Configuration menu
    Copy the full SHA
    74614b5 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1178 from Hallberg-NOAA/move_find_interfaces

    +Move find_interfaces to MOM_state_initialization
    marshallward authored Aug 18, 2020
    Configuration menu
    Copy the full SHA
    dd75807 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2020

  1. Configuration menu
    Copy the full SHA
    d9d2449 View commit details
    Browse the repository at this point in the history
  2. fix bugs in wave_structure

    * inconsistent sizes in array copies
    * test on number of layers
    * allow to run without internal_tides input file
    Raphael Dussin authored and Raphael Dussin committed Aug 19, 2020
    Configuration menu
    Copy the full SHA
    db74a47 View commit details
    Browse the repository at this point in the history
  3. fix bugs in wave_structure

    * inconsistent sizes in array copies
    * test on number of layers
    * allow to run without internal_tides input file
    Raphael Dussin authored and Raphael Dussin committed Aug 19, 2020
    Configuration menu
    Copy the full SHA
    7a0dc2a View commit details
    Browse the repository at this point in the history
  4. Merge branch 'fix_wavestruct' of github.com:raphaeldussin/MOM6 into f…

    …ix_wavestruct
    Raphael Dussin authored and Raphael Dussin committed Aug 19, 2020
    Configuration menu
    Copy the full SHA
    e1d9d07 View commit details
    Browse the repository at this point in the history
  5. *+Add halo updates needed with VERTEX_SHEAR=True

      Made a set of changes to add halo updates that are needed to reproduce answers
    across PE layouts or for reentrant cases with USE_JACKSON_PARAM=True and
    VERTEX_SHEAR=True.  The changes include:
    
      1. Add halo updates for T & S after advection if needed.
      2. Add new optional argument to extract_diabatic_member to return the valid
         temperature, salinity, p_surf and thickness halos that are required upon
         entry to calls to diabatic.
      3. Added the new runtime parameter KAPPA_SHEAR_VERTEX_PSURF_BUG, which when
         set to False causes the surface pressures used in equation of state
         calculations in the kappa-shear code to avoid averaging any values from
         land points.
      4. Stopped logging the debugging parameter DEBUG_KAPPA_SHEAR in a prelude
         to obsoleting it, as the debugging output this triggers is not so invasive
         as it once was (it is now a few checksums, and not extensive reporting on
         each column), and there is no reason why DEBUG should not trigger it,
         as is now the case.
      4. Added chksum calls with appropriate halo sizes to check the MOM state
         before calls to set_diffusivity.
      5. Added a haloshift=0 argument to a call to MOM_surface_chksum to avoid
         spuriously flagging halo regions that were not supposed to reproduce.
    
    The answers in most test cases in MOM6-examples are bitwise identical, and there
    are no changes to output files, but this does change answers in cases with
    VERTEX_SHEAR=True, including ice_ocean_SIS2/SIS2_bergs_cgrid, which was not
    previously reproducing across PE layouts.
    Hallberg-NOAA committed Aug 19, 2020
    Configuration menu
    Copy the full SHA
    e8b5d96 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2020

  1. Configuration menu
    Copy the full SHA
    0eea62e View commit details
    Browse the repository at this point in the history
  2. catch missing files

    Raphael Dussin authored and Raphael Dussin committed Aug 20, 2020
    Configuration menu
    Copy the full SHA
    b204203 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2020

  1. Fix epipycnal pairing array size declarations

      Corrected the size of 4 arrays used to describe layer pairings in
    tracer_epipycnal_ML_diff, to avoid the possibility of segmentation faults
    when there are very few interior layers compared with the number of mixed and
    buffer layers.  Also corrected a number of spelling errors in comments.  In
    runs that previously worked, all answers should be bitwise identical, and they
    are identical in all MOM6-examples test cases.
    Hallberg-NOAA committed Aug 21, 2020
    Configuration menu
    Copy the full SHA
    4256a5c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c830ff5 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2020

  1. Merge pull request #1179 from MJHarrison-GFDL/diag_axes_gridspace

    New option to use a grid index convention for spatially-varying diagn…
    marshallward authored Aug 24, 2020
    Configuration menu
    Copy the full SHA
    456d48c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    79999d7 View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2020

  1. +Allow position=NORTH_FACE in pass_var calls

      Added code to handle the cases where the position argument to pass_var
    is set to NORTH_FACE or EAST_FACE.  All answers are bitwise identical.
    Hallberg-NOAA committed Aug 25, 2020
    Configuration menu
    Copy the full SHA
    8a8dad5 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1183 from raphaeldussin/fix_wavestruct

    Fixes in wave structure, solves #1182
    marshallward authored Aug 25, 2020
    Configuration menu
    Copy the full SHA
    5a3e79f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e71ae10 View commit details
    Browse the repository at this point in the history
  4. +Revised interface to write_cputime

      Revised the interface to write_cputime, adding one optional argument and
    making another intent inout argument optional when it was not going to be reset,
    and also adding a flush of an I/O channel, and added a new subroutine,
    MOM_write_cputime_end, to be called during cleanup, potentially via
    write_cputime.  The write_cputime calls from the solo driver routines have been
    modified in accord with these changes, and a final write_cputime call has been
    added so that the time used by the whole run is reported.  These changes should
    address the problems in MOM6 issue #853, which should be closed once this PR is
    merged into dev/gfdl.  All answers are bitwise identical, but there are minor
    interface changes and a new publicly visible subroutine.
    Hallberg-NOAA committed Aug 25, 2020
    Configuration menu
    Copy the full SHA
    a05eeee View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b2010dd View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    329b900 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    ca10be7 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2020

  1. Configuration menu
    Copy the full SHA
    f093750 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1186 from Hallberg-NOAA/epipycnal_ML_diff_alloc

    Fix epipycnal pairing array size declarations
    marshallward authored Aug 26, 2020
    Configuration menu
    Copy the full SHA
    9d16493 View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2020

  1. Configuration menu
    Copy the full SHA
    e843aba View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    512d15a View commit details
    Browse the repository at this point in the history
  3. Merge pull request #1190 from breichl/user/bgr/BBL_USE_EOS__change_de…

    …fault
    
    Updating the default setting for BBL_USE_EOS to match USE_REGRIDDING
    marshallward authored Aug 27, 2020
    Configuration menu
    Copy the full SHA
    711197a View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2020

  1. Configuration menu
    Copy the full SHA
    415c779 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1181 from Hallberg-NOAA/fix_wave_speeds

    (*)Correct the values returned by wave_speeds
    marshallward authored Aug 28, 2020
    Configuration menu
    Copy the full SHA
    7defc95 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    93b5c73 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1187 from hmkhatri/add_diagnostic

    Small correction in register_diag_field for 2D diagnostics
    marshallward authored Aug 28, 2020
    Configuration menu
    Copy the full SHA
    3bcfe21 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2020

  1. Set variable_buoyforce = True (even if False is chosen in MOM_input) …

    …for buoyancy surface restoration = True.
    hmkhatri committed Aug 29, 2020
    Configuration menu
    Copy the full SHA
    c8a1f07 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2020

  1. Merge branch 'vertex_shear_halos' of https://github.com/Hallberg-NOAA…

    …/MOM6 into Hallberg-NOAA-vertex_shear_halos
    adcroft committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    02b947a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d4205f6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    78335a1 View commit details
    Browse the repository at this point in the history
  4. Fix spelling in comments and line length

    - One line was too long
    - Noticed several spelling and grammar problems in comments
    adcroft committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    995e422 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    54cf60d View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2020

  1. Merge pull request #1188 from Hallberg-NOAA/pass_var_opts

    +Allow position=NORTH_FACE in pass_var calls
    adcroft authored Sep 1, 2020
    Configuration menu
    Copy the full SHA
    457ca3d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3ad1db4 View commit details
    Browse the repository at this point in the history
  3. .testing Makefile typo fix

    The restart tests were incorrectly reported as restart.diag tests in the
    output log.  This patch fixes these typos.
    
    Restart test diagnostics are currently not checked, and this patch is a
    good reminder that we need to get these in ASAP.
    marshallward committed Sep 1, 2020
    Configuration menu
    Copy the full SHA
    4668673 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1189 from Hallberg-NOAA/revise_write_cputime

    +Revised interface to write_cputime
    adcroft authored Sep 1, 2020
    Configuration menu
    Copy the full SHA
    6b5e6c6 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #1194 from marshallward/testing_restart_typo

    .testing Makefile typo fix
    adcroft authored Sep 1, 2020
    Configuration menu
    Copy the full SHA
    fc59c04 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    63a2e2a View commit details
    Browse the repository at this point in the history
  7. Adds some targets to run groups of TCs

    - New targets run.symmetric, run.asymmetric, run.nans, run.openmp
      added for convenience and in anticipation of want to run the model
      just once for coverage upload.
    adcroft committed Sep 1, 2020
    Configuration menu
    Copy the full SHA
    bbc0f0d View commit details
    Browse the repository at this point in the history
  8. Adds a coverage job to Travis-CI sequence

    - Keeping the coverage within the regression job, this adds a conditional
      job for all other that uploads coverage.
    adcroft committed Sep 1, 2020
    Configuration menu
    Copy the full SHA
    53b21b6 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #1195 from adcroft/codecovjob

    Add a codecov upload job to establish coverage changes
    marshallward authored Sep 1, 2020
    Configuration menu
    Copy the full SHA
    ca89c9e View commit details
    Browse the repository at this point in the history
  10. Adds land masking of thicknesses in SGS estimate

    - The restart tests were failing because land values differ before/after
      a restart. Adding 2d land masking of h value in the stencil removes
      the sensitivity.
    adcroft committed Sep 1, 2020
    Configuration menu
    Copy the full SHA
    4dbc126 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    448b6f6 View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2020

  1. *Corrected the test whether to use fluxes%psurf

      Changed the test to detect whether the surface pressure has been set for use
    in the equation of state calculations in the thermodynamic step from evaluating
    whether forces%p_surf is associated to whether fluxes%p_surf is associated.
    Because these two pointers often point to the same array, this only changes
    answers in the coupled_AM2_LM3_SIS2/Intersperse_ice_1deg test case, but it could
    change answer in other cases, depending on how MOM6 is called.  Because this
    only appears to change answers for one test case that is not widely used yet,
    and does not impact configurations that are used outside of GFDL, the decision
    was taken not to introduce a bug flag to preserve the old incorrect answers.
    Hallberg-NOAA committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    f841d28 View commit details
    Browse the repository at this point in the history
  2. Autoconf-based build framework

    This patch is a first draft of an autoconf-based build for MOM6.
    
    This is a hybrid solution which relies on mkmf and list_paths to
    automatically generate the model dependencies, but uses autoconf to
    determine the necessary compiler flags for building the model.
    
    Recommended instructions for testing the build system, as well as
    instructions for new users, are shown below.
    ```
        # (Optional) Fetch mkmf and build FMS
        cd deps
        make -j
        cd ..
    
        # Set up the autoconf build files
        autoreconf
    
        # Configure and build the model in /build
        mkdir -p build
        cd build
        ../configure
        make -j
    ```
    
    As with standard autoconf builds, compilers and flags can be configured
    with prepended arguments, e.g.
    ```
        FC=mpifort FCFLAGS="-g -O0 -Wall -Wextra" ./configure
        make
    ```
    
    Introduction of autoconf configuration should not interfere with any
    existing mkmf-based build procedures.
    
    A more detailed discussion is provided below.
    
    ----
    
    At minimum, only the following instructions would be required:
    ```
        autoreconf
        ./configure
        make
    ```
    but this requires that both mkmf and FMS be accessible in standard
    searchable directories.
    
    A more realistic MOM6-only build would be as shown below
    ```
        autoreconf
        PATH="path/to/mkmf/bin:${PATH}" \
          FCFLAGS="-Ipath/to/fms_mods" \
          LDFLAGS="-Lpath/to/fms_lib" \
          ./configure
        make
    ```
    where `path/to/xxx` points to the location of the pre-installed content.
    
    To alleviate this issue, a Makefile in the `deps` directory has been
    provided, which checks out copies of mkmf and FMS and places them in the
    `deps` directory.  If the MOM6 `./configure` script is unable to find
    mkmf or FMS, then it will automatically continue to search inside of the
    `deps` directory.
    
    ----
    
    The `deps` directory provides templates for an autoconf build of FMS
    resembling our MOM6 build.
    
    The Makefile provides the following rules:
    
    `make` or `make all`:
      Fetch mkmf and FMS, build FMS, install module files to `deps/include`
      and `libFMS.a` to `deps/lib`.
    
    `make clean`
      Delete the compiled FMS files in `deps/fms/build` but not the
      installed libraries or module files.
    
    `make distclean`
      Delete all files produced by the Makefile.
    
    Much of the FMS source configuration has been moved to the `deps`
    Makefile.  The available hooks and default values are shown below.
    ```
    MKMF_URL ?= https://github.com/NOAA-GFDL/mkmf.git
    MKMF_COMMIT ?= master
    FMS_URL ?= https://github.com/NOAA-GFDL/FMS.git
    FMS_COMMIT ?= 2019.01.03
    FCFLAGS_FMS ?=
    ```
    The FCFLAGS_FMS hook is provided to override the default autoconf value,
    `-g -O2`.
    
    Although FMS provides its own automake build framework, the 2019.01.03
    release cannot be used with MOM6 due to missing components in its
    libtool configuration (`random_number`).  The build time is also
    significantly longer due to incorrect dependencies in the automake
    configuration.
    
    Most of the issues describe above have either been or will soon be
    resolved in newer FMS releases, and we may be able to transition to
    the FMS automake in a future release.
    
    ----
    
    The `.testing` directory has been reworked to use the autoconf builds of
    MOM6 and FMS, but should otherwise work the same as before.
    ```
        cd .testing
        make -j
        make -j test
    ```
    The changes required to use autoconf have been incorporated into the
    `.testing` Makefile.
    
    This can create issues with the management of FMS, which is now
    configured inside of `deps/Makefile` rather than in `.testing`.  Also, a
    rebuild of FMS will require an explicit wipe of FMS in `deps`, which can
    be done with the following command.
    ```
        make -C ../deps distclean
    ```
    
    Platform-specific flags are now managed in the `config.mk` file rather
    than in a mkmf template.  The following hooks are provided, with default
    values shown.
    ```
    FCFLAGS_DEBUG ?= -g -O0
    FCFLAGS_REPRO ?= -g -O2
    FCFLAGS_INIT ?=
    FCFLAGS_COVERAGE ?=
    ```
    The intention is to provide some correspondence to the GFDL DEBUG and
    REPRO production builds.
    
    Any FMS build produced by `make` in `.testing` will use the
    `FCFLAGS_DEBUG` variable.
    
    Although `FCFLAGS_INIT` is intended for intialization, it acts as more
    of a general-purpose flag which is applied to MOM6 but not FMS.
    
    ----
    
    Other points of interest
    
    - This build system only uses autoconf.  It does not use automake or libtools.
    
    - autoconf will determine any necessary flags required for building
      MOM6, but does not attempt to use optional flags for debugging or
      performance.
    
      Flags required for testing or production builds must still track or
      otherwise manage their own compiler flags (FCFLAGS, etc).
    
    - The MOM6 `./configure` script requires a FMS library and module files as
      part of its build validation.  This is why we must pre-build FMS
      before calling `./configure`.
    
    - FCFLAGS defaults to `-g -O2`.  Any explicit setting of FCFLAGS
      will remove and replace these flags.  Other flags, such as
      `-fdefault-real-8` will be appended as needed and do not need to be
      managed.
    
    - Support M4 macros have been tested on GCC, Intel, PGI, and Cray
      compilers.  The macros can be extended to other compilers and older
      versions of these compilers if necessary.
    
    ----
    
    Known issues
    
    - The macro used for the MPI launcher (AX_MPI) can potentially locate a
      MPIFC (e.g. mpif90) which does not match FC.  For example, FC will
      tend to default to GFortran, but mpif90 may use Intel Fortran.
    
      While FC is quickly replaced with MPIFC, there are some initial tests
      which may fail if FCFLAGS was defined for the non-GFortran compiler.
    
      This can be resolved by explicitly setting both FC and FCFLAGS for the
      same compiler.
    
    - Since we use git for both development and distribution, we may want to
      pre-build the configure script and support files, eliminating the
      `autoreconf` step.
    marshallward committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    e69287a View commit details
    Browse the repository at this point in the history
  3. Minor gitignore update

    marshallward committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    f6248cb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    df12b66 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b89c640 View commit details
    Browse the repository at this point in the history
  6. Autoconf: Coverage and target LDFLAGS fixes

    Minor fixes which include the FCFLAGS coverage flag into LDFLAGS for
    gcov builds, as well as properly moving the target -L flag out of
    FCFLAGS and into LDFLAGS.
    marshallward committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    12a83f7 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bde93fb View commit details
    Browse the repository at this point in the history
  8. Merge pull request #1192 from hmkhatri/add_diagnostic

    Always set VARIABLE_BUOYFORCE = True with RESTOREBUOY = True
    marshallward authored Sep 2, 2020
    Configuration menu
    Copy the full SHA
    b23b793 View commit details
    Browse the repository at this point in the history
  9. (*)Reduce size of GV%Rlay and improve error handling

      Reduced the size of GV%Rlay to GV%ke, befitting a layer variable, and added
    code to issue error messages or appropriately handle cases with very few layers
    that would have led to segmentation faults without error handling.  This
    includes explicitly setting argument array sizes in various set_coord
    subroutines, and correcting the descriptions of some EOS_type arguments.  All
    answers in the MOM6-examples regression suite are bitwise identical, but there
    may be some answer changes in cases that should not have worked previously.
    This PR addresses MOM6 issue #966, which might now be closed.
    Hallberg-NOAA committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    2fe5838 View commit details
    Browse the repository at this point in the history
  10. Update MOM_PressureForce_FV.F90

    mn_T = 0 so remove subtraction of mn_T^2 in SGS temperature variance
    jskenigson authored Sep 2, 2020
    Configuration menu
    Copy the full SHA
    1d717f5 View commit details
    Browse the repository at this point in the history
  11. Travis: Environment variable globals; Timer log

    Several build environment variables were redefined globally to be used
    across all jobs, rather than repeating over every job.
    
    The timer output was also redefined to be single line, rather than four,
    to reduce logging output.
    marshallward committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    ff451d7 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    d186229 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    10f81c9 View commit details
    Browse the repository at this point in the history
  14. Updated MOM_thickness_diffuse to use the deterministic parameterizati…

    …on of the SGS temperature variance
    jkenigson committed Sep 2, 2020
    Configuration menu
    Copy the full SHA
    5aa0863 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2020

  1. (*)Correct the use of memory macros for arguments

      Corrected a number of memory macros that would cause MOM6 to give the wrong
    answers and probably lead to segmentation faults if global indexing were
    enabled.  Macros like NIMEM_ are intended to be used to support static or
    dynamic memory in the declaration of ALLOCABLE_ arrays, but instead were being
    used to define the sizes of arguments in some routines, which would cause these
    arrays to start at 1, not G%isd, inside these routines.  All answers in the
    MOM6-examples test suite are bitwise identical.
    Hallberg-NOAA committed Sep 3, 2020
    Configuration menu
    Copy the full SHA
    b155bf3 View commit details
    Browse the repository at this point in the history
  2. OBC: segment parser refactoring

    The segment configuration parser was encountering problems with GFortran
    10.2, where the `fields` array update was being removed by the -O2
    optimizer.
    
    In fact, the `parse_segment_data_str` function was doing two separate
    operations, where the first call would determine the number of fields
    and save their names into an array, and the second call would parse the
    data contents of each input field.  The presence of optional arguments
    were used to effectively select the preferred operation.
    
    It is possible that the presence of these optional arguments was
    interfering with optimization, causing the removal of the `fields`
    update.
    
    While this is most likely a bug in the GFortran compiler, we address the
    problem by instead splitting this function into two independent
    functions, which allows us to remove the optional arguments.
    
    When split, the function appears to work correctly under O2
    optimization.
    marshallward committed Sep 3, 2020
    Configuration menu
    Copy the full SHA
    751faaa View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2020

  1. Merge pull request #1198 from Hallberg-NOAA/resize_Rlay

    (*)Reduce size of GV%Rlay and improve error handling
    marshallward authored Sep 4, 2020
    Configuration menu
    Copy the full SHA
    eb6a257 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7907054 View commit details
    Browse the repository at this point in the history
  3. Rename intermediate variable in Stanley PGF parameterization

    - A variable was poorly named and also changed units mid-stream.
      The newly named variable now only has the same units ever.
    adcroft committed Sep 4, 2020
    Configuration menu
    Copy the full SHA
    edff25e View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2020

  1. Properly set vertex_shear in set_diffusivity_init

      Always call kappa_shear_at_vertex so that the Vertex_shear element of the
    control structure for the MOM_set_diffusivity module is always actively set.  It
    had previously been initialized only if USE_JACKSON_PARAM is true, which led to
    the issues reported in MOM6 issue #1201.  Also clarified or corrected some of
    the comments in MOM_kappa_shear.  All answers will be bitwise identical in all
    cases that worked previously, and this PR corrects the problems noted in issue
    #1201, which can closed once it is accepted.
    Hallberg-NOAA committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    4ac556c View commit details
    Browse the repository at this point in the history
  2. Merge branch 'fix_psurf_test' of https://github.com/Hallberg-NOAA/MOM6

    …into Hallberg-NOAA-fix_psurf_test
    adcroft committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    ae71c39 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3d1db41 View commit details
    Browse the repository at this point in the history
  4. Merge branch 'fix_memory_macros' of https://github.com/Hallberg-NOAA/…

    …MOM6 into Hallberg-NOAA-fix_memory_macros
    adcroft committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    71f6921 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4134278 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2020

  1. Configuration menu
    Copy the full SHA
    365dd7c View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1193 from adcroft/brankart

    Brankart PGF update
    marshallward authored Sep 9, 2020
    Configuration menu
    Copy the full SHA
    c32db25 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    97793be View commit details
    Browse the repository at this point in the history
  4. Moving autoconf tools to /ac directory

    Because autoconf can cause fear and anger in some users, the
    configuration files have now been delegated to a subdirectory, ac, which
    can be invoked from an arbitrary directory.
    
    This required some unconventional constructs in the file, but they have
    luckily been relegated to a few introductory statements, and the bulk of
    the code is unchanged.  The only pervasive change is the explicit
    references to the ac directory, particularly ac/deps.
    
    .testing also had to be updated to accommodate the autoconf changes.
    marshallward committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    2a5e300 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fae9895 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d1b222b View commit details
    Browse the repository at this point in the history
  7. Autoconf: FMS build adjustment

    Modified FMS to build libFMS.a in its build directory, rather than to
    just target the eventual destination of it (../../lib/libFMS.a).  This
    is because other builds (particularly .testing) may prefer a different
    destination.
    marshallward committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    ffeb747 View commit details
    Browse the repository at this point in the history
  8. Moved variable declarations to correct subroutine!

    jkenigson committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7ae514e View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2020

  1. Fixed a typo in variable name

    Jessica Kenigson committed Sep 10, 2020
    Configuration menu
    Copy the full SHA
    b67d3c6 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1200 from marshallward/obc_seg_parse_refactor

    OBC: segment parser refactoring
    adcroft authored Sep 10, 2020
    Configuration menu
    Copy the full SHA
    5dd727a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e042f38 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1202 from Hallberg-NOAA/fix_vertex_query

    Properly set vertex_shear in set_diffusivity_init
    marshallward authored Sep 10, 2020
    Configuration menu
    Copy the full SHA
    2e40bf9 View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2020

  1. Autoconf: .testing now builds its own FMS

    .testing no longer relies on the top-level ac/deps to build and hold its
    FMS repository.  It now checks out its own source and builds its own FMS
    library exclusively for testing.
    
    Also fixed a few dependency bugs in the FMS makefile (and probably in
    .testing as well).
    
    Finally, the m4 macros for FMS were copied into deps, rather than
    sharing with the top-level m4 macros, allowing it to exist more
    independently.  (I will prune the FMS-specific macros from ac/m4 in a
    future commit.)
    marshallward committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    5fb8ea5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    366eb5c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3ce4172 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1205 from ESMG/obc_pass_var

    Clean up pass_var for tracer reservoirs.
    Hallberg-NOAA authored Sep 11, 2020
    Configuration menu
    Copy the full SHA
    9724e7f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0114014 View commit details
    Browse the repository at this point in the history
  6. Post tracer concentration when synced

    Tracer concentrations were being posted at the same time as the
    transport diagnostics. This leads to some unexpected behavior (e.g. SST
    and 3D temperature are not consistent) because the concentrations are
    potentially being posted at an intermediate state.
    
    In addition to fixing this problem for all tracers, the subroutine has
    been renamed to be more descriptive of what kinds of diagnostics might
    fall into this category.
    Andrew Shao authored and Andrew Shao committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    304d0c7 View commit details
    Browse the repository at this point in the history
  7. Merge branch 'dev/gfdl' of github.com:NOAA-GFDL/MOM6 into move_tracer…

    …_concentration_post
    Andrew Shao authored and Andrew Shao committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    0178309 View commit details
    Browse the repository at this point in the history
  8. Neglected subroutine in new declaration

    Careless me left out 'subroutine' in the declaration of
    post_tracer_diagnostics_at_sync
    Andrew Shao authored and Andrew Shao committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    e93c031 View commit details
    Browse the repository at this point in the history
  9. Update MOM_tracer_registry.F90

      Corrected an obvious syntax error in a subroutine declaration.
    Hallberg-NOAA authored Sep 11, 2020
    Configuration menu
    Copy the full SHA
    503eaa3 View commit details
    Browse the repository at this point in the history
  10. Autoconf: Cray ptr update; macro cleanup

    The AX_FC_CRAY_POINTER macro was heavily updated to better use the
    intrinsic Autoconf and M4 macros, as well as to introduce both pass/fail
    macros and an additional PGI test (which doesn't seem needed but
    *shrug*).
    
    Additional processing is no longer needed when invoking this macro.  It
    now automatically applies the Cray pointer flags to FCFLAGS if invoked,
    and it now automatically aborts of such macros are not supported,
    although both of these operations can be overridden if necessary.
    
    Several FMS macros unused by MOM6 were also removed from the MOM6 m4
    macro folder.
    marshallward committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    32b47bb View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    044f643 View commit details
    Browse the repository at this point in the history
  12. Merge branch 'move_tracer_concentration_post' of github.com:ashao/MOM…

    …6 into move_tracer_concentration_post
    Andrew Shao authored and Andrew Shao committed Sep 11, 2020
    Configuration menu
    Copy the full SHA
    334250f View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2020

  1. Diagnostic for post-transport tracer concentration

    Adds a tracer diagnostic for the intermediate state of tracer
    concentrations right after horizontal transport (advection and
    diffusion) has occurred. For cases where DIABATIC_FIRST = False, this
    will definitely not be identical to the tracer concentration diagnostic
    that is posted when the MOM6 state is 'synchronized' (e.g. all forcing
    terms within a MOM6 timestep have been calculated and applied).
    Andrew Shao authored and Andrew Shao committed Sep 12, 2020
    Configuration menu
    Copy the full SHA
    e45f73f View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1207 from ashao/move_tracer_concentration_post

    Post tracer concentration when synced
    marshallward authored Sep 12, 2020
    Configuration menu
    Copy the full SHA
    fd93dd7 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2020

  1. Configuration menu
    Copy the full SHA
    ffbdbc2 View commit details
    Browse the repository at this point in the history
  2. Testing: Warn on new diagnostic in regression

    This patch attempts to detect if a new diagnostic has been added, which
    was previously interpreted as a regression.
    
    Previously, any diff in chksum_diag between a PR and dev/gfdl was
    interpreted as a regression.  This included new diagnostics, which do
    not actually change any existing answers.
    
    This patch only raises an error (blocking the merge) if there are
    detected changes in dev/gfdl's chksum_diag.
    
    If the diff only reports new lines in chksum_diag from the PR, then it
    reports in the log as a WARN and reports as a PASS to the CI (currently
    Travis).
    
    This patch also fixes a minor typo in the .restart test ($$* should have
    been $*).  Several Make variables using shell-style brackets {} were
    also replaced with Make brackets ().
    marshallward committed Sep 14, 2020
    Configuration menu
    Copy the full SHA
    de0c88d View commit details
    Browse the repository at this point in the history
  3. Autoconf: Travis fix; Cray ptr macro update

    Resolved some bad string parsing issues of the Travis environment
    variables.  Thanks to Inspector Adcroft for discovering this error.
    
    Further cleanup of the Cray pointer test macro, should now be very close
    to conformant Autoconf M4 format.
    marshallward committed Sep 14, 2020
    Configuration menu
    Copy the full SHA
    6a8a699 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    34bf448 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2ed8364 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ce6843b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    4296d6d View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2020

  1. Merge pull request #1208 from marshallward/regression_diag_warn

    Testing: Warn on new diagnostic in regression
    adcroft authored Sep 15, 2020
    Configuration menu
    Copy the full SHA
    51288ca View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1ae9454 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2020

  1. Autoconf: macOS support; Makefile fixes

    This patch adds additional support for building FMS in deps on macOS
    machines, specifically related to affinity.
    
    Much of this can be phased out when we upgrade our target FMS from
    2019.01.03 to a newer version.
    
    Additional dependency errors in .testing/Makefile have also been fixed
    related to building of the virtual Python environment.
    x authored and x committed Sep 16, 2020
    Configuration menu
    Copy the full SHA
    275b993 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    07ee6c3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7718a35 View commit details
    Browse the repository at this point in the history
  4. Correct submodule setup

    - Commit b67d3c6 added back two submodules
      that still exist on the NCAR branch but no longer are used in the GFDL
      branch and soon will be expunged on the main branch too. This removes
      the submodules as was done in NOAA_GFDL/MOM6#1139.
    adcroft committed Sep 16, 2020
    Configuration menu
    Copy the full SHA
    ad84de0 View commit details
    Browse the repository at this point in the history
  5. Updates units and adds OpenMP directives

    - Following suggestions from @Hallberg-NOAA for PR #1193, I've
      copied the more completely-documented declaration lines from
      PressureForce_FV_Bouss() to thickness_diffuse_full().
    - Similarly to the other module made a change of an intermediate
      variable to its reciprocal.
    - Corrected missing OpenMP directives for some local variables.
    adcroft committed Sep 16, 2020
    Configuration menu
    Copy the full SHA
    ac27e44 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    14d8de3 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2020

  1. Autoconf: Default updates

    autoconf now defaults to using symmetric grids, rather than asymmetric
    grids.
    
    The DEBUG/REPRO build comparison is now disabled on default, since many
    platforms do not produce equivalent results.  If this situation
    improves, then it can be re-enabled.
    marshallward committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    039a75d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c518096 View commit details
    Browse the repository at this point in the history
  3. Autoconf: Documentation, make ac-clean fix

    Added several documentation READMEs to using the autoconf build.
    
    Also added some changes to the Makefile template so that `make ac-clean`
    wiped out the autoconf output (configure, aclocal.m4, autom4te.cache).
    marshallward committed Sep 17, 2020
    Configuration menu
    Copy the full SHA
    b01af9d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    255ee70 View commit details
    Browse the repository at this point in the history
  5. Corrected minor typo

    adcroft authored Sep 17, 2020
    Configuration menu
    Copy the full SHA
    3f176cc View commit details
    Browse the repository at this point in the history
  6. Fixed typo replacing "more" with "model"

    Pointed out by @raphaeldussin
    adcroft authored Sep 17, 2020
    Configuration menu
    Copy the full SHA
    500a960 View commit details
    Browse the repository at this point in the history
  7. Update README.md

    Typo fix
    marshallward authored Sep 17, 2020
    Configuration menu
    Copy the full SHA
    f0201a4 View commit details
    Browse the repository at this point in the history
  8. Merge pull request #1197 from marshallward/autoconf_draft

    Autoconf-based build framework
    adcroft authored Sep 17, 2020
    Configuration menu
    Copy the full SHA
    dd28dea View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    2790296 View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2020

  1. Update README.md

    Fix typo in README link
    marshallward authored Sep 18, 2020
    Configuration menu
    Copy the full SHA
    4c13aea View commit details
    Browse the repository at this point in the history
  2. Update README.md

    Markdown formatting fixes.
    marshallward authored Sep 18, 2020
    Configuration menu
    Copy the full SHA
    5be482a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    73b2ba0 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #1209 from adcroft/brankart

    GM-Brankart update from NCAR
    marshallward authored Sep 18, 2020
    Configuration menu
    Copy the full SHA
    123f664 View commit details
    Browse the repository at this point in the history

Commits on Sep 22, 2020

  1. Testing: Remove quotes in COVERAGE

    The COVERAGE variable was incorrectly quoted, and was causing incorrect
    quotes in the compile flag arguments.
    
    This patch removes the redundant quotes.
    marshallward committed Sep 22, 2020
    Configuration menu
    Copy the full SHA
    7bea824 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1212 from marshallward/coverage_quote_fix

    Testing: Remove quotes in COVERAGE
    adcroft authored Sep 22, 2020
    Configuration menu
    Copy the full SHA
    c9294aa View commit details
    Browse the repository at this point in the history

Commits on Oct 19, 2020

  1. Change default for USE_NET_FW_ADJUSTMENT_SIGN_BUG in drivers

    - The default for USE_NET_FW_ADJUSTMENT_SIGN_BUG had been changed to
      False but during the merge of main onto dev/gfdl the default was
      inadvertently flipped. @gustavo-marques pointed this out when reviewing
      NOAA-GFDL/MOM6#1211.
    - This affects EMC and NCAR versions of drivers and is not tested at GFDL.
    adcroft committed Oct 19, 2020
    Configuration menu
    Copy the full SHA
    3871073 View commit details
    Browse the repository at this point in the history