/[MITgcm]/MITgcm/model/src/ini_forcing.F
ViewVC logotype

Annotation of /MITgcm/model/src/ini_forcing.F

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


Revision 1.28 - (hide annotations) (download)
Thu Oct 23 07:14:49 2003 UTC (20 years, 7 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint51n_post
Branch point for: checkpoint51n_branch
Changes since 1.27: +2 -1 lines
o modifications to make FREEZE flux visible to pkg/kpp
  - moved surfaceTendencyTice from pkg/seaice to main code
  - FREEZE & EXTERNAL_FORCING_SURF moved to FORWARD_STEP
  - subroutine FREEZE now limits only surface temperature
    (this means new output.txt for global_ocean.90x40x15,
     global_ocean.cs32x15, and global_with_exf)
o added surface flux output variables to TIMEAVE_STATVARS

1 dimitri 1.28 C $Header: /usr/local/gcmpack/MITgcm/model/src/ini_forcing.F,v 1.27 2003/10/16 23:46:47 jmc Exp $
2 cnh 1.22 C $Name: $
3 cnh 1.1
4 edhill 1.26 #include "PACKAGES_CONFIG.h"
5 cnh 1.12 #include "CPP_OPTIONS.h"
6 cnh 1.1
7 cnh 1.22 CBOP
8     C !ROUTINE: INI_FORCING
9     C !INTERFACE:
10 cnh 1.1 SUBROUTINE INI_FORCING( myThid )
11 cnh 1.22
12     C !DESCRIPTION: \bv
13     C *==========================================================*
14     C | SUBROUTINE INI_FORCING
15     C | o Set model initial forcing fields.
16     C *==========================================================*
17     C \ev
18    
19     C !USES:
20 adcroft 1.14 IMPLICIT NONE
21 cnh 1.1 C === Global variables ===
22     #include "SIZE.h"
23     #include "EEPARAMS.h"
24     #include "PARAMS.h"
25     #include "GRID.h"
26     #include "FFIELDS.h"
27    
28 cnh 1.22 C !INPUT/OUTPUT PARAMETERS:
29 cnh 1.1 C == Routine arguments ==
30     C myThid - Number of this instance of INI_FORCING
31     INTEGER myThid
32    
33 cnh 1.22 C !LOCAL VARIABLES:
34 cnh 1.1 C == Local variables ==
35     C bi,bj - Loop counters
36 adcroft 1.17 C I,J
37 cnh 1.1 INTEGER bi, bj
38 adcroft 1.17 INTEGER I, J
39 cnh 1.22 CEOP
40 cnh 1.1
41 cnh 1.6 _BARRIER
42    
43 adcroft 1.10 DO bj = myByLo(myThid), myByHi(myThid)
44     DO bi = myBxLo(myThid), myBxHi(myThid)
45     DO j=1-OLy,sNy+OLy
46     DO i=1-OLx,sNx+OLx
47 heimbach 1.18 fu (i,j,bi,bj) = 0. _d 0
48     fv (i,j,bi,bj) = 0. _d 0
49     Qnet (i,j,bi,bj) = 0. _d 0
50     EmPmR (i,j,bi,bj) = 0. _d 0
51 jmc 1.27 saltFlux (i,j,bi,bj) = 0. _d 0
52 heimbach 1.18 SST (i,j,bi,bj) = 0. _d 0
53     SSS (i,j,bi,bj) = 0. _d 0
54 mlosch 1.23 #ifdef SHORTWAVE_HEATING
55 heimbach 1.18 Qsw (i,j,bi,bj) = 0. _d 0
56 mlosch 1.23 #else
57     Qsw (1,1,1,1) = 0. _d 0
58     #endif
59     #ifdef ATMOSPHERIC_LOADING
60     pload (i,j,bi,bj) = 0. _d 0
61     #endif
62 heimbach 1.18 surfaceTendencyU(i,j,bi,bj) = 0. _d 0
63     surfaceTendencyV(i,j,bi,bj) = 0. _d 0
64     surfaceTendencyT(i,j,bi,bj) = 0. _d 0
65     surfaceTendencyS(i,j,bi,bj) = 0. _d 0
66 dimitri 1.28 surfaceTendencyTice(i,j,bi,bj) = 0. _d 0
67 heimbach 1.24 #ifndef INCLUDE_EXTERNAL_FORCING_PACKAGE
68     taux0 (i,j,bi,bj) = 0. _d 0
69     taux1 (i,j,bi,bj) = 0. _d 0
70     tauy0 (i,j,bi,bj) = 0. _d 0
71     tauy1 (i,j,bi,bj) = 0. _d 0
72     Qnet0 (i,j,bi,bj) = 0. _d 0
73     Qnet1 (i,j,bi,bj) = 0. _d 0
74     EmPmR0 (i,j,bi,bj) = 0. _d 0
75     EmPmR1 (i,j,bi,bj) = 0. _d 0
76     SST0 (i,j,bi,bj) = 0. _d 0
77     SST1 (i,j,bi,bj) = 0. _d 0
78     SSS0 (i,j,bi,bj) = 0. _d 0
79     SSS1 (i,j,bi,bj) = 0. _d 0
80     #ifdef SHORTWAVE_HEATING
81     Qsw0 (i,j,bi,bj) = 0. _d 0
82     Qsw1 (i,j,bi,bj) = 0. _d 0
83     #endif
84     #ifdef ATMOSPHERIC_LOADING
85     pload0 (i,j,bi,bj) = 0. _d 0
86     pload1 (i,j,bi,bj) = 0. _d 0
87     #endif
88     #endif
89 adcroft 1.10 ENDDO
90     ENDDO
91     ENDDO
92     ENDDO
93 adcroft 1.15 C
94 adcroft 1.16 _BEGIN_MASTER(myThid)
95     IF ( zonalWindFile .NE. ' ' ) THEN
96     CALL READ_FLD_XY_RS( zonalWindFile, ' ', fu, 0, myThid )
97     ENDIF
98     IF ( meridWindFile .NE. ' ' ) THEN
99     CALL READ_FLD_XY_RS( meridWindFile, ' ', fv, 0, myThid )
100     ENDIF
101     IF ( surfQFile .NE. ' ' ) THEN
102     CALL READ_FLD_XY_RS( surfQFile, ' ', Qnet, 0, myThid )
103     ENDIF
104     IF ( EmPmRfile .NE. ' ' ) THEN
105     CALL READ_FLD_XY_RS( EmPmRfile, ' ', EmPmR, 0, myThid )
106     ENDIF
107     IF ( thetaClimFile .NE. ' ' ) THEN
108     CALL READ_FLD_XY_RS( thetaClimFile, ' ', SST, 0, myThid )
109     ENDIF
110     IF ( saltClimFile .NE. ' ' ) THEN
111     CALL READ_FLD_XY_RS( saltClimFile, ' ', SSS, 0, myThid )
112     ENDIF
113 heimbach 1.18 #ifdef SHORTWAVE_HEATING
114     IF ( surfQswFile .NE. ' ' ) THEN
115     CALL READ_FLD_XY_RS( surfQswFile, ' ', Qsw, 0, myThid )
116     ENDIF
117     #endif
118 mlosch 1.23 #ifdef ATMOSPHERIC_LOADING
119     IF ( pLoadFile .NE. ' ' ) THEN
120     CALL READ_FLD_XY_RS( pLoadFile, ' ', pload, 0, myThid )
121     ENDIF
122     #endif
123 adcroft 1.16 _END_MASTER(myThid)
124     C
125 adcroft 1.15 _EXCH_XY_R4(fu , myThid )
126     _EXCH_XY_R4(fv , myThid )
127     _EXCH_XY_R4(Qnet , myThid )
128     _EXCH_XY_R4(EmPmR, myThid )
129     _EXCH_XY_R4(SST , myThid )
130     _EXCH_XY_R4(SSS , myThid )
131 mlosch 1.23 #ifdef SHORTWAVE_HEATING
132 adcroft 1.16 _EXCH_XY_R4(Qsw , myThid )
133 mlosch 1.23 #endif
134     #ifdef ATMOSPHERIC_LOADING
135     _EXCH_XY_R4(pload , myThid )
136     C CALL PLOT_FIELD_XYRS( pload, 'S/R INI_FORCING pload',1,myThid)
137     #endif
138 adcroft 1.10
139 adcroft 1.15 C CALL PLOT_FIELD_XYRS( fu, 'S/R INI_FORCING FU',1,myThid)
140     C CALL PLOT_FIELD_XYRS( fv, 'S/R INI_FORCING FV',1,myThid)
141 cnh 1.1
142     RETURN
143     END

  ViewVC Help
Powered by ViewVC 1.1.22