Changeset 472 for trunk/NEMO/OPA_SRC/in_out_manager.F90
- Timestamp:
- 2006-05-11T16:40:51+02:00 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/OPA_SRC/in_out_manager.F90
r434 r472 6 6 7 7 PUBLIC 8 !!----------------------------------------------------------------------9 !! OPA 9.0 , LOCEAN-IPSL (2005)10 !! $Header$11 !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt12 !!----------------------------------------------------------------------13 8 14 9 !!---------------------------------------------------------------------- … … 32 27 ninist = 0 , & !: initial state output flag (0/1) 33 28 nbench = 0 !: benchmark parameter (0/1) 34 !!----------------------------------------------------------------------35 !! Run control36 !!----------------------------------------------------------------------37 29 38 INTEGER :: & !:39 nstop = 0 , & !: e r r o r flag (=number of reason for a40 ! ! prematurely stop the run)41 nwarn = 0 !: w a r n i n g flag (=number of warning42 ! ! found during the run)43 44 45 CHARACTER (len=64) :: & !:46 cform_err="(/,' ===>>> : E R R O R', /,' ===========',/)" , & !:47 cform_war="(/,' ===>>> : W A R N I N G', /,' ===============',/)" !:48 30 !!---------------------------------------------------------------------- 49 31 !! output monitoring 50 32 !! ----------------------------------- 51 52 LOGICAL :: & !:53 lwp , & !: boolean : true on the 1st processor only54 lsp_area = .TRUE. !: to make a control print over a specific area55 33 56 34 INTEGER :: & !: … … 80 58 numisp = 41 , & !: logical unit for island statistics 81 59 numgap = 45 , & !: logical unit for differences diagnostic 82 numwrs = 46 , & !: logical unit for output restart83 numtdt = 62 , & !: logical unit for data temperature84 numsdt = 63 , & !: logical unit for data salinity85 numrnf = 64 , & !: logical unit for runoff data86 numwso = 71 , & !: logical unit for 2d output write87 numwvo = 72 , & !: logical unit for 3d output write88 numsst = 65 , & !: logical unit for surface temperature data89 numsss = 66 , & !: logical unit for surface salinity data90 60 numbol = 67 , & !: logical unit for "bol" diagnostics 91 61 numptr = 68 , & !: logical unit for Poleward TRansports 92 numflo = 69 , &!: logical unit for drifting floats62 numflo = 69 !: logical unit for drifting floats 93 63 ! !: * coupled units 94 numlhf = 71 , & !: unit to transfer fluxes 95 numlws = 72 , & !: unit to transfer stress 96 numlts = 73 , & !: unit to transfer sst 97 numlic = 74 !: unit to transfer ice cover 64 65 !!---------------------------------------------------------------------- 66 !! Run control 67 !!---------------------------------------------------------------------- 68 69 INTEGER :: & !: 70 nstop = 0 , & !: e r r o r flag (=number of reason for a 71 ! ! prematurely stop the run) 72 nwarn = 0 !: w a r n i n g flag (=number of warning 73 ! ! found during the run) 74 75 76 CHARACTER(LEN=100) :: ctmp1, ctmp2, ctmp3 ! temporary character 77 CHARACTER (len=64) :: & !: 78 cform_err="(/,' ===>>> : E R R O R', /,' ===========',/)" , & !: 79 cform_war="(/,' ===>>> : W A R N I N G', /,' ===============',/)" !: 80 LOGICAL :: & !: 81 lwp , & !: boolean : true on the 1st processor only 82 lsp_area = .TRUE. !: to make a control print over a specific area 83 !!---------------------------------------------------------------------- 84 !! OPA 9.0 , LOCEAN-IPSL (2005) 85 !! $Header$ 86 !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt 87 !!---------------------------------------------------------------------- 98 88 99 89 100 !! Contral/debugging 101 !! ----------------- 102 REAL(wp) :: & !: 103 u_ctl, v_ctl, & !: sum of ua and va trend 104 t_ctl, s_ctl !: sum of ta and sa trend 90 CONTAINS 91 92 93 SUBROUTINE ctl_stop( cd1, cd2, cd3, cd4, cd5, & 94 & cd6, cd7, cd8, cd9, cd10 ) 95 !!----------------------------------------------------------------------- 96 !! *** ROUTINE stop_opa *** 97 !! 98 !! ** Purpose : ??? 99 !! 100 !!----------------------------------------------------------------------- 101 CHARACTER(len=*),INTENT(in),OPTIONAL :: cd1, cd2, cd3, cd4, cd5, cd6, cd7, cd8, cd9, cd10 102 !!----------------------------------------------------------------------- 103 104 nstop = nstop + 1 105 IF(lwp) THEN 106 WRITE(numout,"(/,' ===>>> : E R R O R', /,' ===========',/)") 107 IF( PRESENT(cd1 ) ) WRITE(numout,*) cd1 108 IF( PRESENT(cd2 ) ) WRITE(numout,*) cd2 109 IF( PRESENT(cd3 ) ) WRITE(numout,*) cd3 110 IF( PRESENT(cd4 ) ) WRITE(numout,*) cd4 111 IF( PRESENT(cd5 ) ) WRITE(numout,*) cd5 112 IF( PRESENT(cd6 ) ) WRITE(numout,*) cd6 113 IF( PRESENT(cd7 ) ) WRITE(numout,*) cd7 114 IF( PRESENT(cd8 ) ) WRITE(numout,*) cd8 115 IF( PRESENT(cd9 ) ) WRITE(numout,*) cd9 116 IF( PRESENT(cd10) ) WRITE(numout,*) cd10 117 ENDIF 118 CALL FLUSH(numout) 119 120 END SUBROUTINE ctl_stop 121 122 123 SUBROUTINE ctl_warn( cd1, cd2, cd3, cd4, cd5, & 124 & cd6, cd7, cd8, cd9, cd10 ) 125 !!----------------------------------------------------------------------- 126 !! *** ROUTINE stop_opa *** 127 !! 128 !! ** Purpose : ??? 129 !! 130 !!----------------------------------------------------------------------- 131 CHARACTER(len=*),INTENT(in),OPTIONAL :: cd1, cd2, cd3, cd4, cd5, cd6, cd7, cd8, cd9, cd10 132 !!----------------------------------------------------------------------- 133 134 nwarn = nwarn + 1 135 IF(lwp) THEN 136 WRITE(numout,"(/,' ===>>> : W A R N I N G', /,' ===============',/)") 137 IF( PRESENT(cd1 ) ) WRITE(numout,*) cd1 138 IF( PRESENT(cd2 ) ) WRITE(numout,*) cd2 139 IF( PRESENT(cd3 ) ) WRITE(numout,*) cd3 140 IF( PRESENT(cd4 ) ) WRITE(numout,*) cd4 141 IF( PRESENT(cd5 ) ) WRITE(numout,*) cd5 142 IF( PRESENT(cd6 ) ) WRITE(numout,*) cd6 143 IF( PRESENT(cd7 ) ) WRITE(numout,*) cd7 144 IF( PRESENT(cd8 ) ) WRITE(numout,*) cd8 145 IF( PRESENT(cd9 ) ) WRITE(numout,*) cd9 146 IF( PRESENT(cd10) ) WRITE(numout,*) cd10 147 ENDIF 148 CALL FLUSH(numout) 149 150 END SUBROUTINE ctl_warn 105 151 106 152 END MODULE in_out_manager
Note: See TracChangeset
for help on using the changeset viewer.