[cig-commits] r21365 - seismo/2D/SPECFEM2D/trunk/src/specfem2D

xie.zhinan at geodynamics.org xie.zhinan at geodynamics.org
Wed Feb 13 11:28:22 PST 2013


Author: xie.zhinan
Date: 2013-02-13 11:28:22 -0800 (Wed, 13 Feb 2013)
New Revision: 21365

Modified:
   seismo/2D/SPECFEM2D/trunk/src/specfem2D/pml_init.F90
   seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90
Log:
rm edge effect when using pml in elastic kernel comuptation


Modified: seismo/2D/SPECFEM2D/trunk/src/specfem2D/pml_init.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/src/specfem2D/pml_init.F90	2013-02-13 19:04:16 UTC (rev 21364)
+++ seismo/2D/SPECFEM2D/trunk/src/specfem2D/pml_init.F90	2013-02-13 19:28:22 UTC (rev 21365)
@@ -56,10 +56,10 @@
 #endif
 
   integer ::  SIMULATION_TYPE,nglob_interface
-  logical, dimension(4,nspec) :: PML_interior_interface
 
   integer :: nspec,nglob,nelemabs,nspec_PML,NELEM_PML_THICKNESS
   logical :: anyabs
+  logical, dimension(4,nspec) :: PML_interior_interface
 
   integer :: ibound,ispecabs,ncorner,ispec,iglob
   integer :: i,j,k,i_coef

Modified: seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90	2013-02-13 19:04:16 UTC (rev 21364)
+++ seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90	2013-02-13 19:28:22 UTC (rev 21365)
@@ -5648,8 +5648,23 @@
 
       if(SIMULATION_TYPE == 2)then
 
+          do ispec = 1,nspec 
+            do i = 1, NGLLX
+              do j = 1, NGLLZ
+                if(elastic(ispec) .and. is_pml(ispec))then
+                  b_accel_elastic(:,ibool(i,j,ispec)) = 0.
+                  b_veloc_elastic(:,ibool(i,j,ispec)) = 0.
+                  b_displ_elastic(:,ibool(i,j,ispec)) = 0.
+                endif
+               enddo
+            enddo
+          enddo 
+
        if(PML_BOUNDARY_CONDITIONS)then
           do i = 1, nglob_interface 
+           b_accel_elastic(1,point_interface(i)) = pml_interfeace_history_accel(1,i,NSTEP-it+1)
+           b_accel_elastic(2,point_interface(i)) = pml_interfeace_history_accel(2,i,NSTEP-it+1)
+           b_accel_elastic(3,point_interface(i)) = pml_interfeace_history_accel(3,i,NSTEP-it+1)
            b_veloc_elastic(1,point_interface(i)) = pml_interfeace_history_veloc(1,i,NSTEP-it+1)
            b_veloc_elastic(2,point_interface(i)) = pml_interfeace_history_veloc(2,i,NSTEP-it+1)
            b_veloc_elastic(3,point_interface(i)) = pml_interfeace_history_veloc(3,i,NSTEP-it+1)
@@ -5709,6 +5724,12 @@
            b_accel_elastic(1,point_interface(i)) = pml_interfeace_history_accel(1,i,NSTEP-it+1)
            b_accel_elastic(2,point_interface(i)) = pml_interfeace_history_accel(2,i,NSTEP-it+1)
            b_accel_elastic(3,point_interface(i)) = pml_interfeace_history_accel(3,i,NSTEP-it+1)
+           b_veloc_elastic(1,point_interface(i)) = pml_interfeace_history_veloc(1,i,NSTEP-it+1)
+           b_veloc_elastic(2,point_interface(i)) = pml_interfeace_history_veloc(2,i,NSTEP-it+1)
+           b_veloc_elastic(3,point_interface(i)) = pml_interfeace_history_veloc(3,i,NSTEP-it+1)
+           b_displ_elastic(1,point_interface(i)) = pml_interfeace_history_displ(1,i,NSTEP-it+1)
+           b_displ_elastic(2,point_interface(i)) = pml_interfeace_history_displ(2,i,NSTEP-it+1)
+           b_displ_elastic(3,point_interface(i)) = pml_interfeace_history_displ(3,i,NSTEP-it+1) 
         enddo
        endif
 



More information about the CIG-COMMITS mailing list