New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 5236 for branches/2015/dev_r5204_CNRS_PISCES_dcy/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90 – NEMO

Ignore:
Timestamp:
2015-04-24T14:08:11+02:00 (9 years ago)
Author:
cetlod
Message:

NEMOGCM_dev_r5204_CNRS_PISCES_dcy : update routines according to the new strategy, see ticket #1484

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5204_CNRS_PISCES_dcy/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r5225 r5236  
    135135 
    136136   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   albedo_oce_mix     ! ocean albedo sent to atmosphere (mix clear/overcast sky) 
    137  
    138    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:)   :: qsr_tot_tmp     ! arrays containing consecutives qsr in a day 
    139    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:,:) :: qsr_ice_tmp     !  ===                        ===  
    140137 
    141138   INTEGER , ALLOCATABLE, SAVE, DIMENSION(    :) ::   nrcvinfo           ! OASIS info argument 
     
    586583      ENDIF 
    587584      ! 
    588       n_cpl_qsr = INT( 86400 / ( cpl_freq( 'O_QsrOce' ) + cpl_freq( 'O_QsrMix' ) + cpl_freq( 'S_QsrOce' ) + cpl_freq( 'S_QsrMix' ) ) ) 
    589       ! 
    590       IF( ln_dm2dc .AND. n_cpl_qsr /= 1 )   & 
     585      ncpl_qsr_freq = INT( 86400 / ( cpl_freq( 'O_QsrOce' ) + cpl_freq( 'O_QsrMix' ) + cpl_freq( 'S_QsrOce' ) + cpl_freq( 'S_QsrMix' ) ) ) 
     586      ! 
     587      IF( ln_dm2dc .AND. ncpl_qsr_freq /= 1 )   & 
    591588         &   CALL ctl_stop( 'sbc_cpl_init: diurnal cycle reconstruction (ln_dm2dc) needs daily couping for solar radiation' ) 
    592589 
     
    12901287      ENDIF 
    12911288      ! 
    1292       IF( l_trcdm2dc )  CALL sbc_cpl_qsr_mean( it )    ! computation of daily mean qsr for biogeochemical model if needed 
    1293  
    1294       !                                                      ! ========================= ! 
    12951289      SELECT CASE( TRIM( sn_rcv_dqnsdt%cldes ) )             !          d(qns)/dt        ! 
    12961290      !                                                      ! ========================= ! 
     
    13271321   END SUBROUTINE sbc_cpl_ice_flx 
    13281322 
    1329    SUBROUTINE sbc_cpl_qsr_mean( kt ) 
    1330       !!---------------------------------------------------------------------- 
    1331       !!             ***  ROUTINE sbc_cpl_mean  *** 
    1332       !! 
    1333       !! ** Purpose :   Compute daily mean qsr for biogeochmeical model in case of diurnal cycle 
    1334       !! 
    1335       !!---------------------------------------------------------------------- 
    1336       INTEGER, INTENT(in) ::   kt 
    1337       INTEGER  :: jn 
    1338  
    1339       IF( kt == nit000 ) THEN 
    1340          ALLOCATE( qsr_tot_tmp(jpi,jpj,n_cpl_qsr), qsr_ice_tmp(jpi,jpj,jpl,n_cpl_qsr) )  
    1341          DO jn = 1, n_cpl_qsr 
    1342             qsr_tot_tmp(:,:  ,jn) = qsr_tot(:,:  ) 
    1343             qsr_ice_tmp(:,:,:,jn) = qsr_ice(:,:,:) 
    1344          ENDDO 
    1345          qsr_mean    (:,:  ) = qsr_tot(:,:  )  
    1346          qsr_ice_mean(:,:,:) = qsr_ice(:,:,:) 
    1347       ENDIF 
    1348       ! 
    1349       IF( kt /= nit000 .AND.  nrcvinfo(jpr_qsroce) == OASIS_Rcv ) THEN !  => need to be done only when we receive the field 
    1350          DO jn = 1, n_cpl_qsr - 1 
    1351             qsr_tot_tmp(:,:  ,jn) = qsr_tot_tmp(:,:  ,jn+1) 
    1352             qsr_ice_tmp(:,:,:,jn) = qsr_ice_tmp(:,:,:,jn+1) 
    1353          ENDDO 
    1354          qsr_tot_tmp(:,:  ,n_cpl_qsr ) = qsr_tot(:,:  ) 
    1355          qsr_ice_tmp(:,:,:,n_cpl_qsr ) = qsr_ice(:,:,:) 
    1356          ! 
    1357          qsr_mean    (:,:  ) = SUM( qsr_tot_tmp(:,:,:  ), 3 ) / n_cpl_qsr  
    1358          qsr_ice_mean(:,:,:) = SUM( qsr_ice_tmp(:,:,:,:), 4 ) / n_cpl_qsr  
    1359          ! 
    1360       ENDIF 
    1361       ! 
    1362    END SUBROUTINE sbc_cpl_qsr_mean 
    1363     
    1364     
     1323 
    13651324   SUBROUTINE sbc_cpl_snd( kt ) 
    13661325      !!---------------------------------------------------------------------- 
Note: See TracChangeset for help on using the changeset viewer.