/[MITgcm]/MITgcm/pkg/dic/dic_ini_forcing.F
ViewVC logotype

Contents of /MITgcm/pkg/dic/dic_ini_forcing.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.24 - (show annotations) (download)
Tue Nov 4 17:16:33 2014 UTC (9 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65g, HEAD
Changes since 1.23: +10 -3 lines
code from Hajoon:
- light attenuation: add self-shading effect by climatological Chlorophyll
   (read from file)

1 C $Header: /u/gcmpack/MITgcm/pkg/dic/dic_ini_forcing.F,v 1.23 2014/08/30 00:34:02 jmc Exp $
2 C $Name: $
3
4 #include "DIC_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: DIC_INI_FORCING
8
9 C !INTERFACE: ==========================================================
10 SUBROUTINE DIC_INI_FORCING( myThid )
11
12 C !DESCRIPTION:
13 c initializes forcing fields to zero
14 c (or to reasonable values)
15
16 C !USES: ===============================================================
17 IMPLICIT NONE
18 #include "SIZE.h"
19 #include "EEPARAMS.h"
20 #include "PARAMS.h"
21 #include "GRID.h"
22 #include "DIC_VARS.h"
23 #include "DIC_LOAD.h"
24
25 C !INPUT PARAMETERS: ===================================================
26 C myThid :: thread number
27 INTEGER myThid
28 CEOP
29
30 #ifdef ALLOW_DIC
31
32 c !LOCAL VARIABLES: ===================================================
33 INTEGER bi,bj,i,j
34 #if (defined (READ_PAR) && defined (USE_QSW))
35 CHARACTER*(MAX_LEN_MBUF) msgBuf
36 #endif
37
38 C First call requires that we initialize everything to zero for safety
39 DO bj = myByLo(myThid), myByHi(myThid)
40 DO bi = myBxLo(myThid), myBxHi(myThid)
41 DIC_ldRec(bi,bj) = 0
42 ENDDO
43 ENDDO
44 CALL LEF_ZERO( dicwind0,myThid )
45 CALL LEF_ZERO( dicwind1,myThid )
46 CALL LEF_ZERO( atmosp0,myThid )
47 CALL LEF_ZERO( atmosp1,myThid )
48 CALL LEF_ZERO( silica0,myThid )
49 CALL LEF_ZERO( silica1,myThid )
50 CALL LEF_ZERO( ice0,myThid )
51 CALL LEF_ZERO( ice1,myThid )
52 #ifdef READ_PAR
53 CALL LEF_ZERO( par0,myThid )
54 CALL LEF_ZERO( par1,myThid )
55 #endif
56 #ifdef ALLOW_FE
57 CALL LEF_ZERO( feinput0,myThid )
58 CALL LEF_ZERO( feinput1,myThid )
59 #endif
60 #ifdef LIGHT_CHL
61 CALL LEF_ZERO( chlinput,myThid )
62 #endif
63
64 #ifdef READ_PAR
65 #ifdef USE_QSW
66 WRITE(msgBuf,'(2A)')
67 & ' DIC_INI_FORCING: You can not use READ_PAR ',
68 & ' and USE_QSW'
69 CALL PRINT_ERROR( msgBuf, myThid )
70 STOP 'ABNORMAL END: S/R DIC_INI_FORCING'
71 #endif
72 #endif
73
74 c set reasonable values to those that need at least something
75 DO bj = myByLo(myThid), myByHi(myThid)
76 DO bi = myBxLo(myThid), myBxHi(myThid)
77 DO j=1-OLy,sNy+OLy
78 DO i=1-OLx,sNx+OLx
79 WIND(i,j,bi,bj) = 5. _d 0*maskC(i,j,1,bi,bj)
80 AtmosP(i,j,bi,bj) = 1. _d 0*maskC(i,j,1,bi,bj)
81 SILICA(i,j,bi,bj) = 7.6838 _d -3*maskC(i,j,1,bi,bj)
82 FIce(i,j,bi,bj) = 0. _d 0
83 FluxCO2(i,j,bi,bj)= 0. _d 0
84 #ifdef READ_PAR
85 PAR(i,j,bi,bj) = 100. _d 0*maskC(i,j,1,bi,bj)
86 #endif
87 #ifdef LIGHT_CHL
88 C If the chlorophyll climatology is not provided, use this default value.
89 CHL(i,j,bi,bj) = 1. _d -2*maskC(i,j,1,bi,bj)
90 #endif
91 #ifdef ALLOW_FE
92 InputFe(i,j,bi,bj)= 1. _d -11*maskC(i,j,1,bi,bj)
93 #endif
94 ENDDO
95 ENDDO
96 ENDDO
97 ENDDO
98
99 #endif /* ALLOW_DIC */
100 RETURN
101 END

  ViewVC Help
Powered by ViewVC 1.1.22