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 7320 for branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90 – NEMO

Ignore:
Timestamp:
2016-11-23T14:24:07+01:00 (8 years ago)
Author:
cbricaud
Message:

create lib_fortran routine for CRS grid and interface it in TOP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90

    r7256 r7320  
    6767      !!------------------------------------------------------------------- 
    6868      !! Local variables 
    69       INTEGER  :: ji,jj,jk      ! dummy indices 
    70       INTEGER  :: ierr                                ! allocation error status 
    71       INTEGER  ::   ios                 ! Local integer output status for namelist read 
     69      INTEGER  :: ji,jj,jk           ! dummy indices 
     70      INTEGER  :: ierr               ! allocation error status 
     71      INTEGER  :: ios                ! Local integer output status for namelist read 
     72      INTEGER  :: iif, iil, ijf, ijl ! indices for tmask_i_crs construction 
    7273      REAL(wp) :: zmin,zmax 
    7374      REAL(wp), DIMENSION(:,:,:), POINTER :: zfse3t, zfse3u, zfse3v, zfse3w 
     
    309310 
    310311     !--------------------------------------------------------- 
    311      ! 5.  Coarse grid ocean volume and averaging weights 
    312      !--------------------------------------------------------- 
    313      !CALL dom_grid_crs   ! Save the parent grid information  & Switch to coarse grid domain 
    314      !CALL ldf_tra_crs_init 
    315      !CALL dom_grid_glo   ! Return to parent grid domain 
    316  
     312     ! 5.  Build tmask_i_crs ( for crsdomwri and lib_fortran_crs (glob_sum) 
     313     !--------------------------------------------------------- 
     314     tmask_i_crs(:,:) = tmask_crs(:,:,1) 
     315     iif = jpreci 
     316     iil = nlci_crs - jpreci + 1 
     317     ijf = jpreci 
     318     ijl = nlcj_crs - jprecj + 1 
     319 
     320     tmask_i_crs( 1:iif ,    :  ) = 0._wp 
     321     tmask_i_crs(iil:jpi_crs,    :  ) = 0._wp 
     322     tmask_i_crs(   :   , 1:ijf ) = 0._wp 
     323     tmask_i_crs(   :   ,ijl:jpj_crs) = 0._wp 
     324 
     325     tpol_crs(1:jpiglo_crs,:) = 1._wp 
     326     fpol_crs(1:jpiglo_crs,:) = 1._wp 
     327     IF( jperio == 3 .OR. jperio == 4 ) THEN 
     328        tpol_crs(jpiglo_crs/2+1:jpiglo_crs,:) = 0._wp 
     329        fpol_crs(       1      :jpiglo_crs,:) = 0._wp 
     330        IF( mjg_crs(nlej_crs) == jpiglo_crs ) THEN 
     331           DO ji = iif+1, iil-1 
     332              tmask_i_crs(ji,nlej_crs-1) = tmask_i_crs(ji,nlej_crs-1) & 
     333              & * tpol_crs(mig_crs(ji),1) 
     334           ENDDO 
     335        ENDIF 
     336     ENDIF 
     337     IF( jperio == 5 .OR. jperio == 6 ) THEN 
     338        tpol_crs(      1       :jpiglo_crs,:)=0._wp 
     339        fpol_crs(jpiglo_crs/2+1:jpiglo_crs,:)=0._wp 
     340     ENDIF 
    317341 
    318342     ! 
Note: See TracChangeset for help on using the changeset viewer.