Ignore:
Timestamp:
2017-11-20T17:29:37+01:00 (3 years ago)
Author:
jcastill
Message:

Changes to the branch to make it merge with branch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/UKMO/r6232_HZG_WAVE-coupling
WARNING: This branch will probably not compile on its own - changes in the original branch will have to be copied here

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/AMM15_v3_6_STABLE_package_UKEP/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90

    r8416 r8757  
    2929   PUBLIC sbc_flx       ! routine called by step.F90 
    3030 
    31    INTEGER , PARAMETER ::   jpfld   = 6   ! maximum number of files to read  
    32    INTEGER , PARAMETER ::   jp_utau = 1   ! index of wind stress (i-component) file 
    33    INTEGER , PARAMETER ::   jp_vtau = 2   ! index of wind stress (j-component) file 
    34    INTEGER , PARAMETER ::   jp_qtot = 3   ! index of total (non solar+solar) heat file 
    35    INTEGER , PARAMETER ::   jp_qsr  = 4   ! index of solar heat file 
    36    INTEGER , PARAMETER ::   jp_emp  = 5   ! index of evaporation-precipation file 
    37    INTEGER , PARAMETER ::   jp_press = 6  ! index of pressure for UKMO shelf fluxes 
     31   INTEGER             ::   jpfld   = 6   ! maximum number of files to read  
     32   INTEGER             ::   jp_utau       ! index of wind stress (i-component) file 
     33   INTEGER             ::   jp_vtau       ! index of wind stress (j-component) file 
     34   INTEGER             ::   jp_qtot       ! index of total (non solar+solar) heat file 
     35   INTEGER             ::   jp_qsr        ! index of solar heat file 
     36   INTEGER             ::   jp_emp        ! index of evaporation-precipation file 
     37   INTEGER             ::   jp_press      ! index of pressure for UKMO shelf fluxes 
    3838   TYPE(FLD), ALLOCATABLE, DIMENSION(:) ::   sf    ! structure of input fields (file informations, fields read) 
    3939   LOGICAL , PUBLIC    ::   ln_shelf_flx = .FALSE. ! UKMO SHELF specific flux flag 
     
    104104      !!--------------------------------------------------------------------- 
    105105      ! 
     106      ln_readtau = .NOT. (ln_wave .AND. ln_tauw ) 
     107 
     108      ! prepare the index of the fields that have to be read 
     109      jpfld = 0 
     110      IF( ln_readtau ) THEN 
     111         jp_utau = jpfld+1 
     112         jp_vtau = jpfld+2 
     113         jpfld = jpfld+2 
     114      ELSE 
     115         jp_utau = 0   ;  jp_vtau = 0 
     116      ENDIF 
     117      jp_qtot = jpfld+1 
     118      jp_qsr = jpfld+2 
     119      jp_emp = jpfld+3 
     120      jp_press = jpfld+4 
     121      jpfld = jpfld+4 
     122 
    106123      IF( kt == nit000 ) THEN                ! First call kt=nit000   
    107124         ! set file information 
     
    153170 
    154171         !!UKMO SHELF wind speed relative to surface currents - put here to allow merging with coupling branch 
    155          IF( ln_shelf_flx ) THEN 
     172         IF( ln_shelf_flx .AND. ln_readtau ) THEN 
    156173            CALL wrk_alloc( jpi,jpj, zwnd_i, zwnd_j ) 
    157174 
     
    192209                      pressnow(ji,jj) = sf(jp_press)%fnow(ji,jj,1) 
    193210                      !! UKMO SHELF flux files contain wind speed not wind stress 
     211                      IF( ln_readtau) THEN 
    194212                      totwindspd = sqrt(zwnd_i(ji,jj)*zwnd_i(ji,jj) + zwnd_j(ji,jj)*zwnd_j(ji,jj)) 
    195213                      cs = 0.63 + (0.066 * totwindspd) 
    196214                      utau(ji,jj) = cs * (rhoa/rau0) * zwnd_i(ji,jj) * totwindspd 
    197215                      vtau(ji,jj) = cs * (rhoa/rau0) * zwnd_j(ji,jj) * totwindspd 
     216                      ENDIF 
    198217                   ELSE 
     218                      IF( ln_readtau ) THEN 
    199219                      utau(ji,jj) = sf(jp_utau)%fnow(ji,jj,1) 
    200220                      vtau(ji,jj) = sf(jp_vtau)%fnow(ji,jj,1) 
     221                      ENDIF 
    201222                   ENDIF 
    202223                   qsr (ji,jj) = sf(jp_qsr )%fnow(ji,jj,1) 
     
    252273         ENDIF 
    253274         ! 
    254          IF( ln_shelf_flx ) THEN 
     275         IF( ln_shelf_flx .AND. ln_readtau ) THEN 
    255276            CALL wrk_dealloc( jpi,jpj, zwnd_i, zwnd_j ) 
    256277         ENDIF 
Note: See TracChangeset for help on using the changeset viewer.