[cig-commits] r21932 - seismo/3D/SPECFEM3D/trunk/src/generate_databases

xie.zhinan at geodynamics.org xie.zhinan at geodynamics.org
Thu Apr 25 01:41:24 PDT 2013


Author: xie.zhinan
Date: 2013-04-25 01:41:23 -0700 (Thu, 25 Apr 2013)
New Revision: 21932

Modified:
   seismo/3D/SPECFEM3D/trunk/src/generate_databases/pml_set_local_dampingcoeff.f90
Log:
clear the code a little and add one comment


Modified: seismo/3D/SPECFEM3D/trunk/src/generate_databases/pml_set_local_dampingcoeff.f90
===================================================================
--- seismo/3D/SPECFEM3D/trunk/src/generate_databases/pml_set_local_dampingcoeff.f90	2013-04-25 08:34:10 UTC (rev 21931)
+++ seismo/3D/SPECFEM3D/trunk/src/generate_databases/pml_set_local_dampingcoeff.f90	2013-04-25 08:41:23 UTC (rev 21932)
@@ -98,15 +98,8 @@
 
   alpha_store = 0._CUSTOM_REAL
 
-  if(ELASTIC_SIMULATION .and. .not. ACOUSTIC_SIMULATION)then
-    ALPHA_MAX_PML = PI*f0_FOR_PML*1.0  ! from Festa and Vilotte (2005)
-  else if(ACOUSTIC_SIMULATION .and. .not. ELASTIC_SIMULATION)then
-    ALPHA_MAX_PML = PI*f0_FOR_PML*1.0
-  else if(ELASTIC_SIMULATION .and. ACOUSTIC_SIMULATION)then
-    ALPHA_MAX_PML = PI*f0_FOR_PML*1.0
-  else
-    stop 'Currently PML is not implemented for POROELASTIC_SIMULATION'
-  endif
+! from Festa and Vilotte (2005)
+  ALPHA_MAX_PML = PI*f0_FOR_PML
 
   x_min = minval(xstore(:))
   x_max = maxval(xstore(:))
@@ -1657,7 +1650,9 @@
 
   ! gets damping profile
   if( NPOWER >= 1 ) then
-     ! INRIA research report section 6.1:  http://hal.inria.fr/docs/00/07/32/19/PDF/RR-3471.pdf
+     ! In INRIA research report section 6.1:  http://hal.inria.fr/docs/00/07/32/19/PDF/RR-3471.pdf
+     ! pml_damping_profile_l = - ((NPOWER + 1) * vp * log(CPML_Rcoef) / (2.d0 * delta)) * dist**(NPOWER)
+     ! due to tests it is more accurate to use following definition in case NPOWER = 1 defined in constants.h.in 
      pml_damping_profile_l = - ((NPOWER + 1) * vp * log(CPML_Rcoef) / (2.d0 * delta)) * dist**(1.2*NPOWER)
   else
      call exit_mpi(myrank,'C-PML error: NPOWER must be greater than or equal to 1')



More information about the CIG-COMMITS mailing list