[cig-commits] r19306 - in seismo/3D/SPECFEM3D_GLOBE/trunk: . doc/USER_MANUAL setup src/auxiliaries src/specfem3D

danielpeter at geodynamics.org danielpeter at geodynamics.org
Tue Dec 20 10:37:21 PST 2011


Author: danielpeter
Date: 2011-12-20 10:37:21 -0800 (Tue, 20 Dec 2011)
New Revision: 19306

Modified:
   seismo/3D/SPECFEM3D_GLOBE/trunk/configure
   seismo/3D/SPECFEM3D_GLOBE/trunk/configure.ac
   seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.pdf
   seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex
   seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/auxiliaries/check_buffers_faces_chunks.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/assemble_MPI_vector.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/read_mesh_databases.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/write_output_SAC.f90
Log:
updates version to 5.1.2

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/configure
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/configure	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/configure	2011-12-20 18:37:21 UTC (rev 19306)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.67 for Specfem3D Globe 5.1.1.
+# Generated by GNU Autoconf 2.67 for Specfem3D Globe 5.1.2.
 #
 # Report bugs to <jtromp AT princeton.edu>.
 #
@@ -552,8 +552,8 @@
 # Identity of this package.
 PACKAGE_NAME='Specfem3D Globe'
 PACKAGE_TARNAME='Specfem3DGlobe'
-PACKAGE_VERSION='5.1.1'
-PACKAGE_STRING='Specfem3D Globe 5.1.1'
+PACKAGE_VERSION='5.1.2'
+PACKAGE_STRING='Specfem3D Globe 5.1.2'
 PACKAGE_BUGREPORT='jtromp AT princeton.edu'
 PACKAGE_URL=''
 
