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 532 for trunk/NEMO/OPA_SRC/opa.F90 – NEMO

Ignore:
Timestamp:
2006-10-20T08:36:42+02:00 (18 years ago)
Author:
opalod
Message:

nemo_v1_update_76 : CT : add OASIS[3-4] interfaces to build coupled configurations

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/opa.F90

    r531 r532  
    2828   !!        !  00-07  (J-M Molines, M. Imbard)  Open Boundary Conditions  (CLIPPER) 
    2929   !!   9.0  !  02-08  (G. Madec)  F90: Free form and modules 
     30   !!    "   !  04-06  (R. Redler, NEC CCRLE, Germany) add OASIS[3/4] coupled interfaces 
    3031   !!    "   !  04-08  (C. Talandier) New trends organization 
    3132   !!    "   !  05-06  (C. Ethe) Add the 1D configuration possibility 
     
    6869 
    6970   USE step            ! OPA time-stepping                  (stp     routine) 
     71#if defined key_oasis3 
     72   USE cpl_oasis3      ! OASIS3 coupling (to ECHAM5) 
     73#else if defined key_oasis4 
     74   USE cpl_oasis4      ! OASIS4 coupling (to ECHAM5) 
     75#endif 
     76   USE dynspg_oce      ! Control choice of surface pressure gradient schemes 
    7077   USE prtctl          ! Print control                 (prt_ctl_init routine) 
    7178   USE ini1d           ! re-initialization of u-v mask for the 1D configuration 
     
    149156 
    150157      CALL opa_closefile 
     158#if defined key_oasis3 || defined key_oasis4 
     159      call cpl_prism_finalize 
     160#else 
    151161      IF( lk_mpp )   CALL mppstop                          ! Close all files (mpp) 
     162#endif 
    152163 
    153164   END SUBROUTINE opa_model 
     
    163174#if defined key_coupled 
    164175      INTEGER ::   itro, istp0        ! ??? 
     176#endif 
     177#if defined key_oasis3 || defined key_oasis4 
     178      INTEGER :: localComm 
    165179#endif 
    166180      CHARACTER (len=20) ::   namelistname 
     
    197211      READ  ( numnam, namctl ) 
    198212 
     213#ifdef key_oasis3 || defined key_oasis4 
     214      call cpl_prism_init(localComm) 
     215      ! Nodes selection 
     216      narea = mynode(localComm) 
     217#else 
    199218      ! Nodes selection 
    200219      narea = mynode() 
     220#endif 
    201221      narea = narea + 1    ! mynode return the rank of proc (0 --> jpnij -1 ) 
    202222      lwp   = narea == 1 
     
    286306#endif 
    287307 
    288 #if defined key_coupled 
     308#if defined key_coupled && ! defined key_oasis3 && ! defined key_oasis4 
    289309      itro  = nitend - nit000 + 1           ! Coupled 
    290310      istp0 = NINT( rdt ) 
    291311      CALL cpl_init( itro, nexco, istp0 )   ! Signal processing and process id exchange 
     312#endif 
     313 
     314#if defined key_oasis3 || defined key_oasis4 
     315      CALL cpl_prism_define 
    292316#endif 
    293317 
     
    398422         SELECT CASE ( cp_cfg ) 
    399423         CASE ( 'gyre' ) 
    400             CALL ctl_warn( ' The Benchmark is activated ' ) 
     424            CALL ctl_warn( '          The Benchmark is activated ' ) 
    401425         CASE DEFAULT 
    402             CALL ctl_stop( ' The Benchmark is based on the GYRE configuration: key_gyre must be used or set nbench = 0' ) 
     426            CALL ctl_stop( '          The Benchmark is based on the GYRE configuration: key_gyre must & 
     427               &                      be used or set nbench = 0' ) 
    403428         END SELECT 
    404429      ENDIF 
    405430 
    406       SELECT CASE ( nbit_cmp ) 
    407       CASE ( 1 ) 
    408          CALL ctl_warn( ' Bit comparison enabled Single and multiple processor results should bit compare', & 
    409               &         ' WARNING: RESULTS ARE NOT PHYSICAL.' ) 
    410       CASE DEFAULT 
    411          CALL ctl_warn( ' Bit comparison not enabled. Single and multiple processor results will differ.' ) 
    412       END SELECT 
     431      IF( nbit_cmp == 1 )   THEN 
     432         CALL ctl_warn( '          Bit comparison enabled. Single and multiple processor results must bit compare', & 
     433              &         '          WARNING: RESULTS ARE NOT PHYSICAL.' ) 
     434      ENDIF 
    413435 
    414436 
Note: See TracChangeset for help on using the changeset viewer.