Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:39:11 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
6d54cf9ca1 Ed H*0001 #include "DIC_OPTIONS.h"
2774fc70b9 Jean*0002 #ifdef ALLOW_COST
                0003 # include "COST_OPTIONS.h"
                0004 #endif
daab022f42 Step*0005 
2f95b0fc72 Jean*0006 CBOP
                0007 C     !ROUTINE: DIC_COST
                0008 C     !INTERFACE:
daab022f42 Step*0009       SUBROUTINE DIC_COST (
2f95b0fc72 Jean*0010      I                      myTime, myIter, myThid )
daab022f42 Step*0011 
2f95b0fc72 Jean*0012 C     !DESCRIPTION:
                0013 C     *==========================================================*
                0014 C     | SUBROUTINE DIC_COST
                0015 C     *==========================================================*
                0016 
                0017 C     !USES:
daab022f42 Step*0018       IMPLICIT NONE
                0019 
                0020 C     == GLobal variables ==
                0021 #include "SIZE.h"
                0022 #include "EEPARAMS.h"
                0023 #include "PARAMS.h"
                0024 #include "GRID.h"
2ef8966791 Davi*0025 #include "DIC_VARS.h"
daab022f42 Step*0026 #ifdef DIC_BIOTIC
29ad036528 Step*0027 #include "DIC_COST.h"
daab022f42 Step*0028 #endif
                0029 
2f95b0fc72 Jean*0030 C     !INPUT/OUTPUT PARAMETERS:
daab022f42 Step*0031       _RL myTime
2f95b0fc72 Jean*0032       INTEGER myIter
daab022f42 Step*0033       INTEGER myThid
                0034 
a35895498f Patr*0035 #ifdef ALLOW_DIC_COST
2f95b0fc72 Jean*0036 C     !LOCAL VARIABLES:
                0037       INTEGER i, j, bi, bj
                0038       _RL loc_cost(nSx,nSy), glb_cost
                0039 CEOP
daab022f42 Step*0040 
2f95b0fc72 Jean*0041 C--   Calculate costfunction
daab022f42 Step*0042        DO bj=myByLo(myThid),myByHi(myThid)
                0043         DO bi=myBxLo(myThid),myBxHi(myThid)
2f95b0fc72 Jean*0044          loc_cost(bi,bj) = 0. _d 0
daab022f42 Step*0045          DO i=1,sNx
                0046           DO j=1,sNy
2f95b0fc72 Jean*0047             loc_cost(bi,bj) = loc_cost(bi,bj)
                0048      &                      + FluxCO2(i,j,bi,bj)*rA(i,j,bi,bj)
                0049      &                       *maskC(i,j,1,bi,bj)*dTtracerLev(1)
daab022f42 Step*0050           ENDDO
                0051          ENDDO
                0052         ENDDO
8c80e76aea Patr*0053        ENDDO
2f95b0fc72 Jean*0054        CALL GLOBAL_SUM_TILE_RL( loc_cost, glb_cost, myThid )
8c80e76aea Patr*0055 
2f95b0fc72 Jean*0056       _BEGIN_MASTER( myThid )
                0057        totcost = totcost + glb_cost
8c80e76aea Patr*0058 
2f95b0fc72 Jean*0059        WRITE(standardMessageUnit,'(A,I9,1PE23.15)')
                0060      &  ' DIC_COST: iter,totcost =', myIter, totcost
                0061       _END_MASTER( myThid )
daab022f42 Step*0062 
2f95b0fc72 Jean*0063 #endif /* ALLOW_DIC_COST */
8c80e76aea Patr*0064 
daab022f42 Step*0065       RETURN
                0066       END