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

xie.zhinan at geodynamics.org xie.zhinan at geodynamics.org
Mon Oct 8 06:20:19 PDT 2012


Author: xie.zhinan
Date: 2012-10-08 06:20:18 -0700 (Mon, 08 Oct 2012)
New Revision: 20810

Modified:
   seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_viscoelastic.F90
Log:
fixed a bug when ATTENUATION_VISCOELASTIC_SOLID is .true., since currently we use non-symmetric form of stress tensor.



Modified: seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_viscoelastic.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_viscoelastic.F90	2012-10-06 18:53:15 UTC (rev 20809)
+++ seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_viscoelastic.F90	2012-10-08 13:20:18 UTC (rev 20810)
@@ -751,7 +751,16 @@
                  sigma_xz = sigma_xz + mul_relaxed_viscoelastic * e13_sum
                  sigma_zz = sigma_zz + (lambdal_relaxed_viscoelastic + mul_relaxed_viscoelastic) * e1_sum &
                                      - TWO * mul_relaxed_viscoelastic * e11_sum
+                 sigma_zx = sigma_xz
 
+                 if(PML_BOUNDARY_CONDITIONS .and. is_PML(ispec)) then
+                     ispec_PML=spec_to_PML(ispec)
+                     sigma_xx = lambdaplus2mu_unrelaxed_elastic*dux_dxl + lambdal_unrelaxed_elastic*PML_duz_dzl(i,j,ispec_PML)
+                     sigma_zz = lambdaplus2mu_unrelaxed_elastic*duz_dzl + lambdal_unrelaxed_elastic*PML_dux_dxl(i,j,ispec_PML)
+                     sigma_zx = mul_unrelaxed_elastic * (PML_duz_dxl(i,j,ispec_PML) + dux_dzl)
+                     sigma_xz = mul_unrelaxed_elastic * (PML_dux_dzl(i,j,ispec_PML) + duz_dxl)
+                 endif
+
               else
 
                  ! no attenuation



More information about the CIG-COMMITS mailing list