Changeset 3294 for trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90
- Timestamp:
- 2012-01-28T17:44:18+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90
r2715 r3294 19 19 USE trc ! TOP variables 20 20 USE sms_pisces ! sms trends 21 USE iom ! I/O manager 21 22 22 23 … … 46 47 !!---------------------------------------------------------------------- 47 48 !! 48 #if defined key_diatrc && ! defined key_iomput 49 INTEGER :: jl, jn 50 ! definition of additional diagnostic as a structure 51 TYPE DIAG 52 CHARACTER(len = 20) :: snamedia !: short name 53 CHARACTER(len = 80 ) :: lnamedia !: long name 54 CHARACTER(len = 20 ) :: unitdia !: unit 55 END TYPE DIAG 56 57 TYPE(DIAG) , DIMENSION(jp_pisces_2d) :: pisdia2d 58 TYPE(DIAG) , DIMENSION(jp_pisces_3d) :: pisdia3d 59 #endif 60 61 NAMELIST/nampisbio/ part, nrdttrc, wsbio, xkmort, ferat3, wsbio2 49 INTEGER :: jl, jn 50 TYPE(DIAG), DIMENSION(jp_pisces_2d) :: pisdia2d 51 TYPE(DIAG), DIMENSION(jp_pisces_3d) :: pisdia3d 52 !! 53 NAMELIST/nampisbio/ nrdttrc, wsbio, xkmort, ferat3, wsbio2 62 54 #if defined key_kriest 63 55 NAMELIST/nampiskrp/ xkr_eta, xkr_zeta, xkr_mass_min, xkr_mass_max 64 56 #endif 65 #if defined key_diatrc && ! defined key_iomput 66 NAMELIST/nampisdia/ nn_writedia, pisdia3d, pisdia2d ! additional diagnostics 67 #endif 68 NAMELIST/nampisdmp/ ln_pisdmp, ln_pisclo 57 NAMELIST/nampisdia/ pisdia3d, pisdia2d ! additional diagnostics 58 NAMELIST/nampisdmp/ ln_pisdmp, nn_pisdmp, ln_pisclo 69 59 70 60 !!---------------------------------------------------------------------- … … 77 67 ! ! Open the namelist file 78 68 ! ! ---------------------- 79 CALL ctl_opn( numnat , 'namelist_pisces', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )69 CALL ctl_opn( numnatp, 'namelist_pisces', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 80 70 81 REWIND( numnat )82 READ ( numnat , nampisbio )71 REWIND( numnatp ) 72 READ ( numnatp, nampisbio ) 83 73 84 74 IF(lwp) THEN ! control print 85 75 WRITE(numout,*) ' Namelist : nampisbio' 86 WRITE(numout,*) ' part of calcite not dissolved in guts part =', part87 76 WRITE(numout,*) ' frequence pour la biologie nrdttrc =', nrdttrc 88 77 WRITE(numout,*) ' POC sinking speed wsbio =', wsbio … … 101 90 xkr_mass_max = 1. 102 91 103 REWIND( numnat ) ! read natkriest104 READ ( numnat , nampiskrp )92 REWIND( numnatp ) ! read natkriest 93 READ ( numnatp, nampiskrp ) 105 94 106 95 IF(lwp) THEN … … 120 109 #endif 121 110 ! 122 #if defined key_diatrc && ! defined key_iomput 111 IF( .NOT.lk_iomput .AND. ln_diatrc ) THEN 112 ! 113 ! Namelist nampisdia 114 ! ------------------- 115 DO jl = 1, jp_pisces_2d 116 WRITE(pisdia2d(jl)%sname,'("2D_",I1)') jl ! short name 117 WRITE(pisdia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl ! long name 118 pisdia2d(jl)%units = ' ' ! units 119 END DO 120 ! ! 3D output arrays 121 DO jl = 1, jp_pisces_3d 122 WRITE(pisdia3d(jl)%sname,'("3D_",I1)') jl ! short name 123 WRITE(pisdia3d(jl)%lname,'("3D DIAGNOSTIC NUMBER ",I2)') jl ! long name 124 pisdia3d(jl)%units = ' ' ! units 125 END DO 123 126 124 ! Namelist namlobdia 125 ! ------------------- 126 nn_writedia = 10 ! default values 127 128 DO jl = 1, jp_pisces_2d 129 jn = jp_pcs0_2d + jl - 1 130 WRITE(ctrc2d(jn),'("2D_",I1)') jn ! short name 131 WRITE(ctrc2l(jn),'("2D DIAGNOSTIC NUMBER ",I2)') jn ! long name 132 ctrc2u(jn) = ' ' ! units 133 END DO 134 ! ! 3D output arrays 135 DO jl = 1, jp_pisces_3d 136 jn = jp_pcs0_3d + jl - 1 137 WRITE(ctrc3d(jn),'("3D_",I1)') jn ! short name 138 WRITE(ctrc3l(jn),'("3D DIAGNOSTIC NUMBER ",I2)') jn ! long name 139 ctrc3u(jn) = ' ' ! units 140 END DO 141 142 REWIND( numnat ) ! read natrtd 143 READ ( numnat, nampisdia ) 144 145 DO jl = 1, jp_pisces_2d 146 jn = jp_pcs0_2d + jl - 1 147 ctrc2d(jn) = pisdia2d(jl)%snamedia 148 ctrc2l(jn) = pisdia2d(jl)%lnamedia 149 ctrc2u(jn) = pisdia2d(jl)%unitdia 150 END DO 151 152 DO jl = 1, jp_pisces_3d 153 jn = jp_pcs0_3d + jl - 1 154 ctrc3d(jn) = pisdia3d(jl)%snamedia 155 ctrc3l(jn) = pisdia3d(jl)%lnamedia 156 ctrc3u(jn) = pisdia3d(jl)%unitdia 157 END DO 158 159 IF(lwp) THEN ! control print 160 WRITE(numout,*) 161 WRITE(numout,*) ' Namelist : natadd' 162 WRITE(numout,*) ' frequency of outputs for additional arrays nn_writedia = ', nn_writedia 163 DO jl = 1, jp_pisces_3d 164 jn = jp_pcs0_3d + jl - 1 165 WRITE(numout,*) ' 3d output field No : ',jn 166 WRITE(numout,*) ' short name : ', TRIM(ctrc3d(jn)) 167 WRITE(numout,*) ' long name : ', TRIM(ctrc3l(jn)) 168 WRITE(numout,*) ' unit : ', TRIM(ctrc3u(jn)) 169 WRITE(numout,*) ' ' 170 END DO 127 REWIND( numnatp ) ! 128 READ ( numnatp, nampisdia ) 171 129 172 130 DO jl = 1, jp_pisces_2d 173 131 jn = jp_pcs0_2d + jl - 1 174 WRITE(numout,*) ' 2d output field No : ',jn 175 WRITE(numout,*) ' short name : ', TRIM(ctrc2d(jn)) 176 WRITE(numout,*) ' long name : ', TRIM(ctrc2l(jn)) 177 WRITE(numout,*) ' unit : ', TRIM(ctrc2u(jn)) 132 ctrc2d(jn) = pisdia2d(jl)%sname 133 ctrc2l(jn) = pisdia2d(jl)%lname 134 ctrc2u(jn) = pisdia2d(jl)%units 135 END DO 136 137 DO jl = 1, jp_pisces_3d 138 jn = jp_pcs0_3d + jl - 1 139 ctrc3d(jn) = pisdia3d(jl)%sname 140 ctrc3l(jn) = pisdia3d(jl)%lname 141 ctrc3u(jn) = pisdia3d(jl)%units 142 END DO 143 144 IF(lwp) THEN ! control print 145 WRITE(numout,*) 146 WRITE(numout,*) ' Namelist : natadd' 147 DO jl = 1, jp_pisces_3d 148 jn = jp_pcs0_3d + jl - 1 149 WRITE(numout,*) ' 3d diag nb : ', jn, ' short name : ', ctrc3d(jn), & 150 & ' long name : ', ctrc3l(jn), ' unit : ', ctrc3u(jn) 151 END DO 178 152 WRITE(numout,*) ' ' 179 END DO 153 154 DO jl = 1, jp_pisces_2d 155 jn = jp_pcs0_2d + jl - 1 156 WRITE(numout,*) ' 2d diag nb : ', jn, ' short name : ', ctrc2d(jn), & 157 & ' long name : ', ctrc2l(jn), ' unit : ', ctrc2u(jn) 158 END DO 159 WRITE(numout,*) ' ' 160 ENDIF 161 ! 180 162 ENDIF 181 #endif182 163 183 REWIND( numnat )184 READ ( numnat , nampisdmp )164 REWIND( numnatp ) 165 READ ( numnatp, nampisdmp ) 185 166 186 167 IF(lwp) THEN ! control print 187 168 WRITE(numout,*) 188 169 WRITE(numout,*) ' Namelist : nampisdmp' 189 WRITE(numout,*) ' Relaxation of tracer to glodap mean value ln_pisdmp =', ln_pisdmp 170 WRITE(numout,*) ' Relaxation of tracer to glodap mean value ln_pisdmp =', ln_pisdmp 171 WRITE(numout,*) ' Frequency of Relaxation nn_pisdmp =', nn_pisdmp 190 172 WRITE(numout,*) ' Restoring of tracer to initial value on closed seas ln_pisclo =', ln_pisclo 191 173 WRITE(numout,*) ' '
Note: See TracChangeset
for help on using the changeset viewer.