-
Notifications
You must be signed in to change notification settings - Fork 21
Description
Describe the bug
I am opening this issue to document the recommended changes from Rusty's review of PR #22 after PR 22 is merged.
The following are comments copied from the PR:
SHiELD_physics/GFS_layer/GFS_typedefs.F90
Lines 2834 to 2841 in 6a6e94f
| ! -- CHECK for ntke if using satmedmf | |
| if (Model%satmedmf) then | |
| if (Model%ntke < 1 .or. Model%ntke > Model%ntrac) then | |
| write(*,*) ' FATAL GFS_typedefs: TKE PBL scheme enabled (satmedmf) but TKE tracer not found in field_table.' | |
| write(*,*) ' Stopping execution.' | |
| stop 999 | |
| endif | |
| endif |
From bensonr: Stop statements may not abort a program correctly when using MPI. Should either import and use mpp_error or make a call to MPI_Finalize to properly abort execution.
SHiELD_physics/GFS_layer/GFS_typedefs.F90
Lines 2111 to 2112 in 6a6e94f
| !--- dynamical core parameters | |
| logical :: dycore_hydrostatic = .true. !< whether the dynamical core is hydrostatic |
From bensonr: The designed way to get this information to the physics from outside is to use the GFS_init_type. This type is populated with dycore and other external to the physics information within the atmos_model.F90::atmos_model_init function and it is passed to GFS_Initialize, where it is passed to the Model%init procedure.
From bensonr: Since we no longer need compatibility with ufs as they've embraced CCPP, we
could start using FMS functions and change the write statements to
mpp_error statement. With the appropriate FATAL condition, mpi will be
properly terminated and any future coupled components running concurrently
will also get the termination signal.
To Reproduce
N/A
Expected behavior
N/A
System Environment
N/A
Additional context
N/A