@@ -1223,7 +1223,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Specfem3D Globe 5.1.1 to adapt to many kinds of systems.
+\`configure' configures Specfem3D Globe 5.1.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1284,7 +1284,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Specfem3D Globe 5.1.1:";;
+     short | recursive ) echo "Configuration of Specfem3D Globe 5.1.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1382,7 +1382,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Specfem3D Globe configure 5.1.1
+Specfem3D Globe configure 5.1.2
 generated by GNU Autoconf 2.67
 
 Copyright (C) 2010 Free Software Foundation, Inc.
@@ -1722,7 +1722,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Specfem3D Globe $as_me 5.1.1, which was
+It was created by Specfem3D Globe $as_me 5.1.2, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   $ $0 $@
@@ -5551,7 +5551,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Specfem3D Globe $as_me 5.1.1, which was
+This file was extended by Specfem3D Globe $as_me 5.1.2, which was
 generated by GNU Autoconf 2.67.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -5613,7 +5613,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Specfem3D Globe config.status 5.1.1
+Specfem3D Globe config.status 5.1.2
 configured by $0, generated by GNU Autoconf 2.67,
   with options \\"\$ac_cs_config\\"
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/configure.ac
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/configure.ac	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/configure.ac	2011-12-20 18:37:21 UTC (rev 19306)
@@ -10,7 +10,7 @@
 
 
 AC_PREREQ(2.61)
-AC_INIT([Specfem3D Globe], [5.1.1], [jtromp AT princeton.edu], [Specfem3DGlobe])
+AC_INIT([Specfem3D Globe], [5.1.2], [jtromp AT princeton.edu], [Specfem3DGlobe])
 AC_CONFIG_SRCDIR([src/specfem3D/specfem3D.F90])
 AC_CONFIG_HEADER([setup/config.h])
 AC_CONFIG_MACRO_DIR([m4])

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.pdf
===================================================================
(Binary files differ)

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex	2011-12-20 18:37:21 UTC (rev 19306)
@@ -236,9 +236,9 @@
 In the directory in which you want to install the package, type
 
 \begin{lyxcode}
-tar~-zxvf~SPECFEM3D\_GLOBE\_V5.1.1.tar.gz
+tar~-zxvf~SPECFEM3D\_GLOBE\_V5.1.2.tar.gz
 \end{lyxcode}
-The directory \texttt{SPECFEM3D\_GLOBE\_V5.1.1} will then contain
+The directory \texttt{SPECFEM3D\_GLOBE\_V5.1.2} will then contain
 the source code.\\
 
 We recommend that you add {\texttt{ulimit -S -s unlimited}} to your {\texttt{.bash\_profile}} file and/or {\texttt{limit stacksize unlimited }} to your {\texttt{.cshrc}} file to suppress any potential limit to the size of the Unix stack.\\
@@ -357,7 +357,7 @@
 
 Finally, before compiling, make sure that the subdirectories \texttt{obj},
 \texttt{bak} and \texttt{OUTPUT\_FILES} exist within the directory
-with the source code (\texttt{SPECFEM3D\_GLOBE\_V5.1.1}). The \texttt{go\_mesher}
+with the source code (\texttt{SPECFEM3D\_GLOBE\_V5.1.2}). The \texttt{go\_mesher}
 script discussed below automatically takes care of creating the \texttt{OUTPUT\_FILES}
 directory.
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in	2011-12-20 18:37:21 UTC (rev 19306)
@@ -54,7 +54,7 @@
 !*********************************************************************************************************
 ! added these parameters for the future GPU version of the solver with mesh coloring
 
-! sort outer elements first and then inner elements 
+! sort outer elements first and then inner elements
 ! in order to use non blocking MPI to overlap communications
   logical, parameter :: SORT_MESH_INNER_OUTER = .true.
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/auxiliaries/check_buffers_faces_chunks.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/auxiliaries/check_buffers_faces_chunks.f90	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/auxiliaries/check_buffers_faces_chunks.f90	2011-12-20 18:37:21 UTC (rev 19306)
@@ -236,17 +236,17 @@
 
 ! check all the points based upon their coordinates
   do ipoin2D = 1,npoin2D_sender
-  read(34,*) iboolsend,xsend,ysend,zsend
-  read(35,*) iboolreceive,xreceive,yreceive,zreceive
+    read(34,*) iboolsend,xsend,ysend,zsend
+    read(35,*) iboolreceive,xreceive,yreceive,zreceive
 
-  diff = dmax1(dabs(xsend-xreceive),dabs(ysend-yreceive),dabs(zsend-zreceive))
-  if(diff > 0.0000001d0) then
-    print *,'different : ',ipoin2D,iboolsend,iboolreceive,diff
-    print *,'xsend,xreceive = ',xsend,xreceive
-    print *,'ysend,yreceive = ',ysend,yreceive
-    print *,'zsend,zreceive = ',zsend,zreceive
-    stop 'error: different'
-  endif
+    diff = dmax1(dabs(xsend-xreceive),dabs(ysend-yreceive),dabs(zsend-zreceive))
+    if(diff > 0.0000001d0) then
+      print *,'different : ',ipoin2D,iboolsend,iboolreceive,diff
+      print *,'xsend,xreceive = ',xsend,xreceive
+      print *,'ysend,yreceive = ',ysend,yreceive
+      print *,'zsend,zreceive = ',zsend,zreceive
+      stop 'error: different'
+    endif
 
   enddo
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/assemble_MPI_vector.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/assemble_MPI_vector.f90	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/assemble_MPI_vector.f90	2011-12-20 18:37:21 UTC (rev 19306)
@@ -461,14 +461,15 @@
 
   icount_faces = 0
   do imsg = 1,NUMMSGS_FACES
-  if(myrank==iprocfrom_faces(imsg) .or. myrank==iprocto_faces(imsg)) icount_faces = icount_faces + 1
-  if(myrank==iprocto_faces(imsg)) then
-    sender = iprocfrom_faces(imsg)
+    if(myrank==iprocfrom_faces(imsg) .or. myrank==iprocto_faces(imsg)) icount_faces = icount_faces + 1
 
+    if(myrank==iprocto_faces(imsg)) then
+      sender = iprocfrom_faces(imsg)
+
 ! size of buffers is the sum of two sizes because we handle two regions in the same MPI call
-    npoin2D_chunks_all = npoin2D_faces_crust_mantle(icount_faces) + npoin2D_faces_inner_core(icount_faces)
+      npoin2D_chunks_all = npoin2D_faces_crust_mantle(icount_faces) + npoin2D_faces_inner_core(icount_faces)
 
-    call MPI_IRECV(buffer_received_faces_vector(1,1,icount_faces),NDIM*npoin2D_chunks_all,CUSTOM_MPI_TYPE,sender, &
+      call MPI_IRECV(buffer_received_faces_vector(1,1,icount_faces),NDIM*npoin2D_chunks_all,CUSTOM_MPI_TYPE,sender, &
               itag,MPI_COMM_WORLD,request_receive_array(icount_faces),ier)
 
 !   do ipoin2D = 1,npoin2D_faces_crust_mantle(icount_faces)
@@ -495,7 +496,7 @@
 !          buffer_received_faces_vector(3,ioffset + ipoin2D,icount_faces)
 !   enddo
 
-  endif
+    endif
   enddo
 
 !---- put slices in send mode
@@ -503,6 +504,7 @@
   icount_faces = 0
   do imsg = 1,NUMMSGS_FACES
   if(myrank==iprocfrom_faces(imsg) .or. myrank==iprocto_faces(imsg)) icount_faces = icount_faces + 1
+
   if(myrank==iprocfrom_faces(imsg)) then
     receiver = iprocto_faces(imsg)
 
@@ -510,18 +512,24 @@
     npoin2D_chunks_all = npoin2D_faces_crust_mantle(icount_faces) + npoin2D_faces_inner_core(icount_faces)
 
     do ipoin2D = 1,npoin2D_faces_crust_mantle(icount_faces)
-      buffer_send_faces_vector(1,ipoin2D,icount_faces) = accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces))
-      buffer_send_faces_vector(2,ipoin2D,icount_faces) = accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces))
-      buffer_send_faces_vector(3,ipoin2D,icount_faces) = accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(1,ipoin2D,icount_faces) = &
+        accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(2,ipoin2D,icount_faces) = &
+        accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(3,ipoin2D,icount_faces) = &
+        accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces))
     enddo
 
 ! the buffer for the inner core starts right after the buffer for the crust and mantle
     ioffset = npoin2D_faces_crust_mantle(icount_faces)
 
     do ipoin2D = 1,npoin2D_faces_inner_core(icount_faces)
-      buffer_send_faces_vector(1,ioffset + ipoin2D,icount_faces) = accel_inner_core(1,iboolfaces_inner_core(ipoin2D,icount_faces))
-      buffer_send_faces_vector(2,ioffset + ipoin2D,icount_faces) = accel_inner_core(2,iboolfaces_inner_core(ipoin2D,icount_faces))
-      buffer_send_faces_vector(3,ioffset + ipoin2D,icount_faces) = accel_inner_core(3,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(1,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(1,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(2,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(2,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(3,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(3,iboolfaces_inner_core(ipoin2D,icount_faces))
     enddo
 
     call MPI_ISEND(buffer_send_faces_vector(1,1,icount_faces),NDIM*npoin2D_chunks_all,CUSTOM_MPI_TYPE,receiver,itag, &
@@ -561,11 +569,14 @@
 
     do ipoin2D = 1,npoin2D_faces_crust_mantle(icount_faces)
       accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
-         accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces)) + buffer_received_faces_vector(1,ipoin2D,icount_faces)
+         accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces)) &
+         + buffer_received_faces_vector(1,ipoin2D,icount_faces)
       accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
-         accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces)) + buffer_received_faces_vector(2,ipoin2D,icount_faces)
+         accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces)) &
+         + buffer_received_faces_vector(2,ipoin2D,icount_faces)
       accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
-         accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces)) + buffer_received_faces_vector(3,ipoin2D,icount_faces)
+         accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces)) &
+         + buffer_received_faces_vector(3,ipoin2D,icount_faces)
     enddo
 
 ! the buffer for the inner core starts right after the buffer for the crust and mantle
@@ -638,18 +649,24 @@
     npoin2D_chunks_all = npoin2D_faces_crust_mantle(icount_faces) + npoin2D_faces_inner_core(icount_faces)
 
     do ipoin2D = 1,npoin2D_faces_crust_mantle(icount_faces)
-      buffer_send_faces_vector(1,ipoin2D,icount_faces) = accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces))
-      buffer_send_faces_vector(2,ipoin2D,icount_faces) = accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces))
-      buffer_send_faces_vector(3,ipoin2D,icount_faces) = accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(1,ipoin2D,icount_faces) = &
+        accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(2,ipoin2D,icount_faces) = &
+        accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces))
+      buffer_send_faces_vector(3,ipoin2D,icount_faces) = &
+        accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces))
     enddo
 
 ! the buffer for the inner core starts right after the buffer for the crust and mantle
     ioffset = npoin2D_faces_crust_mantle(icount_faces)
 
     do ipoin2D = 1,npoin2D_faces_inner_core(icount_faces)
-      buffer_send_faces_vector(1,ioffset + ipoin2D,icount_faces) = accel_inner_core(1,iboolfaces_inner_core(ipoin2D,icount_faces))
-      buffer_send_faces_vector(2,ioffset + ipoin2D,icount_faces) = accel_inner_core(2,iboolfaces_inner_core(ipoin2D,icount_faces))
-      buffer_send_faces_vector(3,ioffset + ipoin2D,icount_faces) = accel_inner_core(3,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(1,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(1,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(2,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(2,iboolfaces_inner_core(ipoin2D,icount_faces))
+      buffer_send_faces_vector(3,ioffset + ipoin2D,icount_faces) = &
+        accel_inner_core(3,iboolfaces_inner_core(ipoin2D,icount_faces))
     enddo
 
     call MPI_ISEND(buffer_send_faces_vector(1,1,icount_faces),NDIM*npoin2D_chunks_all,CUSTOM_MPI_TYPE,receiver,itag, &
@@ -687,9 +704,12 @@
   if(myrank==iprocfrom_faces(imsg) .or. myrank==iprocto_faces(imsg)) icount_faces = icount_faces + 1
   if(myrank==iprocfrom_faces(imsg)) then
     do ipoin2D = 1,npoin2D_faces_crust_mantle(icount_faces)
-      accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = buffer_received_faces_vector(1,ipoin2D,icount_faces)
-      accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = buffer_received_faces_vector(2,ipoin2D,icount_faces)
-      accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = buffer_received_faces_vector(3,ipoin2D,icount_faces)
+      accel_crust_mantle(1,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
+        buffer_received_faces_vector(1,ipoin2D,icount_faces)
+      accel_crust_mantle(2,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
+        buffer_received_faces_vector(2,ipoin2D,icount_faces)
+      accel_crust_mantle(3,iboolfaces_crust_mantle(ipoin2D,icount_faces)) = &
+        buffer_received_faces_vector(3,ipoin2D,icount_faces)
     enddo
 
 ! the buffer for the inner core starts right after the buffer for the crust and mantle
@@ -811,15 +831,21 @@
     receiver = iproc_master_corners(imsg)
 
     do ipoin1D = 1,NGLOB1D_RADIAL_crust_mantle
-      buffer_send_chunkcorn_vector(1,ipoin1D) = accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(2,ipoin1D) = accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(3,ipoin1D) = accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(1,ipoin1D) = &
+        accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(2,ipoin1D) = &
+        accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(3,ipoin1D) = &
+        accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners))
     enddo
 
     do ipoin1D = 1,NGLOB1D_RADIAL_inner_core
-      buffer_send_chunkcorn_vector(1,ioffset + ipoin1D) = accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(2,ioffset + ipoin1D) = accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(3,ioffset + ipoin1D) = accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(1,ioffset + ipoin1D) = &
+        accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(2,ioffset + ipoin1D) = &
+        accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(3,ioffset + ipoin1D) = &
+        accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners))
     enddo
 
     call MPI_SEND(buffer_send_chunkcorn_vector,NDIM*NGLOB1D_RADIAL_all,CUSTOM_MPI_TYPE,receiver,itag,MPI_COMM_WORLD,ier)
@@ -841,15 +867,21 @@
           CUSTOM_MPI_TYPE,sender,itag,MPI_COMM_WORLD,msg_status,ier)
 
     do ipoin1D = 1,NGLOB1D_RADIAL_crust_mantle
-      accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(1,ipoin1D)
-      accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(2,ipoin1D)
-      accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(3,ipoin1D)
+      accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(1,ipoin1D)
+      accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(2,ipoin1D)
+      accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(3,ipoin1D)
     enddo
 
     do ipoin1D = 1,NGLOB1D_RADIAL_inner_core
-      accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(1,ioffset + ipoin1D)
-      accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(2,ioffset + ipoin1D)
-      accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners)) = buffer_recv_chunkcorn_vector(3,ioffset + ipoin1D)
+      accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(1,ioffset + ipoin1D)
+      accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(2,ioffset + ipoin1D)
+      accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners)) = &
+        buffer_recv_chunkcorn_vector(3,ioffset + ipoin1D)
     enddo
 
   endif
@@ -858,15 +890,21 @@
   if(myrank==iproc_master_corners(imsg)) then
 
     do ipoin1D = 1,NGLOB1D_RADIAL_crust_mantle
-      buffer_send_chunkcorn_vector(1,ipoin1D) = accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(2,ipoin1D) = accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(3,ipoin1D) = accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(1,ipoin1D) = &
+        accel_crust_mantle(1,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(2,ipoin1D) = &
+        accel_crust_mantle(2,iboolcorner_crust_mantle(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(3,ipoin1D) = &
+        accel_crust_mantle(3,iboolcorner_crust_mantle(ipoin1D,icount_corners))
     enddo
 
     do ipoin1D = 1,NGLOB1D_RADIAL_inner_core
-      buffer_send_chunkcorn_vector(1,ioffset + ipoin1D) = accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(2,ioffset + ipoin1D) = accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners))
-      buffer_send_chunkcorn_vector(3,ioffset + ipoin1D) = accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(1,ioffset + ipoin1D) = &
+        accel_inner_core(1,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(2,ioffset + ipoin1D) = &
+        accel_inner_core(2,iboolcorner_inner_core(ipoin1D,icount_corners))
+      buffer_send_chunkcorn_vector(3,ioffset + ipoin1D) = &
+        accel_inner_core(3,iboolcorner_inner_core(ipoin1D,icount_corners))
     enddo
 
 ! send to worker #1

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/read_mesh_databases.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/read_mesh_databases.f90	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/read_mesh_databases.f90	2011-12-20 18:37:21 UTC (rev 19306)
@@ -459,6 +459,11 @@
   ! total number of messages corresponding to these common faces
   NUMMSGS_FACES = NPROC_ONE_DIRECTION*NUM_FACES*NUM_MSG_TYPES
 
+  ! debug checks with compiled value
+  !if( NUMMSGS_FACES /= NUMMSGS_FACES_VAL ) then
+  !  print*,'check: NUMMSGS_FACES',NUMMSGS_FACES,NUMMSGS_FACES_VAL
+  !  stop 'error NUMMSGS_FACES_VAL, please recompile solver'
+  !endif
 
   ! read 2-D addressing for summation between slices with MPI
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/write_output_SAC.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/write_output_SAC.f90	2011-12-20 18:04:26 UTC (rev 19305)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/write_output_SAC.f90	2011-12-20 18:37:21 UTC (rev 19306)
@@ -335,19 +335,21 @@
   KCMPNM = chn(1:3)           ! 3A8
   KNETWK = network_name(irec) !  A6
 
-  ! KHOLE slot represents SEED location IDs. Based on the IRIS convention, S1 and S3 are assigned to 1D and 3D seismograms, respectively.
-  ! If a model is a combination of 1D and 3D models (e.g., 3D mantle with 1D crust), it will be considered as 3D. 
-  ! Currently, the decision is made based on model names given in Par_file assuming that all 1D model names start with "1D". 
-  ! Ebru, December 1, 2011  
+  ! KHOLE slot represents SEED location IDs.
+  ! Based on the IRIS convention, S1 and S3 are assigned to 1D and 3D seismograms, respectively.
+  ! If a model is a combination of 1D and 3D models (e.g., 3D mantle with 1D crust), it will be considered as 3D.
+  ! Currently, the decision is made based on model names given in Par_file assuming that
+  ! all 1D model names start with "1D".
+  ! Ebru, December 1, 2011
 
   KHOLE = 'S3'
   if(trim(MODEL(1:2)) == "1D") KHOLE = 'S1'
 
   ! indicates SEM synthetics
   ! by Ebru
-  KUSER0 = 'SY'          ! Network code assigned by IRIS for synthetic seismograms 
-  KUSER1 = 'SEM5.1.1'
-  KUSER2 = 'Tiger' ! aka. awesome (princeton) tiger version :)
+  KUSER0 = 'SY'          ! Network code assigned by IRIS for synthetic seismograms
+  KUSER1 = 'SEM5.1.2'
+  KUSER2 = 'Tiger'       ! year of the tiger version :)
 
   !KUSER0 = 'PDE_LAT_'          !  A8
   !KUSER1 = 'PDE_LON_'          !  A8



More information about the CIG-COMMITS mailing list