[cig-commits] r21146 - in seismo/3D/SPECFEM3D_GLOBE/trunk: DATA doc/USER_MANUAL setup src/meshfem3D src/shared

dkomati1 at geodynamics.org dkomati1 at geodynamics.org
Thu Dec 13 14:38:03 PST 2012


Author: dkomati1
Date: 2012-12-13 14:38:03 -0800 (Thu, 13 Dec 2012)
New Revision: 21146

Modified:
   seismo/3D/SPECFEM3D_GLOBE/trunk/DATA/Par_file
   seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/bibliography.bib
   seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.pdf
   seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex
   seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/create_mass_matrices.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/meshfem3D_models.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_ak135.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_aniso_inner_core.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_attenuation.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/shared/get_model_parameters.f90
Log:
fixed model ak135f_no_mud, which was not correct


Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/DATA/Par_file
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/DATA/Par_file	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/DATA/Par_file	2012-12-13 22:38:03 UTC (rev 21146)
@@ -24,10 +24,10 @@
 NPROC_ETA                       = 5
 
 # 1D models with real structure:
-# 1D_isotropic_prem, 1D_transversely_isotropic_prem, 1D_iasp91, 1D_1066a, 1D_ak135, 1D_ref, 1D_ref_iso, 1D_jp3d,1D_sea99
+# 1D_isotropic_prem, 1D_transversely_isotropic_prem, 1D_iasp91, 1D_1066a, 1D_ak135f_no_mud, 1D_ref, 1D_ref_iso, 1D_jp3d,1D_sea99
 #
 # 1D models with only one fictitious averaged crustal layer:
-# 1D_isotropic_prem_onecrust, 1D_transversely_isotropic_prem_onecrust, 1D_iasp91_onecrust, 1D_1066a_onecrust, 1D_ak135_onecrust
+# 1D_isotropic_prem_onecrust, 1D_transversely_isotropic_prem_onecrust, 1D_iasp91_onecrust, 1D_1066a_onecrust, 1D_ak135f_no_mud_onecrust
 #
 # fully 3D models:
 # transversely_isotropic_prem_plus_3D_crust_2.0, 3D_anisotropic, 3D_attenuation,

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/bibliography.bib
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/bibliography.bib	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/bibliography.bib	2012-12-13 22:38:03 UTC (rev 21146)
@@ -6960,6 +6960,15 @@
   pages = {108-124}
 }
 
