Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:44:06 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
5ca83cd8f7 Dani*0001 #include "CPP_OPTIONS.h"
                0002 
                0003 !      _RL FUNCTION SLOPE_LIMITER (num, denom)
                0004 
                0005        _RL FUNCTION SLOPE_LIMITER (Cr)
                0006 
                0007 !       _RL num, denom
                0008 !       _RL SLOPE_LIMITER
                0009 !       _RL r
                0010        _RL Cr
                0011 
                0012 ! used for flux limiting in advective subroutines
                0013 ! Van Leer limiter (source: Wikipedia!)
                0014 
                0015 !       if (denom .eq. 0.0) then
                0016 !        SLOPE_LIMITER = 0.0
                0017 !       elseif (num*denom .le. 0.0) then
                0018 !        SLOPE_LIMITER = 0.0
                0019 !       else
                0020 !        r = num/denom
                0021 !        SLOPE_LIMITER = (r+abs(r))/(1+abs(r))
                0022 !       endif
                0023 
                0024        SLOPE_LIMITER = max(0.D0,max(min(1.D0,2.D0*Cr),
                0025      &                 min(2.D0,Cr)))
                0026 
                0027 
                0028        RETURN
887f427c62 Jean*0029        END