[cig-commits] r22731 - seismo/2D/SPECFEM2D/trunk/src/specfem2D
xie.zhinan at geodynamics.org
xie.zhinan at geodynamics.org
Tue Aug 27 00:04:37 PDT 2013
Author: xie.zhinan
Date: 2013-08-27 00:04:36 -0700 (Tue, 27 Aug 2013)
New Revision: 22731
Modified:
seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_acoustic.f90
Log:
allow to use variable kappa in PML for acoustic simulation
Modified: seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_acoustic.f90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_acoustic.f90 2013-08-26 11:20:57 UTC (rev 22730)
+++ seismo/2D/SPECFEM2D/trunk/src/specfem2D/compute_forces_acoustic.f90 2013-08-27 07:04:36 UTC (rev 22731)
@@ -280,7 +280,8 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dx_LDDRK(i,j,ispec_PML)
endif
- dux_dxl = PML_dux_dxl(i,j) + A8 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
+ dux_dxl = 1.0_CUSTOM_REAL/k_x_store(i,j,ispec_PML) * PML_dux_dxl(i,j) &
+ + A8 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
!---------------------- A5 --------------------------
A5 = d_x_store(i,j,ispec_PML)
@@ -309,7 +310,7 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dz_LDDRK(i,j,ispec_PML)
endif
- dux_dzl = PML_dux_dzl(i,j) + A5 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
+ dux_dzl = k_x_store(i,j,ispec_PML) * PML_dux_dzl(i,j) + A5 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
else if (region_CPML(ispec) == CPML_XY_ONLY) then
!------------------------------------------------------------------------------
@@ -345,7 +346,8 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dx_LDDRK(i,j,ispec_PML)
endif
- dux_dxl = PML_dux_dxl(i,j) + A8 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
+ dux_dxl = k_z_store(i,j,ispec_PML) / k_x_store(i,j,ispec_PML) * PML_dux_dxl(i,j) &
+ + A8 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
!---------------------------- A5 ----------------------------
A5 =(k_z_store(i,j,ispec_PML) * d_x_store(i,j,ispec_PML) &
@@ -378,7 +380,8 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dz_LDDRK(i,j,ispec_PML)
endif
- dux_dzl = PML_dux_dzl(i,j) + A5 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
+ dux_dzl = k_x_store(i,j,ispec_PML) / k_z_store(i,j,ispec_PML) * PML_dux_dzl(i,j) &
+ + A5 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
else if(region_CPML(ispec) == CPML_Y_ONLY) then
@@ -412,7 +415,7 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dx_LDDRK(i,j,ispec_PML)
endif
- dux_dxl = PML_dux_dxl(i,j) + A7 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
+ dux_dxl = k_z_store(i,j,ispec_PML) * PML_dux_dxl(i,j) + A7 * rmemory_acoustic_dux_dx(i,j,ispec_PML)
!---------------------- A6 --------------------------
A6 = - d_z_store(i,j,ispec_PML) / ( k_z_store(i,j,ispec_PML) ** 2 )
@@ -440,7 +443,8 @@
beta_LDDRK(i_stage) * rmemory_acoustic_dux_dz_LDDRK(i,j,ispec_PML)
endif
- dux_dzl = PML_dux_dzl(i,j) + A6 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
+ dux_dzl = 1.0_CUSTOM_REAL/k_z_store(i,j,ispec_PML) * PML_dux_dzl(i,j) &
+ + A6 * rmemory_acoustic_dux_dz(i,j,ispec_PML)
endif
endif
More information about the CIG-COMMITS
mailing list