[cig-commits] r21415 - in seismo/2D/SPECFEM2D/trunk: EXAMPLES/acoustic_poroelastic src/specfem2D
cmorency at geodynamics.org
cmorency at geodynamics.org
Wed Feb 27 11:23:07 PST 2013
Author: cmorency
Date: 2013-02-27 11:23:06 -0800 (Wed, 27 Feb 2013)
New Revision: 21415
Modified:
seismo/2D/SPECFEM2D/trunk/EXAMPLES/acoustic_poroelastic/Par_file_acoustic_poroelastic
seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90
Log:
Fixed viscous attenuation for poroelastic media to suppress the error on inversion of the permeability matrix in
specfem2D.f90.
Modified some parameters in Par_file_acoustic_poroelastic so users can turn ATTENUATION_PORO_FLUID_PART on or off to use or not viscous attenuation.
Modified: seismo/2D/SPECFEM2D/trunk/EXAMPLES/acoustic_poroelastic/Par_file_acoustic_poroelastic
===================================================================
--- seismo/2D/SPECFEM2D/trunk/EXAMPLES/acoustic_poroelastic/Par_file_acoustic_poroelastic 2013-02-27 18:49:34 UTC (rev 21414)
+++ seismo/2D/SPECFEM2D/trunk/EXAMPLES/acoustic_poroelastic/Par_file_acoustic_poroelastic 2013-02-27 19:23:06 UTC (rev 21415)
@@ -19,14 +19,14 @@
ATTENUATION_VISCOELASTIC_SOLID = .false. # turn attenuation (viscoelasticity) on or off for non-poroelastic solid parts of the model
ATTENUATION_PORO_FLUID_PART = .false. # turn viscous attenuation on or off for the fluid part of poroelastic parts of the model
Q0 = 1 # quality factor for viscous attenuation
-freq0 = 1000 # frequency for viscous attenuation
+freq0 = 100 # frequency for viscous attenuation
p_sv = .true. # set the type of calculation (P-SV or SH/membrane waves)
# time step parameters
nt = 2500 # total number of time steps
deltat = 4.d-4 # duration of a time step (see section "How to choose the time step" of the manual for how to do this)
USER_T0 = 0.0d0 # use this t0 as earliest starting time rather than the automatically calculated one
-time_stepping_scheme = 2 # 1 = Newmark (2nd order), 2 = LDDRK4-6 (4th-order 6-stage low storage Runge-Kutta), 3 = classical 4th-order 4-stage Runge-Kutta
+time_stepping_scheme = 1 # 1 = Newmark (2nd order), 2 = LDDRK4-6 (4th-order 6-stage low storage Runge-Kutta), 3 = classical 4th-order 4-stage Runge-Kutta
# source parameters
NSOURCES = 1 # number of sources [source info read in CMTSOLUTION file]
@@ -109,7 +109,7 @@
# III: (model_number 3 rhos rhof phi c kxx kxz kzz Ks Kf Kfr etaf mufr Qmu).
# For istropic elastic/acoustic material use I and set Vs to zero to make a given model acoustic, for anisotropic elastic use II,
# and for isotropic poroelastic material use III. The mesh can contain acoustic, elastic, and poroelastic models simultaneously.
-1 3 2650.d0 880.d0 0.3d0 1.2 1d-9 0.d0 1d-9 1.22d10 1.985d9 9.6d9 10d-4 0.0001 9999999999
+1 3 2650.d0 880.d0 0.3d0 1.2 1d-9 0.d0 1d-9 1.22d10 1.985d9 9.6d9 10d-4 0.001 9999999999
2 1 1020.d0 1500.d0 0.d0 0 0 10.d0 10.d0 0 0 0 0 0 0
# external mesh or not
Modified: seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90 2013-02-27 18:49:34 UTC (rev 21414)
+++ seismo/2D/SPECFEM2D/trunk/src/specfem2D/specfem2D.F90 2013-02-27 19:23:06 UTC (rev 21415)
@@ -4941,6 +4941,8 @@
! loop over spectral elements
do ispec = 1,nspec
+ if(poroelastic(ispec) .and. poroelastcoef(2,2,kmato(ispec)) >0.d0) then
+
etal_f = poroelastcoef(2,2,kmato(ispec))
permlxx = permeability(1,kmato(ispec))
permlxz = permeability(2,kmato(ispec))
@@ -5062,6 +5064,8 @@
viscox(:,:,ispec) = viscox_loc(:,:)
viscoz(:,:,ispec) = viscoz_loc(:,:)
endif
+
+ endif ! end of poroelastic element loop
enddo ! end of spectral element loop
endif ! end of viscous attenuation for porous media
More information about the CIG-COMMITS
mailing list