Back to home page

MITgcm

 
 

    


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

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
95afe7199b Dani*0001 #include "STREAMICE_OPTIONS.h"
                0002 
                0003 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0004 
                0005 CBOP
                0006       SUBROUTINE STREAMICE_GET_FP_ERR_OAD ( err_max, myThid )
                0007 C     /============================================================\
                0008 C     | SUBROUTINE                                                 |
                0009 C     | o                                                          |
                0010 C     |============================================================|
                0011 C     |                                                            |
                0012 C     \============================================================/
                0013       IMPLICIT NONE
                0014 
                0015 C     === Global variables ===
                0016 #include "SIZE.h"
                0017 #include "EEPARAMS.h"
                0018 #include "PARAMS.h"
                0019 #include "STREAMICE.h"
                0020 #include "STREAMICE_CG.h"
                0021 
                0022 
                0023 C     !INPUT/OUTPUT ARGUMENTS
                0024       _RL err_max
                0025       INTEGER myThid
                0026 
                0027 #ifdef ALLOW_STREAMICE
95ea1bba23 Dani*0028 #if (defined (ALLOW_STREAMICE_OAD_FP))
95afe7199b Dani*0029       INTEGER conv_flag, i, j, bi, bj
                0030 
                0031       INTEGER ikey_nl
                0032       _RL err_tempu, err_tempv
                0033       _RL max_vel, tempu, tempv, err_lastchange, cgtol
                0034       CHARACTER*(MAX_LEN_MBUF) msgBuf
bbd6229661 Dani*0035       _RL err_sum, conj_norm
                0036       _RL err_sum_tile (nSx,nSy)
95afe7199b Dani*0037 
                0038        err_max = 0. _d 0
bbd6229661 Dani*0039        err_sum = 0. _d 0
                0040        conj_norm = 0. _d 0 
                0041 
                0042        DO bj = myByLo(myThid), myByHi(myThid)
                0043         DO bi = myBxLo(myThid), myBxHi(myThid)
                0044          err_sum_tile(bi,bj) = 0. _d 0  
                0045         ENDDO
                0046        ENDDO
                0047        
                0048 
95afe7199b Dani*0049 
                0050        DO bj = myByLo(myThid), myByHi(myThid)
                0051         DO bi = myBxLo(myThid), myBxHi(myThid)
                0052          DO j=1,sNy
                0053           DO i=1,sNx
                0054            err_tempu = 0. _d 0
                0055            err_tempv = 0. _d 0
                0056            IF (STREAMICE_umask(i,j,bi,bj).eq.1) THEN
                0057             err_tempu =
                0058      &       ABS (U_streamice(i,j,bi,bj)-u_new_SI(i,j,bi,bj))
                0059            ENDIF
                0060            IF (STREAMICE_vmask(i,j,bi,bj).eq.1) THEN
                0061             err_tempv = MAX( err_tempu,
                0062      &       ABS (V_streamice(i,j,bi,bj)-v_new_SI(i,j,bi,bj)))
                0063            ENDIF
                0064            IF (err_tempv .ge. err_max) err_max = err_tempv
                0065           ENDDO
                0066          ENDDO
                0067         ENDDO
                0068        ENDDO
                0069 
                0070        CALL GLOBAL_MAX_R8 (err_max, myThid)
                0071 
                0072 #endif
                0073 #endif
                0074       RETURN
                0075       END