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

Merge in SIS2 changes using new coupler_types #79

Merged
merged 5 commits into from
Sep 8, 2017

Conversation

Hallberg-NOAA
Copy link
Member

Now that the coupler types provided by MOM6-examples/src/FMS have been updated, the versions of SIS2 that use these coupler types should be merged onto the main branch.

  Replaced extensive code blocks going through the detailed elements of the
coupler_types with equivalent calls to the new subroutines that have been
introduced to more succinctly perform tasks on the coupler types.  All answers
are bitwise identical, but this requires the new interfaces that have been
introduced on the coupler_type_reform_rwh branch of the FMS code.
  Completely revised how SIS2 handles the additional tracer-related fluxes and
ocean surface fields, so that they now use coupler_type variables throughout the
algorithm and quasi-object-oriented routines to operate on these types.  All
answers are bitwise identical, and SIS2 no longer has any code that depends on
the details of the implementation of the coupler_types.  Some elements of
publicly visible type have been changed or eliminated.  These changes require an
updated version of the coupler_type_reform_rwh branch of the FMS code.
  Added optional arguments gas_flux and gas_fields_ocn arguments of type
coupler_1d_bc_type to several SIS2 initialization routines, including
ice_model_init.  If these are present, they are used to spawn the types used to
describe additional gas or tracer fluxes and fields at the same time as other
SIS2 arrays are allocated.  There is a new version of the coupler that makes use
of these new arguments, but because they are optional, older versions of the
coupler will work also.  All answers are bitwise identical.
  Added calls to save any gas fluxes in the fast-ice-average and
total_surface_flux types to a restart file with concurrent ice coupling, if the
newer version of the coupler, with the optional gas_flux arguments to
ice_model_init, is used.  All answers are bitwise identical, but there is now a
good chance that coupled configurations with gas fluxes and concurrent ice
coupling will reproduce across restarts (this is not well tested by the current
suite of MOM6-examples test cases).  These changes require an updated version of
the coupler_type_reform_rwh branch of the FMS code, which should be made
available more generally as a patch to FMS in or about September 2017.
@adcroft
Copy link
Member

adcroft commented Sep 7, 2017

This is using the latest FMS on coupler_type_reform_rwh:

MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu:
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: Backtrace for this error:
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #0 0xFF181D0x in _gfortrani_backtrace at backtrace.c:258
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #1 0xFF0E90 in _gfortrani_backtrace_handler at compile_options.c:129
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #2 0xFF09AF in __open_nocancel
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #4 0x1236D77 in abort at abort.c:78
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #3 0xA8EAC3 in __coupler_types_mod_MOD_ct_spawn_1d_3d
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #4 0x516667 in __sis_types_MOD_alloc_fast_ice_avg
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #5 0x484A5C in ice_model_mod_MOD_ice_model_init
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #6 0x4174F2 in coupler_init.7047 at coupler_main.F90:?
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #7 0x41DADF in MAIN
at coupler_main.F90:?
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #8 0xA94BF3 in __mpp_mod_MOD_mpp_error_basic
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #9 0xA90207 in __coupler_types_mod_MOD_ct_spawn_1d_2d
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #10 0x50CB7D in __sis_types_MOD_alloc_ocean_sfc_state
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #11 0x4849B6 in ice_model_mod_MOD_ice_model_init
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #12 0x4174F2 in coupler_init.7047 at coupler_main.F90:?
MOM6-examples/ice_ocean_SIS2/Baltic/ocean.stats.gnu: #13 0x41DADF in MAIN
at coupler_main.F90:?

@adcroft adcroft merged commit 6995ce7 into NOAA-GFDL:dev/gfdl Sep 8, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants