[cig-commits] r22552 - seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D

dkomati1 at geodynamics.org dkomati1 at geodynamics.org
Mon Jul 8 16:05:21 PDT 2013


Author: dkomati1
Date: 2013-07-08 16:05:20 -0700 (Mon, 08 Jul 2013)
New Revision: 22552

Modified:
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/save_kernels.f90
   seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/specfem3D.F90
Log:
split the save_kernel_crust_mantle() routine into three routines for clarity: iso, tiso and aniso


Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/save_kernels.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/save_kernels.f90	2013-07-08 19:07:27 UTC (rev 22551)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/save_kernels.f90	2013-07-08 23:05:20 UTC (rev 22552)
@@ -25,16 +25,143 @@
 !
 !=====================================================================
 
-  subroutine save_kernels_crust_mantle(myrank,scale_t,scale_displ, &
+  subroutine save_kernels_crust_mantle_iso(myrank,scale_t,scale_displ, &
+                  rho_kl_crust_mantle, &
+                  alpha_kl_crust_mantle,beta_kl_crust_mantle, &
+                  mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle, &
+                  rhostore_crust_mantle,muvstore_crust_mantle, &
+                  kappavstore_crust_mantle, &
+                  LOCAL_PATH)
+
+  implicit none
+
+  include "constants.h"
+  include "OUTPUT_FILES/values_from_mesher.h"
+
+  integer myrank
+
+  double precision :: scale_t,scale_displ
+
+  real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT) :: &
+    rho_kl_crust_mantle, beta_kl_crust_mantle, alpha_kl_crust_mantle
+
+  real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT) :: &
+    mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle
+
+  real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPECMAX_ISO_MANTLE) :: &
+        rhostore_crust_mantle,kappavstore_crust_mantle,muvstore_crust_mantle
+
+  character(len=150) LOCAL_PATH
+
+  ! local parameters
+  real(kind=CUSTOM_REAL) :: scale_kl
+  real(kind=CUSTOM_REAL) :: rhol,mul,kappal,rho_kl,alpha_kl,beta_kl
+  integer :: ispec,i,j,k
+  character(len=150) prname
+
+  ! bulk parameterization
+  real(kind=CUSTOM_REAL), dimension(:,:,:,:),allocatable :: &
+    bulk_c_kl_crust_mantle,bulk_beta_kl_crust_mantle
+
+  ! scaling factors
+  scale_kl = scale_t/scale_displ * 1.d9
+
+    ! allocates temporary isotropic kernel arrays for file output
+    allocate(bulk_c_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
+            bulk_beta_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT))
+
+  ! crust_mantle
+  do ispec = 1, NSPEC_CRUST_MANTLE
+    do k = 1, NGLLZ
+      do j = 1, NGLLY
+        do i = 1, NGLLX
+
+            ! isotropic kernels
+
+            rhol = rhostore_crust_mantle(i,j,k,ispec)
+            mul = muvstore_crust_mantle(i,j,k,ispec)
+            kappal = kappavstore_crust_mantle(i,j,k,ispec)
+
+            ! kernel values for rho, kappa, mu (primary kernel values)
+            rho_kl = - rhol * rho_kl_crust_mantle(i,j,k,ispec)
+            alpha_kl = - kappal * alpha_kl_crust_mantle(i,j,k,ispec) ! note: alpha_kl corresponds to K_kappa
+            beta_kl =  - 2 * mul * beta_kl_crust_mantle(i,j,k,ispec) ! note: beta_kl corresponds to K_mu
+
+            ! for a parameterization: (rho,mu,kappa) "primary" kernels
+            rhonotprime_kl_crust_mantle(i,j,k,ispec) = rho_kl * scale_kl
+            mu_kl_crust_mantle(i,j,k,ispec) = beta_kl * scale_kl
+            kappa_kl_crust_mantle(i,j,k,ispec) = alpha_kl * scale_kl
+
+            ! for a parameterization: (rho,alpha,beta)
+            ! kernels rho^prime, beta, alpha
+            rho_kl_crust_mantle(i,j,k,ispec) = (rho_kl + alpha_kl + beta_kl) * scale_kl
+            beta_kl_crust_mantle(i,j,k,ispec) = &
+              2._CUSTOM_REAL * (beta_kl - FOUR_THIRDS * mul * alpha_kl / kappal) * scale_kl
+            alpha_kl_crust_mantle(i,j,k,ispec) = &
+              2._CUSTOM_REAL * (1 +  FOUR_THIRDS * mul / kappal) * alpha_kl * scale_kl
+
+            ! for a parameterization: (rho,bulk, beta)
+            ! where bulk wave speed is c = sqrt( kappa / rho)
+            ! note: rhoprime is the same as for (rho,alpha,beta) parameterization
+            bulk_c_kl_crust_mantle(i,j,k,ispec) = 2._CUSTOM_REAL * alpha_kl * scale_kl
+            bulk_beta_kl_crust_mantle(i,j,k,ispec ) = 2._CUSTOM_REAL * beta_kl * scale_kl
+
+        enddo
+      enddo
+    enddo
+  enddo
+
+  call create_name_database(prname,myrank,IREGION_CRUST_MANTLE,LOCAL_PATH)
+
+    ! primary kernels: (rho,kappa,mu) parameterization
+    open(unit=27,file=trim(prname)//'rhonotprime_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) rhonotprime_kl_crust_mantle
+    close(27)
+    open(unit=27,file=trim(prname)//'kappa_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) kappa_kl_crust_mantle
+    close(27)
+    open(unit=27,file=trim(prname)//'mu_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) mu_kl_crust_mantle
+    close(27)
+
+    ! (rho, alpha, beta ) parameterization
+    open(unit=27,file=trim(prname)//'rho_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) rho_kl_crust_mantle
+    close(27)
+    open(unit=27,file=trim(prname)//'alpha_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) alpha_kl_crust_mantle
+    close(27)
+    open(unit=27,file=trim(prname)//'beta_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) beta_kl_crust_mantle
+    close(27)
+
+    ! (rho, bulk, beta ) parameterization, K_rho same as above
+    open(unit=27,file=trim(prname)//'bulk_c_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) bulk_c_kl_crust_mantle
+    close(27)
+    open(unit=27,file=trim(prname)//'bulk_beta_kernel.bin',status='unknown',form='unformatted',action='write')
+    write(27) bulk_beta_kl_crust_mantle
+    close(27)
+
+  ! cleans up temporary kernel arrays
+    deallocate(bulk_c_kl_crust_mantle,bulk_beta_kl_crust_mantle)
+
+  end subroutine save_kernels_crust_mantle_iso
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+  subroutine save_kernels_crust_mantle_tiso(myrank,scale_t,scale_displ, &
                   cijkl_kl_crust_mantle,rho_kl_crust_mantle, &
                   alpha_kl_crust_mantle,beta_kl_crust_mantle, &
-                  mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle, &
+                  rhonotprime_kl_crust_mantle, &
                   ystore_crust_mantle,zstore_crust_mantle, &
                   rhostore_crust_mantle,muvstore_crust_mantle, &
                   kappavstore_crust_mantle,ibool_crust_mantle, &
                   kappahstore_crust_mantle,muhstore_crust_mantle, &
                   eta_anisostore_crust_mantle,ispec_is_tiso_crust_mantle, &
-                  LOCAL_PATH,ANISOTROPIC_KL,SAVE_TRANSVERSE_KL)
+                  LOCAL_PATH)
 
   implicit none
 
@@ -52,7 +179,7 @@
     rho_kl_crust_mantle, beta_kl_crust_mantle, alpha_kl_crust_mantle
 
   real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT) :: &
-    mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle
+    rhonotprime_kl_crust_mantle
 
   real(kind=CUSTOM_REAL), dimension(NGLOB_CRUST_MANTLE) :: &
         ystore_crust_mantle,zstore_crust_mantle
@@ -72,10 +199,9 @@
   ! local parameters
   real(kind=CUSTOM_REAL),dimension(21) ::  cijkl_kl_local
   real(kind=CUSTOM_REAL) :: scale_kl,scale_kl_ani,scale_kl_rho
-  real(kind=CUSTOM_REAL) :: rhol,mul,kappal,rho_kl,alpha_kl,beta_kl
+  real(kind=CUSTOM_REAL) :: rhol,mul,kappal
   integer :: ispec,i,j,k,iglob
   character(len=150) prname
-  logical :: ANISOTROPIC_KL,SAVE_TRANSVERSE_KL
 
   ! transverse isotropic parameters
   real(kind=CUSTOM_REAL), dimension(21) :: an_kl
@@ -100,8 +226,6 @@
   ! final unit : [s km^(-3) (kg/m^3)^(-1)]
   scale_kl_rho = scale_t / scale_displ / RHOAV * 1.d9
 
-  ! allocates temporary arrays
-  if( SAVE_TRANSVERSE_KL ) then
     ! transverse isotropic kernel arrays for file output
     allocate(alphav_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
             alphah_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
@@ -114,22 +238,13 @@
             bulk_betav_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
             bulk_betah_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
             bulk_beta_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT))
-  endif
 
-  if( .not. ANISOTROPIC_KL ) then
-    ! allocates temporary isotropic kernel arrays for file output
-    allocate(bulk_c_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT), &
-            bulk_beta_kl_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT))
-  endif
-
   ! crust_mantle
   do ispec = 1, NSPEC_CRUST_MANTLE
     do k = 1, NGLLZ
       do j = 1, NGLLY
         do i = 1, NGLLX
 
-          if (ANISOTROPIC_KL) then
-
             ! For anisotropic kernels
             iglob = ibool_crust_mantle(i,j,k,ispec)
 
@@ -142,7 +257,6 @@
             rho_kl_crust_mantle(i,j,k,ispec) = rho_kl_crust_mantle(i,j,k,ispec) * scale_kl_rho
 
             ! transverse isotropic kernel calculations
-            if( SAVE_TRANSVERSE_KL ) then
               ! note: transverse isotropic kernels are calculated for all elements
               !
               !          however, the factors A,C,L,N,F are based only on transverse elements
@@ -309,42 +423,6 @@
               bulk_beta_kl_crust_mantle(i,j,k,ispec) = bulk_betah_kl_crust_mantle(i,j,k,ispec ) &
                                                     + bulk_betav_kl_crust_mantle(i,j,k,ispec )
 
-            endif ! SAVE_TRANSVERSE_KL
-
-          else
-
-            ! isotropic kernels
-
-            rhol = rhostore_crust_mantle(i,j,k,ispec)
-            mul = muvstore_crust_mantle(i,j,k,ispec)
-            kappal = kappavstore_crust_mantle(i,j,k,ispec)
-
-            ! kernel values for rho, kappa, mu (primary kernel values)
-            rho_kl = - rhol * rho_kl_crust_mantle(i,j,k,ispec)
-            alpha_kl = - kappal * alpha_kl_crust_mantle(i,j,k,ispec) ! note: alpha_kl corresponds to K_kappa
-            beta_kl =  - 2 * mul * beta_kl_crust_mantle(i,j,k,ispec) ! note: beta_kl corresponds to K_mu
-
-            ! for a parameterization: (rho,mu,kappa) "primary" kernels
-            rhonotprime_kl_crust_mantle(i,j,k,ispec) = rho_kl * scale_kl
-            mu_kl_crust_mantle(i,j,k,ispec) = beta_kl * scale_kl
-            kappa_kl_crust_mantle(i,j,k,ispec) = alpha_kl * scale_kl
-
-            ! for a parameterization: (rho,alpha,beta)
-            ! kernels rho^prime, beta, alpha
-            rho_kl_crust_mantle(i,j,k,ispec) = (rho_kl + alpha_kl + beta_kl) * scale_kl
-            beta_kl_crust_mantle(i,j,k,ispec) = &
-              2._CUSTOM_REAL * (beta_kl - FOUR_THIRDS * mul * alpha_kl / kappal) * scale_kl
-            alpha_kl_crust_mantle(i,j,k,ispec) = &
-              2._CUSTOM_REAL * (1 +  FOUR_THIRDS * mul / kappal) * alpha_kl * scale_kl
-
-            ! for a parameterization: (rho,bulk, beta)
-            ! where bulk wave speed is c = sqrt( kappa / rho)
-            ! note: rhoprime is the same as for (rho,alpha,beta) parameterization
-            bulk_c_kl_crust_mantle(i,j,k,ispec) = 2._CUSTOM_REAL * alpha_kl * scale_kl
-            bulk_beta_kl_crust_mantle(i,j,k,ispec ) = 2._CUSTOM_REAL * beta_kl * scale_kl
-
-          endif
-
         enddo
       enddo
     enddo
@@ -352,11 +430,7 @@
 
   call create_name_database(prname,myrank,IREGION_CRUST_MANTLE,LOCAL_PATH)
 
-  ! For anisotropic kernels
-  if (ANISOTROPIC_KL) then
-
     ! outputs transverse isotropic kernels only
-    if( SAVE_TRANSVERSE_KL ) then
       ! transverse isotropic kernels
       ! (alpha_v, alpha_h, beta_v, beta_h, eta, rho ) parameterization
       open(unit=27,file=trim(prname)//'alphav_kernel.bin',status='unknown',form='unformatted',action='write')
@@ -405,8 +479,84 @@
       write(27) bulk_beta_kl_crust_mantle
       close(27)
 
-    else
+  ! cleans up temporary kernel arrays
+    deallocate(alphav_kl_crust_mantle,alphah_kl_crust_mantle, &
+        betav_kl_crust_mantle,betah_kl_crust_mantle, &
+        eta_kl_crust_mantle)
+    deallocate(bulk_c_kl_crust_mantle,bulk_betah_kl_crust_mantle, &
+        bulk_betav_kl_crust_mantle,bulk_beta_kl_crust_mantle)
 
+  end subroutine save_kernels_crust_mantle_tiso
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+  subroutine save_kernels_crust_mantle_ani(myrank,scale_t,scale_displ, &
+                  cijkl_kl_crust_mantle,rho_kl_crust_mantle, &
+                  ystore_crust_mantle,zstore_crust_mantle, &
+                  ibool_crust_mantle, &
+                  LOCAL_PATH)
+
+  implicit none
+
+  include "constants.h"
+  include "OUTPUT_FILES/values_from_mesher.h"
+
+  integer myrank
+
+  double precision :: scale_t,scale_displ
+
+  real(kind=CUSTOM_REAL), dimension(21,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT) :: &
+    cijkl_kl_crust_mantle
+
+  real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ADJOINT) :: &
+    rho_kl_crust_mantle
+
+  real(kind=CUSTOM_REAL), dimension(NGLOB_CRUST_MANTLE) :: &
+        ystore_crust_mantle,zstore_crust_mantle
+
+  integer, dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE) :: ibool_crust_mantle
+
+  character(len=150) LOCAL_PATH
+
+  ! local parameters
+  real(kind=CUSTOM_REAL),dimension(21) ::  cijkl_kl_local
+  real(kind=CUSTOM_REAL) :: scale_kl_ani,scale_kl_rho
+  integer :: ispec,i,j,k,iglob
+  character(len=150) prname
+
+  ! scaling factors
+  ! For anisotropic kernels
+  ! final unit : [s km^(-3) GPa^(-1)]
+  scale_kl_ani = scale_t**3 / (RHOAV*R_EARTH**3) * 1.d18
+  ! final unit : [s km^(-3) (kg/m^3)^(-1)]
+  scale_kl_rho = scale_t / scale_displ / RHOAV * 1.d9
+
+  ! crust_mantle
+  do ispec = 1, NSPEC_CRUST_MANTLE
+    do k = 1, NGLLZ
+      do j = 1, NGLLY
+        do i = 1, NGLLX
+
+            ! For anisotropic kernels
+            iglob = ibool_crust_mantle(i,j,k,ispec)
+
+            ! The cartesian global cijkl_kl are rotated into the spherical local cijkl_kl
+            ! ystore and zstore are thetaval and phival (line 2252) -- dangerous
+            call rotate_kernels_dble(cijkl_kl_crust_mantle(:,i,j,k,ispec),cijkl_kl_local, &
+                 ystore_crust_mantle(iglob),zstore_crust_mantle(iglob))
+
+            cijkl_kl_crust_mantle(:,i,j,k,ispec) = cijkl_kl_local * scale_kl_ani
+            rho_kl_crust_mantle(i,j,k,ispec) = rho_kl_crust_mantle(i,j,k,ispec) * scale_kl_rho
+
+        enddo
+      enddo
+    enddo
+  enddo
+
+  call create_name_database(prname,myrank,IREGION_CRUST_MANTLE,LOCAL_PATH)
+
       ! fully anisotropic kernels
       ! note: the C_ij and density kernels are not for relative perturbations (delta ln( m_i) = delta m_i / m_i),
       !          but absolute perturbations (delta m_i = m_i - m_0)
@@ -417,56 +567,8 @@
       write(27) - cijkl_kl_crust_mantle
       close(27)
 
-    endif
+  end subroutine save_kernels_crust_mantle_ani
 
-  else
-    ! primary kernels: (rho,kappa,mu) parameterization
-    open(unit=27,file=trim(prname)//'rhonotprime_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) rhonotprime_kl_crust_mantle
-    close(27)
-    open(unit=27,file=trim(prname)//'kappa_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) kappa_kl_crust_mantle
-    close(27)
-    open(unit=27,file=trim(prname)//'mu_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) mu_kl_crust_mantle
-    close(27)
-
-    ! (rho, alpha, beta ) parameterization
-    open(unit=27,file=trim(prname)//'rho_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) rho_kl_crust_mantle
-    close(27)
-    open(unit=27,file=trim(prname)//'alpha_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) alpha_kl_crust_mantle
-    close(27)
-    open(unit=27,file=trim(prname)//'beta_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) beta_kl_crust_mantle
-    close(27)
-
-    ! (rho, bulk, beta ) parameterization, K_rho same as above
-    open(unit=27,file=trim(prname)//'bulk_c_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) bulk_c_kl_crust_mantle
-    close(27)
-    open(unit=27,file=trim(prname)//'bulk_beta_kernel.bin',status='unknown',form='unformatted',action='write')
-    write(27) bulk_beta_kl_crust_mantle
-    close(27)
-
-
-  endif
-
-  ! cleans up temporary kernel arrays
-  if( SAVE_TRANSVERSE_KL ) then
-    deallocate(alphav_kl_crust_mantle,alphah_kl_crust_mantle, &
-        betav_kl_crust_mantle,betah_kl_crust_mantle, &
-        eta_kl_crust_mantle)
-    deallocate(bulk_c_kl_crust_mantle,bulk_betah_kl_crust_mantle, &
-        bulk_betav_kl_crust_mantle,bulk_beta_kl_crust_mantle)
-  endif
-  if( .not. ANISOTROPIC_KL ) then
-    deallocate(bulk_c_kl_crust_mantle,bulk_beta_kl_crust_mantle)
-  endif
-
-  end subroutine save_kernels_crust_mantle
-
 !
 !-------------------------------------------------------------------------------------------------
 !

Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/specfem3D.F90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/specfem3D.F90	2013-07-08 19:07:27 UTC (rev 22551)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/src/specfem3D/specfem3D.F90	2013-07-08 23:05:20 UTC (rev 22552)
@@ -2518,7 +2518,7 @@
     ! crust mantle
     if (SAVE_REGULAR_KL) then
       call save_regular_kernels_crust_mantle(myrank, &
-                  npoints_slice, hxir_reg, hetar_reg, hgammar_reg, ispec_reg, &
+                  npoints_slice,hxir_reg,hetar_reg,hgammar_reg,ispec_reg, &
                   scale_t,scale_displ, &
                   cijkl_kl_crust_mantle,rho_kl_crust_mantle, &
                   alpha_kl_crust_mantle,beta_kl_crust_mantle, &
@@ -2528,15 +2528,32 @@
                   kappahstore_crust_mantle,muhstore_crust_mantle, &
                   eta_anisostore_crust_mantle,ispec_is_tiso_crust_mantle,LOCAL_PATH,ANISOTROPIC_KL,SAVE_TRANSVERSE_KL)
     else
-      call save_kernels_crust_mantle(myrank,scale_t,scale_displ, &
+      if(ANISOTROPIC_KL .and. .not. SAVE_TRANSVERSE_KL) then
+        call save_kernels_crust_mantle_ani(myrank,scale_t,scale_displ, &
                   cijkl_kl_crust_mantle,rho_kl_crust_mantle, &
+                  ystore_crust_mantle,zstore_crust_mantle, &
+                  ibool_crust_mantle, &
+                  LOCAL_PATH)
+      else if(ANISOTROPIC_KL .and. SAVE_TRANSVERSE_KL) then
+        call save_kernels_crust_mantle_tiso(myrank,scale_t,scale_displ, &
+                  cijkl_kl_crust_mantle,rho_kl_crust_mantle, &
                   alpha_kl_crust_mantle,beta_kl_crust_mantle, &
-                  mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle, &
+                  rhonotprime_kl_crust_mantle, &
                   ystore_crust_mantle,zstore_crust_mantle, &
                   rhostore_crust_mantle,muvstore_crust_mantle, &
                   kappavstore_crust_mantle,ibool_crust_mantle, &
                   kappahstore_crust_mantle,muhstore_crust_mantle, &
-                  eta_anisostore_crust_mantle,ispec_is_tiso_crust_mantle,LOCAL_PATH,ANISOTROPIC_KL,SAVE_TRANSVERSE_KL)
+                  eta_anisostore_crust_mantle,ispec_is_tiso_crust_mantle, &
+                  LOCAL_PATH)
+      else
+        call save_kernels_crust_mantle_iso(myrank,scale_t,scale_displ, &
+                  rho_kl_crust_mantle, &
+                  alpha_kl_crust_mantle,beta_kl_crust_mantle, &
+                  mu_kl_crust_mantle, kappa_kl_crust_mantle, rhonotprime_kl_crust_mantle, &
+                  rhostore_crust_mantle,muvstore_crust_mantle, &
+                  kappavstore_crust_mantle, &
+                  LOCAL_PATH)
+      endif
     endif
 
     ! noise strength kernel



More information about the CIG-COMMITS mailing list