- Timestamp:
- 2019-07-29T17:33:07+02:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization
- Files:
-
- 31 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/AGRIF_DEMO/EXPREF/1_namelist_cfg
r11267 r11365 364 364 !! namdiu Cool skin and warm layer models (default: OFF) 365 365 !! namflo float parameters ("key_float") 366 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")367 !! nam dct transports through some sections ("key_diadct")366 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 367 !! nam_diadct transports through some sections (default: OFF) 368 368 !! nam_diatmb Top Middle Bottom Output (default: OFF) 369 369 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/AGRIF_DEMO/EXPREF/2_namelist_cfg
r11267 r11365 313 313 !! namdiu Cool skin and warm layer models (default: OFF) 314 314 !! namflo float parameters ("key_float") 315 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")316 !! nam dct transports through some sections ("key_diadct")315 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 316 !! nam_diadct transports through some sections (default: OFF) 317 317 !! nam_diatmb Top Middle Bottom Output (default: OFF) 318 318 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/AGRIF_DEMO/EXPREF/3_namelist_cfg
r11267 r11365 313 313 !! namdiu Cool skin and warm layer models (default: OFF) 314 314 !! namflo float parameters ("key_float") 315 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")316 !! nam dct transports through some sections ("key_diadct")315 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 316 !! nam_diadct transports through some sections (default: OFF) 317 317 !! nam_diatmb Top Middle Bottom Output (default: OFF) 318 318 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/AGRIF_DEMO/EXPREF/namelist_cfg
r11267 r11365 364 364 !! namdiu Cool skin and warm layer models (default: OFF) 365 365 !! namflo float parameters ("key_float") 366 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")367 !! nam dct transports through some sections ("key_diadct")366 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 367 !! nam_diadct transports through some sections (default: OFF) 368 368 !! nam_diatmb Top Middle Bottom Output (default: OFF) 369 369 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/AMM12/EXPREF/namelist_cfg
r11268 r11365 351 351 !! namdiu Cool skin and warm layer models (default: OFF) 352 352 !! namflo float parameters ("key_float") 353 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")354 !! nam dct transports through some sections ("key_diadct")353 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 354 !! nam_diadct transports through some sections (default: OFF) 355 355 !! nam_diatmb Top Middle Bottom Output (default: OFF) 356 356 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/C1D_PAPA/EXPREF/namelist_cfg
r11267 r11365 421 421 !! namdiu Cool skin and warm layer models (default: OFF) 422 422 !! namflo float parameters ("key_float") 423 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")424 !! nam dct transports through some sections ("key_diadct")423 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 424 !! nam_diadct transports through some sections (default: OFF) 425 425 !! nam_diatmb Top Middle Bottom Output (default: OFF) 426 426 !! nam_dia25h 25h Mean Output (default: OFF) … … 449 449 / 450 450 !----------------------------------------------------------------------- 451 &nam_diaharm ! Harmonic analysis of tidal constituents ( "key_diaharm")452 !----------------------------------------------------------------------- 453 / 454 !----------------------------------------------------------------------- 455 &nam dct ! transports through some sections ("key_diadct")451 &nam_diaharm ! Harmonic analysis of tidal constituents (default: OFF) 452 !----------------------------------------------------------------------- 453 / 454 !----------------------------------------------------------------------- 455 &nam_diadct ! transports through some sections (default: OFF) 456 456 !----------------------------------------------------------------------- 457 457 / -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/GYRE_BFM/EXPREF/namelist_cfg
r10072 r11365 228 228 !! namdiu Cool skin and warm layer models (default: OFF) 229 229 !! namflo float parameters ("key_float") 230 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")231 !! nam dct transports through some sections ("key_diadct")230 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 231 !! nam_diadct transports through some sections (default: OFF) 232 232 !! nam_diatmb Top Middle Bottom Output (default: OFF) 233 233 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/GYRE_PISCES/EXPREF/namelist_cfg
r10072 r11365 222 222 !! namdiu Cool skin and warm layer models (default: OFF) 223 223 !! namflo float parameters ("key_float") 224 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")225 !! nam dct transports through some sections ("key_diadct")224 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 225 !! nam_diadct transports through some sections (default: OFF) 226 226 !! nam_diatmb Top Middle Bottom Output (default: OFF) 227 227 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/ORCA2_ICE_PISCES/EXPREF/namelist_cfg
r11267 r11365 392 392 !! namdiu Cool skin and warm layer models (default: OFF) 393 393 !! namflo float parameters ("key_float") 394 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")395 !! nam dct transports through some sections ("key_diadct")394 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 395 !! nam_diadct transports through some sections (default: OFF) 396 396 !! nam_diatmb Top Middle Bottom Output (default: OFF) 397 397 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/ORCA2_OFF_PISCES/EXPREF/namelist_cfg
r11267 r11365 377 377 !! namdiu Cool skin and warm layer models (default: OFF) 378 378 !! namflo float parameters ("key_float") 379 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")380 !! nam dct transports through some sections ("key_diadct")379 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 380 !! nam_diadct transports through some sections (default: OFF) 381 381 !! nam_diatmb Top Middle Bottom Output (default: OFF) 382 382 !! nam_dia25h 25h Mean Output (default: OFF) … … 405 405 / 406 406 !----------------------------------------------------------------------- 407 &nam_diaharm ! Harmonic analysis of tidal constituents ( "key_diaharm")408 !----------------------------------------------------------------------- 409 / 410 !----------------------------------------------------------------------- 411 &nam dct ! transports through some sections ("key_diadct")407 &nam_diaharm ! Harmonic analysis of tidal constituents (default: OFF) 408 !----------------------------------------------------------------------- 409 / 410 !----------------------------------------------------------------------- 411 &nam_diadct ! transports through some sections (default: OFF) 412 412 !----------------------------------------------------------------------- 413 413 / -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/ORCA2_SAS_ICE/EXPREF/namelist_cfg
r11267 r11365 178 178 !! namdiu Cool skin and warm layer models (default: OFF) 179 179 !! namflo float parameters ("key_float") 180 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")181 !! nam dct transports through some sections ("key_diadct")180 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 181 !! nam_diadct transports through some sections (default: OFF) 182 182 !! nam_diatmb Top Middle Bottom Output (default: OFF) 183 183 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/SHARED/namelist_ref
r11358 r11365 1109 1109 !! namdiu Cool skin and warm layer models (default: OFF) 1110 1110 !! namflo float parameters ("key_float") 1111 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")1112 !! nam dct transports through some sections ("key_diadct")1111 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 1112 !! nam_diadct transports through some sections (default: OFF) 1113 1113 !! nam_diatmb Top Middle Bottom Output (default: OFF) 1114 1114 !! nam_dia25h 25h Mean Output (default: OFF) … … 1168 1168 / 1169 1169 !----------------------------------------------------------------------- 1170 &nam_diaharm ! Harmonic analysis of tidal constituents ("key_diaharm") 1171 !----------------------------------------------------------------------- 1172 nit000_han = 1 ! First time step used for harmonic analysis 1173 nitend_han = 75 ! Last time step used for harmonic analysis 1174 nstep_han = 15 ! Time step frequency for harmonic analysis 1175 tname(1) = 'M2' ! Name of tidal constituents 1176 tname(2) = 'K1' 1177 / 1178 !----------------------------------------------------------------------- 1179 &namdct ! transports through some sections ("key_diadct") 1180 !----------------------------------------------------------------------- 1181 nn_dct = 15 ! time step frequency for transports computing 1182 nn_dctwri = 15 ! time step frequency for transports writing 1183 nn_secdebug = 112 ! 0 : no section to debug 1184 ! ! -1 : debug all section 1185 ! ! 0 < n : debug section number n 1170 &nam_diaharm ! Harmonic analysis of tidal constituents (default: OFF) 1171 !----------------------------------------------------------------------- 1172 ln_diaharm = .false. ! Choose tidal harmonic output or not 1173 nit000_han = 1 ! First time step used for harmonic analysis 1174 nitend_han = 75 ! Last time step used for harmonic analysis 1175 nstep_han = 15 ! Time step frequency for harmonic analysis 1176 tname(1) = 'M2' ! Name of tidal constituents 1177 tname(2) = 'K1' ! --- 1178 / 1179 !----------------------------------------------------------------------- 1180 &nam_diadct ! transports through some sections (default: OFF) 1181 !----------------------------------------------------------------------- 1182 ln_diadct = .false. ! Calculate transport thru sections or not 1183 nn_dct = 15 ! time step frequency for transports computing 1184 nn_dctwri = 15 ! time step frequency for transports writing 1185 nn_secdebug = 112 ! 0 : no section to debug 1186 ! ! -1 : debug all section 1187 ! ! 0 < n : debug section number n 1186 1188 / 1187 1189 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/cfgs/SPITZ12/EXPREF/namelist_cfg
r11268 r11365 353 353 !! namdiu Cool skin and warm layer models (default: OFF) 354 354 !! namflo float parameters ("key_float") 355 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")356 !! nam dct transports through some sections ("key_diadct")355 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 356 !! nam_diadct transports through some sections (default: OFF) 357 357 !! nam_diatmb Top Middle Bottom Output (default: OFF) 358 358 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/src/OCE/DIA/diadct.F90
r11317 r11365 11 11 !! 3.4 ! 09/2011 (C Bricaud) 12 12 !!---------------------------------------------------------------------- 13 #if defined key_diadct 14 !!---------------------------------------------------------------------- 15 !! 'key_diadct' : 16 !!---------------------------------------------------------------------- 13 !! 17 14 !!---------------------------------------------------------------------- 18 15 !! dia_dct : Compute the transport through a sec. … … 42 39 43 40 PUBLIC dia_dct ! routine called by step.F90 44 PUBLIC dia_dct_init ! routine called by opa.F90 45 PUBLIC diadct_alloc ! routine called by nemo_init in nemogcm.F90 46 PRIVATE readsec 47 PRIVATE removepoints 48 PRIVATE transport 49 PRIVATE dia_dct_wri 50 51 LOGICAL, PUBLIC, PARAMETER :: lk_diadct = .TRUE. !: model-data diagnostics flag 52 53 INTEGER :: nn_dct ! Frequency of computation 54 INTEGER :: nn_dctwri ! Frequency of output 55 INTEGER :: nn_secdebug ! Number of the section to debug 41 PUBLIC dia_dct_init ! routine called by nemogcm.F90 42 43 ! !!** namelist variables ** 44 LOGICAL, PUBLIC :: ln_diadct ! Calculate transport thru a section or not 45 INTEGER :: nn_dct ! Frequency of computation 46 INTEGER :: nn_dctwri ! Frequency of output 47 INTEGER :: nn_secdebug ! Number of the section to debug 56 48 57 49 INTEGER, PARAMETER :: nb_class_max = 10 … … 104 96 CONTAINS 105 97 106 INTEGER FUNCTION diadct_alloc() 107 !!---------------------------------------------------------------------- 108 !! *** FUNCTION diadct_alloc *** 109 !!---------------------------------------------------------------------- 110 INTEGER :: ierr(2) 111 !!---------------------------------------------------------------------- 112 113 ALLOCATE(transports_3d(nb_3d_vars,nb_sec_max,nb_point_max,jpk), STAT=ierr(1) ) 114 ALLOCATE(transports_2d(nb_2d_vars,nb_sec_max,nb_point_max) , STAT=ierr(2) ) 115 116 diadct_alloc = MAXVAL( ierr ) 117 IF( diadct_alloc /= 0 ) CALL ctl_stop( 'STOP', 'diadct_alloc: failed to allocate arrays' ) 118 119 END FUNCTION diadct_alloc 120 98 INTEGER FUNCTION diadct_alloc() 99 !!---------------------------------------------------------------------- 100 !! *** FUNCTION diadct_alloc *** 101 !!---------------------------------------------------------------------- 102 103 ALLOCATE( transports_3d(nb_3d_vars,nb_sec_max,nb_point_max,jpk), & 104 & transports_2d(nb_2d_vars,nb_sec_max,nb_point_max) , STAT=diadct_alloc ) 105 106 CALL mpp_sum( 'diadct', diadct_alloc ) 107 IF( diadct_alloc /= 0 ) CALL ctl_stop( 'STOP', 'diadct_alloc: failed to allocate arrays' ) 108 109 END FUNCTION diadct_alloc 121 110 122 111 SUBROUTINE dia_dct_init … … 130 119 INTEGER :: ios ! Local integer output status for namelist read 131 120 !! 132 NAMELIST/nam dct/nn_dct,nn_dctwri,nn_secdebug121 NAMELIST/nam_diadct/ln_diadct, nn_dct, nn_dctwri, nn_secdebug 133 122 !!--------------------------------------------------------------------- 134 123 135 REWIND( numnam_ref ) ! Namelist nam dct in reference namelist : Diagnostic: transport through sections136 READ ( numnam_ref, nam dct, IOSTAT = ios, ERR = 901)137 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam dct in reference namelist' )138 139 REWIND( numnam_cfg ) ! Namelist nam dct in configuration namelist : Diagnostic: transport through sections140 READ ( numnam_cfg, nam dct, IOSTAT = ios, ERR = 902 )141 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam dct in configuration namelist' )142 IF(lwm) WRITE ( numond, nam dct )124 REWIND( numnam_ref ) ! Namelist nam_diadct in reference namelist : Diagnostic: transport through sections 125 READ ( numnam_ref, nam_diadct, IOSTAT = ios, ERR = 901) 126 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_diadct in reference namelist' ) 127 128 REWIND( numnam_cfg ) ! Namelist nam_diadct in configuration namelist : Diagnostic: transport through sections 129 READ ( numnam_cfg, nam_diadct, IOSTAT = ios, ERR = 902 ) 130 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam_diadct in configuration namelist' ) 131 IF(lwm) WRITE ( numond, nam_diadct ) 143 132 144 133 IF( lwp ) THEN … … 146 135 WRITE(numout,*) "diadct_init: compute transports through sections " 147 136 WRITE(numout,*) "~~~~~~~~~~~~~~~~~~~~~" 148 WRITE(numout,*) " Frequency of computation: nn_dct = ",nn_dct 149 WRITE(numout,*) " Frequency of write: nn_dctwri = ",nn_dctwri 137 WRITE(numout,*) " Calculate transport thru sections: ln_diadct = ", ln_diadct 138 WRITE(numout,*) " Frequency of computation: nn_dct = ", nn_dct 139 WRITE(numout,*) " Frequency of write: nn_dctwri = ", nn_dctwri 150 140 151 141 IF ( nn_secdebug .GE. 1 .AND. nn_secdebug .LE. nb_sec_max )THEN … … 155 145 ELSE ; WRITE(numout,*)" Wrong value for nn_secdebug : ",nn_secdebug 156 146 ENDIF 157 147 ENDIF 148 149 IF( ln_diadct ) THEN 150 ! control 158 151 IF(nn_dct .GE. nn_dctwri .AND. MOD(nn_dct,nn_dctwri) .NE. 0) & 159 & CALL ctl_stop( 'diadct: nn_dct should be smaller and a multiple of nn_dctwri' ) 160 152 & CALL ctl_stop( 'diadct: nn_dct should be smaller and a multiple of nn_dctwri' ) 153 154 ! allocate dia_dct arrays 155 IF( diadct_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'diadct_alloc: failed to allocate arrays' ) 156 157 !Read section_ijglobal.diadct 158 CALL readsec 159 160 !open output file 161 IF( lwm ) THEN 162 CALL ctl_opn( numdct_vol, 'volume_transport', 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 163 CALL ctl_opn( numdct_heat, 'heat_transport' , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 164 CALL ctl_opn( numdct_salt, 'salt_transport' , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 165 ENDIF 166 167 ! Initialise arrays to zero 168 transports_3d(:,:,:,:)=0.0 169 transports_2d(:,:,:) =0.0 170 ! 161 171 ENDIF 162 163 !Read section_ijglobal.diadct164 CALL readsec165 166 !open output file167 IF( lwm ) THEN168 CALL ctl_opn( numdct_vol, 'volume_transport', 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )169 CALL ctl_opn( numdct_heat, 'heat_transport' , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )170 CALL ctl_opn( numdct_salt, 'salt_transport' , 'NEW', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )171 ENDIF172 173 ! Initialise arrays to zero174 transports_3d(:,:,:,:)=0.0175 transports_2d(:,:,:) =0.0176 172 ! 177 173 END SUBROUTINE dia_dct_init … … 1239 1235 END FUNCTION interp 1240 1236 1241 #else1242 !!----------------------------------------------------------------------1243 !! Default option : Dummy module1244 !!----------------------------------------------------------------------1245 LOGICAL, PUBLIC, PARAMETER :: lk_diadct = .FALSE. !: diamht flag1246 PUBLIC1247 !! $Id$1248 CONTAINS1249 1250 SUBROUTINE dia_dct_init ! Dummy routine1251 IMPLICIT NONE1252 WRITE(*,*) 'dia_dct_init: You should not have seen this print! error?'1253 END SUBROUTINE dia_dct_init1254 1255 SUBROUTINE dia_dct( kt ) ! Dummy routine1256 IMPLICIT NONE1257 INTEGER, INTENT( in ) :: kt ! ocean time-step index1258 WRITE(*,*) 'dia_dct: You should not have seen this print! error?', kt1259 END SUBROUTINE dia_dct1260 #endif1261 1262 1237 !!====================================================================== 1263 1238 END MODULE diadct -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/src/OCE/DIA/diaharm.F90
r11317 r11365 5 5 !!====================================================================== 6 6 !! History : 3.1 ! 2007 (O. Le Galloudec, J. Chanut) Original code 7 !!----------------------------------------------------------------------8 #if defined key_diaharm9 !!----------------------------------------------------------------------10 !! 'key_diaharm'11 7 !!---------------------------------------------------------------------- 12 8 USE oce ! ocean dynamics and tracers variables … … 26 22 IMPLICIT NONE 27 23 PRIVATE 28 29 LOGICAL, PUBLIC, PARAMETER :: lk_diaharm = .TRUE.30 24 31 25 INTEGER, PARAMETER :: jpincomax = 2.*jpmax_harmo … … 33 27 34 28 ! !!** namelist variables ** 35 INTEGER :: nit000_han ! First time step used for harmonic analysis 36 INTEGER :: nitend_han ! Last time step used for harmonic analysis 37 INTEGER :: nstep_han ! Time step frequency for harmonic analysis 38 INTEGER :: nb_ana ! Number of harmonics to analyse 29 LOGICAL, PUBLIC :: ln_diaharm ! Choose tidal harmonic output or not 30 INTEGER :: nit000_han ! First time step used for harmonic analysis 31 INTEGER :: nitend_han ! Last time step used for harmonic analysis 32 INTEGER :: nstep_han ! Time step frequency for harmonic analysis 33 INTEGER :: nb_ana ! Number of harmonics to analyse 39 34 40 35 INTEGER , ALLOCATABLE, DIMENSION(:) :: name … … 53 48 CHARACTER (LEN=4), DIMENSION(jpmax_harmo) :: tname ! Names of tidal constituents ('M2', 'K1',...) 54 49 55 PUBLIC dia_harm ! routine called by step.F90 50 PUBLIC dia_harm ! routine called by step.F90 51 PUBLIC dia_harm_init ! routine called by nemogcm.F90 56 52 57 53 !!---------------------------------------------------------------------- … … 71 67 !! 72 68 !!-------------------------------------------------------------------- 73 INTEGER :: jh, nhan, jk, ji69 INTEGER :: jh, nhan, ji 74 70 INTEGER :: ios ! Local integer output status for namelist read 75 71 76 NAMELIST/nam_diaharm/ nit000_han, nitend_han, nstep_han, tname72 NAMELIST/nam_diaharm/ ln_diaharm, nit000_han, nitend_han, nstep_han, tname 77 73 !!---------------------------------------------------------------------- 78 74 … … 84 80 ! 85 81 IF( .NOT. ln_tide ) CALL ctl_stop( 'dia_harm_init : ln_tide must be true for harmonic analysis') 86 !87 CALL tide_init_Wave88 82 ! 89 83 REWIND( numnam_ref ) ! Namelist nam_diaharm in reference namelist : Tidal harmonic analysis … … 96 90 ! 97 91 IF(lwp) THEN 98 WRITE(numout,*) 'First time step used for analysis: nit000_han= ', nit000_han 99 WRITE(numout,*) 'Last time step used for analysis: nitend_han= ', nitend_han 100 WRITE(numout,*) 'Time step frequency for harmonic analysis: nstep_han= ', nstep_han 92 WRITE(numout,*) 'Tidal diagnostics = ', ln_diaharm 93 WRITE(numout,*) ' First time step used for analysis: nit000_han= ', nit000_han 94 WRITE(numout,*) ' Last time step used for analysis: nitend_han= ', nitend_han 95 WRITE(numout,*) ' Time step frequency for harmonic analysis: nstep_han = ', nstep_han 101 96 ENDIF 102 97 103 ! Basic checks on harmonic analysis time window: 104 ! ---------------------------------------------- 105 IF( nit000 > nit000_han ) CALL ctl_stop( 'dia_harm_init : nit000_han must be greater than nit000', & 106 & ' restart capability not implemented' ) 107 IF( nitend < nitend_han ) CALL ctl_stop( 'dia_harm_init : nitend_han must be lower than nitend', & 108 & 'restart capability not implemented' ) 109 110 IF( MOD( nitend_han-nit000_han+1 , nstep_han ) /= 0 ) & 111 & CALL ctl_stop( 'dia_harm_init : analysis time span must be a multiple of nstep_han' ) 112 113 nb_ana = 0 114 DO jk=1,jpmax_harmo 115 DO ji=1,jpmax_harmo 116 IF(TRIM(tname(jk)) == Wave(ji)%cname_tide) THEN 117 nb_ana=nb_ana+1 118 ENDIF 119 END DO 120 END DO 121 ! 122 IF(lwp) THEN 123 WRITE(numout,*) ' Namelist nam_diaharm' 124 WRITE(numout,*) ' nb_ana = ', nb_ana 125 CALL flush(numout) 98 IF( ln_diaharm ) THEN 99 100 CALL tide_init_Wave 101 ! 102 ! Basic checks on harmonic analysis time window: 103 ! ---------------------------------------------- 104 IF( nit000 > nit000_han ) CALL ctl_stop( 'dia_harm_init : nit000_han must be greater than nit000', & 105 & ' restart capability not implemented' ) 106 IF( nitend < nitend_han ) CALL ctl_stop( 'dia_harm_init : nitend_han must be lower than nitend', & 107 & 'restart capability not implemented' ) 108 109 IF( MOD( nitend_han-nit000_han+1 , nstep_han ) /= 0 ) & 110 & CALL ctl_stop( 'dia_harm_init : analysis time span must be a multiple of nstep_han' ) 111 ! 112 nb_ana = 0 113 DO jh=1,jpmax_harmo 114 DO ji=1,jpmax_harmo 115 IF(TRIM(tname(jh)) == Wave(ji)%cname_tide) THEN 116 nb_ana=nb_ana+1 117 ENDIF 118 END DO 119 END DO 120 ! 121 IF(lwp) THEN 122 WRITE(numout,*) ' Namelist nam_diaharm' 123 WRITE(numout,*) ' nb_ana = ', nb_ana 124 CALL flush(numout) 125 ENDIF 126 ! 127 IF (nb_ana > jpmax_harmo) THEN 128 WRITE(ctmp1,*) ' nb_ana must be lower than jpmax_harmo' 129 WRITE(ctmp2,*) ' jpmax_harmo= ', jpmax_harmo 130 CALL ctl_stop( 'dia_harm_init', ctmp1, ctmp2 ) 131 ENDIF 132 133 ALLOCATE(name (nb_ana)) 134 DO jh=1,nb_ana 135 DO ji=1,jpmax_harmo 136 IF (TRIM(tname(jh)) == Wave(ji)%cname_tide) THEN 137 name(jh) = ji 138 EXIT 139 END IF 140 END DO 141 END DO 142 143 ! Initialize frequency array: 144 ! --------------------------- 145 ALLOCATE( ana_freq(nb_ana), ut(nb_ana), vt(nb_ana), ft(nb_ana) ) 146 147 CALL tide_harmo( ana_freq, vt, ut, ft, name, nb_ana ) 148 149 IF(lwp) WRITE(numout,*) 'Analysed frequency : ',nb_ana ,'Frequency ' 150 151 DO jh = 1, nb_ana 152 IF(lwp) WRITE(numout,*) ' : ',tname(jh),' ',ana_freq(jh) 153 END DO 154 155 ! Initialize temporary arrays: 156 ! ---------------------------- 157 ALLOCATE( ana_temp(jpi,jpj,2*nb_ana,3) ) 158 ana_temp(:,:,:,:) = 0._wp 159 126 160 ENDIF 127 !128 IF (nb_ana > jpmax_harmo) THEN129 WRITE(ctmp1,*) ' nb_ana must be lower than jpmax_harmo'130 WRITE(ctmp2,*) ' jpmax_harmo= ', jpmax_harmo131 CALL ctl_stop( 'dia_harm_init', ctmp1, ctmp2 )132 ENDIF133 134 ALLOCATE(name (nb_ana))135 DO jk=1,nb_ana136 DO ji=1,jpmax_harmo137 IF (TRIM(tname(jk)) == Wave(ji)%cname_tide) THEN138 name(jk) = ji139 EXIT140 END IF141 END DO142 END DO143 144 ! Initialize frequency array:145 ! ---------------------------146 ALLOCATE( ana_freq(nb_ana), ut(nb_ana), vt(nb_ana), ft(nb_ana) )147 148 CALL tide_harmo( ana_freq, vt, ut, ft, name, nb_ana )149 150 IF(lwp) WRITE(numout,*) 'Analysed frequency : ',nb_ana ,'Frequency '151 152 DO jh = 1, nb_ana153 IF(lwp) WRITE(numout,*) ' : ',tname(jh),' ',ana_freq(jh)154 END DO155 156 ! Initialize temporary arrays:157 ! ----------------------------158 ALLOCATE( ana_temp(jpi,jpj,2*nb_ana,3) )159 ana_temp(:,:,:,:) = 0._wp160 161 161 162 END SUBROUTINE dia_harm_init … … 177 178 !!-------------------------------------------------------------------- 178 179 IF( ln_timing ) CALL timing_start('dia_harm') 179 !180 IF( kt == nit000 ) CALL dia_harm_init181 180 ! 182 181 IF( kt >= nit000_han .AND. kt <= nitend_han .AND. MOD(kt,nstep_han) == 0 ) THEN … … 422 421 INTEGER, INTENT(in) :: init 423 422 ! 424 INTEGER :: ji_sd, jj_sd, ji1_sd, ji2_sd, j k1_sd, jk2_sd423 INTEGER :: ji_sd, jj_sd, ji1_sd, ji2_sd, jh1_sd, jh2_sd 425 424 REAL(wp) :: zval1, zval2, zx1 426 425 REAL(wp), DIMENSION(jpincomax) :: ztmpx, zcol1, zcol2 … … 434 433 ztmp3(:,:) = 0._wp 435 434 ! 436 DO j k1_sd = 1, nsparse437 DO j k2_sd = 1, nsparse438 nisparse(j k2_sd) = nisparse(jk2_sd)439 njsparse(j k2_sd) = njsparse(jk2_sd)440 IF( nisparse(j k2_sd) == nisparse(jk1_sd) ) THEN441 ztmp3(njsparse(j k1_sd),njsparse(jk2_sd)) = ztmp3(njsparse(jk1_sd),njsparse(jk2_sd)) &442 & + valuesparse(j k1_sd)*valuesparse(jk2_sd)435 DO jh1_sd = 1, nsparse 436 DO jh2_sd = 1, nsparse 437 nisparse(jh2_sd) = nisparse(jh2_sd) 438 njsparse(jh2_sd) = njsparse(jh2_sd) 439 IF( nisparse(jh2_sd) == nisparse(jh1_sd) ) THEN 440 ztmp3(njsparse(jh1_sd),njsparse(jh2_sd)) = ztmp3(njsparse(jh1_sd),njsparse(jh2_sd)) & 441 & + valuesparse(jh1_sd)*valuesparse(jh2_sd) 443 442 ENDIF 444 443 END DO … … 515 514 END SUBROUTINE SUR_DETERMINE 516 515 517 #else518 !!----------------------------------------------------------------------519 !! Default case : Empty module520 !!----------------------------------------------------------------------521 LOGICAL, PUBLIC, PARAMETER :: lk_diaharm = .FALSE.522 CONTAINS523 SUBROUTINE dia_harm ( kt ) ! Empty routine524 INTEGER, INTENT( IN ) :: kt525 WRITE(*,*) 'dia_harm: you should not have seen this print'526 END SUBROUTINE dia_harm527 #endif528 529 516 !!====================================================================== 530 517 END MODULE diaharm -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/src/OCE/nemogcm.F90
r11317 r11365 59 59 USE diaobs ! Observation diagnostics (dia_obs_init routine) 60 60 USE diacfl ! CFL diagnostics (dia_cfl_init routine) 61 USE diaharm ! tidal harmonics diagnostics (dia_harm_init routine) 61 62 USE step ! NEMO time-stepping (stp routine) 62 63 USE icbini ! handle bergs, initialisation … … 472 473 IF( ln_diacfl ) CALL dia_cfl_init ! Initialise CFL diagnostics 473 474 CALL dia_ptr_init ! Poleward TRansports initialization 474 IF( lk_diadct )CALL dia_dct_init ! Sections tranports475 CALL dia_dct_init ! Sections tranports 475 476 CALL dia_hsb_init ! heat content, salt content and volume budgets 476 477 CALL trd_init ! Mixed-layer/Vorticity/Integral constraints trends … … 478 479 CALL dia_tmb_init ! TMB outputs 479 480 CALL dia_25h_init ! 25h mean outputs 480 IF( ln_diaobs ) CALL dia_obs( nit000-1 ) ! Observation operator for restart 481 CALL dia_harm_init ! tidal harmonics outputs 482 IF( ln_diaobs ) CALL dia_obs( nit000-1 ) ! Observation operator for restart 481 483 482 484 ! ! Assimilation increments … … 639 641 USE trc_oce , ONLY : trc_oce_alloc 640 642 USE bdy_oce , ONLY : bdy_oce_alloc 641 #if defined key_diadct642 USE diadct , ONLY : diadct_alloc643 #endif644 643 ! 645 644 INTEGER :: ierr … … 653 652 ierr = ierr + bdy_oce_alloc() ! bdy masks (incl. initialization) 654 653 ! 655 #if defined key_diadct656 ierr = ierr + diadct_alloc () !657 #endif658 !659 654 CALL mpp_sum( 'nemogcm', ierr ) 660 655 IF( ierr /= 0 ) CALL ctl_stop( 'STOP', 'nemo_alloc: unable to allocate standard ocean arrays' ) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/src/OCE/step.F90
r11353 r11365 217 217 IF( ln_diacfl ) CALL dia_cfl ( kstp ) ! Courant number diagnostics 218 218 IF( lk_diahth ) CALL dia_hth ( kstp ) ! Thermocline depth (20 degres isotherm depth) 219 IF( l k_diadct ) CALL dia_dct ( kstp ) ! Transports219 IF( ln_diadct ) CALL dia_dct ( kstp ) ! Transports 220 220 CALL dia_ar5 ( kstp ) ! ar5 diag 221 IF( l k_diaharm ) CALL dia_harm( kstp ) ! Tidal harmonic analysis221 IF( ln_diaharm ) CALL dia_harm( kstp ) ! Tidal harmonic analysis 222 222 CALL dia_wri ( kstp ) ! ocean model: outputs 223 223 ! -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/CANAL/EXPREF/namelist_cfg
r10075 r11365 276 276 !! namdiu Cool skin and warm layer models (default: OFF) 277 277 !! namflo float parameters ("key_float") 278 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")279 !! nam dct transports through some sections ("key_diadct")278 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 279 !! nam_diadct transports through some sections (default: OFF) 280 280 !! nam_diatmb Top Middle Bottom Output (default: OFF) 281 281 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_ADV1D/EXPREF/namelist_cfg
r10513 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_ADV1D/EXPREF/namelist_cfg_120pts
r10513 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_ADV1D/EXPREF/namelist_cfg_240pts
r10513 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_ADV1D/EXPREF/namelist_cfg_60pts
r10513 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_ADV2D/EXPREF/namelist_cfg
r10520 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_AGRIF/EXPREF/1_namelist_cfg
r10516 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ICE_AGRIF/EXPREF/namelist_cfg
r10516 r11365 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 203 !! namflo float parameters ("key_float") 204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/ISOMIP/EXPREF/namelist_cfg
r11267 r11365 273 273 !! namdiu Cool skin and warm layer models (default: OFF) 274 274 !! namflo float parameters ("key_float") 275 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")276 !! nam dct transports through some sections ("key_diadct")275 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 276 !! nam_diadct transports through some sections (default: OFF) 277 277 !! nam_diatmb Top Middle Bottom Output (default: OFF) 278 278 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_ubs_cfg
r10075 r11365 278 278 !! namdiu Cool skin and warm layer models (default: OFF) 279 279 !! namflo float parameters ("key_float") 280 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")281 !! nam dct transports through some sections ("key_diadct")280 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 281 !! nam_diadct transports through some sections (default: OFF) 282 282 !! nam_diatmb Top Middle Bottom Output (default: OFF) 283 283 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/OVERFLOW/EXPREF/namelist_zps_FCT4_flux_ubs_cfg
r10075 r11365 292 292 !! namdiu Cool skin and warm layer models (default: OFF) 293 293 !! namflo float parameters ("key_float") 294 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")295 !! nam dct transports through some sections ("key_diadct")294 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 295 !! nam_diadct transports through some sections (default: OFF) 296 296 !! nam_diatmb Top Middle Bottom Output (default: OFF) 297 297 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/VORTEX/EXPREF/1_namelist_cfg
r10075 r11365 273 273 !! namdiu Cool skin and warm layer models (default: OFF) 274 274 !! namflo float parameters ("key_float") 275 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")276 !! nam dct transports through some sections ("key_diadct")275 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 276 !! nam_diadct transports through some sections (default: OFF) 277 277 !! nam_diatmb Top Middle Bottom Output (default: OFF) 278 278 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/VORTEX/EXPREF/namelist_cfg
r10075 r11365 264 264 !! namdiu Cool skin and warm layer models (default: OFF) 265 265 !! namflo float parameters ("key_float") 266 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")267 !! nam dct transports through some sections ("key_diadct")266 !! nam_diaharm Harmonic analysis of tidal constituents (default; OFF) 267 !! nam_diadct transports through some sections (default: OFF) 268 268 !! nam_diatmb Top Middle Bottom Output (default: OFF) 269 269 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r10984_HPC-13_IRRMANN_BDY_optimization/tests/WAD/EXPREF/namelist_cfg
r11268 r11365 422 422 !! namdiu Cool skin and warm layer models (default: OFF) 423 423 !! namflo float parameters ("key_float") 424 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")425 !! nam dct transports through some sections ("key_diadct")424 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 425 !! nam_diadct transports through some sections (default: OFF) 426 426 !! nam_diatmb Top Middle Bottom Output (default: OFF) 427 427 !! nam_dia25h 25h Mean Output (default: OFF) … … 443 443 / 444 444 !----------------------------------------------------------------------- 445 &namdct ! transports through some sections ("key_diadct") 446 !----------------------------------------------------------------------- 445 &nam_diadct ! transports through some sections (default: OFF) 446 !----------------------------------------------------------------------- 447 ln_diadct = .false. ! Calculate transport thru sections or not 447 448 nn_dct = 60 ! time step frequency for transports computing 448 449 nn_dctwri = 60 ! time step frequency for transports writing
Note: See TracChangeset
for help on using the changeset viewer.