Package longstep ================ This package allows the passive tracer time step to be longer than that for dynamical fields: the ptracers are updated only every LS_nIter time step. Dynamical fields are averaged over LS_nIter time steps and are available as fields LS_* (declared in LONGSTEP.h): original fld. averaged fld. ------------------------------ UVEL LS_uVel VVEL LS_vVel WVEL LS_wVel THETA LS_theta SALT LS_salt IVDConvCount LS_IVDConvCount Qsw LS_Qsw Kwx LS_Kwx Kwy LS_Kwy Kwz LS_Kwz KPPdiffKzS LS_KPPdiffKzS KPPghat LS_KPPghat The T and S time step remains the same as that for u,v,... Packages that use ptracers (like DIC) need to be adapted: 1. replace dtTracerLev by PTRACERS_dTLev 2. replace THETA, SALT, etc. by their longstep averages from the table above. This should be made between #ifdef ALLOW_LONGSTEP ... #endif. (You need to #include "LONGSTEP.h") The package is activated by including "longstep" in packages.conf. There is no "use_LONGSTEP", the package is always on when compiled. The run-time parameters are set in data.longstep. The default is: &LONGSTEP_PARM01 LS_nIter=1, LS_whenToSample=0, & LS_nIter :: number of dynamical time steps between ptracer time steps. LS_whenToSample :: when to sample dynamical fields for the longstep average 0 - at beginning of timestep (reproduces offline results) 1 - after first THERMODYNAMICS but before DYNAMICS (use use old U,V,W for advection, but new T,S for GCHEM if staggerTimeStep=.FALSE.; reproduces online with staggerTimeStep=.FALSE. for LS_nIter=1) 2 - after DYNAMICS and second THERMODYNAMICS (use new U,V,W and T,S; reproduces online with staggerTimeStep=.TRUE. for LS_nIter=1) Default is to sample dynamical fields at the beginning of the time step. This reproduces results from offline runs with unshifted time averages used for the dynamical fields. To have a time stepping closer to the online model (and reproduce results for LS_nIter=1), use LS_whenToSample=1 if staggerTimeStep=.FALSE. LS_whenToSample=2 if staggerTimeStep=.TRUE.