You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The post_data calls for neutral diffusion diagnostics occur within the subroutine neutral_diffusion. This subroutine is called from subroutine tracer_hordiff inside a sub-cycling iteration loop that is there to avoid violating diffusive CFL limits. If there are multiple iterations because of CFL limits, then there are multiple calls to post_data per timestep for these diagnostics.
Note that advection diagnostics are handled differently. While advection can be sub-cycled, the advection diagnostics are accumulated across these iterations, and the post_data calls are outside of the iteration loop.
The potentially multiple calls per timestep to post_data for neutral diffusion diagnostics result in multiple calls per timestep to FMS's send_data. Does FMS handle multiple send_data calls per timestep for individual diagnostics?
The same question applies to diagnostics for lateral boundary mixing, whose implementation closely follows the neutral diffusion implementation.
The text was updated successfully, but these errors were encountered:
No, FMS does not handle multiple post_data calls per timestep gracefully, so it is up to the MOM6 code to accumulate the net transports across multiple iterations. The construct noted with this issue is a bug and should be fixed.
The
post_data
calls for neutral diffusion diagnostics occur within the subroutineneutral_diffusion
. This subroutine is called from subroutinetracer_hordiff
inside a sub-cycling iteration loop that is there to avoid violating diffusive CFL limits. If there are multiple iterations because of CFL limits, then there are multiple calls topost_data
per timestep for these diagnostics.Note that advection diagnostics are handled differently. While advection can be sub-cycled, the advection diagnostics are accumulated across these iterations, and the
post_data
calls are outside of the iteration loop.The potentially multiple calls per timestep to
post_data
for neutral diffusion diagnostics result in multiple calls per timestep to FMS'ssend_data
. Does FMS handle multiplesend_data
calls per timestep for individual diagnostics?The same question applies to diagnostics for lateral boundary mixing, whose implementation closely follows the neutral diffusion implementation.
The text was updated successfully, but these errors were encountered: