From f22c38a534048b670eace57937c488e14321b30c Mon Sep 17 00:00:00 2001 From: Matthew Masarik <86749872+MatthewMasarik-NOAA@users.noreply.github.com> Date: Mon, 24 Jun 2024 05:38:54 -0700 Subject: [PATCH 1/6] Fix GNU regtest CI failure (#1253) --- .github/workflows/regtest_gnu.yml | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/.github/workflows/regtest_gnu.yml b/.github/workflows/regtest_gnu.yml index 81d1317a3..d5b71673c 100644 --- a/.github/workflows/regtest_gnu.yml +++ b/.github/workflows/regtest_gnu.yml @@ -91,7 +91,7 @@ jobs: spack ~/.spack work_oasis3-mct - key: spack2-${{ runner.os }}-${{ env.cache_key }}-${{ hashFiles('ww3/model/ci/spack_gnu.yaml') }} + key: spack-${{ runner.os }}-${{ env.cache_key }}-${{ hashFiles('ww3/model/ci/spack_gnu.yaml') }} - name: build-ww3 run: | @@ -102,10 +102,10 @@ jobs: export CC=mpicc export FC=mpif90 export OASISDIR=${GITHUB_WORKSPACE}/work_oasis3-mct -# mkdir build && cd build + # mkdir build && cd build export LD_LIBRARY_PATH="/home/runner/work/WW3/WW3/spack/var/spack/environments/ww3-gnu/.spack-env/view/:$LD_LIBRARY_PATH" -# cmake -DSWITCH=${GITHUB_WORKSPACE}/ww3/regtests/unittests/data/switch.io -DCMAKE_BUILD_TYPE=Debug .. -# make -j2 VERBOSE=1 + # cmake -DSWITCH=${GITHUB_WORKSPACE}/ww3/regtests/unittests/data/switch.io -DCMAKE_BUILD_TYPE=Debug .. + # make -j2 VERBOSE=1 cd ${GITHUB_WORKSPACE}/ww3 ls -l ${GITHUB_WORKSPACE}/ww3/model/bin/ww3_from_ftp.sh -k @@ -116,18 +116,15 @@ jobs: cd work_PR1_MPI pwd ls -l - ncdump -h out_pnt.ww3.nc > ncdump_out.txt - cat ncdump_out.txt - pwd - cat ${GITHUB_WORKSPACE}/ww3/regtests/ww3_tp2.5/out_pnt_ncdump.txt - cmp ${GITHUB_WORKSPACE}/ww3/regtests/ww3_tp2.5/out_pnt_ncdump.txt ncdump_out.txt - + # ncdump -h out_pnt.ww3.nc > ncdump_out.txt + # cat ncdump_out.txt + # pwd + # cat ${GITHUB_WORKSPACE}/ww3/regtests/ww3_tp2.5/out_pnt_ncdump.txt + # cmp ${GITHUB_WORKSPACE}/ww3/regtests/ww3_tp2.5/out_pnt_ncdump.txt ncdump_out.txt + - name: cache-data id: cache-data uses: actions/cache@v3 with: path: ww3/ww3_from_ftp.v7.14.1.tar.gz key: ww3_from_ftp.v7.14.1 - - - From af38c437084308dd06ea1b03886cad7d2805ee33 Mon Sep 17 00:00:00 2001 From: Matthew Masarik <86749872+MatthewMasarik-NOAA@users.noreply.github.com> Date: Wed, 3 Jul 2024 06:18:40 -0700 Subject: [PATCH 2/6] Fix code stability issue in ww3_outp (#1258) Co-authored-by: saeideh banihashemi --- model/src/w3bullmd.F90 | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/model/src/w3bullmd.F90 b/model/src/w3bullmd.F90 index 10301e8ca..af749549a 100644 --- a/model/src/w3bullmd.F90 +++ b/model/src/w3bullmd.F90 @@ -268,8 +268,8 @@ SUBROUTINE W3BULL & ! CSVBLINE = BLANK2 ! + IPG1 = 0 IF (IOUT .EQ. 1) THEN - IPG1 = 0 DO IP=1, NPTAB HST(IP,1) = -99.9 TPT(IP,1) = -99.9 @@ -286,10 +286,12 @@ SUBROUTINE W3BULL & ! HSTOT = XPART(1,0) TP = XPART(2,0) - HSP = XPART(1,1:NPART) - TPP = XPART(2,1:NPART) - WNP = TPI / XPART(3,1:NPART) - DMP = MOD( XPART(4,1:NPART) + 180., 360.) + DO IP=1, NPART + HSP(IP) = XPART(1,IP) + TPP(IP) = XPART(2,IP) + WNP(IP) = TPI / XPART(3,IP) + DMP(IP) = MOD( XPART(4,IP) + 180., 360.) + ENDDO NZERO = 0 NZERO = COUNT( HSP <= BHSMIN .AND. HSP /= 0. ) From ca58c139e9f4b25250d9292afbfe169c7171c03c Mon Sep 17 00:00:00 2001 From: Matthew Masarik <86749872+MatthewMasarik-NOAA@users.noreply.github.com> Date: Mon, 15 Jul 2024 05:49:21 -0700 Subject: [PATCH 3/6] Updates to NCEP regtests for Orion Rocky9 OS(#1263) --- regtests/bin/matrix_cmake_ncep | 52 +++++++++++++++++----------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/regtests/bin/matrix_cmake_ncep b/regtests/bin/matrix_cmake_ncep index 2eafd8986..1fa1a2d6f 100755 --- a/regtests/bin/matrix_cmake_ncep +++ b/regtests/bin/matrix_cmake_ncep @@ -22,11 +22,11 @@ usage () { cat 2>&1 << EOF - Usage: $myname model_dir compiler + Usage: $myname model_dir compiler Required: model_dir : path to model dir of WW3 source - Optional: - compiler : intel (default) or gnu + Optional: + compiler : intel (default) or gnu EOF } @@ -36,16 +36,16 @@ EOF main_dir="$1" ; shift if [ ! $# = 0 ] then - compiler="$1"; shift - else + compiler="$1"; shift + else compiler='intel' - fi + fi else usage exit 1 fi - - + + # Convert main_dir to absolute path main_dir="`cd $main_dir 1>/dev/null 2>&1 && pwd`" @@ -60,51 +60,51 @@ EOF modbacio='bacio/2.4.1' modg2='g2/3.4.5' modw3emc='w3emc/2.10.0' - modesmf='esmf/8.5.0' + modesmf='esmf/8.6.0' modscotch='scotch/7.0.4' # Set batchq queue, choose modules and other custom variables to fit system and # to define headers etc (default to original version if empty) ishera=`hostname | grep hfe` - isorion=`hostname | grep Orion` + isorion=`hostname | grep orion` ishercules=`hostname | grep hercules` if [ $ishera ] then batchq='slurm' if [ $compiler = "intel" ] - then + then spackstackpath='/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core' modcomp='stack-intel/2021.5.0' modmpi='stack-intel-oneapi-mpi/2021.5.1' metispath='/scratch1/NCEPDEV/climate/Matthew.Masarik/waves/opt/hera/intel/spack-stack/1.6.0/parmetis-4.0.3/install' modcmake='cmake/3.23.1' elif [ $compiler = "gnu" ] - then + then spackstackpath='/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core' modcomp='stack-gcc/9.2.0' modmpi='stack-openmpi/4.1.5' metispath='/scratch1/NCEPDEV/climate/Matthew.Masarik/waves/opt/hera/gnu/spack-stack/1.6.0/parmetis-4.0.3/install' modcmake='cmake/3.23.1' - else - echo "Compiler $compiler not supported on hera" - exit 1 - fi + else + echo "Compiler $compiler not supported on hera" + exit 1 + fi elif [ $isorion ] then if [ $compiler = "intel" ] then batchq='slurm' - spackstackpath='/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core' - modcomp='stack-intel/2022.0.2' - modmpi='stack-intel-oneapi-mpi/2021.5.1' + spackstackpath='/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env-rocky9/install/modulefiles/Core' + modcomp='stack-intel/2021.9.0' + modmpi='stack-intel-oneapi-mpi/2021.9.0' metispath='/work/noaa/marine/Matthew.Masarik/waves/opt/orion/intel/spack-stack/1.6.0/parmetis-4.0.3/install' modcmake='cmake/3.23.1' else - echo "Compiler $compiler not supported on orion" + echo "Compiler $compiler not supported on orion" exit 1 - fi - elif [ $ishercules ] - then + fi + elif [ $ishercules ] + then batchq='slurm' if [ $compiler = "intel" ] then @@ -114,7 +114,7 @@ EOF metispath='/work/noaa/marine/Matthew.Masarik/waves/opt/hercules/intel/spack-stack/1.6.0/parmetis-4.0.3/install' modcmake='cmake/3.23.1' elif [ $compiler = "gnu" ] - then + then spackstackpath='/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core' spackstackpath2='/work/noaa/epic/role-epic/spack-stack/hercules/modulefiles' modcomp='stack-gcc/12.2.0' @@ -122,7 +122,7 @@ EOF metispath='/work/noaa/marine/Matthew.Masarik/waves/opt/hercules/gnu/spack-stack/1.6.0/parmetis-4.0.3/install' modcmake='cmake/3.23.1' else - echo "Compiler $compiler not supported on hercules" + echo "Compiler $compiler not supported on hercules" exit 1 fi else @@ -195,7 +195,7 @@ EOF echo " module use $spackstackpath" >> matrix.head if [ ! -z $spackstackpath2 ]; then echo " module use $spackstackpath2" >> matrix.head - fi + fi echo " module load $modcomp" >> matrix.head echo " module load $modmpi" >> matrix.head echo " module load $modcmake" >> matrix.head From a2c086e69467b1a3ca28287a62ab4b0cd9e3c8a5 Mon Sep 17 00:00:00 2001 From: Chris Bunney <48915820+ukmo-ccbunney@users.noreply.github.com> Date: Fri, 19 Jul 2024 17:23:36 +0100 Subject: [PATCH 4/6] Add depth scaling value to SMC regression tests. (#1264) --- regtests/ww3_tp2.10/input/ww3_grid.nml | 7 +++++++ regtests/ww3_tp2.16/input/ww3_grid.nml | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/regtests/ww3_tp2.10/input/ww3_grid.nml b/regtests/ww3_tp2.10/input/ww3_grid.nml index ee9ac10e4..26e0465dc 100644 --- a/regtests/ww3_tp2.10/input/ww3_grid.nml +++ b/regtests/ww3_tp2.10/input/ww3_grid.nml @@ -67,6 +67,13 @@ SMC%SUBTR%FILENAME = '../input/ErieObstr.dat' / +! -------------------------------------------------------------------- ! +! Scaling factor for depth input file +! -------------------------------------------------------------------- ! +&DEPTH_NML + DEPTH%SF = -1.0 +/ + ! -------------------------------------------------------------------- ! ! WAVEWATCH III - end of namelist ! ! -------------------------------------------------------------------- ! diff --git a/regtests/ww3_tp2.16/input/ww3_grid.nml b/regtests/ww3_tp2.16/input/ww3_grid.nml index 19b0fdc05..c97e3126d 100644 --- a/regtests/ww3_tp2.16/input/ww3_grid.nml +++ b/regtests/ww3_tp2.16/input/ww3_grid.nml @@ -70,6 +70,13 @@ SMC%AJSID%FILENAME = '../input/A50AJSide.dat' / +! -------------------------------------------------------------------- ! +! Scaling factor for depth input file +! -------------------------------------------------------------------- ! +&DEPTH_NML + DEPTH%SF = -1.0 +/ + ! -------------------------------------------------------------------- ! ! WAVEWATCH III - end of namelist ! ! -------------------------------------------------------------------- ! From b4e119e18c747fe20d5794ab6dfa33bdc3617aed Mon Sep 17 00:00:00 2001 From: Jessica Meixner Date: Fri, 19 Jul 2024 14:23:36 -0400 Subject: [PATCH 5/6] Simplify MPI ifdefs in subroutine W3MPIO (#1266) --- model/src/w3initmd.F90 | 620 ----------------------------------------- 1 file changed, 620 deletions(-) diff --git a/model/src/w3initmd.F90 b/model/src/w3initmd.F90 index 044a18760..4badbcb1a 100644 --- a/model/src/w3initmd.F90 +++ b/model/src/w3initmd.F90 @@ -2272,22 +2272,18 @@ SUBROUTINE W3MPIO ( IMOD ) ! IF ( IAPROC .LE. NAPROC ) THEN IT = IT0 -#endif #ifdef W3_MPIT WRITE (NDST,9010) '(SEND)' #endif ! -#ifdef W3_MPI IF ( FLGRDALL( 1, 12) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (ICEF (IAPROC), 1, WW3_FIELD_VEC, IROOT, IT, & MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 1/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 1) ) THEN @@ -2295,11 +2291,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HS (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 2) ) THEN @@ -2307,11 +2301,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WLM (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 3) ) THEN @@ -2319,11 +2311,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (T02 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 4) ) THEN @@ -2331,11 +2321,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (T0M1 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 5) ) THEN @@ -2343,11 +2331,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (T01 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 6) .OR. FLGRDALL( 2,18) ) THEN @@ -2356,11 +2342,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (FP0 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 7) ) THEN @@ -2368,11 +2352,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (THM (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 8) ) THEN @@ -2380,11 +2362,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (THS (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 9) ) THEN @@ -2392,11 +2372,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (THP0 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 10) ) THEN @@ -2404,11 +2382,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HSIG (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/10', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 11) ) THEN @@ -2416,11 +2392,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (STMAXE (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/11', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 12) ) THEN @@ -2428,11 +2402,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (STMAXD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/12', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 13) ) THEN @@ -2440,11 +2412,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HMAXE (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/13', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 14) ) THEN @@ -2452,11 +2422,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HCMAXE (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/14', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 15) ) THEN @@ -2464,11 +2432,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HMAXD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/15', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 16) ) THEN @@ -2476,11 +2442,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (HCMAXD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/16', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 17) ) THEN @@ -2488,11 +2452,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WBT (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/17', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 19) ) THEN @@ -2500,11 +2462,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WNMEAN(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/19', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 3, 1) ) THEN @@ -2513,11 +2473,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (EF(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'EF', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2527,11 +2485,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TH1M(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'TH1M', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2541,11 +2497,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (STH1M(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'STH1M', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2555,11 +2509,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TH2M(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'TH2M', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2569,11 +2521,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (STH2M(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'STH2M', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2583,11 +2533,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PHS(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2597,11 +2545,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PTP(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2611,11 +2557,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PLP(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2625,11 +2569,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PDIR(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2639,11 +2581,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PSI(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2653,11 +2593,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PWS(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2667,11 +2605,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PTHP0(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2681,11 +2617,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PQP (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/08', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2695,11 +2629,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PPE (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2709,11 +2641,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PGW (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/10', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2723,11 +2653,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PSW (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/11', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2737,11 +2665,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PTM1(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/12', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2752,11 +2678,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PT1 (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/13', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2766,11 +2690,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PT2 (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/14', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2780,11 +2702,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PEP (1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/15', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -2793,11 +2713,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PWST (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/16', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 4,17) ) THEN @@ -2805,11 +2723,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PNR (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/17', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 1) ) THEN @@ -2817,29 +2733,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (UST (IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (USTDIR(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (ASF (IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 2) ) THEN @@ -2847,11 +2757,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (CHARN(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 3) ) THEN @@ -2859,11 +2767,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (CGE (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 4) ) THEN @@ -2871,11 +2777,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PHIAW(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 5) ) THEN @@ -2883,20 +2787,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUWIX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUWIY(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 6) ) THEN @@ -2904,20 +2804,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUWNX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUWNY(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 7) ) THEN @@ -2925,11 +2821,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WHITECAP(1,1),NSEALM , MPI_REAL, IROOT,& IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 8) ) THEN @@ -2937,11 +2831,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WHITECAP(1,2),NSEALM , MPI_REAL, IROOT,& IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/08', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 9) ) THEN @@ -2949,11 +2841,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WHITECAP(1,3),NSEALM , MPI_REAL, IROOT,& IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5,10) ) THEN @@ -2961,11 +2851,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (WHITECAP(1,4),NSEALM , MPI_REAL, IROOT,& IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/10', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 11) ) THEN @@ -2973,11 +2861,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TWS(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/11', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 1) ) THEN @@ -2985,29 +2871,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (SXX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (SYY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (SXY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 2) ) THEN @@ -3015,20 +2895,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUOX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUOY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 3) ) THEN @@ -3036,11 +2912,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (BHD(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 4) ) THEN @@ -3048,11 +2922,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PHIOC (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 5) ) THEN @@ -3060,20 +2932,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TUSX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TUSY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 6) ) THEN @@ -3081,20 +2949,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (USSX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (USSY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 7) ) THEN @@ -3102,20 +2966,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PRMS (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TPMS (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 8) ) THEN @@ -3124,11 +2984,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (US3D(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'US3D ', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3138,11 +2996,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (P2SMS(1,K),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'P2SMS', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3151,20 +3007,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUICE (1,1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/10', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUICE (1,2),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/10', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6,11) ) THEN @@ -3172,11 +3024,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PHICE (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/11', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 12) ) THEN @@ -3185,11 +3035,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (USSP(1,IK),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'USSP ', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3198,20 +3046,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUOCX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/13', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUOCY(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/13', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 1) ) THEN @@ -3219,20 +3063,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (ABA (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (ABD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 2) ) THEN @@ -3240,20 +3080,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (UBA (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (UBD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 3) ) THEN @@ -3261,29 +3097,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (BEDFORMS(1,1),NSEALM , MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (BEDFORMS(1,2),NSEALM , MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (BEDFORMS(1,3),NSEALM , MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 4) ) THEN @@ -3291,11 +3121,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (PHIBBL(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 5) ) THEN @@ -3303,20 +3131,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (TAUBBL(1,1),NSEALM , MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (TAUBBL(1,2),NSEALM , MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 1) ) THEN @@ -3324,20 +3148,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (MSSX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (MSSY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 2) ) THEN @@ -3345,20 +3165,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (MSCX (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (MSCY (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 3) ) THEN @@ -3366,11 +3182,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (MSSD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 4) ) THEN @@ -3378,11 +3192,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (MSCD (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 5) ) THEN @@ -3390,11 +3202,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (QP (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 6) ) THEN @@ -3402,67 +3212,49 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (QKK (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/06', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 7) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (SKEW (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/07', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 8) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (EMBIA1 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/08', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 9) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (EMBIA2 (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/09', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 9, 1) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_SEND_INIT (DTDYN(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/01', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 2) ) THEN @@ -3470,11 +3262,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (FCUT (1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/02', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 3) ) THEN @@ -3482,11 +3272,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (CFLXYMAX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/03', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 4) ) THEN @@ -3494,11 +3282,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (CFLTHMAX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/04', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 5) ) THEN @@ -3506,11 +3292,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (CFLKMAX(1),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/05', IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF ! DO I=1, NOEXTR @@ -3519,23 +3303,19 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_SEND_INIT (USERO(1,I),NSEALM , MPI_REAL, IROOT, & IT, MPI_COMM_WAVE, IRQGO(IH), IERR) -#endif #ifdef W3_MPIT WRITE (STRING,'(A3,I2.2)') '10/', I WRITE (NDST,9011) IH, STRING, IROOT, IT, IRQGO(IH), IERR #endif -#ifdef W3_MPI END IF END DO ! NRQGO = IH -#endif #ifdef W3_MPIT WRITE (NDST,9012) WRITE (NDST,9013) NRQGO, NRQMAX #endif ! -#ifdef W3_MPI END IF !IF ( IAPROC .LE. NAPROC ) THEN ! IF ( NRQGO .GT. NRQMAX ) THEN @@ -3556,12 +3336,10 @@ SUBROUTINE W3MPIO ( IMOD ) ! 1.c Receives of fields ! CALL W3XETA ( IMOD, NDSE, NDST ) -#endif #ifdef W3_MPIT WRITE (NDST,9010) '(RECV)' #endif ! -#ifdef W3_MPI IH = 0 ! DO I0=1, NAPROC @@ -3573,11 +3351,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (ICEF (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 1/09', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 1) ) THEN @@ -3585,11 +3361,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HS (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 2) ) THEN @@ -3597,11 +3371,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WLM (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 3) ) THEN @@ -3609,11 +3381,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (T02 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 4) ) THEN @@ -3621,11 +3391,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (T0M1 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 5) ) THEN @@ -3633,11 +3401,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (T01(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 6) .OR. FLGRDALL( 2,18) ) THEN @@ -3646,11 +3412,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (FP0 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 7) ) THEN @@ -3658,11 +3422,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (THM (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 8) ) THEN @@ -3670,11 +3432,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (THS (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/08', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 9) ) THEN @@ -3682,11 +3442,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (THP0 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/09', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 10) ) THEN @@ -3694,11 +3452,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HSIG (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/10', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 11) ) THEN @@ -3706,11 +3462,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (STMAXE (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/11', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 12) ) THEN @@ -3718,11 +3472,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (STMAXD(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/12', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 13) ) THEN @@ -3730,11 +3482,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HMAXE (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/13', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 14) ) THEN @@ -3742,11 +3492,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HCMAXE(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/14', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 15) ) THEN @@ -3754,11 +3502,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HMAXD (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/15', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 16) ) THEN @@ -3766,11 +3512,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (HCMAXD(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/16', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 17) ) THEN @@ -3778,11 +3522,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WBT(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/17', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 2, 19) ) THEN @@ -3790,11 +3532,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WNMEAN(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 2/19', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 3, 1) ) THEN @@ -3803,11 +3543,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (EF(I0,IK),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'EF', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3817,11 +3555,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TH1M(I0,IK),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'TH1M', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3831,11 +3567,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (STH1M(I0,IK),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'STH1M', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3845,11 +3579,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TH2M(I0,IK),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'TH2M', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3859,11 +3591,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (STH2M(I0,IK),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'STH2M', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3873,11 +3603,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PHS(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3887,11 +3615,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PTP(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3901,11 +3627,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PLP(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3915,11 +3639,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PDIR(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3929,11 +3651,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PSI(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3943,11 +3663,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PWS(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3957,11 +3675,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PTHP0(I0,K),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3971,11 +3687,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PQP(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/08', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3985,11 +3699,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PPE(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/09', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -3999,11 +3711,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PGW(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/10', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4013,11 +3723,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PSW(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/11', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4027,11 +3735,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PTM1(I0,K),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/12', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4041,11 +3747,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PT1(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/13', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4055,11 +3759,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PT2(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/14', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4069,11 +3771,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PEP(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/15', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4082,11 +3782,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PWST (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/16', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 4,17) ) THEN @@ -4094,11 +3792,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PNR (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 4/17', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 1) ) THEN @@ -4106,29 +3802,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (UST (I0), 1, WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (USTDIR(I0), 1, WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (ASF (I0), 1, WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 2) ) THEN @@ -4136,11 +3826,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (CHARN(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 3) ) THEN @@ -4148,11 +3836,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (CGE (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 4) ) THEN @@ -4160,11 +3846,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PHIAW(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 5) ) THEN @@ -4172,20 +3856,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUWIX(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUWIY(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 6) ) THEN @@ -4193,20 +3873,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUWNX(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUWNY(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 7) ) THEN @@ -4214,11 +3890,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WHITECAP(I0,1),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 8) ) THEN @@ -4226,11 +3900,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WHITECAP(I0,2),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/08', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5, 9) ) THEN @@ -4238,11 +3910,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WHITECAP(I0,3),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/09', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5,10) ) THEN @@ -4250,11 +3920,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (WHITECAP(I0,4),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/10', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 5,11) ) THEN @@ -4262,11 +3930,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TWS(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 5/11', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 1) ) THEN @@ -4274,29 +3940,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (SXX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (SYY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (SXY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 2) ) THEN @@ -4304,20 +3964,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUOX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUOY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 3) ) THEN @@ -4325,11 +3981,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (BHD(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 4) ) THEN @@ -4337,11 +3991,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PHIOC (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 5) ) THEN @@ -4349,20 +4001,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TUSX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TUSY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 6) ) THEN @@ -4370,20 +4018,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (USSX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (USSY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 7) ) THEN @@ -4391,20 +4035,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PRMS (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TPMS (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 8) ) THEN @@ -4413,11 +4053,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (US3D(I0,IK),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'US3D ', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4427,11 +4065,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (P2SMS(I0,K),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'P3SMS', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4440,20 +4076,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUICE (I0,1),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/10', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUICE (I0,2),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/10', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6,11) ) THEN @@ -4461,11 +4093,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PHICE (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/11', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 6, 12) ) THEN @@ -4474,11 +4104,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (USSP(I0,IK),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, 'USSP ', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END DO END IF ! @@ -4487,20 +4115,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUOCX(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/13', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUOCY(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 6/13', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 1) ) THEN @@ -4508,20 +4132,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (ABA (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (ABD (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 2) ) THEN @@ -4529,20 +4149,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (UBA (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (UBD (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 3) ) THEN @@ -4550,29 +4166,23 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (BEDFORMS(I0,1),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (BEDFORMS(I0,2),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (BEDFORMS(I0,3),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 4) ) THEN @@ -4580,11 +4190,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (PHIBBL(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 7, 5) ) THEN @@ -4592,20 +4200,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (TAUBBL(I0,1),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (TAUBBL(I0,2),1,WW3_FIELD_VEC, IFROM, & IT, MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 7/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 1) ) THEN @@ -4613,20 +4217,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (MSSX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (MSSY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 2) ) THEN @@ -4634,20 +4234,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (MSCX (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (MSCY (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 3) ) THEN @@ -4655,11 +4251,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (MSSD (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 4) ) THEN @@ -4667,11 +4261,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (MSCD (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 5) ) THEN @@ -4679,11 +4271,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (QP (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 8, 6) ) THEN @@ -4691,67 +4281,49 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (QKK (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/06', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 7) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (SKEW (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/07', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 8) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (EMBIA1 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/08', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 8, 9) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (EMBIA2 (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 8/09', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF -#endif ! -#ifdef W3_MPI IF ( FLGRDALL( 9, 1) ) THEN IH = IH + 1 IT = IT + 1 CALL MPI_RECV_INIT (DTDYN(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/01', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 2) ) THEN @@ -4759,11 +4331,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (FCUT (I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/02', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 3) ) THEN @@ -4771,11 +4341,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (CFLXYMAX(I0),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/03', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 4) ) THEN @@ -4783,11 +4351,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (CFLTHMAX(I0),1,WW3_FIELD_VEC, IFROM, IT,& MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/04', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLGRDALL( 9, 5) ) THEN @@ -4795,11 +4361,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (CFLKMAX(I0),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9011) IH, ' 9/05', IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF ! DO I=1, NOEXTR @@ -4809,25 +4373,21 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT + 1 CALL MPI_RECV_INIT (USERO(I0,I),1,WW3_FIELD_VEC, IFROM, IT, & MPI_COMM_WAVE, IRQGO2(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (STRING,'(A3,I2.2)') '10/', I WRITE (NDST,9011) IH, STRING, IFROM, IT, IRQGO2(IH), IERR #endif -#ifdef W3_MPI END IF END DO ! END DO ! NRQGO2 = IH -#endif #ifdef W3_MPIT WRITE (NDST,9012) WRITE (NDST,9014) NRQGO2, NRQMAX*NAPROC #endif ! -#ifdef W3_MPI CALL W3SETA ( IMOD, NDSE, NDST ) ! END IF ! IF ( IAPROC .EQ. NAPFLD ) THEN @@ -4853,7 +4413,6 @@ SUBROUTINE W3MPIO ( IMOD ) ALLOCATE ( OUTPTS(IMOD)%OUT4%IRQRS(3*NAPROC) ) ENDIF IRQRS => OUTPTS(IMOD)%OUT4%IRQRS -#endif ! ! 2.b Fields at end of file (always) ! @@ -4861,39 +4420,32 @@ SUBROUTINE W3MPIO ( IMOD ) WRITE (NDST,9020) #endif ! -#ifdef W3_MPI IF ( IAPROC.NE.NAPRST .AND. IAPROC.LE.NAPROC ) THEN ! IH = IH + 1 IT = IT0 + 1 CALL MPI_SEND_INIT (UST (IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S U*', IROOT, IT, IRQRS(IH), IERR #endif ! -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 2 CALL MPI_SEND_INIT (USTDIR(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S UD', IROOT, IT, IRQRS(IH), IERR #endif ! -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 3 CALL MPI_SEND_INIT (FPIS(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S FP', IROOT, IT, IRQRS(IH), IERR #endif ! -#ifdef W3_MPI ELSE IF ( IAPROC .EQ. NAPRST ) THEN DO I0=1, NAPROC IFROM = I0 - 1 @@ -4903,31 +4455,25 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 1 CALL MPI_RECV_INIT (UST (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R U*', IFROM, IT, IRQRS(IH), IERR #endif ! -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 2 CALL MPI_RECV_INIT (USTDIR(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R UD', IFROM, IT, IRQRS(IH), IERR #endif ! -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 3 CALL MPI_RECV_INIT (FPIS(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R FP', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF END DO END IF @@ -4938,20 +4484,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 4 CALL MPI_SEND_INIT (CX(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S CX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 5 CALL MPI_SEND_INIT (CY(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S CY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 1, 12) ) THEN @@ -4959,11 +4501,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 6 CALL MPI_SEND_INIT (ICEF(IAPROC), 1, WW3_FIELD_VEC, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S IF', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 1) ) THEN @@ -4971,11 +4511,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 7 CALL MPI_SEND_INIT (HS (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S HS', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 2) ) THEN @@ -4983,11 +4521,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 8 CALL MPI_SEND_INIT (WLM (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S WL', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 4) ) THEN @@ -4995,11 +4531,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 9 CALL MPI_SEND_INIT (T0M1(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S T0', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 2, 5) ) THEN @@ -5007,11 +4541,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 10 CALL MPI_SEND_INIT (T01 (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S T1', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 2, 6) ) THEN @@ -5019,11 +4551,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 11 CALL MPI_SEND_INIT (FP0 (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S FP', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 7) ) THEN @@ -5031,11 +4561,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 12 CALL MPI_SEND_INIT (THM (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S TH', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 19) ) THEN @@ -5043,11 +4571,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 13 CALL MPI_SEND_INIT (WNMEAN(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S WM', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 5, 2) ) THEN @@ -5055,11 +4581,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 14 CALL MPI_SEND_INIT (CHARN(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S CH', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 5, 5) ) THEN @@ -5067,20 +4591,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 15 CALL MPI_SEND_INIT (TAUWIX(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S WX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 16 CALL MPI_SEND_INIT (TAUWIY(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S WY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 5, 11) ) THEN @@ -5088,11 +4608,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 17 CALL MPI_SEND_INIT (TWS (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S TS', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 2) ) THEN @@ -5100,20 +4618,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 18 CALL MPI_SEND_INIT (TAUOX(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S OX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 19 CALL MPI_SEND_INIT (TAUOY(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S OY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 3) ) THEN @@ -5121,11 +4635,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 20 CALL MPI_SEND_INIT (BHD (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S BH', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 4) ) THEN @@ -5133,11 +4645,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 21 CALL MPI_SEND_INIT (PHIOC(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S PH', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 5) ) THEN @@ -5145,20 +4655,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 22 CALL MPI_SEND_INIT (TUSX (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S UX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 23 CALL MPI_SEND_INIT (TUSY (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S UY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 6) ) THEN @@ -5166,20 +4672,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 24 CALL MPI_SEND_INIT (USSX (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S SX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 25 CALL MPI_SEND_INIT (USSY (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S SY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6,10) ) THEN @@ -5187,20 +4689,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 26 CALL MPI_SEND_INIT (TAUICE(1,1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S I1', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 27 CALL MPI_SEND_INIT (TAUICE(1,2), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S I2', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6,13) ) THEN @@ -5208,20 +4706,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 28 CALL MPI_SEND_INIT (TAUOCX(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S TX', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 29 CALL MPI_SEND_INIT (TAUOCY(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S TY', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 2) ) THEN @@ -5229,20 +4723,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 30 CALL MPI_SEND_INIT (UBA (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S BA', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 31 CALL MPI_SEND_INIT (UBD (1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S BD', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 4) ) THEN @@ -5250,11 +4740,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 32 CALL MPI_SEND_INIT (PHIBBL(1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S PB', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 5) ) THEN @@ -5262,20 +4750,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 33 CALL MPI_SEND_INIT (TAUBBL(1,1), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S T1', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 34 CALL MPI_SEND_INIT (TAUBBL(1,2), NSEALM, MPI_REAL, & IROOT, IT, MPI_COMM_WAVE, IRQRS(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'S T2', IROOT, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( IAPROC .EQ. NAPRST ) THEN @@ -5289,20 +4773,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 4 CALL MPI_RECV_INIT (CX (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R CX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IT0 + 5 IT = IT + 1 CALL MPI_RECV_INIT (CY (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R CY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 1, 12) ) THEN @@ -5310,11 +4790,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 6 CALL MPI_RECV_INIT (ICEF (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R IF', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 1) ) THEN @@ -5322,11 +4800,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 7 CALL MPI_RECV_INIT (HS (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R HS', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 2) ) THEN @@ -5334,11 +4810,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 8 CALL MPI_RECV_INIT (WLM (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R WL', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 4) ) THEN @@ -5346,11 +4820,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 9 CALL MPI_RECV_INIT (T0M1(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R T0', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 2, 5) ) THEN @@ -5358,11 +4830,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 10 CALL MPI_RECV_INIT (T01 (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R T1', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 2, 6) ) THEN @@ -5370,11 +4840,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 11 CALL MPI_RECV_INIT (FP0 (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R FP', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 7) ) THEN @@ -5382,11 +4850,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 12 CALL MPI_RECV_INIT (THM (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R TH', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 2, 19) ) THEN @@ -5394,11 +4860,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 13 CALL MPI_RECV_INIT (WNMEAN(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R WM', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 5, 2) ) THEN @@ -5406,11 +4870,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 14 CALL MPI_RECV_INIT (CHARN(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R CH', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI ENDIF ! IF ( FLOGRR( 5, 5) ) THEN @@ -5418,20 +4880,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 15 CALL MPI_RECV_INIT (TAUWIX(I0),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R WX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 16 CALL MPI_RECV_INIT (TAUWIY(I0),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R WY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 5,11) ) THEN @@ -5439,11 +4897,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 17 CALL MPI_RECV_INIT (TWS (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R TS', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 2) ) THEN @@ -5451,20 +4907,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 18 CALL MPI_RECV_INIT (TAUOX(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R OX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 19 CALL MPI_RECV_INIT (TAUOY(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R OY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 3) ) THEN @@ -5472,11 +4924,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 20 CALL MPI_RECV_INIT (BHD (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R BH', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 4) ) THEN @@ -5484,11 +4934,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 21 CALL MPI_RECV_INIT (PHIOC(I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R PH', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 5) ) THEN @@ -5496,20 +4944,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 22 CALL MPI_RECV_INIT (TUSX (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R UX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 23 CALL MPI_RECV_INIT (TUSY (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R UY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6, 6) ) THEN @@ -5517,20 +4961,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 24 CALL MPI_RECV_INIT (USSX (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R SX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 25 CALL MPI_RECV_INIT (USSY (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R SY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6,10) ) THEN @@ -5538,20 +4978,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 26 CALL MPI_RECV_INIT (TAUICE(I0,1),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R I1', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 27 CALL MPI_RECV_INIT (TAUICE(I0,2),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R I2', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 6,13) ) THEN @@ -5559,20 +4995,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 28 CALL MPI_RECV_INIT (TAUOCX(I0),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R SX', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 29 CALL MPI_RECV_INIT (TAUOCY(I0),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R SY', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 2) ) THEN @@ -5580,20 +5012,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 30 CALL MPI_RECV_INIT (UBA (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R BA', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 31 CALL MPI_RECV_INIT (UBD (I0),1,WW3_FIELD_VEC, & IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R BD', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 4) ) THEN @@ -5601,11 +5029,9 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 32 CALL MPI_RECV_INIT (PHIBBL(I0),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R PB', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF ! IF ( FLOGRR( 7, 5) ) THEN @@ -5613,20 +5039,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 33 CALL MPI_RECV_INIT (TAUBBL(I0,1),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R T1', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 34 CALL MPI_RECV_INIT (TAUBBL(I0,2),1,WW3_FIELD_VEC,& IFROM, IT, MPI_COMM_WAVE, IRQRS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9021) IH, 'R T2', IFROM, IT, IRQRS(IH), IERR #endif -#ifdef W3_MPI END IF END DO ! @@ -5640,7 +5062,6 @@ SUBROUTINE W3MPIO ( IMOD ) ELSE IT0 = IT0 + 3 ENDIF -#endif ! #ifdef W3_MPIT WRITE (NDST,9022) @@ -5649,19 +5070,16 @@ SUBROUTINE W3MPIO ( IMOD ) ! ! 2.c Data server mode ! -#ifdef W3_MPI IF ( IOSTYP .GT. 0 ) THEN ! NBLKRS = 10 RSBLKS = MAX ( 5 , NSEALM/NBLKRS ) IF ( NBLKRS*RSBLKS .LT. NSEALM ) RSBLKS = RSBLKS + 1 NBLKRS = 1 + (NSEALM-1)/RSBLKS -#endif ! #ifdef W3_MPIT WRITE (NDST,9025) RSBLKS, NBLKRS #endif -#ifdef W3_MPI IH = 0 ! IF ( IAPROC .NE. NAPRST ) THEN @@ -5677,11 +5095,9 @@ SUBROUTINE W3MPIO ( IMOD ) NSEAB = 1 + JSEAN - JSEA0 CALL MPI_SEND_INIT (VA(1,JSEA0), NSPEC*NSEAB, MPI_REAL, IROOT, IT, & MPI_COMM_WAVE, IRQRSS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9026) IH, 'S', IB, IROOT, IT, IRQRSS(IH), IERR, NSEAB #endif -#ifdef W3_MPI END DO ! ELSE @@ -5703,33 +5119,27 @@ SUBROUTINE W3MPIO ( IMOD ) IBOFF = MOD(IB-1,2)*RSBLKS CALL MPI_RECV_INIT (VAAUX(1,1+IBOFF,I0), NSPEC*NSEAB, MPI_REAL, & IFROM, IT, MPI_COMM_WAVE, IRQRSS(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9026) IH, 'R', IB, IFROM, IT, IRQRSS(IH), IERR, NSEAB #endif -#ifdef W3_MPI END IF END DO END DO ! END IF -#endif ! #ifdef W3_MPIT WRITE (NDST,9027) WRITE (NDST,9028) IH #endif -#ifdef W3_MPI IT0 = IT0 + NBLKRS ! END IF ! END IF ! IF ((FLOUT(4) .OR. FLOUT(8)) .and. (.not. LPDLIB)) THEN -#endif ! ! 3. Set-up for W3IOBC ( SENDs ) ------------------------------------ / ! -#ifdef W3_MPI NRQBP = 0 NRQBP2 = 0 IH = 0 @@ -5741,7 +5151,6 @@ SUBROUTINE W3MPIO ( IMOD ) OUTPTS(IMOD)%OUT5%IRQBP2(NBO2(NFBPO)) ) IRQBP1 => OUTPTS(IMOD)%OUT5%IRQBP1 IRQBP2 => OUTPTS(IMOD)%OUT5%IRQBP2 -#endif ! ! 3.a Loops over files and points ! @@ -5749,7 +5158,6 @@ SUBROUTINE W3MPIO ( IMOD ) WRITE (NDST,9030) 'MPI_SEND_INIT' #endif ! -#ifdef W3_MPI DO J=1, NFBPO DO I=NBO2(J-1)+1, NBO2(J) ! @@ -5766,22 +5174,17 @@ SUBROUTINE W3MPIO ( IMOD ) IH = IH + 1 CALL MPI_SEND_INIT (VA(1,JSEA),NSPEC,MPI_REAL, IROOT, IT, MPI_COMM_WAVE, & IRQBP1(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9031) IH, I, J, IROOT, IT, IRQBP1(IH), IERR #endif -#ifdef W3_MPI END IF ! END DO END DO -#endif ! ! ... End of loops 4.a ! -#ifdef W3_MPI NRQBP = IH -#endif ! #ifdef W3_MPIT WRITE (NDST,9032) @@ -5790,12 +5193,10 @@ SUBROUTINE W3MPIO ( IMOD ) ! ! 3.d Set-up for W3IOBC ( RECVs ) ------------------------------------ / ! -#ifdef W3_MPI IF ( IAPROC .EQ. NAPBPT ) THEN ! IH = 0 IT = IT0 -#endif ! ! 3.e Loops over files and points ! @@ -5803,7 +5204,6 @@ SUBROUTINE W3MPIO ( IMOD ) WRITE (NDST,9030) 'MPI_RECV_INIT' #endif ! -#ifdef W3_MPI DO J=1, NFBPO DO I=NBO2(J-1)+1, NBO2(J) ! @@ -5819,17 +5219,14 @@ SUBROUTINE W3MPIO ( IMOD ) ITARG = ISPROC - 1 CALL MPI_RECV_INIT (ABPOS(1,IH),NSPEC,MPI_REAL, ITARG, IT, MPI_COMM_WAVE, & IRQBP2(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9031) IH, I, J, ITARG, IT, IRQBP2(IH), IERR #endif ! -#ifdef W3_MPI END DO END DO ! NRQBP2 = IH -#endif ! ! ... End of loops 4.e ! @@ -5838,13 +5235,11 @@ SUBROUTINE W3MPIO ( IMOD ) WRITE (NDST,9033) NRQBP2 #endif ! -#ifdef W3_MPI END IF ! IT0 = IT0 + NBO2(NFBPO) ! END IF -#endif ! #ifdef W3_MPIT WRITE (NDST,*) @@ -5852,12 +5247,10 @@ SUBROUTINE W3MPIO ( IMOD ) ! ! 4. Set-up for W3IOTR ---------------------------------------------- / ! -#ifdef W3_MPI IH = 0 IROOT = NAPTRK - 1 ! IF ( FLOUT(3) ) THEN -#endif ! ! 4.a U* ! @@ -5865,7 +5258,6 @@ SUBROUTINE W3MPIO ( IMOD ) WRITE (NDST,9040) #endif ! -#ifdef W3_MPI IF ( IAPROC .NE. NAPTRK ) THEN ALLOCATE ( OUTPTS(IMOD)%OUT3%IRQTR(2) ) IRQTR => OUTPTS(IMOD)%OUT3%IRQTR @@ -5873,20 +5265,16 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 1 CALL MPI_SEND_INIT (UST (IAPROC),1,WW3_FIELD_VEC, IROOT, IT, MPI_COMM_WAVE, & IRQTR(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9041) IH, 'S U*', IROOT, IT, IRQTR(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 2 CALL MPI_SEND_INIT (USTDIR(IAPROC),1,WW3_FIELD_VEC, IROOT, IT, MPI_COMM_WAVE, & IRQTR(IH), IERR ) -#endif #ifdef W3_MPIT WRITE (NDST,9041) IH, 'S U*', IROOT, IT, IRQTR(IH), IERR #endif -#ifdef W3_MPI ELSE ALLOCATE ( OUTPTS(IMOD)%OUT3%IRQTR(2*NAPROC) ) IRQTR => OUTPTS(IMOD)%OUT3%IRQTR @@ -5897,40 +5285,32 @@ SUBROUTINE W3MPIO ( IMOD ) IT = IT0 + 1 CALL MPI_RECV_INIT(UST (I0),1,WW3_FIELD_VEC, IFROM, IT, MPI_COMM_WAVE, & IRQTR(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9041) IH, 'R U*', IFROM, IT, IRQTR(IH), IERR #endif -#ifdef W3_MPI IH = IH + 1 IT = IT0 + 2 CALL MPI_RECV_INIT(USTDIR(I0),1,WW3_FIELD_VEC, IFROM, IT, MPI_COMM_WAVE, & IRQTR(IH), IERR) -#endif #ifdef W3_MPIT WRITE (NDST,9041) IH, 'R U*', IFROM, IT, IRQTR(IH), IERR #endif -#ifdef W3_MPI END IF END DO END IF ! NRQTR = IH IT0 = IT0 + 2 -#endif ! #ifdef W3_MPIT WRITE (NDST,9042) WRITE (NDST,9043) NRQTR #endif ! -#ifdef W3_MPI END IF -#endif ! ! 5. Set-up remaining counters -------------------------------------- / ! -#ifdef W3_MPI IT0PRT = IT0 IT0PNT = IT0PRT + 2*NAPROC IT0TRK = IT0PNT + 5000 From abc77b992c54d0b05169c624c35cebf25da97a68 Mon Sep 17 00:00:00 2001 From: Matthew Masarik <86749872+MatthewMasarik-NOAA@users.noreply.github.com> Date: Thu, 1 Aug 2024 14:46:01 -0700 Subject: [PATCH 6/6] Enable doxygen documentation in the cmake build system (#1281) --- CMakeLists.txt | 12 ++++++++++-- docs/CMakeLists.txt | 1 + docs/Doxyfile.in | 6 +++--- docs/cmake/EnableDoxygen.cmake | 27 +++++++++++++++++++++++++++ 4 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 docs/CMakeLists.txt create mode 100644 docs/cmake/EnableDoxygen.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index b485488b3..5070e3aa5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,7 +13,7 @@ project( get_directory_property(hasParent PARENT_DIRECTORY) if(hasParent) - # Unset flags that come from Parent (ie UFS or other coupled build) + # Unset flags that come from Parent (ie UFS or other coupled build) # for potential (-r8/-r4) conflict set(CMAKE_Fortran_FLAGS "") set(CMAKE_C_FLAGS "") @@ -22,8 +22,9 @@ endif() set(MULTI_ESMF OFF CACHE BOOL "Build ww3_multi_esmf library") set(NETCDF ON CACHE BOOL "Build NetCDF programs (requires NetCDF)") -set(ENDIAN "BIG" CACHE STRING "Endianness of unformatted output files. Valid values are 'BIG', 'LITTLE', 'NATIVE'.") +set(ENDIAN "BIG" CACHE STRING "Endianness of unformatted output files. Valid values are 'BIG', 'LITTLE', 'NATIVE'.") set(EXCLUDE_FIND "" CACHE STRING "Don't try and search for these libraries (assumd to be handled by the compiler/wrapper)") +set(ENABLE_DOCS OFF CACHE BOOL "Enable building of doxygen generated documentation") # make sure all "exclude_find" entries are lower case list(TRANSFORM EXCLUDE_FIND TOLOWER) @@ -59,6 +60,13 @@ endif() add_subdirectory(model) +# Turn on doxygen documentation +if (ENABLE_DOCS) + list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/docs/cmake") + include(EnableDoxygen) + add_subdirectory(docs) +endif() + # Turn on unit testing. #include(CTest) #if(BUILD_TESTING) diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt new file mode 100644 index 000000000..7aa89edeb --- /dev/null +++ b/docs/CMakeLists.txt @@ -0,0 +1 @@ +EnableDoxygen(docs) diff --git a/docs/Doxyfile.in b/docs/Doxyfile.in index 23349c8da..93a26c5a2 100644 --- a/docs/Doxyfile.in +++ b/docs/Doxyfile.in @@ -58,7 +58,7 @@ PROJECT_LOGO = # entered, it will be relative to the location where doxygen was started. If # left blank the current directory will be used. -OUTPUT_DIRECTORY = docs +OUTPUT_DIRECTORY = @doc_output@ # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- # directories (in 2 levels) under the output directory of each output format and @@ -829,7 +829,7 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = model/src +INPUT = @src_input@ # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses @@ -2285,7 +2285,7 @@ CLASS_DIAGRAMS = NO # DIA_PATH tag allows you to specify the directory where the dia binary resides. # If left empty dia is assumed to be found in the default search path. -DIA_PATH = +DIA_PATH = # If set to YES the inheritance and collaboration graphs will hide inheritance # and usage relations if the target is undocumented or is not a class. diff --git a/docs/cmake/EnableDoxygen.cmake b/docs/cmake/EnableDoxygen.cmake new file mode 100644 index 000000000..20af91e59 --- /dev/null +++ b/docs/cmake/EnableDoxygen.cmake @@ -0,0 +1,27 @@ +# Doxygen documentation- Matt Masarik 24-Jul-2024. +function(EnableDoxygen outdir) + find_package(Doxygen REQUIRED) + if (NOT DOXYGEN_FOUND) + add_custom_target(enable_docs + COMMAND false + COMMENT "Doxygen not found") + return() + endif() + + set(src_input "${CMAKE_SOURCE_DIR}/model/src") + set(doc_output "${CMAKE_BINARY_DIR}/${outdir}") + file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/${outdir}/html) + CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/docs/Doxyfile.in + ${CMAKE_BINARY_DIR}/${outdir}/Doxyfile @ONLY) + set(DOXYGEN_GENERATE_HTML YES) + set(DOXYGEN_QUIET YES) + add_custom_target(enable_docs + COMMAND + ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/${outdir}/Doxyfile + WORKING_DIRECTORY + ${CMAKE_BINARY_DIR}/${outdir} + COMMENT + "Generate Doxygen HTML documentation") + message("-- Doxygen HTML index page: " + ${CMAKE_BINARY_DIR}/${outdir}/html/index.html) +endfunction()