[cig-commits] r14815 - seismo/2D/SPECFEM2D/trunk

dkomati1 at geodynamics.org dkomati1 at geodynamics.org
Wed Apr 29 12:59:23 PDT 2009


Author: dkomati1
Date: 2009-04-29 12:59:23 -0700 (Wed, 29 Apr 2009)
New Revision: 14815

Modified:
   seismo/2D/SPECFEM2D/trunk/read_value_parameters.f90
   seismo/2D/SPECFEM2D/trunk/specfem2D.F90
   seismo/2D/SPECFEM2D/trunk/todo_list_please_dont_remove.txt
Log:
fixed a few small problems in the code to handle quality factors that can vary between elements


Modified: seismo/2D/SPECFEM2D/trunk/read_value_parameters.f90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/read_value_parameters.f90	2009-04-29 18:41:10 UTC (rev 14814)
+++ seismo/2D/SPECFEM2D/trunk/read_value_parameters.f90	2009-04-29 19:59:23 UTC (rev 14815)
@@ -150,7 +150,7 @@
   character(len=100) string_read
 
   call read_next_line(iin,ignore_junk,string_read)
-  read(string_read,*) i,icodematread,rhoread,Qpread,Qsread,cpread,csread,aniso3read,aniso4read
+  read(string_read,*) i,icodematread,rhoread,cpread,csread,aniso3read,aniso4read,Qpread,Qsread
 
   end subroutine read_material_parameters
 

Modified: seismo/2D/SPECFEM2D/trunk/specfem2D.F90
===================================================================
--- seismo/2D/SPECFEM2D/trunk/specfem2D.F90	2009-04-29 18:41:10 UTC (rev 14814)
+++ seismo/2D/SPECFEM2D/trunk/specfem2D.F90	2009-04-29 19:59:23 UTC (rev 14815)
@@ -257,7 +257,9 @@
 
   real(kind=CUSTOM_REAL), dimension(:,:,:,:), allocatable :: e1,e11,e13
   double precision, dimension(:,:,:,:), allocatable :: inv_tau_sigma_nu1,phi_nu1,inv_tau_sigma_nu2,phi_nu2
+  double precision, dimension(:), allocatable :: inv_tau_sigma_nu1_sent,phi_nu1_sent,inv_tau_sigma_nu2_sent,phi_nu2_sent
   double precision, dimension(:,:,:) , allocatable :: Mu_nu1,Mu_nu2
+  double precision :: Mu_nu1_sent,Mu_nu2_sent
 
   real(kind=CUSTOM_REAL), dimension(:,:,:), allocatable :: &
     dux_dxl_n,duz_dzl_n,duz_dxl_n,dux_dzl_n,dux_dxl_np1,duz_dzl_np1,duz_dxl_np1,dux_dzl_np1
@@ -661,6 +663,10 @@
   allocate(inv_tau_sigma_nu2(NGLLX,NGLLZ,nspec,N_SLS))
   allocate(phi_nu1(NGLLX,NGLLZ,nspec,N_SLS))
   allocate(phi_nu2(NGLLX,NGLLZ,nspec,N_SLS))
+  allocate(inv_tau_sigma_nu1_sent(N_SLS))
+  allocate(inv_tau_sigma_nu2_sent(N_SLS))
+  allocate(phi_nu1_sent(N_SLS))
+  allocate(phi_nu2_sent(N_SLS))
 endif
 
 ! --- allocate arrays for absorbing boundary conditions
@@ -768,11 +774,16 @@
 ! they can be different for each element.
 !! DK DK if needed in the future, here the quality factor could be different for each point
   do ispec = 1,nspec
+    call attenuation_model(N_SLS,Qp_attenuation(kmato(ispec)),Qs_attenuation(kmato(ispec)), &
+            f0_attenuation,inv_tau_sigma_nu1_sent,phi_nu1_sent,inv_tau_sigma_nu2_sent,phi_nu2_sent,Mu_nu1_sent,Mu_nu2_sent)
     do j = 1,NGLLZ
       do i = 1,NGLLX
-        call attenuation_model(N_SLS,Qp_attenuation(kmato(ispec)),Qs_attenuation(kmato(ispec)), &
-                f0_attenuation,inv_tau_sigma_nu1(i,j,ispec,:),phi_nu1(i,j,ispec,:), &
-                inv_tau_sigma_nu2(i,j,ispec,:),phi_nu2(i,j,ispec,:),Mu_nu1(i,j,ispec),Mu_nu2(i,j,ispec))
+        inv_tau_sigma_nu1(i,j,ispec,:) = inv_tau_sigma_nu1_sent(:)
+        phi_nu1(i,j,ispec,:) = phi_nu1_sent(:)
+        inv_tau_sigma_nu2(i,j,ispec,:) = inv_tau_sigma_nu2_sent(:)
+        phi_nu2(i,j,ispec,:) = phi_nu2_sent(:)
+        Mu_nu1(i,j,ispec) = Mu_nu1_sent
+        Mu_nu2(i,j,ispec) = Mu_nu2_sent
       enddo
     enddo
   enddo
@@ -908,7 +919,7 @@
 !---- read tangential detection curve
 !
   read(IIN,"(a80)") datlin
-  read(IIN,*), force_normal_to_surface,rec_normal_to_surface
+  read(IIN,*) force_normal_to_surface,rec_normal_to_surface
   if (nnodes_tangential_curve > 0) then
 if (ipass == 1) then
     allocate(nodes_tangential_curve(2,nnodes_tangential_curve))
@@ -3616,7 +3627,7 @@
 
       implicit none
 
-      integer  :: n1, n2, n3, n4, nnodes
+      integer  :: n1, nnodes
       integer, dimension(4)  :: n
 
 

Modified: seismo/2D/SPECFEM2D/trunk/todo_list_please_dont_remove.txt
===================================================================
--- seismo/2D/SPECFEM2D/trunk/todo_list_please_dont_remove.txt	2009-04-29 18:41:10 UTC (rev 14814)
+++ seismo/2D/SPECFEM2D/trunk/todo_list_please_dont_remove.txt	2009-04-29 19:59:23 UTC (rev 14815)
@@ -48,7 +48,7 @@
 
 SOMETHING THAT COULD BE MADE MORE GENERAL:
 
-at line 769 of specfem2D.F90:
+at line 770 of specfem2D.F90:
 !! DK DK if needed in the future, here the quality factor could be different for each point
 
 i.e. they could be given at each (i,j,ispec) instead of at each (ispec) only



More information about the CIG-COMMITS mailing list