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 314 for trunk/NEMO/OPA_SRC/DYN/dynspg_fsc.F90 – NEMO

Ignore:
Timestamp:
2005-09-30T12:24:23+02:00 (19 years ago)
Author:
opalod
Message:

nemo_v1_update_017:RB: added call to sol_sor_e for free surface and rigid lid.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/DYN/dynspg_fsc.F90

    r294 r314  
    2727   USE solsor          ! Successive Over-relaxation solver 
    2828   USE solfet          ! FETI solver 
     29   USE solsor_e        ! Successive Over-relaxation solver with MPP optimization 
    2930   USE obc_oce         ! Lateral open boundary condition 
    3031   USE obcdyn          ! ocean open boundary condition (obc_dyn routines) 
     
    257258         END DO 
    258259      END DO 
     260      ! applied the lateral boundary conditions 
     261      IF( nsolv == 4 )   CALL lbc_lnk_e( gcb, c_solver_pt, 1. )    
    259262 
    260263      ! 4. Relative precision (computation on one processor) 
    261264      ! --------------------- 
    262265      rnorme =0. 
    263       rnorme = SUM( gcb(:,:) * gcdmat(:,:) * gcb(:,:) ) 
     266      rnorme = SUM( gcb(1:jpi,1:jpj) * gcdmat(1:jpi,1:jpj) * gcb(1:jpi,1:jpj) * bmask(:,:) ) 
    264267      IF( lk_mpp )   CALL mpp_sum( rnorme )   ! sum over the global domain 
    265268 
     
    286289         ELSEIF( nsolv == 3 ) THEN     ! FETI solver 
    287290            CALL sol_fet( kindic ) 
     291         ELSEIF( nsolv == 4 ) THEN     ! successive-over-relaxation with extra outer halo 
     292            CALL sol_sor_e( kindic ) 
    288293         ELSE                          ! e r r o r in nsolv namelist parameter 
    289294            IF(lwp) WRITE(numout,cform_err) 
    290             IF(lwp) WRITE(numout,*) ' dyn_spg_fsc : e r r o r, nsolv = 1, 2 or 3' 
     295            IF(lwp) WRITE(numout,*) ' dyn_spg_fsc : e r r o r, nsolv = 1, 2 ,3 or 4' 
    291296            IF(lwp) WRITE(numout,*) ' ~~~~~~~~~~~                not = ', nsolv 
    292297            nstop = nstop + 1 
Note: See TracChangeset for help on using the changeset viewer.