Changeset 12369


Ignore:
Timestamp:
2020-02-12T13:06:25+01:00 (8 weeks ago)
Author:
dancopsey
Message:

Add print statements

Location:
NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/ice.F90

    r10888 r12369  
    171171   INTEGER, PUBLIC, PARAMETER ::   np_cnd_ON  = 1  !: forcing from conduction flux (SM0L) (compute qcn and qsr_tr via sbcblk.F90 or sbccpl.F90) 
    172172   INTEGER, PUBLIC, PARAMETER ::   np_cnd_EMU = 2  !: emulate conduction flux via icethd_zdf.F90 (BL99) (1st round compute qcn and qsr_tr, 2nd round use it) 
     173   INTEGER , PUBLIC :: cat 
    173174 
    174175   !                                     !!** ice-vertical diffusion namelist (namthd_zdf) ** 
     
    296297   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   h_i       !: Ice thickness                           (m) 
    297298   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   a_i       !: Ice fractional areas (concentration) 
     299   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   a_i_last_couple    !: Ice fractional area at last coupling time 
    298300   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   v_i       !: Ice volume per unit area                (m) 
    299301   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   v_s       !: Snow volume per unit area               (m) 
     
    379381   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   qcn_ice_top   !: Surface conduction flux (W/m2) 
    380382 
     383   INTEGER,  PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   to_print_2d 
    381384   ! 
    382385   !!---------------------------------------------------------------------- 
     
    393396      INTEGER :: ice_alloc 
    394397      ! 
    395       INTEGER :: ierr(15), ii 
     398      INTEGER :: ierr(16), ii 
    396399      !!----------------------------------------------------------------- 
    397400      ierr(:) = 0 
     
    428431 
    429432      ii = ii + 1 
     433      ALLOCATE( a_i_last_couple(jpi,jpj,jpl) , STAT=ierr(ii) ) 
     434 
     435      ii = ii + 1 
    430436      ALLOCATE( u_ice(jpi,jpj) , v_ice(jpi,jpj) ,                                   & 
    431437         &      vt_i (jpi,jpj) , vt_s (jpi,jpj) , at_i(jpi,jpj) , ato_i(jpi,jpj) ,  & 
     
    469475      ALLOCATE( t_si(jpi,jpj,jpl) , tm_si(jpi,jpj) , qcn_ice_bot(jpi,jpj,jpl) , qcn_ice_top(jpi,jpj,jpl) , STAT = ierr(ii) ) 
    470476 
     477      ALLOCATE( to_print_2d(jpi,jpj), STAT = ierr(ii) ) 
     478 
    471479      ice_alloc = MAXVAL( ierr(:) ) 
    472480      IF( ice_alloc /= 0 )   CALL ctl_stop( 'STOP', 'ice_alloc: failed to allocate arrays.' ) 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/ice1d.F90

    r10888 r12369  
    3535   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   qsr_ice_1d   
    3636   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   qns_ice_1d   
    37    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   t_bo_1d      
     37   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   t_bo_1d   
     38   INTEGER,  PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   to_print 
    3839   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:) ::   rn_amax_1d 
    3940    
     
    186187         &      hfx_sum_1d(jpij) , hfx_bom_1d    (jpij) , hfx_bog_1d(jpij) ,   &  
    187188         &      hfx_dif_1d(jpij) , hfx_opw_1d    (jpij) , hfx_dyn_1d(jpij) ,   & 
    188          &      rn_amax_1d(jpij) ,                                             & 
     189         &      rn_amax_1d(jpij) , to_print(jpij) ,                            & 
    189190         &      hfx_thd_1d(jpij) , hfx_spr_1d    (jpij) ,                      & 
    190191         &      hfx_snw_1d(jpij) , hfx_sub_1d    (jpij) ,                      & 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icecor.F90

    r11081 r12369  
    8585      IF ( nn_icesal == 2 ) THEN    !  salinity must stay in bounds [Simin,Simax]        ! 
    8686      !                             !----------------------------------------------------- 
     87 
     88      WRITE(numout,*) 'icecor: sv_i before bounding = ',sv_i(3,4,1) 
     89 
    8790         zzc = rhoi * r1_rdtice 
    8891         DO jl = 1, jpl 
     
    9295                  sv_i(ji,jj,jl) = MIN(  MAX( rn_simin*v_i(ji,jj,jl) , sv_i(ji,jj,jl) ) , rn_simax*v_i(ji,jj,jl)  ) 
    9396                  sfx_res(ji,jj) = sfx_res(ji,jj) - ( sv_i(ji,jj,jl) - zsal ) * zzc   ! associated salt flux 
     97 
     98                  IF ( ji == 3 .AND. jj == 4 .AND. jl == 1 ) THEN 
     99                     WRITE(numout,*) 'icecor: zsal, v_i(ji,jj,jl), sv_i(ji,jj,jl) = ',zsal, v_i(ji,jj,jl), sv_i(ji,jj,jl) 
     100                  ENDIF 
    94101               END DO 
    95102            END DO 
    96103         END DO 
    97104      ENDIF 
     105 
     106 
     107      WRITE(numout,*) 'icecor before redist: v_i(42,26,1), a_i(42,26,1), h_i = ',v_i(42,26,1), ' ', a_i(42,26,1), ' ', v_i(42,26,1)/a_i(42,26,1) 
     108 
    98109      !                             !----------------------------------------------------- 
    99110      !                             !  Rebin categories with thickness out of bounds     ! 
    100111      !                             !----------------------------------------------------- 
    101112      IF ( jpl > 1 )   CALL ice_itd_reb( kt ) 
     113 
     114      WRITE(numout,*) 'icecor after redist: v_i(42,26,1), a_i(42,26,1), h_i = ',v_i(42,26,1), ' ', a_i(42,26,1), ' ', v_i(42,26,1)/a_i(42,26,1) 
    102115 
    103116      !                             !----------------------------------------------------- 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icedyn.F90

    r11081 r12369  
    103103      END WHERE 
    104104      ! 
     105 
     106      write(numout,*)'ice_dyn 0: e_i = ',e_i (42,26,1,1) 
    105107      ! 
    106108      SELECT CASE( nice_dyn )          !-- Set which dynamics is running 
     
    146148 
    147149      END SELECT 
     150 
     151      write(numout,*)'ice_dyn 1: e_i = ',e_i (42,26,1,1) 
    148152      ! 
    149153      ! 
     
    169173         ! 
    170174      ENDIF 
     175      write(numout,*)'ice_dyn 2: e_i = ',e_i (42,26,1,1) 
    171176      ! 
    172177      ! controls 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icestp.F90

    r11081 r12369  
    8080   USE prtctl         ! Print control 
    8181 
     82   USE lbclnk         ! lateral boundary conditions (or mpp links) 
     83 
    8284   IMPLICIT NONE 
    8385   PRIVATE 
     
    118120      INTEGER, INTENT(in) ::   ksbc    ! flux formulation (user defined, bulk, or Pure Coupled) 
    119121      ! 
    120       INTEGER ::   jl   ! dummy loop index 
     122      INTEGER  :: ji, jj, jk, jl, jn, gi, gj   ! dummy loop indices 
     123      REAL(wp) :: delta_lon, delta_lat, lon_west, lon_east, lat_south, lat_north, lon_print, lat_print 
    121124      !!---------------------------------------------------------------------- 
    122125      ! 
    123126      IF( ln_timing )   CALL timing_start('ice_stp') 
     127 
     128      DO jj = 1, jpj 
     129         DO ji = 1, jpi 
     130 
     131            gi = nimpp + ji - 1 
     132            gj = njmpp + jj - 1 
     133            delta_lon = (glamt(2,jj) - glamt(1,jj))/2.0 
     134            delta_lat = (gphit(ji,2) - gphit(ji,1))/2.0 
     135 
     136            lon_west = glamt(ji,jj) - delta_lon 
     137            lon_east = glamt(ji,jj) + delta_lon 
     138            lat_south = gphit(ji,jj) - delta_lat 
     139            lat_north = gphit(ji,jj) + delta_lat 
     140            to_print_2d(ji,jj) = 0 
     141 
     142            lon_print = 95.0 
     143            lat_print = -63.0  ! For bottom melt investigation 
     144 
     145            IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     146              to_print_2d(ji,jj) = 1 
     147              write(numout,*)'icethd: location to print: ji, jj, gi,gj, to_print_2d(ji,jj) = ', ji, jj, gi,gj, to_print_2d(ji,jj) 
     148            ENDIF 
     149 
     150            lon_print = 10.0 
     151            lat_print = -62.0   ! For top melt investigation 
     152 
     153            IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     154              to_print_2d(ji,jj) = 2 
     155              write(numout,*)'icethd: location to print: ji, jj, gi,gj, to_print_2d(ji,jj) = ', ji, jj, gi,gj, to_print_2d(ji,jj) 
     156            ENDIF 
     157 
     158            lon_print = 137.81 
     159            lat_print = -66   ! For conductivity investigation 
     160 
     161            IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     162              to_print_2d(ji,jj) = 3 
     163              write(numout,*)'icethd: location to print: ji, jj, gi,gj, to_print_2d(ji,jj) = ', ji, jj, gi,gj, to_print_2d(ji,jj) 
     164            ENDIF 
     165 
     166            lon_print = 137.81 - 360.0 
     167 
     168            IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     169              to_print_2d(ji,jj) = 3 
     170              write(numout,*)'icethd: location to print: ji, jj, gi,gj, to_print_2d(ji,jj) = ', ji, jj, gi,gj, to_print_2d(ji,jj) 
     171            ENDIF 
     172 
     173            lon_print = 8 
     174            lat_print = -67   ! For top melt investigation 
     175 
     176            IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     177              to_print_2d(ji,jj) = 10 
     178              write(numout,*)'icethd: location to print: ji, jj, gi,gj, to_print_2d(ji,jj) = ', ji, jj, gi,gj, to_print_2d(ji,jj) 
     179            ENDIF 
     180          END DO 
     181        END DO 
     182 
    124183      ! 
    125184      !                                      !-----------------------! 
     
    128187         ! 
    129188         kt_ice = kt                              ! -- Ice model time step 
     189 
     190         write(numout,*)'icestp 0: e_s = ',e_s (42,26,1,1) 
    130191         ! 
    131192         u_oce(:,:) = ssu_m(:,:)                  ! -- mean surface ocean current 
     
    152213         !    utau_ice, vtau_ice = surface ice stress [N/m2] 
    153214         !------------------------------------------------! 
    154                                         CALL ice_sbc_tau( kt, ksbc, utau_ice, vtau_ice )           
     215                                        CALL ice_sbc_tau( kt, ksbc, utau_ice, vtau_ice )       
     216 
     217         write(numout,*)'icestp 1: e_s = ',e_s (42,26,1,1) 
     218     
    155219         !-------------------------------------! 
    156220         ! --- ice dynamics and advection  --- ! 
     
    161225         IF( ln_icedyn .AND. .NOT.lk_c1d )   & 
    162226            &                           CALL ice_dyn( kt )            ! -- Ice dynamics 
     227 
     228         write(numout,*)'icestp 2: e_s = ',e_s (42,26,1,1) 
    163229         ! 
    164230         !                          !==  lateral boundary conditions  ==! 
    165231         IF( ln_icethd .AND. ln_bdy )   CALL bdy_ice( kt )            ! -- bdy ice thermo 
     232 
     233         write(numout,*)'icestp 3: e_s = ',e_s (42,26,1,1) 
    166234         ! 
    167235         !                          !==  previous lead fraction and ice volume for flux calculations 
    168236                                        CALL ice_var_glo2eqv          ! h_i and h_s for ice albedo calculation 
     237 
     238         write(numout,*)'icestp 4: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
     239 
    169240                                        CALL ice_var_agg(1)           ! at_i for coupling  
     241 
     242         write(numout,*)'icestp 5: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
     243 
    170244                                        CALL store_fields             ! Store now ice values 
     245 
     246         write(numout,*)'icestp 6: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    171247         ! 
    172248         !------------------------------------------------------! 
     
    184260         !------------------------------------------------------! 
    185261                                        CALL ice_sbc_flx( kt, ksbc ) 
     262         write(numout,*)'icestp 7: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    186263         !----------------------------! 
    187264         ! --- ice thermodynamics --- ! 
    188265         !----------------------------! 
    189          IF( ln_icethd )                CALL ice_thd( kt )            ! -- Ice thermodynamics       
     266         IF( ln_icethd )                CALL ice_thd( kt )            ! -- Ice thermodynamics    
     267         write(numout,*)'icestp 8: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1)    
    190268         ! 
    191269                                        CALL ice_cor( kt , 2 )        ! -- Corrections 
     270         write(numout,*)'icestp 9: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    192271         ! 
    193272                                        CALL ice_var_glo2eqv          ! necessary calls (at least for coupling) 
     273         write(numout,*)'icestp 10: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    194274                                        CALL ice_var_agg( 2 )         ! necessary calls (at least for coupling) 
     275         write(numout,*)'icestp 11: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    195276         ! 
    196277                                        CALL ice_update_flx( kt )     ! -- Update ocean surface mass, heat and salt fluxes 
     278         write(numout,*)'icestp 12: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    197279         ! 
    198280         IF( ln_icediahsb )             CALL ice_dia( kt )            ! -- Diagnostics outputs  
     
    203285         ! 
    204286         IF( ln_icectl )                CALL ice_ctl( kt )            ! -- alerts in case of model crash 
     287         write(numout,*)'icestp 13: t_s, e_s = ',t_s(ji,jj,jk,jl) - rt0, ' ', e_s (42,26,1,1) 
    205288         ! 
    206289      ENDIF   ! End sea-ice time step only 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icethd.F90

    r11081 r12369  
    8585      INTEGER, INTENT(in) :: kt    ! number of iteration 
    8686      ! 
    87       INTEGER  :: ji, jj, jk, jl   ! dummy loop indices 
     87      INTEGER  :: ji, jj, jk, jl, jn, gi, gj   ! dummy loop indices 
    8888      REAL(wp) :: zfric_u, zqld, zqfr, zqfr_neg 
    8989      REAL(wp), PARAMETER :: zfric_umin = 0._wp           ! lower bound for the friction velocity (cice value=5.e-04) 
    9090      REAL(wp), PARAMETER :: zch        = 0.0057_wp       ! heat transfer coefficient 
    9191      REAL(wp), DIMENSION(jpi,jpj) ::   zu_io, zv_io, zfric   ! ice-ocean velocity (m/s) and frictional velocity (m2/s2) 
     92 
     93      REAL(wp) :: delta_lon, delta_lat, lon_west, lon_east, lat_south, lat_north, lon_print, lat_print 
    9294      ! 
    9395      !!------------------------------------------------------------------- 
     
    152154            qsb_ice_bot(ji,jj) = rswitch * rau0 * rcp * zch * zfric_u * ( ( sst_m(ji,jj) + rt0 ) - t_bo(ji,jj) ) ! W.m-2 
    153155 
     156            If (to_print_2d(ji,jj) == 1) THEN 
     157              write(numout,*) 'icethd: qsb_ice_bot(ji,jj), rswitch, rau0, rcp = ',qsb_ice_bot(ji,jj), rswitch, rau0, rcp 
     158              write(numout,*) 'icethd: zch, zfric_u, sst_m(ji,jj), t_bo(ji,jj) = ',zch, zfric_u, sst_m(ji,jj), t_bo(ji,jj) 
     159            ENDIF 
     160 
    154161            qsb_ice_bot(ji,jj) = rswitch * MIN( qsb_ice_bot(ji,jj), - zqfr_neg * r1_rdtice / MAX( at_i(ji,jj), epsi10 ) ) 
    155162            ! upper bound for qsb_ice_bot: the heat retrieved from the ocean must be smaller than the heat necessary to reach  
    156163            !                              the freezing point, so that we do not have SST < T_freeze 
    157164            !                              This implies: - ( qsb_ice_bot(ji,jj) * at_i(ji,jj) * rtdice ) - zqfr >= 0 
     165 
     166            If (to_print_2d(ji,jj) == 1) THEN 
     167              write(numout,*) 'icethd: qsb_ice_bot(ji,jj) after adjust = ',qsb_ice_bot(ji,jj) 
     168            ENDIF 
    158169 
    159170            !-- Energy Budget of the leads (J.m-2), source of ice growth in open water. Must be < 0 to form ice 
     
    168179               fhld (ji,jj) = 0._wp 
    169180            ENDIF 
     181 
     182            If (to_print_2d(ji,jj) == 1) THEN 
     183              write(numout,*) 'icethd: fhld(ji,jj), rswitch, zqld, at_i(ji,jj) = ', fhld(ji,jj), rswitch, zqld, at_i(ji,jj) 
     184              write(numout,*) 'icethd: qsr_oce(ji,jj), frq_m(ji,jj), qns_oce(ji,jj), qemp_oce(ji,jj) = ',qsr_oce(ji,jj), frq_m(ji,jj), qns_oce(ji,jj), ' ', qemp_oce(ji,jj) 
     185              write(numout,*) 'icethd: at_i_b(ji,jj), 1-at_i_b(ji,jj) = ',at_i_b(ji,jj), 1-at_i_b(ji,jj) 
     186            ENDIF 
     187 
    170188            ! 
    171189            ! Net heat flux on top of the ice-ocean [W.m-2] 
     
    197215      ! Thermodynamic computation (only on grid points covered by ice) => loop over ice categories 
    198216      !-------------------------------------------------------------------------------------------! 
     217 
     218      write(numout,*)'icethd: sz_i(3,4,1,1) = ',sz_i(3,4,1,1) 
     219      write(numout,*)'icethd: t_i(3,4,1,1) = ',t_i(3,4,1,1) 
     220 
    199221      DO jl = 1, jpl 
     222 
     223         cat = jl 
    200224 
    201225         ! select ice covered grid points 
     
    215239            !                                                       ! --- & Change units of e_i, e_s from J/m2 to J/m3 --- ! 
    216240            ! 
     241 
     242            DO jn = 1, npti 
     243              ji        = MOD( nptidx(jn) - 1 , jpi ) + 1 
     244              jj        =    ( nptidx(jn) - 1 ) / jpi + 1 
     245               
     246              !IF ( jl == 1 ) THEN 
     247                to_print(jn) = to_print_2d(ji,jj) 
     248              !ELSE 
     249              !  to_print(jn) = 0 
     250              !END IF 
     251 
     252              !gi = nimpp + ji - 1 
     253              !gj = njmpp + jj - 1 
     254              !to_print(jn) = 0 
     255 
     256              !delta_lon = (glamt(2,jj) - glamt(1,jj))/2.0 
     257              !delta_lat = (gphit(ji,2) - gphit(ji,1))/2.0 
     258 
     259              !lon_west = glamt(ji,jj) - delta_lon 
     260              !lon_east = glamt(ji,jj) + delta_lon 
     261              !lat_south = gphit(ji,jj) - delta_lat 
     262              !lat_north = gphit(ji,jj) + delta_lat 
     263              !lon_print = 95.0 
     264              !lat_print = -63.0 
     265 
     266              !IF ( lon_west <= lon_print .AND. lon_print <= lon_east .AND. lat_south <= lat_print .AND. lat_print <= lat_north ) THEN 
     267              !  to_print(jn) = 1 
     268              !  write(numout,*)'icethd: jn, ji, jj, gi,gj = ', jn, ji, jj, gi,gj 
     269              !ENDIF 
     270               
     271            END DO 
     272 
    217273            s_i_new   (1:npti) = 0._wp ; dh_s_tot(1:npti) = 0._wp  ! --- some init --- !  (important to have them here)  
    218274            dh_i_sum  (1:npti) = 0._wp ; dh_i_bom(1:npti) = 0._wp ; dh_i_itm  (1:npti) = 0._wp  
     
    230286            ! 
    231287                              CALL ice_thd_temp                     ! --- Temperature update --- ! 
     288 
     289             
     290 
     291 
    232292            ! 
    233293            IF( ln_icedH .AND. ln_virtual_itd ) & 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icethd_da.F90

    r10888 r12369  
    145145            ! Contribution to mass flux 
    146146            wfx_lam_1d(ji) =  wfx_lam_1d(ji) + zda * r1_rdtice * ( rhoi * h_i_1d(ji) + rhos * h_s_1d(ji) ) 
     147 
     148            IF (to_print(ji) == 1) THEN 
     149              write(numout,*)'icethd_da: sst_1d(ji) = ',sst_1d(ji) 
     150            ENDIF 
     151 
     152            IF (to_print(ji) == 1) THEN 
     153              write(numout,*)'icethd_da: lateral melt: a_i_1d(ji), at_i_1d(ji), sst_1d(ji), t_bo_1d(ji) = ',a_i_1d(ji), at_i_1d(ji), sst_1d(ji), t_bo_1d(ji) 
     154              write(numout,*)'icethd_da: lateral melt: wfx_lam_1d(ji), zda, r1_rdtice, rhoi =', wfx_lam_1d(ji), zda, r1_rdtice, rhoi 
     155              write(numout,*)'icethd_da: lateral melt: h_i_1d(ji), rhos, h_s_1d(ji) = ',h_i_1d(ji), rhos, h_s_1d(ji) 
     156              write(numout,*)'icethd_da: lateral melt: zdfloe, zperi, zwlat, zda_tot(ji) = ',zdfloe, zperi, zwlat, zda_tot(ji) 
     157            ENDIF 
    147158             
    148159            ! new concentration 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icethd_dh.F90

    r10888 r12369  
    131131         DO ji = 1, npti 
    132132            zq_top(ji)     = MAX( 0._wp, qml_ice_1d(ji) * rdt_ice ) 
     133 
     134            IF ( to_print(ji) == 10 ) THEN 
     135               write(numout,*)'loading flux: zq_top(ji), qml_ice_1d(ji) = ',zq_top(ji), ' ', qml_ice_1d(ji) 
     136            ENDIF 
    133137         END DO 
    134138         ! 
     
    139143            qml_ice_1d(ji) = zdum * MAX( 0._wp , SIGN( 1._wp, t_su_1d(ji) - rt0 ) ) 
    140144            zq_top(ji)     = MAX( 0._wp, qml_ice_1d(ji) * rdt_ice ) 
     145 
     146            IF ( to_print(ji) == 10 ) THEN 
     147               write(numout,*)'icethd_dh: qns_ice_1d(ji), qsr_ice_1d(ji), qtr_ice_top_1d(ji), qcn_ice_top_1d(ji) = ',qns_ice_1d(ji), ' ', qsr_ice_1d(ji), ' ', qtr_ice_top_1d(ji), ' ', qcn_ice_top_1d(ji) 
     148               write(numout,*)'icethd_dh: zdum, t_su_1d(ji), qml_ice_1d(ji), zq_top(ji) = ',zdum, ' ', t_su_1d(ji), qml_ice_1d(ji), zq_top(ji) 
     149            ENDIF 
     150 
    141151         END DO 
    142152         ! 
     
    146156         zf_tt(ji)         = qcn_ice_bot_1d(ji) + qsb_ice_bot_1d(ji) + fhld_1d(ji)  
    147157         zq_bot(ji)        = MAX( 0._wp, zf_tt(ji) * rdt_ice ) 
     158         IF ( to_print(ji) == 1 ) THEN 
     159            write(numout,*)'icethd_dh: qcn_ice_bot_1d(ji), qsb_ice_bot_1d(ji) = ',qcn_ice_bot_1d(ji), qsb_ice_bot_1d(ji) 
     160            write(numout,*)'icethd_dh: fhld_1d(ji), zq_bot(ji) = ',fhld_1d(ji), ', ', zq_bot(ji) 
     161         ENDIF 
    148162      END DO 
    149163 
     
    181195               t_s_1d  (ji,jk) = rt0 
    182196            END IF 
    183          END DO 
    184       END DO          
     197 
     198           IF (to_print(ji) == 10) THEN 
     199                write(numout,*)'icethd_dh 8: t_s_1d(ji,jk), e_s_1d(ji,jk) = ',t_s_1d(ji,jk), ' ', e_s_1d(ji,jk) 
     200            END IF 
     201         END DO 
     202      END DO  
     203 
     204      DO ji = 1, npti 
     205         IF (to_print(ji) == 10) THEN 
     206            write(numout,*)'icethd_dh internal_melting: wfx_snw_sum_1d(ji) = ',wfx_snw_sum_1d(ji) 
     207         END IF 
     208      END DO         
    185209 
    186210      ! Snow precipitation 
     
    210234            zq_top   (ji) = MAX( 0._wp , zq_top (ji) + zdeltah(ji,1) * zqprec(ji) )       
    211235            zdh_s_pre(ji) = zdh_s_pre(ji) + zdeltah(ji,1) 
     236 
     237            IF ( to_print(ji) == 10 ) THEN 
     238               write(numout,*)'after precip: zq_top(ji), zdeltah(ji,1), zqprec(ji) = ',zq_top(ji), zdeltah(ji,1), zqprec(ji) 
     239            ENDIF 
    212240             
    213241            ! update thickness 
     
    220248            ! 
    221249         ENDIF 
     250 
     251         IF (to_print(ji) == 10) THEN 
     252            write(numout,*)'icethd_dh snow_precip: wfx_snw_sum_1d(ji) = ',wfx_snw_sum_1d(ji) 
     253         END IF 
     254 
    222255      END DO 
    223256 
     
    253286               ! 
    254287            ENDIF 
    255          END DO 
     288 
     289            IF ( to_print(ji) == 10 ) THEN 
     290               write(numout,*)'after snow melt: zq_top(ji), zdeltah(ji,jk), e_s_1d(ji,jk), test = ',zq_top(ji), zdeltah(ji,jk), e_s_1d(ji,jk), ( zh_s(ji,jk) > 0._wp .AND. zq_top(ji) > 0._wp ) 
     291            ENDIF 
     292 
     293            IF (to_print(ji) == 10) THEN 
     294               write(numout,*)'icethd_dh loop: wfx_snw_sum_1d(ji), jk = ',wfx_snw_sum_1d(ji), ' ', jk 
     295            END IF 
     296         END DO 
     297      END DO 
     298 
     299      DO ji = 1, npti 
     300         IF (to_print(ji) == 10) THEN 
     301            write(numout,*)'icethd_dh snow_ground: wfx_snw_sum_1d(ji) = ',wfx_snw_sum_1d(ji) 
     302         END IF 
    256303      END DO 
    257304 
     
    301348              &             ( ( zdh_s_pre(ji)              ) * zqprec(ji) +  & 
    302349              &               ( h_s_1d(ji) - zdh_s_pre(ji) ) * rhos * ( rcpi * ( rt0 - t_s_1d(ji,jk) ) + rLfus ) ) 
     350 
     351            IF (to_print(ji) == 10) THEN 
     352                write(numout,*)'icethd_dh 9: t_s_1d(ji,jk), e_s_1d(ji,jk) = ',t_s_1d(ji,jk), ' ', e_s_1d(ji,jk) 
     353                write(numout,*)'icethd_dh 9: zdh_s_pre(ji), zqprec(ji), h_s_1d(ji) = ',zdh_s_pre(ji), ' ', zqprec(ji), ' ', h_s_1d(ji) 
     354            END IF 
    303355         END DO 
    304356      END DO 
     
    362414                
    363415            END IF 
     416 
     417            IF ( to_print(ji) == 10 ) THEN 
     418               write(numout,*)'after top melt: zq_top(ji), test = ',zq_top(ji), ( t_i_1d(ji,jk) >= (ztmelts+rt0) )  
     419               write(numout,*)'after top melt: wfx_sum_1d(ji), zdeltah(ji,jk), zfmdt, zdE = ', wfx_sum_1d(ji), zdeltah(ji,jk), zfmdt, zdE 
     420            ENDIF 
    364421             
    365422            ! Ice sublimation 
     
    510567                  zdeltah(ji,jk)  = - zfmdt * r1_rhoi                                         ! Gross thickness change 
    511568 
     569                  IF ( to_print(ji) == 1 ) THEN 
     570                    write(numout,*)'icethd_dh: zfmdt, zq_bot(ji), zdE, zdeltah(ji,jk) = ',zfmdt,', ', zq_bot(ji), zdE, zdeltah(ji,jk) 
     571                  ENDIF 
     572 
    512573                  zdeltah(ji,jk)  = MIN( 0._wp , MAX( zdeltah(ji,jk), - zh_i(ji,jk) ) )       ! bound thickness change 
    513574                   
     
    527588                   
    528589                  wfx_bom_1d(ji)  = wfx_bom_1d(ji) - rhoi * a_i_1d(ji) * zdeltah(ji,jk) * r1_rdtice                 ! Mass flux 
     590 
     591                  IF (to_print(ji) == 1) THEN 
     592                     write(numout,*)'icethd_dh: wfx_bom_1d(ji), in meters, at_i_1d(ji) = ',wfx_bom_1d(ji),wfx_bom_1d(ji)*rdt_ice/(rhoi*at_i_1d(ji)), at_i_1d(ji) 
     593                  ENDIF 
    529594 
    530595                  ! update heat content (J.m-2) and layer thickness 
     
    536601         END DO 
    537602      END DO 
     603 
     604       
    538605 
    539606      ! Update temperature, energy 
     
    564631 
    565632         IF( ln_icectl .AND. zq_rema(ji) < 0. .AND. lwp ) WRITE(numout,*) 'ALERTE zq_rema <0 = ', zq_rema(ji) 
     633 
     634         IF (to_print(ji) == 10) THEN 
     635            write(numout,*)'icethd_dh snow_extra: wfx_snw_sum_1d(ji) = ',wfx_snw_sum_1d(ji) 
     636         END IF 
     637 
    566638      END DO 
    567639 
     
    610682         rswitch     = 1._wp - MAX( 0._wp , SIGN( 1._wp , - h_i_1d(ji) ) )  
    611683         t_su_1d(ji) = rswitch * t_su_1d(ji) + ( 1._wp - rswitch ) * rt0 
     684 
     685         IF (to_print(ji) == 10) THEN 
     686            write(numout,*)'icethd_dh: t_su_1d(ji), t_i_1d(ji,1) = ',t_su_1d(ji), ' ', t_i_1d(ji,1) 
     687         END IF 
    612688      END DO 
    613689 
     
    625701            ! recalculate t_s_1d from e_s_1d 
    626702            t_s_1d(ji,jk) = rt0 + rswitch * ( - e_s_1d(ji,jk) * r1_rhos * r1_rcpi + rLfus * r1_rcpi ) 
     703 
     704            IF (to_print(ji) == 10) THEN 
     705                write(numout,*)'icethd_dh 10: t_s_1d(ji,jk), e_s_1d(ji,jk) = ',t_s_1d(ji,jk), ' ', e_s_1d(ji,jk) 
     706            END IF 
    627707         END DO 
    628708      END DO 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icethd_pnd.F90

    r10888 r12369  
    144144 
    145145      DO ji = 1, npti 
     146 
     147         IF (to_print(ji) == 10) THEN 
     148            write(numout,*)'icethd_pnd_start: h_ip_1d(ji), a_ip_frac_1d(ji), a_ip_1d(ji) = ',h_ip_1d(ji), ' ', a_ip_frac_1d(ji), ' ', a_ip_1d(ji) 
     149         END IF 
     150 
    146151         !                                                        !--------------------------------! 
    147152         IF( h_i_1d(ji) < rn_himin) THEN                          ! Case ice thickness < rn_himin  ! 
     
    186191            ! 
    187192         ENDIF 
     193 
     194         IF (to_print(ji) == 10) THEN 
     195            write(numout,*)'icethd_pnd: h_ip_1d(ji), zpnd_aspect, a_ip_frac_1d(ji), a_ip_1d(ji) = ',h_ip_1d(ji), zpnd_aspect, a_ip_frac_1d(ji), a_ip_1d(ji) 
     196            write(numout,*)'icethd_pnd: a_i_1d(ji), v_ip_1d(ji), t_su_1d(ji), zfr_mlt, zdv_mlt = ',a_i_1d(ji), ' ', v_ip_1d(ji), ' ', t_su_1d(ji), ' ', zfr_mlt, ' ', zdv_mlt 
     197            write(numout,*)'icethd_pnd: meltt = ', -( dh_i_sum(ji)*rhoi + dh_s_mlt(ji)*rhos ) / rhoi 
     198         END IF 
     199 
    188200      END DO 
    189201      ! 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icethd_zdf_bl99.F90

    r11081 r12369  
    143143      END DO 
    144144 
     145         DO ji = 1, npti 
     146           IF (to_print(ji) == 10) THEN 
     147             write(numout,*) 'icethd_zdf_bl99 0: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     148           END IF 
     149         END DO 
     150 
    145151      !------------------ 
    146152      ! 1) Initialization 
     
    151157         zh_i(ji) = h_i_1d(ji) * r1_nlay_i 
    152158         zh_s(ji) = h_s_1d(ji) * r1_nlay_s 
     159         IF( to_print(ji) == 10 ) THEN 
     160           write(numout,*)'icethd_zdf_bl99: v_i_1d(ji), a_i_1d(ji), h_i_1d(ji) = ',v_i_1d(ji), ' ', a_i_1d(ji), ' ', h_i_1d(ji) 
     161         END IF 
    153162      END DO 
    154163      ! 
     
    256265         DO ji = 1, npti 
    257266            IF ( .NOT. l_T_converged(ji) ) & 
    258                ztcond_i(ji,:) = MAX( zkimin, ztcond_i_cp(ji,:) )         
    259          END DO 
     267               ztcond_i(ji,:) = MAX( zkimin, ztcond_i_cp(ji,:) )    
     268 
     269            IF (to_print(ji) == 10) THEN 
     270               write(numout,*)'icethd_zdf_bl99: ln_cndi_U64, ln_cndi_P07, rcnd_i = ',ln_cndi_U64, ln_cndi_P07, rcnd_i 
     271               write(numout,*)'icethd_zdf_bl99: sz_i_1d(ji,1), epsi10, t_i_1d(ji,1) = ',sz_i_1d(ji,1), epsi10, t_i_1d(ji,1) 
     272               write(numout,*)'icethd_zdf_bl99: rt0, nlay_i, sz_i_1d(ji,nlay_i), t_bo_1d(ji) = ', rt0, nlay_i, sz_i_1d(ji,nlay_i), t_bo_1d(ji) 
     273               write(numout,*)'icethd_zdf_bl99: sz_i_1d(ji,:) = ',sz_i_1d(ji,:) 
     274               write(numout,*)'icethd_zdf_bl99: t_i_1d(ji,:) = ',t_i_1d(ji,:) 
     275               write(numout,*)'icethd_zdf_bl99: ztcond_i_cp(ji,:) = ',ztcond_i_cp(ji,:) 
     276               write(numout,*)'icethd_zdf_bl99: zkimin = ',zkimin 
     277               write(numout,*)'icethd_zdf_bl99: ztcond_i = ',ztcond_i(ji,:) 
     278            ENDIF 
     279         END DO 
     280 
     281          
     282 
    260283         ! 
    261284         !--- G(he) : enhancement of thermal conductivity in mono-category case 
     
    312335            IF ( .NOT. l_T_converged(ji) ) & 
    313336               zkappa_i(ji,0) = zkappa_s(ji,nlay_s) * isnow(ji) + zkappa_i(ji,0) * ( 1._wp - isnow(ji) ) 
     337             
     338            IF (to_print(ji) == 10) THEN 
     339               write(numout,*) 'icethd_zdf_bl99: zkappa_i(ji,0), ztcond_i(ji,0), z1_h_i(ji), isnow(ji) = ',zkappa_i(ji,0), ' ', ztcond_i(ji,0), ' ', z1_h_i(ji), ' ', isnow(ji) 
     340            END IF 
    314341         END DO 
    315342         ! 
     
    321348               zcpi = rcpi + zgamma * sz_i_1d(ji,jk) / MAX( ( t_i_1d(ji,jk) - rt0 ) * ( ztiold(ji,jk) - rt0 ), epsi10 ) 
    322349               zeta_i(ji,jk) = rdt_ice * r1_rhoi * z1_h_i(ji) / MAX( epsi10, zcpi )  
     350 
     351               IF (to_print(ji) == 10 .AND. jk == 1 .AND. cat == 1) THEN 
     352                  write(numout,*) 'zeta_i(ji,jk), z1_h_i(ji), zcpi = ',zeta_i(ji,jk), ' ', z1_h_i(ji), ' ', zcpi 
     353                  write(numout,*) 'sz_i_1d(ji,jk), t_i_1d(ji,jk), ztiold(ji,jk) = ',sz_i_1d(ji,jk), ' ', t_i_1d(ji,jk), ' ', ztiold(ji,jk) 
     354                  write(numout,*) 'iconv, l_T_converged(ji) = ',iconv, ' ',l_T_converged(ji) 
     355               END IF 
    323356            END DO 
    324357         END DO 
     
    329362            END DO 
    330363         END DO 
     364 
    331365         ! 
    332366         !----------------------------------------! 
     
    355389               zfnet(ji) = qsr_ice_1d(ji) - qtr_ice_top_1d(ji) + qns_ice_1d(ji) ! net heat flux = net - transmitted solar + non solar 
    356390            END DO 
     391 
     392         DO ji = 1, npti 
     393           IF (to_print(ji) == 10) THEN 
     394             write(numout,*) 'icethd_zdf_bl99 16 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     395           END IF 
     396         END DO 
    357397            ! 
    358398            !---------------------------- 
     
    389429                  &              ( zradab_i(ji,nlay_i) + zkappa_i(ji,nlay_i) * zg1 * t_bo_1d(ji) )  
    390430            END DO 
     431 
     432         DO ji = 1, npti 
     433           IF (to_print(ji) == 10) THEN 
     434             write(numout,*) 'icethd_zdf_bl99 17.5 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     435           END IF 
     436         END DO 
    391437 
    392438            DO ji = 1, npti 
     
    496542               ! 
    497543            END DO 
     544 
     545         DO ji = 1, npti 
     546           IF (to_print(ji) == 10) THEN 
     547             write(numout,*) 'tri diagonal matrix terms zetai = ',zeta_i(ji,:) 
     548           END IF 
     549         END DO 
    498550            ! 
    499551            !------------------------------ 
     
    548600                  ENDIF 
    549601               ENDIF 
    550             END DO 
     602 
     603            IF (to_print(ji) == 10 ) THEN 
     604                write(numout,*)'icethd_zdf_bl99 1: t_s_1d(ji,1), e_s_1d(ji,1) = ',t_s_1d(ji,1), ' ', e_s_1d(ji,1) 
     605                write(numout,*)'icethd_zdf_bl99 1: zindtbis(ji,nlay_s+1), ztrid(ji,nlay_s+1,3), t_i_1d(ji,1) = ', zindtbis(ji,nlay_s+1), ' ', ztrid(ji,nlay_s+1,3), ' ', t_i_1d(ji,1) 
     606            END IF 
     607 
     608            END DO 
     609         DO ji = 1, npti 
     610           IF (to_print(ji) == 10) THEN 
     611             write(numout,*) 'icethd_zdf_bl99 18 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     612           END IF 
     613         END DO 
    551614            ! 
    552615            !-------------------------------------------------------------- 
     
    579642            END DO 
    580643 
     644         DO ji = 1, npti 
     645           IF (to_print(ji) == 10) THEN 
     646             write(numout,*) 'icethd_zdf_bl99 19 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     647           END IF 
     648         END DO 
     649 
    581650         !----------------------------------------! 
    582651         !                                        ! 
     
    588657            ! 
    589658            ! ==> we use a modified BL99 solver with conduction flux (qcn_ice) as forcing term 
     659         DO ji = 1, npti 
     660           IF (to_print(ji) == 10) THEN 
     661             write(numout,*) 'icethd_zdf_bl99 7.1 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     662           END IF 
     663         END DO 
    590664            ! 
    591665            !---------------------------- 
     
    622696                  &              ( zradab_i(ji,nlay_i) + zkappa_i(ji,nlay_i) * zg1 * t_bo_1d(ji) )  
    623697            ENDDO 
     698 
     699         DO ji = 1, npti 
     700           IF (to_print(ji) == 10 .AND. iconv == 1) THEN 
     701             jm =  nlay_s + nlay_i + 1 
     702             write(numout,*) 'icethd_zdf_bl99: zindterm(ji,jm), ztiold(ji,nlay_i), zeta_i(ji,nlay_i), zradab_i(ji,nlay_i) = ',zindterm(ji,jm), ' ', ztiold(ji,nlay_i), ' ', zeta_i(ji,nlay_i), ' ', zradab_i(ji,nlay_i) 
     703             write(numout,*) 'icethd_zdf_bl99: zkappa_i(ji,nlay_i), zg1, t_bo_1d(ji) = ',zkappa_i(ji,nlay_i), ' ', zg1, ' ', t_bo_1d(ji) 
     704           END IF 
     705         END DO 
    624706 
    625707            DO ji = 1, npti 
     
    650732                  ztrid   (ji,2,3) =       - zeta_s(ji,1) * zkappa_s(ji,1)  
    651733                  zindterm(ji,2)   = ztsold(ji,1) + zeta_s(ji,1) * ( zradab_s(ji,1) + qcn_ice_1d(ji) )  
     734 
     735                  IF (to_print(ji) == 10) THEN 
     736                     write(numout,*) 'ztrid for snow = ',ztrid   (ji,2,:) 
     737                     write(numout,*) 'zindterm for snow = ',zindterm(ji,2) 
     738                     write(numout,*) 'zindterm using degC = ',zindterm(ji,2) - rt0 
     739                     write(numout,*) 'nlay_s, nlay_i = ',nlay_s, ' ', nlay_i 
     740                  ENDIF 
     741 
    652742                   
    653743                  !                            !---------------------! 
     
    662752                  ztrid   (ji,jm_min(ji),3) =       - zeta_i(ji,1) * zkappa_i(ji,1) 
    663753                  zindterm(ji,jm_min(ji))   = ztiold(ji,1) + zeta_i(ji,1) * ( zradab_i(ji,1) + qcn_ice_1d(ji) ) 
     754 
     755                  IF (to_print(ji) == 10 .AND. iconv == 1) THEN 
     756                     write(numout,*) 'zeta_i(ji,1), zkappa_i(ji,1), ztiold(ji,1), qcn_ice_1d(ji) = ',zeta_i(ji,1), ' ', zkappa_i(ji,1), ' ', ztiold(ji,1), ' ', qcn_ice_1d(ji) 
     757                  ENDIF                   
    664758                   
    665759                  ! case of only one layer in the ice (surface & ice equations are altered) 
     
    725819                  ENDIF 
    726820               ENDIF 
    727             END DO 
     821 
     822              IF (to_print(ji) == 10) THEN 
     823                write(numout,*)'icethd_zdf_bl99 2: t_s_1d(ji,1), e_s_1d(ji,1) = ',t_s_1d(ji,1), ' ', e_s_1d(ji,1) 
     824                write(numout,*)'icethd_zdf_bl99 2: zindtbis(ji,nlay_s+1), ztrid(ji,nlay_s+1,3), t_i_1d(ji,1) = ', zindtbis(ji,nlay_s+1), ' ', ztrid(ji,nlay_s+1,3), ' ', t_i_1d(ji,1) 
     825              END IF 
     826            END DO 
     827         DO ji = 1, npti 
     828           IF (to_print(ji) == 10) THEN 
     829             write(numout,*) 'icethd_zdf_bl99 8 iter: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     830           END IF 
     831         END DO 
    728832            ! 
    729833            !-------------------------------------------------------------- 
     
    755859 
    756860         ENDIF ! k_cnd 
     861 
     862         DO ji = 1, npti 
     863           IF (iconv == 1 .AND. to_print(ji) == 10) THEN 
     864             write(numout,*) 'matrix1 befroe diagonal = ',ztrid(ji,1,1),' ',ztrid(ji,2,1),' ',ztrid(ji,3,1),' ',ztrid(ji,4,1),' ',ztrid(ji,5,1),' ',ztrid(ji,6,1) 
     865             write(numout,*) 'matrix1 on diagonal = ',ztrid(ji,1,2),' ',ztrid(ji,2,2),' ',ztrid(ji,3,2),' ',ztrid(ji,4,2),' ',ztrid(ji,5,2),' ',ztrid(ji,6,2) 
     866             write(numout,*) 'matrix1 after diagonal = ',ztrid(ji,1,3),' ',ztrid(ji,2,3),' ',ztrid(ji,3,3),' ',ztrid(ji,4,3),' ',ztrid(ji,5,3),' ',ztrid(ji,6,3) 
     867             write(numout,*) 'rhs1 for all = ',zindterm(ji,1),' ',zindterm(ji,2),' ',zindterm(ji,3),' ',zindterm(ji,4),' ',zindterm(ji,5),' ',zindterm(ji,6) 
     868             write(numout,*) 'rhs1 using degC = ',zindterm(ji,1)-rt0,' ',zindterm(ji,2)-rt0,' ',zindterm(ji,3)-rt0,' ',zindterm(ji,4)-rt0,' ',zindterm(ji,5)-rt0,' ',zindterm(ji,6)-rt0 
     869           END IF 
     870         END DO 
    757871          
    758872      END DO  ! End of the do while iterative procedure 
     873 
     874      DO ji = 1, npti 
     875        IF (to_print(ji) == 10) THEN 
     876          write(numout,*) 'matrix2 befroe diagonal = ',ztrid(ji,1,1),' ',ztrid(ji,2,1),' ',ztrid(ji,3,1),' ',ztrid(ji,4,1),' ',ztrid(ji,5,1),' ',ztrid(ji,6,1) 
     877          write(numout,*) 'matrix2 on diagonal = ',ztrid(ji,1,2),' ',ztrid(ji,2,2),' ',ztrid(ji,3,2),' ',ztrid(ji,4,2),' ',ztrid(ji,5,2),' ',ztrid(ji,6,2) 
     878          write(numout,*) 'matrix2 after diagonal = ',ztrid(ji,1,3),' ',ztrid(ji,2,3),' ',ztrid(ji,3,3),' ',ztrid(ji,4,3),' ',ztrid(ji,5,3),' ',ztrid(ji,6,3) 
     879          write(numout,*) 'rhs2 for all = ',zindterm(ji,1),' ',zindterm(ji,2),' ',zindterm(ji,3),' ',zindterm(ji,4),' ',zindterm(ji,5),' ',zindterm(ji,6) 
     880          write(numout,*) 'rhs2 using degC = ',zindterm(ji,1)-rt0,' ',zindterm(ji,2)-rt0,' ',zindterm(ji,3)-rt0,' ',zindterm(ji,4)-rt0,' ',zindterm(ji,5)-rt0,' ',zindterm(ji,6)-rt0 
     881          write(numout,*) 'number of iterations iconv = ',iconv 
     882        END IF 
     883      END DO 
     884 
    759885       
    760886      IF( ln_icectl .AND. lwp ) THEN 
     
    799925      ! 
    800926      IF( k_cnd == np_cnd_OFF .OR. k_cnd == np_cnd_ON ) THEN 
     927 
     928         DO ji = 1, npti 
     929           IF (to_print(ji) == 10) THEN 
     930             write(numout,*) 'before ice_var_enthalpy: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     931           END IF 
     932         END DO 
    801933          
    802          CALL ice_var_enthalpy        
     934         CALL ice_var_enthalpy     
     935 
     936         DO ji = 1, npti 
     937           IF (to_print(ji) == 10) THEN 
     938             write(numout,*) 'after ice_var_enthalpy: t_i_1d(ji,1), e_i_1d(ji,1) = ',t_i_1d(ji,1), ' ', e_i_1d(ji,1) 
     939           END IF 
     940         END DO    
    803941          
    804942         ! zhfx_err = correction on the diagnosed heat flux due to non-convergence of the algorithm used to solve heat equation 
     
    829967            ! hfx_dif = Heat flux diagnostic of sensible heat used to warm/cool ice in W.m-2    
    830968            hfx_dif_1d(ji) = hfx_dif_1d(ji) - zdq * r1_rdtice * a_i_1d(ji) 
     969 
     970            IF (to_print(ji) == 10) THEN 
     971               write(numout,*)'icethd_zdf_bl99: qcn_ice_top_1d(ji) = ',qcn_ice_top_1d(ji) 
     972               write(numout,*)'icethd_zdf_bl99: qcn_ice_1d(ji) = ',qcn_ice_1d(ji) 
     973               write(numout,*)'icethd_zdf_bl99: hfx_err_dif_1d(ji) = ', hfx_err_dif_1d(ji) 
     974               write(numout,*)'icethd_zdf_bl99: hfx_dif_1d(ji) = ',hfx_dif_1d(ji) 
     975            ENDIF 
     976 
    831977            ! 
    832978         END DO 
     
    849995         ENDIF 
    850996         t1_ice_1d(ji) = isnow(ji) * t_s_1d(ji,1) + ( 1._wp - isnow(ji) ) * t_i_1d(ji,1) 
     997 
     998         IF (to_print(ji) == 10) THEN 
     999            write(numout,*)'icethd_zdf_bl99: cnd_ice_1d(ji), h_s_1d(ji), zkappa_s(ji,0) = ',cnd_ice_1d(ji), ' ', h_s_1d(ji), ' ', zkappa_s(ji,0) 
     1000            write(numout,*)'icethd_zdf_bl99: ztcond_i(ji,0), h_i_1d(ji), zkappa_i(ji,0) = ',ztcond_i(ji,0), ' ', h_i_1d(ji), ' ', zkappa_i(ji,0) 
     1001            write(numout,*)'icethd_zdf_bl99: t1_ice_1d(ji), isnow(ji), t_s_1d(ji,1), t_i_1d(ji,1) = ',t1_ice_1d(ji), ' ', isnow(ji), ' ', t_s_1d(ji,1), ' ', t_i_1d(ji,1) 
     1002         ENDIF 
    8511003      END DO 
    8521004      ! 
  • NEMO/branches/UKMO/NEMO_4.0_add_pond_lids_prints/src/ICE/icevar.F90

    r11081 r12369  
    219219         END WHERE 
    220220      ENDIF 
     221 
     222      write(numout,*) 'icevar: sv_i(3,4,1) = ', sv_i(3,4,1) 
     223      write(numout,*) 'icevar: z1_v_i(3,4,1) = ', z1_v_i(3,4,1) 
     224 
    221225      CALL ice_var_salprof   ! salinity profile 
    222226 
     
    241245                     t_i(ji,jj,jk,jl) = rt0 
    242246                  ENDIF 
     247 
     248                  If (to_print_2d(ji,jj) == 10 .AND. jk == 1 .AND. jl == 1) THEN 
     249                     write(numout,*)'ice_var_glo2eqv 0: t_i, e_i = ',t_i(ji,jj,jk,jl) - rt0, ' ', e_i (ji,jj,jk,jl) 
     250                  END IF 
     251 
    243252               END DO 
    244253            END DO 
     
    257266            t_s(:,:,jk,:) = rt0 
    258267         END WHERE 
     268 
     269         If (to_print_2d(ji,jj) == 10 .AND. jk == 1 .AND. jl == 1) THEN 
     270             write(numout,*)'ice_var_glo2eqv 0: t_s, e_s = ',t_s(ji,jj,jk,jl), ' ', e_s (ji,jj,jk,jl) 
     271         END IF 
    259272      END DO 
    260273      ! 
     
    327340            END DO 
    328341         END DO 
     342 
    329343         !                                      ! Slope of the linear profile  
    330344         WHERE( h_i(:,:,:) > epsi20 )   ;   z_slope_s(:,:,:) = 2._wp * s_i(:,:,:) / h_i(:,:,:) 
     
    342356            END DO 
    343357         END DO 
     358          
    344359         ! 
    345360         ! Computation of the profile 
     
    352367                     zs  = zalpha(ji,jj,jl) * zs0 + ( 1._wp - zalpha(ji,jj,jl) ) * s_i(ji,jj,jl)     ! weighting the profile 
    353368                     sz_i(ji,jj,jk,jl) = MIN( rn_simax, MAX( zs, rn_simin ) ) 
     369 
     370                     IF ( jl == 1 .AND. jj == 26 .AND. ji == 42 ) THEN 
     371                       write(numout,*) 'icevar: jk, sz_i(ji,jj,jk,jl), s_i(ji,jj,jl), weights(jk) = ',jk, ' ',sz_i(ji,jj,jk,jl), ' ',s_i(ji,jj,jl), ' ',weights(jk) 
     372                     ENDIF 
    354373                  END DO 
    355374               END DO 
     
    497516                  e_s(ji,jj,jk,jl) = e_s(ji,jj,jk,jl) * zswitch(ji,jj) 
    498517                  t_s(ji,jj,jk,jl) = t_s(ji,jj,jk,jl) * zswitch(ji,jj) + rt0 * ( 1._wp - zswitch(ji,jj) ) 
     518 
     519                  If (to_print_2d(ji,jj) == 10 .AND. jk == 1 .AND. jl == 1) THEN 
     520                    write(numout,*)'ice_var_glo2eqv 1: t_s, e_s = ',t_s(ji,jj,jk,jl), ' ', e_s (ji,jj,jk,jl) 
     521                  END IF 
    499522               END DO 
    500523            END DO 
Note: See TracChangeset for help on using the changeset viewer.