Skip to content

refactorization: Remove redundant clocks in flux exchange modules  #110

@mlee03

Description

@mlee03

This issue proposes to remove clocks in atm_land_ice_flux_exchange_mod in full coupler.

In full coupler, clocks are set in the coupler_main program as well as in _*flux_exchange modules. Some of the clocks in coupler_main and *flux_exchange modules overlap in functionality.

For example, in atm_land_ice_flux_exchange_mod, clocks sfcClock, fluxAtmDnClock,regenClock, and fluxAtmUpClock are initialized in subroutine atm_land_ice_flux_exchange_init. These clocks begin at the beginning and end at the end of its respective subroutines - sfc_boundary_layer, flux_down_from_atmos, generate_sfc_xgrid, flux_up_to_atmos - to gather runtime information.

Simultaneously, clocks newClockb, newClockd, newClock1, and newClockg in coupler_main program are initialized in subroutine coupler_init and begin before calls to its respective subroutines - sfc_boundary_layer, flux_down_from_atmos, generate_sfc_xgrid, flux_up_to_atmos - and end post call.

The set of clocks in atm_land_ice_flux_exchange_mod and set of clocks in coupler_main seem to measure the same processes. The only seemingly difference between the two sets is time measurement being done internally or externally. Thus, the redundant set of clocks in atm_land_ice_flux_exchange_mod could be removed without any loss of diagnostic information.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions