[cig-commits] r17862 - in seismo/3D/SPECFEM3D/trunk: examples/meshfem3D_examples/many_interfaces src/generate_databases src/shared

danielpeter at geodynamics.org danielpeter at geodynamics.org
Mon Feb 14 15:01:54 PST 2011


Author: danielpeter
Date: 2011-02-14 15:01:54 -0800 (Mon, 14 Feb 2011)
New Revision: 17862

Modified:
   seismo/3D/SPECFEM3D/trunk/examples/meshfem3D_examples/many_interfaces/Mesh_Par_file
   seismo/3D/SPECFEM3D/trunk/src/generate_databases/generate_databases.f90
   seismo/3D/SPECFEM3D/trunk/src/generate_databases/memory_eval.f90
   seismo/3D/SPECFEM3D/trunk/src/shared/check_mesh_resolution.f90
Log:
fixes bug in minimum period calculation in check_mesh_resolution.f90

Modified: seismo/3D/SPECFEM3D/trunk/examples/meshfem3D_examples/many_interfaces/Mesh_Par_file
===================================================================
--- seismo/3D/SPECFEM3D/trunk/examples/meshfem3D_examples/many_interfaces/Mesh_Par_file	2011-02-14 22:33:26 UTC (rev 17861)
+++ seismo/3D/SPECFEM3D/trunk/examples/meshfem3D_examples/many_interfaces/Mesh_Par_file	2011-02-14 23:01:54 UTC (rev 17862)
@@ -30,8 +30,8 @@
 NZ_DOUGLING_2                   = 145
 
 # create mesh files for visualisation or further checking
-CREATE_ABAQUS_FILES             = .true.
-CREATE_DX_FILES                 = .true.
+CREATE_ABAQUS_FILES             = .false.
+CREATE_DX_FILES                 = .false.
 
 # path to store the databases files
 LOCAL_PATH                      = ../in_out_files/DATABASES_MPI

Modified: seismo/3D/SPECFEM3D/trunk/src/generate_databases/generate_databases.f90
===================================================================
--- seismo/3D/SPECFEM3D/trunk/src/generate_databases/generate_databases.f90	2011-02-14 22:33:26 UTC (rev 17861)
+++ seismo/3D/SPECFEM3D/trunk/src/generate_databases/generate_databases.f90	2011-02-14 23:01:54 UTC (rev 17862)
@@ -798,10 +798,10 @@
   allocate(zstore(NGLLX,NGLLY,NGLLZ,nspec),stat=ier)
   if(ier /= 0) call exit_MPI(myrank,'not enough memory to allocate arrays')
 