+ at ARTICLE{MoKe95,
+  author = {J. P. Montagner and B. L. N. Kennett},
+  title = {How to reconcile body-wave and normal-mode reference {E}arth models?},
+  journal = gji,
+  year = {1995},
+  volume = {122},
+  pages = {229-248}
+}
+
 @ARTICLE{KhBoEn12,
   author = {Khan, Samee and Bouvry, Pascal and Engel, Thomas},
   title = {Energy-efficient high-performance parallel and distributed computing},

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.pdf
===================================================================
(Binary files differ)

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/doc/USER_MANUAL/manual_SPECFEM3D_GLOBE.tex	2012-12-13 22:38:03 UTC (rev 21146)
@@ -668,8 +668,13 @@
 \item [{\texttt{1D\_1066a}}] Spherically symmetric earth model 1066A \citep{gilbertdziewonski1975}.
 When \texttt{\small ATTENTUATION} is on, it uses an unpublished 1D
 attenuation model from Scripps.
-\item [{\texttt{1D\_ak135}}] Spherically symmetric isotropic AK135 model
-\citep{KeEnBu95}.
+\item [{\texttt{1D\_ak135f\_no\_mud}}] Spherically symmetric isotropic AK135 model
+\citep{KeEnBu95} modified to use the density and Q attenuation models of \cite{MoKe95}.
+That modified model is traditionally called AK135-F,
+see \url{http://rses.anu.edu.au/seismology/ak135/ak135f.html} for more details.
+As we do not want to use the 300~m-thick mud layer from that model nor the ocean layer,
+above the d120 discontinuity we switch back to the classical AK135 model of \cite{KeEnBu95},
+i.e., we use AK135-F below and AK135 above.
 \item [{\texttt{1}D\_ref}] A recent 1D Earth model developed by \citet{KuDzEk06}.
 This model is the 1D background model for the 3D models s362ani, s362wmani,
 s362ani\_prem, and s29ea.
@@ -686,7 +691,7 @@
 
 \texttt{1D\_iasp91\_onecrust}, \texttt{1D\_1066a\_onecrust}
 
-\texttt{1D\_ak135\_onecrust}
+\texttt{1D\_ak135f\_no\_mud\_onecrust}
 
 \begin{description}
 \item [{\textmd{Fully~3D~models:}}]~
@@ -2769,7 +2774,7 @@
 \texttt{.f90}. To accomplish this, the flag \texttt{CRUSTAL}, set
 in the subroutine \texttt{get\_model\_parameters.f90}, is used
 to indicate a 3D crustal model. When this flag is set to \texttt{.true.},
-the crust on top of the 1D reference model (PREM, IASP91, or AK135)
+the crust on top of the 1D reference model (PREM, IASP91, or AK135F\_NO\_MUD)
 is removed and replaced by extending the mantle. The 3D crustal model
 is subsequently overprinted onto the crust-less 1D reference model.
 The call to the 3D crustal routine is of the form
@@ -3349,7 +3354,7 @@
 
  v. 3.6 Many people, many affiliations, September 2006:
       adjoint and kernel calculations, fixed IASP91 model,
-      added AK135 and 1066a, fixed topography/bathymetry routine,
+      added AK135F\_NO\_MUD and 1066a, fixed topography/bathymetry routine,
       new attenuation routines, faster and better I/Os on very large
       systems, many small improvements and bug fixes, new `configure'
       script, new Pyre version, new user's manual etc..\\

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/setup/constants.h.in	2012-12-13 22:38:03 UTC (rev 21146)
@@ -452,10 +452,10 @@
   integer, parameter :: REFERENCE_MODEL_PREM   = 1
   integer, parameter :: REFERENCE_MODEL_IASP91 = 2
   integer, parameter :: REFERENCE_MODEL_1066A  = 3
-  integer, parameter :: REFERENCE_MODEL_AK135  = 4
-  integer, parameter :: REFERENCE_MODEL_1DREF  = 5
+  integer, parameter :: REFERENCE_MODEL_AK135F_NO_MUD = 4
+  integer, parameter :: REFERENCE_MODEL_1DREF = 5
   integer, parameter :: REFERENCE_MODEL_JP1D  = 6
-  integer, parameter :: REFERENCE_MODEL_SEA1D  = 7
+  integer, parameter :: REFERENCE_MODEL_SEA1D = 7
 
 ! define flag for 3D Earth model
   integer, parameter :: THREE_D_MODEL_S20RTS   = 1
@@ -567,8 +567,8 @@
 ! number of layers in DATA/1066a/1066a.dat
   integer, parameter :: NR_1066A = 160
 
-! number of layers in DATA/ak135/ak135.dat
-  integer, parameter :: NR_AK135 = 136
+! number of layers in ak135-F
+  integer, parameter :: NR_AK135F_NO_MUD = 136
 
 ! number of layers in DATA/s362ani/REF
   integer, parameter :: NR_REF = 750

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/create_mass_matrices.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/create_mass_matrices.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/create_mass_matrices.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -274,7 +274,7 @@
 
           ! if 3D Earth, compute local height of oceans
           !
-          ! note: only for models where 3D crustal model and stretching was used 
+          ! note: only for models where 3D crustal model and stretching was used
           !       (even without topography flag set)
           if( CASE_3D ) then
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/meshfem3D_models.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/meshfem3D_models.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/meshfem3D_models.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -98,12 +98,12 @@
 ! model_ak135_variables
   type model_ak135_variables
     sequence
-    double precision, dimension(NR_AK135) :: radius_ak135
-    double precision, dimension(NR_AK135) :: density_ak135
-    double precision, dimension(NR_AK135) :: vp_ak135
-    double precision, dimension(NR_AK135) :: vs_ak135
-    double precision, dimension(NR_AK135) :: Qkappa_ak135
-    double precision, dimension(NR_AK135) :: Qmu_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: radius_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: density_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vp_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vs_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qkappa_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qmu_ak135
   end type model_ak135_variables
  type (model_ak135_variables) Mak135_V
 ! model_ak135_variables
@@ -573,7 +573,7 @@
     case(REFERENCE_MODEL_1066A)
       call model_1066a_broadcast(CRUSTAL,M1066a_V)
 
-    case( REFERENCE_MODEL_AK135)
+    case( REFERENCE_MODEL_AK135F_NO_MUD)
       call model_ak135_broadcast(CRUSTAL,Mak135_V)
 
     case(REFERENCE_MODEL_1DREF)
@@ -708,7 +708,7 @@
       ! 1066A (by Gilbert & Dziewonski) - pure isotropic model, used in 1D model mode only
       call model_1066a(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code,M1066a_V)
 
-    case(REFERENCE_MODEL_AK135)
+    case(REFERENCE_MODEL_AK135F_NO_MUD)
       ! AK135 (by Kennett et al. ) - pure isotropic model, used in 1D model mode only
       call model_ak135(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code,Mak135_V)
 

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_ak135.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_ak135.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_ak135.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -26,17 +26,30 @@
 !=====================================================================
 
 !--------------------------------------------------------------------------------------------------
-! AK135
 !
-! Spherically symmetric isotropic AK135 model [Kennett et al., 1995].
+! Modified AK135 model:
 !
+! Spherically symmetric isotropic AK135 model (Kennett et al., 1995).
+! modified to use the density and Q attenuation models of Montagner and Kennett (1995).
+! That modified model is traditionally called AK135-F,
+! see http://rses.anu.edu.au/seismology/ak135/ak135f.html for more details.
+! As we do not want to use the 300 m-thick mud layer from that model nor the ocean layer,
+! above the d120 discontinuity we switch back to the classical AK135 model of Kennett et al. (1995),
+! i.e., we use AK135-F below and AK135 above.
+
 ! B. L. N. Kennett, E. R. Engdahl and R. Buland,
 ! Constraints on seismic velocities in the Earth from traveltimes,
-! Geophysical Journal International, Volume 122, Issue 1, Pages 1-351 (1995),
+! Geophysical Journal International, volume 122, issue 1, pages 108-124 (1995),
 ! DOI: 10.1111/j.1365-246X.1995.tb03540.x
+
+! J. P. Montagner and B. L. N. Kennett,
+! How to reconcile body-wave and normal-mode reference Earth models?,
+! Geophysical Journal International, volume 122, issue 1, pages 229-248 (1995)
+
+!! DK DK values below entirely checked and fixed by Dimitri Komatitsch in December 2012.
+
 !--------------------------------------------------------------------------------------------------
 
-
   subroutine model_ak135_broadcast(CRUSTAL,Mak135_V)
 
 ! standard routine to setup model
@@ -48,12 +61,12 @@
   ! model_ak135_variables
   type model_ak135_variables
     sequence
-    double precision, dimension(NR_AK135) :: radius_ak135
-    double precision, dimension(NR_AK135) :: density_ak135
-    double precision, dimension(NR_AK135) :: vp_ak135
-    double precision, dimension(NR_AK135) :: vs_ak135
-    double precision, dimension(NR_AK135) :: Qkappa_ak135
-    double precision, dimension(NR_AK135) :: Qmu_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: radius_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: density_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vp_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vs_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qkappa_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qmu_ak135
   end type model_ak135_variables
 
   type (model_ak135_variables) Mak135_V
@@ -79,12 +92,12 @@
 ! model_ak135_variables
   type model_ak135_variables
     sequence
-    double precision, dimension(NR_AK135) :: radius_ak135
-    double precision, dimension(NR_AK135) :: density_ak135
-    double precision, dimension(NR_AK135) :: vp_ak135
-    double precision, dimension(NR_AK135) :: vs_ak135
-    double precision, dimension(NR_AK135) :: Qkappa_ak135
-    double precision, dimension(NR_AK135) :: Qmu_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: radius_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: density_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vp_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vs_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qkappa_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qmu_ak135
   end type model_ak135_variables
 
  type (model_ak135_variables) Mak135_V
@@ -110,7 +123,7 @@
   r = x * R_EARTH
 
   i = 1
-  do while(r >= Mak135_V%radius_ak135(i) .and. i /= NR_AK135)
+  do while(r >= Mak135_V%radius_ak135(i) .and. i /= NR_AK135F_NO_MUD)
     i = i + 1
   enddo
 
@@ -171,12 +184,12 @@
 ! model_ak135_variables
   type model_ak135_variables
     sequence
-    double precision, dimension(NR_AK135) :: radius_ak135
-    double precision, dimension(NR_AK135) :: density_ak135
-    double precision, dimension(NR_AK135) :: vp_ak135
-    double precision, dimension(NR_AK135) :: vs_ak135
-    double precision, dimension(NR_AK135) :: Qkappa_ak135
-    double precision, dimension(NR_AK135) :: Qmu_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: radius_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: density_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vp_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vs_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qkappa_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qmu_ak135
   end type model_ak135_variables
 
  type (model_ak135_variables) Mak135_V

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_aniso_inner_core.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_aniso_inner_core.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_aniso_inner_core.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -109,7 +109,7 @@
       vs0 = 3.62980
       rho0 = 13.429030
 
-    case(REFERENCE_MODEL_AK135)
+    case(REFERENCE_MODEL_AK135F_NO_MUD)
       ! values at center
       vp0 = 11.26220
       vs0 = 3.667800

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_attenuation.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_attenuation.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/meshfem3D/model_attenuation.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -215,12 +215,12 @@
 ! model_ak135_variables
   type model_ak135_variables
     sequence
-    double precision, dimension(NR_AK135) :: radius_ak135
-    double precision, dimension(NR_AK135) :: density_ak135
-    double precision, dimension(NR_AK135) :: vp_ak135
-    double precision, dimension(NR_AK135) :: vs_ak135
-    double precision, dimension(NR_AK135) :: Qkappa_ak135
-    double precision, dimension(NR_AK135) :: Qmu_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: radius_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: density_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vp_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: vs_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qkappa_ak135
+    double precision, dimension(NR_AK135F_NO_MUD) :: Qmu_ak135
   end type model_ak135_variables
 
  type (model_ak135_variables) Mak135_V
@@ -308,9 +308,9 @@
      AM_V%Qn = 12
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_IASP91) then
      AM_V%Qn = 12
-  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135) then
+  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135F_NO_MUD) then
      call define_model_ak135(.FALSE.,Mak135_V)
-     AM_V%Qn = NR_AK135
+     AM_V%Qn = NR_AK135F_NO_MUD
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1066A) then
      call define_model_1066a(.FALSE.,M1066a_V)
      AM_V%Qn = NR_1066A
@@ -338,7 +338,7 @@
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_IASP91) then
      AM_V%Qr(:)     = (/    0.0d0,     RICB,  RICB,  RCMB,    RCMB,    R670,    R670,    R220,   R220,   R120,    R120, R_EARTH /)
      AM_V%Qmu(:)    = (/   84.6d0,   84.6d0, 0.0d0, 0.0d0, 312.0d0, 312.0d0, 143.0d0, 143.0d0, 80.0d0, 80.0d0, 600.0d0, 600.0d0 /)
-  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135) then
+  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135F_NO_MUD) then
      AM_V%Qr(:)     = Mak135_V%radius_ak135(:)
      AM_V%Qmu(:)    = Mak135_V%Qmu_ak135(:)
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1066A) then

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/shared/get_model_parameters.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/shared/get_model_parameters.f90	2012-12-13 21:06:09 UTC (rev 21145)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/shared/get_model_parameters.f90	2012-12-13 22:38:03 UTC (rev 21146)
@@ -183,15 +183,15 @@
     TRANSVERSE_ISOTROPY = .true.
 
   else if(MODEL_ROOT == '1D_iasp91' .or. MODEL_ROOT == '1D_1066a' .or. &
-          MODEL_ROOT == '1D_ak135' .or. MODEL_ROOT == '1D_jp3d' .or. &
+          MODEL_ROOT == '1D_ak135f_no_mud' .or. MODEL_ROOT == '1D_jp3d' .or. &
           MODEL_ROOT == '1D_sea99') then
     HONOR_1D_SPHERICAL_MOHO = .true.
     if(MODEL_ROOT == '1D_iasp91') then
       REFERENCE_1D_MODEL = REFERENCE_MODEL_IASP91
     else if(MODEL_ROOT == '1D_1066a') then
       REFERENCE_1D_MODEL = REFERENCE_MODEL_1066A
-    else if(MODEL_ROOT == '1D_ak135') then
-      REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135
+    else if(MODEL_ROOT == '1D_ak135f_no_mud') then
+      REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135F_NO_MUD
     else if(MODEL_ROOT == '1D_jp3d') then
       REFERENCE_1D_MODEL = REFERENCE_MODEL_JP1D
     else if(MODEL_ROOT == '1D_sea99') then
@@ -219,15 +219,15 @@
     ONE_CRUST = .true.
 
   else if(MODEL_ROOT == '1D_iasp91_onecrust' .or. MODEL_ROOT == '1D_1066a_onecrust' &
-        .or. MODEL_ROOT == '1D_ak135_onecrust') then
+        .or. MODEL_ROOT == '1D_ak135f_no_mud_onecrust') then
     HONOR_1D_SPHERICAL_MOHO = .true.
     ONE_CRUST = .true.
     if(MODEL_ROOT == '1D_iasp91_onecrust') then
       REFERENCE_1D_MODEL = REFERENCE_MODEL_IASP91
     else if(MODEL_ROOT == '1D_1066a_onecrust') then
       REFERENCE_1D_MODEL = REFERENCE_MODEL_1066A
-    else if(MODEL_ROOT == '1D_ak135_onecrust') then
-      REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135
+    else if(MODEL_ROOT == '1D_ak135f_no_mud_onecrust') then
+      REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135F_NO_MUD
     else
       stop 'reference 1D Earth model unknown'
     endif
@@ -353,7 +353,7 @@
     TRANSVERSE_ISOTROPY = .true. ! to use transverse isotropic PREM 1D ref model
     ! CRUSTAL = .true. ! with 3D crust: depends on 3D mantle reference model
     ! THREE_D_MODEL = 0 ! for default crustal model
-    ! REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135
+    ! REFERENCE_1D_MODEL = REFERENCE_MODEL_AK135F_NO_MUD
     ! TRANSVERSE_ISOTROPY = .false. ! for AK135 ref model
 
   else if(MODEL_ROOT == 'heterogen') then
@@ -435,7 +435,7 @@
 
   ! checks that IASP91, AK135, 1066A, JP1D or SEA1D is isotropic
   if((REFERENCE_1D_MODEL == REFERENCE_MODEL_IASP91 .or. &
-      REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135 .or. &
+      REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135F_NO_MUD .or. &
       REFERENCE_1D_MODEL == REFERENCE_MODEL_1066A .or. &
       REFERENCE_1D_MODEL == REFERENCE_MODEL_JP1D .or. &
       REFERENCE_1D_MODEL == REFERENCE_MODEL_SEA1D) .and. TRANSVERSE_ISOTROPY) &
@@ -539,16 +539,14 @@
     RHO_TOP_OC = 9900.2379 / RHOAV
     RHO_BOTTOM_OC = 12168.6383 / RHOAV
 
-  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135) then
-    ! our implementation of AK135 has not been checked carefully yet
-    ! therefore let us doublecheck it carefully one day
+  else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135F_NO_MUD) then
 
-    ! values below corrected by Ying Zhou <yingz at gps.caltech.edu>
-    ! AK135 without the 300 meters of mud layer
+!! DK DK values below entirely checked and fixed by Dimitri Komatitsch in December 2012.
+
     ROCEAN = 6368000.d0
-    RMIDDLE_CRUST = 6361000.d0
-    RMOHO  = 6353000.d0
-    R80    = 6291000.d0
+    RMIDDLE_CRUST = 6351000.d0
+    RMOHO  = 6336000.d0
+    R80    = 6293500.d0
     R220   = 6161000.d0
     R400   = 5961000.d0
     R670   = 5711000.d0
@@ -556,9 +554,9 @@
     RCMB   = 3479500.d0
     RICB   = 1217500.d0
 
-    ! values for AK135 that are not discontinuities
+    ! values for AK135F that are not discontinuities
     R600 = 5771000.d0
-    R771 = 5611000.d0
+    R771 = 5600000.d0
 
     RHO_TOP_OC = 9914.5000 / RHOAV
     RHO_BOTTOM_OC = 12139.1000 / RHOAV



More information about the CIG-COMMITS mailing list