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 14648 – NEMO

Changeset 14648


Ignore:
Timestamp:
2021-03-26T18:02:29+01:00 (3 years ago)
Author:
sparonuz
Message:

Fix for compiling merged branch with key single activated

Location:
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/DYN/dynatf_qco.F90

    r14644 r14648  
    270270      ENDIF 
    271271      ! 
    272       IF(sn_cfctl%l_prtctl)   CALL prt_ctl( tab3d_1=puu(:,:,:,Kaa), clinfo1=' nxt  - puu(:,:,:,Kaa): ', mask1=umask,   & 
    273          &                                  tab3d_2=pvv(:,:,:,Kaa), clinfo2=' pvv(:,:,:,Kaa): '       , mask2=vmask ) 
     272      IF(sn_cfctl%l_prtctl)   CALL prt_ctl( tab3d_1=CASTWP(puu(:,:,:,Kaa)), clinfo1=' nxt  - puu(:,:,:,Kaa): ', mask1=umask,   & 
     273         &                                  tab3d_2=CASTWP(pvv(:,:,:,Kaa)), clinfo2=' pvv(:,:,:,Kaa): '       , mask2=vmask ) 
    274274      ! 
    275275      IF( ln_dynspg_ts )   DEALLOCATE( zue, zve ) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/DYN/dynspg_ts.F90

    r14644 r14648  
    266266         zhV(:,:) = pvv_b(:,:,Kmm) * hv(:,:,Kmm) * e1v(:,:)        ! NB: FULL domain : put a value in last row and column 
    267267         ! 
    268          CALL dyn_cor_2d( ht(:,:), hu(:,:,Kmm), hv(:,:,Kmm), puu_b(:,:,Kmm), pvv_b(:,:,Kmm), zhU, zhV,  &   ! <<== in 
     268         CALL dyn_cor_2d( CASTWP(ht(:,:)), hu(:,:,Kmm), hv(:,:,Kmm), puu_b(:,:,Kmm), pvv_b(:,:,Kmm), zhU, zhV,  &   ! <<== in 
    269269            &                                                                          zu_trd, zv_trd   )   ! ==>> out 
    270270         ! 
     
    283283         END_2D 
    284284      ELSE                !* remove baroclinic drag AND provide the barotropic drag coefficients 
    285          CALL dyn_drg_init( Kbb, Kmm, puu, pvv, puu_b, pvv_b, zu_frc, zv_frc, zCdU_u, zCdU_v ) 
     285         CALL dyn_drg_init( Kbb, Kmm, CASTWP(puu), CASTWP(pvv), puu_b, pvv_b, zu_frc, zv_frc, zCdU_u, zCdU_v ) 
    286286      ENDIF 
    287287      ! 
     
    530530         END_2D 
    531531         ! 
    532          CALL lbc_lnk( 'dynspg_ts', ssha_e, 'T', 1._wp,  zhU, 'U', -1._wp,  zhV, 'V', -1._wp ) 
     532         CALL lbc_lnk( 'dynspg_ts', ssha_e, 'T', 1._wp )   
     533         CALL lbc_lnk( 'dynspg_ts', zhU, 'U', -1._wp,  zhV, 'V', -1._wp ) 
    533534         ! 
    534535         ! Duplicate sea level across open boundaries (this is only cosmetic if linssh=T) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/DYN/sshwzv.F90

    r14644 r14648  
    281281      REAL(dp), DIMENSION(jpi,jpj,jpt), INTENT(inout) ::   pssh           ! SSH field 
    282282      ! 
    283       REAL(wp) ::   zcoef   ! local scalar 
     283      REAL(dp) ::   zcoef   ! local scalar 
    284284      !!---------------------------------------------------------------------- 
    285285      ! 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_lnk_call_generic.h90

    r14644 r14648  
    3333      CHARACTER(len=1)     , OPTIONAL        , INTENT(in   ) ::   cdna2 , cdna3 , cdna4 , cdna5 , cdna6 , cdna7 , cdna8 , cdna9, & 
    3434         &                                                        cdna10, cdna11, cdna12, cdna13, cdna14, cdna15, cdna16 
    35       REAL(PRECISION)                        , INTENT(in   ) ::   psgn1   ! sign used across the north fold 
    36       REAL(PRECISION)      , OPTIONAL        , INTENT(in   ) ::   psgn2 , psgn3 , psgn4 , psgn5 , psgn6 , psgn7 , psgn8 , psgn9, & 
     35      REAL(wp)                        , INTENT(in   ) ::   psgn1   ! sign used across the north fold 
     36      REAL(wp)      , OPTIONAL        , INTENT(in   ) ::   psgn2 , psgn3 , psgn4 , psgn5 , psgn6 , psgn7 , psgn8 , psgn9, & 
    3737         &                                                        psgn10, psgn11, psgn12, psgn13, psgn14, psgn15, psgn16 
    3838      INTEGER              , OPTIONAL        , INTENT(in   ) ::   kfillmode   ! filling method for halo over land (default = constant) 
     
    4545      TYPE(PTR_4d_/**/PRECISION), DIMENSION(16) ::   ptab_ptr    ! pointer array 
    4646      CHARACTER(len=1) , DIMENSION(16) ::   cdna_ptr    ! nature of ptab_ptr grid-points 
    47       REAL(PRECISION)  , DIMENSION(16) ::   psgn_ptr    ! sign used across the north fold boundary 
     47      REAL(wp)  , DIMENSION(16) ::   psgn_ptr    ! sign used across the north fold boundary 
    4848      !!--------------------------------------------------------------------- 
    4949      ! 
     
    8383      REAL(PRECISION), DIMENSION(DIMS), TARGET, INTENT(inout), CONTIGUOUS ::   ptab       ! arrays on which the lbc is applied 
    8484      CHARACTER(len=1)              , INTENT(in   ) ::   cdna       ! nature of pt2d array grid-points 
    85       REAL(PRECISION)               , INTENT(in   ) ::   psgn       ! sign used across the north fold boundary 
     85      REAL(wp)               , INTENT(in   ) ::   psgn       ! sign used across the north fold boundary 
    8686      TYPE(PTR_4d_/**/PRECISION), DIMENSION(:), INTENT(inout) ::   ptab_ptr   ! array of pointers 
    8787      CHARACTER(len=1), DIMENSION(:), INTENT(inout) ::   cdna_ptr   ! nature of pt2d_array array grid-points 
    88       REAL(PRECISION) , DIMENSION(:), INTENT(inout) ::   psgn_ptr   ! sign used across the north fold boundary 
     88      REAL(wp) , DIMENSION(:), INTENT(inout) ::   psgn_ptr   ! sign used across the north fold boundary 
    8989      INTEGER                       , INTENT(inout) ::   kfld       ! number of elements that has been attributed 
    9090      !!--------------------------------------------------------------------- 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_lnk_neicoll_generic.h90

    r14644 r14648  
    44      TYPE(PTR_4d_/**/PRECISION),  DIMENSION(:), INTENT(inout) ::   ptab        ! pointer of arrays on which apply the b.c. 
    55      CHARACTER(len=1), DIMENSION(:), INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    6       REAL(PRECISION),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     6      REAL(wp),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    77      INTEGER                       , INTENT(in   ) ::   kfld        ! number of pt3d arrays 
    88      INTEGER ,             OPTIONAL, INTENT(in   ) ::   kfillmode   ! filling method for halo over land (default = constant) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_lnk_pt2pt_generic.h90

    r14644 r14648  
    55      TYPE(PTR_4d_/**/PRECISION),  DIMENSION(:), INTENT(inout) ::   ptab        ! pointer of arrays on which apply the b.c. 
    66      CHARACTER(len=1), DIMENSION(:), INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    7       REAL(PRECISION),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     7      REAL(wp),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    88      INTEGER                       , INTENT(in   ) ::   kfld        ! number of pt3d arrays 
    99      INTEGER ,             OPTIONAL, INTENT(in   ) ::   kfillmode   ! filling method for halo over land (default = constant) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_nfd_ext_generic.h90

    r14644 r14648  
    44      REAL(PRECISION), DIMENSION(:,1-kextj:),INTENT(inout) ::   ptab 
    55      CHARACTER(len=1), INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    6       REAL(PRECISION),  INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     6      REAL(wp),  INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    77      INTEGER,          INTENT(in   ) ::   kextj       ! extra halo width at north fold 
    88      ! 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_nfd_generic.h90

    r14644 r14648  
    33      TYPE(PTR_4d_/**/PRECISION),  DIMENSION(:), INTENT(inout) ::   ptab        ! pointer of arrays on which apply the b.c. 
    44      CHARACTER(len=1), DIMENSION(:), INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    5       REAL(PRECISION),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     5      REAL(wp),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    66      INTEGER                       , INTENT(in   ) ::   khls        ! halo size, default = nn_hls 
    77      INTEGER                       , INTENT(in   ) ::   kfld        ! number of pt3d arrays 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/lbc_nfd_nogather_generic.h90

    r14644 r14648  
    1010      REAL(PRECISION),  DIMENSION(:,:,:,:), INTENT(inout) ::   ptab2       !  
    1111      CHARACTER(len=1)                    , INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    12       REAL(PRECISION)                     , INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     12      REAL(wp)                     , INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    1313      INTEGER                             , INTENT(in   ) ::   khls        ! halo size, default = nn_hls 
    1414      ! 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/mpp_lbc_north_icb_generic.h90

    r14644 r14648  
    3131      CHARACTER(len=1)        , INTENT(in   ) ::   cd_type  ! nature of pt3d grid-points 
    3232      !                                                     !   = T ,  U , V , F or W -points 
    33       REAL(PRECISION)         , INTENT(in   ) ::   psgn     ! = -1. the sign change across the 
     33      REAL(wp)         , INTENT(in   ) ::   psgn     ! = -1. the sign change across the 
    3434      !!                                                    ! north fold, =  1. otherwise 
    3535      INTEGER                 , INTENT(in   ) ::   kextj    ! Extra halo width at north fold 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/mpp_lnk_icb_generic.h90

    r14644 r14648  
    3131      REAL(PRECISION), DIMENSION(1-kexti:jpi+kexti,1-kextj:jpj+kextj), INTENT(inout) ::   pt2d     ! 2D array with extra halo 
    3232      CHARACTER(len=1)                                        , INTENT(in   ) ::   cd_type  ! nature of ptab array grid-points 
    33       REAL(PRECISION)                                         , INTENT(in   ) ::   psgn     ! sign used across the north fold 
     33      REAL(wp)                                         , INTENT(in   ) ::   psgn     ! sign used across the north fold 
    3434      INTEGER                                                 , INTENT(in   ) ::   kexti    ! extra i-halo width 
    3535      INTEGER                                                 , INTENT(in   ) ::   kextj    ! extra j-halo width 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/LBC/mpp_nfd_generic.h90

    r14644 r14648  
    33      TYPE(PTR_4d_/**/PRECISION),  DIMENSION(:), INTENT(inout) ::   ptab        ! pointer of arrays on which apply the b.c. 
    44      CHARACTER(len=1), DIMENSION(:), INTENT(in   ) ::   cd_nat      ! nature of array grid-points 
    5       REAL(PRECISION),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
     5      REAL(wp),  DIMENSION(:), INTENT(in   ) ::   psgn        ! sign used across the north fold boundary 
    66      INTEGER                       , INTENT(in   ) ::   kfillmode   ! filling method for halo over land  
    77      REAL(PRECISION)               , INTENT(in   ) ::   pfillval    ! background value (used at closed boundaries) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/SBC/sbcmod.F90

    r14644 r14648  
    442442         END_2D 
    443443         ! 
    444          CALL lbc_lnk_multi( 'sbcwave', utau, 'U', -1._wp , vtau, 'V', -1._wp ) 
     444         CALL lbc_lnk( 'sbcwave', utau, 'U', -1._wp , vtau, 'V', -1._wp ) 
    445445         ! 
    446446         taum(:,:) = taum(:,:)*tauoc_wave(:,:) 
     
    452452         utau(:,:) = utau(:,:) - tawx(:,:) + twox(:,:) 
    453453         vtau(:,:) = vtau(:,:) - tawy(:,:) + twoy(:,:) 
    454          CALL lbc_lnk_multi( 'sbcwave', utau, 'U', -1._wp, vtau, 'V', -1._wp ) 
     454         CALL lbc_lnk( 'sbcwave', utau, 'U', -1._wp, vtau, 'V', -1._wp ) 
    455455         ! 
    456456         DO_2D( 0, 0, 0, 0) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/TRA/traadv.F90

    r14644 r14648  
    184184            IF (nn_hls.EQ.2) THEN 
    185185               CALL lbc_lnk( 'traadv', pts(:,:,:,:,Kbb), 'T', 1._wp, pts(:,:,:,:,Kmm), 'T', 1._wp) 
    186                CALL lbc_lnk( 'traadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1., zww(:,:,:), 'W', 1._wp) 
     186               CALL lbc_lnk( 'traadv', zuu(:,:,:), 'U', -1._wp, zvv(:,:,:), 'V', -1._wp, zww(:,:,:), 'W', 1._wp) 
    187187#if defined key_loop_fusion 
    188188               CALL tra_adv_fct_lf ( kt, nit000, 'TRA', rDt, zuu, zvv, zww, Kbb, Kmm, pts, jpts, Krhs, nn_fct_h, nn_fct_v ) 
  • NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/TRA/traadv_fct.F90

    r14644 r14648  
    294294         ! 
    295295         IF (nn_hls.EQ.1) THEN 
    296             CALL lbc_lnk( 'traadv_fct', zwi, 'T', 1.0_wp, zwx, 'U', -1.0_wp , zwy, 'V', -1.0_wp, zwz, 'T', 1.0_wp ) 
     296            CALL lbc_lnk( 'traadv_fct', zwi, 'T', 1.0_wp ) 
     297            CALL lbc_lnk( 'traadv_fct', zwx, 'U', -1.0_wp , zwy, 'V', -1.0_wp, zwz, 'T', 1.0_wp ) 
    297298         ELSE 
    298299            CALL lbc_lnk( 'traadv_fct', zwi, 'T', 1.0_wp) 
Note: See TracChangeset for help on using the changeset viewer.