-  call memory_eval_mesher(myrank,nspec,npointot,nnodes_ext_mesh,&
+  call memory_eval_mesher(myrank,nspec,npointot,nnodes_ext_mesh, &
                         nelmnts_ext_mesh,nmat_ext_mesh,num_interfaces_ext_mesh, &
-                        max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax,&
-                        nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top,&
+                        max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax, &
+                        nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top, &
                         max_static_memory_size_request)
 
   max_static_memory_size = max_static_memory_size_request

Modified: seismo/3D/SPECFEM3D/trunk/src/generate_databases/memory_eval.f90
===================================================================
--- seismo/3D/SPECFEM3D/trunk/src/generate_databases/memory_eval.f90	2011-02-14 22:33:26 UTC (rev 17861)
+++ seismo/3D/SPECFEM3D/trunk/src/generate_databases/memory_eval.f90	2011-02-14 23:01:54 UTC (rev 17862)
@@ -151,16 +151,20 @@
 
 ! compute the approximate amount of static memory needed to run the mesher
 
- subroutine memory_eval_mesher(myrank,nspec,npointot,nnodes_ext_mesh,nelmnts_ext_mesh,nmat_ext_mesh,num_interfaces_ext_mesh, &
-              max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax,nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top,&
+ subroutine memory_eval_mesher(myrank,nspec,npointot,nnodes_ext_mesh, &
+              nelmnts_ext_mesh,nmat_ext_mesh,num_interfaces_ext_mesh, &
+              max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax, &
+              nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top, &
               static_memory_size_request)
 
   implicit none
 
   include "constants.h"
 
-  integer :: myrank,nspec,npointot,nnodes_ext_mesh,nelmnts_ext_mesh,nmat_ext_mesh,num_interfaces_ext_mesh, &
-           max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax,nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top
+  integer :: myrank,nspec,npointot,nnodes_ext_mesh,nelmnts_ext_mesh, &
+           nmat_ext_mesh,num_interfaces_ext_mesh, &
+           max_interface_size_ext_mesh,nspec2D_xmin,nspec2D_xmax, &
+           nspec2D_ymin,nspec2D_ymax,nspec2D_bottom,nspec2D_top
 
   integer :: static_memory_size_request
 
@@ -169,9 +173,11 @@
 ! memory usage, in generate_database() routine so far
   static_memory_size = NGLLX*NGLLY*NGLLZ*nspec*4 + 3*NGLLX*NGLLY*NGLLZ*nspec*8 &
         + NDIM*nnodes_ext_mesh*8 + ESIZE*nelmnts_ext_mesh*4 + 2*nelmnts_ext_mesh*4 &
-        + 5*nmat_ext_mesh*8 + 3*num_interfaces_ext_mesh + 6*max_interface_size_ext_mesh*num_interfaces_ext_mesh*4 &
+        + 5*nmat_ext_mesh*8 + 3*num_interfaces_ext_mesh &
+        + 6*max_interface_size_ext_mesh*num_interfaces_ext_mesh*4 &
         + NGLLX*NGLLX*max_interface_size_ext_mesh*num_interfaces_ext_mesh*4 &
-        + nspec2D_xmin*20 + nspec2D_xmax*20 + nspec2D_ymin*20 + nspec2D_ymax*20 + nspec2D_bottom*20 + nspec2D_top*20
+        + nspec2D_xmin*20 + nspec2D_xmax*20 + nspec2D_ymin*20 &
+        + nspec2D_ymax*20 + nspec2D_bottom*20 + nspec2D_top*20
 
 ! memory usage, in create_regions_mesh_ext() routine requested approximately
   static_memory_size_request =   &
@@ -186,9 +192,11 @@
 
   if(myrank == 0) then
     write(IMAIN,*)
-    write(IMAIN,*) '  minimum memory used so far     : ',static_memory_size / 1024. / 1024.,&
+    write(IMAIN,*) '  minimum memory used so far     : ', &
+                  static_memory_size / 1024. / 1024., &
                    'MB per process'
-    write(IMAIN,*) '  minimum total memory requested : ',(static_memory_size+static_memory_size_request)/1024./1024.,&
+    write(IMAIN,*) '  minimum total memory requested : ', &
+                  (static_memory_size+static_memory_size_request)/1024./1024., &
                    'MB per process'
     write(IMAIN,*)
   endif

Modified: seismo/3D/SPECFEM3D/trunk/src/shared/check_mesh_resolution.f90
===================================================================
--- seismo/3D/SPECFEM3D/trunk/src/shared/check_mesh_resolution.f90	2011-02-14 22:33:26 UTC (rev 17861)
+++ seismo/3D/SPECFEM3D/trunk/src/shared/check_mesh_resolution.f90	2011-02-14 23:01:54 UTC (rev 17862)
@@ -186,21 +186,26 @@
 
 ! determines global min/max values from all cpu partitions
   if( DT_PRESENT ) then
+    ! courant number
     cmax = cmax_glob
     call max_all_cr(cmax,cmax_glob)
   endif
 
+  ! minimum period 
   pmax = pmax_glob
-  call min_all_cr(pmax,pmax_glob)
+  call max_all_cr(pmax,pmax_glob)
 
+  ! time step
   dt_suggested = dt_suggested_glob
   call min_all_cr(dt_suggested,dt_suggested_glob)
 
+  ! Vp velocity
   vpmin = vpmin_glob
   vpmax = vpmax_glob
   call min_all_cr(vpmin,vpmin_glob)
   call max_all_cr(vpmax,vpmax_glob)
 
+  ! Vs velocity
   vsmin = vsmin_glob
   if( has_vs_zero ) vsmin = 0.0
 
@@ -208,6 +213,7 @@
   call min_all_cr(vsmin,vsmin_glob)
   call max_all_cr(vsmax,vsmax_glob)
 
+  ! GLL point distance
   distance_min = distance_min_glob
   distance_max = distance_max_glob
   call min_all_cr(distance_min,distance_min_glob)



More information about the CIG-COMMITS mailing list