[[BR]] === '''Conservative Leap-Frog + Asselin filter'' === Last edited [[Timestamp]] [[PageOutline]] '''Object''': [[BR]] Introduce in the trunk the modified Leap-Frog + Robert-Asselin filter time stepping scheme (thereafter LF-RA) described in (Leclair and Madec Ocean Modelling 2009, in press). The scheme allows a exact conservation of the heat and salt contents when using variable volume thickness (key_vvl). The non-conservation of the standard LF-RA due to the time diffusion of the forcing through the filter. In the modified scheme the exact conservation is achieved by removing the forcing from the filter. This requires 4 modifications regarding the forcing evaluation, its time discretisation, the filter, and the general flowchart : [[BR]] - Flow chart : general structure must be changed in a similar way to what have been done for vvl, see [wiki:2009WP/2009Stream3/VVL] [[BR]] - Forcing evaluation : the momentum and tracers forcing are evaluated at kt+1/2, no-more at kt. [[BR]] - Forcing time discretisation : 0.5 * ( Q(k+1/2) + Q(kt-1/2) ), instead of simply Q(kt). [[BR]] - Filter : the RA filter no-more act on the forcing, i.e. -afp * rdt * ( Q(kt+1/2) - Q(kt-1/2) ) is removed from the filter [[BR]] [[Image(NEW_LF_RA.jpg, 50%)]][[BR]] Illustration of forcing integration methods. Old formulation (top) and new formulation (bottom). '''Status''': [[BR]] ongoing work (NEMO-Paris). [[BR]] '''Module involved''': [[BR]] fldread.F90 [[BR]] sbcmod.F90 ; trasbc.F90 , traqsr.F90 , dynzdf_exp.F90 , dynzdf_imp.F90 [[BR]] sshnxt.F90 , tranxt.F90 , dynnxt.F90[[BR]] '''Pending issues''': [[BR]] - The associated changes in TOP are still unclear. A priori, in PISCES p4zopt.F90 should be modified. Nevertheless, the TOP time stepping strategy seems to be a forward in time scheme. If yes, then the evaluation of the forcing at kt+1/2 is an improvement (if not to say a bug fix!). If not, action is required... [[BR]] - Check the consistency with the change planned in the ''emps'' field (switch to ''fsalt'', a true salt flux). [[BR]] ---- === 0. Flow Chart === [[Image(NEW_LF_RA_FlowCart.jpg, 50%)]][[BR]] [[BR]] ---- === 1. Forcing evaluation === In order to evaluate the forcing at kt+1/2, all the input data in the surface module should be interpolated in time at kt+1/2. [[BR]] [[BR]] ---- === 2. Forcing time discretisation === Blah blah blah... [[BR]] ---- === 3. Modified filter === Blah blah blah... [[BR]]