/[MITgcm]/MITgcm/pkg/generic_advdiff/gad_write_pickup.F
ViewVC logotype

Contents of /MITgcm/pkg/generic_advdiff/gad_write_pickup.F

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


Revision 1.2 - (show annotations) (download)
Tue Feb 12 20:29:25 2008 UTC (16 years, 3 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint59q, checkpoint59p, checkpoint59o
Changes since 1.1: +3 -1 lines
avoid declaration of un-used variable.

1 C $Header: /u/gcmpack/MITgcm/pkg/generic_advdiff/gad_write_pickup.F,v 1.1 2007/01/16 04:38:35 jmc Exp $
2 C $Name: $
3
4 #include "GAD_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: GAD_WRITE_PICKUP
8
9 C !INTERFACE: ==========================================================
10 SUBROUTINE GAD_WRITE_PICKUP( suff,
11 I myTime, myIter, myThid )
12
13 C !DESCRIPTION:
14 C Writes current state of 2nd.Order moments to a pickup file
15
16 C !USES: ===============================================================
17 IMPLICIT NONE
18 #include "SIZE.h"
19 #include "EEPARAMS.h"
20 #include "PARAMS.h"
21 #include "GAD.h"
22 #include "GAD_SOM_VARS.h"
23 #ifdef ALLOW_MNC
24 #include "MNC_PARAMS.h"
25 #endif
26
27 C !INPUT PARAMETERS: ===================================================
28 C suff :: suffix for pickup file (eg. ckptA or 0000000010)
29 C myTime :: model time
30 C myIter :: time-step number
31 C myThid :: thread number
32 CHARACTER*(*) suff
33 _RL myTime
34 INTEGER myIter
35 INTEGER myThid
36
37 C !OUTPUT PARAMETERS: ==================================================
38 C none
39
40 #ifdef GAD_ALLOW_SOM_ADVECT
41 C === Functions ====
42 INTEGER ILNBLNK
43 EXTERNAL ILNBLNK
44
45 C !LOCAL VARIABLES: ====================================================
46 C n :: 2nd.O. moment loop index
47 C iRec :: record number
48 C fn :: character buffer for creating filename
49 C prec :: precision of pickup files
50 C msgBuf :: Informational/error meesage buffer
51 INTEGER n,prec,iRec,lChar
52 CHARACTER*(MAX_LEN_FNAM) fn
53 #ifdef ALLOW_MNC
54 CHARACTER*(MAX_LEN_MBUF) msgBuf
55 #endif
56 CEOP
57
58 #ifdef ALLOW_MNC
59 IF ( useMNC .AND. pickup_write_mnc ) THEN
60 IF ( tempSOM_Advection .OR. saltSOM_Advection ) THEN
61 WRITE(msgBuf,'(A)') 'GAD_WRITE_PICKUP: MNC not yet coded',
62 & ' => write bin file instead'
63 CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
64 & SQUEEZE_RIGHT, myThid)
65 ENDIF
66 ENDIF
67 #endif /* ALLOW_MNC */
68
69 c IF ( pickup_write_mdsio ) THEN
70 IF ( .TRUE. ) THEN
71 lChar = ILNBLNK(suff)
72
73 IF ( tempSOM_Advection ) THEN
74 C-- Pot. Temp. 2nd.Order moments
75 IF ( lChar.EQ.0 ) THEN
76 WRITE(fn,'(2A)') 'pickup_somT'
77 ELSE
78 WRITE(fn,'(2A)') 'pickup_somT.',suff(1:lChar)
79 ENDIF
80 prec = precFloat64
81 C Write 2nd Order moments as consecutive records
82 DO n=1,nSOM
83 iRec = n
84 CALL WRITE_REC_3D_RL( fn, prec, Nr,
85 I som_T(1-Olx,1-Oly,1,1,1,n),
86 I iRec, myIter, myThid )
87 ENDDO
88 ENDIF
89
90 IF ( saltSOM_Advection ) THEN
91 C-- Salinity 2nd.Order moments
92 IF ( lChar.EQ.0 ) THEN
93 WRITE(fn,'(2A)') 'pickup_somS'
94 ELSE
95 WRITE(fn,'(2A)') 'pickup_somS.',suff(1:lChar)
96 ENDIF
97 prec = precFloat64
98 C Write 2nd Order moments as consecutive records
99 DO n=1,nSOM
100 iRec = n
101 CALL WRITE_REC_3D_RL( fn, prec, Nr,
102 I som_S(1-Olx,1-Oly,1,1,1,n),
103 I iRec, myIter, myThid )
104 ENDDO
105 ENDIF
106
107 ENDIF
108
109 #endif /* GAD_ALLOW_SOM_ADVECT */
110
111 RETURN
112 END

  ViewVC Help
Powered by ViewVC 1.1.22