[cig-commits] r20566 - in seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER: EXAMPLES/global_s362ani_small/DATA EXAMPLES/regional_Greece_small/DATA UTILS/oldstuff/older_versions setup src/cuda src/meshfem3D src/shared src/specfem3D

danielpeter at geodynamics.org danielpeter at geodynamics.org
Sun Aug 12 17:58:03 PDT 2012


Author: danielpeter
Date: 2012-08-12 17:58:02 -0700 (Sun, 12 Aug 2012)
New Revision: 20566

Modified:
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/regional_Greece_small/DATA/Par_file
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_mesher.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_solver.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/setup/constants.h.in
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_scalar_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_vector_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/check_fields_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_add_sources_elastic_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_coupling_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_crust_mantle_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_inner_core_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_outer_core_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_kernels_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/it_update_displacement_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/mesh_constants_cuda.h
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/prepare_mesh_constants_cuda.cu
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/specfem3D_gpu_cuda_method_stubs.c
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/Makefile.in
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_MPI_interfaces.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_addressing.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_chunk_buffers.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_regions_mesh.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/get_perm_color.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_models.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_par.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1066a.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1dref.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_ak135.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_aniso_mantle.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_attenuation.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_heterogen_mantle.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_jp1d.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s20rts.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s40rts.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_sea1d.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/save_arrays_solver.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_MPI_interfaces.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_color_perm.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_inner_outer.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/get_model_parameters.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/save_header_file.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/assemble_MPI_vector.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_element.F90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_forces_crust_mantle.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/prepare_timerun.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_arrays_solver.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_mesh_databases.f90
   seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/specfem3D_par.F90
Log:
adds mesh coloring; uses modules for reference models

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/global_s362ani_small/DATA/Par_file	2012-08-13 00:58:02 UTC (rev 20566)
@@ -32,15 +32,15 @@
 # fully 3D models:
 # transversely_isotropic_prem_plus_3D_crust_2.0, 3D_anisotropic, 3D_attenuation,
 # s20rts, s362ani, s362iso, s362wmani, s362ani_prem, s29ea
-MODEL                           = 1D_transversely_isotropic_prem
+MODEL                           = s362ani
 
 # parameters describing the Earth model
-OCEANS                          = .false.
-ELLIPTICITY                     = .false.
-TOPOGRAPHY                      = .false.
-GRAVITY                         = .false.
-ROTATION                        = .false.
-ATTENUATION                     = .false.
+OCEANS                          = .true.
+ELLIPTICITY                     = .true.
+TOPOGRAPHY                      = .true.
+GRAVITY                         = .true.
+ROTATION                        = .true.
+ATTENUATION                     = .true.
 ATTENUATION_NEW                 = .false.
 
 # absorbing boundary conditions for a regional simulation

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/regional_Greece_small/DATA/Par_file
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/regional_Greece_small/DATA/Par_file	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/EXAMPLES/regional_Greece_small/DATA/Par_file	2012-08-13 00:58:02 UTC (rev 20566)
@@ -42,13 +42,13 @@
 GRAVITY                         = .true.
 ROTATION                        = .true.
 ATTENUATION                     = .true.
-ATTENUATION_NEW                 = .false.
+ATTENUATION_NEW                 = .true.
 
 # absorbing boundary conditions for a regional simulation
-ABSORBING_CONDITIONS            = .false.
+ABSORBING_CONDITIONS            = .true.
 
 # record length in minutes
-RECORD_LENGTH_IN_MINUTES        = 30.0d0
+RECORD_LENGTH_IN_MINUTES        = 15.0d0
 
 # save AVS or OpenDX movies
 MOVIE_SURFACE                   = .false.

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_mesher.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_mesher.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_mesher.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -25,6 +25,8 @@
 !
 !=====================================================================
 
+! obsolete...
+
   subroutine read_arrays_buffers_mesher(iregion_code,myrank, &
                                iboolleft_xi,iboolright_xi,iboolleft_eta,iboolright_eta, &
                                npoin2D_xi,npoin2D_eta, &

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_solver.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_solver.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/UTILS/oldstuff/older_versions/read_arrays_buffers_solver.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -26,314 +26,314 @@
 !=====================================================================
 
 ! obsolete...
-!
-!  subroutine read_arrays_buffers_solver(iregion_code,myrank, &
-!                               iboolleft_xi,iboolright_xi,iboolleft_eta,iboolright_eta, &
-!                               npoin2D_xi,npoin2D_eta, &
-!                               iprocfrom_faces,iprocto_faces,imsg_type, &
-!                               iproc_master_corners,iproc_worker1_corners,iproc_worker2_corners, &
-!                               iboolfaces,npoin2D_faces,iboolcorner, &
-!                               NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NGLOB2DMAX_XY,NGLOB1D_RADIAL, &
-!                               NUMMSGS_FACES,NCORNERSCHUNKS,NPROCTOT,NPROC_XI,NPROC_ETA,LOCAL_PATH,NCHUNKS)
-!
-!  implicit none
-!
-!! standard include of the MPI library
-!  include 'mpif.h'
-!
-!  include "constants.h"
-!
-!  integer iregion_code,myrank,NCHUNKS,ier
-!
-!  integer, dimension(NB_SQUARE_EDGES_ONEDIR) :: npoin2D_xi,npoin2D_eta
-!  integer NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NGLOB2DMAX_XY,NGLOB1D_RADIAL
-!  integer NUMMSGS_FACES,NCORNERSCHUNKS,NPROCTOT,NPROC_XI,NPROC_ETA
-!
-!  integer npoin2D_faces(NUMFACES_SHARED)
-!
-!  character(len=150) LOCAL_PATH
-!
-!  integer, dimension(NGLOB2DMAX_XY,NUMFACES_SHARED) :: iboolfaces
-!  integer, dimension(NGLOB1D_RADIAL,NUMCORNERS_SHARED) :: iboolcorner
-!  integer, dimension(NGLOB2DMAX_XMIN_XMAX) :: iboolleft_xi,iboolright_xi
-!  integer, dimension(NGLOB2DMAX_YMIN_YMAX) :: iboolleft_eta,iboolright_eta
-!
-!  integer, dimension(NUMMSGS_FACES) :: iprocfrom_faces,iprocto_faces,imsg_type
-!
-!! allocate array for messages for corners
-!  integer, dimension(NCORNERSCHUNKS) :: iproc_master_corners,iproc_worker1_corners,iproc_worker2_corners
-!
-!  integer npoin2D_xi_mesher,npoin2D_eta_mesher
-!  integer npoin1D_corner
-!
-!  integer imsg,icount_faces,icount_corners
-!  integer ipoin1D,ipoin2D
-!
-!  double precision xdummy,ydummy,zdummy
-!
-!! processor identification
-!  character(len=150) OUTPUT_FILES,prname,filename
-!
+
+  subroutine read_arrays_buffers_solver(iregion_code,myrank, &
+                               iboolleft_xi,iboolright_xi,iboolleft_eta,iboolright_eta, &
+                               npoin2D_xi,npoin2D_eta, &
+                               iprocfrom_faces,iprocto_faces,imsg_type, &
+                               iproc_master_corners,iproc_worker1_corners,iproc_worker2_corners, &
+                               iboolfaces,npoin2D_faces,iboolcorner, &
+                               NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NGLOB2DMAX_XY,NGLOB1D_RADIAL, &
+                               NUMMSGS_FACES,NCORNERSCHUNKS,NPROCTOT,NPROC_XI,NPROC_ETA,LOCAL_PATH,NCHUNKS)
+
+  implicit none
+
+! standard include of the MPI library
+  include 'mpif.h'
+
+  include "constants.h"
+
+  integer iregion_code,myrank,NCHUNKS,ier
+
+  integer, dimension(NB_SQUARE_EDGES_ONEDIR) :: npoin2D_xi,npoin2D_eta
+  integer NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NGLOB2DMAX_XY,NGLOB1D_RADIAL
+  integer NUMMSGS_FACES,NCORNERSCHUNKS,NPROCTOT,NPROC_XI,NPROC_ETA
+
+  integer npoin2D_faces(NUMFACES_SHARED)
+
+  character(len=150) LOCAL_PATH
+
+  integer, dimension(NGLOB2DMAX_XY,NUMFACES_SHARED) :: iboolfaces
+  integer, dimension(NGLOB1D_RADIAL,NUMCORNERS_SHARED) :: iboolcorner
+  integer, dimension(NGLOB2DMAX_XMIN_XMAX) :: iboolleft_xi,iboolright_xi
+  integer, dimension(NGLOB2DMAX_YMIN_YMAX) :: iboolleft_eta,iboolright_eta
+
+  integer, dimension(NUMMSGS_FACES) :: iprocfrom_faces,iprocto_faces,imsg_type
+
+! allocate array for messages for corners
+  integer, dimension(NCORNERSCHUNKS) :: iproc_master_corners,iproc_worker1_corners,iproc_worker2_corners
+
+  integer npoin2D_xi_mesher,npoin2D_eta_mesher
+  integer npoin1D_corner
+
+  integer imsg,icount_faces,icount_corners
+  integer ipoin1D,ipoin2D
+
+  double precision xdummy,ydummy,zdummy
+
+! processor identification
+  character(len=150) OUTPUT_FILES,prname,filename
+
+! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
+
+! get the base pathname for output files
+  call get_value_string(OUTPUT_FILES, 'OUTPUT_FILES', 'OUTPUT_FILES')
+
+! create the name for the database of the current slide and region
+  call create_name_database(prname,myrank,iregion_code,LOCAL_PATH)
+
+! read 2-D addressing for summation between slices along xi with MPI
+
+! read iboolleft_xi of this slice
+  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolleft_xi.txt', &
+        status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolleft_xi file')
+
+  npoin2D_xi(1) = 1
+ 350  continue
+  read(IIN,*) iboolleft_xi(npoin2D_xi(1)),xdummy,ydummy,zdummy
+  if(iboolleft_xi(npoin2D_xi(1)) > 0) then
+      npoin2D_xi(1) = npoin2D_xi(1) + 1
+      goto 350
+  endif
+! subtract the line that contains the flag after the last point
+  npoin2D_xi(1) = npoin2D_xi(1) - 1
+! read nb of points given by the mesher
+  read(IIN,*) npoin2D_xi_mesher
+  if(npoin2D_xi(1) > NGLOB2DMAX_XMIN_XMAX .or. npoin2D_xi(1) /= npoin2D_xi_mesher) &
+      call exit_MPI(myrank,'incorrect iboolleft_xi read')
+  close(IIN)
+
+! read iboolright_xi of this slice
+  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolright_xi.txt', &
+        status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolright_xi file')
+
+  npoin2D_xi(2) = 1
+ 360  continue
+  read(IIN,*) iboolright_xi(npoin2D_xi(2)),xdummy,ydummy,zdummy
+  if(iboolright_xi(npoin2D_xi(2)) > 0) then
+      npoin2D_xi(2) = npoin2D_xi(2) + 1
+      goto 360
+  endif
+! subtract the line that contains the flag after the last point
+  npoin2D_xi(2) = npoin2D_xi(2) - 1
+! read nb of points given by the mesher
+  read(IIN,*) npoin2D_xi_mesher
+  if(npoin2D_xi(2) > NGLOB2DMAX_XMIN_XMAX .or. npoin2D_xi(2) /= npoin2D_xi_mesher) &
+      call exit_MPI(myrank,'incorrect iboolright_xi read')
+  close(IIN)
+
+  if(myrank == 0) then
+    write(IMAIN,*) '  #max of points in MPI buffers along xi npoin2D_xi = ', &
+                                maxval(npoin2D_xi(:))
+    write(IMAIN,*) '  #max of array elements transferred npoin2D_xi*NDIM = ', &
+                                maxval(npoin2D_xi(:))*NDIM
+    write(IMAIN,*)
+  endif
+
+! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
+
+! read 2-D addressing for summation between slices along eta with MPI
+
+! read iboolleft_eta of this slice
+  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolleft_eta.txt', &
+        status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolleft_eta file')
+
+  npoin2D_eta(1) = 1
+ 370  continue
+  read(IIN,*) iboolleft_eta(npoin2D_eta(1)),xdummy,ydummy,zdummy
+  if(iboolleft_eta(npoin2D_eta(1)) > 0) then
+      npoin2D_eta(1) = npoin2D_eta(1) + 1
+      goto 370
+  endif
+! subtract the line that contains the flag after the last point
+  npoin2D_eta(1) = npoin2D_eta(1) - 1
+! read nb of points given by the mesher
+  read(IIN,*) npoin2D_eta_mesher
+  if(npoin2D_eta(1) > NGLOB2DMAX_YMIN_YMAX .or. npoin2D_eta(1) /= npoin2D_eta_mesher) &
+      call exit_MPI(myrank,'incorrect iboolleft_eta read')
+  close(IIN)
+
+! read iboolright_eta of this slice
+  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolright_eta.txt', &
+        status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolright_eta file')
+
+  npoin2D_eta(2) = 1
+ 380  continue
+  read(IIN,*) iboolright_eta(npoin2D_eta(2)),xdummy,ydummy,zdummy
+  if(iboolright_eta(npoin2D_eta(2)) > 0) then
+      npoin2D_eta(2) = npoin2D_eta(2) + 1
+      goto 380
+  endif
+! subtract the line that contains the flag after the last point
+  npoin2D_eta(2) = npoin2D_eta(2) - 1
+! read nb of points given by the mesher
+  read(IIN,*) npoin2D_eta_mesher
+  if(npoin2D_eta(2) > NGLOB2DMAX_YMIN_YMAX .or. npoin2D_eta(2) /= npoin2D_eta_mesher) &
+      call exit_MPI(myrank,'incorrect iboolright_eta read')
+  close(IIN)
+
+  if(myrank == 0) then
+    write(IMAIN,*) '  #max of points in MPI buffers along eta npoin2D_eta = ', &
+                                maxval(npoin2D_eta(:))
+    write(IMAIN,*) '  #max of array elements transferred npoin2D_eta*NDIM = ', &
+                                maxval(npoin2D_eta(:))*NDIM
+    write(IMAIN,*)
+  endif
+
+
 !! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
-!
-!! get the base pathname for output files
-!  call get_value_string(OUTPUT_FILES, 'OUTPUT_FILES', 'OUTPUT_FILES')
-!
-!! create the name for the database of the current slide and region
-!  call create_name_database(prname,myrank,iregion_code,LOCAL_PATH)
-!
-!! read 2-D addressing for summation between slices along xi with MPI
-!
-!! read iboolleft_xi of this slice
-!  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolleft_xi.txt', &
-!        status='old',action='read',iostat=ier)
-!  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolleft_xi file')
-!
-!  npoin2D_xi(1) = 1
-! 350  continue
-!  read(IIN,*) iboolleft_xi(npoin2D_xi(1)),xdummy,ydummy,zdummy
-!  if(iboolleft_xi(npoin2D_xi(1)) > 0) then
-!      npoin2D_xi(1) = npoin2D_xi(1) + 1
-!      goto 350
-!  endif
-!! subtract the line that contains the flag after the last point
-!  npoin2D_xi(1) = npoin2D_xi(1) - 1
-!! read nb of points given by the mesher
-!  read(IIN,*) npoin2D_xi_mesher
-!  if(npoin2D_xi(1) > NGLOB2DMAX_XMIN_XMAX .or. npoin2D_xi(1) /= npoin2D_xi_mesher) &
-!      call exit_MPI(myrank,'incorrect iboolleft_xi read')
-!  close(IIN)
-!
-!! read iboolright_xi of this slice
-!  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolright_xi.txt', &
-!        status='old',action='read',iostat=ier)
-!  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolright_xi file')
-!
-!  npoin2D_xi(2) = 1
-! 360  continue
-!  read(IIN,*) iboolright_xi(npoin2D_xi(2)),xdummy,ydummy,zdummy
-!  if(iboolright_xi(npoin2D_xi(2)) > 0) then
-!      npoin2D_xi(2) = npoin2D_xi(2) + 1
-!      goto 360
-!  endif
-!! subtract the line that contains the flag after the last point
-!  npoin2D_xi(2) = npoin2D_xi(2) - 1
-!! read nb of points given by the mesher
-!  read(IIN,*) npoin2D_xi_mesher
-!  if(npoin2D_xi(2) > NGLOB2DMAX_XMIN_XMAX .or. npoin2D_xi(2) /= npoin2D_xi_mesher) &
-!      call exit_MPI(myrank,'incorrect iboolright_xi read')
-!  close(IIN)
-!
-!  if(myrank == 0) then
-!    write(IMAIN,*) '  #max of points in MPI buffers along xi npoin2D_xi = ', &
-!                                maxval(npoin2D_xi(:))
-!    write(IMAIN,*) '  #max of array elements transferred npoin2D_xi*NDIM = ', &
-!                                maxval(npoin2D_xi(:))*NDIM
-!    write(IMAIN,*)
-!  endif
-!
-!! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
-!
-!! read 2-D addressing for summation between slices along eta with MPI
-!
-!! read iboolleft_eta of this slice
-!  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolleft_eta.txt', &
-!        status='old',action='read',iostat=ier)
-!  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolleft_eta file')
-!
-!  npoin2D_eta(1) = 1
-! 370  continue
-!  read(IIN,*) iboolleft_eta(npoin2D_eta(1)),xdummy,ydummy,zdummy
-!  if(iboolleft_eta(npoin2D_eta(1)) > 0) then
-!      npoin2D_eta(1) = npoin2D_eta(1) + 1
-!      goto 370
-!  endif
-!! subtract the line that contains the flag after the last point
-!  npoin2D_eta(1) = npoin2D_eta(1) - 1
-!! read nb of points given by the mesher
-!  read(IIN,*) npoin2D_eta_mesher
-!  if(npoin2D_eta(1) > NGLOB2DMAX_YMIN_YMAX .or. npoin2D_eta(1) /= npoin2D_eta_mesher) &
-!      call exit_MPI(myrank,'incorrect iboolleft_eta read')
-!  close(IIN)
-!
-!! read iboolright_eta of this slice
-!  open(unit=IIN,file=prname(1:len_trim(prname))//'iboolright_eta.txt', &
-!        status='old',action='read',iostat=ier)
-!  if( ier /= 0 ) call exit_MPI(myrank,'error opening iboolright_eta file')
-!
-!  npoin2D_eta(2) = 1
-! 380  continue
-!  read(IIN,*) iboolright_eta(npoin2D_eta(2)),xdummy,ydummy,zdummy
-!  if(iboolright_eta(npoin2D_eta(2)) > 0) then
-!      npoin2D_eta(2) = npoin2D_eta(2) + 1
-!      goto 380
-!  endif
-!! subtract the line that contains the flag after the last point
-!  npoin2D_eta(2) = npoin2D_eta(2) - 1
-!! read nb of points given by the mesher
-!  read(IIN,*) npoin2D_eta_mesher
-!  if(npoin2D_eta(2) > NGLOB2DMAX_YMIN_YMAX .or. npoin2D_eta(2) /= npoin2D_eta_mesher) &
-!      call exit_MPI(myrank,'incorrect iboolright_eta read')
-!  close(IIN)
-!
-!  if(myrank == 0) then
-!    write(IMAIN,*) '  #max of points in MPI buffers along eta npoin2D_eta = ', &
-!                                maxval(npoin2D_eta(:))
-!    write(IMAIN,*) '  #max of array elements transferred npoin2D_eta*NDIM = ', &
-!                                maxval(npoin2D_eta(:))*NDIM
-!    write(IMAIN,*)
-!  endif
-!
-!
-!!! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
-!
-!! read chunk messages only if more than one chunk
-!  if(NCHUNKS /= 1) then
-!
-!! read messages to assemble between chunks with MPI
-!
-!  if(myrank == 0) then
-!
-!    ! file with the list of processors for each message for faces
-!    open(unit=IIN,file=trim(OUTPUT_FILES)//'/list_messages_faces.txt', &
-!          status='old',action='read',iostat=ier)
-!    if( ier /= 0 ) call exit_MPI(myrank,'error opening list_messages_faces file')
-!
-!    do imsg = 1,NUMMSGS_FACES
-!      read(IIN,*) imsg_type(imsg),iprocfrom_faces(imsg),iprocto_faces(imsg)
-!      if      (iprocfrom_faces(imsg) < 0 &
-!          .or. iprocto_faces(imsg) < 0 &
-!          .or. iprocfrom_faces(imsg) > NPROCTOT-1 &
-!          .or. iprocto_faces(imsg) > NPROCTOT-1) &
-!        call exit_MPI(myrank,'incorrect chunk faces numbering')
-!      if (imsg_type(imsg) < 1 .or. imsg_type(imsg) > 3) &
-!        call exit_MPI(myrank,'incorrect message type labeling')
-!    enddo
-!    close(IIN)
-!
-!    ! file with the list of processors for each message for corners
-!    open(unit=IIN,file=trim(OUTPUT_FILES)//'/list_messages_corners.txt', &
-!          status='old',action='read',iostat=ier)
-!    if( ier /= 0 ) call exit_MPI(myrank,'error opening list_messages_corners file')
-!
-!    do imsg = 1,NCORNERSCHUNKS
-!      read(IIN,*) iproc_master_corners(imsg),iproc_worker1_corners(imsg), &
-!                            iproc_worker2_corners(imsg)
-!      if    (iproc_master_corners(imsg) < 0 &
-!        .or. iproc_worker1_corners(imsg) < 0 &
-!        .or. iproc_worker2_corners(imsg) < 0 &
-!        .or. iproc_master_corners(imsg) > NPROCTOT-1 &
-!        .or. iproc_worker1_corners(imsg) > NPROCTOT-1 &
-!        .or. iproc_worker2_corners(imsg) > NPROCTOT-1) &
-!        call exit_MPI(myrank,'incorrect chunk corner numbering')
-!    enddo
-!    close(IIN)
-!
-!  endif
-!
-!! broadcast the information read on the master to the nodes
-!  call MPI_BCAST(imsg_type,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!  call MPI_BCAST(iprocfrom_faces,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!  call MPI_BCAST(iprocto_faces,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!
-!  call MPI_BCAST(iproc_master_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!  call MPI_BCAST(iproc_worker1_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!  call MPI_BCAST(iproc_worker2_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-!  if( ier /= 0 ) call exit_MPI(myrank,'error mpi broadcast')
-!
-!
-!!---- read indirect addressing for each message for faces of the chunks
-!!---- a given slice can belong to at most two faces
-!  icount_faces = 0
-!  do imsg = 1,NUMMSGS_FACES
-!    if(myrank == iprocfrom_faces(imsg) .or. myrank == iprocto_faces(imsg)) then
-!      icount_faces = icount_faces + 1
-!
-!      if(icount_faces > NUMFACES_SHARED) then
-!        print*,'error ',myrank,' icount_faces: ',icount_faces,'NUMFACES_SHARED:',NUMFACES_SHARED
-!        print*,'iregion_code:',iregion_code
-!        call exit_MPI(myrank,'more than NUMFACES_SHARED faces for this slice')
-!      endif
-!      if(icount_faces > 2 .and. (NPROC_XI > 1 .or. NPROC_ETA > 1)) then
-!        print*,'error ',myrank,' icount_faces: ',icount_faces,'NPROC_XI:',NPROC_XI,'NPROC_ETA:',NPROC_ETA
-!        print*,'iregion_code:',iregion_code
-!        call exit_MPI(myrank,'more than two faces for this slice')
-!      endif
-!
-!      ! read file with 2D buffer for faces
-!      if(myrank == iprocfrom_faces(imsg)) then
-!        write(filename,"('buffer_faces_chunks_sender_msg',i6.6,'.txt')") imsg
-!      else if(myrank == iprocto_faces(imsg)) then
-!        write(filename,"('buffer_faces_chunks_receiver_msg',i6.6,'.txt')") imsg
-!      endif
-!
-!      open(unit=IIN,file=prname(1:len_trim(prname))//filename,status='old',action='read',iostat=ier)
-!      if( ier /= 0 ) call exit_MPI(myrank,'error opening buffer_faces file')
-!
-!      read(IIN,*) npoin2D_faces(icount_faces)
-!      if(npoin2D_faces(icount_faces) > NGLOB2DMAX_XY) then
-!        print*,'error ',myrank,' npoin2D_faces: ',npoin2D_faces(icount_faces),icount_faces
-!        print*,'iregion_code:',iregion_code
-!        call exit_MPI(myrank,'incorrect nb of points in face buffer')
-!      endif
-!
-!      do ipoin2D = 1,npoin2D_faces(icount_faces)
-!        read(IIN,*) iboolfaces(ipoin2D,icount_faces),xdummy,ydummy,zdummy
-!      enddo
-!      close(IIN)
-!
-!    endif
-!  enddo
-!
-!
-!!---- read indirect addressing for each message for corners of the chunks
-!!---- a given slice can belong to at most one corner
-!  icount_corners = 0
-!  do imsg = 1,NCORNERSCHUNKS
-!    ! if only two chunks then there is no second worker
-!    if(myrank == iproc_master_corners(imsg) .or. &
-!         myrank == iproc_worker1_corners(imsg) .or. &
-!         (NCHUNKS /= 2 .and. myrank == iproc_worker2_corners(imsg))) then
-!
-!      icount_corners = icount_corners + 1
-!      if(icount_corners>1 .and. (NPROC_XI > 1 .or. NPROC_ETA > 1)) then
-!        print*,'error ',myrank,'icount_corners:',icount_corners
-!        print*,'iregion_code:',iregion_code
-!        call exit_MPI(myrank,'more than one corner for this slice')
-!      endif
-!      if(icount_corners>4) call exit_MPI(myrank,'more than four corners for this slice')
-!
-!      ! read file with 1D buffer for corner
-!      if(myrank == iproc_master_corners(imsg)) then
-!        write(filename,"('buffer_corners_chunks_master_msg',i6.6,'.txt')") imsg
-!      else if(myrank == iproc_worker1_corners(imsg)) then
-!        write(filename,"('buffer_corners_chunks_worker1_msg',i6.6,'.txt')") imsg
-!      else if( NCHUNKS /= 2 .and. myrank == iproc_worker2_corners(imsg)) then
-!        write(filename,"('buffer_corners_chunks_worker2_msg',i6.6,'.txt')") imsg
-!      endif
-!
-!      ! matching codes
-!      open(unit=IIN,file=prname(1:len_trim(prname))//filename, &
-!            status='old',action='read',iostat=ier)
-!      if( ier /= 0 ) call exit_MPI(myrank,'error opening buffer_corners_chunks file')
-!
-!      read(IIN,*) npoin1D_corner
-!      if(npoin1D_corner /= NGLOB1D_RADIAL) then
-!        print*,'error ',myrank,' npoin1D_corner: ',npoin1D_corner,'NGLOB1D_RADIAL:',NGLOB1D_RADIAL
-!        print*,'iregion_code:',iregion_code
-!        call exit_MPI(myrank,'incorrect nb of points in corner buffer')
-!      endif
-!      do ipoin1D = 1,npoin1D_corner
-!        read(IIN,*) iboolcorner(ipoin1D,icount_corners),xdummy,ydummy,zdummy
-!      enddo
-!      close(IIN)
-!
-!    endif
-!
-!
-!  enddo
-!
-!  endif
-!
-!  end subroutine read_arrays_buffers_solver
-!
+
+! read chunk messages only if more than one chunk
+  if(NCHUNKS /= 1) then
+
+! read messages to assemble between chunks with MPI
+
+  if(myrank == 0) then
+
+    ! file with the list of processors for each message for faces
+    open(unit=IIN,file=trim(OUTPUT_FILES)//'/list_messages_faces.txt', &
+          status='old',action='read',iostat=ier)
+    if( ier /= 0 ) call exit_MPI(myrank,'error opening list_messages_faces file')
+
+    do imsg = 1,NUMMSGS_FACES
+      read(IIN,*) imsg_type(imsg),iprocfrom_faces(imsg),iprocto_faces(imsg)
+      if      (iprocfrom_faces(imsg) < 0 &
+          .or. iprocto_faces(imsg) < 0 &
+          .or. iprocfrom_faces(imsg) > NPROCTOT-1 &
+          .or. iprocto_faces(imsg) > NPROCTOT-1) &
+        call exit_MPI(myrank,'incorrect chunk faces numbering')
+      if (imsg_type(imsg) < 1 .or. imsg_type(imsg) > 3) &
+        call exit_MPI(myrank,'incorrect message type labeling')
+    enddo
+    close(IIN)
+
+    ! file with the list of processors for each message for corners
+    open(unit=IIN,file=trim(OUTPUT_FILES)//'/list_messages_corners.txt', &
+          status='old',action='read',iostat=ier)
+    if( ier /= 0 ) call exit_MPI(myrank,'error opening list_messages_corners file')
+
+    do imsg = 1,NCORNERSCHUNKS
+      read(IIN,*) iproc_master_corners(imsg),iproc_worker1_corners(imsg), &
+                            iproc_worker2_corners(imsg)
+      if    (iproc_master_corners(imsg) < 0 &
+        .or. iproc_worker1_corners(imsg) < 0 &
+        .or. iproc_worker2_corners(imsg) < 0 &
+        .or. iproc_master_corners(imsg) > NPROCTOT-1 &
+        .or. iproc_worker1_corners(imsg) > NPROCTOT-1 &
+        .or. iproc_worker2_corners(imsg) > NPROCTOT-1) &
+        call exit_MPI(myrank,'incorrect chunk corner numbering')
+    enddo
+    close(IIN)
+
+  endif
+
+! broadcast the information read on the master to the nodes
+  call MPI_BCAST(imsg_type,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(iprocfrom_faces,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(iprocto_faces,NUMMSGS_FACES,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+
+  call MPI_BCAST(iproc_master_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(iproc_worker1_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(iproc_worker2_corners,NCORNERSCHUNKS,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error mpi broadcast')
+
+
+!---- read indirect addressing for each message for faces of the chunks
+!---- a given slice can belong to at most two faces
+  icount_faces = 0
+  do imsg = 1,NUMMSGS_FACES
+    if(myrank == iprocfrom_faces(imsg) .or. myrank == iprocto_faces(imsg)) then
+      icount_faces = icount_faces + 1
+
+      if(icount_faces > NUMFACES_SHARED) then
+        print*,'error ',myrank,' icount_faces: ',icount_faces,'NUMFACES_SHARED:',NUMFACES_SHARED
+        print*,'iregion_code:',iregion_code
+        call exit_MPI(myrank,'more than NUMFACES_SHARED faces for this slice')
+      endif
+      if(icount_faces > 2 .and. (NPROC_XI > 1 .or. NPROC_ETA > 1)) then
+        print*,'error ',myrank,' icount_faces: ',icount_faces,'NPROC_XI:',NPROC_XI,'NPROC_ETA:',NPROC_ETA
+        print*,'iregion_code:',iregion_code
+        call exit_MPI(myrank,'more than two faces for this slice')
+      endif
+
+      ! read file with 2D buffer for faces
+      if(myrank == iprocfrom_faces(imsg)) then
+        write(filename,"('buffer_faces_chunks_sender_msg',i6.6,'.txt')") imsg
+      else if(myrank == iprocto_faces(imsg)) then
+        write(filename,"('buffer_faces_chunks_receiver_msg',i6.6,'.txt')") imsg
+      endif
+
+      open(unit=IIN,file=prname(1:len_trim(prname))//filename,status='old',action='read',iostat=ier)
+      if( ier /= 0 ) call exit_MPI(myrank,'error opening buffer_faces file')
+
+      read(IIN,*) npoin2D_faces(icount_faces)
+      if(npoin2D_faces(icount_faces) > NGLOB2DMAX_XY) then
+        print*,'error ',myrank,' npoin2D_faces: ',npoin2D_faces(icount_faces),icount_faces
+        print*,'iregion_code:',iregion_code
+        call exit_MPI(myrank,'incorrect nb of points in face buffer')
+      endif
+
+      do ipoin2D = 1,npoin2D_faces(icount_faces)
+        read(IIN,*) iboolfaces(ipoin2D,icount_faces),xdummy,ydummy,zdummy
+      enddo
+      close(IIN)
+
+    endif
+  enddo
+
+
+!---- read indirect addressing for each message for corners of the chunks
+!---- a given slice can belong to at most one corner
+  icount_corners = 0
+  do imsg = 1,NCORNERSCHUNKS
+    ! if only two chunks then there is no second worker
+    if(myrank == iproc_master_corners(imsg) .or. &
+         myrank == iproc_worker1_corners(imsg) .or. &
+         (NCHUNKS /= 2 .and. myrank == iproc_worker2_corners(imsg))) then
+
+      icount_corners = icount_corners + 1
+      if(icount_corners>1 .and. (NPROC_XI > 1 .or. NPROC_ETA > 1)) then
+        print*,'error ',myrank,'icount_corners:',icount_corners
+        print*,'iregion_code:',iregion_code
+        call exit_MPI(myrank,'more than one corner for this slice')
+      endif
+      if(icount_corners>4) call exit_MPI(myrank,'more than four corners for this slice')
+
+      ! read file with 1D buffer for corner
+      if(myrank == iproc_master_corners(imsg)) then
+        write(filename,"('buffer_corners_chunks_master_msg',i6.6,'.txt')") imsg
+      else if(myrank == iproc_worker1_corners(imsg)) then
+        write(filename,"('buffer_corners_chunks_worker1_msg',i6.6,'.txt')") imsg
+      else if( NCHUNKS /= 2 .and. myrank == iproc_worker2_corners(imsg)) then
+        write(filename,"('buffer_corners_chunks_worker2_msg',i6.6,'.txt')") imsg
+      endif
+
+      ! matching codes
+      open(unit=IIN,file=prname(1:len_trim(prname))//filename, &
+            status='old',action='read',iostat=ier)
+      if( ier /= 0 ) call exit_MPI(myrank,'error opening buffer_corners_chunks file')
+
+      read(IIN,*) npoin1D_corner
+      if(npoin1D_corner /= NGLOB1D_RADIAL) then
+        print*,'error ',myrank,' npoin1D_corner: ',npoin1D_corner,'NGLOB1D_RADIAL:',NGLOB1D_RADIAL
+        print*,'iregion_code:',iregion_code
+        call exit_MPI(myrank,'incorrect nb of points in corner buffer')
+      endif
+      do ipoin1D = 1,npoin1D_corner
+        read(IIN,*) iboolcorner(ipoin1D,icount_corners),xdummy,ydummy,zdummy
+      enddo
+      close(IIN)
+
+    endif
+
+
+  enddo
+
+  endif
+
+  end subroutine read_arrays_buffers_solver
+

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/setup/constants.h.in
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/setup/constants.h.in	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/setup/constants.h.in	2012-08-13 00:58:02 UTC (rev 20566)
@@ -560,24 +560,6 @@
 !!
 !!-----------------------------------------------------------
 
-! 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 DATA/s362ani/REF
-  integer, parameter :: NR_REF = 750
-
-! number of layers in DATA/Lebedev_sea99 1D model
-  integer, parameter :: NR_SEA1D = 163
-
-! three_d_mantle_model_constants
-  integer, parameter :: NK_20 = 20,NS_20 = 20,NS_40 = 40, ND = 1
-
-! heterogen_mantle_model_constants
-  integer, parameter :: N_R = 256,N_THETA = 256,N_PHI = 256
-
 ! QRFSI12 constants
   integer,parameter :: NKQ=8,MAXL_Q=12
   integer,parameter :: NSQ=(MAXL_Q+1)**2,NDEPTHS_REFQ=913
@@ -595,8 +577,12 @@
 
 ! parameters for GLL model (used for iterative model inversions)
   character(len=*), parameter :: PATHNAME_GLL_modeldir = 'DATA/GLL/'
+
+  integer, parameter :: GLL_REFERENCE_1D_MODEL = REFERENCE_MODEL_1DREF
   integer, parameter :: GLL_REFERENCE_MODEL = THREE_D_MODEL_S29EA
+
 !!-- uncomment for using S362ANI as reference model  (Hejun Zhu)
+!  integer, parameter :: GLL_REFERENCE_1D_MODEL = REFERENCE_MODEL_1DREF
 !  integer, parameter :: GLL_REFERENCE_MODEL = THREE_D_MODEL_S362ANI
 
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_scalar_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_scalar_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_scalar_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -48,12 +48,11 @@
                                                      int* d_ibool_interfaces) {
 
   int id = threadIdx.x + blockIdx.x*blockDim.x + blockIdx.y*gridDim.x*blockDim.x;
-  int iinterface=0;
 
-  for( iinterface=0; iinterface < num_interfaces; iinterface++) {
+  for( int iinterface=0; iinterface < num_interfaces; iinterface++) {
     if(id<d_nibool_interfaces[iinterface]) {
       d_send_potential_dot_dot_buffer[(id + max_nibool_interfaces*iinterface)] =
-      d_potential_dot_dot_acoustic[(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)];
+        d_potential_dot_dot_acoustic[(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)];
     }
   }
 
@@ -126,11 +125,9 @@
                                                       int* d_ibool_interfaces) {
 
   int id = threadIdx.x + blockIdx.x*blockDim.x + blockIdx.y*gridDim.x*blockDim.x;
-  int iinterface=0;
 
-  for( iinterface=0; iinterface < num_interfaces; iinterface++) {
+  for( int iinterface=0; iinterface < num_interfaces; iinterface++) {
     if(id<d_nibool_interfaces[iinterface]) {
-
       atomicAdd(&d_potential_dot_dot_acoustic[(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)],
                 d_send_potential_dot_dot_buffer[(id + max_nibool_interfaces*iinterface)]);
     }

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_vector_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_vector_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/assemble_MPI_vector_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -47,16 +47,15 @@
                                                  int* d_ibool_interfaces) {
 
   int id = threadIdx.x + blockIdx.x*blockDim.x + blockIdx.y*gridDim.x*blockDim.x;
-  int iinterface=0;
+  int iglob;
 
-  for( iinterface=0; iinterface < num_interfaces; iinterface++) {
+  for( int iinterface=0; iinterface < num_interfaces; iinterface++) {
     if(id<d_nibool_interfaces[iinterface]) {
-      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)] =
-      d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)];
-      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+1] =
-      d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)+1];
-      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+2] =
-      d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)+2];
+      iglob = d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1;
+      // fills buffer
+      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)] = d_accel[3*iglob];
+      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+1] = d_accel[3*iglob + 1];
+      d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+2] = d_accel[3*iglob + 2];
     }
   }
 
@@ -171,16 +170,15 @@
                                                   int* d_ibool_interfaces) {
 
   int id = threadIdx.x + blockIdx.x*blockDim.x + blockIdx.y*gridDim.x*blockDim.x;
-  int iinterface=0;
+  int iglob;
 
-  for( iinterface=0; iinterface < num_interfaces; iinterface++) {
+  for( int iinterface=0; iinterface < num_interfaces; iinterface++) {
     if(id < d_nibool_interfaces[iinterface]) {
-      atomicAdd(&d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)],
-                d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)]);
-      atomicAdd(&d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)+1],
-                d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+1]);
-      atomicAdd(&d_accel[3*(d_ibool_interfaces[id+max_nibool_interfaces*iinterface]-1)+2],
-                d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+2]);
+      iglob = d_ibool_interfaces[id + max_nibool_interfaces*iinterface]-1;
+      // assembles acceleration: adds contributions from buffer array
+      atomicAdd(&d_accel[3*iglob],d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)]);
+      atomicAdd(&d_accel[3*iglob + 1],d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+1]);
+      atomicAdd(&d_accel[3*iglob + 2],d_send_accel_buffer[3*(id + max_nibool_interfaces*iinterface)+2]);
     }
   }
 }
@@ -202,11 +200,10 @@
   // crust/mantle region
   if( *IREGION == IREGION_CRUST_MANTLE ){
     if( mp->num_interfaces_crust_mantle > 0 ){
-
       // copies vector buffer values to GPU
-      cudaMemcpy(mp->d_send_accel_buffer_crust_mantle, buffer_recv_vector,
-                 3*(mp->max_nibool_interfaces_crust_mantle)*(mp->num_interfaces_crust_mantle)*sizeof(realw),
-                 cudaMemcpyHostToDevice);
+      print_CUDA_error_if_any(cudaMemcpy(mp->d_send_accel_buffer_crust_mantle, buffer_recv_vector,
+                                         NDIM*(mp->max_nibool_interfaces_crust_mantle)*(mp->num_interfaces_crust_mantle)*sizeof(realw),
+                                         cudaMemcpyHostToDevice),41000);
 
       // assembles values
       blocksize = BLOCKSIZE_TRANSFER;
@@ -221,7 +218,8 @@
       dim3 grid(num_blocks_x,num_blocks_y);
       dim3 threads(blocksize,1,1);
 
-      if(*FORWARD_OR_ADJOINT == 1) { //assemble forward accel
+      if(*FORWARD_OR_ADJOINT == 1) {
+        //assemble forward accel
         assemble_boundary_accel_on_device<<<grid,threads>>>(mp->d_accel_crust_mantle,
                                                             mp->d_send_accel_buffer_crust_mantle,
                                                             mp->num_interfaces_crust_mantle,
@@ -229,7 +227,8 @@
                                                             mp->d_nibool_interfaces_crust_mantle,
                                                             mp->d_ibool_interfaces_crust_mantle);
       }
-      else if(*FORWARD_OR_ADJOINT == 3) { //assemble adjoint accel
+      else if(*FORWARD_OR_ADJOINT == 3) {
+        //assemble adjoint accel
         assemble_boundary_accel_on_device<<<grid,threads>>>(mp->d_b_accel_crust_mantle,
                                                             mp->d_send_accel_buffer_crust_mantle,
                                                             mp->num_interfaces_crust_mantle,
@@ -240,13 +239,17 @@
     }
   }
 
+#ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
+  exit_on_cuda_error("transfer_asmbl_accel_to_device in crust_mantle");
+#endif
+
   // inner core region
   if( *IREGION == IREGION_INNER_CORE ){
     if( mp->num_interfaces_inner_core > 0 ){
       // copies buffer values to GPU
-      cudaMemcpy(mp->d_send_accel_buffer_inner_core, buffer_recv_vector,
-                 3*(mp->max_nibool_interfaces_inner_core)*(mp->num_interfaces_inner_core)*sizeof(realw),
-                 cudaMemcpyHostToDevice);
+      print_CUDA_error_if_any(cudaMemcpy(mp->d_send_accel_buffer_inner_core, buffer_recv_vector,
+                                         NDIM*(mp->max_nibool_interfaces_inner_core)*(mp->num_interfaces_inner_core)*sizeof(realw),
+                                         cudaMemcpyHostToDevice),41001);
 
       // assembles values
       blocksize = BLOCKSIZE_TRANSFER;
@@ -261,7 +264,8 @@
       dim3 grid(num_blocks_x,num_blocks_y);
       dim3 threads(blocksize,1,1);
 
-      if(*FORWARD_OR_ADJOINT == 1) { //assemble forward accel
+      if(*FORWARD_OR_ADJOINT == 1) {
+        //assemble forward accel
         assemble_boundary_accel_on_device<<<grid,threads>>>(mp->d_accel_inner_core,
                                                             mp->d_send_accel_buffer_inner_core,
                                                             mp->num_interfaces_inner_core,
@@ -269,7 +273,8 @@
                                                             mp->d_nibool_interfaces_inner_core,
                                                             mp->d_ibool_interfaces_inner_core);
       }
-      else if(*FORWARD_OR_ADJOINT == 3) { //assemble adjoint accel
+      else if(*FORWARD_OR_ADJOINT == 3) {
+        //assemble adjoint accel
         assemble_boundary_accel_on_device<<<grid,threads>>>(mp->d_b_accel_inner_core,
                                                             mp->d_send_accel_buffer_inner_core,
                                                             mp->num_interfaces_inner_core,
@@ -280,8 +285,7 @@
     }
   }
 
-
 #ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
-  exit_on_cuda_error("transfer_asmbl_accel_to_device");
+  exit_on_cuda_error("transfer_asmbl_accel_to_device in inner_core");
 #endif
 }

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/check_fields_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/check_fields_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/check_fields_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -764,7 +764,7 @@
   realw max;
   realw *d_max;
 
-  max = 0.0;
+  max = 0.0f;
 
   /* way 1 : timing Elapsed time: 8.464813e-03
    realw* h_array;
@@ -946,7 +946,7 @@
   int blocksize = BLOCKSIZE_TRANSFER;
 
   // crust_mantle
-  max = 0.0;
+  max = 0.0f;
   size = mp->NGLOB_CRUST_MANTLE;
 
   size_padded = ((int)ceil(((double)size)/((double)blocksize)))*blocksize;
@@ -984,7 +984,7 @@
   free(h_max);
 
   // inner_core
-  max = 0.0;
+  max = 0.0f;
   size = mp->NGLOB_INNER_CORE;
 
   size_padded = ((int)ceil(((double)size)/((double)blocksize)))*blocksize;

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_add_sources_elastic_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_add_sources_elastic_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_add_sources_elastic_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -73,12 +73,9 @@
 
       // note: for global version, sourcearrays has dimensions
       //            sourcearrays(NDIM,NGLLX,NGLLY,NGLLZ,NSOURCES)
-      atomicAdd(&accel[iglob*3],
-                sourcearrays[INDEX5(3,5,5,5, 0,i,j,k,isource)]*stf);
-      atomicAdd(&accel[iglob*3+1],
-                sourcearrays[INDEX5(3,5,5,5, 1,i,j,k,isource)]*stf);
-      atomicAdd(&accel[iglob*3+2],
-                sourcearrays[INDEX5(3,5,5,5, 2,i,j,k,isource)]*stf);
+      atomicAdd(&accel[3*iglob], sourcearrays[INDEX5(3,5,5,5, 0,i,j,k,isource)]*stf);
+      atomicAdd(&accel[3*iglob+1], sourcearrays[INDEX5(3,5,5,5, 1,i,j,k,isource)]*stf);
+      atomicAdd(&accel[3*iglob+2], sourcearrays[INDEX5(3,5,5,5, 2,i,j,k,isource)]*stf);
     }
   }
 }
@@ -207,13 +204,13 @@
     iglob = ibool[INDEX4(NGLLX,NGLLX,NGLLX,i,j,k,ispec)]-1;
 
     // atomic operations are absolutely necessary for correctness!
-    atomicAdd(&accel[3*iglob],adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
+    atomicAdd(&accel[3*iglob], adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
                                                       0,i,j,k,irec_local)]);
 
-    atomicAdd(&accel[1+3*iglob], adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
+    atomicAdd(&accel[3*iglob+1], adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
                                                       1,i,j,k,irec_local)]);
 
-    atomicAdd(&accel[2+3*iglob],adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
+    atomicAdd(&accel[3*iglob+2], adj_sourcearrays[INDEX5(NDIM,NGLLX,NGLLX,NGLLX,
                                                       2,i,j,k,irec_local)]);
   }
 }

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_coupling_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_coupling_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_coupling_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -107,6 +107,8 @@
   }
 }
 
+/* ----------------------------------------------------------------------------------------------- */
+
 __global__ void compute_coupling_fluid_ICB_kernel(realw* displ_inner_core,
                                                   realw* accel_outer_core,
                                                   int* ibool_inner_core,

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_crust_mantle_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_crust_mantle_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_crust_mantle_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -69,10 +69,9 @@
                                               realw* sigma_xz,
                                               realw* sigma_yz) {
 
-  int i_sls;
   realw R_xx_val,R_yy_val;
 
-  for(i_sls = 0; i_sls < N_SLS; i_sls++){
+  for(int i_sls = 0; i_sls < N_SLS; i_sls++){
     // index
     // note: index for R_xx,.. here is (i_sls,i,j,k,ispec) and not (i,j,k,ispec,i_sls) as in local version
     //          local version: offset_sls = tx + NGLL3*(working_element + NSPEC*i_sls);
@@ -102,12 +101,10 @@
                                               realw* epsilondev_xz,realw* epsilondev_yz,
                                               realw epsilondev_xx_loc,realw epsilondev_yy_loc,realw epsilondev_xy_loc,
                                               realw epsilondev_xz_loc,realw epsilondev_yz_loc,
+                                              realw* d_c44store,
                                               int ANISOTROPY,
-                                              realw* d_c44store,
-                                              int ATTENUATION_3D
-                                              ){
+                                              int ATTENUATION_3D) {
 
-  int i_sls;
   realw fac;
   realw alphaval_loc,betaval_loc,gammaval_loc;
   realw factor_loc,Sn,Snp1;
@@ -120,7 +117,7 @@
   }
 
   // use Runge-Kutta scheme to march in time
-  for(i_sls = 0; i_sls < N_SLS; i_sls++){
+  for(int i_sls = 0; i_sls < N_SLS; i_sls++){
     // indices
     // note: index for R_xx,... here is (i_sls,i,j,k,ispec) and not (i,j,k,ispec,i_sls) as in local version
     //          local version: offset_sls = tx + NGLL3*(working_element + NSPEC*i_sls);
@@ -128,8 +125,10 @@
     // either mustore(i,j,k,ispec) * factor_common(i_sls,i,j,k,ispec)
     // or       factor_common(i_sls,:,:,:,ispec) * c44store(:,:,:,ispec)
     if( ATTENUATION_3D ){
+      // array dimension: factor_common(N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC)
       factor_loc = fac * factor_common[i_sls + N_SLS*(tx + NGLL3*working_element)];
     }else{
+      // array dimension: factor_common(N_SLS,1,1,1,NSPEC)
       factor_loc = fac * factor_common[i_sls + N_SLS*working_element];
     }
 
@@ -390,7 +389,9 @@
   mul = d_muvstore[offset];
 
   // use unrelaxed parameters if attenuation
-  if( ATTENUATION ){ mul = mul * one_minus_sum_beta_use; }
+  if( ATTENUATION ){
+    mul = mul * one_minus_sum_beta_use;
+  }
 
   lambdalplus2mul = kappal + 1.33333333333333333333f * mul;  // 4./3. = 1.3333333
   lambdal = lambdalplus2mul - 2.0f * mul;
@@ -469,8 +470,9 @@
   if( sizeof( theta ) == sizeof( float ) ){
     // float operations
 
-    // daniel: TODO - sincos function
-    // or: sincosf(theta, &sintheta, &costheta);
+    // sincos function return sinus and cosine for given value
+    // example:
+    //   sincosf(theta, &sintheta, &costheta);
     // or with loss of accuracy:  __sincosf(theta, &sintheta, &costheta);
     // or compile with: -use_fast_math
 
@@ -743,7 +745,7 @@
   int I = (tx-K*NGLL2-J*NGLLX);
 
   int active,offset;
-  int iglob = 0;
+  int iglob;
   int working_element;
 
   realw tempx1l,tempx2l,tempx3l,tempy1l,tempy2l,tempy3l,tempz1l,tempz2l,tempz3l;
@@ -751,10 +753,11 @@
   realw duxdxl,duxdyl,duxdzl,duydxl,duydyl,duydzl,duzdxl,duzdyl,duzdzl;
   realw duxdxl_plus_duydyl,duxdxl_plus_duzdzl,duydyl_plus_duzdzl;
   realw duxdyl_plus_duydxl,duzdxl_plus_duxdzl,duzdyl_plus_duydzl;
-
+  // attenuation
   realw tempx1l_att,tempx2l_att,tempx3l_att,tempy1l_att,tempy2l_att,tempy3l_att,tempz1l_att,tempz2l_att,tempz3l_att;
   realw duxdxl_att,duxdyl_att,duxdzl_att,duydxl_att,duydyl_att,duydzl_att,duzdxl_att,duzdyl_att,duzdzl_att;
   realw duxdyl_plus_duydxl_att,duzdxl_plus_duxdzl_att,duzdyl_plus_duydzl_att;
+  realw templ;
 
   realw fac1,fac2,fac3;
   realw minus_sum_beta,one_minus_sum_beta_use;
@@ -841,10 +844,10 @@
 #endif
       }
       else{
-          // takes old routines
-          s_dummyx_loc_att[tx] = s_dummyx_loc[tx];
-          s_dummyy_loc_att[tx] = s_dummyy_loc[tx];
-          s_dummyz_loc_att[tx] = s_dummyz_loc[tx];
+        // takes old routines
+        s_dummyx_loc_att[tx] = s_dummyx_loc[tx];
+        s_dummyy_loc_att[tx] = s_dummyy_loc[tx];
+        s_dummyz_loc_att[tx] = s_dummyz_loc[tx];
       }
     }
   }
@@ -895,7 +898,6 @@
         tempz3l += s_dummyz_loc[l*NGLL2+J*NGLLX+I]*fac3;
     }
 
-
     if( ATTENUATION){
       // temporary variables used for fixing attenuation in a consistent way
       tempx1l_att = 0.f;
@@ -929,115 +931,115 @@
     }
 #else
 
-    tempx1l = s_dummyx_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempx1l = s_dummyx_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempy1l = s_dummyy_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempy1l = s_dummyy_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempz1l = s_dummyz_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempz1l = s_dummyz_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempx2l = s_dummyx_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyx_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempx2l = s_dummyx_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyx_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempy2l = s_dummyy_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyy_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempy2l = s_dummyy_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyy_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempz2l = s_dummyz_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyz_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempz2l = s_dummyz_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyz_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempx3l = s_dummyx_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyx_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyx_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyx_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyx_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempx3l = s_dummyx_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyx_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyx_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyx_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyx_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-    tempy3l = s_dummyy_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyy_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyy_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyy_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyy_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempy3l = s_dummyy_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyy_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyy_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyy_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyy_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-    tempz3l = s_dummyz_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyz_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyz_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyz_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyz_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempz3l = s_dummyz_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyz_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyz_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyz_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyz_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
     if( ATTENUATION){
       // temporary variables used for fixing attenuation in a consistent way
-      tempx1l_att = s_dummyx_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempx1l_att = s_dummyx_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempy1l_att = s_dummyy_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempy1l_att = s_dummyy_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempz1l_att = s_dummyz_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempz1l_att = s_dummyz_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempx2l_att = s_dummyx_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyx_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempx2l_att = s_dummyx_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyx_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempy2l_att = s_dummyy_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyy_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempy2l_att = s_dummyy_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyy_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempz2l_att = s_dummyz_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyz_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempz2l_att = s_dummyz_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyz_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempx3l_att = s_dummyx_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyx_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyx_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyx_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyx_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempx3l_att = s_dummyx_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyx_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyx_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyx_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyx_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-      tempy3l_att = s_dummyy_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyy_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyy_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyy_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyy_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempy3l_att = s_dummyy_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyy_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyy_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyy_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyy_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-      tempz3l_att = s_dummyz_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyz_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyz_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyz_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyz_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempz3l_att = s_dummyz_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyz_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyz_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyz_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyz_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
     }
 
 #endif
@@ -1096,7 +1098,7 @@
 
       // computes deviatoric strain attenuation and/or for kernel calculations
       if(COMPUTE_AND_STORE_STRAIN) {
-        realw templ = 0.33333333333333333333f * (duxdxl_att + duydyl_att + duzdzl_att); // 1./3. = 0.33333
+        templ = 0.33333333333333333333f * (duxdxl_att + duydyl_att + duzdzl_att); // 1./3. = 0.33333
 
         // local storage: stresses at this current time step
         epsilondev_xx_loc = duxdxl_att - templ;
@@ -1114,7 +1116,7 @@
     }else{
       // computes deviatoric strain attenuation and/or for kernel calculations
       if(COMPUTE_AND_STORE_STRAIN) {
-        realw templ = 0.33333333333333333333f * (duxdxl + duydyl + duzdzl); // 1./3. = 0.33333
+        templ = 0.33333333333333333333f * (duxdxl + duydyl + duzdzl); // 1./3. = 0.33333
 
         // local storage: stresses at this current time step
         epsilondev_xx_loc = duxdxl - templ;
@@ -1186,7 +1188,6 @@
       }
     } // ! end of test whether isotropic or anisotropic element
 
-
     if(ATTENUATION && (! USE_ATTENUATION_MIMIC ) ){
       // subtracts memory variables if attenuation
       compute_element_cm_att_stress(tx,working_element,
@@ -1374,16 +1375,16 @@
 #endif // USE_TEXTURES_FIELDS
 
     }else{
+      // no mesh coloring uses atomic updates
 
-      // for testing purposes only: w/out atomic updates
+      atomicAdd(&d_accel[iglob*3], sum_terms1);
+      atomicAdd(&d_accel[iglob*3 + 1], sum_terms2);
+      atomicAdd(&d_accel[iglob*3 + 2], sum_terms3);
+
+      // debug: for testing purposes only: w/out atomic updates
       //d_accel[iglob*3] -= (0.00000001f*tempx1l + 0.00000001f*tempx2l + 0.00000001f*tempx3l);
       //d_accel[iglob*3 + 1] -= (0.00000001f*tempy1l + 0.00000001f*tempy2l + 0.00000001f*tempy3l);
       //d_accel[iglob*3 + 2] -= (0.00000001f*tempz1l + 0.00000001f*tempz2l + 0.00000001f*tempz3l);
-
-      atomicAdd(&d_accel[iglob*3], sum_terms1);
-      atomicAdd(&d_accel[iglob*3+1], sum_terms2);
-      atomicAdd(&d_accel[iglob*3+2], sum_terms3);
-
     }
 #endif // MESH_COLORING
 
@@ -1395,7 +1396,7 @@
                                 R_xx,R_yy,R_xy,R_xz,R_yz,
                                 epsilondev_xx,epsilondev_yy,epsilondev_xy,epsilondev_xz,epsilondev_yz,
                                 epsilondev_xx_loc,epsilondev_yy_loc,epsilondev_xy_loc,epsilondev_xz_loc,epsilondev_yz_loc,
-                                ANISOTROPY,d_c44store,ATTENUATION_3D);
+                                d_c44store,ANISOTROPY,ATTENUATION_3D);
     }
 
     // save deviatoric strain for Runge-Kutta scheme
@@ -1633,7 +1634,9 @@
 
     int nb_colors,nb_blocks_to_compute;
     int istart;
-    int color_offset,color_offset_nonpadded,color_offset_nonpadded_att2;
+    int color_offset,color_offset_nonpadded;
+    int color_offset_nonpadded_att2,color_offset_nonpadded_att3;
+    int color_offset_nonpadded_strain;
     int color_offset_ispec;
 
     // sets up color loop
@@ -1646,6 +1649,8 @@
       color_offset = 0;
       color_offset_nonpadded = 0;
       color_offset_nonpadded_att2 = 0;
+      color_offset_nonpadded_att3 = 0;
+      color_offset_nonpadded_strain = 0;
       color_offset_ispec = 0;
     }else{
       // inner elements (start after outer elements)
@@ -1655,12 +1660,22 @@
       // array offsets
       color_offset = (mp->nspec_outer_crust_mantle) * NGLL3_PADDED;
       color_offset_nonpadded = (mp->nspec_outer_crust_mantle) * NGLL3;
+      // for factor_common array
       if( mp->attenuation_3D ){
-        color_offset_nonpadded_att2 = (mp->nspec_outer_crust_mantle) * NGLL3 * N_SLS;
+        color_offset_nonpadded_att2 = (mp->nspec_outer_crust_mantle) * NGLL3;
+        color_offset_nonpadded_att3 = (mp->nspec_outer_crust_mantle) * NGLL3 * N_SLS;
       }else{
-        color_offset_nonpadded_att2 = (mp->nspec_outer_crust_mantle) * 1 * N_SLS;
+        color_offset_nonpadded_att2 = (mp->nspec_outer_crust_mantle) * 1;
+        color_offset_nonpadded_att3 = (mp->nspec_outer_crust_mantle) * 1 * N_SLS;
       }
-      color_offset_ispec = mp->nspec_outer_crust_mantle;
+      // for tiso models
+      if( ! mp->anisotropic_3D_mantle ){
+        color_offset_ispec = mp->nspec_outer_crust_mantle;
+      }
+      // for strain
+      if( ! mp->NSPEC_CRUST_MANTLE_STRAIN_ONLY == 1 ){
+        color_offset_nonpadded_strain = (mp->nspec_outer_crust_mantle) * NGLL3;
+      }
     }
 
     // loops over colors
@@ -1668,11 +1683,14 @@
 
       nb_blocks_to_compute = mp->h_num_elem_colors_crust_mantle[icolor];
 
+#ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
       // checks
-      //if( nb_blocks_to_compute <= 0 ){
-      //  printf("error number of elastic color blocks: %d -- color = %d \n",nb_blocks_to_compute,icolor);
-      //  exit(EXIT_FAILURE);
-      //}
+      if( nb_blocks_to_compute <= 0 ){
+        printf("error number of color blocks in crust_mantle: %d -- color = %d \n",
+               nb_blocks_to_compute,icolor);
+        exit(EXIT_FAILURE);
+      }
+#endif
 
       Kernel_2_crust_mantle(nb_blocks_to_compute,mp,
                             *deltat,
@@ -1698,9 +1716,9 @@
                             mp->d_epsilondev_xy_crust_mantle + color_offset_nonpadded,
                             mp->d_epsilondev_xz_crust_mantle + color_offset_nonpadded,
                             mp->d_epsilondev_yz_crust_mantle + color_offset_nonpadded,
-                            mp->d_eps_trace_over_3_crust_mantle + color_offset_nonpadded,
-                            mp->d_one_minus_sum_beta_crust_mantle + color_offset_nonpadded,
-                            mp->d_factor_common_crust_mantle + color_offset_nonpadded_att2,
+                            mp->d_eps_trace_over_3_crust_mantle + color_offset_nonpadded_strain,
+                            mp->d_one_minus_sum_beta_crust_mantle + color_offset_nonpadded_att2,
+                            mp->d_factor_common_crust_mantle + color_offset_nonpadded_att3,
                             mp->d_R_xx_crust_mantle + color_offset_nonpadded,
                             mp->d_R_yy_crust_mantle + color_offset_nonpadded,
                             mp->d_R_xy_crust_mantle + color_offset_nonpadded,
@@ -1746,14 +1764,23 @@
       color_offset_nonpadded += nb_blocks_to_compute * NGLL3;
       // for factor_common array
       if( mp->attenuation_3D ){
-        color_offset_nonpadded_att2 += nb_blocks_to_compute * NGLL3 * N_SLS;
+        color_offset_nonpadded_att2 += nb_blocks_to_compute * NGLL3;
+        color_offset_nonpadded_att3 += nb_blocks_to_compute * NGLL3 * N_SLS;
       }else{
-        color_offset_nonpadded_att2 += nb_blocks_to_compute * 1 * N_SLS;
+        color_offset_nonpadded_att2 += nb_blocks_to_compute * 1;
+        color_offset_nonpadded_att3 += nb_blocks_to_compute * 1 * N_SLS;
       }
-      // for array(ispec)
-      color_offset_ispec += nb_blocks_to_compute;
-    }
+      // for tiso models
+      if( ! mp->anisotropic_3D_mantle ){
+        color_offset_ispec += nb_blocks_to_compute;
+      }
+      // for strain
+      if( ! mp->NSPEC_CRUST_MANTLE_STRAIN_ONLY == 1 ){
+        color_offset_nonpadded_strain += nb_blocks_to_compute * NGLL3;
+      }
 
+    } // icolor
+
   }else{
 
     // no mesh coloring: uses atomic updates

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_inner_core_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_inner_core_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_inner_core_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -68,10 +68,10 @@
                                              realw* sigma_xz,
                                              realw* sigma_yz) {
 
-  int i_sls,offset;
+  int offset;
   realw R_xx_val,R_yy_val;
 
-  for(i_sls = 0; i_sls < N_SLS; i_sls++){
+  for(int i_sls = 0; i_sls < N_SLS; i_sls++){
     // index
     // note: index for R_xx,.. here is (i_sls,i,j,k,ispec) and not (i,j,k,ispec,i_sls) as in local version
     //          local version: offset_sls = tx + NGLL3*(working_element + NSPEC*i_sls);
@@ -106,7 +106,6 @@
                                               int ATTENUATION_3D
                                               ){
 
-  int i_sls;
   int offset;
   realw mul;
   realw alphaval_loc,betaval_loc,gammaval_loc;
@@ -115,7 +114,7 @@
   mul = d_muv[tx + NGLL3_PADDED * working_element];
 
   // use Runge-Kutta scheme to march in time
-  for(i_sls = 0; i_sls < N_SLS; i_sls++){
+  for(int i_sls = 0; i_sls < N_SLS; i_sls++){
 
     // indices
     // note: index for R_xx,... here is (i_sls,i,j,k,ispec) and not (i,j,k,ispec,i_sls) as in local version
@@ -340,21 +339,20 @@
                                          realw* d_minus_gravity_table,
                                          realw* d_minus_deriv_gravity_table,
                                          realw* d_density_table,
-                                         realw* wgll_cube){
+                                         realw* wgll_cube,
+                                         int NSPEC_INNER_CORE_STRAIN_ONLY){
 
   /* int bx = blockIdx.y*blockDim.x+blockIdx.x; //possible bug in original code*/
   int bx = blockIdx.y*gridDim.x+blockIdx.x;
   /* int bx = blockIdx.x; */
   int tx = threadIdx.x;
 
-  const int IFLAG_IN_FICTITIOUS_CUBE = 11; // from constants.h
-
   int K = (tx/NGLL2);
   int J = ((tx-K*NGLL2)/NGLLX);
   int I = (tx-K*NGLL2-J*NGLLX);
 
   int active,offset;
-  int iglob = 0;
+  int iglob;
   int working_element;
 
   realw tempx1l,tempx2l,tempx3l,tempy1l,tempy2l,tempy3l,tempz1l,tempz2l,tempz3l;
@@ -363,13 +361,16 @@
   realw duxdxl_plus_duydyl,duxdxl_plus_duzdzl,duydyl_plus_duzdzl;
   realw duxdyl_plus_duydxl,duzdxl_plus_duxdzl,duzdyl_plus_duydzl;
 
+  // attenuation
   realw tempx1l_att,tempx2l_att,tempx3l_att,tempy1l_att,tempy2l_att,tempy3l_att,tempz1l_att,tempz2l_att,tempz3l_att;
   realw duxdxl_att,duxdyl_att,duxdzl_att,duydxl_att,duydyl_att,duydzl_att,duzdxl_att,duzdyl_att,duzdzl_att;
   realw duxdyl_plus_duydxl_att,duzdxl_plus_duxdzl_att,duzdyl_plus_duydzl_att;
+  realw templ;
 
   realw fac1,fac2,fac3;
   realw lambdal,mul,lambdalplus2mul,kappal;
   realw mul_iso,mul_aniso;
+
   realw sigma_xx,sigma_yy,sigma_zz,sigma_xy,sigma_xz,sigma_yz;
   realw epsilondev_xx_loc,epsilondev_yy_loc,epsilondev_xy_loc,epsilondev_xz_loc,epsilondev_yz_loc;
   realw c11,c12,c13,c33,c44;
@@ -531,19 +532,19 @@
       tempz3l_att = 0.f;
 
       for (l=0;l<NGLLX;l++) {
-        fac1 = d_hprime_xx[l*NGLLX+I];
+        fac1 = sh_hprime_xx[l*NGLLX+I];
         offset = K*NGLL2+J*NGLLX+l;
         tempx1l_att += s_dummyx_loc_att[offset]*fac1;
         tempy1l_att += s_dummyy_loc_att[offset]*fac1;
         tempz1l_att += s_dummyz_loc_att[offset]*fac1;
 
-        fac2 = d_hprime_xx[l*NGLLX+J];
+        fac2 = sh_hprime_xx[l*NGLLX+J];
         offset = K*NGLL2+l*NGLLX+I;
         tempx2l_att += s_dummyx_loc_att[offset]*fac2;
         tempy2l_att += s_dummyy_loc_att[offset]*fac2;
         tempz2l_att += s_dummyz_loc_att[offset]*fac2;
 
-        fac3 = d_hprime_xx[l*NGLLX+K];
+        fac3 = sh_hprime_xx[l*NGLLX+K];
         offset = l*NGLL2+J*NGLLX+I;
         tempx3l_att += s_dummyx_loc_att[offset]*fac3;
         tempy3l_att += s_dummyy_loc_att[offset]*fac3;
@@ -552,115 +553,115 @@
     }
 #else
 
-    tempx1l = s_dummyx_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyx_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempx1l = s_dummyx_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyx_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempy1l = s_dummyy_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyy_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempy1l = s_dummyy_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyy_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempz1l = s_dummyz_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummyz_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    tempz1l = s_dummyz_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummyz_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    tempx2l = s_dummyx_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyx_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyx_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempx2l = s_dummyx_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyx_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyx_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempy2l = s_dummyy_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyy_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyy_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempy2l = s_dummyy_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyy_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyy_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempz2l = s_dummyz_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummyz_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummyz_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    tempz2l = s_dummyz_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummyz_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummyz_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    tempx3l = s_dummyx_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyx_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyx_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyx_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyx_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempx3l = s_dummyx_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyx_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyx_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyx_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyx_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-    tempy3l = s_dummyy_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyy_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyy_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyy_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyy_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempy3l = s_dummyy_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyy_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyy_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyy_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyy_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-    tempz3l = s_dummyz_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummyz_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummyz_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummyz_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummyz_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    tempz3l = s_dummyz_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummyz_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummyz_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummyz_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummyz_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
     if( ATTENUATION ){
       // temporary variables used for fixing attenuation in a consistent way
-      tempx1l_att = s_dummyx_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempx1l_att = s_dummyx_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyx_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempy1l_att = s_dummyy_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempy1l_att = s_dummyy_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyy_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempz1l_att = s_dummyz_loc_att[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+      tempz1l_att = s_dummyz_loc_att[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+        + s_dummyz_loc_att[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-      tempx2l_att = s_dummyx_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyx_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyx_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempx2l_att = s_dummyx_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyx_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyx_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempy2l_att = s_dummyy_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyy_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyy_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempy2l_att = s_dummyy_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyy_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyy_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempz2l_att = s_dummyz_loc_att[K*NGLL2+I]*d_hprime_xx[J]
-        + s_dummyz_loc_att[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-        + s_dummyz_loc_att[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+      tempz2l_att = s_dummyz_loc_att[K*NGLL2+I]*sh_hprime_xx[J]
+        + s_dummyz_loc_att[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+        + s_dummyz_loc_att[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-      tempx3l_att = s_dummyx_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyx_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyx_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyx_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyx_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempx3l_att = s_dummyx_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyx_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyx_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyx_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyx_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-      tempy3l_att = s_dummyy_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyy_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyy_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyy_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyy_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempy3l_att = s_dummyy_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyy_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyy_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyy_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyy_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
-      tempz3l_att = s_dummyz_loc_att[J*NGLLX+I]*d_hprime_xx[K]
-        + s_dummyz_loc_att[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-        + s_dummyz_loc_att[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-        + s_dummyz_loc_att[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-        + s_dummyz_loc_att[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+      tempz3l_att = s_dummyz_loc_att[J*NGLLX+I]*sh_hprime_xx[K]
+        + s_dummyz_loc_att[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+        + s_dummyz_loc_att[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+        + s_dummyz_loc_att[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+        + s_dummyz_loc_att[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
     }
 
 #endif
@@ -719,7 +720,7 @@
 
       // computes deviatoric strain attenuation and/or for kernel calculations
       if(COMPUTE_AND_STORE_STRAIN) {
-        realw templ = 0.33333333333333333333f * (duxdxl_att + duydyl_att + duzdzl_att); // 1./3. = 0.33333
+        templ = 0.33333333333333333333f * (duxdxl_att + duydyl_att + duzdzl_att); // 1./3. = 0.33333
 
         // local storage: stresses at this current time step
         epsilondev_xx_loc = duxdxl_att - templ;
@@ -728,14 +729,16 @@
         epsilondev_xz_loc = 0.5f * duzdxl_plus_duxdzl_att;
         epsilondev_yz_loc = 0.5f * duzdyl_plus_duydzl_att;
 
-        if(SIMULATION_TYPE == 3) {
+        if(NSPEC_INNER_CORE_STRAIN_ONLY == 1) {
+          epsilon_trace_over_3[tx] = templ;
+        }else{
           epsilon_trace_over_3[tx + working_element*NGLL3] = templ;
         }
       }
     }else{
       // computes deviatoric strain attenuation and/or for kernel calculations
       if(COMPUTE_AND_STORE_STRAIN) {
-        realw templ = 0.33333333333333333333f * (duxdxl + duydyl + duzdzl); // 1./3. = 0.33333
+        templ = 0.33333333333333333333f * (duxdxl + duydyl + duzdzl); // 1./3. = 0.33333
 
         // local storage: stresses at this current time step
         epsilondev_xx_loc = duxdxl - templ;
@@ -744,7 +747,9 @@
         epsilondev_xz_loc = 0.5f * duzdxl_plus_duxdzl;
         epsilondev_yz_loc = 0.5f * duzdyl_plus_duydzl;
 
-        if(SIMULATION_TYPE == 3) {
+        if(NSPEC_INNER_CORE_STRAIN_ONLY == 1) {
+          epsilon_trace_over_3[tx] = templ;
+        }else{
           epsilon_trace_over_3[tx + working_element*NGLL3] = templ;
         }
       }
@@ -1162,7 +1167,8 @@
                                              mp->d_minus_gravity_table,
                                              mp->d_minus_deriv_gravity_table,
                                              mp->d_density_table,
-                                             mp->d_wgll_cube);
+                                             mp->d_wgll_cube,
+                                             mp->NSPEC_INNER_CORE_STRAIN_ONLY);
 
 
   if(mp->simulation_type == 3) {
@@ -1209,7 +1215,8 @@
                                                 mp->d_minus_gravity_table,
                                                 mp->d_minus_deriv_gravity_table,
                                                 mp->d_density_table,
-                                                mp->d_wgll_cube);
+                                                mp->d_wgll_cube,
+                                                mp->NSPEC_INNER_CORE_STRAIN_ONLY);
   }
 
   // cudaEventRecord( stop, 0 );
@@ -1262,7 +1269,9 @@
 
     int nb_colors,nb_blocks_to_compute;
     int istart;
-    int color_offset,color_offset_nonpadded,color_offset_nonpadded_att2;
+    int color_offset,color_offset_nonpadded;
+    int color_offset_nonpadded_att2,color_offset_nonpadded_att3;
+    int color_offset_nonpadded_strain;
     int color_offset_ispec;
 
     // sets up color loop
@@ -1275,6 +1284,8 @@
       color_offset = 0;
       color_offset_nonpadded = 0;
       color_offset_nonpadded_att2 = 0;
+      color_offset_nonpadded_att3 = 0;
+      color_offset_nonpadded_strain = 0;
       color_offset_ispec = 0;
     }else{
       // inner elements (start after outer elements)
@@ -1284,12 +1295,20 @@
       // array offsets
       color_offset = (mp->nspec_outer_inner_core) * NGLL3_PADDED;
       color_offset_nonpadded = (mp->nspec_outer_inner_core) * NGLL3;
+      // for factor_common array
       if( mp->attenuation_3D ){
-        color_offset_nonpadded_att2 = (mp->nspec_outer_inner_core) * NGLL3 * N_SLS;
+        color_offset_nonpadded_att2 = (mp->nspec_outer_inner_core) * NGLL3;
+        color_offset_nonpadded_att3 = (mp->nspec_outer_inner_core) * NGLL3 * N_SLS;
       }else{
-        color_offset_nonpadded_att2 = (mp->nspec_outer_inner_core) * 1 * N_SLS;
+        color_offset_nonpadded_att2 = (mp->nspec_outer_inner_core) * 1;
+        color_offset_nonpadded_att3 = (mp->nspec_outer_inner_core) * 1 * N_SLS;
       }
+      // for idoubling array
       color_offset_ispec = mp->nspec_outer_inner_core;
+      // for strain
+      if( ! mp->NSPEC_INNER_CORE_STRAIN_ONLY == 1 ){
+        color_offset_nonpadded_strain = (mp->nspec_outer_inner_core) * NGLL3;
+      }
     }
 
     // loops over colors
@@ -1297,11 +1316,13 @@
 
       nb_blocks_to_compute = mp->h_num_elem_colors_inner_core[icolor];
 
+#ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
       // checks
-      //if( nb_blocks_to_compute <= 0 ){
-      //  printf("error number of elastic color blocks: %d -- color = %d \n",nb_blocks_to_compute,icolor);
-      //  exit(EXIT_FAILURE);
-      //}
+      if( nb_blocks_to_compute <= 0 ){
+        printf("error number of color blocks in inner_core: %d -- color = %d \n",nb_blocks_to_compute,icolor);
+        exit(EXIT_FAILURE);
+      }
+#endif
 
       Kernel_2_inner_core(nb_blocks_to_compute,mp,
                           *deltat,
@@ -1324,9 +1345,9 @@
                           mp->d_epsilondev_xy_inner_core + color_offset_nonpadded,
                           mp->d_epsilondev_xz_inner_core + color_offset_nonpadded,
                           mp->d_epsilondev_yz_inner_core + color_offset_nonpadded,
-                          mp->d_eps_trace_over_3_inner_core + color_offset_nonpadded,
-                          mp->d_one_minus_sum_beta_inner_core + color_offset_nonpadded,
-                          mp->d_factor_common_inner_core + color_offset_nonpadded_att2,
+                          mp->d_eps_trace_over_3_inner_core + color_offset_nonpadded_strain,
+                          mp->d_one_minus_sum_beta_inner_core + color_offset_nonpadded_att2,
+                          mp->d_factor_common_inner_core + color_offset_nonpadded_att3,
                           mp->d_R_xx_inner_core + color_offset_nonpadded,
                           mp->d_R_yy_inner_core + color_offset_nonpadded,
                           mp->d_R_xy_inner_core + color_offset_nonpadded,
@@ -1356,14 +1377,21 @@
       color_offset_nonpadded += nb_blocks_to_compute * NGLL3;
       // for factor_common array
       if( mp->attenuation_3D ){
-        color_offset_nonpadded_att2 += nb_blocks_to_compute * NGLL3 * N_SLS;
+        color_offset_nonpadded_att2 += nb_blocks_to_compute * NGLL3;
+        color_offset_nonpadded_att3 += nb_blocks_to_compute * NGLL3 * N_SLS;
       }else{
-        color_offset_nonpadded_att2 += nb_blocks_to_compute * 1 * N_SLS;
+        color_offset_nonpadded_att2 += nb_blocks_to_compute * 1;
+        color_offset_nonpadded_att3 += nb_blocks_to_compute * 1 * N_SLS;
       }
       // for array(ispec)
       color_offset_ispec += nb_blocks_to_compute;
-    }
+      // for strain
+      if( ! mp->NSPEC_INNER_CORE_STRAIN_ONLY == 1 ){
+        color_offset_nonpadded_strain += nb_blocks_to_compute * NGLL3;
+      }
 
+    } // icolor
+
   }else{
 
     // no mesh coloring: uses atomic updates

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_outer_core_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_outer_core_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_forces_outer_core_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -69,9 +69,6 @@
   realw ux_rotation,uy_rotation;
   realw source_euler_A,source_euler_B;
 
-  // non-padded offset
-  int offset_nonpadded = tx + working_element*NGLL3;
-
   // store the source for the Euler scheme for A_rotation and B_rotation
   two_omega_deltat = deltat * two_omega_earth;
 
@@ -82,8 +79,8 @@
   source_euler_A = two_omega_deltat * (cos_two_omega_t * dpotentialdyl + sin_two_omega_t * dpotentialdxl);
   source_euler_B = two_omega_deltat * (sin_two_omega_t * dpotentialdyl - cos_two_omega_t * dpotentialdxl);
 
-  A_rotation = d_A_array_rotation[offset_nonpadded];
-  B_rotation = d_B_array_rotation[offset_nonpadded];
+  A_rotation = d_A_array_rotation[tx + working_element*NGLL3]; // (non-padded offset)
+  B_rotation = d_B_array_rotation[tx + working_element*NGLL3];
 
   ux_rotation =   A_rotation*cos_two_omega_t + B_rotation*sin_two_omega_t;
   uy_rotation = - A_rotation*sin_two_omega_t + B_rotation*cos_two_omega_t;
@@ -91,9 +88,9 @@
   *dpotentialdx_with_rot = dpotentialdxl + ux_rotation;
   *dpotentialdy_with_rot = dpotentialdyl + uy_rotation;
 
-  // updates rotation term with Euler scheme
-  d_A_array_rotation[offset_nonpadded] += source_euler_A;
-  d_B_array_rotation[offset_nonpadded] += source_euler_B;
+  // updates rotation term with Euler scheme (non-padded offset)
+  d_A_array_rotation[tx + working_element*NGLL3] += source_euler_A;
+  d_B_array_rotation[tx + working_element*NGLL3] += source_euler_B;
 
   return;
 }
@@ -242,23 +239,23 @@
     }
 #else
 
-    temp1l = s_dummy_loc[K*NGLL2+J*NGLLX]*d_hprime_xx[I]
-            + s_dummy_loc[K*NGLL2+J*NGLLX+1]*d_hprime_xx[NGLLX+I]
-            + s_dummy_loc[K*NGLL2+J*NGLLX+2]*d_hprime_xx[2*NGLLX+I]
-            + s_dummy_loc[K*NGLL2+J*NGLLX+3]*d_hprime_xx[3*NGLLX+I]
-            + s_dummy_loc[K*NGLL2+J*NGLLX+4]*d_hprime_xx[4*NGLLX+I];
+    temp1l = s_dummy_loc[K*NGLL2+J*NGLLX]*sh_hprime_xx[I]
+            + s_dummy_loc[K*NGLL2+J*NGLLX+1]*sh_hprime_xx[NGLLX+I]
+            + s_dummy_loc[K*NGLL2+J*NGLLX+2]*sh_hprime_xx[2*NGLLX+I]
+            + s_dummy_loc[K*NGLL2+J*NGLLX+3]*sh_hprime_xx[3*NGLLX+I]
+            + s_dummy_loc[K*NGLL2+J*NGLLX+4]*sh_hprime_xx[4*NGLLX+I];
 
-    temp2l = s_dummy_loc[K*NGLL2+I]*d_hprime_xx[J]
-            + s_dummy_loc[K*NGLL2+NGLLX+I]*d_hprime_xx[NGLLX+J]
-            + s_dummy_loc[K*NGLL2+2*NGLLX+I]*d_hprime_xx[2*NGLLX+J]
-            + s_dummy_loc[K*NGLL2+3*NGLLX+I]*d_hprime_xx[3*NGLLX+J]
-            + s_dummy_loc[K*NGLL2+4*NGLLX+I]*d_hprime_xx[4*NGLLX+J];
+    temp2l = s_dummy_loc[K*NGLL2+I]*sh_hprime_xx[J]
+            + s_dummy_loc[K*NGLL2+NGLLX+I]*sh_hprime_xx[NGLLX+J]
+            + s_dummy_loc[K*NGLL2+2*NGLLX+I]*sh_hprime_xx[2*NGLLX+J]
+            + s_dummy_loc[K*NGLL2+3*NGLLX+I]*sh_hprime_xx[3*NGLLX+J]
+            + s_dummy_loc[K*NGLL2+4*NGLLX+I]*sh_hprime_xx[4*NGLLX+J];
 
-    temp3l = s_dummy_loc[J*NGLLX+I]*d_hprime_xx[K]
-            + s_dummy_loc[NGLL2+J*NGLLX+I]*d_hprime_xx[NGLLX+K]
-            + s_dummy_loc[2*NGLL2+J*NGLLX+I]*d_hprime_xx[2*NGLLX+K]
-            + s_dummy_loc[3*NGLL2+J*NGLLX+I]*d_hprime_xx[3*NGLLX+K]
-            + s_dummy_loc[4*NGLL2+J*NGLLX+I]*d_hprime_xx[4*NGLLX+K];
+    temp3l = s_dummy_loc[J*NGLLX+I]*sh_hprime_xx[K]
+            + s_dummy_loc[NGLL2+J*NGLLX+I]*sh_hprime_xx[NGLLX+K]
+            + s_dummy_loc[2*NGLL2+J*NGLLX+I]*sh_hprime_xx[2*NGLLX+K]
+            + s_dummy_loc[3*NGLL2+J*NGLLX+I]*sh_hprime_xx[3*NGLLX+K]
+            + s_dummy_loc[4*NGLL2+J*NGLLX+I]*sh_hprime_xx[4*NGLLX+K];
 
 #endif
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_kernels_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_kernels_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/compute_kernels_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -367,9 +367,6 @@
   realw xixl,xiyl,xizl,etaxl,etayl,etazl,gammaxl,gammayl,gammazl;
   int l,offset,offset1,offset2,offset3;
 
-  //const int NGLLX = 5;
-  //const int NGLL3_ALIGN = NGLL3_PADDED;
-
   int K = (ijk/NGLL2);
   int J = ((ijk-K*NGLL2)/NGLLX);
   int I = (ijk-K*NGLL2-J*NGLLX);

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/it_update_displacement_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/it_update_displacement_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/it_update_displacement_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -62,7 +62,7 @@
   if(id < size) {
     displ[id] = displ[id] + deltat*veloc[id] + deltatsqover2*accel[id];
     veloc[id] = veloc[id] + deltatover2*accel[id];
-    accel[id] = 0; // can do this using memset...not sure if faster
+    accel[id] = 0.0f; // can do this using memset...not sure if faster
   }
 }
 
@@ -219,7 +219,7 @@
     potential_dot_acoustic[id] = potential_dot_acoustic[id]
                                 + deltatover2*potential_dot_dot_acoustic[id];
 
-    potential_dot_dot_acoustic[id] = 0;
+    potential_dot_dot_acoustic[id] = 0.0f;
   }
 }
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/mesh_constants_cuda.h
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/mesh_constants_cuda.h	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/mesh_constants_cuda.h	2012-08-13 00:58:02 UTC (rev 20566)
@@ -70,9 +70,6 @@
 #define PRINT5(var,offset) // for(i=0;i<10;i++) printf("var(%d)=%f\n",i,var[offset+i]);
 #endif
 
-// error checking after cuda function calls
-#define ENABLE_VERY_SLOW_ERROR_CHECKING
-
 // maximum function
 #define MAX(x,y)                    (((x) < (y)) ? (y) : (x))
 
@@ -84,6 +81,8 @@
 void exit_on_cuda_error(char* kernel_name);
 void exit_on_error(char* info);
 
+// error checking after cuda function calls
+#define ENABLE_VERY_SLOW_ERROR_CHECKING
 
 /* ----------------------------------------------------------------------------------------------- */
 
@@ -112,6 +111,9 @@
 #define IREGION_CRUST_MANTLE  1
 #define IREGION_INNER_CORE  3
 
+// inner core : fictitious elements id (from constants.h)
+#define IFLAG_IN_FICTITIOUS_CUBE  11
+
 // R_EARTH_KM is the radius of the bottom of the oceans (radius of Earth in km)
 #define R_EARTH_KM 6371.0f
 // uncomment line below for PREM with oceans
@@ -131,6 +133,9 @@
 // (optional) pre-processing directive used in kernels: if defined check that it is also set in src/shared/constants.h:
 // leads up to ~ 5% performance increase
 //#define USE_MESH_COLORING_GPU
+#ifdef USE_MESH_COLORING_GPU
+#pragma message ("\nCompiling with: USE_MESH_COLORING_GPU enabled\n")
+#endif
 
 /* ----------------------------------------------------------------------------------------------- */
 
@@ -385,6 +390,7 @@
   // ------------------------------------------------------------------ //
   int NSPEC_INNER_CORE;
   int NGLOB_INNER_CORE;
+  int NSPEC_INNER_CORE_STRAIN_ONLY;
 
   // interpolators
   realw* d_xix_inner_core; realw* d_xiy_inner_core; realw* d_xiz_inner_core;

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/prepare_mesh_constants_cuda.cu
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/prepare_mesh_constants_cuda.cu	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/prepare_mesh_constants_cuda.cu	2012-08-13 00:58:02 UTC (rev 20566)
@@ -67,6 +67,7 @@
                                         int* NGLOB_CRUST_MANTLE_OCEANS,
                                         int* NSPEC_OUTER_CORE, int* NGLOB_OUTER_CORE,
                                         int* NSPEC_INNER_CORE, int* NGLOB_INNER_CORE,
+                                        int* NSPEC_INNER_CORE_STRAIN_ONLY,
                                         int* SIMULATION_TYPE,
                                         int* NOISE_TOMOGRAPHY,
                                         int* SAVE_FORWARD_f,
@@ -140,10 +141,13 @@
   mp->NGLOB_CRUST_MANTLE = *NGLOB_CRUST_MANTLE;
   mp->NSPEC_CRUST_MANTLE_STRAIN_ONLY = *NSPEC_CRUST_MANTLE_STRAIN_ONLY;
   mp->NGLOB_CRUST_MANTLE_OCEANS = *NGLOB_CRUST_MANTLE_OCEANS;
+
   mp->NSPEC_OUTER_CORE = *NSPEC_OUTER_CORE;
   mp->NGLOB_OUTER_CORE = *NGLOB_OUTER_CORE;
+
   mp->NSPEC_INNER_CORE = *NSPEC_INNER_CORE;
   mp->NGLOB_INNER_CORE = *NGLOB_INNER_CORE;
+  mp->NSPEC_INNER_CORE_STRAIN_ONLY = *NSPEC_INNER_CORE_STRAIN_ONLY;
 
   // simulation type
   mp->simulation_type = *SIMULATION_TYPE;
@@ -683,11 +687,12 @@
   print_CUDA_error_if_any(cudaMemcpy(mp->d_epsilondev_yz_inner_core,epsilondev_yz_inner_core,
                                      R_size*sizeof(realw),cudaMemcpyHostToDevice),4433);
 
-
+  // strain
+  size_strain_only = NGLL3*(mp->NSPEC_INNER_CORE_STRAIN_ONLY);
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_eps_trace_over_3_inner_core,
-                                     R_size*sizeof(realw)),4401);
+                                     size_strain_only*sizeof(realw)),4401);
   print_CUDA_error_if_any(cudaMemcpy(mp->d_eps_trace_over_3_inner_core,eps_trace_over_3_inner_core,
-                                     R_size*sizeof(realw),cudaMemcpyHostToDevice),4402);
+                                     size_strain_only*sizeof(realw),cudaMemcpyHostToDevice),4402);
   // backward/reconstructed fields
   if( mp->simulation_type == 3 ){
     print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_b_epsilondev_xx_inner_core,
@@ -1255,37 +1260,39 @@
 extern "C"
 void FC_FUNC_(prepare_crust_mantle_device,
              PREPARE_CRUST_MANTLE_DEVICE)(long* Mesh_pointer_f,
-             realw* h_xix, realw* h_xiy, realw* h_xiz,
-             realw* h_etax, realw* h_etay, realw* h_etaz,
-             realw* h_gammax, realw* h_gammay, realw* h_gammaz,
-             realw* h_rho,
-             realw* h_kappav, realw* h_muv,
-             realw* h_kappah, realw* h_muh,
-             realw* h_eta_aniso,
-             realw* h_rmassx,
-             realw* h_rmassy,
-             realw* h_rmassz,
-             realw* h_normal_top_crust_mantle,
-             int* h_ibelm_top_crust_mantle,
-             int* h_ibelm_bottom_crust_mantle,
-             int* h_ibool,
-             realw* h_xstore, realw* h_ystore, realw* h_zstore,
-             int* h_ispec_is_tiso,
-             realw *c11store,realw *c12store,realw *c13store,
-             realw *c14store,realw *c15store,realw *c16store,
-             realw *c22store,realw *c23store,realw *c24store,
-             realw *c25store,realw *c26store,realw *c33store,
-             realw *c34store,realw *c35store,realw *c36store,
-             realw *c44store,realw *c45store,realw *c46store,
-             realw *c55store,realw *c56store,realw *c66store,
-             int* num_phase_ispec,
-             int* phase_ispec_inner,
-             int* nspec_outer,
-             int* nspec_inner,
-             int* NSPEC2D_TOP_CM,
-       int* NSPEC2D_BOTTOM_CM,
-       int* NCHUNKS_VAL
-             ) {
+                                          realw* h_xix, realw* h_xiy, realw* h_xiz,
+                                          realw* h_etax, realw* h_etay, realw* h_etaz,
+                                          realw* h_gammax, realw* h_gammay, realw* h_gammaz,
+                                          realw* h_rho,
+                                          realw* h_kappav, realw* h_muv,
+                                          realw* h_kappah, realw* h_muh,
+                                          realw* h_eta_aniso,
+                                          realw* h_rmassx,
+                                          realw* h_rmassy,
+                                          realw* h_rmassz,
+                                          realw* h_normal_top_crust_mantle,
+                                          int* h_ibelm_top_crust_mantle,
+                                          int* h_ibelm_bottom_crust_mantle,
+                                          int* h_ibool,
+                                          realw* h_xstore, realw* h_ystore, realw* h_zstore,
+                                          int* h_ispec_is_tiso,
+                                          realw *c11store,realw *c12store,realw *c13store,
+                                          realw *c14store,realw *c15store,realw *c16store,
+                                          realw *c22store,realw *c23store,realw *c24store,
+                                          realw *c25store,realw *c26store,realw *c33store,
+                                          realw *c34store,realw *c35store,realw *c36store,
+                                          realw *c44store,realw *c45store,realw *c46store,
+                                          realw *c55store,realw *c56store,realw *c66store,
+                                          int* num_phase_ispec,
+                                          int* phase_ispec_inner,
+                                          int* nspec_outer,
+                                          int* nspec_inner,
+                                          int* NSPEC2D_TOP_CM,
+                                          int* NSPEC2D_BOTTOM_CM,
+                                          int* NCHUNKS_VAL,
+                                          int* num_colors_outer,
+                                          int* num_colors_inner,
+                                          int* num_elem_colors) {
 
   TRACE("prepare_crust_mantle_device");
 
@@ -1305,8 +1312,6 @@
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_gammax_crust_mantle, size_padded*sizeof(realw)),1007);
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_gammay_crust_mantle, size_padded*sizeof(realw)),1008);
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_gammaz_crust_mantle, size_padded*sizeof(realw)),1009);
-  // muv needed in case for attenuation (only Q_mu shear attenuation)
-  print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_muvstore_crust_mantle, size_padded*sizeof(realw)),1011);
 
   // transfer constant element data with padding
   for(int i=0;i < mp->NSPEC_CRUST_MANTLE;i++) {
@@ -1328,9 +1333,6 @@
                                        NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1508);
     print_CUDA_error_if_any(cudaMemcpy(mp->d_gammaz_crust_mantle+i*NGLL3_PADDED,&h_gammaz[i*NGLL3],
                                        NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1509);
-    // muvstore
-    print_CUDA_error_if_any(cudaMemcpy(mp->d_muvstore_crust_mantle+i*NGLL3_PADDED,   &h_muv[i*NGLL3],
-                                       NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1511);
   }
 
   // global indexing
@@ -1350,22 +1352,29 @@
 
     // kappavstore, kappahstore
     print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_kappavstore_crust_mantle, size_padded*sizeof(realw)),1010);
-    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_kappahstore_crust_mantle, size_padded*sizeof(realw)),1010);
-    // muhstore
-    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_muhstore_crust_mantle, size_padded*sizeof(realw)),1010);
+    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_kappahstore_crust_mantle, size_padded*sizeof(realw)),1011);
+
+    // muvstore,muhstore
+    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_muvstore_crust_mantle, size_padded*sizeof(realw)),1012);
+    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_muhstore_crust_mantle, size_padded*sizeof(realw)),1013);
+
     // eta_anisostore
-    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_eta_anisostore_crust_mantle, size_padded*sizeof(realw)),1010);
+    print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_eta_anisostore_crust_mantle, size_padded*sizeof(realw)),1014);
 
     // transfer with padding
     for(int i=0;i < mp->NSPEC_CRUST_MANTLE;i++) {
       print_CUDA_error_if_any(cudaMemcpy(mp->d_kappavstore_crust_mantle+i*NGLL3_PADDED,&h_kappav[i*NGLL3],
                                        NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1510);
       print_CUDA_error_if_any(cudaMemcpy(mp->d_kappahstore_crust_mantle+i*NGLL3_PADDED,&h_kappah[i*NGLL3],
-                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1510);
+                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1511);
+
+      print_CUDA_error_if_any(cudaMemcpy(mp->d_muvstore_crust_mantle+i*NGLL3_PADDED,   &h_muv[i*NGLL3],
+                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1512);
       print_CUDA_error_if_any(cudaMemcpy(mp->d_muhstore_crust_mantle+i*NGLL3_PADDED,&h_muh[i*NGLL3],
-                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1510);
+                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1513);
+
       print_CUDA_error_if_any(cudaMemcpy(mp->d_eta_anisostore_crust_mantle+i*NGLL3_PADDED,&h_eta_aniso[i*NGLL3],
-                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1510);
+                                         NGLL3*sizeof(realw),cudaMemcpyHostToDevice),1514);
     }
   }else{
     // anisotropic 3D mantle
@@ -1525,16 +1534,14 @@
   #ifdef USE_TEXTURES_FIELDS
   {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_displ_cm_tex_ref_ptr, "d_displ_cm_tex"), 4001);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc1 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_displ_cm_tex_ref_ptr, mp->d_displ_crust_mantle,
-                                            &channelDesc, sizeof(realw)*size), 4001);
-  }
+                                            &channelDesc1, sizeof(realw)*size), 4001);
 
-  {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_accel_cm_tex_ref_ptr, "d_accel_cm_tex"), 4003);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc2 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_accel_cm_tex_ref_ptr, mp->d_accel_crust_mantle,
-                                            &channelDesc, sizeof(realw)*size), 4003);
+                                            &channelDesc2, sizeof(realw)*size), 4003);
   }
   #endif
 
@@ -1587,6 +1594,11 @@
     }
   }
 
+  // mesh coloring
+  mp->num_colors_outer_crust_mantle = *num_colors_outer;
+  mp->num_colors_inner_crust_mantle = *num_colors_inner;
+  mp->h_num_elem_colors_crust_mantle = (int*) num_elem_colors;
+
 #ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
   exit_on_cuda_error("prepare_crust_mantle_device");
 #endif
@@ -1607,21 +1619,23 @@
                                          realw* h_gammax, realw* h_gammay, realw* h_gammaz,
                                          realw* h_rho, realw* h_kappav,
                                          realw* h_rmass,
-           realw* h_normal_top_outer_core,
-           realw* h_normal_bottom_outer_core,
-           realw* h_jacobian2D_top_outer_core,
-           realw* h_jacobian2D_bottom_outer_core,
-           int* h_ibelm_top_outer_core,
-           int* h_ibelm_bottom_outer_core,
+                                         realw* h_normal_top_outer_core,
+                                         realw* h_normal_bottom_outer_core,
+                                         realw* h_jacobian2D_top_outer_core,
+                                         realw* h_jacobian2D_bottom_outer_core,
+                                         int* h_ibelm_top_outer_core,
+                                         int* h_ibelm_bottom_outer_core,
                                          int* h_ibool,
                                          realw* h_xstore, realw* h_ystore, realw* h_zstore,
                                          int* num_phase_ispec,
                                          int* phase_ispec_inner,
                                          int* nspec_outer,
                                          int* nspec_inner,
-           int* NSPEC2D_TOP_OC,
-           int* NSPEC2D_BOTTOM_OC
-                                         ) {
+                                         int* NSPEC2D_TOP_OC,
+                                         int* NSPEC2D_BOTTOM_OC,
+                                         int* num_colors_outer,
+                                         int* num_colors_inner,
+                                         int* num_elem_colors) {
 
   TRACE("prepare_outer_core_device");
 
@@ -1741,16 +1755,14 @@
   #ifdef USE_TEXTURES_FIELDS
   {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_displ_oc_tex_ref_ptr, "d_displ_oc_tex"), 4001);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc1 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_displ_oc_tex_ref_ptr, mp->d_displ_outer_core,
-                                            &channelDesc, sizeof(realw)*size), 4001);
-  }
+                                            &channelDesc1, sizeof(realw)*size), 4001);
 
-  {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_accel_oc_tex_ref_ptr, "d_accel_oc_tex"), 4003);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc2 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_accel_oc_tex_ref_ptr, mp->d_accel_outer_core,
-                                            &channelDesc, sizeof(realw)*size), 4003);
+                                            &channelDesc2, sizeof(realw)*size), 4003);
   }
   #endif
 
@@ -1776,6 +1788,11 @@
     print_CUDA_error_if_any(cudaMemset(mp->d_alpha_kl_outer_core,0,size*sizeof(realw)),5208);
   }
 
+  // mesh coloring
+  mp->num_colors_outer_outer_core = *num_colors_outer;
+  mp->num_colors_inner_outer_core = *num_colors_inner;
+  mp->h_num_elem_colors_outer_core = (int*) num_elem_colors;
+
 #ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
   exit_on_cuda_error("prepare_outer_core_device");
 #endif
@@ -1791,22 +1808,25 @@
 extern "C"
 void FC_FUNC_(prepare_inner_core_device,
               PREPARE_INNER_CORE_DEVICE)(long* Mesh_pointer_f,
-           realw* h_xix, realw* h_xiy, realw* h_xiz,
-           realw* h_etax, realw* h_etay, realw* h_etaz,
-           realw* h_gammax, realw* h_gammay, realw* h_gammaz,
-           realw* h_rho, realw* h_kappav, realw* h_muv,
-           realw* h_rmass,
-           int* h_ibelm_top_inner_core,
-           int* h_ibool,
-           realw* h_xstore, realw* h_ystore, realw* h_zstore,
-           realw *c11store,realw *c12store,realw *c13store,
-           realw *c33store,realw *c44store,
-           int* h_idoubling_inner_core,
-           int* num_phase_ispec,
-           int* phase_ispec_inner,
-           int* nspec_outer,
-           int* nspec_inner,
-           int* NSPEC2D_TOP_IC) {
+                                         realw* h_xix, realw* h_xiy, realw* h_xiz,
+                                         realw* h_etax, realw* h_etay, realw* h_etaz,
+                                         realw* h_gammax, realw* h_gammay, realw* h_gammaz,
+                                         realw* h_rho, realw* h_kappav, realw* h_muv,
+                                         realw* h_rmass,
+                                         int* h_ibelm_top_inner_core,
+                                         int* h_ibool,
+                                         realw* h_xstore, realw* h_ystore, realw* h_zstore,
+                                         realw *c11store,realw *c12store,realw *c13store,
+                                         realw *c33store,realw *c44store,
+                                         int* h_idoubling_inner_core,
+                                         int* num_phase_ispec,
+                                         int* phase_ispec_inner,
+                                         int* nspec_outer,
+                                         int* nspec_inner,
+                                         int* NSPEC2D_TOP_IC,
+                                         int* num_colors_outer,
+                                         int* num_colors_inner,
+                                         int* num_elem_colors) {
 
   TRACE("prepare_inner_core_device");
 
@@ -1827,6 +1847,7 @@
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_gammay_inner_core, size_padded*sizeof(realw)),1008);
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_gammaz_inner_core, size_padded*sizeof(realw)),1009);
 
+  // muvstore needed for attenuatioin also for anisotropic inner core
   print_CUDA_error_if_any(cudaMalloc((void**) &mp->d_muvstore_inner_core, size_padded*sizeof(realw)),1011);
 
   // transfer constant element data with padding
@@ -1954,16 +1975,14 @@
   #ifdef USE_TEXTURES_FIELDS
   {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_displ_ic_tex_ref_ptr, "d_displ_ic_tex"), 4001);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc1 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_displ_ic_tex_ref_ptr, mp->d_displ_inner_core,
-                                            &channelDesc, sizeof(realw)*size), 4001);
-  }
+                                            &channelDesc1, sizeof(realw)*size), 4001);
 
-  {
     print_CUDA_error_if_any(cudaGetTextureReference(&mp->d_accel_ic_tex_ref_ptr, "d_accel_ic_tex"), 4003);
-    cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<realw>();
+    cudaChannelFormatDesc channelDesc2 = cudaCreateChannelDesc<realw>();
     print_CUDA_error_if_any(cudaBindTexture(0, mp->d_accel_ic_tex_ref_ptr, mp->d_accel_inner_core,
-                                            &channelDesc, sizeof(realw)*size), 4003);
+                                            &channelDesc2, sizeof(realw)*size), 4003);
   }
   #endif
 
@@ -1992,6 +2011,10 @@
     print_CUDA_error_if_any(cudaMemset(mp->d_beta_kl_inner_core,0,size*sizeof(realw)),5208);
   }
 
+  // mesh coloring
+  mp->num_colors_outer_inner_core = *num_colors_outer;
+  mp->num_colors_inner_inner_core = *num_colors_inner;
+  mp->h_num_elem_colors_inner_core = (int*) num_elem_colors;
 
 #ifdef ENABLE_VERY_SLOW_ERROR_CHECKING
   exit_on_cuda_error("prepare_inner_core_device");

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/specfem3D_gpu_cuda_method_stubs.c
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/specfem3D_gpu_cuda_method_stubs.c	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/cuda/specfem3D_gpu_cuda_method_stubs.c	2012-08-13 00:58:02 UTC (rev 20566)
@@ -366,6 +366,7 @@
                                         int* NGLOB_CRUST_MANTLE_OCEANS,
                                         int* NSPEC_OUTER_CORE, int* NGLOB_OUTER_CORE,
                                         int* NSPEC_INNER_CORE, int* NGLOB_INNER_CORE,
+                                        int* NSPEC_INNER_CORE_STRAIN_ONLY,
                                         int* SIMULATION_TYPE,
                                         int* NOISE_TOMOGRAPHY,
                                         int* SAVE_FORWARD_f,
@@ -519,37 +520,39 @@
 
 void FC_FUNC_(prepare_crust_mantle_device,
              PREPARE_CRUST_MANTLE_DEVICE)(long* Mesh_pointer_f,
-             realw* h_xix, realw* h_xiy, realw* h_xiz,
-             realw* h_etax, realw* h_etay, realw* h_etaz,
-             realw* h_gammax, realw* h_gammay, realw* h_gammaz,
-             realw* h_rho,
-             realw* h_kappav, realw* h_muv,
-             realw* h_kappah, realw* h_muh,
-             realw* h_eta_aniso,
-             realw* h_rmassx,
-             realw* h_rmassy,
-             realw* h_rmassz,
-             realw* h_normal_top_crust_mantle,
-             int* h_ibelm_top_crust_mantle,
-             int* h_ibelm_bottom_crust_mantle,
-             int* h_ibool,
-             realw* h_xstore, realw* h_ystore, realw* h_zstore,
-             int* h_ispec_is_tiso,
-             realw *c11store,realw *c12store,realw *c13store,
-             realw *c14store,realw *c15store,realw *c16store,
-             realw *c22store,realw *c23store,realw *c24store,
-             realw *c25store,realw *c26store,realw *c33store,
-             realw *c34store,realw *c35store,realw *c36store,
-             realw *c44store,realw *c45store,realw *c46store,
-             realw *c55store,realw *c56store,realw *c66store,
-             int* num_phase_ispec,
-             int* phase_ispec_inner,
-             int* nspec_outer,
-             int* nspec_inner,
-             int* NSPEC2D_TOP_CM,
-       int* NSPEC2D_BOTTOM_CM,
-       int* NCHUNKS_VAL
-             ) {} 
+                                          realw* h_xix, realw* h_xiy, realw* h_xiz,
+                                          realw* h_etax, realw* h_etay, realw* h_etaz,
+                                          realw* h_gammax, realw* h_gammay, realw* h_gammaz,
+                                          realw* h_rho,
+                                          realw* h_kappav, realw* h_muv,
+                                          realw* h_kappah, realw* h_muh,
+                                          realw* h_eta_aniso,
+                                          realw* h_rmassx,
+                                          realw* h_rmassy,
+                                          realw* h_rmassz,
+                                          realw* h_normal_top_crust_mantle,
+                                          int* h_ibelm_top_crust_mantle,
+                                          int* h_ibelm_bottom_crust_mantle,
+                                          int* h_ibool,
+                                          realw* h_xstore, realw* h_ystore, realw* h_zstore,
+                                          int* h_ispec_is_tiso,
+                                          realw *c11store,realw *c12store,realw *c13store,
+                                          realw *c14store,realw *c15store,realw *c16store,
+                                          realw *c22store,realw *c23store,realw *c24store,
+                                          realw *c25store,realw *c26store,realw *c33store,
+                                          realw *c34store,realw *c35store,realw *c36store,
+                                          realw *c44store,realw *c45store,realw *c46store,
+                                          realw *c55store,realw *c56store,realw *c66store,
+                                          int* num_phase_ispec,
+                                          int* phase_ispec_inner,
+                                          int* nspec_outer,
+                                          int* nspec_inner,
+                                          int* NSPEC2D_TOP_CM,
+                                          int* NSPEC2D_BOTTOM_CM,
+                                          int* NCHUNKS_VAL,
+                                          int* num_colors_outer,
+                                          int* num_colors_inner,
+                                          int* num_elem_colors) {} 
 
 void FC_FUNC_(prepare_outer_core_device,
               PREPARE_OUTER_CORE_DEVICE)(long* Mesh_pointer_f,
@@ -558,40 +561,45 @@
                                          realw* h_gammax, realw* h_gammay, realw* h_gammaz,
                                          realw* h_rho, realw* h_kappav,
                                          realw* h_rmass,
-           realw* h_normal_top_outer_core,
-           realw* h_normal_bottom_outer_core,
-           realw* h_jacobian2D_top_outer_core,
-           realw* h_jacobian2D_bottom_outer_core,
-           int* h_ibelm_top_outer_core,
-           int* h_ibelm_bottom_outer_core,
+                                         realw* h_normal_top_outer_core,
+                                         realw* h_normal_bottom_outer_core,
+                                         realw* h_jacobian2D_top_outer_core,
+                                         realw* h_jacobian2D_bottom_outer_core,
+                                         int* h_ibelm_top_outer_core,
+                                         int* h_ibelm_bottom_outer_core,
                                          int* h_ibool,
                                          realw* h_xstore, realw* h_ystore, realw* h_zstore,
                                          int* num_phase_ispec,
                                          int* phase_ispec_inner,
                                          int* nspec_outer,
                                          int* nspec_inner,
-           int* NSPEC2D_TOP_OC,
-           int* NSPEC2D_BOTTOM_OC
-                                         ) {} 
+                                         int* NSPEC2D_TOP_OC,
+                                         int* NSPEC2D_BOTTOM_OC,
+                                         int* num_colors_outer,
+                                         int* num_colors_inner,
+                                         int* num_elem_colors) {} 
 
 void FC_FUNC_(prepare_inner_core_device,
               PREPARE_INNER_CORE_DEVICE)(long* Mesh_pointer_f,
-           realw* h_xix, realw* h_xiy, realw* h_xiz,
-           realw* h_etax, realw* h_etay, realw* h_etaz,
-           realw* h_gammax, realw* h_gammay, realw* h_gammaz,
-           realw* h_rho, realw* h_kappav, realw* h_muv,
-           realw* h_rmass,
-           int* h_ibelm_top_inner_core,
-           int* h_ibool,
-           realw* h_xstore, realw* h_ystore, realw* h_zstore,
-           realw *c11store,realw *c12store,realw *c13store,
-           realw *c33store,realw *c44store,
-           int* h_idoubling_inner_core,
-           int* num_phase_ispec,
-           int* phase_ispec_inner,
-           int* nspec_outer,
-           int* nspec_inner,
-           int* NSPEC2D_TOP_IC) {} 
+                                         realw* h_xix, realw* h_xiy, realw* h_xiz,
+                                         realw* h_etax, realw* h_etay, realw* h_etaz,
+                                         realw* h_gammax, realw* h_gammay, realw* h_gammaz,
+                                         realw* h_rho, realw* h_kappav, realw* h_muv,
+                                         realw* h_rmass,
+                                         int* h_ibelm_top_inner_core,
+                                         int* h_ibool,
+                                         realw* h_xstore, realw* h_ystore, realw* h_zstore,
+                                         realw *c11store,realw *c12store,realw *c13store,
+                                         realw *c33store,realw *c44store,
+                                         int* h_idoubling_inner_core,
+                                         int* num_phase_ispec,
+                                         int* phase_ispec_inner,
+                                         int* nspec_outer,
+                                         int* nspec_inner,
+                                         int* NSPEC2D_TOP_IC,
+                                         int* num_colors_outer,
+                                         int* num_colors_inner,
+                                         int* num_elem_colors) {} 
 
 void FC_FUNC_(prepare_oceans_device,
               PREPARE_OCEANS_DEVICE)(long* Mesh_pointer_f,

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/Makefile.in
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/Makefile.in	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/Makefile.in	2012-08-13 00:58:02 UTC (rev 20566)
@@ -145,6 +145,7 @@
 	$O/model_1dref.o \
 	$O/model_1066a.o \
 	$O/model_ak135.o \
+	$O/model_sea1d.o \
 	$O/model_aniso_inner_core.o \
 	$O/model_aniso_mantle.mpi.o \
 	$O/model_atten3D_QRFSI12.mpi.o \
@@ -163,7 +164,6 @@
 	$O/model_s20rts.mpi.o \
 	$O/model_s40rts.mpi.o \
 	$O/model_s362ani.mpi.o \
-	$O/model_sea1d.o \
 	$O/model_sea99_s.mpi.o \
 	$O/moho_stretching.o \
 	$O/save_arrays_solver.o \

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_MPI_interfaces.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_MPI_interfaces.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_MPI_interfaces.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -54,7 +54,7 @@
     NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX, &
     NSPEC2DMAX_XMIN_XMAX,NSPEC2DMAX_YMIN_YMAX, &
     NSPEC2D_BOTTOM,NSPEC2D_TOP,NSPEC,NGLOB, &
-    NCHUNKS,myrank,NGLOB1D_RADIAL,NUMCORNERS_SHARED,NPROC_XI,NGLLX,NGLLY,NGLLZ
+    myrank,NGLOB1D_RADIAL,NUMCORNERS_SHARED,NGLLX,NGLLY,NGLLZ
 
   use create_MPI_interfaces_par
 
@@ -145,17 +145,10 @@
     ! crust mantle mesh
     allocate(xstore_crust_mantle(NGLOB_CRUST_MANTLE), &
             ystore_crust_mantle(NGLOB_CRUST_MANTLE), &
-            zstore_crust_mantle(NGLOB_CRUST_MANTLE))
-    allocate(idoubling_crust_mantle(NSPEC_CRUST_MANTLE))
-    allocate(ibool_crust_mantle(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE), &
-             stat=ier)
+            zstore_crust_mantle(NGLOB_CRUST_MANTLE), &
+            stat=ier)
     if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary crust mantle arrays')
 
-    ! allocates temporary arrays
-    allocate( is_on_a_slice_edge_crust_mantle(NSPEC_CRUST_MANTLE), &
-            stat=ier)
-    if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary is_on_a_slice_edge arrays')
-
   case( IREGION_OUTER_CORE )
     ! outer core
     allocate(iboolcorner_outer_core(NGLOB1D_RADIAL_OC,NUMCORNERS_SHARED))
@@ -168,17 +161,10 @@
     ! outer core mesh
     allocate(xstore_outer_core(NGLOB_OUTER_CORE), &
             ystore_outer_core(NGLOB_OUTER_CORE), &
-            zstore_outer_core(NGLOB_OUTER_CORE))
-    allocate(idoubling_outer_core(NSPEC_OUTER_CORE))
-    allocate(ibool_outer_core(NGLLX,NGLLY,NGLLZ,NSPEC_OUTER_CORE), &
-             stat=ier)
+            zstore_outer_core(NGLOB_OUTER_CORE), &
+            stat=ier)
     if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary outer core arrays')
 
-    ! allocates temporary arrays
-    allocate( is_on_a_slice_edge_outer_core(NSPEC_OUTER_CORE), &
-             stat=ier)
-    if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary is_on_a_slice_edge arrays')
-
   case( IREGION_INNER_CORE )
     ! inner core
     allocate(ibelm_xmin_inner_core(NSPEC2DMAX_XMIN_XMAX_IC), &
@@ -199,17 +185,10 @@
     ! inner core mesh
     allocate(xstore_inner_core(NGLOB_INNER_CORE), &
             ystore_inner_core(NGLOB_INNER_CORE), &
-            zstore_inner_core(NGLOB_INNER_CORE))
-    allocate(idoubling_inner_core(NSPEC_INNER_CORE))
-    allocate(ibool_inner_core(NGLLX,NGLLY,NGLLZ,NSPEC_INNER_CORE), &
-             stat=ier)
+            zstore_inner_core(NGLOB_INNER_CORE), &
+            stat=ier)
     if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary inner core arrays')
 
-    ! allocates temporary arrays
-    allocate(is_on_a_slice_edge_inner_core(NSPEC_INNER_CORE), &
-            stat=ier)
-    if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary is_on_a_slice_edge arrays')
-
   end select
 
   ! synchronize processes
@@ -224,8 +203,11 @@
   subroutine cmi_get_addressing(iregion_code)
 
   use meshfem3D_par,only: &
-    myrank,LOCAL_PATH
+    myrank
 
+  use meshfem3D_par,only: &
+    ibool
+
   use create_MPI_interfaces_par
   use MPI_crust_mantle_par
   use MPI_outer_core_par
@@ -238,40 +220,35 @@
   select case( iregion_code )
   case( IREGION_CRUST_MANTLE )
     ! crust mantle
-    ibool_crust_mantle(:,:,:,:) = -1
+!    ibool_crust_mantle(:,:,:,:) = -1
     call cmi_read_solver_data(NSPEC_CRUST_MANTLE,NGLOB_CRUST_MANTLE, &
-                             xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle,&
-                             ibool_crust_mantle,idoubling_crust_mantle, &
-                             is_on_a_slice_edge_crust_mantle)
+                             xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle)
 
     ! check that the number of points in this slice is correct
-    if(minval(ibool_crust_mantle(:,:,:,:)) /= 1 .or. &
-      maxval(ibool_crust_mantle(:,:,:,:)) /= NGLOB_CRUST_MANTLE) &
+    if(minval(ibool(:,:,:,:)) /= 1 .or. &
+      maxval(ibool(:,:,:,:)) /= NGLOB_CRUST_MANTLE) &
         call exit_MPI(myrank,'incorrect global numbering: iboolmax does not equal nglob in crust and mantle')
 
   case( IREGION_OUTER_CORE )
     ! outer core
-    ibool_outer_core(:,:,:,:) = -1
+!    ibool_outer_core(:,:,:,:) = -1
     call cmi_read_solver_data(NSPEC_OUTER_CORE,NGLOB_OUTER_CORE, &
-                             xstore_outer_core,ystore_outer_core,zstore_outer_core,&
-                             ibool_outer_core,idoubling_outer_core, &
-                             is_on_a_slice_edge_outer_core)
+                             xstore_outer_core,ystore_outer_core,zstore_outer_core)
 
     ! check that the number of points in this slice is correct
-    if(minval(ibool_outer_core(:,:,:,:)) /= 1 .or. &
-       maxval(ibool_outer_core(:,:,:,:)) /= NGLOB_OUTER_CORE) &
+    if(minval(ibool(:,:,:,:)) /= 1 .or. &
+       maxval(ibool(:,:,:,:)) /= NGLOB_OUTER_CORE) &
       call exit_MPI(myrank,'incorrect global numbering: iboolmax does not equal nglob in outer core')
 
   case( IREGION_INNER_CORE )
     ! inner core
-    ibool_inner_core(:,:,:,:) = -1
+!    ibool_inner_core(:,:,:,:) = -1
     call cmi_read_solver_data(NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
-                             xstore_inner_core,ystore_inner_core,zstore_inner_core,&
-                             ibool_inner_core,idoubling_inner_core, &
-                             is_on_a_slice_edge_inner_core)
+                             xstore_inner_core,ystore_inner_core,zstore_inner_core)
 
     ! check that the number of points in this slice is correct
-    if(minval(ibool_inner_core(:,:,:,:)) /= 1 .or. maxval(ibool_inner_core(:,:,:,:)) /= NGLOB_INNER_CORE) &
+    if(minval(ibool(:,:,:,:)) /= 1 .or. &
+      maxval(ibool(:,:,:,:)) /= NGLOB_INNER_CORE) &
       call exit_MPI(myrank,'incorrect global numbering: iboolmax does not equal nglob in inner core')
 
   end select
@@ -291,17 +268,15 @@
     NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX, &
     NGLOB1D_RADIAL,NSPEC2D_BOTTOM, &
     NSPEC2DMAX_XMIN_XMAX,NSPEC2DMAX_YMIN_YMAX, &
-    NPROCTOT,NPROC_XI,NPROC_ETA,LOCAL_PATH,NCHUNKS,OUTPUT_FILES,IIN,INCLUDE_CENTRAL_CUBE, &
+    NPROC_XI,NPROC_ETA,NCHUNKS,OUTPUT_FILES,IIN,INCLUDE_CENTRAL_CUBE, &
     iproc_xi,iproc_eta,ichunk,addressing
 
+  use meshfem3D_par,only: &
+    ibool,idoubling,is_on_a_slice_edge
+
   use create_regions_mesh_par2,only: &
     ibelm_xmin,ibelm_xmax,ibelm_ymin,ibelm_ymax,ibelm_bottom,ibelm_top, &
-    normal_xmin,normal_xmax,normal_ymin,normal_ymax,normal_bottom,normal_top, &
-    jacobian2D_xmin,jacobian2D_xmax,jacobian2D_ymin,jacobian2D_ymax, &
-    jacobian2D_bottom,jacobian2D_top, &
-    rho_vp,rho_vs, &
-    nspec2D_xmin,nspec2D_xmax,nspec2D_ymin,nspec2D_ymax, &
-    ispec_is_tiso,tau_s,T_c_source,tau_e_store,Qmu_store
+    nspec2D_xmin,nspec2D_xmax,nspec2D_ymin,nspec2D_ymax
 
   use create_MPI_interfaces_par
 
@@ -316,9 +291,9 @@
   ! local parameters
   integer :: ier
 
-  ! debug
-  logical,parameter :: DEBUG_FLAGS = .false.
+  ! debug file output
   character(len=150) :: filename
+  logical,parameter :: DEBUG = .false.
 
   ! gets 2-D addressing for summation between slices with MPI
 
@@ -346,18 +321,19 @@
     !          we will re-set these flags when setting up inner/outer elements, but will
     !          use these arrays for now as initial guess for the search for elements which share a global point
     !          between different MPI processes
-    call fix_non_blocking_slices(is_on_a_slice_edge_crust_mantle,iboolright_xi_crust_mantle, &
-           iboolleft_xi_crust_mantle,iboolright_eta_crust_mantle,iboolleft_eta_crust_mantle, &
-           npoin2D_xi_crust_mantle,npoin2D_eta_crust_mantle,ibool_crust_mantle, &
-           NSPEC_CRUST_MANTLE,NGLOB_CRUST_MANTLE,NGLOB2DMAX_XMIN_XMAX_CM,NGLOB2DMAX_YMIN_YMAX_CM)
+    call fix_non_blocking_slices(is_on_a_slice_edge, &
+            iboolright_xi_crust_mantle,iboolleft_xi_crust_mantle, &
+            iboolright_eta_crust_mantle,iboolleft_eta_crust_mantle, &
+            npoin2D_xi_crust_mantle,npoin2D_eta_crust_mantle, &
+            ibool, &
+            NSPEC_CRUST_MANTLE,NGLOB_CRUST_MANTLE,NGLOB2DMAX_XMIN_XMAX_CM,NGLOB2DMAX_YMIN_YMAX_CM)
 
     ! debug: saves element flags
-    if( DEBUG_FLAGS ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_is_on_a_slice_edge_crust_mantle_proc',myrank
       call write_VTK_data_elem_l(NSPEC_CRUST_MANTLE,NGLOB_CRUST_MANTLE, &
                                 xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle, &
-                                ibool_crust_mantle, &
-                                is_on_a_slice_edge_crust_mantle,filename)
+                                ibool,is_on_a_slice_edge,filename)
     endif
 
     ! added this to reduce the size of the buffers
@@ -390,18 +366,19 @@
     !          we will re-set these flags when setting up inner/outer elements, but will
     !          use these arrays for now as initial guess for the search for elements which share a global point
     !          between different MPI processes
-    call fix_non_blocking_slices(is_on_a_slice_edge_outer_core,iboolright_xi_outer_core, &
-           iboolleft_xi_outer_core,iboolright_eta_outer_core,iboolleft_eta_outer_core, &
-           npoin2D_xi_outer_core,npoin2D_eta_outer_core,ibool_outer_core, &
-           NSPEC_OUTER_CORE,NGLOB_OUTER_CORE,NGLOB2DMAX_XMIN_XMAX_OC,NGLOB2DMAX_YMIN_YMAX_OC)
+    call fix_non_blocking_slices(is_on_a_slice_edge, &
+            iboolright_xi_outer_core,iboolleft_xi_outer_core, &
+            iboolright_eta_outer_core,iboolleft_eta_outer_core, &
+            npoin2D_xi_outer_core,npoin2D_eta_outer_core, &
+            ibool, &
+            NSPEC_OUTER_CORE,NGLOB_OUTER_CORE,NGLOB2DMAX_XMIN_XMAX_OC,NGLOB2DMAX_YMIN_YMAX_OC)
 
     ! debug: saves element flags
-    if( DEBUG_FLAGS ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_is_on_a_slice_edge_outer_core_proc',myrank
       call write_VTK_data_elem_l(NSPEC_OUTER_CORE,NGLOB_OUTER_CORE, &
                                 xstore_outer_core,ystore_outer_core,zstore_outer_core, &
-                                ibool_outer_core, &
-                                is_on_a_slice_edge_outer_core,filename)
+                                ibool,is_on_a_slice_edge,filename)
     endif
 
     ! added this to reduce the size of the buffers
@@ -474,7 +451,7 @@
                  NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
                  NSPEC2DMAX_XMIN_XMAX(IREGION_INNER_CORE),NSPEC2DMAX_YMIN_YMAX(IREGION_INNER_CORE), &
                  NSPEC2D_BOTTOM(IREGION_INNER_CORE), &
-                 addressing,ibool_inner_core,idoubling_inner_core, &
+                 addressing,ibool,idoubling, &
                  xstore_inner_core,ystore_inner_core,zstore_inner_core, &
                  nspec2D_xmin_inner_core,nspec2D_xmax_inner_core, &
                  nspec2D_ymin_inner_core,nspec2D_ymax_inner_core, &
@@ -506,27 +483,28 @@
     !          we will re-set these flags when setting up inner/outer elements, but will
     !          use these arrays for now as initial guess for the search for elements which share a global point
     !          between different MPI processes
-    call fix_non_blocking_slices(is_on_a_slice_edge_inner_core,iboolright_xi_inner_core, &
-           iboolleft_xi_inner_core,iboolright_eta_inner_core,iboolleft_eta_inner_core, &
-           npoin2D_xi_inner_core,npoin2D_eta_inner_core,ibool_inner_core, &
-           NSPEC_INNER_CORE,NGLOB_INNER_CORE,NGLOB2DMAX_XMIN_XMAX_IC,NGLOB2DMAX_YMIN_YMAX_IC)
+    call fix_non_blocking_slices(is_on_a_slice_edge, &
+            iboolright_xi_inner_core,iboolleft_xi_inner_core, &
+            iboolright_eta_inner_core,iboolleft_eta_inner_core, &
+            npoin2D_xi_inner_core,npoin2D_eta_inner_core, &
+            ibool, &
+            NSPEC_INNER_CORE,NGLOB_INNER_CORE,NGLOB2DMAX_XMIN_XMAX_IC,NGLOB2DMAX_YMIN_YMAX_IC)
 
     if(INCLUDE_CENTRAL_CUBE) then
       ! updates flags for elements on slice boundaries
-      call fix_non_blocking_central_cube(is_on_a_slice_edge_inner_core, &
-           ibool_inner_core,NSPEC_INNER_CORE,NGLOB_INNER_CORE,nb_msgs_theor_in_cube,ibelm_bottom_inner_core, &
-           idoubling_inner_core,npoin2D_cube_from_slices, &
+      call fix_non_blocking_central_cube(is_on_a_slice_edge, &
+           ibool,NSPEC_INNER_CORE,NGLOB_INNER_CORE,nb_msgs_theor_in_cube,ibelm_bottom_inner_core, &
+           idoubling,npoin2D_cube_from_slices, &
            ibool_central_cube,NSPEC2D_BOTTOM(IREGION_INNER_CORE), &
            ichunk,NPROC_XI)
     endif
 
     ! debug: saves element flags
-    if( DEBUG_FLAGS ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_is_on_a_slice_edge_inner_core_proc',myrank
       call write_VTK_data_elem_l(NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
                                 xstore_inner_core,ystore_inner_core,zstore_inner_core, &
-                                ibool_inner_core, &
-                                is_on_a_slice_edge_inner_core,filename)
+                                ibool,is_on_a_slice_edge,filename)
     endif
 
     ! added this to reduce the size of the buffers
@@ -544,14 +522,11 @@
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine cmi_read_solver_data(nspec,nglob, &
-                                  xstore_s,ystore_s,zstore_s, &
-                                  ibool_s,idoubling_s,is_on_a_slice_edge_s)
+  subroutine cmi_read_solver_data(nspec,nglob,xstore_s,ystore_s,zstore_s)
 
 
   use meshfem3D_par,only: &
-    ibool,idoubling,is_on_a_slice_edge, &
-    xstore,ystore,zstore
+    xstore,ystore,zstore,ibool
 
   implicit none
 
@@ -562,19 +537,9 @@
   ! global mesh points
   real(kind=CUSTOM_REAL), dimension(nglob) :: xstore_s,ystore_s,zstore_s
 
-  ! mesh indices
-  integer, dimension(NGLLX,NGLLY,NGLLZ,nspec) :: ibool_s
-  integer, dimension(nspec) :: idoubling_s
-  logical, dimension(nspec) :: is_on_a_slice_edge_s
-
   ! local parameters
   integer :: i,j,k,ispec,iglob
 
-  ! copy arrays
-  ibool_s(:,:,:,:) = ibool(:,:,:,:)
-  idoubling_s(:) = idoubling(:)
-  is_on_a_slice_edge_s(:) = is_on_a_slice_edge(:)
-
   ! fill custom_real arrays
   do ispec = 1,nspec
     do k = 1,NGLLZ

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_addressing.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_addressing.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_addressing.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -39,10 +39,10 @@
   integer, dimension(NCHUNKS,0:NPROC_XI-1,0:NPROC_ETA-1) :: addressing
   integer, dimension(0:NPROCTOT-1) :: ichunk_slice,iproc_xi_slice,iproc_eta_slice
 
-  character(len=150) OUTPUT_FILES
+  character(len=150) :: OUTPUT_FILES
 
   ! local parameters
-  integer ichunk,iproc_eta,iproc_xi,iprocnum,ier
+  integer :: ichunk,iproc_eta,iproc_xi,iprocnum,ier
 
   ! initializes
   addressing(:,:,:) = 0
@@ -75,7 +75,7 @@
 
   ! output a topology map of slices - fix 20x by nproc
   if (myrank == 0 ) then
-    if( NCHUNKS == 6 .and. NPROC < 1000 ) then
+    if( NCHUNKS == 6 .and. NPROCTOT < 1000 ) then
       write(IMAIN,*) 'Spatial distribution of the slices'
       do iproc_xi = NPROC_XI-1, 0, -1
         write(IMAIN,'(20x)',advance='no')

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_chunk_buffers.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_chunk_buffers.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_chunk_buffers.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -192,7 +192,7 @@
   iprocfrom_faces(:) = -1
   iprocto_faces(:) = -1
   imsg_type(:) = 0
-  
+
   iproc_master_corners(:) = -1
   iproc_worker1_corners(:) = -1
   iproc_worker2_corners(:) = -1

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_regions_mesh.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_regions_mesh.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/create_regions_mesh.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -26,7 +26,6 @@
 !=====================================================================
 
 
-
   subroutine create_regions_mesh(iregion_code, &
                           nspec,nglob_theor,npointot, &
                           NEX_PER_PROC_XI,NEX_PER_PROC_ETA, &
@@ -38,13 +37,10 @@
 ! creates the different regions of the mesh
 
   use meshfem3D_par,only: &
-    ibool,idoubling,is_on_a_slice_edge, &
-    xstore,ystore,zstore, &
-    IMAIN,volume_total,addressing,ichunk_slice,iproc_xi_slice,iproc_eta_slice, &
-    myrank,LOCAL_PATH, &
+    ibool,idoubling,xstore,ystore,zstore, &
+    IMAIN,volume_total,myrank,LOCAL_PATH, &
     IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE,IFLAG_IN_FICTITIOUS_CUBE, &
-    NPROC,NPROCTOT,NPROC_XI,NPROC_ETA,NCHUNKS, &
-    SAVE_MESH_FILES,ABSORBING_CONDITIONS, &
+    NCHUNKS,SAVE_MESH_FILES,ABSORBING_CONDITIONS, &
     R_CENTRAL_CUBE,RICB,RCMB, &
     MAX_NUMBER_OF_MESH_LAYERS,MAX_NUM_REGIONS,NB_SQUARE_CORNERS, &
     NGLOB1D_RADIAL_CORNER, &
@@ -54,11 +50,24 @@
     SAVE_BOUNDARY_MESH,SUPPRESS_CRUSTAL_MESH,REGIONAL_MOHO_MESH, &
     OCEANS
 
-  use create_MPI_interfaces_par
+  use create_MPI_interfaces_par, only: &
+    NGLOB1D_RADIAL_MAX,iboolcorner,iboolfaces, &
+    iboolleft_xi,iboolright_xi,iboolleft_eta,iboolright_eta, &
+    ibool1D_leftxi_lefteta,ibool1D_rightxi_lefteta, &
+    ibool1D_leftxi_righteta,ibool1D_rightxi_righteta, &
+    xyz1D_leftxi_lefteta,xyz1D_rightxi_lefteta, &
+    xyz1D_leftxi_righteta,xyz1D_rightxi_righteta
 
   use create_regions_mesh_par
   use create_regions_mesh_par2
 
+  use MPI_crust_mantle_par,only: &
+    xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle
+  use MPI_outer_core_par,only: &
+    xstore_outer_core,ystore_outer_core,zstore_outer_core
+  use MPI_inner_core_par,only: &
+    xstore_inner_core,ystore_inner_core,zstore_inner_core
+
   implicit none
 
   ! code for the four regions of the mesh
@@ -86,6 +95,7 @@
 
   ! user output
   if(myrank == 0 ) then
+    write(IMAIN,*)
     select case(ipass)
     case(1)
       write(IMAIN,*) 'first pass'
@@ -102,6 +112,7 @@
   ! initializes arrays
   call sync_all()
   if( myrank == 0) then
+    write(IMAIN,*)
     write(IMAIN,*) '  ...allocating arrays '
   endif
   call crm_allocate_arrays(iregion_code,nspec,ipass, &
@@ -112,6 +123,7 @@
   ! initialize number of layers
   call sync_all()
   if( myrank == 0) then
+    write(IMAIN,*)
     write(IMAIN,*) '  ...setting up layers '
   endif
   call crm_setup_layers(iregion_code,nspec,ipass,NEX_PER_PROC_ETA)
@@ -119,6 +131,7 @@
   !  creates mesh elements
   call sync_all()
   if( myrank == 0) then
+    write(IMAIN,*)
     write(IMAIN,*) '  ...creating mesh elements '
   endif
   call crm_create_elements(iregion_code,nspec,ipass, &
@@ -132,6 +145,7 @@
     ! creates ibool index array for projection from local to global points
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...creating global addressing'
     endif
     call crm_setup_indexing(nspec,nglob_theor,npointot)
@@ -140,6 +154,7 @@
     ! create MPI buffers
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...creating MPI buffers'
     endif
     call crm_setup_mpi_buffers(npointot,nspec,iregion_code)
@@ -156,6 +171,7 @@
     ! precomputes jacobian for 2d absorbing boundary surfaces
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...precomputing jacobian'
     endif
     call get_jacobian_boundaries(myrank,iboun,nspec,xstore,ystore,zstore, &
@@ -175,6 +191,7 @@
     ! create chunk buffers if more than one chunk
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...creating chunk buffers'
     endif
     call create_chunk_buffers(iregion_code,nspec,ibool,idoubling, &
@@ -191,6 +208,7 @@
     ! setup mpi communication interfaces
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...preparing MPI interfaces'
     endif
     ! creates MPI interface arrays
@@ -207,6 +225,7 @@
     ! sets up inner/outer element arrays
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...element inner/outer separation '
     endif
     call setup_inner_outer(iregion_code)
@@ -214,10 +233,20 @@
     ! sets up mesh coloring
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...element mesh coloring '
     endif
     call setup_color_perm(iregion_code)
 
+    ! frees allocated mesh memory
+    select case( iregion_code )
+    case( IREGION_CRUST_MANTLE )
+      deallocate(xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle)
+    case( IREGION_OUTER_CORE )
+      deallocate(xstore_outer_core,ystore_outer_core,zstore_outer_core)
+    case( IREGION_INNER_CORE )
+      deallocate(xstore_inner_core,ystore_inner_core,zstore_inner_core)
+    end select
 
     !uncomment: adds model smoothing for point profile models
     !    if( THREE_D_MODEL == THREE_D_MODEL_PPM ) then
@@ -235,6 +264,7 @@
     ! creates mass matrix
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...creating mass matrix'
     endif
 
@@ -287,33 +317,35 @@
     ! save the binary files
     call sync_all()
     if( myrank == 0) then
+      write(IMAIN,*)
       write(IMAIN,*) '  ...saving binary files'
     endif
     ! saves mesh and model parameters
     call save_arrays_solver(myrank,nspec,nglob,idoubling,ibool, &
                            iregion_code,xstore,ystore,zstore, &
-                           is_on_a_slice_edge, &
                            NSPEC2D_TOP,NSPEC2D_BOTTOM)
 
-    ! saves MPI interface infos
-    call save_arrays_solver_MPI(iregion_code)
-
     ! frees memory
     deallocate(rmassx,rmassy,rmassz)
     deallocate(rmass_ocean_load)
     ! Stacey
     if( NCHUNKS /= 6 ) deallocate(nimin,nimax,njmin,njmax,nkmin_xi,nkmin_eta)
+
+    ! saves MPI interface infos
+    call save_arrays_solver_MPI(iregion_code)
+
     ! frees MPI arrays memory
     call crm_free_MPI_arrays(iregion_code)
 
-    ! boundary mesh
+    ! boundary mesh for MOHO, 400 and 670 discontinuities
     if (SAVE_BOUNDARY_MESH .and. iregion_code == IREGION_CRUST_MANTLE) then
       ! user output
       call sync_all()
       if( myrank == 0) then
+        write(IMAIN,*)
         write(IMAIN,*) '  ...saving boundary mesh files'
       endif
-      call crm_save_boundary_mesh()
+      call save_arrays_solver_boundary()
     endif
 
     ! compute volume, bottom and top area of that part of the slice
@@ -333,6 +365,7 @@
       ! user output
       call sync_all()
       if( myrank == 0) then
+        write(IMAIN,*)
         write(IMAIN,*) '  ...saving AVS mesh files'
       endif
       call crm_save_mesh_files(nspec,npointot,iregion_code)
@@ -376,9 +409,6 @@
   deallocate(ibelm_670_top,ibelm_670_bot)
   deallocate(normal_moho,normal_400,normal_670)
 
-  ! user output
-  if(myrank == 0 ) write(IMAIN,*)
-
   end subroutine create_regions_mesh
 
 !
@@ -425,7 +455,7 @@
       ! attenuation arrays are fully 3D
       allocate(Qmu_store(NGLLX,NGLLY,NGLLZ,nspec_att), &
               tau_e_store(N_SLS,NGLLX,NGLLY,NGLLZ,nspec_att),stat=ier)
-    else if (.not. ATTENUATION_3D) then
+    else
       ! save some memory in case of 1D attenuation models
       allocate(Qmu_store(1,1,1,nspec_att), &
               tau_e_store(N_SLS,1,1,1,nspec_att),stat=ier)
@@ -433,8 +463,8 @@
   else
     ! allocates dummy size arrays
     nspec_att = 1
-    allocate(Qmu_store(NGLLX,NGLLY,NGLLZ,nspec_att), &
-            tau_e_store(N_SLS,NGLLX,NGLLY,NGLLZ,nspec_att),stat=ier)
+    allocate(Qmu_store(1,1,1,nspec_att), &
+            tau_e_store(N_SLS,1,1,1,nspec_att),stat=ier)
   end if
   if(ier /= 0) stop 'error in allocate 1'
 
@@ -718,7 +748,7 @@
 ! creates the different regions of the mesh
 
   use meshfem3D_par,only: &
-    ibool,idoubling,is_on_a_slice_edge, &
+    idoubling,is_on_a_slice_edge, &
     xstore,ystore,zstore, &
     IMAIN,myrank, &
     IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE,IFLAG_IN_FICTITIOUS_CUBE, &
@@ -1099,55 +1129,7 @@
 
   end subroutine crm_setup_mpi_buffers
 
-!
-!-------------------------------------------------------------------------------------------------
-!
 
-  subroutine crm_save_boundary_mesh()
-
-! creates global indexing array ibool
-
-  use meshfem3d_par,only: &
-    myrank
-
-  use meshfem3D_models_par,only: &
-    SAVE_BOUNDARY_MESH,HONOR_1D_SPHERICAL_MOHO,SUPPRESS_CRUSTAL_MESH
-
-  use create_regions_mesh_par2
-  implicit none
-
-  ! local parameters
-  integer :: ier
-
-  ! first check the number of surface elements are the same for Moho, 400, 670
-  if (.not. SUPPRESS_CRUSTAL_MESH .and. HONOR_1D_SPHERICAL_MOHO) then
-    if (ispec2D_moho_top /= NSPEC2D_MOHO .or. ispec2D_moho_bot /= NSPEC2D_MOHO) &
-           call exit_mpi(myrank, 'Not the same number of Moho surface elements')
-  endif
-  if (ispec2D_400_top /= NSPEC2D_400 .or. ispec2D_400_bot /= NSPEC2D_400) &
-           call exit_mpi(myrank,'Not the same number of 400 surface elements')
-  if (ispec2D_670_top /= NSPEC2D_670 .or. ispec2D_670_bot /= NSPEC2D_670) &
-           call exit_mpi(myrank,'Not the same number of 670 surface elements')
-
-  ! writing surface topology databases
-  open(unit=27,file=prname(1:len_trim(prname))//'boundary_disc.bin', &
-       status='unknown',form='unformatted',iostat=ier)
-  if( ier /= 0 ) call exit_mpi(myrank,'error opening boundary_disc.bin file')
-
-  write(27) NSPEC2D_MOHO, NSPEC2D_400, NSPEC2D_670
-  write(27) ibelm_moho_top
-  write(27) ibelm_moho_bot
-  write(27) ibelm_400_top
-  write(27) ibelm_400_bot
-  write(27) ibelm_670_top
-  write(27) ibelm_670_bot
-  write(27) normal_moho
-  write(27) normal_400
-  write(27) normal_670
-  close(27)
-
-  end subroutine crm_save_boundary_mesh
-
 !
 !-------------------------------------------------------------------------------------------------
 !
@@ -1223,9 +1205,11 @@
   subroutine crm_free_MPI_arrays(iregion_code)
 
   use create_MPI_interfaces_par
+
   use MPI_crust_mantle_par
   use MPI_outer_core_par
   use MPI_inner_core_par
+
   implicit none
 
   integer,intent(in):: iregion_code
@@ -1249,11 +1233,6 @@
     deallocate(phase_ispec_inner_crust_mantle)
     deallocate(num_elem_colors_crust_mantle)
 
-    deallocate(xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle)
-    deallocate(idoubling_crust_mantle,ibool_crust_mantle)
-
-    deallocate(is_on_a_slice_edge_crust_mantle)
-
   case( IREGION_OUTER_CORE )
     ! outer core
     deallocate(iboolcorner_outer_core)
@@ -1266,11 +1245,6 @@
     deallocate(phase_ispec_inner_outer_core)
     deallocate(num_elem_colors_outer_core)
 
-    deallocate(xstore_outer_core,ystore_outer_core,zstore_outer_core)
-    deallocate(idoubling_outer_core,ibool_outer_core)
-
-    deallocate(is_on_a_slice_edge_outer_core)
-
   case( IREGION_INNER_CORE )
     ! inner core
     deallocate(ibelm_xmin_inner_core, &
@@ -1287,14 +1261,9 @@
             iboolright_eta_inner_core)
     deallocate(iboolfaces_inner_core)
 
-    deallocate(xstore_inner_core,ystore_inner_core,zstore_inner_core)
-    deallocate(idoubling_inner_core,ibool_inner_core)
-
     deallocate(phase_ispec_inner_inner_core)
     deallocate(num_elem_colors_inner_core)
 
-    deallocate(is_on_a_slice_edge_inner_core)
-
   end select
 
   end subroutine crm_free_MPI_arrays

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/get_perm_color.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/get_perm_color.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/get_perm_color.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -72,7 +72,7 @@
                         color, nb_colors_outer_elements, nb_colors_inner_elements, &
                         nspec_outer,nspec_inner,nspec_domain)
 
-  !debug output
+  !user output
   if(myrank == 0) then
     write(IMAIN,*) '     colors:'
     write(IMAIN,*) '     number of colors for inner elements = ',nb_colors_inner_elements
@@ -163,15 +163,6 @@
     endif
   enddo
 
-  ! debug
-  !if(myrank == 0) then
-  !  print *
-  !  print *,'----------------------------------'
-  !  print *,'coloring the mesh'
-  !  print *,'----------------------------------'
-  !  print *
-  !endif
-
   ! Droux optimization
   try_Droux_coloring = USE_DROUX_OPTIMIZATION
 
@@ -212,11 +203,6 @@
     333 continue
     icolor = icolor + 1
 
-    ! debug: user output
-    !if(myrank == 0) then
-    !  print *,'  analyzing color ',icolor,' - outer elements'
-    !endif
-
     ! resets flags
     mask_ibool(:) = .false.
     conflict_found_need_new_color = .false.
@@ -279,11 +265,6 @@
     334 continue
     icolor = icolor + 1
 
-    ! debug: user output
-    !if(myrank == 0) then
-    !  print *,'  analyzing color ',icolor,' - inner elements'
-    !endif
-
     ! resets flags
     mask_ibool(:) = .false.
     conflict_found_need_new_color = .false.
@@ -515,7 +496,7 @@
   enddo
   maxval_count_ibool_inner = maxval(count_ibool)
 
-  ! debug outupt
+  ! user outupt
   if( myrank == 0 ) then
     write(IMAIN,*) '     maximum valence (i.e. minimum possible nb of colors) for outer = ',maxval_count_ibool_outer
     write(IMAIN,*) '     maximum valence (i.e. minimum possible nb of colors) for inner = ',maxval_count_ibool_inner
@@ -563,7 +544,7 @@
   integer :: nb_tries_of_Droux_1993,last_ispec_studied
   integer :: ier
 
-  ! debug outupt
+  ! user outupt
   if( myrank == 0 ) then
     write(IMAIN,*) '     balancing colors: Droux algorithm'
     write(IMAIN,*) '       initial number of outer element colors = ',nb_colors_outer_elements
@@ -587,7 +568,7 @@
   ! initial guess of number of colors needed
   ncolors = nb_colors_outer_elements + nb_colors_inner_elements
 
-  ! debug output
+  ! user output
   if( myrank == 0 ) then
     write(IMAIN,*) '     Droux optimization: try = ',nb_tries_of_Droux_1993,'colors = ',ncolors
   endif
@@ -699,7 +680,7 @@
     endif ! domain elements
   enddo
 
-  ! debug output
+  ! user output
   if(myrank == 0) then
     write(IMAIN,*) '     created a total of ',maxval(color),' colors in this domain' ! 'for all the domain elements of the mesh'
     if( nb_colors_outer_elements > 0 ) &
@@ -748,7 +729,7 @@
   integer :: target_nb_elems_per_color,icolor_target
   integer :: ier
 
-  ! debug outupt
+  ! user outupt
   if( myrank == 0 ) then
     write(IMAIN,*) '     balancing colors: simple algorithm'
     write(IMAIN,*) '       number of outer element colors = ',nb_colors_outer_elements
@@ -1109,7 +1090,7 @@
   real(kind=CUSTOM_REAL), intent(inout), dimension(NGLLX,NGLLY,NGLLZ,nspec) :: &
     array_to_permute,temp_array
 
-  integer old_ispec,new_ispec
+  integer :: old_ispec,new_ispec
 
   ! copy the original array
   temp_array(:,:,:,:) = array_to_permute(:,:,:,:)
@@ -1139,7 +1120,7 @@
   integer, intent(inout), dimension(NGLLX,NGLLY,NGLLZ,nspec) :: &
     array_to_permute,temp_array
 
-  integer old_ispec,new_ispec
+  integer :: old_ispec,new_ispec
 
   ! copy the original array
   temp_array(:,:,:,:) = array_to_permute(:,:,:,:)
@@ -1169,7 +1150,7 @@
   double precision, intent(inout), dimension(NGLLX,NGLLY,NGLLZ,nspec) :: &
     array_to_permute,temp_array
 
-  integer old_ispec,new_ispec
+  integer :: old_ispec,new_ispec
 
   ! copy the original array
   temp_array(:,:,:,:) = array_to_permute(:,:,:,:)
@@ -1198,7 +1179,7 @@
 
   logical, intent(inout), dimension(nspec) :: array_to_permute,temp_array
 
-  integer old_ispec,new_ispec
+  integer :: old_ispec,new_ispec
 
   ! copy the original array
   temp_array(:) = array_to_permute(:)
@@ -1209,3 +1190,125 @@
   enddo
 
   end subroutine permute_elements_logical1D
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+! implement permutation of elements for arrays of integer type
+
+  subroutine permute_elements_integer1D(array_to_permute,temp_array,perm,nspec)
+
+  implicit none
+
+  include "constants.h"
+
+  integer, intent(in) :: nspec
+  integer, intent(in), dimension(nspec) :: perm
+
+  integer, intent(inout), dimension(nspec) :: &
+    array_to_permute,temp_array
+
+  integer :: old_ispec,new_ispec
+
+  ! copy the original array
+  temp_array(:) = array_to_permute(:)
+
+  do old_ispec = 1,nspec
+    new_ispec = perm(old_ispec)
+    array_to_permute(new_ispec) = temp_array(old_ispec)
+  enddo
+
+  end subroutine permute_elements_integer1D
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+! implement permutation of elements for arrays of real (CUSTOM_REAL) type
+
+  subroutine permute_elements_dble1(array_to_permute,temp_array,perm,nspec)
+
+  implicit none
+
+  include "constants.h"
+
+  integer, intent(in) :: nspec
+  integer, intent(in), dimension(nspec) :: perm
+
+  double precision, intent(inout), dimension(1,1,1,nspec) :: &
+    array_to_permute,temp_array
+
+  integer :: old_ispec,new_ispec
+
+  ! copy the original array
+  temp_array(:,:,:,:) = array_to_permute(:,:,:,:)
+
+  do old_ispec = 1,nspec
+    new_ispec = perm(old_ispec)
+    array_to_permute(:,:,:,new_ispec) = temp_array(:,:,:,old_ispec)
+  enddo
+
+  end subroutine permute_elements_dble1
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+! implement permutation of elements for arrays of real (CUSTOM_REAL) type
+
+  subroutine permute_elements_dble_sls(array_to_permute,temp_array,perm,nspec)
+
+  implicit none
+
+  include "constants.h"
+
+  integer, intent(in) :: nspec
+  integer, intent(in), dimension(nspec) :: perm
+
+  double precision, intent(inout), dimension(N_SLS,NGLLX,NGLLY,NGLLZ,nspec) :: &
+    array_to_permute,temp_array
+
+  integer :: old_ispec,new_ispec
+
+  ! copy the original array
+  temp_array(:,:,:,:,:) = array_to_permute(:,:,:,:,:)
+
+  do old_ispec = 1,nspec
+    new_ispec = perm(old_ispec)
+    array_to_permute(:,:,:,:,new_ispec) = temp_array(:,:,:,:,old_ispec)
+  enddo
+
+  end subroutine permute_elements_dble_sls
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+! implement permutation of elements for arrays of real (CUSTOM_REAL) type
+
+  subroutine permute_elements_dble_sls1(array_to_permute,temp_array,perm,nspec)
+
+  implicit none
+
+  include "constants.h"
+
+  integer, intent(in) :: nspec
+  integer, intent(in), dimension(nspec) :: perm
+
+  double precision, intent(inout), dimension(N_SLS,1,1,1,nspec) :: &
+    array_to_permute,temp_array
+
+  integer :: old_ispec,new_ispec
+
+  ! copy the original array
+  temp_array(:,:,:,:,:) = array_to_permute(:,:,:,:,:)
+
+  do old_ispec = 1,nspec
+    new_ispec = perm(old_ispec)
+    array_to_permute(:,:,:,:,new_ispec) = temp_array(:,:,:,:,old_ispec)
+  enddo
+
+  end subroutine permute_elements_dble_sls1
+
+

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_models.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_models.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_models.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -52,29 +52,53 @@
 !
 !---
 
-  ! sets up spline coefficients for ellipticity
-  if(ELLIPTICITY) &
-    call make_ellipticity(nspl,rspl,espl,espl2,ONE_CRUST)
-
   ! GLL model uses s29ea as reference 3D model
   if( THREE_D_MODEL == THREE_D_MODEL_GLL ) then
-    MGLL_V%MODEL_GLL = .true.
     ! sets to initial reference model from which iterations started
     THREE_D_MODEL = GLL_REFERENCE_MODEL
+    ! sets flag to use GLL model
+    MGLL_V%MODEL_GLL = .true.
   else
     MGLL_V%MODEL_GLL = .false.
   endif
 
+  ! sets up spline coefficients for ellipticity
+  if(ELLIPTICITY) &
+    call make_ellipticity(nspl,rspl,espl,espl2,ONE_CRUST)
+
+  ! read topography and bathymetry file
+  if(TOPOGRAPHY) &
+    call model_topo_bathy_broadcast(myrank,ibathy_topo,LOCAL_PATH)
+
+  ! reads 1D reference models
+  ! re-defines/initializes models 1066a and ak135 and ref
+  ! ( with possible external crustal model: if CRUSTAL is set to true
+  !    it strips the 1-D crustal profile and replaces it with mantle properties)
+  select case( REFERENCE_1D_MODEL )
+    case(REFERENCE_MODEL_1066A)
+      call model_1066a_broadcast(myrank,CRUSTAL)
+
+    case( REFERENCE_MODEL_AK135)
+      call model_ak135_broadcast(myrank,CRUSTAL)
+
+    case(REFERENCE_MODEL_1DREF)
+      call model_1dref_broadcast(myrank,CRUSTAL)
+
+    case(REFERENCE_MODEL_SEA1D)
+      call model_sea1d_broadcast(myrank,CRUSTAL)
+  end select
+
+
   ! reads in 3D mantle models
   if(ISOTROPIC_3D_MANTLE) then
 
     select case( THREE_D_MODEL )
 
       case(THREE_D_MODEL_S20RTS)
-        call model_s20rts_broadcast(myrank,S20RTS_V)
+        call model_s20rts_broadcast(myrank)
 
       case(THREE_D_MODEL_S40RTS)
-        call model_s40rts_broadcast(myrank,S40RTS_V)
+        call model_s40rts_broadcast(myrank)
 
       case(THREE_D_MODEL_SEA99_JP3D)
         ! the variables read are declared and stored in structure model_sea99_s_par and model_jp3d_par
@@ -115,11 +139,11 @@
 
   ! arbitrary mantle models
   if(HETEROGEN_3D_MANTLE) &
-    call model_heterogen_mntl_broadcast(myrank,HMM)
+    call model_heterogen_mntl_broadcast(myrank)
 
   ! anisotropic mantle
   if(ANISOTROPIC_3D_MANTLE) &
-    call model_aniso_mantle_broadcast(myrank,AMM_V)
+    call model_aniso_mantle_broadcast(myrank)
 
   ! crustal model
   if(CRUSTAL) &
@@ -141,34 +165,12 @@
       ! sets up attenuation coefficients according to the chosen, "pure" 1D model
       ! (including their 1D-crustal profiles)
       call model_attenuation_setup(REFERENCE_1D_MODEL, RICB, RCMB, &
-              R670, R220, R80,AM_V,M1066a_V,Mak135_V,Mref_V,SEA1DM_V,AM_S,AS_V)
+              R670, R220, R80,AM_V,AM_S,AS_V)
     endif
 
   endif
 
-  ! read topography and bathymetry file
-  if(TOPOGRAPHY) &
-    call model_topo_bathy_broadcast(myrank,ibathy_topo,LOCAL_PATH)
 
-  ! re-defines/initializes models 1066a and ak135 and ref
-  ! ( with possible external crustal model: if CRUSTAL is set to true
-  !    it strips the 1-D crustal profile and replaces it with mantle properties)
-  select case( REFERENCE_1D_MODEL )
-
-    case(REFERENCE_MODEL_1066A)
-      call model_1066a_broadcast(CRUSTAL,M1066a_V)
-
-    case( REFERENCE_MODEL_AK135)
-      call model_ak135_broadcast(CRUSTAL,Mak135_V)
-
-    case(REFERENCE_MODEL_1DREF)
-      call model_1dref_broadcast(CRUSTAL,Mref_V)
-
-    case(REFERENCE_MODEL_SEA1D)
-      call model_sea1d_broadcast(CRUSTAL,SEA1DM_V)
-
-  end select
-
   end subroutine meshfem3D_models_broadcast
 
 !
@@ -274,7 +276,7 @@
 
     case(REFERENCE_MODEL_1DREF)
       ! 1D-REF also known as STW105 (by Kustowski et al.) - used also as background for 3D models
-      call model_1dref(r_prem,rho,vpv,vph,vsv,vsh,eta_aniso,Qkappa,Qmu,iregion_code,CRUSTAL,Mref_V)
+      call model_1dref(r_prem,rho,vpv,vph,vsv,vsh,eta_aniso,Qkappa,Qmu,iregion_code,CRUSTAL)
       if(.not. TRANSVERSE_ISOTROPY) then
         if(.not. ISOTROPIC_3D_MANTLE) then
           ! this case here is only executed for 1D_ref_iso
@@ -288,11 +290,11 @@
 
     case(REFERENCE_MODEL_1066A)
       ! 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)
+      call model_1066a(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
     case(REFERENCE_MODEL_AK135)
       ! 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)
+      call model_ak135(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
     case(REFERENCE_MODEL_IASP91)
       ! IASP91 (by Kennett & Engdahl) - pure isotropic model, used in 1D model mode only
@@ -308,7 +310,7 @@
 
     case(REFERENCE_MODEL_SEA1D)
       ! SEA1D (by Lebedev & Nolet) - pure isotropic model, used also as background for 3D models
-      call model_sea1d(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code,SEA1DM_V)
+      call model_sea1d(r_prem,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
     case default
       stop 'unknown 1D reference Earth model in meshfem3D_models_get1D_val()'
@@ -355,7 +357,7 @@
   double precision xmesh,ymesh,zmesh,r
 
   ! the 21 coefficients for an anisotropic medium in reduced notation
-  double precision c11,c12,c13,c14,c15,c16,c22,c23,c24,c25,c26,c33, &
+  double precision :: c11,c12,c13,c14,c15,c16,c22,c23,c24,c25,c26,c33, &
                    c34,c35,c36,c44,c45,c46,c55,c56,c66
 
   ! local parameters
@@ -417,7 +419,7 @@
 
       case(THREE_D_MODEL_S20RTS)
         ! s20rts
-        call mantle_s20rts(r_used,theta,phi,dvs,dvp,drho,S20RTS_V)
+        call mantle_s20rts(r_used,theta,phi,dvs,dvp,drho)
         vpv=vpv*(1.0d0+dvp)
         vph=vph*(1.0d0+dvp)
         vsv=vsv*(1.0d0+dvs)
@@ -426,7 +428,7 @@
 
       case(THREE_D_MODEL_S40RTS)
         ! s40rts
-        call mantle_s40rts(r_used,theta,phi,dvs,dvp,drho,S40RTS_V)
+        call mantle_s40rts(r_used,theta,phi,dvs,dvp,drho)
         vpv=vpv*(1.0d0+dvp)
         vph=vph*(1.0d0+dvp)
         vsv=vsv*(1.0d0+dvs)
@@ -536,7 +538,7 @@
   if( HETEROGEN_3D_MANTLE .and. .not. suppress_mantle_extension ) then
     call xyz_2_rthetaphi_dble(xmesh,ymesh,zmesh,r_used,theta,phi)
     call reduce(theta,phi)
-    call model_heterogen_mantle(r_used,theta,phi,dvs,dvp,drho,HMM)
+    call model_heterogen_mantle(r_used,theta,phi,dvs,dvp,drho)
     vpv=vpv*(1.0d0+dvp)
     vph=vpv*(1.0d0+dvp)
     vsv=vsv*(1.0d0+dvs)
@@ -563,7 +565,7 @@
         endif
       endif
       call model_aniso_mantle(r_used,theta,phi,rho,c11,c12,c13,c14,c15,c16, &
-                        c22,c23,c24,c25,c26,c33,c34,c35,c36,c44,c45,c46,c55,c56,c66,AMM_V)
+                        c22,c23,c24,c25,c26,c33,c34,c35,c36,c44,c45,c46,c55,c56,c66)
 
     else
       ! fills the rest of the mantle with the isotropic model

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_par.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_par.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/meshfem3D_par.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -49,18 +49,6 @@
 
   implicit none
 
-
-! model_aniso_mantle_variables
-  type model_aniso_mantle_variables
-    sequence
-    double precision beta(14,34,37,73)
-    double precision pro(47)
-    integer npar1
-    integer dummy_pad ! padding 4 bytes to align the structure
-  end type model_aniso_mantle_variables
-  type (model_aniso_mantle_variables) AMM_V
-! model_aniso_mantle_variables
-
 ! model_attenuation_variables
   type model_attenuation_variables
     sequence
@@ -94,97 +82,6 @@
   type (model_atten3D_QRFSI12_variables) QRFSI12_Q
 ! model_atten3D_QRFSI12_variables
 
-! model_1066a_variables
-  type model_1066a_variables
-    sequence
-      double precision, dimension(NR_1066A) :: radius_1066a
-      double precision, dimension(NR_1066A) :: density_1066a
-      double precision, dimension(NR_1066A) :: vp_1066a
-      double precision, dimension(NR_1066A) :: vs_1066a
-      double precision, dimension(NR_1066A) :: Qkappa_1066a
-      double precision, dimension(NR_1066A) :: Qmu_1066a
-  end type model_1066a_variables
-  type (model_1066a_variables) M1066a_V
-! model_1066a_variables
-
-! 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
-  end type model_ak135_variables
- type (model_ak135_variables) Mak135_V
-! model_ak135_variables
-
-! model_1dref_variables
-  type model_1dref_variables
-    sequence
-     double precision, dimension(NR_REF) :: radius_ref
-     double precision, dimension(NR_REF) :: density_ref
-     double precision, dimension(NR_REF) :: vpv_ref
-     double precision, dimension(NR_REF) :: vph_ref
-     double precision, dimension(NR_REF) :: vsv_ref
-     double precision, dimension(NR_REF) :: vsh_ref
-     double precision, dimension(NR_REF) :: eta_ref
-     double precision, dimension(NR_REF) :: Qkappa_ref
-     double precision, dimension(NR_REF) :: Qmu_ref
-  end type model_1dref_variables
- type (model_1dref_variables) Mref_V
-! model_1dref_variables
-
-! model_sea1d_variables
-  type model_sea1d_variables
-    sequence
-     double precision, dimension(NR_SEA1D) :: radius_sea1d
-     double precision, dimension(NR_SEA1D) :: density_sea1d
-     double precision, dimension(NR_SEA1D) :: vp_sea1d
-     double precision, dimension(NR_SEA1D) :: vs_sea1d
-     double precision, dimension(NR_SEA1D) :: Qkappa_sea1d
-     double precision, dimension(NR_SEA1D) :: Qmu_sea1d
-  end type model_sea1d_variables
-  type (model_sea1d_variables) SEA1DM_V
-! model_sea1d_variables
-
-! model_s20rts_variables
-  type model_s20rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_20,0:NS_20)   !a = positive m  (radial, theta, phi) --> (k,l,m) (maybe other way around??)
-    double precision dvs_b(0:NK_20,0:NS_20,0:NS_20)   !b = negative m  (radial, theta, phi) --> (k,l,-m)
-    double precision dvp_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s20rts_variables
-  type (model_s20rts_variables) S20RTS_V
-! model_s20rts_variables
-
-! model_s40rts_variables
-  type model_s40rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvs_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s40rts_variables
-  type (model_s40rts_variables) S40RTS_V
-! model_s40rts_variables
-
-! model_heterogen_m_variables
-  type model_heterogen_m_variables
-    sequence
-    double precision rho_in(N_R*N_THETA*N_PHI)
-  end type model_heterogen_m_variables
-  type (model_heterogen_m_variables) HMM
-! model_heterogen_m_variables
-
 ! model_attenuation_storage_var
   type model_attenuation_storage_var
     sequence
@@ -231,21 +128,21 @@
   integer, dimension(NX_BATHY,NY_BATHY) :: ibathy_topo
 
 ! for ellipticity
-  double precision rspl(NR),espl(NR),espl2(NR)
-  integer nspl
+  double precision,dimension(NR) :: rspl,espl,espl2
+  integer :: nspl
 
 ! model parameter and flags
-  integer REFERENCE_1D_MODEL,THREE_D_MODEL
+  integer :: REFERENCE_1D_MODEL,THREE_D_MODEL
 
-  logical ELLIPTICITY,GRAVITY,ROTATION,TOPOGRAPHY,OCEANS
+  logical :: ELLIPTICITY,GRAVITY,ROTATION,TOPOGRAPHY,OCEANS
 
-  logical HONOR_1D_SPHERICAL_MOHO,CRUSTAL,ONE_CRUST,CASE_3D,TRANSVERSE_ISOTROPY
+  logical :: HONOR_1D_SPHERICAL_MOHO,CRUSTAL,ONE_CRUST,CASE_3D,TRANSVERSE_ISOTROPY
 
-  logical ISOTROPIC_3D_MANTLE,ANISOTROPIC_3D_MANTLE,HETEROGEN_3D_MANTLE
+  logical :: ISOTROPIC_3D_MANTLE,ANISOTROPIC_3D_MANTLE,HETEROGEN_3D_MANTLE
 
-  logical ATTENUATION,ATTENUATION_NEW,ATTENUATION_3D
+  logical :: ATTENUATION,ATTENUATION_NEW,ATTENUATION_3D
 
-  logical ANISOTROPIC_INNER_CORE
+  logical :: ANISOTROPIC_INNER_CORE
 
 ! to create a reference model based on 1D_REF but with 3D crust and 410/660 topography
   logical,parameter :: USE_1D_REFERENCE = .false.
@@ -451,7 +348,7 @@
   integer :: nglob_xy
 
   ! mass matrix and bathymetry for ocean load
-  integer nglob_oceans
+  integer :: nglob_oceans
   real(kind=CUSTOM_REAL), dimension(:), allocatable :: rmass_ocean_load
 
   ! number of elements on the boundaries
@@ -476,20 +373,19 @@
   integer, dimension(:,:), allocatable :: nimin,nimax,njmin,njmax,nkmin_xi,nkmin_eta
   real(kind=CUSTOM_REAL), dimension(:,:,:,:), allocatable :: rho_vp,rho_vs
 
-
   ! attenuation
   double precision, dimension(:,:,:,:),   allocatable :: Qmu_store
   double precision, dimension(:,:,:,:,:), allocatable :: tau_e_store
   double precision, dimension(N_SLS) :: tau_s
   double precision :: T_c_source
 
-  logical :: USE_ONE_LAYER_SB
-
+  ! element layers
   integer :: NUMBER_OF_MESH_LAYERS,layer_shift,cpt, &
     first_layer_aniso,last_layer_aniso,FIRST_ELT_NON_ANISO
+  logical :: USE_ONE_LAYER_SB
 
+  ! layer stretching
   double precision, dimension(:,:), allocatable :: stretch_tab
-
   integer :: nb_layer_above_aniso,FIRST_ELT_ABOVE_ANISO
 
   ! Boundary Mesh
@@ -604,13 +500,6 @@
   integer, dimension(:), allocatable :: my_neighbours_crust_mantle,nibool_interfaces_crust_mantle
   integer, dimension(:,:), allocatable :: ibool_interfaces_crust_mantle
 
-  real(kind=CUSTOM_REAL), dimension(:,:,:), allocatable :: buffer_send_vector_crust_mantle,buffer_recv_vector_crust_mantle
-
-  integer, dimension(:), allocatable :: request_send_vector_crust_mantle,request_recv_vector_crust_mantle
-
-  ! temporary arrays for elements on slices or edges
-  logical, dimension(:),allocatable :: is_on_a_slice_edge_crust_mantle
-
   !--------------------------------------
   ! crust mantle
   !--------------------------------------
@@ -627,8 +516,6 @@
 
   real(kind=CUSTOM_REAL), dimension(:),allocatable :: &
     xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle
-  integer, dimension(:),allocatable :: idoubling_crust_mantle
-  integer, dimension(:,:,:,:),allocatable :: ibool_crust_mantle
 
   ! assembly
   integer, dimension(NUMFACES_SHARED) :: npoin2D_faces_crust_mantle
@@ -672,13 +559,6 @@
   integer, dimension(:), allocatable :: my_neighbours_inner_core,nibool_interfaces_inner_core
   integer, dimension(:,:), allocatable :: ibool_interfaces_inner_core
 
-  real(kind=CUSTOM_REAL), dimension(:,:,:), allocatable :: buffer_send_vector_inner_core,buffer_recv_vector_inner_core
-
-  integer, dimension(:), allocatable :: request_send_vector_inner_core,request_recv_vector_inner_core
-
-  ! temporary arrays for elements on slices or edges
-  logical, dimension(:),allocatable :: is_on_a_slice_edge_inner_core
-
   !--------------------------------------
   ! inner core
   !--------------------------------------
@@ -695,16 +575,14 @@
 
   real(kind=CUSTOM_REAL), dimension(:),allocatable :: &
     xstore_inner_core,ystore_inner_core,zstore_inner_core
-  integer, dimension(:),allocatable :: idoubling_inner_core
-  integer, dimension(:,:,:,:),allocatable :: ibool_inner_core
 
-
   ! for matching with central cube in inner core
   integer, dimension(:), allocatable :: sender_from_slices_to_cube
   integer, dimension(:,:), allocatable :: ibool_central_cube
   double precision, dimension(:,:), allocatable :: buffer_slices,buffer_slices2
   double precision, dimension(:,:,:), allocatable :: buffer_all_cube_from_slices
-  integer nb_msgs_theor_in_cube,non_zero_nb_msgs_theor_in_cube,npoin2D_cube_from_slices,receiver_cube_from_slices
+  integer :: nb_msgs_theor_in_cube,non_zero_nb_msgs_theor_in_cube, &
+    npoin2D_cube_from_slices,receiver_cube_from_slices
 
   integer :: nspec2D_xmin_inner_core,nspec2D_xmax_inner_core, &
             nspec2D_ymin_inner_core,nspec2D_ymax_inner_core
@@ -755,13 +633,6 @@
   integer, dimension(:), allocatable :: my_neighbours_outer_core,nibool_interfaces_outer_core
   integer, dimension(:,:), allocatable :: ibool_interfaces_outer_core
 
-  real(kind=CUSTOM_REAL), dimension(:,:), allocatable :: buffer_send_scalar_outer_core,buffer_recv_scalar_outer_core
-
-  integer, dimension(:), allocatable :: request_send_scalar_outer_core,request_recv_scalar_outer_core
-
-  ! temporary arrays for elements on slices or edges
-  logical, dimension(:),allocatable :: is_on_a_slice_edge_outer_core
-
   !--------------------------------------
   ! outer core
   !--------------------------------------
@@ -778,8 +649,6 @@
 
   real(kind=CUSTOM_REAL), dimension(:),allocatable :: &
     xstore_outer_core,ystore_outer_core,zstore_outer_core
-  integer, dimension(:),allocatable :: idoubling_outer_core
-  integer, dimension(:,:,:,:),allocatable :: ibool_outer_core
 
   ! assembly
   integer, dimension(NUMFACES_SHARED) :: npoin2D_faces_outer_core

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1066a.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1066a.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1066a.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -33,33 +33,49 @@
 ! When ATTENTUATION is on, it uses an unpublished 1D attenuation model from Scripps.
 !--------------------------------------------------------------------------------------------------
 
+  module model_1066a_par
 
-  subroutine model_1066a_broadcast(CRUSTAL,M1066a_V)
+  ! number of layers in DATA/1066a/1066a.dat
+  integer, parameter :: NR_1066A = 160
 
-! standard routine to setup model
+  ! model_1066a_variables
+  double precision, dimension(:),allocatable :: &
+    M1066a_V_radius_1066a,M1066a_V_density_1066a, &
+    M1066a_V_vp_1066a,M1066a_V_vs_1066a, &
+    M1066a_V_Qkappa_1066a,M1066a_V_Qmu_1066a
 
-  implicit none
+  end module model_1066a_par
 
-  include "constants.h"
+!
+!--------------------------------------------------------------------------------------------------
+!
 
-  ! model_1066a_variables
-  type model_1066a_variables
-    sequence
-      double precision, dimension(NR_1066A) :: radius_1066a
-      double precision, dimension(NR_1066A) :: density_1066a
-      double precision, dimension(NR_1066A) :: vp_1066a
-      double precision, dimension(NR_1066A) :: vs_1066a
-      double precision, dimension(NR_1066A) :: Qkappa_1066a
-      double precision, dimension(NR_1066A) :: Qmu_1066a
-  end type model_1066a_variables
+  subroutine model_1066a_broadcast(myrank,CRUSTAL)
 
-  type (model_1066a_variables) M1066a_V
-  ! model_1066a_variables
+! standard routine to setup model
 
+  use model_1066a_par
+
+  implicit none
+
+  integer :: myrank
   logical :: CRUSTAL
 
+  ! local parameters
+  integer :: ier
+
+  ! allocates model arrays
+  allocate(M1066a_V_radius_1066a(NR_1066A), &
+          M1066a_V_density_1066a(NR_1066A), &
+          M1066a_V_vp_1066a(NR_1066A), &
+          M1066a_V_vs_1066a(NR_1066A), &
+          M1066a_V_Qkappa_1066a(NR_1066A), &
+          M1066a_V_Qmu_1066a(NR_1066A), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating M1066a_V arrays')
+
   ! all processes will define same parameters
-  call define_model_1066a(CRUSTAL, M1066a_V)
+  call define_model_1066a(CRUSTAL)
 
   end subroutine model_1066a_broadcast
 
@@ -68,26 +84,15 @@
 !
 
 
-  subroutine model_1066a(x,rho,vp,vs,Qkappa,Qmu,iregion_code,M1066a_V)
+  subroutine model_1066a(x,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
+  use model_1066a_par
+
   implicit none
 
   include "constants.h"
 
-! model_1066a_variables
-  type model_1066a_variables
-    sequence
-      double precision, dimension(NR_1066A) :: radius_1066a
-      double precision, dimension(NR_1066A) :: density_1066a
-      double precision, dimension(NR_1066A) :: vp_1066a
-      double precision, dimension(NR_1066A) :: vs_1066a
-      double precision, dimension(NR_1066A) :: Qkappa_1066a
-      double precision, dimension(NR_1066A) :: Qmu_1066a
-  end type model_1066a_variables
 
-  type (model_1066a_variables) M1066a_V
-! model_1066a_variables
-
 ! input:
 ! radius r: meters
 
@@ -96,19 +101,18 @@
 ! compressional wave speed vp: km/s
 ! shear wave speed vs: km/s
 
-  integer iregion_code
+  double precision :: x,rho,vp,vs,Qmu,Qkappa
+  integer :: iregion_code
 
-  double precision x,rho,vp,vs,Qmu,Qkappa
+  ! local parameters
+  double precision :: r,frac,scaleval
+  integer :: i
 
-  integer i
-
-  double precision r,frac,scaleval
-
-! compute real physical radius in meters
+  ! compute real physical radius in meters
   r = x * R_EARTH
 
   i = 1
-  do while(r >= M1066a_V%radius_1066a(i) .and. i /= NR_1066A)
+  do while(r >= M1066a_V_radius_1066a(i) .and. i /= NR_1066A)
     i = i + 1
   enddo
 
@@ -124,21 +128,21 @@
   if(iregion_code == IREGION_CRUST_MANTLE .and. i < 68) i = 68
 
   if(i == 1) then
-    rho = M1066a_V%density_1066a(i)
-    vp = M1066a_V%vp_1066a(i)
-    vs = M1066a_V%vs_1066a(i)
-    Qmu = M1066a_V%Qmu_1066a(i)
-    Qkappa = M1066a_V%Qkappa_1066a(i)
+    rho = M1066a_V_density_1066a(i)
+    vp = M1066a_V_vp_1066a(i)
+    vs = M1066a_V_vs_1066a(i)
+    Qmu = M1066a_V_Qmu_1066a(i)
+    Qkappa = M1066a_V_Qkappa_1066a(i)
   else
 
 ! interpolate from radius_1066a(i-1) to r using the values at i-1 and i
-    frac = (r-M1066a_V%radius_1066a(i-1))/(M1066a_V%radius_1066a(i)-M1066a_V%radius_1066a(i-1))
+    frac = (r-M1066a_V_radius_1066a(i-1))/(M1066a_V_radius_1066a(i)-M1066a_V_radius_1066a(i-1))
 
-    rho = M1066a_V%density_1066a(i-1) + frac * (M1066a_V%density_1066a(i)-M1066a_V%density_1066a(i-1))
-    vp = M1066a_V%vp_1066a(i-1) + frac * (M1066a_V%vp_1066a(i)-M1066a_V%vp_1066a(i-1))
-    vs = M1066a_V%vs_1066a(i-1) + frac * (M1066a_V%vs_1066a(i)-M1066a_V%vs_1066a(i-1))
-    Qmu = M1066a_V%Qmu_1066a(i-1) + frac * (M1066a_V%Qmu_1066a(i)-M1066a_V%Qmu_1066a(i-1))
-    Qkappa = M1066a_V%Qkappa_1066a(i-1) + frac * (M1066a_V%Qkappa_1066a(i)-M1066a_V%Qkappa_1066a(i-1))
+    rho = M1066a_V_density_1066a(i-1) + frac * (M1066a_V_density_1066a(i)-M1066a_V_density_1066a(i-1))
+    vp = M1066a_V_vp_1066a(i-1) + frac * (M1066a_V_vp_1066a(i)-M1066a_V_vp_1066a(i-1))
+    vs = M1066a_V_vs_1066a(i-1) + frac * (M1066a_V_vs_1066a(i)-M1066a_V_vs_1066a(i-1))
+    Qmu = M1066a_V_Qmu_1066a(i-1) + frac * (M1066a_V_Qmu_1066a(i)-M1066a_V_Qmu_1066a(i-1))
+    Qkappa = M1066a_V_Qkappa_1066a(i-1) + frac * (M1066a_V_Qkappa_1066a(i)-M1066a_V_Qkappa_1066a(i-1))
 
   endif
 
@@ -161,1011 +165,1001 @@
 
 !-------------------
 
-  subroutine define_model_1066a(USE_EXTERNAL_CRUSTAL_MODEL,M1066a_V)
+  subroutine define_model_1066a(USE_EXTERNAL_CRUSTAL_MODEL)
 
+  use model_1066a_par
+
   implicit none
   include "constants.h"
 
-! model_1066a_variables
-  type model_1066a_variables
-    sequence
-      double precision, dimension(NR_1066A) :: radius_1066a
-      double precision, dimension(NR_1066A) :: density_1066a
-      double precision, dimension(NR_1066A) :: vp_1066a
-      double precision, dimension(NR_1066A) :: vs_1066a
-      double precision, dimension(NR_1066A) :: Qkappa_1066a
-      double precision, dimension(NR_1066A) :: Qmu_1066a
-  end type model_1066a_variables
 
-  type (model_1066a_variables) M1066a_V
-! model_1066a_variables
+  logical :: USE_EXTERNAL_CRUSTAL_MODEL
 
-  logical USE_EXTERNAL_CRUSTAL_MODEL
+  ! local parameters
+  integer :: i
 
-  integer i
-
 ! define all the values in the model
 
-  M1066a_V%radius_1066a(  1) =  0.000000000000000
-  M1066a_V%radius_1066a(  2) =   38400.0000000000
-  M1066a_V%radius_1066a(  3) =   76810.0000000000
-  M1066a_V%radius_1066a(  4) =   115210.000000000
-  M1066a_V%radius_1066a(  5) =   153610.000000000
-  M1066a_V%radius_1066a(  6) =   192020.000000000
-  M1066a_V%radius_1066a(  7) =   230420.000000000
-  M1066a_V%radius_1066a(  8) =   268820.000000000
-  M1066a_V%radius_1066a(  9) =   307220.000000000
-  M1066a_V%radius_1066a( 10) =   345630.000000000
-  M1066a_V%radius_1066a( 11) =   384030.000000000
-  M1066a_V%radius_1066a( 12) =   422430.000000000
-  M1066a_V%radius_1066a( 13) =   460840.000000000
-  M1066a_V%radius_1066a( 14) =   499240.000000000
-  M1066a_V%radius_1066a( 15) =   537640.000000000
-  M1066a_V%radius_1066a( 16) =   576050.000000000
-  M1066a_V%radius_1066a( 17) =   614450.000000000
-  M1066a_V%radius_1066a( 18) =   652850.000000000
-  M1066a_V%radius_1066a( 19) =   691260.000000000
-  M1066a_V%radius_1066a( 20) =   729660.000000000
-  M1066a_V%radius_1066a( 21) =   768060.000000000
-  M1066a_V%radius_1066a( 22) =   806460.000000000
-  M1066a_V%radius_1066a( 23) =   844870.000000000
-  M1066a_V%radius_1066a( 24) =   883270.000000000
-  M1066a_V%radius_1066a( 25) =   921670.000000000
-  M1066a_V%radius_1066a( 26) =   960080.000000000
-  M1066a_V%radius_1066a( 27) =   998480.000000000
-  M1066a_V%radius_1066a( 28) =   1036880.00000000
-  M1066a_V%radius_1066a( 29) =   1075290.00000000
-  M1066a_V%radius_1066a( 30) =   1113690.00000000
-  M1066a_V%radius_1066a( 31) =   1152090.00000000
-  M1066a_V%radius_1066a( 32) =   1190500.00000000
-  M1066a_V%radius_1066a( 33) =   1229480.00000000
-  M1066a_V%radius_1066a( 34) =   1229480.00000000
-  M1066a_V%radius_1066a( 35) =   1299360.00000000
-  M1066a_V%radius_1066a( 36) =   1369820.00000000
-  M1066a_V%radius_1066a( 37) =   1440280.00000000
-  M1066a_V%radius_1066a( 38) =   1510740.00000000
-  M1066a_V%radius_1066a( 39) =   1581190.00000000
-  M1066a_V%radius_1066a( 40) =   1651650.00000000
-  M1066a_V%radius_1066a( 41) =   1722110.00000000
-  M1066a_V%radius_1066a( 42) =   1792570.00000000
-  M1066a_V%radius_1066a( 43) =   1863030.00000000
-  M1066a_V%radius_1066a( 44) =   1933490.00000000
-  M1066a_V%radius_1066a( 45) =   2003950.00000000
-  M1066a_V%radius_1066a( 46) =   2074410.00000000
-  M1066a_V%radius_1066a( 47) =   2144870.00000000
-  M1066a_V%radius_1066a( 48) =   2215330.00000000
-  M1066a_V%radius_1066a( 49) =   2285790.00000000
-  M1066a_V%radius_1066a( 50) =   2356240.00000000
-  M1066a_V%radius_1066a( 51) =   2426700.00000000
-  M1066a_V%radius_1066a( 52) =   2497160.00000000
-  M1066a_V%radius_1066a( 53) =   2567620.00000000
-  M1066a_V%radius_1066a( 54) =   2638080.00000000
-  M1066a_V%radius_1066a( 55) =   2708540.00000000
-  M1066a_V%radius_1066a( 56) =   2779000.00000000
-  M1066a_V%radius_1066a( 57) =   2849460.00000000
-  M1066a_V%radius_1066a( 58) =   2919920.00000000
-  M1066a_V%radius_1066a( 59) =   2990380.00000000
-  M1066a_V%radius_1066a( 60) =   3060840.00000000
-  M1066a_V%radius_1066a( 61) =   3131300.00000000
-  M1066a_V%radius_1066a( 62) =   3201750.00000000
-  M1066a_V%radius_1066a( 63) =   3272210.00000000
-  M1066a_V%radius_1066a( 64) =   3342670.00000000
-  M1066a_V%radius_1066a( 65) =   3413130.00000000
-  M1066a_V%radius_1066a( 66) =   3484300.00000000
-  M1066a_V%radius_1066a( 67) =   3484300.00000000
-  M1066a_V%radius_1066a( 68) =   3518220.00000000
-  M1066a_V%radius_1066a( 69) =   3552850.00000000
-  M1066a_V%radius_1066a( 70) =   3587490.00000000
-  M1066a_V%radius_1066a( 71) =   3622120.00000000
-  M1066a_V%radius_1066a( 72) =   3656750.00000000
-  M1066a_V%radius_1066a( 73) =   3691380.00000000
-  M1066a_V%radius_1066a( 74) =   3726010.00000000
-  M1066a_V%radius_1066a( 75) =   3760640.00000000
-  M1066a_V%radius_1066a( 76) =   3795270.00000000
-  M1066a_V%radius_1066a( 77) =   3829910.00000000
-  M1066a_V%radius_1066a( 78) =   3864540.00000000
-  M1066a_V%radius_1066a( 79) =   3899170.00000000
-  M1066a_V%radius_1066a( 80) =   3933800.00000000
-  M1066a_V%radius_1066a( 81) =   3968430.00000000
-  M1066a_V%radius_1066a( 82) =   4003060.00000000
-  M1066a_V%radius_1066a( 83) =   4037690.00000000
-  M1066a_V%radius_1066a( 84) =   4072330.00000000
-  M1066a_V%radius_1066a( 85) =   4106960.00000000
-  M1066a_V%radius_1066a( 86) =   4141590.00000000
-  M1066a_V%radius_1066a( 87) =   4176220.00000000
-  M1066a_V%radius_1066a( 88) =   4210850.00000000
-  M1066a_V%radius_1066a( 89) =   4245480.00000000
-  M1066a_V%radius_1066a( 90) =   4280110.00000000
-  M1066a_V%radius_1066a( 91) =   4314740.00000000
-  M1066a_V%radius_1066a( 92) =   4349380.00000000
-  M1066a_V%radius_1066a( 93) =   4384010.00000000
-  M1066a_V%radius_1066a( 94) =   4418640.00000000
-  M1066a_V%radius_1066a( 95) =   4453270.00000000
-  M1066a_V%radius_1066a( 96) =   4487900.00000000
-  M1066a_V%radius_1066a( 97) =   4522530.00000000
-  M1066a_V%radius_1066a( 98) =   4557160.00000000
-  M1066a_V%radius_1066a( 99) =   4591800.00000000
-  M1066a_V%radius_1066a(100) =   4626430.00000000
-  M1066a_V%radius_1066a(101) =   4661060.00000000
-  M1066a_V%radius_1066a(102) =   4695690.00000000
-  M1066a_V%radius_1066a(103) =   4730320.00000000
-  M1066a_V%radius_1066a(104) =   4764950.00000000
-  M1066a_V%radius_1066a(105) =   4799580.00000000
-  M1066a_V%radius_1066a(106) =   4834220.00000000
-  M1066a_V%radius_1066a(107) =   4868850.00000000
-  M1066a_V%radius_1066a(108) =   4903480.00000000
-  M1066a_V%radius_1066a(109) =   4938110.00000000
-  M1066a_V%radius_1066a(110) =   4972740.00000000
-  M1066a_V%radius_1066a(111) =   5007370.00000000
-  M1066a_V%radius_1066a(112) =   5042000.00000000
-  M1066a_V%radius_1066a(113) =   5076640.00000000
-  M1066a_V%radius_1066a(114) =   5111270.00000000
-  M1066a_V%radius_1066a(115) =   5145900.00000000
-  M1066a_V%radius_1066a(116) =   5180530.00000000
-  M1066a_V%radius_1066a(117) =   5215160.00000000
-  M1066a_V%radius_1066a(118) =   5249790.00000000
-  M1066a_V%radius_1066a(119) =   5284420.00000000
-  M1066a_V%radius_1066a(120) =   5319060.00000000
-  M1066a_V%radius_1066a(121) =   5353690.00000000
-  M1066a_V%radius_1066a(122) =   5388320.00000000
-  M1066a_V%radius_1066a(123) =   5422950.00000000
-  M1066a_V%radius_1066a(124) =   5457580.00000000
-  M1066a_V%radius_1066a(125) =   5492210.00000000
-  M1066a_V%radius_1066a(126) =   5526840.00000000
-  M1066a_V%radius_1066a(127) =   5561470.00000000
-  M1066a_V%radius_1066a(128) =   5596110.00000000
-  M1066a_V%radius_1066a(129) =   5630740.00000000
-  M1066a_V%radius_1066a(130) =   5665370.00000000
-  M1066a_V%radius_1066a(131) =   5700000.00000000
-  M1066a_V%radius_1066a(132) =   5700000.00000000
-  M1066a_V%radius_1066a(133) =   5731250.00000000
-  M1066a_V%radius_1066a(134) =   5762500.00000000
-  M1066a_V%radius_1066a(135) =   5793750.00000000
-  M1066a_V%radius_1066a(136) =   5825000.00000000
-  M1066a_V%radius_1066a(137) =   5856250.00000000
-  M1066a_V%radius_1066a(138) =   5887500.00000000
-  M1066a_V%radius_1066a(139) =   5918750.00000000
-  M1066a_V%radius_1066a(140) =   5950000.00000000
-  M1066a_V%radius_1066a(141) =   5950000.00000000
-  M1066a_V%radius_1066a(142) =   5975630.00000000
-  M1066a_V%radius_1066a(143) =   6001250.00000000
-  M1066a_V%radius_1066a(144) =   6026880.00000000
-  M1066a_V%radius_1066a(145) =   6052500.00000000
-  M1066a_V%radius_1066a(146) =   6078130.00000000
-  M1066a_V%radius_1066a(147) =   6103750.00000000
-  M1066a_V%radius_1066a(148) =   6129380.00000000
-  M1066a_V%radius_1066a(149) =   6155000.00000000
-  M1066a_V%radius_1066a(150) =   6180630.00000000
-  M1066a_V%radius_1066a(151) =   6206250.00000000
-  M1066a_V%radius_1066a(152) =   6231880.00000000
-  M1066a_V%radius_1066a(153) =   6257500.00000000
-  M1066a_V%radius_1066a(154) =   6283130.00000000
-  M1066a_V%radius_1066a(155) =   6308750.00000000
-  M1066a_V%radius_1066a(156) =   6334380.00000000
-  M1066a_V%radius_1066a(157) =   6360000.00000000
-  M1066a_V%radius_1066a(158) =   6360000.00000000
-  M1066a_V%radius_1066a(159) =   6365500.00000000
-  M1066a_V%radius_1066a(160) =   6371000.00000000
+  M1066a_V_radius_1066a(  1) =  0.d0
+  M1066a_V_radius_1066a(  2) =   38400.d0
+  M1066a_V_radius_1066a(  3) =   76810.d0
+  M1066a_V_radius_1066a(  4) =   115210.d0
+  M1066a_V_radius_1066a(  5) =   153610.d0
+  M1066a_V_radius_1066a(  6) =   192020.d0
+  M1066a_V_radius_1066a(  7) =   230420.d0
+  M1066a_V_radius_1066a(  8) =   268820.d0
+  M1066a_V_radius_1066a(  9) =   307220.d0
+  M1066a_V_radius_1066a( 10) =   345630.d0
+  M1066a_V_radius_1066a( 11) =   384030.d0
+  M1066a_V_radius_1066a( 12) =   422430.d0
+  M1066a_V_radius_1066a( 13) =   460840.d0
+  M1066a_V_radius_1066a( 14) =   499240.d0
+  M1066a_V_radius_1066a( 15) =   537640.d0
+  M1066a_V_radius_1066a( 16) =   576050.d0
+  M1066a_V_radius_1066a( 17) =   614450.d0
+  M1066a_V_radius_1066a( 18) =   652850.d0
+  M1066a_V_radius_1066a( 19) =   691260.d0
+  M1066a_V_radius_1066a( 20) =   729660.d0
+  M1066a_V_radius_1066a( 21) =   768060.d0
+  M1066a_V_radius_1066a( 22) =   806460.d0
+  M1066a_V_radius_1066a( 23) =   844870.d0
+  M1066a_V_radius_1066a( 24) =   883270.d0
+  M1066a_V_radius_1066a( 25) =   921670.d0
+  M1066a_V_radius_1066a( 26) =   960080.d0
+  M1066a_V_radius_1066a( 27) =   998480.d0
+  M1066a_V_radius_1066a( 28) =   1036880.d0
+  M1066a_V_radius_1066a( 29) =   1075290.d0
+  M1066a_V_radius_1066a( 30) =   1113690.d0
+  M1066a_V_radius_1066a( 31) =   1152090.d0
+  M1066a_V_radius_1066a( 32) =   1190500.d0
+  M1066a_V_radius_1066a( 33) =   1229480.d0
+  M1066a_V_radius_1066a( 34) =   1229480.d0
+  M1066a_V_radius_1066a( 35) =   1299360.d0
+  M1066a_V_radius_1066a( 36) =   1369820.d0
+  M1066a_V_radius_1066a( 37) =   1440280.d0
+  M1066a_V_radius_1066a( 38) =   1510740.d0
+  M1066a_V_radius_1066a( 39) =   1581190.d0
+  M1066a_V_radius_1066a( 40) =   1651650.d0
+  M1066a_V_radius_1066a( 41) =   1722110.d0
+  M1066a_V_radius_1066a( 42) =   1792570.d0
+  M1066a_V_radius_1066a( 43) =   1863030.d0
+  M1066a_V_radius_1066a( 44) =   1933490.d0
+  M1066a_V_radius_1066a( 45) =   2003950.d0
+  M1066a_V_radius_1066a( 46) =   2074410.d0
+  M1066a_V_radius_1066a( 47) =   2144870.d0
+  M1066a_V_radius_1066a( 48) =   2215330.d0
+  M1066a_V_radius_1066a( 49) =   2285790.d0
+  M1066a_V_radius_1066a( 50) =   2356240.d0
+  M1066a_V_radius_1066a( 51) =   2426700.d0
+  M1066a_V_radius_1066a( 52) =   2497160.d0
+  M1066a_V_radius_1066a( 53) =   2567620.d0
+  M1066a_V_radius_1066a( 54) =   2638080.d0
+  M1066a_V_radius_1066a( 55) =   2708540.d0
+  M1066a_V_radius_1066a( 56) =   2779000.d0
+  M1066a_V_radius_1066a( 57) =   2849460.d0
+  M1066a_V_radius_1066a( 58) =   2919920.d0
+  M1066a_V_radius_1066a( 59) =   2990380.d0
+  M1066a_V_radius_1066a( 60) =   3060840.d0
+  M1066a_V_radius_1066a( 61) =   3131300.d0
+  M1066a_V_radius_1066a( 62) =   3201750.d0
+  M1066a_V_radius_1066a( 63) =   3272210.d0
+  M1066a_V_radius_1066a( 64) =   3342670.d0
+  M1066a_V_radius_1066a( 65) =   3413130.d0
+  M1066a_V_radius_1066a( 66) =   3484300.d0
+  M1066a_V_radius_1066a( 67) =   3484300.d0
+  M1066a_V_radius_1066a( 68) =   3518220.d0
+  M1066a_V_radius_1066a( 69) =   3552850.d0
+  M1066a_V_radius_1066a( 70) =   3587490.d0
+  M1066a_V_radius_1066a( 71) =   3622120.d0
+  M1066a_V_radius_1066a( 72) =   3656750.d0
+  M1066a_V_radius_1066a( 73) =   3691380.d0
+  M1066a_V_radius_1066a( 74) =   3726010.d0
+  M1066a_V_radius_1066a( 75) =   3760640.d0
+  M1066a_V_radius_1066a( 76) =   3795270.d0
+  M1066a_V_radius_1066a( 77) =   3829910.d0
+  M1066a_V_radius_1066a( 78) =   3864540.d0
+  M1066a_V_radius_1066a( 79) =   3899170.d0
+  M1066a_V_radius_1066a( 80) =   3933800.d0
+  M1066a_V_radius_1066a( 81) =   3968430.d0
+  M1066a_V_radius_1066a( 82) =   4003060.d0
+  M1066a_V_radius_1066a( 83) =   4037690.d0
+  M1066a_V_radius_1066a( 84) =   4072330.d0
+  M1066a_V_radius_1066a( 85) =   4106960.d0
+  M1066a_V_radius_1066a( 86) =   4141590.d0
+  M1066a_V_radius_1066a( 87) =   4176220.d0
+  M1066a_V_radius_1066a( 88) =   4210850.d0
+  M1066a_V_radius_1066a( 89) =   4245480.d0
+  M1066a_V_radius_1066a( 90) =   4280110.d0
+  M1066a_V_radius_1066a( 91) =   4314740.d0
+  M1066a_V_radius_1066a( 92) =   4349380.d0
+  M1066a_V_radius_1066a( 93) =   4384010.d0
+  M1066a_V_radius_1066a( 94) =   4418640.d0
+  M1066a_V_radius_1066a( 95) =   4453270.d0
+  M1066a_V_radius_1066a( 96) =   4487900.d0
+  M1066a_V_radius_1066a( 97) =   4522530.d0
+  M1066a_V_radius_1066a( 98) =   4557160.d0
+  M1066a_V_radius_1066a( 99) =   4591800.d0
+  M1066a_V_radius_1066a(100) =   4626430.d0
+  M1066a_V_radius_1066a(101) =   4661060.d0
+  M1066a_V_radius_1066a(102) =   4695690.d0
+  M1066a_V_radius_1066a(103) =   4730320.d0
+  M1066a_V_radius_1066a(104) =   4764950.d0
+  M1066a_V_radius_1066a(105) =   4799580.d0
+  M1066a_V_radius_1066a(106) =   4834220.d0
+  M1066a_V_radius_1066a(107) =   4868850.d0
+  M1066a_V_radius_1066a(108) =   4903480.d0
+  M1066a_V_radius_1066a(109) =   4938110.d0
+  M1066a_V_radius_1066a(110) =   4972740.d0
+  M1066a_V_radius_1066a(111) =   5007370.d0
+  M1066a_V_radius_1066a(112) =   5042000.d0
+  M1066a_V_radius_1066a(113) =   5076640.d0
+  M1066a_V_radius_1066a(114) =   5111270.d0
+  M1066a_V_radius_1066a(115) =   5145900.d0
+  M1066a_V_radius_1066a(116) =   5180530.d0
+  M1066a_V_radius_1066a(117) =   5215160.d0
+  M1066a_V_radius_1066a(118) =   5249790.d0
+  M1066a_V_radius_1066a(119) =   5284420.d0
+  M1066a_V_radius_1066a(120) =   5319060.d0
+  M1066a_V_radius_1066a(121) =   5353690.d0
+  M1066a_V_radius_1066a(122) =   5388320.d0
+  M1066a_V_radius_1066a(123) =   5422950.d0
+  M1066a_V_radius_1066a(124) =   5457580.d0
+  M1066a_V_radius_1066a(125) =   5492210.d0
+  M1066a_V_radius_1066a(126) =   5526840.d0
+  M1066a_V_radius_1066a(127) =   5561470.d0
+  M1066a_V_radius_1066a(128) =   5596110.d0
+  M1066a_V_radius_1066a(129) =   5630740.d0
+  M1066a_V_radius_1066a(130) =   5665370.d0
+  M1066a_V_radius_1066a(131) =   5700000.d0
+  M1066a_V_radius_1066a(132) =   5700000.d0
+  M1066a_V_radius_1066a(133) =   5731250.d0
+  M1066a_V_radius_1066a(134) =   5762500.d0
+  M1066a_V_radius_1066a(135) =   5793750.d0
+  M1066a_V_radius_1066a(136) =   5825000.d0
+  M1066a_V_radius_1066a(137) =   5856250.d0
+  M1066a_V_radius_1066a(138) =   5887500.d0
+  M1066a_V_radius_1066a(139) =   5918750.d0
+  M1066a_V_radius_1066a(140) =   5950000.d0
+  M1066a_V_radius_1066a(141) =   5950000.d0
+  M1066a_V_radius_1066a(142) =   5975630.d0
+  M1066a_V_radius_1066a(143) =   6001250.d0
+  M1066a_V_radius_1066a(144) =   6026880.d0
+  M1066a_V_radius_1066a(145) =   6052500.d0
+  M1066a_V_radius_1066a(146) =   6078130.d0
+  M1066a_V_radius_1066a(147) =   6103750.d0
+  M1066a_V_radius_1066a(148) =   6129380.d0
+  M1066a_V_radius_1066a(149) =   6155000.d0
+  M1066a_V_radius_1066a(150) =   6180630.d0
+  M1066a_V_radius_1066a(151) =   6206250.d0
+  M1066a_V_radius_1066a(152) =   6231880.d0
+  M1066a_V_radius_1066a(153) =   6257500.d0
+  M1066a_V_radius_1066a(154) =   6283130.d0
+  M1066a_V_radius_1066a(155) =   6308750.d0
+  M1066a_V_radius_1066a(156) =   6334380.d0
+  M1066a_V_radius_1066a(157) =   6360000.d0
+  M1066a_V_radius_1066a(158) =   6360000.d0
+  M1066a_V_radius_1066a(159) =   6365500.d0
+  M1066a_V_radius_1066a(160) =   6371000.d0
 
-  M1066a_V%density_1066a(  1) =   13.4290300000000
-  M1066a_V%density_1066a(  2) =   13.4256300000000
-  M1066a_V%density_1066a(  3) =   13.4191300000000
-  M1066a_V%density_1066a(  4) =   13.4135300000000
-  M1066a_V%density_1066a(  5) =   13.4072300000000
-  M1066a_V%density_1066a(  6) =   13.4003200000000
-  M1066a_V%density_1066a(  7) =   13.3929200000000
-  M1066a_V%density_1066a(  8) =   13.3847100000000
-  M1066a_V%density_1066a(  9) =   13.3754000000000
-  M1066a_V%density_1066a( 10) =   13.3649000000000
-  M1066a_V%density_1066a( 11) =   13.3527900000000
-  M1066a_V%density_1066a( 12) =   13.3389800000000
-  M1066a_V%density_1066a( 13) =   13.3238700000000
-  M1066a_V%density_1066a( 14) =   13.3078500000000
-  M1066a_V%density_1066a( 15) =   13.2914400000000
-  M1066a_V%density_1066a( 16) =   13.2750300000000
-  M1066a_V%density_1066a( 17) =   13.2589100000000
-  M1066a_V%density_1066a( 18) =   13.2431000000000
-  M1066a_V%density_1066a( 19) =   13.2275800000000
-  M1066a_V%density_1066a( 20) =   13.2123600000000
-  M1066a_V%density_1066a( 21) =   13.1972500000000
-  M1066a_V%density_1066a( 22) =   13.1823300000000
-  M1066a_V%density_1066a( 23) =   13.1675100000000
-  M1066a_V%density_1066a( 24) =   13.1527800000000
-  M1066a_V%density_1066a( 25) =   13.1382600000000
-  M1066a_V%density_1066a( 26) =   13.1239400000000
-  M1066a_V%density_1066a( 27) =   13.1095200000000
-  M1066a_V%density_1066a( 28) =   13.0953900000000
-  M1066a_V%density_1066a( 29) =   13.0811600000000
-  M1066a_V%density_1066a( 30) =   13.0670400000000
-  M1066a_V%density_1066a( 31) =   13.0525100000000
-  M1066a_V%density_1066a( 32) =   13.0385800000000
-  M1066a_V%density_1066a( 33) =   13.0287500000000
-  M1066a_V%density_1066a( 34) =   12.1606500000000
-  M1066a_V%density_1066a( 35) =   12.1169900000000
-  M1066a_V%density_1066a( 36) =   12.0748300000000
-  M1066a_V%density_1066a( 37) =   12.0330700000000
-  M1066a_V%density_1066a( 38) =   11.9916000000000
-  M1066a_V%density_1066a( 39) =   11.9507300000000
-  M1066a_V%density_1066a( 40) =   11.9104600000000
-  M1066a_V%density_1066a( 41) =   11.8693800000000
-  M1066a_V%density_1066a( 42) =   11.8248100000000
-  M1066a_V%density_1066a( 43) =   11.7753200000000
-  M1066a_V%density_1066a( 44) =   11.7220400000000
-  M1066a_V%density_1066a( 45) =   11.6665500000000
-  M1066a_V%density_1066a( 46) =   11.6085600000000
-  M1066a_V%density_1066a( 47) =   11.5469600000000
-  M1066a_V%density_1066a( 48) =   11.4809600000000
-  M1066a_V%density_1066a( 49) =   11.4116600000000
-  M1066a_V%density_1066a( 50) =   11.3411600000000
-  M1066a_V%density_1066a( 51) =   11.2705500000000
-  M1066a_V%density_1066a( 52) =   11.1982400000000
-  M1066a_V%density_1066a( 53) =   11.1214200000000
-  M1066a_V%density_1066a( 54) =   11.0384100000000
-  M1066a_V%density_1066a( 55) =   10.9511900000000
-  M1066a_V%density_1066a( 56) =   10.8631600000000
-  M1066a_V%density_1066a( 57) =   10.7770300000000
-  M1066a_V%density_1066a( 58) =   10.6925000000000
-  M1066a_V%density_1066a( 59) =   10.6076700000000
-  M1066a_V%density_1066a( 60) =   10.5207300000000
-  M1066a_V%density_1066a( 61) =   10.4312000000000
-  M1066a_V%density_1066a( 62) =   10.3377500000000
-  M1066a_V%density_1066a( 63) =   10.2396100000000
-  M1066a_V%density_1066a( 64) =   10.1378600000000
-  M1066a_V%density_1066a( 65) =   10.0323000000000
-  M1066a_V%density_1066a( 66) =   9.91745000000000
-  M1066a_V%density_1066a( 67) =   5.53205000000000
-  M1066a_V%density_1066a( 68) =   5.52147000000000
-  M1066a_V%density_1066a( 69) =   5.50959000000000
-  M1066a_V%density_1066a( 70) =   5.49821000000000
-  M1066a_V%density_1066a( 71) =   5.48673000000000
-  M1066a_V%density_1066a( 72) =   5.47495000000000
-  M1066a_V%density_1066a( 73) =   5.46297000000000
-  M1066a_V%density_1066a( 74) =   5.45049000000000
-  M1066a_V%density_1066a( 75) =   5.43741000000000
-  M1066a_V%density_1066a( 76) =   5.42382000000000
-  M1066a_V%density_1066a( 77) =   5.40934000000000
-  M1066a_V%density_1066a( 78) =   5.39375000000000
-  M1066a_V%density_1066a( 79) =   5.37717000000000
-  M1066a_V%density_1066a( 80) =   5.35958000000000
-  M1066a_V%density_1066a( 81) =   5.34079000000000
-  M1066a_V%density_1066a( 82) =   5.32100000000000
-  M1066a_V%density_1066a( 83) =   5.30031000000000
-  M1066a_V%density_1066a( 84) =   5.27902000000000
-  M1066a_V%density_1066a( 85) =   5.25733000000000
-  M1066a_V%density_1066a( 86) =   5.23554000000000
-  M1066a_V%density_1066a( 87) =   5.21375000000000
-  M1066a_V%density_1066a( 88) =   5.19196000000000
-  M1066a_V%density_1066a( 89) =   5.17056000000000
-  M1066a_V%density_1066a( 90) =   5.14937000000000
-  M1066a_V%density_1066a( 91) =   5.12827000000000
-  M1066a_V%density_1066a( 92) =   5.10758000000000
-  M1066a_V%density_1066a( 93) =   5.08728000000000
-  M1066a_V%density_1066a( 94) =   5.06738000000000
-  M1066a_V%density_1066a( 95) =   5.04769000000000
-  M1066a_V%density_1066a( 96) =   5.02809000000000
-  M1066a_V%density_1066a( 97) =   5.00869000000000
-  M1066a_V%density_1066a( 98) =   4.98929000000000
-  M1066a_V%density_1066a( 99) =   4.96968000000000
-  M1066a_V%density_1066a(100) =   4.95008000000000
-  M1066a_V%density_1066a(101) =   4.93048000000000
-  M1066a_V%density_1066a(102) =   4.91128000000000
-  M1066a_V%density_1066a(103) =   4.89257000000000
-  M1066a_V%density_1066a(104) =   4.87447000000000
-  M1066a_V%density_1066a(105) =   4.85716000000000
-  M1066a_V%density_1066a(106) =   4.84095000000000
-  M1066a_V%density_1066a(107) =   4.82554000000000
-  M1066a_V%density_1066a(108) =   4.81084000000000
-  M1066a_V%density_1066a(109) =   4.79683000000000
-  M1066a_V%density_1066a(110) =   4.78312000000000
-  M1066a_V%density_1066a(111) =   4.76951000000000
-  M1066a_V%density_1066a(112) =   4.75530000000000
-  M1066a_V%density_1066a(113) =   4.74008000000000
-  M1066a_V%density_1066a(114) =   4.72317000000000
-  M1066a_V%density_1066a(115) =   4.70426000000000
-  M1066a_V%density_1066a(116) =   4.68264000000000
-  M1066a_V%density_1066a(117) =   4.65863000000000
-  M1066a_V%density_1066a(118) =   4.63351000000000
-  M1066a_V%density_1066a(119) =   4.60859000000000
-  M1066a_V%density_1066a(120) =   4.58538000000000
-  M1066a_V%density_1066a(121) =   4.56536000000000
-  M1066a_V%density_1066a(122) =   4.55044000000000
-  M1066a_V%density_1066a(123) =   4.54072000000000
-  M1066a_V%density_1066a(124) =   4.53480000000000
-  M1066a_V%density_1066a(125) =   4.53478000000000
-  M1066a_V%density_1066a(126) =   4.53275000000000
-  M1066a_V%density_1066a(127) =   4.50893000000000
-  M1066a_V%density_1066a(128) =   4.46541000000000
-  M1066a_V%density_1066a(129) =   4.40098000000000
-  M1066a_V%density_1066a(130) =   4.31686000000000
-  M1066a_V%density_1066a(131) =   4.20553000000000
-  M1066a_V%density_1066a(132) =   4.20553000000000
-  M1066a_V%density_1066a(133) =   4.10272000000000
-  M1066a_V%density_1066a(134) =   4.02250000000000
-  M1066a_V%density_1066a(135) =   3.95789000000000
-  M1066a_V%density_1066a(136) =   3.89997000000000
-  M1066a_V%density_1066a(137) =   3.84675000000000
-  M1066a_V%density_1066a(138) =   3.80144000000000
-  M1066a_V%density_1066a(139) =   3.76072000000000
-  M1066a_V%density_1066a(140) =   3.70840000000000
-  M1066a_V%density_1066a(141) =   3.70840000000000
-  M1066a_V%density_1066a(142) =   3.65370000000000
-  M1066a_V%density_1066a(143) =   3.59640000000000
-  M1066a_V%density_1066a(144) =   3.54731000000000
-  M1066a_V%density_1066a(145) =   3.50511000000000
-  M1066a_V%density_1066a(146) =   3.46861000000000
-  M1066a_V%density_1066a(147) =   3.43851000000000
-  M1066a_V%density_1066a(148) =   3.41471000000000
-  M1066a_V%density_1066a(149) =   3.39751000000000
-  M1066a_V%density_1066a(150) =   3.38820000000000
-  M1066a_V%density_1066a(151) =   3.38200000000000
-  M1066a_V%density_1066a(152) =   3.37450000000000
-  M1066a_V%density_1066a(153) =   3.36710000000000
-  M1066a_V%density_1066a(154) =   3.35980000000000
-  M1066a_V%density_1066a(155) =   3.35259000000000
-  M1066a_V%density_1066a(156) =   3.34549000000000
-  M1066a_V%density_1066a(157) =   3.33828000000000
-  M1066a_V%density_1066a(158) =   2.17798000000000
-  M1066a_V%density_1066a(159) =   2.17766000000000
-  M1066a_V%density_1066a(160) =   2.17734000000000
+  M1066a_V_density_1066a(  1) =   13.42903d0
+  M1066a_V_density_1066a(  2) =   13.42563d0
+  M1066a_V_density_1066a(  3) =   13.41913d0
+  M1066a_V_density_1066a(  4) =   13.41353d0
+  M1066a_V_density_1066a(  5) =   13.40723d0
+  M1066a_V_density_1066a(  6) =   13.40032d0
+  M1066a_V_density_1066a(  7) =   13.39292d0
+  M1066a_V_density_1066a(  8) =   13.38471d0
+  M1066a_V_density_1066a(  9) =   13.3754d0
+  M1066a_V_density_1066a( 10) =   13.3649d0
+  M1066a_V_density_1066a( 11) =   13.35279d0
+  M1066a_V_density_1066a( 12) =   13.33898d0
+  M1066a_V_density_1066a( 13) =   13.32387d0
+  M1066a_V_density_1066a( 14) =   13.30785d0
+  M1066a_V_density_1066a( 15) =   13.29144d0
+  M1066a_V_density_1066a( 16) =   13.27503d0
+  M1066a_V_density_1066a( 17) =   13.25891d0
+  M1066a_V_density_1066a( 18) =   13.2431d0
+  M1066a_V_density_1066a( 19) =   13.22758d0
+  M1066a_V_density_1066a( 20) =   13.21236d0
+  M1066a_V_density_1066a( 21) =   13.19725d0
+  M1066a_V_density_1066a( 22) =   13.18233d0
+  M1066a_V_density_1066a( 23) =   13.16751d0
+  M1066a_V_density_1066a( 24) =   13.15278d0
+  M1066a_V_density_1066a( 25) =   13.13826d0
+  M1066a_V_density_1066a( 26) =   13.12394d0
+  M1066a_V_density_1066a( 27) =   13.10952d0
+  M1066a_V_density_1066a( 28) =   13.09539d0
+  M1066a_V_density_1066a( 29) =   13.08116d0
+  M1066a_V_density_1066a( 30) =   13.06704d0
+  M1066a_V_density_1066a( 31) =   13.05251d0
+  M1066a_V_density_1066a( 32) =   13.03858d0
+  M1066a_V_density_1066a( 33) =   13.02875d0
+  M1066a_V_density_1066a( 34) =   12.16065d0
+  M1066a_V_density_1066a( 35) =   12.11699d0
+  M1066a_V_density_1066a( 36) =   12.07483d0
+  M1066a_V_density_1066a( 37) =   12.03307d0
+  M1066a_V_density_1066a( 38) =   11.9916d0
+  M1066a_V_density_1066a( 39) =   11.95073d0
+  M1066a_V_density_1066a( 40) =   11.91046d0
+  M1066a_V_density_1066a( 41) =   11.86938d0
+  M1066a_V_density_1066a( 42) =   11.82481d0
+  M1066a_V_density_1066a( 43) =   11.77532d0
+  M1066a_V_density_1066a( 44) =   11.72204d0
+  M1066a_V_density_1066a( 45) =   11.66655d0
+  M1066a_V_density_1066a( 46) =   11.60856d0
+  M1066a_V_density_1066a( 47) =   11.54696d0
+  M1066a_V_density_1066a( 48) =   11.48096d0
+  M1066a_V_density_1066a( 49) =   11.41166d0
+  M1066a_V_density_1066a( 50) =   11.34116d0
+  M1066a_V_density_1066a( 51) =   11.27055d0
+  M1066a_V_density_1066a( 52) =   11.19824d0
+  M1066a_V_density_1066a( 53) =   11.12142d0
+  M1066a_V_density_1066a( 54) =   11.03841d0
+  M1066a_V_density_1066a( 55) =   10.95119d0
+  M1066a_V_density_1066a( 56) =   10.86316d0
+  M1066a_V_density_1066a( 57) =   10.77703d0
+  M1066a_V_density_1066a( 58) =   10.6925d0
+  M1066a_V_density_1066a( 59) =   10.60767d0
+  M1066a_V_density_1066a( 60) =   10.52073d0
+  M1066a_V_density_1066a( 61) =   10.4312d0
+  M1066a_V_density_1066a( 62) =   10.33775d0
+  M1066a_V_density_1066a( 63) =   10.23961d0
+  M1066a_V_density_1066a( 64) =   10.13786d0
+  M1066a_V_density_1066a( 65) =   10.0323d0
+  M1066a_V_density_1066a( 66) =   9.91745d0
+  M1066a_V_density_1066a( 67) =   5.53205d0
+  M1066a_V_density_1066a( 68) =   5.52147d0
+  M1066a_V_density_1066a( 69) =   5.50959d0
+  M1066a_V_density_1066a( 70) =   5.49821d0
+  M1066a_V_density_1066a( 71) =   5.48673d0
+  M1066a_V_density_1066a( 72) =   5.47495d0
+  M1066a_V_density_1066a( 73) =   5.46297d0
+  M1066a_V_density_1066a( 74) =   5.45049d0
+  M1066a_V_density_1066a( 75) =   5.43741d0
+  M1066a_V_density_1066a( 76) =   5.42382d0
+  M1066a_V_density_1066a( 77) =   5.40934d0
+  M1066a_V_density_1066a( 78) =   5.39375d0
+  M1066a_V_density_1066a( 79) =   5.37717d0
+  M1066a_V_density_1066a( 80) =   5.35958d0
+  M1066a_V_density_1066a( 81) =   5.34079d0
+  M1066a_V_density_1066a( 82) =   5.321d0
+  M1066a_V_density_1066a( 83) =   5.30031d0
+  M1066a_V_density_1066a( 84) =   5.27902d0
+  M1066a_V_density_1066a( 85) =   5.25733d0
+  M1066a_V_density_1066a( 86) =   5.23554d0
+  M1066a_V_density_1066a( 87) =   5.21375d0
+  M1066a_V_density_1066a( 88) =   5.19196d0
+  M1066a_V_density_1066a( 89) =   5.17056d0
+  M1066a_V_density_1066a( 90) =   5.14937d0
+  M1066a_V_density_1066a( 91) =   5.12827d0
+  M1066a_V_density_1066a( 92) =   5.10758d0
+  M1066a_V_density_1066a( 93) =   5.08728d0
+  M1066a_V_density_1066a( 94) =   5.06738d0
+  M1066a_V_density_1066a( 95) =   5.04769d0
+  M1066a_V_density_1066a( 96) =   5.02809d0
+  M1066a_V_density_1066a( 97) =   5.00869d0
+  M1066a_V_density_1066a( 98) =   4.98929d0
+  M1066a_V_density_1066a( 99) =   4.96968d0
+  M1066a_V_density_1066a(100) =   4.95008d0
+  M1066a_V_density_1066a(101) =   4.93048d0
+  M1066a_V_density_1066a(102) =   4.91128d0
+  M1066a_V_density_1066a(103) =   4.89257d0
+  M1066a_V_density_1066a(104) =   4.87447d0
+  M1066a_V_density_1066a(105) =   4.85716d0
+  M1066a_V_density_1066a(106) =   4.84095d0
+  M1066a_V_density_1066a(107) =   4.82554d0
+  M1066a_V_density_1066a(108) =   4.81084d0
+  M1066a_V_density_1066a(109) =   4.79683d0
+  M1066a_V_density_1066a(110) =   4.78312d0
+  M1066a_V_density_1066a(111) =   4.76951d0
+  M1066a_V_density_1066a(112) =   4.7553d0
+  M1066a_V_density_1066a(113) =   4.74008d0
+  M1066a_V_density_1066a(114) =   4.72317d0
+  M1066a_V_density_1066a(115) =   4.70426d0
+  M1066a_V_density_1066a(116) =   4.68264d0
+  M1066a_V_density_1066a(117) =   4.65863d0
+  M1066a_V_density_1066a(118) =   4.63351d0
+  M1066a_V_density_1066a(119) =   4.60859d0
+  M1066a_V_density_1066a(120) =   4.58538d0
+  M1066a_V_density_1066a(121) =   4.56536d0
+  M1066a_V_density_1066a(122) =   4.55044d0
+  M1066a_V_density_1066a(123) =   4.54072d0
+  M1066a_V_density_1066a(124) =   4.5348d0
+  M1066a_V_density_1066a(125) =   4.53478d0
+  M1066a_V_density_1066a(126) =   4.53275d0
+  M1066a_V_density_1066a(127) =   4.50893d0
+  M1066a_V_density_1066a(128) =   4.46541d0
+  M1066a_V_density_1066a(129) =   4.40098d0
+  M1066a_V_density_1066a(130) =   4.31686d0
+  M1066a_V_density_1066a(131) =   4.20553d0
+  M1066a_V_density_1066a(132) =   4.20553d0
+  M1066a_V_density_1066a(133) =   4.10272d0
+  M1066a_V_density_1066a(134) =   4.0225d0
+  M1066a_V_density_1066a(135) =   3.95789d0
+  M1066a_V_density_1066a(136) =   3.89997d0
+  M1066a_V_density_1066a(137) =   3.84675d0
+  M1066a_V_density_1066a(138) =   3.80144d0
+  M1066a_V_density_1066a(139) =   3.76072d0
+  M1066a_V_density_1066a(140) =   3.7084d0
+  M1066a_V_density_1066a(141) =   3.7084d0
+  M1066a_V_density_1066a(142) =   3.6537d0
+  M1066a_V_density_1066a(143) =   3.5964d0
+  M1066a_V_density_1066a(144) =   3.54731d0
+  M1066a_V_density_1066a(145) =   3.50511d0
+  M1066a_V_density_1066a(146) =   3.46861d0
+  M1066a_V_density_1066a(147) =   3.43851d0
+  M1066a_V_density_1066a(148) =   3.41471d0
+  M1066a_V_density_1066a(149) =   3.39751d0
+  M1066a_V_density_1066a(150) =   3.3882d0
+  M1066a_V_density_1066a(151) =   3.382d0
+  M1066a_V_density_1066a(152) =   3.3745d0
+  M1066a_V_density_1066a(153) =   3.3671d0
+  M1066a_V_density_1066a(154) =   3.3598d0
+  M1066a_V_density_1066a(155) =   3.35259d0
+  M1066a_V_density_1066a(156) =   3.34549d0
+  M1066a_V_density_1066a(157) =   3.33828d0
+  M1066a_V_density_1066a(158) =   2.17798d0
+  M1066a_V_density_1066a(159) =   2.17766d0
+  M1066a_V_density_1066a(160) =   2.17734d0
 
-  M1066a_V%vp_1066a(  1) =   11.3383000000000
-  M1066a_V%vp_1066a(  2) =   11.3374000000000
-  M1066a_V%vp_1066a(  3) =   11.3347000000000
-  M1066a_V%vp_1066a(  4) =   11.3301000000000
-  M1066a_V%vp_1066a(  5) =   11.3237000000000
-  M1066a_V%vp_1066a(  6) =   11.3155000000000
-  M1066a_V%vp_1066a(  7) =   11.3056000000000
-  M1066a_V%vp_1066a(  8) =   11.2940000000000
-  M1066a_V%vp_1066a(  9) =   11.2810000000000
-  M1066a_V%vp_1066a( 10) =   11.2666000000000
-  M1066a_V%vp_1066a( 11) =   11.2512000000000
-  M1066a_V%vp_1066a( 12) =   11.2349000000000
-  M1066a_V%vp_1066a( 13) =   11.2181000000000
-  M1066a_V%vp_1066a( 14) =   11.2010000000000
-  M1066a_V%vp_1066a( 15) =   11.1840000000000
-  M1066a_V%vp_1066a( 16) =   11.1672000000000
-  M1066a_V%vp_1066a( 17) =   11.1508000000000
-  M1066a_V%vp_1066a( 18) =   11.1351000000000
-  M1066a_V%vp_1066a( 19) =   11.1201000000000
-  M1066a_V%vp_1066a( 20) =   11.1059000000000
-  M1066a_V%vp_1066a( 21) =   11.0924000000000
-  M1066a_V%vp_1066a( 22) =   11.0798000000000
-  M1066a_V%vp_1066a( 23) =   11.0678000000000
-  M1066a_V%vp_1066a( 24) =   11.0564000000000
-  M1066a_V%vp_1066a( 25) =   11.0455000000000
-  M1066a_V%vp_1066a( 26) =   11.0350000000000
-  M1066a_V%vp_1066a( 27) =   11.0248000000000
-  M1066a_V%vp_1066a( 28) =   11.0149000000000
-  M1066a_V%vp_1066a( 29) =   11.0051000000000
-  M1066a_V%vp_1066a( 30) =   10.9953000000000
-  M1066a_V%vp_1066a( 31) =   10.9857000000000
-  M1066a_V%vp_1066a( 32) =   10.9756000000000
-  M1066a_V%vp_1066a( 33) =   10.9687000000000
-  M1066a_V%vp_1066a( 34) =   10.4140000000000
-  M1066a_V%vp_1066a( 35) =   10.3518000000000
-  M1066a_V%vp_1066a( 36) =   10.2922000000000
-  M1066a_V%vp_1066a( 37) =   10.2351000000000
-  M1066a_V%vp_1066a( 38) =   10.1808000000000
-  M1066a_V%vp_1066a( 39) =   10.1297000000000
-  M1066a_V%vp_1066a( 40) =   10.0788000000000
-  M1066a_V%vp_1066a( 41) =   10.0284000000000
-  M1066a_V%vp_1066a( 42) =   9.97880000000000
-  M1066a_V%vp_1066a( 43) =   9.93070000000000
-  M1066a_V%vp_1066a( 44) =   9.88360000000000
-  M1066a_V%vp_1066a( 45) =   9.83530000000000
-  M1066a_V%vp_1066a( 46) =   9.78250000000000
-  M1066a_V%vp_1066a( 47) =   9.72110000000000
-  M1066a_V%vp_1066a( 48) =   9.65210000000000
-  M1066a_V%vp_1066a( 49) =   9.58060000000000
-  M1066a_V%vp_1066a( 50) =   9.51150000000000
-  M1066a_V%vp_1066a( 51) =   9.44650000000000
-  M1066a_V%vp_1066a( 52) =   9.38280000000000
-  M1066a_V%vp_1066a( 53) =   9.31660000000000
-  M1066a_V%vp_1066a( 54) =   9.24420000000000
-  M1066a_V%vp_1066a( 55) =   9.16580000000000
-  M1066a_V%vp_1066a( 56) =   9.08330000000000
-  M1066a_V%vp_1066a( 57) =   8.99870000000000
-  M1066a_V%vp_1066a( 58) =   8.91160000000000
-  M1066a_V%vp_1066a( 59) =   8.82010000000000
-  M1066a_V%vp_1066a( 60) =   8.72230000000000
-  M1066a_V%vp_1066a( 61) =   8.61710000000000
-  M1066a_V%vp_1066a( 62) =   8.50300000000000
-  M1066a_V%vp_1066a( 63) =   8.38070000000000
-  M1066a_V%vp_1066a( 64) =   8.25560000000000
-  M1066a_V%vp_1066a( 65) =   8.13180000000000
-  M1066a_V%vp_1066a( 66) =   8.01120000000000
-  M1066a_V%vp_1066a( 67) =   13.7172000000000
-  M1066a_V%vp_1066a( 68) =   13.7134000000000
-  M1066a_V%vp_1066a( 69) =   13.7089000000000
-  M1066a_V%vp_1066a( 70) =   13.6806000000000
-  M1066a_V%vp_1066a( 71) =   13.6517000000000
-  M1066a_V%vp_1066a( 72) =   13.6251000000000
-  M1066a_V%vp_1066a( 73) =   13.5916000000000
-  M1066a_V%vp_1066a( 74) =   13.5564000000000
-  M1066a_V%vp_1066a( 75) =   13.5165000000000
-  M1066a_V%vp_1066a( 76) =   13.4725000000000
-  M1066a_V%vp_1066a( 77) =   13.4248000000000
-  M1066a_V%vp_1066a( 78) =   13.3742000000000
-  M1066a_V%vp_1066a( 79) =   13.3216000000000
-  M1066a_V%vp_1066a( 80) =   13.2679000000000
-  M1066a_V%vp_1066a( 81) =   13.2142000000000
-  M1066a_V%vp_1066a( 82) =   13.1619000000000
-  M1066a_V%vp_1066a( 83) =   13.1114000000000
-  M1066a_V%vp_1066a( 84) =   13.0631000000000
-  M1066a_V%vp_1066a( 85) =   13.0174000000000
-  M1066a_V%vp_1066a( 86) =   12.9745000000000
-  M1066a_V%vp_1066a( 87) =   12.9346000000000
-  M1066a_V%vp_1066a( 88) =   12.8977000000000
-  M1066a_V%vp_1066a( 89) =   12.8635000000000
-  M1066a_V%vp_1066a( 90) =   12.8318000000000
-  M1066a_V%vp_1066a( 91) =   12.8022000000000
-  M1066a_V%vp_1066a( 92) =   12.7739000000000
-  M1066a_V%vp_1066a( 93) =   12.7463000000000
-  M1066a_V%vp_1066a( 94) =   12.7186000000000
-  M1066a_V%vp_1066a( 95) =   12.6903000000000
-  M1066a_V%vp_1066a( 96) =   12.6610000000000
-  M1066a_V%vp_1066a( 97) =   12.6302000000000
-  M1066a_V%vp_1066a( 98) =   12.5978000000000
-  M1066a_V%vp_1066a( 99) =   12.5637000000000
-  M1066a_V%vp_1066a(100) =   12.5276000000000
-  M1066a_V%vp_1066a(101) =   12.4893000000000
-  M1066a_V%vp_1066a(102) =   12.4485000000000
-  M1066a_V%vp_1066a(103) =   12.4052000000000
-  M1066a_V%vp_1066a(104) =   12.3592000000000
-  M1066a_V%vp_1066a(105) =   12.3105000000000
-  M1066a_V%vp_1066a(106) =   12.2596000000000
-  M1066a_V%vp_1066a(107) =   12.2072000000000
-  M1066a_V%vp_1066a(108) =   12.1538000000000
-  M1066a_V%vp_1066a(109) =   12.0998000000000
-  M1066a_V%vp_1066a(110) =   12.0458000000000
-  M1066a_V%vp_1066a(111) =   11.9920000000000
-  M1066a_V%vp_1066a(112) =   11.9373000000000
-  M1066a_V%vp_1066a(113) =   11.8804000000000
-  M1066a_V%vp_1066a(114) =   11.8200000000000
-  M1066a_V%vp_1066a(115) =   11.7554000000000
-  M1066a_V%vp_1066a(116) =   11.6844000000000
-  M1066a_V%vp_1066a(117) =   11.6079000000000
-  M1066a_V%vp_1066a(118) =   11.5308000000000
-  M1066a_V%vp_1066a(119) =   11.4579000000000
-  M1066a_V%vp_1066a(120) =   11.3935000000000
-  M1066a_V%vp_1066a(121) =   11.3418000000000
-  M1066a_V%vp_1066a(122) =   11.3085000000000
-  M1066a_V%vp_1066a(123) =   11.2938000000000
-  M1066a_V%vp_1066a(124) =   11.2915000000000
-  M1066a_V%vp_1066a(125) =   11.3049000000000
-  M1066a_V%vp_1066a(126) =   11.3123000000000
-  M1066a_V%vp_1066a(127) =   11.2643000000000
-  M1066a_V%vp_1066a(128) =   11.1635000000000
-  M1066a_V%vp_1066a(129) =   11.0063000000000
-  M1066a_V%vp_1066a(130) =   10.7959000000000
-  M1066a_V%vp_1066a(131) =   10.5143000000000
-  M1066a_V%vp_1066a(132) =   10.5143000000000
-  M1066a_V%vp_1066a(133) =   10.2513000000000
-  M1066a_V%vp_1066a(134) =   10.0402000000000
-  M1066a_V%vp_1066a(135) =   9.86480000000000
-  M1066a_V%vp_1066a(136) =   9.70860000000000
-  M1066a_V%vp_1066a(137) =   9.56810000000000
-  M1066a_V%vp_1066a(138) =   9.45120000000000
-  M1066a_V%vp_1066a(139) =   9.35100000000000
-  M1066a_V%vp_1066a(140) =   9.22830000000000
-  M1066a_V%vp_1066a(141) =   9.22830000000000
-  M1066a_V%vp_1066a(142) =   9.10870000000000
-  M1066a_V%vp_1066a(143) =   8.98230000000000
-  M1066a_V%vp_1066a(144) =   8.85920000000000
-  M1066a_V%vp_1066a(145) =   8.73860000000000
-  M1066a_V%vp_1066a(146) =   8.61930000000000
-  M1066a_V%vp_1066a(147) =   8.50180000000000
-  M1066a_V%vp_1066a(148) =   8.38710000000000
-  M1066a_V%vp_1066a(149) =   8.27360000000000
-  M1066a_V%vp_1066a(150) =   8.15850000000000
-  M1066a_V%vp_1066a(151) =   8.05400000000000
-  M1066a_V%vp_1066a(152) =   7.96520000000000
-  M1066a_V%vp_1066a(153) =   7.87340000000000
-  M1066a_V%vp_1066a(154) =   7.79720000000000
-  M1066a_V%vp_1066a(155) =   7.73910000000000
-  M1066a_V%vp_1066a(156) =   7.71340000000000
-  M1066a_V%vp_1066a(157) =   7.70460000000000
-  M1066a_V%vp_1066a(158) =   4.70220000000000
-  M1066a_V%vp_1066a(159) =   4.70010000000000
-  M1066a_V%vp_1066a(160) =   4.69790000000000
+  M1066a_V_vp_1066a(  1) =   11.3383d0
+  M1066a_V_vp_1066a(  2) =   11.3374d0
+  M1066a_V_vp_1066a(  3) =   11.3347d0
+  M1066a_V_vp_1066a(  4) =   11.3301d0
+  M1066a_V_vp_1066a(  5) =   11.3237d0
+  M1066a_V_vp_1066a(  6) =   11.3155d0
+  M1066a_V_vp_1066a(  7) =   11.3056d0
+  M1066a_V_vp_1066a(  8) =   11.294d0
+  M1066a_V_vp_1066a(  9) =   11.281d0
+  M1066a_V_vp_1066a( 10) =   11.2666d0
+  M1066a_V_vp_1066a( 11) =   11.2512d0
+  M1066a_V_vp_1066a( 12) =   11.2349d0
+  M1066a_V_vp_1066a( 13) =   11.2181d0
+  M1066a_V_vp_1066a( 14) =   11.201d0
+  M1066a_V_vp_1066a( 15) =   11.184d0
+  M1066a_V_vp_1066a( 16) =   11.1672d0
+  M1066a_V_vp_1066a( 17) =   11.1508d0
+  M1066a_V_vp_1066a( 18) =   11.1351d0
+  M1066a_V_vp_1066a( 19) =   11.1201d0
+  M1066a_V_vp_1066a( 20) =   11.1059d0
+  M1066a_V_vp_1066a( 21) =   11.0924d0
+  M1066a_V_vp_1066a( 22) =   11.0798d0
+  M1066a_V_vp_1066a( 23) =   11.0678d0
+  M1066a_V_vp_1066a( 24) =   11.0564d0
+  M1066a_V_vp_1066a( 25) =   11.0455d0
+  M1066a_V_vp_1066a( 26) =   11.035d0
+  M1066a_V_vp_1066a( 27) =   11.0248d0
+  M1066a_V_vp_1066a( 28) =   11.0149d0
+  M1066a_V_vp_1066a( 29) =   11.0051d0
+  M1066a_V_vp_1066a( 30) =   10.9953d0
+  M1066a_V_vp_1066a( 31) =   10.9857d0
+  M1066a_V_vp_1066a( 32) =   10.9756d0
+  M1066a_V_vp_1066a( 33) =   10.9687d0
+  M1066a_V_vp_1066a( 34) =   10.414d0
+  M1066a_V_vp_1066a( 35) =   10.3518d0
+  M1066a_V_vp_1066a( 36) =   10.2922d0
+  M1066a_V_vp_1066a( 37) =   10.2351d0
+  M1066a_V_vp_1066a( 38) =   10.1808d0
+  M1066a_V_vp_1066a( 39) =   10.1297d0
+  M1066a_V_vp_1066a( 40) =   10.0788d0
+  M1066a_V_vp_1066a( 41) =   10.0284d0
+  M1066a_V_vp_1066a( 42) =   9.9788d0
+  M1066a_V_vp_1066a( 43) =   9.9307d0
+  M1066a_V_vp_1066a( 44) =   9.8836d0
+  M1066a_V_vp_1066a( 45) =   9.8353d0
+  M1066a_V_vp_1066a( 46) =   9.7825d0
+  M1066a_V_vp_1066a( 47) =   9.7211d0
+  M1066a_V_vp_1066a( 48) =   9.6521d0
+  M1066a_V_vp_1066a( 49) =   9.5806d0
+  M1066a_V_vp_1066a( 50) =   9.5115d0
+  M1066a_V_vp_1066a( 51) =   9.4465d0
+  M1066a_V_vp_1066a( 52) =   9.3828d0
+  M1066a_V_vp_1066a( 53) =   9.3166d0
+  M1066a_V_vp_1066a( 54) =   9.2442d0
+  M1066a_V_vp_1066a( 55) =   9.1658d0
+  M1066a_V_vp_1066a( 56) =   9.0833d0
+  M1066a_V_vp_1066a( 57) =   8.9987d0
+  M1066a_V_vp_1066a( 58) =   8.9116d0
+  M1066a_V_vp_1066a( 59) =   8.8201d0
+  M1066a_V_vp_1066a( 60) =   8.7223d0
+  M1066a_V_vp_1066a( 61) =   8.6171d0
+  M1066a_V_vp_1066a( 62) =   8.503d0
+  M1066a_V_vp_1066a( 63) =   8.3807d0
+  M1066a_V_vp_1066a( 64) =   8.2556d0
+  M1066a_V_vp_1066a( 65) =   8.1318d0
+  M1066a_V_vp_1066a( 66) =   8.0112d0
+  M1066a_V_vp_1066a( 67) =   13.7172d0
+  M1066a_V_vp_1066a( 68) =   13.7134d0
+  M1066a_V_vp_1066a( 69) =   13.7089d0
+  M1066a_V_vp_1066a( 70) =   13.6806d0
+  M1066a_V_vp_1066a( 71) =   13.6517d0
+  M1066a_V_vp_1066a( 72) =   13.6251d0
+  M1066a_V_vp_1066a( 73) =   13.5916d0
+  M1066a_V_vp_1066a( 74) =   13.5564d0
+  M1066a_V_vp_1066a( 75) =   13.5165d0
+  M1066a_V_vp_1066a( 76) =   13.4725d0
+  M1066a_V_vp_1066a( 77) =   13.4248d0
+  M1066a_V_vp_1066a( 78) =   13.3742d0
+  M1066a_V_vp_1066a( 79) =   13.3216d0
+  M1066a_V_vp_1066a( 80) =   13.2679d0
+  M1066a_V_vp_1066a( 81) =   13.2142d0
+  M1066a_V_vp_1066a( 82) =   13.1619d0
+  M1066a_V_vp_1066a( 83) =   13.1114d0
+  M1066a_V_vp_1066a( 84) =   13.0631d0
+  M1066a_V_vp_1066a( 85) =   13.0174d0
+  M1066a_V_vp_1066a( 86) =   12.9745d0
+  M1066a_V_vp_1066a( 87) =   12.9346d0
+  M1066a_V_vp_1066a( 88) =   12.8977d0
+  M1066a_V_vp_1066a( 89) =   12.8635d0
+  M1066a_V_vp_1066a( 90) =   12.8318d0
+  M1066a_V_vp_1066a( 91) =   12.8022d0
+  M1066a_V_vp_1066a( 92) =   12.7739d0
+  M1066a_V_vp_1066a( 93) =   12.7463d0
+  M1066a_V_vp_1066a( 94) =   12.7186d0
+  M1066a_V_vp_1066a( 95) =   12.6903d0
+  M1066a_V_vp_1066a( 96) =   12.661d0
+  M1066a_V_vp_1066a( 97) =   12.6302d0
+  M1066a_V_vp_1066a( 98) =   12.5978d0
+  M1066a_V_vp_1066a( 99) =   12.5637d0
+  M1066a_V_vp_1066a(100) =   12.5276d0
+  M1066a_V_vp_1066a(101) =   12.4893d0
+  M1066a_V_vp_1066a(102) =   12.4485d0
+  M1066a_V_vp_1066a(103) =   12.4052d0
+  M1066a_V_vp_1066a(104) =   12.3592d0
+  M1066a_V_vp_1066a(105) =   12.3105d0
+  M1066a_V_vp_1066a(106) =   12.2596d0
+  M1066a_V_vp_1066a(107) =   12.2072d0
+  M1066a_V_vp_1066a(108) =   12.1538d0
+  M1066a_V_vp_1066a(109) =   12.0998d0
+  M1066a_V_vp_1066a(110) =   12.0458d0
+  M1066a_V_vp_1066a(111) =   11.992d0
+  M1066a_V_vp_1066a(112) =   11.9373d0
+  M1066a_V_vp_1066a(113) =   11.8804d0
+  M1066a_V_vp_1066a(114) =   11.82d0
+  M1066a_V_vp_1066a(115) =   11.7554d0
+  M1066a_V_vp_1066a(116) =   11.6844d0
+  M1066a_V_vp_1066a(117) =   11.6079d0
+  M1066a_V_vp_1066a(118) =   11.5308d0
+  M1066a_V_vp_1066a(119) =   11.4579d0
+  M1066a_V_vp_1066a(120) =   11.3935d0
+  M1066a_V_vp_1066a(121) =   11.3418d0
+  M1066a_V_vp_1066a(122) =   11.3085d0
+  M1066a_V_vp_1066a(123) =   11.2938d0
+  M1066a_V_vp_1066a(124) =   11.2915d0
+  M1066a_V_vp_1066a(125) =   11.3049d0
+  M1066a_V_vp_1066a(126) =   11.3123d0
+  M1066a_V_vp_1066a(127) =   11.2643d0
+  M1066a_V_vp_1066a(128) =   11.1635d0
+  M1066a_V_vp_1066a(129) =   11.0063d0
+  M1066a_V_vp_1066a(130) =   10.7959d0
+  M1066a_V_vp_1066a(131) =   10.5143d0
+  M1066a_V_vp_1066a(132) =   10.5143d0
+  M1066a_V_vp_1066a(133) =   10.2513d0
+  M1066a_V_vp_1066a(134) =   10.0402d0
+  M1066a_V_vp_1066a(135) =   9.8648d0
+  M1066a_V_vp_1066a(136) =   9.7086d0
+  M1066a_V_vp_1066a(137) =   9.5681d0
+  M1066a_V_vp_1066a(138) =   9.4512d0
+  M1066a_V_vp_1066a(139) =   9.351d0
+  M1066a_V_vp_1066a(140) =   9.2283d0
+  M1066a_V_vp_1066a(141) =   9.2283d0
+  M1066a_V_vp_1066a(142) =   9.1087d0
+  M1066a_V_vp_1066a(143) =   8.9823d0
+  M1066a_V_vp_1066a(144) =   8.8592d0
+  M1066a_V_vp_1066a(145) =   8.7386d0
+  M1066a_V_vp_1066a(146) =   8.6193d0
+  M1066a_V_vp_1066a(147) =   8.5018d0
+  M1066a_V_vp_1066a(148) =   8.3871d0
+  M1066a_V_vp_1066a(149) =   8.2736d0
+  M1066a_V_vp_1066a(150) =   8.1585d0
+  M1066a_V_vp_1066a(151) =   8.054d0
+  M1066a_V_vp_1066a(152) =   7.9652d0
+  M1066a_V_vp_1066a(153) =   7.8734d0
+  M1066a_V_vp_1066a(154) =   7.7972d0
+  M1066a_V_vp_1066a(155) =   7.7391d0
+  M1066a_V_vp_1066a(156) =   7.7134d0
+  M1066a_V_vp_1066a(157) =   7.7046d0
+  M1066a_V_vp_1066a(158) =   4.7022d0
+  M1066a_V_vp_1066a(159) =   4.7001d0
+  M1066a_V_vp_1066a(160) =   4.6979d0
 
-  M1066a_V%vs_1066a(  1) =   3.62980000000000
-  M1066a_V%vs_1066a(  2) =   3.62970000000000
-  M1066a_V%vs_1066a(  3) =   3.62940000000000
-  M1066a_V%vs_1066a(  4) =   3.62880000000000
-  M1066a_V%vs_1066a(  5) =   3.62810000000000
-  M1066a_V%vs_1066a(  6) =   3.62710000000000
-  M1066a_V%vs_1066a(  7) =   3.62590000000000
-  M1066a_V%vs_1066a(  8) =   3.62440000000000
-  M1066a_V%vs_1066a(  9) =   3.62280000000000
-  M1066a_V%vs_1066a( 10) =   3.62090000000000
-  M1066a_V%vs_1066a( 11) =   3.61870000000000
-  M1066a_V%vs_1066a( 12) =   3.61630000000000
-  M1066a_V%vs_1066a( 13) =   3.61370000000000
-  M1066a_V%vs_1066a( 14) =   3.61080000000000
-  M1066a_V%vs_1066a( 15) =   3.60760000000000
-  M1066a_V%vs_1066a( 16) =   3.60420000000000
-  M1066a_V%vs_1066a( 17) =   3.60040000000000
-  M1066a_V%vs_1066a( 18) =   3.59650000000000
-  M1066a_V%vs_1066a( 19) =   3.59220000000000
-  M1066a_V%vs_1066a( 20) =   3.58760000000000
-  M1066a_V%vs_1066a( 21) =   3.58280000000000
-  M1066a_V%vs_1066a( 22) =   3.57770000000000
-  M1066a_V%vs_1066a( 23) =   3.57240000000000
-  M1066a_V%vs_1066a( 24) =   3.56680000000000
-  M1066a_V%vs_1066a( 25) =   3.56100000000000
-  M1066a_V%vs_1066a( 26) =   3.55510000000000
-  M1066a_V%vs_1066a( 27) =   3.54900000000000
-  M1066a_V%vs_1066a( 28) =   3.54280000000000
-  M1066a_V%vs_1066a( 29) =   3.53650000000000
-  M1066a_V%vs_1066a( 30) =   3.53010000000000
-  M1066a_V%vs_1066a( 31) =   3.52380000000000
-  M1066a_V%vs_1066a( 32) =   3.51720000000000
-  M1066a_V%vs_1066a( 33) =   3.51180000000000
-  M1066a_V%vs_1066a( 34) =  0.000000000000000
-  M1066a_V%vs_1066a( 35) =  0.000000000000000
-  M1066a_V%vs_1066a( 36) =  0.000000000000000
-  M1066a_V%vs_1066a( 37) =  0.000000000000000
-  M1066a_V%vs_1066a( 38) =  0.000000000000000
-  M1066a_V%vs_1066a( 39) =  0.000000000000000
-  M1066a_V%vs_1066a( 40) =  0.000000000000000
-  M1066a_V%vs_1066a( 41) =  0.000000000000000
-  M1066a_V%vs_1066a( 42) =  0.000000000000000
-  M1066a_V%vs_1066a( 43) =  0.000000000000000
-  M1066a_V%vs_1066a( 44) =  0.000000000000000
-  M1066a_V%vs_1066a( 45) =  0.000000000000000
-  M1066a_V%vs_1066a( 46) =  0.000000000000000
-  M1066a_V%vs_1066a( 47) =  0.000000000000000
-  M1066a_V%vs_1066a( 48) =  0.000000000000000
-  M1066a_V%vs_1066a( 49) =  0.000000000000000
-  M1066a_V%vs_1066a( 50) =  0.000000000000000
-  M1066a_V%vs_1066a( 51) =  0.000000000000000
-  M1066a_V%vs_1066a( 52) =  0.000000000000000
-  M1066a_V%vs_1066a( 53) =  0.000000000000000
-  M1066a_V%vs_1066a( 54) =  0.000000000000000
-  M1066a_V%vs_1066a( 55) =  0.000000000000000
-  M1066a_V%vs_1066a( 56) =  0.000000000000000
-  M1066a_V%vs_1066a( 57) =  0.000000000000000
-  M1066a_V%vs_1066a( 58) =  0.000000000000000
-  M1066a_V%vs_1066a( 59) =  0.000000000000000
-  M1066a_V%vs_1066a( 60) =  0.000000000000000
-  M1066a_V%vs_1066a( 61) =  0.000000000000000
-  M1066a_V%vs_1066a( 62) =  0.000000000000000
-  M1066a_V%vs_1066a( 63) =  0.000000000000000
-  M1066a_V%vs_1066a( 64) =  0.000000000000000
-  M1066a_V%vs_1066a( 65) =  0.000000000000000
-  M1066a_V%vs_1066a( 66) =  0.000000000000000
-  M1066a_V%vs_1066a( 67) =   7.24980000000000
-  M1066a_V%vs_1066a( 68) =   7.23760000000000
-  M1066a_V%vs_1066a( 69) =   7.22390000000000
-  M1066a_V%vs_1066a( 70) =   7.21000000000000
-  M1066a_V%vs_1066a( 71) =   7.19640000000000
-  M1066a_V%vs_1066a( 72) =   7.18300000000000
-  M1066a_V%vs_1066a( 73) =   7.16990000000000
-  M1066a_V%vs_1066a( 74) =   7.15710000000000
-  M1066a_V%vs_1066a( 75) =   7.14450000000000
-  M1066a_V%vs_1066a( 76) =   7.13200000000000
-  M1066a_V%vs_1066a( 77) =   7.11960000000000
-  M1066a_V%vs_1066a( 78) =   7.10740000000000
-  M1066a_V%vs_1066a( 79) =   7.09530000000000
-  M1066a_V%vs_1066a( 80) =   7.08320000000000
-  M1066a_V%vs_1066a( 81) =   7.07120000000000
-  M1066a_V%vs_1066a( 82) =   7.05920000000000
-  M1066a_V%vs_1066a( 83) =   7.04710000000000
-  M1066a_V%vs_1066a( 84) =   7.03470000000000
-  M1066a_V%vs_1066a( 85) =   7.02190000000000
-  M1066a_V%vs_1066a( 86) =   7.00860000000000
-  M1066a_V%vs_1066a( 87) =   6.99470000000000
-  M1066a_V%vs_1066a( 88) =   6.98030000000000
-  M1066a_V%vs_1066a( 89) =   6.96510000000000
-  M1066a_V%vs_1066a( 90) =   6.94930000000000
-  M1066a_V%vs_1066a( 91) =   6.93290000000000
-  M1066a_V%vs_1066a( 92) =   6.91620000000000
-  M1066a_V%vs_1066a( 93) =   6.89910000000000
-  M1066a_V%vs_1066a( 94) =   6.88200000000000
-  M1066a_V%vs_1066a( 95) =   6.86520000000000
-  M1066a_V%vs_1066a( 96) =   6.84900000000000
-  M1066a_V%vs_1066a( 97) =   6.83340000000000
-  M1066a_V%vs_1066a( 98) =   6.81820000000000
-  M1066a_V%vs_1066a( 99) =   6.80360000000000
-  M1066a_V%vs_1066a(100) =   6.78910000000000
-  M1066a_V%vs_1066a(101) =   6.77440000000000
-  M1066a_V%vs_1066a(102) =   6.75890000000000
-  M1066a_V%vs_1066a(103) =   6.74270000000000
-  M1066a_V%vs_1066a(104) =   6.72550000000000
-  M1066a_V%vs_1066a(105) =   6.70730000000000
-  M1066a_V%vs_1066a(106) =   6.68810000000000
-  M1066a_V%vs_1066a(107) =   6.66840000000000
-  M1066a_V%vs_1066a(108) =   6.64850000000000
-  M1066a_V%vs_1066a(109) =   6.62880000000000
-  M1066a_V%vs_1066a(110) =   6.60950000000000
-  M1066a_V%vs_1066a(111) =   6.59110000000000
-  M1066a_V%vs_1066a(112) =   6.57310000000000
-  M1066a_V%vs_1066a(113) =   6.55480000000000
-  M1066a_V%vs_1066a(114) =   6.53510000000000
-  M1066a_V%vs_1066a(115) =   6.51330000000000
-  M1066a_V%vs_1066a(116) =   6.48810000000000
-  M1066a_V%vs_1066a(117) =   6.45940000000000
-  M1066a_V%vs_1066a(118) =   6.42860000000000
-  M1066a_V%vs_1066a(119) =   6.39760000000000
-  M1066a_V%vs_1066a(120) =   6.36840000000000
-  M1066a_V%vs_1066a(121) =   6.34280000000000
-  M1066a_V%vs_1066a(122) =   6.32350000000000
-  M1066a_V%vs_1066a(123) =   6.31140000000000
-  M1066a_V%vs_1066a(124) =   6.30410000000000
-  M1066a_V%vs_1066a(125) =   6.30520000000000
-  M1066a_V%vs_1066a(126) =   6.30210000000000
-  M1066a_V%vs_1066a(127) =   6.26430000000000
-  M1066a_V%vs_1066a(128) =   6.19470000000000
-  M1066a_V%vs_1066a(129) =   6.09120000000000
-  M1066a_V%vs_1066a(130) =   5.95550000000000
-  M1066a_V%vs_1066a(131) =   5.77550000000000
-  M1066a_V%vs_1066a(132) =   5.77550000000000
-  M1066a_V%vs_1066a(133) =   5.60830000000000
-  M1066a_V%vs_1066a(134) =   5.47520000000000
-  M1066a_V%vs_1066a(135) =   5.36530000000000
-  M1066a_V%vs_1066a(136) =   5.26650000000000
-  M1066a_V%vs_1066a(137) =   5.17620000000000
-  M1066a_V%vs_1066a(138) =   5.09960000000000
-  M1066a_V%vs_1066a(139) =   5.03220000000000
-  M1066a_V%vs_1066a(140) =   4.94880000000000
-  M1066a_V%vs_1066a(141) =   4.94880000000000
-  M1066a_V%vs_1066a(142) =   4.86670000000000
-  M1066a_V%vs_1066a(143) =   4.78060000000000
-  M1066a_V%vs_1066a(144) =   4.69950000000000
-  M1066a_V%vs_1066a(145) =   4.62110000000000
-  M1066a_V%vs_1066a(146) =   4.54790000000000
-  M1066a_V%vs_1066a(147) =   4.48820000000000
-  M1066a_V%vs_1066a(148) =   4.44210000000000
-  M1066a_V%vs_1066a(149) =   4.40840000000000
-  M1066a_V%vs_1066a(150) =   4.38740000000000
-  M1066a_V%vs_1066a(151) =   4.37950000000000
-  M1066a_V%vs_1066a(152) =   4.39040000000000
-  M1066a_V%vs_1066a(153) =   4.43310000000000
-  M1066a_V%vs_1066a(154) =   4.48300000000000
-  M1066a_V%vs_1066a(155) =   4.53890000000000
-  M1066a_V%vs_1066a(156) =   4.60400000000000
-  M1066a_V%vs_1066a(157) =   4.64870000000000
-  M1066a_V%vs_1066a(158) =   2.58060000000000
-  M1066a_V%vs_1066a(159) =   2.58140000000000
-  M1066a_V%vs_1066a(160) =   2.58220000000000
+  M1066a_V_vs_1066a(  1) =   3.6298d0
+  M1066a_V_vs_1066a(  2) =   3.6297d0
+  M1066a_V_vs_1066a(  3) =   3.6294d0
+  M1066a_V_vs_1066a(  4) =   3.6288d0
+  M1066a_V_vs_1066a(  5) =   3.6281d0
+  M1066a_V_vs_1066a(  6) =   3.6271d0
+  M1066a_V_vs_1066a(  7) =   3.6259d0
+  M1066a_V_vs_1066a(  8) =   3.6244d0
+  M1066a_V_vs_1066a(  9) =   3.6228d0
+  M1066a_V_vs_1066a( 10) =   3.6209d0
+  M1066a_V_vs_1066a( 11) =   3.6187d0
+  M1066a_V_vs_1066a( 12) =   3.6163d0
+  M1066a_V_vs_1066a( 13) =   3.6137d0
+  M1066a_V_vs_1066a( 14) =   3.6108d0
+  M1066a_V_vs_1066a( 15) =   3.6076d0
+  M1066a_V_vs_1066a( 16) =   3.6042d0
+  M1066a_V_vs_1066a( 17) =   3.6004d0
+  M1066a_V_vs_1066a( 18) =   3.5965d0
+  M1066a_V_vs_1066a( 19) =   3.5922d0
+  M1066a_V_vs_1066a( 20) =   3.5876d0
+  M1066a_V_vs_1066a( 21) =   3.5828d0
+  M1066a_V_vs_1066a( 22) =   3.5777d0
+  M1066a_V_vs_1066a( 23) =   3.5724d0
+  M1066a_V_vs_1066a( 24) =   3.5668d0
+  M1066a_V_vs_1066a( 25) =   3.561d0
+  M1066a_V_vs_1066a( 26) =   3.5551d0
+  M1066a_V_vs_1066a( 27) =   3.549d0
+  M1066a_V_vs_1066a( 28) =   3.5428d0
+  M1066a_V_vs_1066a( 29) =   3.5365d0
+  M1066a_V_vs_1066a( 30) =   3.5301d0
+  M1066a_V_vs_1066a( 31) =   3.5238d0
+  M1066a_V_vs_1066a( 32) =   3.5172d0
+  M1066a_V_vs_1066a( 33) =   3.5118d0
+  M1066a_V_vs_1066a( 34) =  0.d0
+  M1066a_V_vs_1066a( 35) =  0.d0
+  M1066a_V_vs_1066a( 36) =  0.d0
+  M1066a_V_vs_1066a( 37) =  0.d0
+  M1066a_V_vs_1066a( 38) =  0.d0
+  M1066a_V_vs_1066a( 39) =  0.d0
+  M1066a_V_vs_1066a( 40) =  0.d0
+  M1066a_V_vs_1066a( 41) =  0.d0
+  M1066a_V_vs_1066a( 42) =  0.d0
+  M1066a_V_vs_1066a( 43) =  0.d0
+  M1066a_V_vs_1066a( 44) =  0.d0
+  M1066a_V_vs_1066a( 45) =  0.d0
+  M1066a_V_vs_1066a( 46) =  0.d0
+  M1066a_V_vs_1066a( 47) =  0.d0
+  M1066a_V_vs_1066a( 48) =  0.d0
+  M1066a_V_vs_1066a( 49) =  0.d0
+  M1066a_V_vs_1066a( 50) =  0.d0
+  M1066a_V_vs_1066a( 51) =  0.d0
+  M1066a_V_vs_1066a( 52) =  0.d0
+  M1066a_V_vs_1066a( 53) =  0.d0
+  M1066a_V_vs_1066a( 54) =  0.d0
+  M1066a_V_vs_1066a( 55) =  0.d0
+  M1066a_V_vs_1066a( 56) =  0.d0
+  M1066a_V_vs_1066a( 57) =  0.d0
+  M1066a_V_vs_1066a( 58) =  0.d0
+  M1066a_V_vs_1066a( 59) =  0.d0
+  M1066a_V_vs_1066a( 60) =  0.d0
+  M1066a_V_vs_1066a( 61) =  0.d0
+  M1066a_V_vs_1066a( 62) =  0.d0
+  M1066a_V_vs_1066a( 63) =  0.d0
+  M1066a_V_vs_1066a( 64) =  0.d0
+  M1066a_V_vs_1066a( 65) =  0.d0
+  M1066a_V_vs_1066a( 66) =  0.d0
+  M1066a_V_vs_1066a( 67) =   7.2498d0
+  M1066a_V_vs_1066a( 68) =   7.2376d0
+  M1066a_V_vs_1066a( 69) =   7.2239d0
+  M1066a_V_vs_1066a( 70) =   7.21d0
+  M1066a_V_vs_1066a( 71) =   7.1964d0
+  M1066a_V_vs_1066a( 72) =   7.183d0
+  M1066a_V_vs_1066a( 73) =   7.1699d0
+  M1066a_V_vs_1066a( 74) =   7.1571d0
+  M1066a_V_vs_1066a( 75) =   7.1445d0
+  M1066a_V_vs_1066a( 76) =   7.132d0
+  M1066a_V_vs_1066a( 77) =   7.1196d0
+  M1066a_V_vs_1066a( 78) =   7.1074d0
+  M1066a_V_vs_1066a( 79) =   7.0953d0
+  M1066a_V_vs_1066a( 80) =   7.0832d0
+  M1066a_V_vs_1066a( 81) =   7.0712d0
+  M1066a_V_vs_1066a( 82) =   7.0592d0
+  M1066a_V_vs_1066a( 83) =   7.0471d0
+  M1066a_V_vs_1066a( 84) =   7.0347d0
+  M1066a_V_vs_1066a( 85) =   7.0219d0
+  M1066a_V_vs_1066a( 86) =   7.0086d0
+  M1066a_V_vs_1066a( 87) =   6.9947d0
+  M1066a_V_vs_1066a( 88) =   6.9803d0
+  M1066a_V_vs_1066a( 89) =   6.9651d0
+  M1066a_V_vs_1066a( 90) =   6.9493d0
+  M1066a_V_vs_1066a( 91) =   6.9329d0
+  M1066a_V_vs_1066a( 92) =   6.9162d0
+  M1066a_V_vs_1066a( 93) =   6.8991d0
+  M1066a_V_vs_1066a( 94) =   6.882d0
+  M1066a_V_vs_1066a( 95) =   6.8652d0
+  M1066a_V_vs_1066a( 96) =   6.849d0
+  M1066a_V_vs_1066a( 97) =   6.8334d0
+  M1066a_V_vs_1066a( 98) =   6.8182d0
+  M1066a_V_vs_1066a( 99) =   6.8036d0
+  M1066a_V_vs_1066a(100) =   6.7891d0
+  M1066a_V_vs_1066a(101) =   6.7744d0
+  M1066a_V_vs_1066a(102) =   6.7589d0
+  M1066a_V_vs_1066a(103) =   6.7427d0
+  M1066a_V_vs_1066a(104) =   6.7255d0
+  M1066a_V_vs_1066a(105) =   6.7073d0
+  M1066a_V_vs_1066a(106) =   6.6881d0
+  M1066a_V_vs_1066a(107) =   6.6684d0
+  M1066a_V_vs_1066a(108) =   6.6485d0
+  M1066a_V_vs_1066a(109) =   6.6288d0
+  M1066a_V_vs_1066a(110) =   6.6095d0
+  M1066a_V_vs_1066a(111) =   6.5911d0
+  M1066a_V_vs_1066a(112) =   6.5731d0
+  M1066a_V_vs_1066a(113) =   6.5548d0
+  M1066a_V_vs_1066a(114) =   6.5351d0
+  M1066a_V_vs_1066a(115) =   6.5133d0
+  M1066a_V_vs_1066a(116) =   6.4881d0
+  M1066a_V_vs_1066a(117) =   6.4594d0
+  M1066a_V_vs_1066a(118) =   6.4286d0
+  M1066a_V_vs_1066a(119) =   6.3976d0
+  M1066a_V_vs_1066a(120) =   6.3684d0
+  M1066a_V_vs_1066a(121) =   6.3428d0
+  M1066a_V_vs_1066a(122) =   6.3235d0
+  M1066a_V_vs_1066a(123) =   6.3114d0
+  M1066a_V_vs_1066a(124) =   6.3041d0
+  M1066a_V_vs_1066a(125) =   6.3052d0
+  M1066a_V_vs_1066a(126) =   6.3021d0
+  M1066a_V_vs_1066a(127) =   6.2643d0
+  M1066a_V_vs_1066a(128) =   6.1947d0
+  M1066a_V_vs_1066a(129) =   6.0912d0
+  M1066a_V_vs_1066a(130) =   5.9555d0
+  M1066a_V_vs_1066a(131) =   5.7755d0
+  M1066a_V_vs_1066a(132) =   5.7755d0
+  M1066a_V_vs_1066a(133) =   5.6083d0
+  M1066a_V_vs_1066a(134) =   5.4752d0
+  M1066a_V_vs_1066a(135) =   5.3653d0
+  M1066a_V_vs_1066a(136) =   5.2665d0
+  M1066a_V_vs_1066a(137) =   5.1762d0
+  M1066a_V_vs_1066a(138) =   5.0996d0
+  M1066a_V_vs_1066a(139) =   5.0322d0
+  M1066a_V_vs_1066a(140) =   4.9488d0
+  M1066a_V_vs_1066a(141) =   4.9488d0
+  M1066a_V_vs_1066a(142) =   4.8667d0
+  M1066a_V_vs_1066a(143) =   4.7806d0
+  M1066a_V_vs_1066a(144) =   4.6995d0
+  M1066a_V_vs_1066a(145) =   4.6211d0
+  M1066a_V_vs_1066a(146) =   4.5479d0
+  M1066a_V_vs_1066a(147) =   4.4882d0
+  M1066a_V_vs_1066a(148) =   4.4421d0
+  M1066a_V_vs_1066a(149) =   4.4084d0
+  M1066a_V_vs_1066a(150) =   4.3874d0
+  M1066a_V_vs_1066a(151) =   4.3795d0
+  M1066a_V_vs_1066a(152) =   4.3904d0
+  M1066a_V_vs_1066a(153) =   4.4331d0
+  M1066a_V_vs_1066a(154) =   4.483d0
+  M1066a_V_vs_1066a(155) =   4.5389d0
+  M1066a_V_vs_1066a(156) =   4.604d0
+  M1066a_V_vs_1066a(157) =   4.6487d0
+  M1066a_V_vs_1066a(158) =   2.5806d0
+  M1066a_V_vs_1066a(159) =   2.5814d0
+  M1066a_V_vs_1066a(160) =   2.5822d0
 
   if (SUPPRESS_CRUSTAL_MESH) then
-    M1066a_V%vp_1066a(158:160) = M1066a_V%vp_1066a(157)
-    M1066a_V%vs_1066a(158:160) = M1066a_V%vs_1066a(157)
-    M1066a_V%density_1066a(158:160) = M1066a_V%density_1066a(157)
+    M1066a_V_vp_1066a(158:160) = M1066a_V_vp_1066a(157)
+    M1066a_V_vs_1066a(158:160) = M1066a_V_vs_1066a(157)
+    M1066a_V_density_1066a(158:160) = M1066a_V_density_1066a(157)
   endif
 
-  M1066a_V%Qkappa_1066a(  1) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  2) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  3) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  4) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  5) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  6) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  7) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  8) =   156900.000000000
-  M1066a_V%Qkappa_1066a(  9) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 10) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 11) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 12) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 13) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 14) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 15) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 16) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 17) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 18) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 19) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 20) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 21) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 22) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 23) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 24) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 25) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 26) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 27) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 28) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 29) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 30) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 31) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 32) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 33) =   156900.000000000
-  M1066a_V%Qkappa_1066a( 34) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 35) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 36) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 37) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 38) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 39) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 40) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 41) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 42) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 43) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 44) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 45) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 46) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 47) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 48) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 49) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 50) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 51) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 52) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 53) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 54) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 55) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 56) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 57) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 58) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 59) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 60) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 61) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 62) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 63) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 64) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 65) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 66) =  0.000000000000000
-  M1066a_V%Qkappa_1066a( 67) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 68) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 69) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 70) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 71) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 72) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 73) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 74) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 75) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 76) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 77) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 78) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 79) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 80) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 81) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 82) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 83) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 84) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 85) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 86) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 87) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 88) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 89) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 90) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 91) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 92) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 93) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 94) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 95) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 96) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 97) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 98) =   16600.0000000000
-  M1066a_V%Qkappa_1066a( 99) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(100) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(101) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(102) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(103) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(104) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(105) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(106) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(107) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(108) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(109) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(110) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(111) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(112) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(113) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(114) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(115) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(116) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(117) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(118) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(119) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(120) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(121) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(122) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(123) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(124) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(125) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(126) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(127) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(128) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(129) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(130) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(131) =   16600.0000000000
-  M1066a_V%Qkappa_1066a(132) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(133) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(134) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(135) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(136) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(137) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(138) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(139) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(140) =   13840.0000000000
-  M1066a_V%Qkappa_1066a(141) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(142) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(143) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(144) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(145) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(146) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(147) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(148) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(149) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(150) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(151) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(152) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(153) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(154) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(155) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(156) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(157) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(158) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(159) =   5893.00000000000
-  M1066a_V%Qkappa_1066a(160) =   5893.00000000000
+  M1066a_V_Qkappa_1066a(  1) =   156900.d0
+  M1066a_V_Qkappa_1066a(  2) =   156900.d0
+  M1066a_V_Qkappa_1066a(  3) =   156900.d0
+  M1066a_V_Qkappa_1066a(  4) =   156900.d0
+  M1066a_V_Qkappa_1066a(  5) =   156900.d0
+  M1066a_V_Qkappa_1066a(  6) =   156900.d0
+  M1066a_V_Qkappa_1066a(  7) =   156900.d0
+  M1066a_V_Qkappa_1066a(  8) =   156900.d0
+  M1066a_V_Qkappa_1066a(  9) =   156900.d0
+  M1066a_V_Qkappa_1066a( 10) =   156900.d0
+  M1066a_V_Qkappa_1066a( 11) =   156900.d0
+  M1066a_V_Qkappa_1066a( 12) =   156900.d0
+  M1066a_V_Qkappa_1066a( 13) =   156900.d0
+  M1066a_V_Qkappa_1066a( 14) =   156900.d0
+  M1066a_V_Qkappa_1066a( 15) =   156900.d0
+  M1066a_V_Qkappa_1066a( 16) =   156900.d0
+  M1066a_V_Qkappa_1066a( 17) =   156900.d0
+  M1066a_V_Qkappa_1066a( 18) =   156900.d0
+  M1066a_V_Qkappa_1066a( 19) =   156900.d0
+  M1066a_V_Qkappa_1066a( 20) =   156900.d0
+  M1066a_V_Qkappa_1066a( 21) =   156900.d0
+  M1066a_V_Qkappa_1066a( 22) =   156900.d0
+  M1066a_V_Qkappa_1066a( 23) =   156900.d0
+  M1066a_V_Qkappa_1066a( 24) =   156900.d0
+  M1066a_V_Qkappa_1066a( 25) =   156900.d0
+  M1066a_V_Qkappa_1066a( 26) =   156900.d0
+  M1066a_V_Qkappa_1066a( 27) =   156900.d0
+  M1066a_V_Qkappa_1066a( 28) =   156900.d0
+  M1066a_V_Qkappa_1066a( 29) =   156900.d0
+  M1066a_V_Qkappa_1066a( 30) =   156900.d0
+  M1066a_V_Qkappa_1066a( 31) =   156900.d0
+  M1066a_V_Qkappa_1066a( 32) =   156900.d0
+  M1066a_V_Qkappa_1066a( 33) =   156900.d0
+  M1066a_V_Qkappa_1066a( 34) =  0.d0
+  M1066a_V_Qkappa_1066a( 35) =  0.d0
+  M1066a_V_Qkappa_1066a( 36) =  0.d0
+  M1066a_V_Qkappa_1066a( 37) =  0.d0
+  M1066a_V_Qkappa_1066a( 38) =  0.d0
+  M1066a_V_Qkappa_1066a( 39) =  0.d0
+  M1066a_V_Qkappa_1066a( 40) =  0.d0
+  M1066a_V_Qkappa_1066a( 41) =  0.d0
+  M1066a_V_Qkappa_1066a( 42) =  0.d0
+  M1066a_V_Qkappa_1066a( 43) =  0.d0
+  M1066a_V_Qkappa_1066a( 44) =  0.d0
+  M1066a_V_Qkappa_1066a( 45) =  0.d0
+  M1066a_V_Qkappa_1066a( 46) =  0.d0
+  M1066a_V_Qkappa_1066a( 47) =  0.d0
+  M1066a_V_Qkappa_1066a( 48) =  0.d0
+  M1066a_V_Qkappa_1066a( 49) =  0.d0
+  M1066a_V_Qkappa_1066a( 50) =  0.d0
+  M1066a_V_Qkappa_1066a( 51) =  0.d0
+  M1066a_V_Qkappa_1066a( 52) =  0.d0
+  M1066a_V_Qkappa_1066a( 53) =  0.d0
+  M1066a_V_Qkappa_1066a( 54) =  0.d0
+  M1066a_V_Qkappa_1066a( 55) =  0.d0
+  M1066a_V_Qkappa_1066a( 56) =  0.d0
+  M1066a_V_Qkappa_1066a( 57) =  0.d0
+  M1066a_V_Qkappa_1066a( 58) =  0.d0
+  M1066a_V_Qkappa_1066a( 59) =  0.d0
+  M1066a_V_Qkappa_1066a( 60) =  0.d0
+  M1066a_V_Qkappa_1066a( 61) =  0.d0
+  M1066a_V_Qkappa_1066a( 62) =  0.d0
+  M1066a_V_Qkappa_1066a( 63) =  0.d0
+  M1066a_V_Qkappa_1066a( 64) =  0.d0
+  M1066a_V_Qkappa_1066a( 65) =  0.d0
+  M1066a_V_Qkappa_1066a( 66) =  0.d0
+  M1066a_V_Qkappa_1066a( 67) =   16600.d0
+  M1066a_V_Qkappa_1066a( 68) =   16600.d0
+  M1066a_V_Qkappa_1066a( 69) =   16600.d0
+  M1066a_V_Qkappa_1066a( 70) =   16600.d0
+  M1066a_V_Qkappa_1066a( 71) =   16600.d0
+  M1066a_V_Qkappa_1066a( 72) =   16600.d0
+  M1066a_V_Qkappa_1066a( 73) =   16600.d0
+  M1066a_V_Qkappa_1066a( 74) =   16600.d0
+  M1066a_V_Qkappa_1066a( 75) =   16600.d0
+  M1066a_V_Qkappa_1066a( 76) =   16600.d0
+  M1066a_V_Qkappa_1066a( 77) =   16600.d0
+  M1066a_V_Qkappa_1066a( 78) =   16600.d0
+  M1066a_V_Qkappa_1066a( 79) =   16600.d0
+  M1066a_V_Qkappa_1066a( 80) =   16600.d0
+  M1066a_V_Qkappa_1066a( 81) =   16600.d0
+  M1066a_V_Qkappa_1066a( 82) =   16600.d0
+  M1066a_V_Qkappa_1066a( 83) =   16600.d0
+  M1066a_V_Qkappa_1066a( 84) =   16600.d0
+  M1066a_V_Qkappa_1066a( 85) =   16600.d0
+  M1066a_V_Qkappa_1066a( 86) =   16600.d0
+  M1066a_V_Qkappa_1066a( 87) =   16600.d0
+  M1066a_V_Qkappa_1066a( 88) =   16600.d0
+  M1066a_V_Qkappa_1066a( 89) =   16600.d0
+  M1066a_V_Qkappa_1066a( 90) =   16600.d0
+  M1066a_V_Qkappa_1066a( 91) =   16600.d0
+  M1066a_V_Qkappa_1066a( 92) =   16600.d0
+  M1066a_V_Qkappa_1066a( 93) =   16600.d0
+  M1066a_V_Qkappa_1066a( 94) =   16600.d0
+  M1066a_V_Qkappa_1066a( 95) =   16600.d0
+  M1066a_V_Qkappa_1066a( 96) =   16600.d0
+  M1066a_V_Qkappa_1066a( 97) =   16600.d0
+  M1066a_V_Qkappa_1066a( 98) =   16600.d0
+  M1066a_V_Qkappa_1066a( 99) =   16600.d0
+  M1066a_V_Qkappa_1066a(100) =   16600.d0
+  M1066a_V_Qkappa_1066a(101) =   16600.d0
+  M1066a_V_Qkappa_1066a(102) =   16600.d0
+  M1066a_V_Qkappa_1066a(103) =   16600.d0
+  M1066a_V_Qkappa_1066a(104) =   16600.d0
+  M1066a_V_Qkappa_1066a(105) =   16600.d0
+  M1066a_V_Qkappa_1066a(106) =   16600.d0
+  M1066a_V_Qkappa_1066a(107) =   16600.d0
+  M1066a_V_Qkappa_1066a(108) =   16600.d0
+  M1066a_V_Qkappa_1066a(109) =   16600.d0
+  M1066a_V_Qkappa_1066a(110) =   16600.d0
+  M1066a_V_Qkappa_1066a(111) =   16600.d0
+  M1066a_V_Qkappa_1066a(112) =   16600.d0
+  M1066a_V_Qkappa_1066a(113) =   16600.d0
+  M1066a_V_Qkappa_1066a(114) =   16600.d0
+  M1066a_V_Qkappa_1066a(115) =   16600.d0
+  M1066a_V_Qkappa_1066a(116) =   16600.d0
+  M1066a_V_Qkappa_1066a(117) =   16600.d0
+  M1066a_V_Qkappa_1066a(118) =   16600.d0
+  M1066a_V_Qkappa_1066a(119) =   16600.d0
+  M1066a_V_Qkappa_1066a(120) =   16600.d0
+  M1066a_V_Qkappa_1066a(121) =   16600.d0
+  M1066a_V_Qkappa_1066a(122) =   16600.d0
+  M1066a_V_Qkappa_1066a(123) =   16600.d0
+  M1066a_V_Qkappa_1066a(124) =   16600.d0
+  M1066a_V_Qkappa_1066a(125) =   16600.d0
+  M1066a_V_Qkappa_1066a(126) =   16600.d0
+  M1066a_V_Qkappa_1066a(127) =   16600.d0
+  M1066a_V_Qkappa_1066a(128) =   16600.d0
+  M1066a_V_Qkappa_1066a(129) =   16600.d0
+  M1066a_V_Qkappa_1066a(130) =   16600.d0
+  M1066a_V_Qkappa_1066a(131) =   16600.d0
+  M1066a_V_Qkappa_1066a(132) =   13840.d0
+  M1066a_V_Qkappa_1066a(133) =   13840.d0
+  M1066a_V_Qkappa_1066a(134) =   13840.d0
+  M1066a_V_Qkappa_1066a(135) =   13840.d0
+  M1066a_V_Qkappa_1066a(136) =   13840.d0
+  M1066a_V_Qkappa_1066a(137) =   13840.d0
+  M1066a_V_Qkappa_1066a(138) =   13840.d0
+  M1066a_V_Qkappa_1066a(139) =   13840.d0
+  M1066a_V_Qkappa_1066a(140) =   13840.d0
+  M1066a_V_Qkappa_1066a(141) =   5893.d0
+  M1066a_V_Qkappa_1066a(142) =   5893.d0
+  M1066a_V_Qkappa_1066a(143) =   5893.d0
+  M1066a_V_Qkappa_1066a(144) =   5893.d0
+  M1066a_V_Qkappa_1066a(145) =   5893.d0
+  M1066a_V_Qkappa_1066a(146) =   5893.d0
+  M1066a_V_Qkappa_1066a(147) =   5893.d0
+  M1066a_V_Qkappa_1066a(148) =   5893.d0
+  M1066a_V_Qkappa_1066a(149) =   5893.d0
+  M1066a_V_Qkappa_1066a(150) =   5893.d0
+  M1066a_V_Qkappa_1066a(151) =   5893.d0
+  M1066a_V_Qkappa_1066a(152) =   5893.d0
+  M1066a_V_Qkappa_1066a(153) =   5893.d0
+  M1066a_V_Qkappa_1066a(154) =   5893.d0
+  M1066a_V_Qkappa_1066a(155) =   5893.d0
+  M1066a_V_Qkappa_1066a(156) =   5893.d0
+  M1066a_V_Qkappa_1066a(157) =   5893.d0
+  M1066a_V_Qkappa_1066a(158) =   5893.d0
+  M1066a_V_Qkappa_1066a(159) =   5893.d0
+  M1066a_V_Qkappa_1066a(160) =   5893.d0
 
-  M1066a_V%Qmu_1066a(  1) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  2) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  3) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  4) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  5) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  6) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  7) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  8) =   3138.00000000000
-  M1066a_V%Qmu_1066a(  9) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 10) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 11) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 12) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 13) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 14) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 15) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 16) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 17) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 18) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 19) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 20) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 21) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 22) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 23) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 24) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 25) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 26) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 27) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 28) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 29) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 30) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 31) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 32) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 33) =   3138.00000000000
-  M1066a_V%Qmu_1066a( 34) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 35) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 36) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 37) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 38) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 39) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 40) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 41) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 42) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 43) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 44) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 45) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 46) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 47) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 48) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 49) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 50) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 51) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 52) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 53) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 54) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 55) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 56) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 57) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 58) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 59) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 60) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 61) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 62) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 63) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 64) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 65) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 66) =  0.000000000000000
-  M1066a_V%Qmu_1066a( 67) =   332.000000000000
-  M1066a_V%Qmu_1066a( 68) =   332.000000000000
-  M1066a_V%Qmu_1066a( 69) =   332.000000000000
-  M1066a_V%Qmu_1066a( 70) =   332.000000000000
-  M1066a_V%Qmu_1066a( 71) =   332.000000000000
-  M1066a_V%Qmu_1066a( 72) =   332.000000000000
-  M1066a_V%Qmu_1066a( 73) =   332.000000000000
-  M1066a_V%Qmu_1066a( 74) =   332.000000000000
-  M1066a_V%Qmu_1066a( 75) =   332.000000000000
-  M1066a_V%Qmu_1066a( 76) =   332.000000000000
-  M1066a_V%Qmu_1066a( 77) =   332.000000000000
-  M1066a_V%Qmu_1066a( 78) =   332.000000000000
-  M1066a_V%Qmu_1066a( 79) =   332.000000000000
-  M1066a_V%Qmu_1066a( 80) =   332.000000000000
-  M1066a_V%Qmu_1066a( 81) =   332.000000000000
-  M1066a_V%Qmu_1066a( 82) =   332.000000000000
-  M1066a_V%Qmu_1066a( 83) =   332.000000000000
-  M1066a_V%Qmu_1066a( 84) =   332.000000000000
-  M1066a_V%Qmu_1066a( 85) =   332.000000000000
-  M1066a_V%Qmu_1066a( 86) =   332.000000000000
-  M1066a_V%Qmu_1066a( 87) =   332.000000000000
-  M1066a_V%Qmu_1066a( 88) =   332.000000000000
-  M1066a_V%Qmu_1066a( 89) =   332.000000000000
-  M1066a_V%Qmu_1066a( 90) =   332.000000000000
-  M1066a_V%Qmu_1066a( 91) =   332.000000000000
-  M1066a_V%Qmu_1066a( 92) =   332.000000000000
-  M1066a_V%Qmu_1066a( 93) =   332.000000000000
-  M1066a_V%Qmu_1066a( 94) =   332.000000000000
-  M1066a_V%Qmu_1066a( 95) =   332.000000000000
-  M1066a_V%Qmu_1066a( 96) =   332.000000000000
-  M1066a_V%Qmu_1066a( 97) =   332.000000000000
-  M1066a_V%Qmu_1066a( 98) =   332.000000000000
-  M1066a_V%Qmu_1066a( 99) =   332.000000000000
-  M1066a_V%Qmu_1066a(100) =   332.000000000000
-  M1066a_V%Qmu_1066a(101) =   332.000000000000
-  M1066a_V%Qmu_1066a(102) =   332.000000000000
-  M1066a_V%Qmu_1066a(103) =   332.000000000000
-  M1066a_V%Qmu_1066a(104) =   332.000000000000
-  M1066a_V%Qmu_1066a(105) =   332.000000000000
-  M1066a_V%Qmu_1066a(106) =   332.000000000000
-  M1066a_V%Qmu_1066a(107) =   332.000000000000
-  M1066a_V%Qmu_1066a(108) =   332.000000000000
-  M1066a_V%Qmu_1066a(109) =   332.000000000000
-  M1066a_V%Qmu_1066a(110) =   332.000000000000
-  M1066a_V%Qmu_1066a(111) =   332.000000000000
-  M1066a_V%Qmu_1066a(112) =   332.000000000000
-  M1066a_V%Qmu_1066a(113) =   332.000000000000
-  M1066a_V%Qmu_1066a(114) =   332.000000000000
-  M1066a_V%Qmu_1066a(115) =   332.000000000000
-  M1066a_V%Qmu_1066a(116) =   332.000000000000
-  M1066a_V%Qmu_1066a(117) =   332.000000000000
-  M1066a_V%Qmu_1066a(118) =   332.000000000000
-  M1066a_V%Qmu_1066a(119) =   332.000000000000
-  M1066a_V%Qmu_1066a(120) =   332.000000000000
-  M1066a_V%Qmu_1066a(121) =   332.000000000000
-  M1066a_V%Qmu_1066a(122) =   332.000000000000
-  M1066a_V%Qmu_1066a(123) =   332.000000000000
-  M1066a_V%Qmu_1066a(124) =   332.000000000000
-  M1066a_V%Qmu_1066a(125) =   332.000000000000
-  M1066a_V%Qmu_1066a(126) =   332.000000000000
-  M1066a_V%Qmu_1066a(127) =   332.000000000000
-  M1066a_V%Qmu_1066a(128) =   332.000000000000
-  M1066a_V%Qmu_1066a(129) =   332.000000000000
-  M1066a_V%Qmu_1066a(130) =   332.000000000000
-  M1066a_V%Qmu_1066a(131) =   332.000000000000
-  M1066a_V%Qmu_1066a(132) =   276.800000000000
-  M1066a_V%Qmu_1066a(133) =   276.800000000000
-  M1066a_V%Qmu_1066a(134) =   276.800000000000
-  M1066a_V%Qmu_1066a(135) =   276.800000000000
-  M1066a_V%Qmu_1066a(136) =   276.800000000000
-  M1066a_V%Qmu_1066a(137) =   276.800000000000
-  M1066a_V%Qmu_1066a(138) =   276.800000000000
-  M1066a_V%Qmu_1066a(139) =   276.800000000000
-  M1066a_V%Qmu_1066a(140) =   276.800000000000
-  M1066a_V%Qmu_1066a(141) =   117.900000000000
-  M1066a_V%Qmu_1066a(142) =   117.900000000000
-  M1066a_V%Qmu_1066a(143) =   117.900000000000
-  M1066a_V%Qmu_1066a(144) =   117.900000000000
-  M1066a_V%Qmu_1066a(145) =   117.900000000000
-  M1066a_V%Qmu_1066a(146) =   117.900000000000
-  M1066a_V%Qmu_1066a(147) =   117.900000000000
-  M1066a_V%Qmu_1066a(148) =   117.900000000000
-  M1066a_V%Qmu_1066a(149) =   117.900000000000
-  M1066a_V%Qmu_1066a(150) =   117.900000000000
-  M1066a_V%Qmu_1066a(151) =   117.900000000000
-  M1066a_V%Qmu_1066a(152) =   117.900000000000
-  M1066a_V%Qmu_1066a(153) =   117.900000000000
-  M1066a_V%Qmu_1066a(154) =   117.900000000000
-  M1066a_V%Qmu_1066a(155) =   117.900000000000
-  M1066a_V%Qmu_1066a(156) =   117.900000000000
-  M1066a_V%Qmu_1066a(157) =   117.900000000000
-  M1066a_V%Qmu_1066a(158) =   117.900000000000
-  M1066a_V%Qmu_1066a(159) =   117.900000000000
-  M1066a_V%Qmu_1066a(160) =   117.900000000000
+  M1066a_V_Qmu_1066a(  1) =   3138.d0
+  M1066a_V_Qmu_1066a(  2) =   3138.d0
+  M1066a_V_Qmu_1066a(  3) =   3138.d0
+  M1066a_V_Qmu_1066a(  4) =   3138.d0
+  M1066a_V_Qmu_1066a(  5) =   3138.d0
+  M1066a_V_Qmu_1066a(  6) =   3138.d0
+  M1066a_V_Qmu_1066a(  7) =   3138.d0
+  M1066a_V_Qmu_1066a(  8) =   3138.d0
+  M1066a_V_Qmu_1066a(  9) =   3138.d0
+  M1066a_V_Qmu_1066a( 10) =   3138.d0
+  M1066a_V_Qmu_1066a( 11) =   3138.d0
+  M1066a_V_Qmu_1066a( 12) =   3138.d0
+  M1066a_V_Qmu_1066a( 13) =   3138.d0
+  M1066a_V_Qmu_1066a( 14) =   3138.d0
+  M1066a_V_Qmu_1066a( 15) =   3138.d0
+  M1066a_V_Qmu_1066a( 16) =   3138.d0
+  M1066a_V_Qmu_1066a( 17) =   3138.d0
+  M1066a_V_Qmu_1066a( 18) =   3138.d0
+  M1066a_V_Qmu_1066a( 19) =   3138.d0
+  M1066a_V_Qmu_1066a( 20) =   3138.d0
+  M1066a_V_Qmu_1066a( 21) =   3138.d0
+  M1066a_V_Qmu_1066a( 22) =   3138.d0
+  M1066a_V_Qmu_1066a( 23) =   3138.d0
+  M1066a_V_Qmu_1066a( 24) =   3138.d0
+  M1066a_V_Qmu_1066a( 25) =   3138.d0
+  M1066a_V_Qmu_1066a( 26) =   3138.d0
+  M1066a_V_Qmu_1066a( 27) =   3138.d0
+  M1066a_V_Qmu_1066a( 28) =   3138.d0
+  M1066a_V_Qmu_1066a( 29) =   3138.d0
+  M1066a_V_Qmu_1066a( 30) =   3138.d0
+  M1066a_V_Qmu_1066a( 31) =   3138.d0
+  M1066a_V_Qmu_1066a( 32) =   3138.d0
+  M1066a_V_Qmu_1066a( 33) =   3138.d0
+  M1066a_V_Qmu_1066a( 34) =  0.d0
+  M1066a_V_Qmu_1066a( 35) =  0.d0
+  M1066a_V_Qmu_1066a( 36) =  0.d0
+  M1066a_V_Qmu_1066a( 37) =  0.d0
+  M1066a_V_Qmu_1066a( 38) =  0.d0
+  M1066a_V_Qmu_1066a( 39) =  0.d0
+  M1066a_V_Qmu_1066a( 40) =  0.d0
+  M1066a_V_Qmu_1066a( 41) =  0.d0
+  M1066a_V_Qmu_1066a( 42) =  0.d0
+  M1066a_V_Qmu_1066a( 43) =  0.d0
+  M1066a_V_Qmu_1066a( 44) =  0.d0
+  M1066a_V_Qmu_1066a( 45) =  0.d0
+  M1066a_V_Qmu_1066a( 46) =  0.d0
+  M1066a_V_Qmu_1066a( 47) =  0.d0
+  M1066a_V_Qmu_1066a( 48) =  0.d0
+  M1066a_V_Qmu_1066a( 49) =  0.d0
+  M1066a_V_Qmu_1066a( 50) =  0.d0
+  M1066a_V_Qmu_1066a( 51) =  0.d0
+  M1066a_V_Qmu_1066a( 52) =  0.d0
+  M1066a_V_Qmu_1066a( 53) =  0.d0
+  M1066a_V_Qmu_1066a( 54) =  0.d0
+  M1066a_V_Qmu_1066a( 55) =  0.d0
+  M1066a_V_Qmu_1066a( 56) =  0.d0
+  M1066a_V_Qmu_1066a( 57) =  0.d0
+  M1066a_V_Qmu_1066a( 58) =  0.d0
+  M1066a_V_Qmu_1066a( 59) =  0.d0
+  M1066a_V_Qmu_1066a( 60) =  0.d0
+  M1066a_V_Qmu_1066a( 61) =  0.d0
+  M1066a_V_Qmu_1066a( 62) =  0.d0
+  M1066a_V_Qmu_1066a( 63) =  0.d0
+  M1066a_V_Qmu_1066a( 64) =  0.d0
+  M1066a_V_Qmu_1066a( 65) =  0.d0
+  M1066a_V_Qmu_1066a( 66) =  0.d0
+  M1066a_V_Qmu_1066a( 67) =   332.d0
+  M1066a_V_Qmu_1066a( 68) =   332.d0
+  M1066a_V_Qmu_1066a( 69) =   332.d0
+  M1066a_V_Qmu_1066a( 70) =   332.d0
+  M1066a_V_Qmu_1066a( 71) =   332.d0
+  M1066a_V_Qmu_1066a( 72) =   332.d0
+  M1066a_V_Qmu_1066a( 73) =   332.d0
+  M1066a_V_Qmu_1066a( 74) =   332.d0
+  M1066a_V_Qmu_1066a( 75) =   332.d0
+  M1066a_V_Qmu_1066a( 76) =   332.d0
+  M1066a_V_Qmu_1066a( 77) =   332.d0
+  M1066a_V_Qmu_1066a( 78) =   332.d0
+  M1066a_V_Qmu_1066a( 79) =   332.d0
+  M1066a_V_Qmu_1066a( 80) =   332.d0
+  M1066a_V_Qmu_1066a( 81) =   332.d0
+  M1066a_V_Qmu_1066a( 82) =   332.d0
+  M1066a_V_Qmu_1066a( 83) =   332.d0
+  M1066a_V_Qmu_1066a( 84) =   332.d0
+  M1066a_V_Qmu_1066a( 85) =   332.d0
+  M1066a_V_Qmu_1066a( 86) =   332.d0
+  M1066a_V_Qmu_1066a( 87) =   332.d0
+  M1066a_V_Qmu_1066a( 88) =   332.d0
+  M1066a_V_Qmu_1066a( 89) =   332.d0
+  M1066a_V_Qmu_1066a( 90) =   332.d0
+  M1066a_V_Qmu_1066a( 91) =   332.d0
+  M1066a_V_Qmu_1066a( 92) =   332.d0
+  M1066a_V_Qmu_1066a( 93) =   332.d0
+  M1066a_V_Qmu_1066a( 94) =   332.d0
+  M1066a_V_Qmu_1066a( 95) =   332.d0
+  M1066a_V_Qmu_1066a( 96) =   332.d0
+  M1066a_V_Qmu_1066a( 97) =   332.d0
+  M1066a_V_Qmu_1066a( 98) =   332.d0
+  M1066a_V_Qmu_1066a( 99) =   332.d0
+  M1066a_V_Qmu_1066a(100) =   332.d0
+  M1066a_V_Qmu_1066a(101) =   332.d0
+  M1066a_V_Qmu_1066a(102) =   332.d0
+  M1066a_V_Qmu_1066a(103) =   332.d0
+  M1066a_V_Qmu_1066a(104) =   332.d0
+  M1066a_V_Qmu_1066a(105) =   332.d0
+  M1066a_V_Qmu_1066a(106) =   332.d0
+  M1066a_V_Qmu_1066a(107) =   332.d0
+  M1066a_V_Qmu_1066a(108) =   332.d0
+  M1066a_V_Qmu_1066a(109) =   332.d0
+  M1066a_V_Qmu_1066a(110) =   332.d0
+  M1066a_V_Qmu_1066a(111) =   332.d0
+  M1066a_V_Qmu_1066a(112) =   332.d0
+  M1066a_V_Qmu_1066a(113) =   332.d0
+  M1066a_V_Qmu_1066a(114) =   332.d0
+  M1066a_V_Qmu_1066a(115) =   332.d0
+  M1066a_V_Qmu_1066a(116) =   332.d0
+  M1066a_V_Qmu_1066a(117) =   332.d0
+  M1066a_V_Qmu_1066a(118) =   332.d0
+  M1066a_V_Qmu_1066a(119) =   332.d0
+  M1066a_V_Qmu_1066a(120) =   332.d0
+  M1066a_V_Qmu_1066a(121) =   332.d0
+  M1066a_V_Qmu_1066a(122) =   332.d0
+  M1066a_V_Qmu_1066a(123) =   332.d0
+  M1066a_V_Qmu_1066a(124) =   332.d0
+  M1066a_V_Qmu_1066a(125) =   332.d0
+  M1066a_V_Qmu_1066a(126) =   332.d0
+  M1066a_V_Qmu_1066a(127) =   332.d0
+  M1066a_V_Qmu_1066a(128) =   332.d0
+  M1066a_V_Qmu_1066a(129) =   332.d0
+  M1066a_V_Qmu_1066a(130) =   332.d0
+  M1066a_V_Qmu_1066a(131) =   332.d0
+  M1066a_V_Qmu_1066a(132) =   276.8d0
+  M1066a_V_Qmu_1066a(133) =   276.8d0
+  M1066a_V_Qmu_1066a(134) =   276.8d0
+  M1066a_V_Qmu_1066a(135) =   276.8d0
+  M1066a_V_Qmu_1066a(136) =   276.8d0
+  M1066a_V_Qmu_1066a(137) =   276.8d0
+  M1066a_V_Qmu_1066a(138) =   276.8d0
+  M1066a_V_Qmu_1066a(139) =   276.8d0
+  M1066a_V_Qmu_1066a(140) =   276.8d0
+  M1066a_V_Qmu_1066a(141) =   117.9d0
+  M1066a_V_Qmu_1066a(142) =   117.9d0
+  M1066a_V_Qmu_1066a(143) =   117.9d0
+  M1066a_V_Qmu_1066a(144) =   117.9d0
+  M1066a_V_Qmu_1066a(145) =   117.9d0
+  M1066a_V_Qmu_1066a(146) =   117.9d0
+  M1066a_V_Qmu_1066a(147) =   117.9d0
+  M1066a_V_Qmu_1066a(148) =   117.9d0
+  M1066a_V_Qmu_1066a(149) =   117.9d0
+  M1066a_V_Qmu_1066a(150) =   117.9d0
+  M1066a_V_Qmu_1066a(151) =   117.9d0
+  M1066a_V_Qmu_1066a(152) =   117.9d0
+  M1066a_V_Qmu_1066a(153) =   117.9d0
+  M1066a_V_Qmu_1066a(154) =   117.9d0
+  M1066a_V_Qmu_1066a(155) =   117.9d0
+  M1066a_V_Qmu_1066a(156) =   117.9d0
+  M1066a_V_Qmu_1066a(157) =   117.9d0
+  M1066a_V_Qmu_1066a(158) =   117.9d0
+  M1066a_V_Qmu_1066a(159) =   117.9d0
+  M1066a_V_Qmu_1066a(160) =   117.9d0
 
 ! strip the crust and replace it by mantle if we use an external crustal model
   if (SUPPRESS_CRUSTAL_MESH .or. USE_EXTERNAL_CRUSTAL_MODEL) then
     do i=NR_1066A-3,NR_1066A
-      M1066a_V%density_1066a(i) = M1066a_V%density_1066a(NR_1066A-4)
-      M1066a_V%vp_1066a(i) = M1066a_V%vp_1066a(NR_1066A-4)
-      M1066a_V%vs_1066a(i) = M1066a_V%vs_1066a(NR_1066A-4)
-      M1066a_V%Qkappa_1066a(i) = M1066a_V%Qkappa_1066a(NR_1066A-4)
-      M1066a_V%Qmu_1066a(i) = M1066a_V%Qmu_1066a(NR_1066A-4)
+      M1066a_V_density_1066a(i) = M1066a_V_density_1066a(NR_1066A-4)
+      M1066a_V_vp_1066a(i) = M1066a_V_vp_1066a(NR_1066A-4)
+      M1066a_V_vs_1066a(i) = M1066a_V_vs_1066a(NR_1066A-4)
+      M1066a_V_Qkappa_1066a(i) = M1066a_V_Qkappa_1066a(NR_1066A-4)
+      M1066a_V_Qmu_1066a(i) = M1066a_V_Qmu_1066a(NR_1066A-4)
     enddo
   endif
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1dref.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1dref.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_1dref.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -48,36 +48,53 @@
 ! Bull. Seism. Soc. Am., 86, 144-158
 !--------------------------------------------------------------------------------------------------
 
+  module model_1dref_par
 
-  subroutine model_1dref_broadcast(CRUSTAL,Mref_V)
+  ! number of layers in DATA/s362ani/REF
+  integer, parameter :: NR_REF = 750
 
-! standard routine to setup model
+  ! model_1dref_variables
+  double precision, dimension(:),allocatable :: &
+    Mref_V_radius_ref,Mref_V_density_ref, &
+    Mref_V_vpv_ref,Mref_V_vph_ref, &
+    Mref_V_vsv_ref,Mref_V_vsh_ref, &
+    Mref_V_eta_ref,Mref_V_Qkappa_ref,Mref_V_Qmu_ref
 
-  implicit none
+  end module model_1dref_par
 
-  include "constants.h"
+!
+!-------------------------------------------------------------------------------------------------
+!
 
-  ! model_1dref_variables
-  type model_1dref_variables
-    sequence
-      double precision, dimension(NR_REF) :: radius_ref
-      double precision, dimension(NR_REF) :: density_ref
-      double precision, dimension(NR_REF) :: vpv_ref
-      double precision, dimension(NR_REF) :: vph_ref
-      double precision, dimension(NR_REF) :: vsv_ref
-      double precision, dimension(NR_REF) :: vsh_ref
-      double precision, dimension(NR_REF) :: eta_ref
-      double precision, dimension(NR_REF) :: Qkappa_ref
-      double precision, dimension(NR_REF) :: Qmu_ref
-  end type model_1dref_variables
+  subroutine model_1dref_broadcast(myrank,CRUSTAL)
 
-  type (model_1dref_variables) Mref_V
-  ! model_1dref_variables
+! standard routine to setup model
 
+  use model_1dref_par
+
+  implicit none
+
+  integer :: myrank
   logical :: CRUSTAL
 
+  ! local parameters
+  integer :: ier
+
+  ! allocates model arrays
+  allocate(Mref_V_radius_ref(NR_REF), &
+          Mref_V_density_ref(NR_REF), &
+          Mref_V_vpv_ref(NR_REF), &
+          Mref_V_vph_ref(NR_REF), &
+          Mref_V_vsv_ref(NR_REF), &
+          Mref_V_vsh_ref(NR_REF), &
+          Mref_V_eta_ref(NR_REF), &
+          Mref_V_Qkappa_ref(NR_REF), &
+          Mref_V_Qmu_ref(NR_REF), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating Mref_V arrays')
+
   ! all processes will define same parameters
-  call define_model_1dref(CRUSTAL,Mref_V)
+  call define_model_1dref(CRUSTAL)
 
   end subroutine model_1dref_broadcast
 
@@ -85,29 +102,16 @@
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine model_1dref(x,rho,vpv,vph,vsv,vsh,eta,Qkappa,Qmu,iregion_code,CRUSTAL,Mref_V)
+  subroutine model_1dref(x,rho,vpv,vph,vsv,vsh,eta,Qkappa,Qmu,iregion_code,CRUSTAL)
 
+  use model_1dref_par
+
   implicit none
 
   include "constants.h"
 
 ! model_1dref_variables
-  type model_1dref_variables
-    sequence
-      double precision, dimension(NR_REF) :: radius_ref
-      double precision, dimension(NR_REF) :: density_ref
-      double precision, dimension(NR_REF) :: vpv_ref
-      double precision, dimension(NR_REF) :: vph_ref
-      double precision, dimension(NR_REF) :: vsv_ref
-      double precision, dimension(NR_REF) :: vsh_ref
-      double precision, dimension(NR_REF) :: eta_ref
-      double precision, dimension(NR_REF) :: Qkappa_ref
-      double precision, dimension(NR_REF) :: Qmu_ref
-  end type model_1dref_variables
 
-  type (model_1dref_variables) Mref_V
-! model_1dref_variables
-
 ! input:
 ! dimensionless radius x
 
@@ -121,20 +125,20 @@
 ! shear quality factor Qmu
 ! bulk quality factor Qkappa
 
-  integer iregion_code
 
-  double precision x,rho,vpv,vph,vsv,vsh,eta,Qmu,Qkappa
+  double precision :: x,rho,vpv,vph,vsv,vsh,eta,Qmu,Qkappa
+  integer :: iregion_code
+  logical :: CRUSTAL
 
-  integer i
+  ! local parameters
+  double precision :: r,frac,scaleval
+  integer :: i
 
-  double precision r,frac,scaleval
-  logical CRUSTAL
-
-! compute real physical radius in meters
+  ! compute real physical radius in meters
   r = x * R_EARTH
 
   i = 1
-  do while(r >= Mref_V%radius_ref(i) .and. i /= NR_REF)
+  do while(r >= Mref_V_radius_ref(i) .and. i /= NR_REF)
     i = i + 1
   enddo
 
@@ -153,27 +157,27 @@
 
   if(i == 1) then
     ! first layer in inner core
-    rho = Mref_V%density_ref(i)
-    vpv = Mref_V%vpv_ref(i)
-    vph = Mref_V%vph_ref(i)
-    vsv = Mref_V%vsv_ref(i)
-    vsh = Mref_V%vsh_ref(i)
-    eta = Mref_V%eta_ref(i)
-    Qkappa = Mref_V%Qkappa_ref(i)
-    Qmu = Mref_V%Qmu_ref(i)
+    rho = Mref_V_density_ref(i)
+    vpv = Mref_V_vpv_ref(i)
+    vph = Mref_V_vph_ref(i)
+    vsv = Mref_V_vsv_ref(i)
+    vsh = Mref_V_vsh_ref(i)
+    eta = Mref_V_eta_ref(i)
+    Qkappa = Mref_V_Qkappa_ref(i)
+    Qmu = Mref_V_Qmu_ref(i)
   else
     ! interpolates between one layer below to actual radius layer,
     ! that is from radius_ref(i-1) to r using the values at i-1 and i
-    frac = (r-Mref_V%radius_ref(i-1))/(Mref_V%radius_ref(i)-Mref_V%radius_ref(i-1))
+    frac = (r-Mref_V_radius_ref(i-1))/(Mref_V_radius_ref(i)-Mref_V_radius_ref(i-1))
     ! interpolated model parameters
-    rho = Mref_V%density_ref(i-1) + frac * (Mref_V%density_ref(i)-Mref_V%density_ref(i-1))
-    vpv = Mref_V%vpv_ref(i-1) + frac * (Mref_V%vpv_ref(i)-Mref_V%vpv_ref(i-1))
-    vph = Mref_V%vph_ref(i-1) + frac * (Mref_V%vph_ref(i)-Mref_V%vph_ref(i-1))
-    vsv = Mref_V%vsv_ref(i-1) + frac * (Mref_V%vsv_ref(i)-Mref_V%vsv_ref(i-1))
-    vsh = Mref_V%vsh_ref(i-1) + frac * (Mref_V%vsh_ref(i)-Mref_V%vsh_ref(i-1))
-    eta = Mref_V%eta_ref(i-1) + frac * (Mref_V%eta_ref(i)-Mref_V%eta_ref(i-1))
-    Qkappa = Mref_V%Qkappa_ref(i-1) + frac * (Mref_V%Qkappa_ref(i)-Mref_V%Qkappa_ref(i-1))
-    Qmu = Mref_V%Qmu_ref(i-1) + frac * (Mref_V%Qmu_ref(i)-Mref_V%Qmu_ref(i-1))
+    rho = Mref_V_density_ref(i-1) + frac * (Mref_V_density_ref(i)-Mref_V_density_ref(i-1))
+    vpv = Mref_V_vpv_ref(i-1) + frac * (Mref_V_vpv_ref(i)-Mref_V_vpv_ref(i-1))
+    vph = Mref_V_vph_ref(i-1) + frac * (Mref_V_vph_ref(i)-Mref_V_vph_ref(i-1))
+    vsv = Mref_V_vsv_ref(i-1) + frac * (Mref_V_vsv_ref(i)-Mref_V_vsv_ref(i-1))
+    vsh = Mref_V_vsh_ref(i-1) + frac * (Mref_V_vsh_ref(i)-Mref_V_vsh_ref(i-1))
+    eta = Mref_V_eta_ref(i-1) + frac * (Mref_V_eta_ref(i)-Mref_V_eta_ref(i-1))
+    Qkappa = Mref_V_Qkappa_ref(i-1) + frac * (Mref_V_Qkappa_ref(i)-Mref_V_Qkappa_ref(i-1))
+    Qmu = Mref_V_Qmu_ref(i-1) + frac * (Mref_V_Qmu_ref(i)-Mref_V_Qmu_ref(i-1))
   endif
 
   ! make sure Vs is zero in the outer core even if roundoff errors on depth
@@ -198,7243 +202,7229 @@
 
 !-------------------
 
-  subroutine define_model_1dref(USE_EXTERNAL_CRUSTAL_MODEL,Mref_V)
+  subroutine define_model_1dref(USE_EXTERNAL_CRUSTAL_MODEL)
 
+  use model_1dref_par
+
   implicit none
+
   include "constants.h"
 
-! model_1dref_variables
-  type model_1dref_variables
-    sequence
-      double precision, dimension(NR_REF) :: radius_ref
-      double precision, dimension(NR_REF) :: density_ref
-      double precision, dimension(NR_REF) :: vpv_ref
-      double precision, dimension(NR_REF) :: vph_ref
-      double precision, dimension(NR_REF) :: vsv_ref
-      double precision, dimension(NR_REF) :: vsh_ref
-      double precision, dimension(NR_REF) :: eta_ref
-      double precision, dimension(NR_REF) :: Qkappa_ref
-      double precision, dimension(NR_REF) :: Qmu_ref
-  end type model_1dref_variables
+  logical :: USE_EXTERNAL_CRUSTAL_MODEL
 
-  type (model_1dref_variables) Mref_V
-! model_1dref_variables
 
-  logical USE_EXTERNAL_CRUSTAL_MODEL
+  ! define the 1D REF model of Kustowski et al. (2007)
 
+  Mref_V_radius_ref( 1 : 30 ) = (/ &
+  0.d0 , &
+  6824.d0 , &
+  13648.d0 , &
+  20472.d0 , &
+  27296.d0 , &
+  34120.d0 , &
+  40944.d0 , &
+  47768.d0 , &
+  54592.d0 , &
+  61416.d0 , &
+  68240.d0 , &
+  75064.d0 , &
+  81888.d0 , &
+  88712.d0 , &
+  95536.d0 , &
+  102360.d0 , &
+  109184.d0 , &
+  116007.d0 , &
+  122831.d0 , &
+  129655.d0 , &
+  136479.d0 , &
+  143303.d0 , &
+  150127.d0 , &
+  156951.d0 , &
+  163775.d0 , &
+  170599.d0 , &
+  177423.d0 , &
+  184247.d0 , &
+  191071.d0 , &
+  197895.d0 /)
 
-! define the 1D REF model of Kustowski et al. (2007)
+  Mref_V_radius_ref( 31 : 60 ) = (/ &
+  204719.d0 , &
+  211543.d0 , &
+  218367.d0 , &
+  225191.d0 , &
+  232015.d0 , &
+  238839.d0 , &
+  245663.d0 , &
+  252487.d0 , &
+  259311.d0 , &
+  266135.d0 , &
+  272959.d0 , &
+  279783.d0 , &
+  286607.d0 , &
+  293431.d0 , &
+  300255.d0 , &
+  307079.d0 , &
+  313903.d0 , &
+  320727.d0 , &
+  327551.d0 , &
+  334375.d0 , &
+  341199.d0 , &
+  348022.d0 , &
+  354846.d0 , &
+  361670.d0 , &
+  368494.d0 , &
+  375318.d0 , &
+  382142.d0 , &
+  388966.d0 , &
+  395790.d0 , &
+  402614.d0 /)
 
- Mref_V%radius_ref( 1 : 30 ) = (/ &
- 0.000000000000000E+000 , &
- 6824.00000000000 , &
- 13648.0000000000 , &
- 20472.0000000000 , &
- 27296.0000000000 , &
- 34120.0000000000 , &
- 40944.0000000000 , &
- 47768.0000000000 , &
- 54592.0000000000 , &
- 61416.0000000000 , &
- 68240.0000000000 , &
- 75064.0000000000 , &
- 81888.0000000000 , &
- 88712.0000000000 , &
- 95536.0000000000 , &
- 102360.000000000 , &
- 109184.000000000 , &
- 116007.000000000 , &
- 122831.000000000 , &
- 129655.000000000 , &
- 136479.000000000 , &
- 143303.000000000 , &
- 150127.000000000 , &
- 156951.000000000 , &
- 163775.000000000 , &
- 170599.000000000 , &
- 177423.000000000 , &
- 184247.000000000 , &
- 191071.000000000 , &
- 197895.000000000 /)
+  Mref_V_radius_ref( 61 : 90 ) = (/ &
+  409438.d0 , &
+  416262.d0 , &
+  423086.d0 , &
+  429910.d0 , &
+  436734.d0 , &
+  443558.d0 , &
+  450382.d0 , &
+  457206.d0 , &
+  464030.d0 , &
+  470854.d0 , &
+  477678.d0 , &
+  484502.d0 , &
+  491326.d0 , &
+  498150.d0 , &
+  504974.d0 , &
+  511798.d0 , &
+  518622.d0 , &
+  525446.d0 , &
+  532270.d0 , &
+  539094.d0 , &
+  545918.d0 , &
+  552742.d0 , &
+  559566.d0 , &
+  566390.d0 , &
+  573214.d0 , &
+  580037.d0 , &
+  586861.d0 , &
+  593685.d0 , &
+  600509.d0 , &
+  607333.d0 /)
 
- Mref_V%radius_ref( 31 : 60 ) = (/ &
- 204719.000000000 , &
- 211543.000000000 , &
- 218367.000000000 , &
- 225191.000000000 , &
- 232015.000000000 , &
- 238839.000000000 , &
- 245663.000000000 , &
- 252487.000000000 , &
- 259311.000000000 , &
- 266135.000000000 , &
- 272959.000000000 , &
- 279783.000000000 , &
- 286607.000000000 , &
- 293431.000000000 , &
- 300255.000000000 , &
- 307079.000000000 , &
- 313903.000000000 , &
- 320727.000000000 , &
- 327551.000000000 , &
- 334375.000000000 , &
- 341199.000000000 , &
- 348022.000000000 , &
- 354846.000000000 , &
- 361670.000000000 , &
- 368494.000000000 , &
- 375318.000000000 , &
- 382142.000000000 , &
- 388966.000000000 , &
- 395790.000000000 , &
- 402614.000000000 /)
+  Mref_V_radius_ref( 91 : 120 ) = (/ &
+  614157.d0 , &
+  620981.d0 , &
+  627805.d0 , &
+  634629.d0 , &
+  641453.d0 , &
+  648277.d0 , &
+  655101.d0 , &
+  661925.d0 , &
+  668749.d0 , &
+  675573.d0 , &
+  682397.d0 , &
+  689221.d0 , &
+  696045.d0 , &
+  702869.d0 , &
+  709693.d0 , &
+  716517.d0 , &
+  723341.d0 , &
+  730165.d0 , &
+  736989.d0 , &
+  743813.d0 , &
+  750637.d0 , &
+  757461.d0 , &
+  764285.d0 , &
+  771109.d0 , &
+  777933.d0 , &
+  784757.d0 , &
+  791581.d0 , &
+  798405.d0 , &
+  805229.d0 , &
+  812052.d0 /)
 
- Mref_V%radius_ref( 61 : 90 ) = (/ &
- 409438.000000000 , &
- 416262.000000000 , &
- 423086.000000000 , &
- 429910.000000000 , &
- 436734.000000000 , &
- 443558.000000000 , &
- 450382.000000000 , &
- 457206.000000000 , &
- 464030.000000000 , &
- 470854.000000000 , &
- 477678.000000000 , &
- 484502.000000000 , &
- 491326.000000000 , &
- 498150.000000000 , &
- 504974.000000000 , &
- 511798.000000000 , &
- 518622.000000000 , &
- 525446.000000000 , &
- 532270.000000000 , &
- 539094.000000000 , &
- 545918.000000000 , &
- 552742.000000000 , &
- 559566.000000000 , &
- 566390.000000000 , &
- 573214.000000000 , &
- 580037.000000000 , &
- 586861.000000000 , &
- 593685.000000000 , &
- 600509.000000000 , &
- 607333.000000000 /)
+  Mref_V_radius_ref( 121 : 150 ) = (/ &
+  818876.d0 , &
+  825700.d0 , &
+  832524.d0 , &
+  839348.d0 , &
+  846172.d0 , &
+  852996.d0 , &
+  859820.d0 , &
+  866644.d0 , &
+  873468.d0 , &
+  880292.d0 , &
+  887116.d0 , &
+  893940.d0 , &
+  900764.d0 , &
+  907588.d0 , &
+  914412.d0 , &
+  921236.d0 , &
+  928060.d0 , &
+  934884.d0 , &
+  941708.d0 , &
+  948532.d0 , &
+  955356.d0 , &
+  962180.d0 , &
+  969004.d0 , &
+  975828.d0 , &
+  982652.d0 , &
+  989476.d0 , &
+  996300.d0 , &
+  1003124.d0 , &
+  1009948.d0 , &
+  1016772.d0 /)
 
- Mref_V%radius_ref( 91 : 120 ) = (/ &
- 614157.000000000 , &
- 620981.000000000 , &
- 627805.000000000 , &
- 634629.000000000 , &
- 641453.000000000 , &
- 648277.000000000 , &
- 655101.000000000 , &
- 661925.000000000 , &
- 668749.000000000 , &
- 675573.000000000 , &
- 682397.000000000 , &
- 689221.000000000 , &
- 696045.000000000 , &
- 702869.000000000 , &
- 709693.000000000 , &
- 716517.000000000 , &
- 723341.000000000 , &
- 730165.000000000 , &
- 736989.000000000 , &
- 743813.000000000 , &
- 750637.000000000 , &
- 757461.000000000 , &
- 764285.000000000 , &
- 771109.000000000 , &
- 777933.000000000 , &
- 784757.000000000 , &
- 791581.000000000 , &
- 798405.000000000 , &
- 805229.000000000 , &
- 812052.000000000 /)
+  Mref_V_radius_ref( 151 : 180 ) = (/ &
+  1023596.d0 , &
+  1030420.d0 , &
+  1037244.d0 , &
+  1044067.d0 , &
+  1050891.d0 , &
+  1057715.d0 , &
+  1064539.d0 , &
+  1071363.d0 , &
+  1078187.d0 , &
+  1085011.d0 , &
+  1091835.d0 , &
+  1098659.d0 , &
+  1105483.d0 , &
+  1112307.d0 , &
+  1119131.d0 , &
+  1125955.d0 , &
+  1132779.d0 , &
+  1139603.d0 , &
+  1146427.d0 , &
+  1153251.d0 , &
+  1160075.d0 , &
+  1166899.d0 , &
+  1173723.d0 , &
+  1180547.d0 , &
+  1187371.d0 , &
+  1194195.d0 , &
+  1201019.d0 , &
+  1207843.d0 , &
+  1214667.d0 , &
+  1221491.d0 /)
 
- Mref_V%radius_ref( 121 : 150 ) = (/ &
- 818876.000000000 , &
- 825700.000000000 , &
- 832524.000000000 , &
- 839348.000000000 , &
- 846172.000000000 , &
- 852996.000000000 , &
- 859820.000000000 , &
- 866644.000000000 , &
- 873468.000000000 , &
- 880292.000000000 , &
- 887116.000000000 , &
- 893940.000000000 , &
- 900764.000000000 , &
- 907588.000000000 , &
- 914412.000000000 , &
- 921236.000000000 , &
- 928060.000000000 , &
- 934884.000000000 , &
- 941708.000000000 , &
- 948532.000000000 , &
- 955356.000000000 , &
- 962180.000000000 , &
- 969004.000000000 , &
- 975828.000000000 , &
- 982652.000000000 , &
- 989476.000000000 , &
- 996300.000000000 , &
- 1003124.00000000 , &
- 1009948.00000000 , &
- 1016772.00000000 /)
+  Mref_V_radius_ref( 181 : 210 ) = (/ &
+  1221491.d0 , &
+  1234250.d0 , &
+  1247010.d0 , &
+  1259770.d0 , &
+  1272530.d0 , &
+  1285289.d0 , &
+  1298049.d0 , &
+  1310809.d0 , &
+  1323568.d0 , &
+  1336328.d0 , &
+  1349088.d0 , &
+  1361847.d0 , &
+  1374607.d0 , &
+  1387367.d0 , &
+  1400127.d0 , &
+  1412886.d0 , &
+  1425646.d0 , &
+  1438406.d0 , &
+  1451165.d0 , &
+  1463925.d0 , &
+  1476685.d0 , &
+  1489444.d0 , &
+  1502204.d0 , &
+  1514964.d0 , &
+  1527724.d0 , &
+  1540483.d0 , &
+  1553243.d0 , &
+  1566003.d0 , &
+  1578762.d0 , &
+  1591522.d0 /)
 
- Mref_V%radius_ref( 151 : 180 ) = (/ &
- 1023596.00000000 , &
- 1030420.00000000 , &
- 1037244.00000000 , &
- 1044067.00000000 , &
- 1050891.00000000 , &
- 1057715.00000000 , &
- 1064539.00000000 , &
- 1071363.00000000 , &
- 1078187.00000000 , &
- 1085011.00000000 , &
- 1091835.00000000 , &
- 1098659.00000000 , &
- 1105483.00000000 , &
- 1112307.00000000 , &
- 1119131.00000000 , &
- 1125955.00000000 , &
- 1132779.00000000 , &
- 1139603.00000000 , &
- 1146427.00000000 , &
- 1153251.00000000 , &
- 1160075.00000000 , &
- 1166899.00000000 , &
- 1173723.00000000 , &
- 1180547.00000000 , &
- 1187371.00000000 , &
- 1194195.00000000 , &
- 1201019.00000000 , &
- 1207843.00000000 , &
- 1214667.00000000 , &
- 1221491.00000000 /)
+  Mref_V_radius_ref( 211 : 240 ) = (/ &
+  1604282.d0 , &
+  1617041.d0 , &
+  1629801.d0 , &
+  1642561.d0 , &
+  1655321.d0 , &
+  1668080.d0 , &
+  1680840.d0 , &
+  1693600.d0 , &
+  1706359.d0 , &
+  1719119.d0 , &
+  1731879.d0 , &
+  1744638.d0 , &
+  1757398.d0 , &
+  1770158.d0 , &
+  1782918.d0 , &
+  1795677.d0 , &
+  1808437.d0 , &
+  1821197.d0 , &
+  1833956.d0 , &
+  1846716.d0 , &
+  1859476.d0 , &
+  1872235.d0 , &
+  1884995.d0 , &
+  1897755.d0 , &
+  1910515.d0 , &
+  1923274.d0 , &
+  1936034.d0 , &
+  1948794.d0 , &
+  1961553.d0 , &
+  1974313.d0 /)
 
- Mref_V%radius_ref( 181 : 210 ) = (/ &
- 1221491.00000000 , &
- 1234250.00000000 , &
- 1247010.00000000 , &
- 1259770.00000000 , &
- 1272530.00000000 , &
- 1285289.00000000 , &
- 1298049.00000000 , &
- 1310809.00000000 , &
- 1323568.00000000 , &
- 1336328.00000000 , &
- 1349088.00000000 , &
- 1361847.00000000 , &
- 1374607.00000000 , &
- 1387367.00000000 , &
- 1400127.00000000 , &
- 1412886.00000000 , &
- 1425646.00000000 , &
- 1438406.00000000 , &
- 1451165.00000000 , &
- 1463925.00000000 , &
- 1476685.00000000 , &
- 1489444.00000000 , &
- 1502204.00000000 , &
- 1514964.00000000 , &
- 1527724.00000000 , &
- 1540483.00000000 , &
- 1553243.00000000 , &
- 1566003.00000000 , &
- 1578762.00000000 , &
- 1591522.00000000 /)
+  Mref_V_radius_ref( 241 : 270 ) = (/ &
+  1987073.d0 , &
+  1999832.d0 , &
+  2012592.d0 , &
+  2025352.d0 , &
+  2038112.d0 , &
+  2050871.d0 , &
+  2063631.d0 , &
+  2076391.d0 , &
+  2089150.d0 , &
+  2101910.d0 , &
+  2114670.d0 , &
+  2127429.d0 , &
+  2140189.d0 , &
+  2152949.d0 , &
+  2165709.d0 , &
+  2178468.d0 , &
+  2191228.d0 , &
+  2203988.d0 , &
+  2216747.d0 , &
+  2229507.d0 , &
+  2242267.d0 , &
+  2255026.d0 , &
+  2267786.d0 , &
+  2280546.d0 , &
+  2293306.d0 , &
+  2306065.d0 , &
+  2318825.d0 , &
+  2331585.d0 , &
+  2344344.d0 , &
+  2357104.d0 /)
 
- Mref_V%radius_ref( 211 : 240 ) = (/ &
- 1604282.00000000 , &
- 1617041.00000000 , &
- 1629801.00000000 , &
- 1642561.00000000 , &
- 1655321.00000000 , &
- 1668080.00000000 , &
- 1680840.00000000 , &
- 1693600.00000000 , &
- 1706359.00000000 , &
- 1719119.00000000 , &
- 1731879.00000000 , &
- 1744638.00000000 , &
- 1757398.00000000 , &
- 1770158.00000000 , &
- 1782918.00000000 , &
- 1795677.00000000 , &
- 1808437.00000000 , &
- 1821197.00000000 , &
- 1833956.00000000 , &
- 1846716.00000000 , &
- 1859476.00000000 , &
- 1872235.00000000 , &
- 1884995.00000000 , &
- 1897755.00000000 , &
- 1910515.00000000 , &
- 1923274.00000000 , &
- 1936034.00000000 , &
- 1948794.00000000 , &
- 1961553.00000000 , &
- 1974313.00000000 /)
+  Mref_V_radius_ref( 271 : 300 ) = (/ &
+  2369864.d0 , &
+  2382623.d0 , &
+  2395383.d0 , &
+  2408143.d0 , &
+  2420903.d0 , &
+  2433662.d0 , &
+  2446422.d0 , &
+  2459182.d0 , &
+  2471941.d0 , &
+  2484701.d0 , &
+  2497461.d0 , &
+  2510220.d0 , &
+  2522980.d0 , &
+  2535740.d0 , &
+  2548500.d0 , &
+  2561259.d0 , &
+  2574019.d0 , &
+  2586779.d0 , &
+  2599538.d0 , &
+  2612298.d0 , &
+  2625058.d0 , &
+  2637818.d0 , &
+  2650577.d0 , &
+  2663337.d0 , &
+  2676097.d0 , &
+  2688856.d0 , &
+  2701616.d0 , &
+  2714376.d0 , &
+  2727135.d0 , &
+  2739895.d0 /)
 
- Mref_V%radius_ref( 241 : 270 ) = (/ &
- 1987073.00000000 , &
- 1999832.00000000 , &
- 2012592.00000000 , &
- 2025352.00000000 , &
- 2038112.00000000 , &
- 2050871.00000000 , &
- 2063631.00000000 , &
- 2076391.00000000 , &
- 2089150.00000000 , &
- 2101910.00000000 , &
- 2114670.00000000 , &
- 2127429.00000000 , &
- 2140189.00000000 , &
- 2152949.00000000 , &
- 2165709.00000000 , &
- 2178468.00000000 , &
- 2191228.00000000 , &
- 2203988.00000000 , &
- 2216747.00000000 , &
- 2229507.00000000 , &
- 2242267.00000000 , &
- 2255026.00000000 , &
- 2267786.00000000 , &
- 2280546.00000000 , &
- 2293306.00000000 , &
- 2306065.00000000 , &
- 2318825.00000000 , &
- 2331585.00000000 , &
- 2344344.00000000 , &
- 2357104.00000000 /)
+  Mref_V_radius_ref( 301 : 330 ) = (/ &
+  2752655.d0 , &
+  2765415.d0 , &
+  2778174.d0 , &
+  2790934.d0 , &
+  2803694.d0 , &
+  2816453.d0 , &
+  2829213.d0 , &
+  2841973.d0 , &
+  2854732.d0 , &
+  2867492.d0 , &
+  2880252.d0 , &
+  2893012.d0 , &
+  2905771.d0 , &
+  2918531.d0 , &
+  2931291.d0 , &
+  2944050.d0 , &
+  2956810.d0 , &
+  2969570.d0 , &
+  2982329.d0 , &
+  2995089.d0 , &
+  3007849.d0 , &
+  3020609.d0 , &
+  3033368.d0 , &
+  3046128.d0 , &
+  3058888.d0 , &
+  3071647.d0 , &
+  3084407.d0 , &
+  3097167.d0 , &
+  3109926.d0 , &
+  3122686.d0 /)
 
- Mref_V%radius_ref( 271 : 300 ) = (/ &
- 2369864.00000000 , &
- 2382623.00000000 , &
- 2395383.00000000 , &
- 2408143.00000000 , &
- 2420903.00000000 , &
- 2433662.00000000 , &
- 2446422.00000000 , &
- 2459182.00000000 , &
- 2471941.00000000 , &
- 2484701.00000000 , &
- 2497461.00000000 , &
- 2510220.00000000 , &
- 2522980.00000000 , &
- 2535740.00000000 , &
- 2548500.00000000 , &
- 2561259.00000000 , &
- 2574019.00000000 , &
- 2586779.00000000 , &
- 2599538.00000000 , &
- 2612298.00000000 , &
- 2625058.00000000 , &
- 2637818.00000000 , &
- 2650577.00000000 , &
- 2663337.00000000 , &
- 2676097.00000000 , &
- 2688856.00000000 , &
- 2701616.00000000 , &
- 2714376.00000000 , &
- 2727135.00000000 , &
- 2739895.00000000 /)
+  Mref_V_radius_ref( 331 : 360 ) = (/ &
+  3135446.d0 , &
+  3148206.d0 , &
+  3160965.d0 , &
+  3173725.d0 , &
+  3186485.d0 , &
+  3199244.d0 , &
+  3212004.d0 , &
+  3224764.d0 , &
+  3237523.d0 , &
+  3250283.d0 , &
+  3263043.d0 , &
+  3275803.d0 , &
+  3288562.d0 , &
+  3301322.d0 , &
+  3314082.d0 , &
+  3326841.d0 , &
+  3339601.d0 , &
+  3352361.d0 , &
+  3365120.d0 , &
+  3377880.d0 , &
+  3390640.d0 , &
+  3403400.d0 , &
+  3416159.d0 , &
+  3428919.d0 , &
+  3441679.d0 , &
+  3454438.d0 , &
+  3467198.d0 , &
+  3479958.d0 , &
+  3479958.d0 , &
+  3489335.d0 /)
 
- Mref_V%radius_ref( 301 : 330 ) = (/ &
- 2752655.00000000 , &
- 2765415.00000000 , &
- 2778174.00000000 , &
- 2790934.00000000 , &
- 2803694.00000000 , &
- 2816453.00000000 , &
- 2829213.00000000 , &
- 2841973.00000000 , &
- 2854732.00000000 , &
- 2867492.00000000 , &
- 2880252.00000000 , &
- 2893012.00000000 , &
- 2905771.00000000 , &
- 2918531.00000000 , &
- 2931291.00000000 , &
- 2944050.00000000 , &
- 2956810.00000000 , &
- 2969570.00000000 , &
- 2982329.00000000 , &
- 2995089.00000000 , &
- 3007849.00000000 , &
- 3020609.00000000 , &
- 3033368.00000000 , &
- 3046128.00000000 , &
- 3058888.00000000 , &
- 3071647.00000000 , &
- 3084407.00000000 , &
- 3097167.00000000 , &
- 3109926.00000000 , &
- 3122686.00000000 /)
+  Mref_V_radius_ref( 361 : 390 ) = (/ &
+  3498713.d0 , &
+  3508091.d0 , &
+  3517468.d0 , &
+  3526846.d0 , &
+  3536224.d0 , &
+  3545601.d0 , &
+  3554979.d0 , &
+  3564357.d0 , &
+  3573734.d0 , &
+  3583112.d0 , &
+  3592489.d0 , &
+  3601867.d0 , &
+  3611245.d0 , &
+  3620622.d0 , &
+  3630000.d0 , &
+  3630000.d0 , &
+  3639471.d0 , &
+  3648942.d0 , &
+  3658413.d0 , &
+  3667885.d0 , &
+  3677356.d0 , &
+  3686827.d0 , &
+  3696298.d0 , &
+  3705769.d0 , &
+  3715240.d0 , &
+  3724712.d0 , &
+  3734183.d0 , &
+  3743654.d0 , &
+  3753125.d0 , &
+  3762596.d0 /)
 
- Mref_V%radius_ref( 331 : 360 ) = (/ &
- 3135446.00000000 , &
- 3148206.00000000 , &
- 3160965.00000000 , &
- 3173725.00000000 , &
- 3186485.00000000 , &
- 3199244.00000000 , &
- 3212004.00000000 , &
- 3224764.00000000 , &
- 3237523.00000000 , &
- 3250283.00000000 , &
- 3263043.00000000 , &
- 3275803.00000000 , &
- 3288562.00000000 , &
- 3301322.00000000 , &
- 3314082.00000000 , &
- 3326841.00000000 , &
- 3339601.00000000 , &
- 3352361.00000000 , &
- 3365120.00000000 , &
- 3377880.00000000 , &
- 3390640.00000000 , &
- 3403400.00000000 , &
- 3416159.00000000 , &
- 3428919.00000000 , &
- 3441679.00000000 , &
- 3454438.00000000 , &
- 3467198.00000000 , &
- 3479958.00000000 , &
- 3479958.00000000 , &
- 3489335.00000000 /)
+  Mref_V_radius_ref( 391 : 420 ) = (/ &
+  3772067.d0 , &
+  3781538.d0 , &
+  3791010.d0 , &
+  3800481.d0 , &
+  3809952.d0 , &
+  3819423.d0 , &
+  3828894.d0 , &
+  3838365.d0 , &
+  3847837.d0 , &
+  3857308.d0 , &
+  3866779.d0 , &
+  3876250.d0 , &
+  3885721.d0 , &
+  3895192.d0 , &
+  3904663.d0 , &
+  3914135.d0 , &
+  3923606.d0 , &
+  3933077.d0 , &
+  3942548.d0 , &
+  3952019.d0 , &
+  3961490.d0 , &
+  3970962.d0 , &
+  3980433.d0 , &
+  3989904.d0 , &
+  3999375.d0 , &
+  4008846.d0 , &
+  4018317.d0 , &
+  4027788.d0 , &
+  4037260.d0 , &
+  4046731.d0 /)
 
- Mref_V%radius_ref( 361 : 390 ) = (/ &
- 3498713.00000000 , &
- 3508091.00000000 , &
- 3517468.00000000 , &
- 3526846.00000000 , &
- 3536224.00000000 , &
- 3545601.00000000 , &
- 3554979.00000000 , &
- 3564357.00000000 , &
- 3573734.00000000 , &
- 3583112.00000000 , &
- 3592489.00000000 , &
- 3601867.00000000 , &
- 3611245.00000000 , &
- 3620622.00000000 , &
- 3630000.00000000 , &
- 3630000.00000000 , &
- 3639471.00000000 , &
- 3648942.00000000 , &
- 3658413.00000000 , &
- 3667885.00000000 , &
- 3677356.00000000 , &
- 3686827.00000000 , &
- 3696298.00000000 , &
- 3705769.00000000 , &
- 3715240.00000000 , &
- 3724712.00000000 , &
- 3734183.00000000 , &
- 3743654.00000000 , &
- 3753125.00000000 , &
- 3762596.00000000 /)
+  Mref_V_radius_ref( 421 : 450 ) = (/ &
+  4056202.d0 , &
+  4065673.d0 , &
+  4075144.d0 , &
+  4084615.d0 , &
+  4094087.d0 , &
+  4103558.d0 , &
+  4113029.d0 , &
+  4122500.d0 , &
+  4131971.d0 , &
+  4141442.d0 , &
+  4150913.d0 , &
+  4160385.d0 , &
+  4169856.d0 , &
+  4179327.d0 , &
+  4188798.d0 , &
+  4198269.d0 , &
+  4207740.d0 , &
+  4217212.d0 , &
+  4226683.d0 , &
+  4236154.d0 , &
+  4245625.d0 , &
+  4255096.d0 , &
+  4264567.d0 , &
+  4274038.d0 , &
+  4283510.d0 , &
+  4292981.d0 , &
+  4302452.d0 , &
+  4311923.d0 , &
+  4321394.d0 , &
+  4330865.d0 /)
 
- Mref_V%radius_ref( 391 : 420 ) = (/ &
- 3772067.00000000 , &
- 3781538.00000000 , &
- 3791010.00000000 , &
- 3800481.00000000 , &
- 3809952.00000000 , &
- 3819423.00000000 , &
- 3828894.00000000 , &
- 3838365.00000000 , &
- 3847837.00000000 , &
- 3857308.00000000 , &
- 3866779.00000000 , &
- 3876250.00000000 , &
- 3885721.00000000 , &
- 3895192.00000000 , &
- 3904663.00000000 , &
- 3914135.00000000 , &
- 3923606.00000000 , &
- 3933077.00000000 , &
- 3942548.00000000 , &
- 3952019.00000000 , &
- 3961490.00000000 , &
- 3970962.00000000 , &
- 3980433.00000000 , &
- 3989904.00000000 , &
- 3999375.00000000 , &
- 4008846.00000000 , &
- 4018317.00000000 , &
- 4027788.00000000 , &
- 4037260.00000000 , &
- 4046731.00000000 /)
+  Mref_V_radius_ref( 451 : 480 ) = (/ &
+  4340337.d0 , &
+  4349808.d0 , &
+  4359279.d0 , &
+  4368750.d0 , &
+  4378221.d0 , &
+  4387692.d0 , &
+  4397163.d0 , &
+  4406635.d0 , &
+  4416106.d0 , &
+  4425577.d0 , &
+  4435048.d0 , &
+  4444519.d0 , &
+  4453990.d0 , &
+  4463462.d0 , &
+  4472933.d0 , &
+  4482404.d0 , &
+  4491875.d0 , &
+  4501346.d0 , &
+  4510817.d0 , &
+  4520288.d0 , &
+  4529760.d0 , &
+  4539231.d0 , &
+  4548702.d0 , &
+  4558173.d0 , &
+  4567644.d0 , &
+  4577115.d0 , &
+  4586587.d0 , &
+  4596058.d0 , &
+  4605529.d0 , &
+  4615000.d0 /)
 
- Mref_V%radius_ref( 421 : 450 ) = (/ &
- 4056202.00000000 , &
- 4065673.00000000 , &
- 4075144.00000000 , &
- 4084615.00000000 , &
- 4094087.00000000 , &
- 4103558.00000000 , &
- 4113029.00000000 , &
- 4122500.00000000 , &
- 4131971.00000000 , &
- 4141442.00000000 , &
- 4150913.00000000 , &
- 4160385.00000000 , &
- 4169856.00000000 , &
- 4179327.00000000 , &
- 4188798.00000000 , &
- 4198269.00000000 , &
- 4207740.00000000 , &
- 4217212.00000000 , &
- 4226683.00000000 , &
- 4236154.00000000 , &
- 4245625.00000000 , &
- 4255096.00000000 , &
- 4264567.00000000 , &
- 4274038.00000000 , &
- 4283510.00000000 , &
- 4292981.00000000 , &
- 4302452.00000000 , &
- 4311923.00000000 , &
- 4321394.00000000 , &
- 4330865.00000000 /)
+  Mref_V_radius_ref( 481 : 510 ) = (/ &
+  4624471.d0 , &
+  4633942.d0 , &
+  4643413.d0 , &
+  4652885.d0 , &
+  4662356.d0 , &
+  4671827.d0 , &
+  4681298.d0 , &
+  4690769.d0 , &
+  4700240.d0 , &
+  4709712.d0 , &
+  4719183.d0 , &
+  4728654.d0 , &
+  4738125.d0 , &
+  4747596.d0 , &
+  4757067.d0 , &
+  4766538.d0 , &
+  4776010.d0 , &
+  4785481.d0 , &
+  4794952.d0 , &
+  4804423.d0 , &
+  4813894.d0 , &
+  4823365.d0 , &
+  4832837.d0 , &
+  4842308.d0 , &
+  4851779.d0 , &
+  4861250.d0 , &
+  4870721.d0 , &
+  4880192.d0 , &
+  4889663.d0 , &
+  4899135.d0 /)
 
- Mref_V%radius_ref( 451 : 480 ) = (/ &
- 4340337.00000000 , &
- 4349808.00000000 , &
- 4359279.00000000 , &
- 4368750.00000000 , &
- 4378221.00000000 , &
- 4387692.00000000 , &
- 4397163.00000000 , &
- 4406635.00000000 , &
- 4416106.00000000 , &
- 4425577.00000000 , &
- 4435048.00000000 , &
- 4444519.00000000 , &
- 4453990.00000000 , &
- 4463462.00000000 , &
- 4472933.00000000 , &
- 4482404.00000000 , &
- 4491875.00000000 , &
- 4501346.00000000 , &
- 4510817.00000000 , &
- 4520288.00000000 , &
- 4529760.00000000 , &
- 4539231.00000000 , &
- 4548702.00000000 , &
- 4558173.00000000 , &
- 4567644.00000000 , &
- 4577115.00000000 , &
- 4586587.00000000 , &
- 4596058.00000000 , &
- 4605529.00000000 , &
- 4615000.00000000 /)
+  Mref_V_radius_ref( 511 : 540 ) = (/ &
+  4908606.d0 , &
+  4918077.d0 , &
+  4927548.d0 , &
+  4937019.d0 , &
+  4946490.d0 , &
+  4955962.d0 , &
+  4965433.d0 , &
+  4974904.d0 , &
+  4984375.d0 , &
+  4993846.d0 , &
+  5003317.d0 , &
+  5012788.d0 , &
+  5022260.d0 , &
+  5031731.d0 , &
+  5041202.d0 , &
+  5050673.d0 , &
+  5060144.d0 , &
+  5069615.d0 , &
+  5079087.d0 , &
+  5088558.d0 , &
+  5098029.d0 , &
+  5107500.d0 , &
+  5116971.d0 , &
+  5126442.d0 , &
+  5135913.d0 , &
+  5145385.d0 , &
+  5154856.d0 , &
+  5164327.d0 , &
+  5173798.d0 , &
+  5183269.d0 /)
 
- Mref_V%radius_ref( 481 : 510 ) = (/ &
- 4624471.00000000 , &
- 4633942.00000000 , &
- 4643413.00000000 , &
- 4652885.00000000 , &
- 4662356.00000000 , &
- 4671827.00000000 , &
- 4681298.00000000 , &
- 4690769.00000000 , &
- 4700240.00000000 , &
- 4709712.00000000 , &
- 4719183.00000000 , &
- 4728654.00000000 , &
- 4738125.00000000 , &
- 4747596.00000000 , &
- 4757067.00000000 , &
- 4766538.00000000 , &
- 4776010.00000000 , &
- 4785481.00000000 , &
- 4794952.00000000 , &
- 4804423.00000000 , &
- 4813894.00000000 , &
- 4823365.00000000 , &
- 4832837.00000000 , &
- 4842308.00000000 , &
- 4851779.00000000 , &
- 4861250.00000000 , &
- 4870721.00000000 , &
- 4880192.00000000 , &
- 4889663.00000000 , &
- 4899135.00000000 /)
+  Mref_V_radius_ref( 541 : 570 ) = (/ &
+  5192740.d0 , &
+  5202212.d0 , &
+  5211683.d0 , &
+  5221154.d0 , &
+  5230625.d0 , &
+  5240096.d0 , &
+  5249567.d0 , &
+  5259038.d0 , &
+  5268510.d0 , &
+  5277981.d0 , &
+  5287452.d0 , &
+  5296923.d0 , &
+  5306394.d0 , &
+  5315865.d0 , &
+  5325337.d0 , &
+  5334808.d0 , &
+  5344279.d0 , &
+  5353750.d0 , &
+  5363221.d0 , &
+  5372692.d0 , &
+  5382163.d0 , &
+  5391635.d0 , &
+  5401106.d0 , &
+  5410577.d0 , &
+  5420048.d0 , &
+  5429519.d0 , &
+  5438990.d0 , &
+  5448462.d0 , &
+  5457933.d0 , &
+  5467404.d0 /)
 
- Mref_V%radius_ref( 511 : 540 ) = (/ &
- 4908606.00000000 , &
- 4918077.00000000 , &
- 4927548.00000000 , &
- 4937019.00000000 , &
- 4946490.00000000 , &
- 4955962.00000000 , &
- 4965433.00000000 , &
- 4974904.00000000 , &
- 4984375.00000000 , &
- 4993846.00000000 , &
- 5003317.00000000 , &
- 5012788.00000000 , &
- 5022260.00000000 , &
- 5031731.00000000 , &
- 5041202.00000000 , &
- 5050673.00000000 , &
- 5060144.00000000 , &
- 5069615.00000000 , &
- 5079087.00000000 , &
- 5088558.00000000 , &
- 5098029.00000000 , &
- 5107500.00000000 , &
- 5116971.00000000 , &
- 5126442.00000000 , &
- 5135913.00000000 , &
- 5145385.00000000 , &
- 5154856.00000000 , &
- 5164327.00000000 , &
- 5173798.00000000 , &
- 5183269.00000000 /)
+  Mref_V_radius_ref( 571 : 600 ) = (/ &
+  5476875.d0 , &
+  5486346.d0 , &
+  5495817.d0 , &
+  5505288.d0 , &
+  5514760.d0 , &
+  5524231.d0 , &
+  5533702.d0 , &
+  5543173.d0 , &
+  5552644.d0 , &
+  5562115.d0 , &
+  5571587.d0 , &
+  5581058.d0 , &
+  5590529.d0 , &
+  5600000.d0 , &
+  5600000.d0 , &
+  5607562.d0 , &
+  5615125.d0 , &
+  5622688.d0 , &
+  5630250.d0 , &
+  5637812.d0 , &
+  5645375.d0 , &
+  5652938.d0 , &
+  5660500.d0 , &
+  5668062.d0 , &
+  5675625.d0 , &
+  5683188.d0 , &
+  5690750.d0 , &
+  5698312.d0 , &
+  5705875.d0 , &
+  5713438.d0 /)
 
- Mref_V%radius_ref( 541 : 570 ) = (/ &
- 5192740.00000000 , &
- 5202212.00000000 , &
- 5211683.00000000 , &
- 5221154.00000000 , &
- 5230625.00000000 , &
- 5240096.00000000 , &
- 5249567.00000000 , &
- 5259038.00000000 , &
- 5268510.00000000 , &
- 5277981.00000000 , &
- 5287452.00000000 , &
- 5296923.00000000 , &
- 5306394.00000000 , &
- 5315865.00000000 , &
- 5325337.00000000 , &
- 5334808.00000000 , &
- 5344279.00000000 , &
- 5353750.00000000 , &
- 5363221.00000000 , &
- 5372692.00000000 , &
- 5382163.00000000 , &
- 5391635.00000000 , &
- 5401106.00000000 , &
- 5410577.00000000 , &
- 5420048.00000000 , &
- 5429519.00000000 , &
- 5438990.00000000 , &
- 5448462.00000000 , &
- 5457933.00000000 , &
- 5467404.00000000 /)
+  Mref_V_radius_ref( 601 : 630 ) = (/ &
+  5721000.d0 , &
+  5721000.d0 , &
+  5724572.d0 , &
+  5728143.d0 , &
+  5731714.d0 , &
+  5735286.d0 , &
+  5738857.d0 , &
+  5742428.d0 , &
+  5746000.d0 , &
+  5749572.d0 , &
+  5753143.d0 , &
+  5756714.d0 , &
+  5760286.d0 , &
+  5763857.d0 , &
+  5767428.d0 , &
+  5771000.d0 , &
+  5771000.d0 , &
+  5777334.d0 , &
+  5783666.d0 , &
+  5790000.d0 , &
+  5796334.d0 , &
+  5802666.d0 , &
+  5809000.d0 , &
+  5815334.d0 , &
+  5821666.d0 , &
+  5828000.d0 , &
+  5834334.d0 , &
+  5840666.d0 , &
+  5847000.d0 , &
+  5853334.d0 /)
 
- Mref_V%radius_ref( 571 : 600 ) = (/ &
- 5476875.00000000 , &
- 5486346.00000000 , &
- 5495817.00000000 , &
- 5505288.00000000 , &
- 5514760.00000000 , &
- 5524231.00000000 , &
- 5533702.00000000 , &
- 5543173.00000000 , &
- 5552644.00000000 , &
- 5562115.00000000 , &
- 5571587.00000000 , &
- 5581058.00000000 , &
- 5590529.00000000 , &
- 5600000.00000000 , &
- 5600000.00000000 , &
- 5607562.00000000 , &
- 5615125.00000000 , &
- 5622688.00000000 , &
- 5630250.00000000 , &
- 5637812.00000000 , &
- 5645375.00000000 , &
- 5652938.00000000 , &
- 5660500.00000000 , &
- 5668062.00000000 , &
- 5675625.00000000 , &
- 5683188.00000000 , &
- 5690750.00000000 , &
- 5698312.00000000 , &
- 5705875.00000000 , &
- 5713438.00000000 /)
+  Mref_V_radius_ref( 631 : 660 ) = (/ &
+  5859666.d0 , &
+  5866000.d0 , &
+  5872334.d0 , &
+  5878666.d0 , &
+  5885000.d0 , &
+  5891334.d0 , &
+  5897666.d0 , &
+  5904000.d0 , &
+  5910334.d0 , &
+  5916666.d0 , &
+  5923000.d0 , &
+  5929334.d0 , &
+  5935666.d0 , &
+  5942000.d0 , &
+  5948334.d0 , &
+  5954666.d0 , &
+  5961000.d0 , &
+  5961000.d0 , &
+  5967334.d0 , &
+  5973666.d0 , &
+  5980000.d0 , &
+  5986334.d0 , &
+  5992666.d0 , &
+  5999000.d0 , &
+  6005334.d0 , &
+  6011666.d0 , &
+  6018000.d0 , &
+  6024334.d0 , &
+  6030666.d0 , &
+  6037000.d0 /)
 
- Mref_V%radius_ref( 601 : 630 ) = (/ &
- 5721000.00000000 , &
- 5721000.00000000 , &
- 5724572.00000000 , &
- 5728143.00000000 , &
- 5731714.00000000 , &
- 5735286.00000000 , &
- 5738857.00000000 , &
- 5742428.00000000 , &
- 5746000.00000000 , &
- 5749572.00000000 , &
- 5753143.00000000 , &
- 5756714.00000000 , &
- 5760286.00000000 , &
- 5763857.00000000 , &
- 5767428.00000000 , &
- 5771000.00000000 , &
- 5771000.00000000 , &
- 5777334.00000000 , &
- 5783666.00000000 , &
- 5790000.00000000 , &
- 5796334.00000000 , &
- 5802666.00000000 , &
- 5809000.00000000 , &
- 5815334.00000000 , &
- 5821666.00000000 , &
- 5828000.00000000 , &
- 5834334.00000000 , &
- 5840666.00000000 , &
- 5847000.00000000 , &
- 5853334.00000000 /)
+  Mref_V_radius_ref( 661 : 690 ) = (/ &
+  6043334.d0 , &
+  6049666.d0 , &
+  6056000.d0 , &
+  6062334.d0 , &
+  6068666.d0 , &
+  6075000.d0 , &
+  6081334.d0 , &
+  6087666.d0 , &
+  6094000.d0 , &
+  6100334.d0 , &
+  6106666.d0 , &
+  6113000.d0 , &
+  6119334.d0 , &
+  6125666.d0 , &
+  6132000.d0 , &
+  6138334.d0 , &
+  6144666.d0 , &
+  6151000.d0 , &
+  6151000.d0 , &
+  6157087.d0 , &
+  6163174.d0 , &
+  6169261.d0 , &
+  6175348.d0 , &
+  6181435.d0 , &
+  6187522.d0 , &
+  6193609.d0 , &
+  6199696.d0 , &
+  6205783.d0 , &
+  6211870.d0 , &
+  6217957.d0 /)
 
- Mref_V%radius_ref( 631 : 660 ) = (/ &
- 5859666.00000000 , &
- 5866000.00000000 , &
- 5872334.00000000 , &
- 5878666.00000000 , &
- 5885000.00000000 , &
- 5891334.00000000 , &
- 5897666.00000000 , &
- 5904000.00000000 , &
- 5910334.00000000 , &
- 5916666.00000000 , &
- 5923000.00000000 , &
- 5929334.00000000 , &
- 5935666.00000000 , &
- 5942000.00000000 , &
- 5948334.00000000 , &
- 5954666.00000000 , &
- 5961000.00000000 , &
- 5961000.00000000 , &
- 5967334.00000000 , &
- 5973666.00000000 , &
- 5980000.00000000 , &
- 5986334.00000000 , &
- 5992666.00000000 , &
- 5999000.00000000 , &
- 6005334.00000000 , &
- 6011666.00000000 , &
- 6018000.00000000 , &
- 6024334.00000000 , &
- 6030666.00000000 , &
- 6037000.00000000 /)
+  Mref_V_radius_ref( 691 : 720 ) = (/ &
+  6224043.d0 , &
+  6230130.d0 , &
+  6236217.d0 , &
+  6242304.d0 , &
+  6248391.d0 , &
+  6254478.d0 , &
+  6260565.d0 , &
+  6266652.d0 , &
+  6272739.d0 , &
+  6278826.d0 , &
+  6284913.d0 , &
+  6291000.d0 , &
+  6291000.d0 , &
+  6294971.d0 , &
+  6298943.d0 , &
+  6302914.d0 , &
+  6306886.d0 , &
+  6310857.d0 , &
+  6314829.d0 , &
+  6318800.d0 , &
+  6322771.d0 , &
+  6326743.d0 , &
+  6330714.d0 , &
+  6334686.d0 , &
+  6338657.d0 , &
+  6342629.d0 , &
+  6346600.d0 , &
+  6346600.d0 , &
+  6347540.d0 , &
+  6348480.d0 /)
 
- Mref_V%radius_ref( 661 : 690 ) = (/ &
- 6043334.00000000 , &
- 6049666.00000000 , &
- 6056000.00000000 , &
- 6062334.00000000 , &
- 6068666.00000000 , &
- 6075000.00000000 , &
- 6081334.00000000 , &
- 6087666.00000000 , &
- 6094000.00000000 , &
- 6100334.00000000 , &
- 6106666.00000000 , &
- 6113000.00000000 , &
- 6119334.00000000 , &
- 6125666.00000000 , &
- 6132000.00000000 , &
- 6138334.00000000 , &
- 6144666.00000000 , &
- 6151000.00000000 , &
- 6151000.00000000 , &
- 6157087.00000000 , &
- 6163174.00000000 , &
- 6169261.00000000 , &
- 6175348.00000000 , &
- 6181435.00000000 , &
- 6187522.00000000 , &
- 6193609.00000000 , &
- 6199696.00000000 , &
- 6205783.00000000 , &
- 6211870.00000000 , &
- 6217957.00000000 /)
+  Mref_V_radius_ref( 721 : 750 ) = (/ &
+  6349420.d0 , &
+  6350360.d0 , &
+  6351300.d0 , &
+  6352240.d0 , &
+  6353180.d0 , &
+  6354120.d0 , &
+  6355060.d0 , &
+  6356000.d0 , &
+  6356000.d0 , &
+  6357200.d0 , &
+  6358400.d0 , &
+  6359600.d0 , &
+  6360800.d0 , &
+  6362000.d0 , &
+  6363200.d0 , &
+  6364400.d0 , &
+  6365600.d0 , &
+  6366800.d0 , &
+  6368000.d0 , &
+  6368000.d0 , &
+  6368300.d0 , &
+  6368600.d0 , &
+  6368900.d0 , &
+  6369200.d0 , &
+  6369500.d0 , &
+  6369800.d0 , &
+  6370100.d0 , &
+  6370400.d0 , &
+  6370700.d0 , &
+  6371000.d0 /)
 
- Mref_V%radius_ref( 691 : 720 ) = (/ &
- 6224043.00000000 , &
- 6230130.00000000 , &
- 6236217.00000000 , &
- 6242304.00000000 , &
- 6248391.00000000 , &
- 6254478.00000000 , &
- 6260565.00000000 , &
- 6266652.00000000 , &
- 6272739.00000000 , &
- 6278826.00000000 , &
- 6284913.00000000 , &
- 6291000.00000000 , &
- 6291000.00000000 , &
- 6294971.00000000 , &
- 6298943.00000000 , &
- 6302914.00000000 , &
- 6306886.00000000 , &
- 6310857.00000000 , &
- 6314829.00000000 , &
- 6318800.00000000 , &
- 6322771.00000000 , &
- 6326743.00000000 , &
- 6330714.00000000 , &
- 6334686.00000000 , &
- 6338657.00000000 , &
- 6342629.00000000 , &
- 6346600.00000000 , &
- 6346600.00000000 , &
- 6347540.00000000 , &
- 6348480.00000000 /)
+  Mref_V_density_ref( 1 : 30 ) = (/ &
+  13088.48d0 , &
+  13088.47d0 , &
+  13088.44d0 , &
+  13088.39d0 , &
+  13088.32d0 , &
+  13088.22d0 , &
+  13088.11d0 , &
+  13087.98d0 , &
+  13087.83d0 , &
+  13087.66d0 , &
+  13087.46d0 , &
+  13087.25d0 , &
+  13087.02d0 , &
+  13086.76d0 , &
+  13086.49d0 , &
+  13086.2d0 , &
+  13085.88d0 , &
+  13085.55d0 , &
+  13085.19d0 , &
+  13084.82d0 , &
+  13084.42d0 , &
+  13084.01d0 , &
+  13083.57d0 , &
+  13083.11d0 , &
+  13082.64d0 , &
+  13082.14d0 , &
+  13081.62d0 , &
+  13081.09d0 , &
+  13080.53d0 , &
+  13079.95d0 /)
 
- Mref_V%radius_ref( 721 : 750 ) = (/ &
- 6349420.00000000 , &
- 6350360.00000000 , &
- 6351300.00000000 , &
- 6352240.00000000 , &
- 6353180.00000000 , &
- 6354120.00000000 , &
- 6355060.00000000 , &
- 6356000.00000000 , &
- 6356000.00000000 , &
- 6357200.00000000 , &
- 6358400.00000000 , &
- 6359600.00000000 , &
- 6360800.00000000 , &
- 6362000.00000000 , &
- 6363200.00000000 , &
- 6364400.00000000 , &
- 6365600.00000000 , &
- 6366800.00000000 , &
- 6368000.00000000 , &
- 6368000.00000000 , &
- 6368300.00000000 , &
- 6368600.00000000 , &
- 6368900.00000000 , &
- 6369200.00000000 , &
- 6369500.00000000 , &
- 6369800.00000000 , &
- 6370100.00000000 , &
- 6370400.00000000 , &
- 6370700.00000000 , &
- 6371000.00000000 /)
+  Mref_V_density_ref( 31 : 60 ) = (/ &
+  13079.35d0 , &
+  13078.73d0 , &
+  13078.09d0 , &
+  13077.44d0 , &
+  13076.76d0 , &
+  13076.06d0 , &
+  13075.34d0 , &
+  13074.6d0 , &
+  13073.84d0 , &
+  13073.06d0 , &
+  13072.25d0 , &
+  13071.43d0 , &
+  13070.59d0 , &
+  13069.73d0 , &
+  13068.85d0 , &
+  13067.95d0 , &
+  13067.02d0 , &
+  13066.08d0 , &
+  13065.12d0 , &
+  13064.13d0 , &
+  13063.13d0 , &
+  13062.1d0 , &
+  13061.06d0 , &
+  13060.d0 , &
+  13058.91d0 , &
+  13057.81d0 , &
+  13056.68d0 , &
+  13055.53d0 , &
+  13054.37d0 , &
+  13053.18d0 /)
 
- Mref_V%density_ref( 1 : 30 ) = (/ &
- 13088.4800000000 , &
- 13088.4700000000 , &
- 13088.4400000000 , &
- 13088.3900000000 , &
- 13088.3200000000 , &
- 13088.2200000000 , &
- 13088.1100000000 , &
- 13087.9800000000 , &
- 13087.8300000000 , &
- 13087.6600000000 , &
- 13087.4600000000 , &
- 13087.2500000000 , &
- 13087.0200000000 , &
- 13086.7600000000 , &
- 13086.4900000000 , &
- 13086.2000000000 , &
- 13085.8800000000 , &
- 13085.5500000000 , &
- 13085.1900000000 , &
- 13084.8200000000 , &
- 13084.4200000000 , &
- 13084.0100000000 , &
- 13083.5700000000 , &
- 13083.1100000000 , &
- 13082.6400000000 , &
- 13082.1400000000 , &
- 13081.6200000000 , &
- 13081.0900000000 , &
- 13080.5300000000 , &
- 13079.9500000000 /)
+  Mref_V_density_ref( 61 : 90 ) = (/ &
+  13051.98d0 , &
+  13050.75d0 , &
+  13049.5d0 , &
+  13048.23d0 , &
+  13046.95d0 , &
+  13045.64d0 , &
+  13044.31d0 , &
+  13042.96d0 , &
+  13041.59d0 , &
+  13040.2d0 , &
+  13038.79d0 , &
+  13037.36d0 , &
+  13035.91d0 , &
+  13034.44d0 , &
+  13032.95d0 , &
+  13031.44d0 , &
+  13029.91d0 , &
+  13028.36d0 , &
+  13026.79d0 , &
+  13025.2d0 , &
+  13023.58d0 , &
+  13021.95d0 , &
+  13020.3d0 , &
+  13018.63d0 , &
+  13016.93d0 , &
+  13015.22d0 , &
+  13013.49d0 , &
+  13011.73d0 , &
+  13009.96d0 , &
+  13008.16d0 /)
 
- Mref_V%density_ref( 31 : 60 ) = (/ &
- 13079.3500000000 , &
- 13078.7300000000 , &
- 13078.0900000000 , &
- 13077.4400000000 , &
- 13076.7600000000 , &
- 13076.0600000000 , &
- 13075.3400000000 , &
- 13074.6000000000 , &
- 13073.8400000000 , &
- 13073.0600000000 , &
- 13072.2500000000 , &
- 13071.4300000000 , &
- 13070.5900000000 , &
- 13069.7300000000 , &
- 13068.8500000000 , &
- 13067.9500000000 , &
- 13067.0200000000 , &
- 13066.0800000000 , &
- 13065.1200000000 , &
- 13064.1300000000 , &
- 13063.1300000000 , &
- 13062.1000000000 , &
- 13061.0600000000 , &
- 13060.0000000000 , &
- 13058.9100000000 , &
- 13057.8100000000 , &
- 13056.6800000000 , &
- 13055.5300000000 , &
- 13054.3700000000 , &
- 13053.1800000000 /)
+  Mref_V_density_ref( 91 : 120 ) = (/ &
+  13006.35d0 , &
+  13004.51d0 , &
+  13002.66d0 , &
+  13000.78d0 , &
+  12998.88d0 , &
+  12996.97d0 , &
+  12995.03d0 , &
+  12993.07d0 , &
+  12991.1d0 , &
+  12989.1d0 , &
+  12987.08d0 , &
+  12985.04d0 , &
+  12982.99d0 , &
+  12980.91d0 , &
+  12978.81d0 , &
+  12976.69d0 , &
+  12974.55d0 , &
+  12972.39d0 , &
+  12970.21d0 , &
+  12968.01d0 , &
+  12965.79d0 , &
+  12963.55d0 , &
+  12961.29d0 , &
+  12959.01d0 , &
+  12956.7d0 , &
+  12954.38d0 , &
+  12952.04d0 , &
+  12949.68d0 , &
+  12947.29d0 , &
+  12944.89d0 /)
 
- Mref_V%density_ref( 61 : 90 ) = (/ &
- 13051.9800000000 , &
- 13050.7500000000 , &
- 13049.5000000000 , &
- 13048.2300000000 , &
- 13046.9500000000 , &
- 13045.6400000000 , &
- 13044.3100000000 , &
- 13042.9600000000 , &
- 13041.5900000000 , &
- 13040.2000000000 , &
- 13038.7900000000 , &
- 13037.3600000000 , &
- 13035.9100000000 , &
- 13034.4400000000 , &
- 13032.9500000000 , &
- 13031.4400000000 , &
- 13029.9100000000 , &
- 13028.3600000000 , &
- 13026.7900000000 , &
- 13025.2000000000 , &
- 13023.5800000000 , &
- 13021.9500000000 , &
- 13020.3000000000 , &
- 13018.6300000000 , &
- 13016.9300000000 , &
- 13015.2200000000 , &
- 13013.4900000000 , &
- 13011.7300000000 , &
- 13009.9600000000 , &
- 13008.1600000000 /)
+  Mref_V_density_ref( 121 : 150 ) = (/ &
+  12942.47d0 , &
+  12940.02d0 , &
+  12937.56d0 , &
+  12935.08d0 , &
+  12932.57d0 , &
+  12930.05d0 , &
+  12927.5d0 , &
+  12924.94d0 , &
+  12922.35d0 , &
+  12919.75d0 , &
+  12917.12d0 , &
+  12914.47d0 , &
+  12911.81d0 , &
+  12909.12d0 , &
+  12906.41d0 , &
+  12903.68d0 , &
+  12900.94d0 , &
+  12898.17d0 , &
+  12895.38d0 , &
+  12892.57d0 , &
+  12889.74d0 , &
+  12886.89d0 , &
+  12884.02d0 , &
+  12881.13d0 , &
+  12878.22d0 , &
+  12875.29d0 , &
+  12872.34d0 , &
+  12869.37d0 , &
+  12866.38d0 , &
+  12863.37d0 /)
 
- Mref_V%density_ref( 91 : 120 ) = (/ &
- 13006.3500000000 , &
- 13004.5100000000 , &
- 13002.6600000000 , &
- 13000.7800000000 , &
- 12998.8800000000 , &
- 12996.9700000000 , &
- 12995.0300000000 , &
- 12993.0700000000 , &
- 12991.1000000000 , &
- 12989.1000000000 , &
- 12987.0800000000 , &
- 12985.0400000000 , &
- 12982.9900000000 , &
- 12980.9100000000 , &
- 12978.8100000000 , &
- 12976.6900000000 , &
- 12974.5500000000 , &
- 12972.3900000000 , &
- 12970.2100000000 , &
- 12968.0100000000 , &
- 12965.7900000000 , &
- 12963.5500000000 , &
- 12961.2900000000 , &
- 12959.0100000000 , &
- 12956.7000000000 , &
- 12954.3800000000 , &
- 12952.0400000000 , &
- 12949.6800000000 , &
- 12947.2900000000 , &
- 12944.8900000000 /)
+  Mref_V_density_ref( 151 : 180 ) = (/ &
+  12860.34d0 , &
+  12857.29d0 , &
+  12854.21d0 , &
+  12851.12d0 , &
+  12848.01d0 , &
+  12844.88d0 , &
+  12841.72d0 , &
+  12838.55d0 , &
+  12835.35d0 , &
+  12832.14d0 , &
+  12828.91d0 , &
+  12825.65d0 , &
+  12822.38d0 , &
+  12819.08d0 , &
+  12815.76d0 , &
+  12812.43d0 , &
+  12809.07d0 , &
+  12805.7d0 , &
+  12802.3d0 , &
+  12798.88d0 , &
+  12795.44d0 , &
+  12791.99d0 , &
+  12788.51d0 , &
+  12785.01d0 , &
+  12781.49d0 , &
+  12777.95d0 , &
+  12774.4d0 , &
+  12770.82d0 , &
+  12767.22d0 , &
+  12763.6d0 /)
 
- Mref_V%density_ref( 121 : 150 ) = (/ &
- 12942.4700000000 , &
- 12940.0200000000 , &
- 12937.5600000000 , &
- 12935.0800000000 , &
- 12932.5700000000 , &
- 12930.0500000000 , &
- 12927.5000000000 , &
- 12924.9400000000 , &
- 12922.3500000000 , &
- 12919.7500000000 , &
- 12917.1200000000 , &
- 12914.4700000000 , &
- 12911.8100000000 , &
- 12909.1200000000 , &
- 12906.4100000000 , &
- 12903.6800000000 , &
- 12900.9400000000 , &
- 12898.1700000000 , &
- 12895.3800000000 , &
- 12892.5700000000 , &
- 12889.7400000000 , &
- 12886.8900000000 , &
- 12884.0200000000 , &
- 12881.1300000000 , &
- 12878.2200000000 , &
- 12875.2900000000 , &
- 12872.3400000000 , &
- 12869.3700000000 , &
- 12866.3800000000 , &
- 12863.3700000000 /)
+  Mref_V_density_ref( 181 : 210 ) = (/ &
+  12166.35d0 , &
+  12159.77d0 , &
+  12153.14d0 , &
+  12146.45d0 , &
+  12139.71d0 , &
+  12132.91d0 , &
+  12126.05d0 , &
+  12119.14d0 , &
+  12112.18d0 , &
+  12105.15d0 , &
+  12098.07d0 , &
+  12090.93d0 , &
+  12083.73d0 , &
+  12076.48d0 , &
+  12069.17d0 , &
+  12061.8d0 , &
+  12054.37d0 , &
+  12046.88d0 , &
+  12039.33d0 , &
+  12031.72d0 , &
+  12024.05d0 , &
+  12016.33d0 , &
+  12008.54d0 , &
+  12000.69d0 , &
+  11992.78d0 , &
+  11984.81d0 , &
+  11976.78d0 , &
+  11968.68d0 , &
+  11960.53d0 , &
+  11952.31d0 /)
 
- Mref_V%density_ref( 151 : 180 ) = (/ &
- 12860.3400000000 , &
- 12857.2900000000 , &
- 12854.2100000000 , &
- 12851.1200000000 , &
- 12848.0100000000 , &
- 12844.8800000000 , &
- 12841.7200000000 , &
- 12838.5500000000 , &
- 12835.3500000000 , &
- 12832.1400000000 , &
- 12828.9100000000 , &
- 12825.6500000000 , &
- 12822.3800000000 , &
- 12819.0800000000 , &
- 12815.7600000000 , &
- 12812.4300000000 , &
- 12809.0700000000 , &
- 12805.7000000000 , &
- 12802.3000000000 , &
- 12798.8800000000 , &
- 12795.4400000000 , &
- 12791.9900000000 , &
- 12788.5100000000 , &
- 12785.0100000000 , &
- 12781.4900000000 , &
- 12777.9500000000 , &
- 12774.4000000000 , &
- 12770.8200000000 , &
- 12767.2200000000 , &
- 12763.6000000000 /)
+  Mref_V_density_ref( 211 : 240 ) = (/ &
+  11944.03d0 , &
+  11935.69d0 , &
+  11927.28d0 , &
+  11918.81d0 , &
+  11910.28d0 , &
+  11901.68d0 , &
+  11893.02d0 , &
+  11884.3d0 , &
+  11875.51d0 , &
+  11866.66d0 , &
+  11857.74d0 , &
+  11848.75d0 , &
+  11839.7d0 , &
+  11830.58d0 , &
+  11821.4d0 , &
+  11812.15d0 , &
+  11802.84d0 , &
+  11793.45d0 , &
+  11784.01d0 , &
+  11774.49d0 , &
+  11764.9d0 , &
+  11755.25d0 , &
+  11745.53d0 , &
+  11735.74d0 , &
+  11725.88d0 , &
+  11715.95d0 , &
+  11705.95d0 , &
+  11695.89d0 , &
+  11685.75d0 , &
+  11675.54d0 /)
 
- Mref_V%density_ref( 181 : 210 ) = (/ &
- 12166.3500000000 , &
- 12159.7700000000 , &
- 12153.1400000000 , &
- 12146.4500000000 , &
- 12139.7100000000 , &
- 12132.9100000000 , &
- 12126.0500000000 , &
- 12119.1400000000 , &
- 12112.1800000000 , &
- 12105.1500000000 , &
- 12098.0700000000 , &
- 12090.9300000000 , &
- 12083.7300000000 , &
- 12076.4800000000 , &
- 12069.1700000000 , &
- 12061.8000000000 , &
- 12054.3700000000 , &
- 12046.8800000000 , &
- 12039.3300000000 , &
- 12031.7200000000 , &
- 12024.0500000000 , &
- 12016.3300000000 , &
- 12008.5400000000 , &
- 12000.6900000000 , &
- 11992.7800000000 , &
- 11984.8100000000 , &
- 11976.7800000000 , &
- 11968.6800000000 , &
- 11960.5300000000 , &
- 11952.3100000000 /)
+  Mref_V_density_ref( 241 : 270 ) = (/ &
+  11665.26d0 , &
+  11654.92d0 , &
+  11644.5d0 , &
+  11634.01d0 , &
+  11623.44d0 , &
+  11612.81d0 , &
+  11602.1d0 , &
+  11591.32d0 , &
+  11580.47d0 , &
+  11569.55d0 , &
+  11558.55d0 , &
+  11547.48d0 , &
+  11536.34d0 , &
+  11525.12d0 , &
+  11513.83d0 , &
+  11502.46d0 , &
+  11491.02d0 , &
+  11479.51d0 , &
+  11467.91d0 , &
+  11456.25d0 , &
+  11444.5d0 , &
+  11432.69d0 , &
+  11420.79d0 , &
+  11408.82d0 , &
+  11396.77d0 , &
+  11384.64d0 , &
+  11372.44d0 , &
+  11360.16d0 , &
+  11347.8d0 , &
+  11335.37d0 /)
 
- Mref_V%density_ref( 211 : 240 ) = (/ &
- 11944.0300000000 , &
- 11935.6900000000 , &
- 11927.2800000000 , &
- 11918.8100000000 , &
- 11910.2800000000 , &
- 11901.6800000000 , &
- 11893.0200000000 , &
- 11884.3000000000 , &
- 11875.5100000000 , &
- 11866.6600000000 , &
- 11857.7400000000 , &
- 11848.7500000000 , &
- 11839.7000000000 , &
- 11830.5800000000 , &
- 11821.4000000000 , &
- 11812.1500000000 , &
- 11802.8400000000 , &
- 11793.4500000000 , &
- 11784.0100000000 , &
- 11774.4900000000 , &
- 11764.9000000000 , &
- 11755.2500000000 , &
- 11745.5300000000 , &
- 11735.7400000000 , &
- 11725.8800000000 , &
- 11715.9500000000 , &
- 11705.9500000000 , &
- 11695.8900000000 , &
- 11685.7500000000 , &
- 11675.5400000000 /)
+  Mref_V_density_ref( 271 : 300 ) = (/ &
+  11322.85d0 , &
+  11310.26d0 , &
+  11297.58d0 , &
+  11284.83d0 , &
+  11272.d0 , &
+  11259.09d0 , &
+  11246.1d0 , &
+  11233.03d0 , &
+  11219.87d0 , &
+  11206.64d0 , &
+  11193.33d0 , &
+  11179.93d0 , &
+  11166.45d0 , &
+  11152.89d0 , &
+  11139.25d0 , &
+  11125.53d0 , &
+  11111.72d0 , &
+  11097.83d0 , &
+  11083.86d0 , &
+  11069.8d0 , &
+  11055.66d0 , &
+  11041.44d0 , &
+  11027.13d0 , &
+  11012.74d0 , &
+  10998.26d0 , &
+  10983.7d0 , &
+  10969.05d0 , &
+  10954.32d0 , &
+  10939.5d0 , &
+  10924.59d0 /)
 
- Mref_V%density_ref( 241 : 270 ) = (/ &
- 11665.2600000000 , &
- 11654.9200000000 , &
- 11644.5000000000 , &
- 11634.0100000000 , &
- 11623.4400000000 , &
- 11612.8100000000 , &
- 11602.1000000000 , &
- 11591.3200000000 , &
- 11580.4700000000 , &
- 11569.5500000000 , &
- 11558.5500000000 , &
- 11547.4800000000 , &
- 11536.3400000000 , &
- 11525.1200000000 , &
- 11513.8300000000 , &
- 11502.4600000000 , &
- 11491.0200000000 , &
- 11479.5100000000 , &
- 11467.9100000000 , &
- 11456.2500000000 , &
- 11444.5000000000 , &
- 11432.6900000000 , &
- 11420.7900000000 , &
- 11408.8200000000 , &
- 11396.7700000000 , &
- 11384.6400000000 , &
- 11372.4400000000 , &
- 11360.1600000000 , &
- 11347.8000000000 , &
- 11335.3700000000 /)
+  Mref_V_density_ref( 301 : 330 ) = (/ &
+  10909.6d0 , &
+  10894.52d0 , &
+  10879.35d0 , &
+  10864.1d0 , &
+  10848.76d0 , &
+  10833.33d0 , &
+  10817.81d0 , &
+  10802.21d0 , &
+  10786.51d0 , &
+  10770.73d0 , &
+  10754.86d0 , &
+  10738.9d0 , &
+  10722.85d0 , &
+  10706.71d0 , &
+  10690.48d0 , &
+  10674.16d0 , &
+  10657.75d0 , &
+  10641.24d0 , &
+  10624.65d0 , &
+  10607.96d0 , &
+  10591.19d0 , &
+  10574.32d0 , &
+  10557.36d0 , &
+  10540.3d0 , &
+  10523.16d0 , &
+  10505.92d0 , &
+  10488.58d0 , &
+  10471.15d0 , &
+  10453.63d0 , &
+  10436.02d0 /)
 
- Mref_V%density_ref( 271 : 300 ) = (/ &
- 11322.8500000000 , &
- 11310.2600000000 , &
- 11297.5800000000 , &
- 11284.8300000000 , &
- 11272.0000000000 , &
- 11259.0900000000 , &
- 11246.1000000000 , &
- 11233.0300000000 , &
- 11219.8700000000 , &
- 11206.6400000000 , &
- 11193.3300000000 , &
- 11179.9300000000 , &
- 11166.4500000000 , &
- 11152.8900000000 , &
- 11139.2500000000 , &
- 11125.5300000000 , &
- 11111.7200000000 , &
- 11097.8300000000 , &
- 11083.8600000000 , &
- 11069.8000000000 , &
- 11055.6600000000 , &
- 11041.4400000000 , &
- 11027.1300000000 , &
- 11012.7400000000 , &
- 10998.2600000000 , &
- 10983.7000000000 , &
- 10969.0500000000 , &
- 10954.3200000000 , &
- 10939.5000000000 , &
- 10924.5900000000 /)
+  Mref_V_density_ref( 331 : 360 ) = (/ &
+  10418.31d0 , &
+  10400.51d0 , &
+  10382.61d0 , &
+  10364.61d0 , &
+  10346.52d0 , &
+  10328.34d0 , &
+  10310.05d0 , &
+  10291.68d0 , &
+  10273.2d0 , &
+  10254.63d0 , &
+  10235.96d0 , &
+  10217.2d0 , &
+  10198.33d0 , &
+  10179.37d0 , &
+  10160.31d0 , &
+  10141.15d0 , &
+  10121.9d0 , &
+  10102.54d0 , &
+  10083.09d0 , &
+  10063.53d0 , &
+  10043.88d0 , &
+  10024.12d0 , &
+  10004.27d0 , &
+  9984.32d0 , &
+  9964.26d0 , &
+  9944.1d0 , &
+  9923.84d0 , &
+  9903.48d0 , &
+  5566.45d0 , &
+  5561.75d0 /)
 
- Mref_V%density_ref( 301 : 330 ) = (/ &
- 10909.6000000000 , &
- 10894.5200000000 , &
- 10879.3500000000 , &
- 10864.1000000000 , &
- 10848.7600000000 , &
- 10833.3300000000 , &
- 10817.8100000000 , &
- 10802.2100000000 , &
- 10786.5100000000 , &
- 10770.7300000000 , &
- 10754.8600000000 , &
- 10738.9000000000 , &
- 10722.8500000000 , &
- 10706.7100000000 , &
- 10690.4800000000 , &
- 10674.1600000000 , &
- 10657.7500000000 , &
- 10641.2400000000 , &
- 10624.6500000000 , &
- 10607.9600000000 , &
- 10591.1900000000 , &
- 10574.3200000000 , &
- 10557.3600000000 , &
- 10540.3000000000 , &
- 10523.1600000000 , &
- 10505.9200000000 , &
- 10488.5800000000 , &
- 10471.1500000000 , &
- 10453.6300000000 , &
- 10436.0200000000 /)
+  Mref_V_density_ref( 361 : 390 ) = (/ &
+  5557.05d0 , &
+  5552.36d0 , &
+  5547.66d0 , &
+  5542.97d0 , &
+  5538.28d0 , &
+  5533.59d0 , &
+  5528.9d0 , &
+  5524.21d0 , &
+  5519.53d0 , &
+  5514.85d0 , &
+  5510.16d0 , &
+  5505.48d0 , &
+  5500.81d0 , &
+  5496.13d0 , &
+  5491.45d0 , &
+  5491.45d0 , &
+  5486.73d0 , &
+  5482.01d0 , &
+  5477.29d0 , &
+  5472.57d0 , &
+  5467.85d0 , &
+  5463.13d0 , &
+  5458.42d0 , &
+  5453.7d0 , &
+  5448.99d0 , &
+  5444.27d0 , &
+  5439.56d0 , &
+  5434.85d0 , &
+  5430.13d0 , &
+  5425.42d0 /)
 
- Mref_V%density_ref( 331 : 360 ) = (/ &
- 10418.3100000000 , &
- 10400.5100000000 , &
- 10382.6100000000 , &
- 10364.6100000000 , &
- 10346.5200000000 , &
- 10328.3400000000 , &
- 10310.0500000000 , &
- 10291.6800000000 , &
- 10273.2000000000 , &
- 10254.6300000000 , &
- 10235.9600000000 , &
- 10217.2000000000 , &
- 10198.3300000000 , &
- 10179.3700000000 , &
- 10160.3100000000 , &
- 10141.1500000000 , &
- 10121.9000000000 , &
- 10102.5400000000 , &
- 10083.0900000000 , &
- 10063.5300000000 , &
- 10043.8800000000 , &
- 10024.1200000000 , &
- 10004.2700000000 , &
- 9984.32000000000 , &
- 9964.26000000000 , &
- 9944.10000000000 , &
- 9923.84000000000 , &
- 9903.48000000000 , &
- 5566.45000000000 , &
- 5561.75000000000 /)
+  Mref_V_density_ref( 391 : 420 ) = (/ &
+  5420.71d0 , &
+  5416.d0 , &
+  5411.29d0 , &
+  5406.57d0 , &
+  5401.86d0 , &
+  5397.15d0 , &
+  5392.44d0 , &
+  5387.73d0 , &
+  5383.02d0 , &
+  5378.3d0 , &
+  5373.59d0 , &
+  5368.88d0 , &
+  5364.17d0 , &
+  5359.45d0 , &
+  5354.74d0 , &
+  5350.02d0 , &
+  5345.31d0 , &
+  5340.59d0 , &
+  5335.87d0 , &
+  5331.16d0 , &
+  5326.44d0 , &
+  5321.72d0 , &
+  5317.d0 , &
+  5312.28d0 , &
+  5307.55d0 , &
+  5302.83d0 , &
+  5298.1d0 , &
+  5293.38d0 , &
+  5288.65d0 , &
+  5283.92d0 /)
 
- Mref_V%density_ref( 361 : 390 ) = (/ &
- 5557.05000000000 , &
- 5552.36000000000 , &
- 5547.66000000000 , &
- 5542.97000000000 , &
- 5538.28000000000 , &
- 5533.59000000000 , &
- 5528.90000000000 , &
- 5524.21000000000 , &
- 5519.53000000000 , &
- 5514.85000000000 , &
- 5510.16000000000 , &
- 5505.48000000000 , &
- 5500.81000000000 , &
- 5496.13000000000 , &
- 5491.45000000000 , &
- 5491.45000000000 , &
- 5486.73000000000 , &
- 5482.01000000000 , &
- 5477.29000000000 , &
- 5472.57000000000 , &
- 5467.85000000000 , &
- 5463.13000000000 , &
- 5458.42000000000 , &
- 5453.70000000000 , &
- 5448.99000000000 , &
- 5444.27000000000 , &
- 5439.56000000000 , &
- 5434.85000000000 , &
- 5430.13000000000 , &
- 5425.42000000000 /)
+  Mref_V_density_ref( 421 : 450 ) = (/ &
+  5279.19d0 , &
+  5274.45d0 , &
+  5269.72d0 , &
+  5264.98d0 , &
+  5260.25d0 , &
+  5255.51d0 , &
+  5250.77d0 , &
+  5246.02d0 , &
+  5241.28d0 , &
+  5236.53d0 , &
+  5231.78d0 , &
+  5227.03d0 , &
+  5222.27d0 , &
+  5217.52d0 , &
+  5212.76d0 , &
+  5208.d0 , &
+  5203.23d0 , &
+  5198.47d0 , &
+  5193.7d0 , &
+  5188.93d0 , &
+  5184.15d0 , &
+  5179.38d0 , &
+  5174.6d0 , &
+  5169.82d0 , &
+  5165.03d0 , &
+  5160.24d0 , &
+  5155.45d0 , &
+  5150.65d0 , &
+  5145.86d0 , &
+  5141.06d0 /)
 
- Mref_V%density_ref( 391 : 420 ) = (/ &
- 5420.71000000000 , &
- 5416.00000000000 , &
- 5411.29000000000 , &
- 5406.57000000000 , &
- 5401.86000000000 , &
- 5397.15000000000 , &
- 5392.44000000000 , &
- 5387.73000000000 , &
- 5383.02000000000 , &
- 5378.30000000000 , &
- 5373.59000000000 , &
- 5368.88000000000 , &
- 5364.17000000000 , &
- 5359.45000000000 , &
- 5354.74000000000 , &
- 5350.02000000000 , &
- 5345.31000000000 , &
- 5340.59000000000 , &
- 5335.87000000000 , &
- 5331.16000000000 , &
- 5326.44000000000 , &
- 5321.72000000000 , &
- 5317.00000000000 , &
- 5312.28000000000 , &
- 5307.55000000000 , &
- 5302.83000000000 , &
- 5298.10000000000 , &
- 5293.38000000000 , &
- 5288.65000000000 , &
- 5283.92000000000 /)
+  Mref_V_density_ref( 451 : 480 ) = (/ &
+  5136.25d0 , &
+  5131.44d0 , &
+  5126.63d0 , &
+  5121.82d0 , &
+  5117.d0 , &
+  5112.18d0 , &
+  5107.35d0 , &
+  5102.52d0 , &
+  5097.69d0 , &
+  5092.85d0 , &
+  5088.01d0 , &
+  5083.16d0 , &
+  5078.31d0 , &
+  5073.46d0 , &
+  5068.6d0 , &
+  5063.74d0 , &
+  5058.87d0 , &
+  5054.d0 , &
+  5049.13d0 , &
+  5044.25d0 , &
+  5039.36d0 , &
+  5034.47d0 , &
+  5029.58d0 , &
+  5024.68d0 , &
+  5019.78d0 , &
+  5014.87d0 , &
+  5009.96d0 , &
+  5005.04d0 , &
+  5000.12d0 , &
+  4995.19d0 /)
 
- Mref_V%density_ref( 421 : 450 ) = (/ &
- 5279.19000000000 , &
- 5274.45000000000 , &
- 5269.72000000000 , &
- 5264.98000000000 , &
- 5260.25000000000 , &
- 5255.51000000000 , &
- 5250.77000000000 , &
- 5246.02000000000 , &
- 5241.28000000000 , &
- 5236.53000000000 , &
- 5231.78000000000 , &
- 5227.03000000000 , &
- 5222.27000000000 , &
- 5217.52000000000 , &
- 5212.76000000000 , &
- 5208.00000000000 , &
- 5203.23000000000 , &
- 5198.47000000000 , &
- 5193.70000000000 , &
- 5188.93000000000 , &
- 5184.15000000000 , &
- 5179.38000000000 , &
- 5174.60000000000 , &
- 5169.82000000000 , &
- 5165.03000000000 , &
- 5160.24000000000 , &
- 5155.45000000000 , &
- 5150.65000000000 , &
- 5145.86000000000 , &
- 5141.06000000000 /)
+  Mref_V_density_ref( 481 : 510 ) = (/ &
+  4990.26d0 , &
+  4985.32d0 , &
+  4980.38d0 , &
+  4975.43d0 , &
+  4970.47d0 , &
+  4965.51d0 , &
+  4960.55d0 , &
+  4955.58d0 , &
+  4950.6d0 , &
+  4945.62d0 , &
+  4940.63d0 , &
+  4935.64d0 , &
+  4930.64d0 , &
+  4925.63d0 , &
+  4920.62d0 , &
+  4915.6d0 , &
+  4910.58d0 , &
+  4905.55d0 , &
+  4900.51d0 , &
+  4895.47d0 , &
+  4890.42d0 , &
+  4885.37d0 , &
+  4880.31d0 , &
+  4875.24d0 , &
+  4870.16d0 , &
+  4865.08d0 , &
+  4859.99d0 , &
+  4854.9d0 , &
+  4849.8d0 , &
+  4844.69d0 /)
 
- Mref_V%density_ref( 451 : 480 ) = (/ &
- 5136.25000000000 , &
- 5131.44000000000 , &
- 5126.63000000000 , &
- 5121.82000000000 , &
- 5117.00000000000 , &
- 5112.18000000000 , &
- 5107.35000000000 , &
- 5102.52000000000 , &
- 5097.69000000000 , &
- 5092.85000000000 , &
- 5088.01000000000 , &
- 5083.16000000000 , &
- 5078.31000000000 , &
- 5073.46000000000 , &
- 5068.60000000000 , &
- 5063.74000000000 , &
- 5058.87000000000 , &
- 5054.00000000000 , &
- 5049.13000000000 , &
- 5044.25000000000 , &
- 5039.36000000000 , &
- 5034.47000000000 , &
- 5029.58000000000 , &
- 5024.68000000000 , &
- 5019.78000000000 , &
- 5014.87000000000 , &
- 5009.96000000000 , &
- 5005.04000000000 , &
- 5000.12000000000 , &
- 4995.19000000000 /)
+  Mref_V_density_ref( 511 : 540 ) = (/ &
+  4839.57d0 , &
+  4834.45d0 , &
+  4829.32d0 , &
+  4824.18d0 , &
+  4819.04d0 , &
+  4813.88d0 , &
+  4808.73d0 , &
+  4803.56d0 , &
+  4798.39d0 , &
+  4793.2d0 , &
+  4788.02d0 , &
+  4782.82d0 , &
+  4777.61d0 , &
+  4772.4d0 , &
+  4767.18d0 , &
+  4761.95d0 , &
+  4756.72d0 , &
+  4751.47d0 , &
+  4746.22d0 , &
+  4740.95d0 , &
+  4735.68d0 , &
+  4730.4d0 , &
+  4725.1d0 , &
+  4719.8d0 , &
+  4714.48d0 , &
+  4709.15d0 , &
+  4703.81d0 , &
+  4698.44d0 , &
+  4693.08d0 , &
+  4687.69d0 /)
 
- Mref_V%density_ref( 481 : 510 ) = (/ &
- 4990.26000000000 , &
- 4985.32000000000 , &
- 4980.38000000000 , &
- 4975.43000000000 , &
- 4970.47000000000 , &
- 4965.51000000000 , &
- 4960.55000000000 , &
- 4955.58000000000 , &
- 4950.60000000000 , &
- 4945.62000000000 , &
- 4940.63000000000 , &
- 4935.64000000000 , &
- 4930.64000000000 , &
- 4925.63000000000 , &
- 4920.62000000000 , &
- 4915.60000000000 , &
- 4910.58000000000 , &
- 4905.55000000000 , &
- 4900.51000000000 , &
- 4895.47000000000 , &
- 4890.42000000000 , &
- 4885.37000000000 , &
- 4880.31000000000 , &
- 4875.24000000000 , &
- 4870.16000000000 , &
- 4865.08000000000 , &
- 4859.99000000000 , &
- 4854.90000000000 , &
- 4849.80000000000 , &
- 4844.69000000000 /)
+  Mref_V_density_ref( 541 : 570 ) = (/ &
+  4682.29d0 , &
+  4676.87d0 , &
+  4671.44d0 , &
+  4665.99d0 , &
+  4660.52d0 , &
+  4655.03d0 , &
+  4649.52d0 , &
+  4644.d0 , &
+  4638.46d0 , &
+  4632.89d0 , &
+  4627.31d0 , &
+  4621.7d0 , &
+  4616.08d0 , &
+  4610.44d0 , &
+  4604.76d0 , &
+  4599.08d0 , &
+  4593.36d0 , &
+  4587.63d0 , &
+  4581.86d0 , &
+  4576.07d0 , &
+  4570.26d0 , &
+  4564.43d0 , &
+  4558.56d0 , &
+  4552.67d0 , &
+  4546.76d0 , &
+  4540.82d0 , &
+  4534.84d0 , &
+  4528.85d0 , &
+  4522.81d0 , &
+  4516.76d0 /)
 
- Mref_V%density_ref( 511 : 540 ) = (/ &
- 4839.57000000000 , &
- 4834.45000000000 , &
- 4829.32000000000 , &
- 4824.18000000000 , &
- 4819.04000000000 , &
- 4813.88000000000 , &
- 4808.73000000000 , &
- 4803.56000000000 , &
- 4798.39000000000 , &
- 4793.20000000000 , &
- 4788.02000000000 , &
- 4782.82000000000 , &
- 4777.61000000000 , &
- 4772.40000000000 , &
- 4767.18000000000 , &
- 4761.95000000000 , &
- 4756.72000000000 , &
- 4751.47000000000 , &
- 4746.22000000000 , &
- 4740.95000000000 , &
- 4735.68000000000 , &
- 4730.40000000000 , &
- 4725.10000000000 , &
- 4719.80000000000 , &
- 4714.48000000000 , &
- 4709.15000000000 , &
- 4703.81000000000 , &
- 4698.44000000000 , &
- 4693.08000000000 , &
- 4687.69000000000 /)
+  Mref_V_density_ref( 571 : 600 ) = (/ &
+  4510.67d0 , &
+  4504.56d0 , &
+  4498.41d0 , &
+  4492.23d0 , &
+  4486.02d0 , &
+  4479.78d0 , &
+  4473.51d0 , &
+  4467.2d0 , &
+  4460.87d0 , &
+  4454.49d0 , &
+  4448.08d0 , &
+  4441.63d0 , &
+  4435.13d0 , &
+  4428.6d0 , &
+  4428.59d0 , &
+  4423.32d0 , &
+  4418.01d0 , &
+  4412.67d0 , &
+  4407.3d0 , &
+  4401.9d0 , &
+  4396.45d0 , &
+  4390.96d0 , &
+  4385.4d0 , &
+  4379.81d0 , &
+  4374.16d0 , &
+  4368.47d0 , &
+  4362.72d0 , &
+  4356.92d0 , &
+  4351.08d0 , &
+  4345.18d0 /)
 
- Mref_V%density_ref( 541 : 570 ) = (/ &
- 4682.29000000000 , &
- 4676.87000000000 , &
- 4671.44000000000 , &
- 4665.99000000000 , &
- 4660.52000000000 , &
- 4655.03000000000 , &
- 4649.52000000000 , &
- 4644.00000000000 , &
- 4638.46000000000 , &
- 4632.89000000000 , &
- 4627.31000000000 , &
- 4621.70000000000 , &
- 4616.08000000000 , &
- 4610.44000000000 , &
- 4604.76000000000 , &
- 4599.08000000000 , &
- 4593.36000000000 , &
- 4587.63000000000 , &
- 4581.86000000000 , &
- 4576.07000000000 , &
- 4570.26000000000 , &
- 4564.43000000000 , &
- 4558.56000000000 , &
- 4552.67000000000 , &
- 4546.76000000000 , &
- 4540.82000000000 , &
- 4534.84000000000 , &
- 4528.85000000000 , &
- 4522.81000000000 , &
- 4516.76000000000 /)
+  Mref_V_density_ref( 601 : 630 ) = (/ &
+  4339.24d0 , &
+  4047.01d0 , &
+  4042.5d0 , &
+  4037.98d0 , &
+  4033.48d0 , &
+  4028.95d0 , &
+  4024.45d0 , &
+  4019.93d0 , &
+  4015.42d0 , &
+  4010.9d0 , &
+  4006.38d0 , &
+  4001.87d0 , &
+  3997.35d0 , &
+  3992.84d0 , &
+  3988.32d0 , &
+  3983.8d0 , &
+  3983.8d0 , &
+  3975.79d0 , &
+  3967.77d0 , &
+  3959.76d0 , &
+  3951.75d0 , &
+  3943.73d0 , &
+  3935.71d0 , &
+  3927.69d0 , &
+  3919.67d0 , &
+  3911.65d0 , &
+  3903.61d0 , &
+  3895.58d0 , &
+  3887.56d0 , &
+  3879.53d0 /)
 
- Mref_V%density_ref( 571 : 600 ) = (/ &
- 4510.67000000000 , &
- 4504.56000000000 , &
- 4498.41000000000 , &
- 4492.23000000000 , &
- 4486.02000000000 , &
- 4479.78000000000 , &
- 4473.51000000000 , &
- 4467.20000000000 , &
- 4460.87000000000 , &
- 4454.49000000000 , &
- 4448.08000000000 , &
- 4441.63000000000 , &
- 4435.13000000000 , &
- 4428.60000000000 , &
- 4428.59000000000 , &
- 4423.32000000000 , &
- 4418.01000000000 , &
- 4412.67000000000 , &
- 4407.30000000000 , &
- 4401.90000000000 , &
- 4396.45000000000 , &
- 4390.96000000000 , &
- 4385.40000000000 , &
- 4379.81000000000 , &
- 4374.16000000000 , &
- 4368.47000000000 , &
- 4362.72000000000 , &
- 4356.92000000000 , &
- 4351.08000000000 , &
- 4345.18000000000 /)
+  Mref_V_density_ref( 631 : 660 ) = (/ &
+  3871.5d0 , &
+  3863.46d0 , &
+  3855.42d0 , &
+  3847.38d0 , &
+  3839.33d0 , &
+  3831.27d0 , &
+  3823.22d0 , &
+  3815.16d0 , &
+  3807.09d0 , &
+  3799.01d0 , &
+  3790.94d0 , &
+  3782.85d0 , &
+  3774.78d0 , &
+  3766.66d0 , &
+  3758.56d0 , &
+  3750.45d0 , &
+  3742.34d0 , &
+  3554.91d0 , &
+  3551.d0 , &
+  3547.07d0 , &
+  3543.16d0 , &
+  3539.23d0 , &
+  3535.32d0 , &
+  3531.39d0 , &
+  3527.46d0 , &
+  3523.57d0 , &
+  3519.67d0 , &
+  3515.77d0 , &
+  3511.91d0 , &
+  3508.06d0 /)
 
- Mref_V%density_ref( 601 : 630 ) = (/ &
- 4339.24000000000 , &
- 4047.01000000000 , &
- 4042.50000000000 , &
- 4037.98000000000 , &
- 4033.48000000000 , &
- 4028.95000000000 , &
- 4024.45000000000 , &
- 4019.93000000000 , &
- 4015.42000000000 , &
- 4010.90000000000 , &
- 4006.38000000000 , &
- 4001.87000000000 , &
- 3997.35000000000 , &
- 3992.84000000000 , &
- 3988.32000000000 , &
- 3983.80000000000 , &
- 3983.80000000000 , &
- 3975.79000000000 , &
- 3967.77000000000 , &
- 3959.76000000000 , &
- 3951.75000000000 , &
- 3943.73000000000 , &
- 3935.71000000000 , &
- 3927.69000000000 , &
- 3919.67000000000 , &
- 3911.65000000000 , &
- 3903.61000000000 , &
- 3895.58000000000 , &
- 3887.56000000000 , &
- 3879.53000000000 /)
+  Mref_V_density_ref( 661 : 690 ) = (/ &
+  3504.21d0 , &
+  3500.39d0 , &
+  3496.58d0 , &
+  3492.8d0 , &
+  3489.05d0 , &
+  3485.32d0 , &
+  3481.61d0 , &
+  3477.88d0 , &
+  3474.16d0 , &
+  3470.41d0 , &
+  3466.59d0 , &
+  3462.74d0 , &
+  3458.78d0 , &
+  3454.75d0 , &
+  3450.61d0 , &
+  3446.33d0 , &
+  3441.91d0 , &
+  3437.35d0 , &
+  3437.34d0 , &
+  3432.81d0 , &
+  3428.15d0 , &
+  3423.37d0 , &
+  3418.47d0 , &
+  3413.47d0 , &
+  3408.35d0 , &
+  3403.15d0 , &
+  3397.87d0 , &
+  3392.5d0 , &
+  3387.07d0 , &
+  3381.58d0 /)
 
- Mref_V%density_ref( 631 : 660 ) = (/ &
- 3871.50000000000 , &
- 3863.46000000000 , &
- 3855.42000000000 , &
- 3847.38000000000 , &
- 3839.33000000000 , &
- 3831.27000000000 , &
- 3823.22000000000 , &
- 3815.16000000000 , &
- 3807.09000000000 , &
- 3799.01000000000 , &
- 3790.94000000000 , &
- 3782.85000000000 , &
- 3774.78000000000 , &
- 3766.66000000000 , &
- 3758.56000000000 , &
- 3750.45000000000 , &
- 3742.34000000000 , &
- 3554.91000000000 , &
- 3551.00000000000 , &
- 3547.07000000000 , &
- 3543.16000000000 , &
- 3539.23000000000 , &
- 3535.32000000000 , &
- 3531.39000000000 , &
- 3527.46000000000 , &
- 3523.57000000000 , &
- 3519.67000000000 , &
- 3515.77000000000 , &
- 3511.91000000000 , &
- 3508.06000000000 /)
+  Mref_V_density_ref( 691 : 720 ) = (/ &
+  3376.03d0 , &
+  3370.45d0 , &
+  3364.87d0 , &
+  3359.31d0 , &
+  3353.79d0 , &
+  3348.37d0 , &
+  3343.03d0 , &
+  3337.85d0 , &
+  3332.83d0 , &
+  3328.01d0 , &
+  3323.39d0 , &
+  3319.04d0 , &
+  3319.03d0 , &
+  3316.33d0 , &
+  3313.75d0 , &
+  3311.3d0 , &
+  3308.97d0 , &
+  3306.73d0 , &
+  3304.58d0 , &
+  3302.53d0 , &
+  3300.55d0 , &
+  3298.63d0 , &
+  3296.79d0 , &
+  3295.d0 , &
+  3293.25d0 , &
+  3291.54d0 , &
+  3289.84d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 /)
 
- Mref_V%density_ref( 661 : 690 ) = (/ &
- 3504.21000000000 , &
- 3500.39000000000 , &
- 3496.58000000000 , &
- 3492.80000000000 , &
- 3489.05000000000 , &
- 3485.32000000000 , &
- 3481.61000000000 , &
- 3477.88000000000 , &
- 3474.16000000000 , &
- 3470.41000000000 , &
- 3466.59000000000 , &
- 3462.74000000000 , &
- 3458.78000000000 , &
- 3454.75000000000 , &
- 3450.61000000000 , &
- 3446.33000000000 , &
- 3441.91000000000 , &
- 3437.35000000000 , &
- 3437.34000000000 , &
- 3432.81000000000 , &
- 3428.15000000000 , &
- 3423.37000000000 , &
- 3418.47000000000 , &
- 3413.47000000000 , &
- 3408.35000000000 , &
- 3403.15000000000 , &
- 3397.87000000000 , &
- 3392.50000000000 , &
- 3387.07000000000 , &
- 3381.58000000000 /)
+  Mref_V_density_ref( 721 : 750 ) = (/ &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2900.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 , &
+  2600.d0 /)
 
- Mref_V%density_ref( 691 : 720 ) = (/ &
- 3376.03000000000 , &
- 3370.45000000000 , &
- 3364.87000000000 , &
- 3359.31000000000 , &
- 3353.79000000000 , &
- 3348.37000000000 , &
- 3343.03000000000 , &
- 3337.85000000000 , &
- 3332.83000000000 , &
- 3328.01000000000 , &
- 3323.39000000000 , &
- 3319.04000000000 , &
- 3319.03000000000 , &
- 3316.33000000000 , &
- 3313.75000000000 , &
- 3311.30000000000 , &
- 3308.97000000000 , &
- 3306.73000000000 , &
- 3304.58000000000 , &
- 3302.53000000000 , &
- 3300.55000000000 , &
- 3298.63000000000 , &
- 3296.79000000000 , &
- 3295.00000000000 , &
- 3293.25000000000 , &
- 3291.54000000000 , &
- 3289.84000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 /)
+  Mref_V_vpv_ref( 1 : 30 ) = (/ &
+  11262.2d0 , &
+  11262.2d0 , &
+  11262.18d0 , &
+  11262.14d0 , &
+  11262.09d0 , &
+  11262.02d0 , &
+  11261.94d0 , &
+  11261.85d0 , &
+  11261.74d0 , &
+  11261.61d0 , &
+  11261.47d0 , &
+  11261.32d0 , &
+  11261.15d0 , &
+  11260.97d0 , &
+  11260.77d0 , &
+  11260.56d0 , &
+  11260.34d0 , &
+  11260.09d0 , &
+  11259.84d0 , &
+  11259.57d0 , &
+  11259.28d0 , &
+  11258.99d0 , &
+  11258.67d0 , &
+  11258.34d0 , &
+  11258.d0 , &
+  11257.64d0 , &
+  11257.27d0 , &
+  11256.88d0 , &
+  11256.48d0 , &
+  11256.06d0 /)
 
- Mref_V%density_ref( 721 : 750 ) = (/ &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2900.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 , &
- 2600.00000000000 /)
+  Mref_V_vpv_ref( 31 : 60 ) = (/ &
+  11255.63d0 , &
+  11255.19d0 , &
+  11254.73d0 , &
+  11254.25d0 , &
+  11253.76d0 , &
+  11253.26d0 , &
+  11252.74d0 , &
+  11252.21d0 , &
+  11251.66d0 , &
+  11251.1d0 , &
+  11250.52d0 , &
+  11249.93d0 , &
+  11249.33d0 , &
+  11248.71d0 , &
+  11248.07d0 , &
+  11247.42d0 , &
+  11246.76d0 , &
+  11246.08d0 , &
+  11245.38d0 , &
+  11244.67d0 , &
+  11243.95d0 , &
+  11243.21d0 , &
+  11242.46d0 , &
+  11241.7d0 , &
+  11240.91d0 , &
+  11240.12d0 , &
+  11239.31d0 , &
+  11238.48d0 , &
+  11237.64d0 , &
+  11236.79d0 /)
 
- Mref_V%vpv_ref( 1 : 30 ) = (/ &
- 11262.2000000000 , &
- 11262.2000000000 , &
- 11262.1800000000 , &
- 11262.1400000000 , &
- 11262.0900000000 , &
- 11262.0200000000 , &
- 11261.9400000000 , &
- 11261.8500000000 , &
- 11261.7400000000 , &
- 11261.6100000000 , &
- 11261.4700000000 , &
- 11261.3200000000 , &
- 11261.1500000000 , &
- 11260.9700000000 , &
- 11260.7700000000 , &
- 11260.5600000000 , &
- 11260.3400000000 , &
- 11260.0900000000 , &
- 11259.8400000000 , &
- 11259.5700000000 , &
- 11259.2800000000 , &
- 11258.9900000000 , &
- 11258.6700000000 , &
- 11258.3400000000 , &
- 11258.0000000000 , &
- 11257.6400000000 , &
- 11257.2700000000 , &
- 11256.8800000000 , &
- 11256.4800000000 , &
- 11256.0600000000 /)
+  Mref_V_vpv_ref( 61 : 90 ) = (/ &
+  11235.92d0 , &
+  11235.04d0 , &
+  11234.14d0 , &
+  11233.23d0 , &
+  11232.3d0 , &
+  11231.36d0 , &
+  11230.4d0 , &
+  11229.43d0 , &
+  11228.44d0 , &
+  11227.44d0 , &
+  11226.43d0 , &
+  11225.4d0 , &
+  11224.36d0 , &
+  11223.3d0 , &
+  11222.22d0 , &
+  11221.14d0 , &
+  11220.03d0 , &
+  11218.92d0 , &
+  11217.78d0 , &
+  11216.64d0 , &
+  11215.48d0 , &
+  11214.3d0 , &
+  11213.11d0 , &
+  11211.91d0 , &
+  11210.69d0 , &
+  11209.45d0 , &
+  11208.21d0 , &
+  11206.94d0 , &
+  11205.67d0 , &
+  11204.37d0 /)
 
- Mref_V%vpv_ref( 31 : 60 ) = (/ &
- 11255.6300000000 , &
- 11255.1900000000 , &
- 11254.7300000000 , &
- 11254.2500000000 , &
- 11253.7600000000 , &
- 11253.2600000000 , &
- 11252.7400000000 , &
- 11252.2100000000 , &
- 11251.6600000000 , &
- 11251.1000000000 , &
- 11250.5200000000 , &
- 11249.9300000000 , &
- 11249.3300000000 , &
- 11248.7100000000 , &
- 11248.0700000000 , &
- 11247.4200000000 , &
- 11246.7600000000 , &
- 11246.0800000000 , &
- 11245.3800000000 , &
- 11244.6700000000 , &
- 11243.9500000000 , &
- 11243.2100000000 , &
- 11242.4600000000 , &
- 11241.7000000000 , &
- 11240.9100000000 , &
- 11240.1200000000 , &
- 11239.3100000000 , &
- 11238.4800000000 , &
- 11237.6400000000 , &
- 11236.7900000000 /)
+  Mref_V_vpv_ref( 91 : 120 ) = (/ &
+  11203.07d0 , &
+  11201.74d0 , &
+  11200.41d0 , &
+  11199.06d0 , &
+  11197.69d0 , &
+  11196.31d0 , &
+  11194.92d0 , &
+  11193.51d0 , &
+  11192.09d0 , &
+  11190.65d0 , &
+  11189.19d0 , &
+  11187.73d0 , &
+  11186.24d0 , &
+  11184.75d0 , &
+  11183.24d0 , &
+  11181.71d0 , &
+  11180.17d0 , &
+  11178.61d0 , &
+  11177.04d0 , &
+  11175.46d0 , &
+  11173.86d0 , &
+  11172.25d0 , &
+  11170.62d0 , &
+  11168.98d0 , &
+  11167.32d0 , &
+  11165.65d0 , &
+  11163.96d0 , &
+  11162.26d0 , &
+  11160.54d0 , &
+  11158.81d0 /)
 
- Mref_V%vpv_ref( 61 : 90 ) = (/ &
- 11235.9200000000 , &
- 11235.0400000000 , &
- 11234.1400000000 , &
- 11233.2300000000 , &
- 11232.3000000000 , &
- 11231.3600000000 , &
- 11230.4000000000 , &
- 11229.4300000000 , &
- 11228.4400000000 , &
- 11227.4400000000 , &
- 11226.4300000000 , &
- 11225.4000000000 , &
- 11224.3600000000 , &
- 11223.3000000000 , &
- 11222.2200000000 , &
- 11221.1400000000 , &
- 11220.0300000000 , &
- 11218.9200000000 , &
- 11217.7800000000 , &
- 11216.6400000000 , &
- 11215.4800000000 , &
- 11214.3000000000 , &
- 11213.1100000000 , &
- 11211.9100000000 , &
- 11210.6900000000 , &
- 11209.4500000000 , &
- 11208.2100000000 , &
- 11206.9400000000 , &
- 11205.6700000000 , &
- 11204.3700000000 /)
+  Mref_V_vpv_ref( 121 : 150 ) = (/ &
+  11157.07d0 , &
+  11155.31d0 , &
+  11153.54d0 , &
+  11151.75d0 , &
+  11149.94d0 , &
+  11148.13d0 , &
+  11146.29d0 , &
+  11144.45d0 , &
+  11142.58d0 , &
+  11140.71d0 , &
+  11138.82d0 , &
+  11136.91d0 , &
+  11134.99d0 , &
+  11133.06d0 , &
+  11131.11d0 , &
+  11129.14d0 , &
+  11127.16d0 , &
+  11125.17d0 , &
+  11123.16d0 , &
+  11121.14d0 , &
+  11119.1d0 , &
+  11117.05d0 , &
+  11114.99d0 , &
+  11112.9d0 , &
+  11110.81d0 , &
+  11108.7d0 , &
+  11106.57d0 , &
+  11104.44d0 , &
+  11102.28d0 , &
+  11100.11d0 /)
 
- Mref_V%vpv_ref( 91 : 120 ) = (/ &
- 11203.0700000000 , &
- 11201.7400000000 , &
- 11200.4100000000 , &
- 11199.0600000000 , &
- 11197.6900000000 , &
- 11196.3100000000 , &
- 11194.9200000000 , &
- 11193.5100000000 , &
- 11192.0900000000 , &
- 11190.6500000000 , &
- 11189.1900000000 , &
- 11187.7300000000 , &
- 11186.2400000000 , &
- 11184.7500000000 , &
- 11183.2400000000 , &
- 11181.7100000000 , &
- 11180.1700000000 , &
- 11178.6100000000 , &
- 11177.0400000000 , &
- 11175.4600000000 , &
- 11173.8600000000 , &
- 11172.2500000000 , &
- 11170.6200000000 , &
- 11168.9800000000 , &
- 11167.3200000000 , &
- 11165.6500000000 , &
- 11163.9600000000 , &
- 11162.2600000000 , &
- 11160.5400000000 , &
- 11158.8100000000 /)
+  Mref_V_vpv_ref( 151 : 180 ) = (/ &
+  11097.93d0 , &
+  11095.73d0 , &
+  11093.52d0 , &
+  11091.29d0 , &
+  11089.05d0 , &
+  11086.8d0 , &
+  11084.53d0 , &
+  11082.24d0 , &
+  11079.94d0 , &
+  11077.63d0 , &
+  11075.3d0 , &
+  11072.95d0 , &
+  11070.59d0 , &
+  11068.22d0 , &
+  11065.83d0 , &
+  11063.43d0 , &
+  11061.02d0 , &
+  11058.58d0 , &
+  11056.14d0 , &
+  11053.68d0 , &
+  11051.2d0 , &
+  11048.71d0 , &
+  11046.21d0 , &
+  11043.69d0 , &
+  11041.16d0 , &
+  11038.61d0 , &
+  11036.05d0 , &
+  11033.47d0 , &
+  11030.88d0 , &
+  11028.27d0 /)
 
- Mref_V%vpv_ref( 121 : 150 ) = (/ &
- 11157.0700000000 , &
- 11155.3100000000 , &
- 11153.5400000000 , &
- 11151.7500000000 , &
- 11149.9400000000 , &
- 11148.1300000000 , &
- 11146.2900000000 , &
- 11144.4500000000 , &
- 11142.5800000000 , &
- 11140.7100000000 , &
- 11138.8200000000 , &
- 11136.9100000000 , &
- 11134.9900000000 , &
- 11133.0600000000 , &
- 11131.1100000000 , &
- 11129.1400000000 , &
- 11127.1600000000 , &
- 11125.1700000000 , &
- 11123.1600000000 , &
- 11121.1400000000 , &
- 11119.1000000000 , &
- 11117.0500000000 , &
- 11114.9900000000 , &
- 11112.9000000000 , &
- 11110.8100000000 , &
- 11108.7000000000 , &
- 11106.5700000000 , &
- 11104.4400000000 , &
- 11102.2800000000 , &
- 11100.1100000000 /)
+  Mref_V_vpv_ref( 181 : 210 ) = (/ &
+  10355.69d0 , &
+  10348.28d0 , &
+  10340.85d0 , &
+  10333.39d0 , &
+  10325.91d0 , &
+  10318.4d0 , &
+  10310.87d0 , &
+  10303.3d0 , &
+  10295.71d0 , &
+  10288.09d0 , &
+  10280.44d0 , &
+  10272.76d0 , &
+  10265.04d0 , &
+  10257.3d0 , &
+  10249.52d0 , &
+  10241.71d0 , &
+  10233.86d0 , &
+  10225.98d0 , &
+  10218.06d0 , &
+  10210.11d0 , &
+  10202.12d0 , &
+  10194.1d0 , &
+  10186.04d0 , &
+  10177.94d0 , &
+  10169.79d0 , &
+  10161.61d0 , &
+  10153.39d0 , &
+  10145.13d0 , &
+  10136.83d0 , &
+  10128.48d0 /)
 
- Mref_V%vpv_ref( 151 : 180 ) = (/ &
- 11097.9300000000 , &
- 11095.7300000000 , &
- 11093.5200000000 , &
- 11091.2900000000 , &
- 11089.0500000000 , &
- 11086.8000000000 , &
- 11084.5300000000 , &
- 11082.2400000000 , &
- 11079.9400000000 , &
- 11077.6300000000 , &
- 11075.3000000000 , &
- 11072.9500000000 , &
- 11070.5900000000 , &
- 11068.2200000000 , &
- 11065.8300000000 , &
- 11063.4300000000 , &
- 11061.0200000000 , &
- 11058.5800000000 , &
- 11056.1400000000 , &
- 11053.6800000000 , &
- 11051.2000000000 , &
- 11048.7100000000 , &
- 11046.2100000000 , &
- 11043.6900000000 , &
- 11041.1600000000 , &
- 11038.6100000000 , &
- 11036.0500000000 , &
- 11033.4700000000 , &
- 11030.8800000000 , &
- 11028.2700000000 /)
+  Mref_V_vpv_ref( 211 : 240 ) = (/ &
+  10120.09d0 , &
+  10111.66d0 , &
+  10103.18d0 , &
+  10094.66d0 , &
+  10086.09d0 , &
+  10077.48d0 , &
+  10068.82d0 , &
+  10060.11d0 , &
+  10051.35d0 , &
+  10042.54d0 , &
+  10033.69d0 , &
+  10024.78d0 , &
+  10015.82d0 , &
+  10006.82d0 , &
+  9997.75d0 , &
+  9988.64d0 , &
+  9979.47d0 , &
+  9970.25d0 , &
+  9960.97d0 , &
+  9951.64d0 , &
+  9942.25d0 , &
+  9932.81d0 , &
+  9923.31d0 , &
+  9913.75d0 , &
+  9904.13d0 , &
+  9894.45d0 , &
+  9884.71d0 , &
+  9874.91d0 , &
+  9865.05d0 , &
+  9855.13d0 /)
 
- Mref_V%vpv_ref( 181 : 210 ) = (/ &
- 10355.6900000000 , &
- 10348.2800000000 , &
- 10340.8500000000 , &
- 10333.3900000000 , &
- 10325.9100000000 , &
- 10318.4000000000 , &
- 10310.8700000000 , &
- 10303.3000000000 , &
- 10295.7100000000 , &
- 10288.0900000000 , &
- 10280.4400000000 , &
- 10272.7600000000 , &
- 10265.0400000000 , &
- 10257.3000000000 , &
- 10249.5200000000 , &
- 10241.7100000000 , &
- 10233.8600000000 , &
- 10225.9800000000 , &
- 10218.0600000000 , &
- 10210.1100000000 , &
- 10202.1200000000 , &
- 10194.1000000000 , &
- 10186.0400000000 , &
- 10177.9400000000 , &
- 10169.7900000000 , &
- 10161.6100000000 , &
- 10153.3900000000 , &
- 10145.1300000000 , &
- 10136.8300000000 , &
- 10128.4800000000 /)
+  Mref_V_vpv_ref( 241 : 270 ) = (/ &
+  9845.14d0 , &
+  9835.09d0 , &
+  9824.98d0 , &
+  9814.8d0 , &
+  9804.56d0 , &
+  9794.25d0 , &
+  9783.87d0 , &
+  9773.43d0 , &
+  9762.92d0 , &
+  9752.34d0 , &
+  9741.69d0 , &
+  9730.97d0 , &
+  9720.18d0 , &
+  9709.32d0 , &
+  9698.39d0 , &
+  9687.38d0 , &
+  9676.31d0 , &
+  9665.15d0 , &
+  9653.93d0 , &
+  9642.63d0 , &
+  9631.25d0 , &
+  9619.8d0 , &
+  9608.27d0 , &
+  9596.66d0 , &
+  9584.97d0 , &
+  9573.2d0 , &
+  9561.36d0 , &
+  9549.43d0 , &
+  9537.43d0 , &
+  9525.34d0 /)
 
- Mref_V%vpv_ref( 211 : 240 ) = (/ &
- 10120.0900000000 , &
- 10111.6600000000 , &
- 10103.1800000000 , &
- 10094.6600000000 , &
- 10086.0900000000 , &
- 10077.4800000000 , &
- 10068.8200000000 , &
- 10060.1100000000 , &
- 10051.3500000000 , &
- 10042.5400000000 , &
- 10033.6900000000 , &
- 10024.7800000000 , &
- 10015.8200000000 , &
- 10006.8200000000 , &
- 9997.75000000000 , &
- 9988.64000000000 , &
- 9979.47000000000 , &
- 9970.25000000000 , &
- 9960.97000000000 , &
- 9951.64000000000 , &
- 9942.25000000000 , &
- 9932.81000000000 , &
- 9923.31000000000 , &
- 9913.75000000000 , &
- 9904.13000000000 , &
- 9894.45000000000 , &
- 9884.71000000000 , &
- 9874.91000000000 , &
- 9865.05000000000 , &
- 9855.13000000000 /)
+  Mref_V_vpv_ref( 271 : 300 ) = (/ &
+  9513.17d0 , &
+  9500.91d0 , &
+  9488.57d0 , &
+  9476.15d0 , &
+  9463.64d0 , &
+  9451.05d0 , &
+  9438.37d0 , &
+  9425.61d0 , &
+  9412.75d0 , &
+  9399.81d0 , &
+  9386.78d0 , &
+  9373.66d0 , &
+  9360.45d0 , &
+  9347.15d0 , &
+  9333.76d0 , &
+  9320.27d0 , &
+  9306.7d0 , &
+  9293.03d0 , &
+  9279.26d0 , &
+  9265.4d0 , &
+  9251.45d0 , &
+  9237.4d0 , &
+  9223.25d0 , &
+  9209.d0 , &
+  9194.66d0 , &
+  9180.22d0 , &
+  9165.68d0 , &
+  9151.03d0 , &
+  9136.29d0 , &
+  9121.45d0 /)
 
- Mref_V%vpv_ref( 241 : 270 ) = (/ &
- 9845.14000000000 , &
- 9835.09000000000 , &
- 9824.98000000000 , &
- 9814.80000000000 , &
- 9804.56000000000 , &
- 9794.25000000000 , &
- 9783.87000000000 , &
- 9773.43000000000 , &
- 9762.92000000000 , &
- 9752.34000000000 , &
- 9741.69000000000 , &
- 9730.97000000000 , &
- 9720.18000000000 , &
- 9709.32000000000 , &
- 9698.39000000000 , &
- 9687.38000000000 , &
- 9676.31000000000 , &
- 9665.15000000000 , &
- 9653.93000000000 , &
- 9642.63000000000 , &
- 9631.25000000000 , &
- 9619.80000000000 , &
- 9608.27000000000 , &
- 9596.66000000000 , &
- 9584.97000000000 , &
- 9573.20000000000 , &
- 9561.36000000000 , &
- 9549.43000000000 , &
- 9537.43000000000 , &
- 9525.34000000000 /)
+  Mref_V_vpv_ref( 301 : 330 ) = (/ &
+  9106.5d0 , &
+  9091.46d0 , &
+  9076.3d0 , &
+  9061.05d0 , &
+  9045.69d0 , &
+  9030.23d0 , &
+  9014.65d0 , &
+  8998.98d0 , &
+  8983.19d0 , &
+  8967.3d0 , &
+  8951.3d0 , &
+  8935.19d0 , &
+  8918.97d0 , &
+  8902.64d0 , &
+  8886.2d0 , &
+  8869.64d0 , &
+  8852.98d0 , &
+  8836.2d0 , &
+  8819.31d0 , &
+  8802.3d0 , &
+  8785.18d0 , &
+  8767.94d0 , &
+  8750.59d0 , &
+  8733.12d0 , &
+  8715.53d0 , &
+  8697.82d0 , &
+  8680.d0 , &
+  8662.05d0 , &
+  8643.99d0 , &
+  8625.8d0 /)
 
- Mref_V%vpv_ref( 271 : 300 ) = (/ &
- 9513.17000000000 , &
- 9500.91000000000 , &
- 9488.57000000000 , &
- 9476.15000000000 , &
- 9463.64000000000 , &
- 9451.05000000000 , &
- 9438.37000000000 , &
- 9425.61000000000 , &
- 9412.75000000000 , &
- 9399.81000000000 , &
- 9386.78000000000 , &
- 9373.66000000000 , &
- 9360.45000000000 , &
- 9347.15000000000 , &
- 9333.76000000000 , &
- 9320.27000000000 , &
- 9306.70000000000 , &
- 9293.03000000000 , &
- 9279.26000000000 , &
- 9265.40000000000 , &
- 9251.45000000000 , &
- 9237.40000000000 , &
- 9223.25000000000 , &
- 9209.00000000000 , &
- 9194.66000000000 , &
- 9180.22000000000 , &
- 9165.68000000000 , &
- 9151.03000000000 , &
- 9136.29000000000 , &
- 9121.45000000000 /)
+  Mref_V_vpv_ref( 331 : 360 ) = (/ &
+  8607.49d0 , &
+  8589.06d0 , &
+  8570.51d0 , &
+  8551.83d0 , &
+  8533.03d0 , &
+  8514.1d0 , &
+  8495.05d0 , &
+  8475.87d0 , &
+  8456.57d0 , &
+  8437.14d0 , &
+  8417.58d0 , &
+  8397.89d0 , &
+  8378.07d0 , &
+  8358.12d0 , &
+  8338.04d0 , &
+  8317.83d0 , &
+  8297.49d0 , &
+  8277.01d0 , &
+  8256.41d0 , &
+  8235.66d0 , &
+  8214.79d0 , &
+  8193.77d0 , &
+  8172.62d0 , &
+  8151.34d0 , &
+  8129.92d0 , &
+  8108.36d0 , &
+  8086.66d0 , &
+  8064.82d0 , &
+  13716.6d0 , &
+  13714.29d0 /)
 
- Mref_V%vpv_ref( 301 : 330 ) = (/ &
- 9106.50000000000 , &
- 9091.46000000000 , &
- 9076.30000000000 , &
- 9061.05000000000 , &
- 9045.69000000000 , &
- 9030.23000000000 , &
- 9014.65000000000 , &
- 8998.98000000000 , &
- 8983.19000000000 , &
- 8967.30000000000 , &
- 8951.30000000000 , &
- 8935.19000000000 , &
- 8918.97000000000 , &
- 8902.64000000000 , &
- 8886.20000000000 , &
- 8869.64000000000 , &
- 8852.98000000000 , &
- 8836.20000000000 , &
- 8819.31000000000 , &
- 8802.30000000000 , &
- 8785.18000000000 , &
- 8767.94000000000 , &
- 8750.59000000000 , &
- 8733.12000000000 , &
- 8715.53000000000 , &
- 8697.82000000000 , &
- 8680.00000000000 , &
- 8662.05000000000 , &
- 8643.99000000000 , &
- 8625.80000000000 /)
+  Mref_V_vpv_ref( 361 : 390 ) = (/ &
+  13712.d0 , &
+  13709.7d0 , &
+  13707.42d0 , &
+  13705.14d0 , &
+  13702.86d0 , &
+  13700.59d0 , &
+  13698.33d0 , &
+  13696.07d0 , &
+  13693.82d0 , &
+  13691.57d0 , &
+  13689.33d0 , &
+  13687.09d0 , &
+  13684.86d0 , &
+  13682.63d0 , &
+  13680.41d0 , &
+  13680.41d0 , &
+  13668.9d0 , &
+  13657.43d0 , &
+  13645.97d0 , &
+  13634.54d0 , &
+  13623.14d0 , &
+  13611.76d0 , &
+  13600.4d0 , &
+  13589.07d0 , &
+  13577.76d0 , &
+  13566.47d0 , &
+  13555.2d0 , &
+  13543.95d0 , &
+  13532.72d0 , &
+  13521.51d0 /)
 
- Mref_V%vpv_ref( 331 : 360 ) = (/ &
- 8607.49000000000 , &
- 8589.06000000000 , &
- 8570.51000000000 , &
- 8551.83000000000 , &
- 8533.03000000000 , &
- 8514.10000000000 , &
- 8495.05000000000 , &
- 8475.87000000000 , &
- 8456.57000000000 , &
- 8437.14000000000 , &
- 8417.58000000000 , &
- 8397.89000000000 , &
- 8378.07000000000 , &
- 8358.12000000000 , &
- 8338.04000000000 , &
- 8317.83000000000 , &
- 8297.49000000000 , &
- 8277.01000000000 , &
- 8256.41000000000 , &
- 8235.66000000000 , &
- 8214.79000000000 , &
- 8193.77000000000 , &
- 8172.62000000000 , &
- 8151.34000000000 , &
- 8129.92000000000 , &
- 8108.36000000000 , &
- 8086.66000000000 , &
- 8064.82000000000 , &
- 13716.6000000000 , &
- 13714.2900000000 /)
+  Mref_V_vpv_ref( 391 : 420 ) = (/ &
+  13510.32d0 , &
+  13499.14d0 , &
+  13487.99d0 , &
+  13476.85d0 , &
+  13465.73d0 , &
+  13454.63d0 , &
+  13443.54d0 , &
+  13432.46d0 , &
+  13421.41d0 , &
+  13410.36d0 , &
+  13399.33d0 , &
+  13388.31d0 , &
+  13377.31d0 , &
+  13366.31d0 , &
+  13355.33d0 , &
+  13344.36d0 , &
+  13333.4d0 , &
+  13322.45d0 , &
+  13311.51d0 , &
+  13300.58d0 , &
+  13289.66d0 , &
+  13278.74d0 , &
+  13267.84d0 , &
+  13256.93d0 , &
+  13246.04d0 , &
+  13235.15d0 , &
+  13224.27d0 , &
+  13213.39d0 , &
+  13202.51d0 , &
+  13191.64d0 /)
 
- Mref_V%vpv_ref( 361 : 390 ) = (/ &
- 13712.0000000000 , &
- 13709.7000000000 , &
- 13707.4200000000 , &
- 13705.1400000000 , &
- 13702.8600000000 , &
- 13700.5900000000 , &
- 13698.3300000000 , &
- 13696.0700000000 , &
- 13693.8200000000 , &
- 13691.5700000000 , &
- 13689.3300000000 , &
- 13687.0900000000 , &
- 13684.8600000000 , &
- 13682.6300000000 , &
- 13680.4100000000 , &
- 13680.4100000000 , &
- 13668.9000000000 , &
- 13657.4300000000 , &
- 13645.9700000000 , &
- 13634.5400000000 , &
- 13623.1400000000 , &
- 13611.7600000000 , &
- 13600.4000000000 , &
- 13589.0700000000 , &
- 13577.7600000000 , &
- 13566.4700000000 , &
- 13555.2000000000 , &
- 13543.9500000000 , &
- 13532.7200000000 , &
- 13521.5100000000 /)
+  Mref_V_vpv_ref( 421 : 450 ) = (/ &
+  13180.78d0 , &
+  13169.91d0 , &
+  13159.05d0 , &
+  13148.19d0 , &
+  13137.33d0 , &
+  13126.47d0 , &
+  13115.61d0 , &
+  13104.75d0 , &
+  13093.89d0 , &
+  13083.02d0 , &
+  13072.16d0 , &
+  13061.29d0 , &
+  13050.42d0 , &
+  13039.55d0 , &
+  13028.67d0 , &
+  13017.78d0 , &
+  13006.9d0 , &
+  12996.d0 , &
+  12985.1d0 , &
+  12974.19d0 , &
+  12963.28d0 , &
+  12952.36d0 , &
+  12941.42d0 , &
+  12930.48d0 , &
+  12919.54d0 , &
+  12908.58d0 , &
+  12897.61d0 , &
+  12886.63d0 , &
+  12875.63d0 , &
+  12864.63d0 /)
 
- Mref_V%vpv_ref( 391 : 420 ) = (/ &
- 13510.3200000000 , &
- 13499.1400000000 , &
- 13487.9900000000 , &
- 13476.8500000000 , &
- 13465.7300000000 , &
- 13454.6300000000 , &
- 13443.5400000000 , &
- 13432.4600000000 , &
- 13421.4100000000 , &
- 13410.3600000000 , &
- 13399.3300000000 , &
- 13388.3100000000 , &
- 13377.3100000000 , &
- 13366.3100000000 , &
- 13355.3300000000 , &
- 13344.3600000000 , &
- 13333.4000000000 , &
- 13322.4500000000 , &
- 13311.5100000000 , &
- 13300.5800000000 , &
- 13289.6600000000 , &
- 13278.7400000000 , &
- 13267.8400000000 , &
- 13256.9300000000 , &
- 13246.0400000000 , &
- 13235.1500000000 , &
- 13224.2700000000 , &
- 13213.3900000000 , &
- 13202.5100000000 , &
- 13191.6400000000 /)
+  Mref_V_vpv_ref( 451 : 480 ) = (/ &
+  12853.61d0 , &
+  12842.58d0 , &
+  12831.54d0 , &
+  12820.48d0 , &
+  12809.41d0 , &
+  12798.32d0 , &
+  12787.22d0 , &
+  12776.1d0 , &
+  12764.96d0 , &
+  12753.81d0 , &
+  12742.63d0 , &
+  12731.44d0 , &
+  12720.24d0 , &
+  12709.01d0 , &
+  12697.76d0 , &
+  12686.49d0 , &
+  12675.2d0 , &
+  12663.89d0 , &
+  12652.56d0 , &
+  12641.2d0 , &
+  12629.82d0 , &
+  12618.42d0 , &
+  12606.99d0 , &
+  12595.54d0 , &
+  12584.06d0 , &
+  12572.56d0 , &
+  12561.03d0 , &
+  12549.48d0 , &
+  12537.89d0 , &
+  12526.28d0 /)
 
- Mref_V%vpv_ref( 421 : 450 ) = (/ &
- 13180.7800000000 , &
- 13169.9100000000 , &
- 13159.0500000000 , &
- 13148.1900000000 , &
- 13137.3300000000 , &
- 13126.4700000000 , &
- 13115.6100000000 , &
- 13104.7500000000 , &
- 13093.8900000000 , &
- 13083.0200000000 , &
- 13072.1600000000 , &
- 13061.2900000000 , &
- 13050.4200000000 , &
- 13039.5500000000 , &
- 13028.6700000000 , &
- 13017.7800000000 , &
- 13006.9000000000 , &
- 12996.0000000000 , &
- 12985.1000000000 , &
- 12974.1900000000 , &
- 12963.2800000000 , &
- 12952.3600000000 , &
- 12941.4200000000 , &
- 12930.4800000000 , &
- 12919.5400000000 , &
- 12908.5800000000 , &
- 12897.6100000000 , &
- 12886.6300000000 , &
- 12875.6300000000 , &
- 12864.6300000000 /)
+  Mref_V_vpv_ref( 481 : 510 ) = (/ &
+  12514.64d0 , &
+  12502.98d0 , &
+  12491.28d0 , &
+  12479.55d0 , &
+  12467.79d0 , &
+  12456.01d0 , &
+  12444.19d0 , &
+  12432.33d0 , &
+  12420.45d0 , &
+  12408.53d0 , &
+  12396.58d0 , &
+  12384.6d0 , &
+  12372.58d0 , &
+  12360.52d0 , &
+  12348.43d0 , &
+  12336.3d0 , &
+  12324.14d0 , &
+  12311.94d0 , &
+  12299.7d0 , &
+  12287.42d0 , &
+  12275.11d0 , &
+  12262.75d0 , &
+  12250.35d0 , &
+  12237.92d0 , &
+  12225.44d0 , &
+  12212.92d0 , &
+  12200.36d0 , &
+  12187.76d0 , &
+  12175.11d0 , &
+  12162.43d0 /)
 
- Mref_V%vpv_ref( 451 : 480 ) = (/ &
- 12853.6100000000 , &
- 12842.5800000000 , &
- 12831.5400000000 , &
- 12820.4800000000 , &
- 12809.4100000000 , &
- 12798.3200000000 , &
- 12787.2200000000 , &
- 12776.1000000000 , &
- 12764.9600000000 , &
- 12753.8100000000 , &
- 12742.6300000000 , &
- 12731.4400000000 , &
- 12720.2400000000 , &
- 12709.0100000000 , &
- 12697.7600000000 , &
- 12686.4900000000 , &
- 12675.2000000000 , &
- 12663.8900000000 , &
- 12652.5600000000 , &
- 12641.2000000000 , &
- 12629.8200000000 , &
- 12618.4200000000 , &
- 12606.9900000000 , &
- 12595.5400000000 , &
- 12584.0600000000 , &
- 12572.5600000000 , &
- 12561.0300000000 , &
- 12549.4800000000 , &
- 12537.8900000000 , &
- 12526.2800000000 /)
+  Mref_V_vpv_ref( 511 : 540 ) = (/ &
+  12149.69d0 , &
+  12136.91d0 , &
+  12124.09d0 , &
+  12111.22d0 , &
+  12098.31d0 , &
+  12085.34d0 , &
+  12072.34d0 , &
+  12059.28d0 , &
+  12046.17d0 , &
+  12033.02d0 , &
+  12019.82d0 , &
+  12006.56d0 , &
+  11993.26d0 , &
+  11979.9d0 , &
+  11966.5d0 , &
+  11953.04d0 , &
+  11939.53d0 , &
+  11925.97d0 , &
+  11912.35d0 , &
+  11898.69d0 , &
+  11884.96d0 , &
+  11871.19d0 , &
+  11857.37d0 , &
+  11843.48d0 , &
+  11829.55d0 , &
+  11815.57d0 , &
+  11801.53d0 , &
+  11787.44d0 , &
+  11773.3d0 , &
+  11759.1d0 /)
 
- Mref_V%vpv_ref( 481 : 510 ) = (/ &
- 12514.6400000000 , &
- 12502.9800000000 , &
- 12491.2800000000 , &
- 12479.5500000000 , &
- 12467.7900000000 , &
- 12456.0100000000 , &
- 12444.1900000000 , &
- 12432.3300000000 , &
- 12420.4500000000 , &
- 12408.5300000000 , &
- 12396.5800000000 , &
- 12384.6000000000 , &
- 12372.5800000000 , &
- 12360.5200000000 , &
- 12348.4300000000 , &
- 12336.3000000000 , &
- 12324.1400000000 , &
- 12311.9400000000 , &
- 12299.7000000000 , &
- 12287.4200000000 , &
- 12275.1100000000 , &
- 12262.7500000000 , &
- 12250.3500000000 , &
- 12237.9200000000 , &
- 12225.4400000000 , &
- 12212.9200000000 , &
- 12200.3600000000 , &
- 12187.7600000000 , &
- 12175.1100000000 , &
- 12162.4300000000 /)
+  Mref_V_vpv_ref( 541 : 570 ) = (/ &
+  11744.85d0 , &
+  11730.55d0 , &
+  11716.18d0 , &
+  11701.78d0 , &
+  11687.31d0 , &
+  11672.8d0 , &
+  11658.23d0 , &
+  11643.6d0 , &
+  11628.92d0 , &
+  11614.19d0 , &
+  11599.4d0 , &
+  11584.57d0 , &
+  11569.68d0 , &
+  11554.72d0 , &
+  11539.72d0 , &
+  11524.67d0 , &
+  11509.56d0 , &
+  11494.39d0 , &
+  11479.17d0 , &
+  11463.89d0 , &
+  11448.55d0 , &
+  11433.17d0 , &
+  11417.73d0 , &
+  11402.23d0 , &
+  11386.68d0 , &
+  11371.07d0 , &
+  11355.41d0 , &
+  11339.69d0 , &
+  11323.91d0 , &
+  11308.09d0 /)
 
- Mref_V%vpv_ref( 511 : 540 ) = (/ &
- 12149.6900000000 , &
- 12136.9100000000 , &
- 12124.0900000000 , &
- 12111.2200000000 , &
- 12098.3100000000 , &
- 12085.3400000000 , &
- 12072.3400000000 , &
- 12059.2800000000 , &
- 12046.1700000000 , &
- 12033.0200000000 , &
- 12019.8200000000 , &
- 12006.5600000000 , &
- 11993.2600000000 , &
- 11979.9000000000 , &
- 11966.5000000000 , &
- 11953.0400000000 , &
- 11939.5300000000 , &
- 11925.9700000000 , &
- 11912.3500000000 , &
- 11898.6900000000 , &
- 11884.9600000000 , &
- 11871.1900000000 , &
- 11857.3700000000 , &
- 11843.4800000000 , &
- 11829.5500000000 , &
- 11815.5700000000 , &
- 11801.5300000000 , &
- 11787.4400000000 , &
- 11773.3000000000 , &
- 11759.1000000000 /)
+  Mref_V_vpv_ref( 571 : 600 ) = (/ &
+  11292.2d0 , &
+  11276.25d0 , &
+  11260.25d0 , &
+  11244.19d0 , &
+  11228.08d0 , &
+  11211.9d0 , &
+  11195.67d0 , &
+  11179.38d0 , &
+  11163.04d0 , &
+  11146.63d0 , &
+  11130.18d0 , &
+  11113.67d0 , &
+  11097.11d0 , &
+  11080.51d0 , &
+  11080.51d0 , &
+  11063.01d0 , &
+  11045.22d0 , &
+  11026.82d0 , &
+  11008.47d0 , &
+  10989.04d0 , &
+  10969.63d0 , &
+  10948.76d0 , &
+  10928.02d0 , &
+  10907.42d0 , &
+  10886.94d0 , &
+  10866.6d0 , &
+  10846.41d0 , &
+  10826.35d0 , &
+  10806.42d0 , &
+  10786.61d0 /)
 
- Mref_V%vpv_ref( 541 : 570 ) = (/ &
- 11744.8500000000 , &
- 11730.5500000000 , &
- 11716.1800000000 , &
- 11701.7800000000 , &
- 11687.3100000000 , &
- 11672.8000000000 , &
- 11658.2300000000 , &
- 11643.6000000000 , &
- 11628.9200000000 , &
- 11614.1900000000 , &
- 11599.4000000000 , &
- 11584.5700000000 , &
- 11569.6800000000 , &
- 11554.7200000000 , &
- 11539.7200000000 , &
- 11524.6700000000 , &
- 11509.5600000000 , &
- 11494.3900000000 , &
- 11479.1700000000 , &
- 11463.8900000000 , &
- 11448.5500000000 , &
- 11433.1700000000 , &
- 11417.7300000000 , &
- 11402.2300000000 , &
- 11386.6800000000 , &
- 11371.0700000000 , &
- 11355.4100000000 , &
- 11339.6900000000 , &
- 11323.9100000000 , &
- 11308.0900000000 /)
+  Mref_V_vpv_ref( 601 : 630 ) = (/ &
+  10766.9d0 , &
+  10278.88d0 , &
+  10261.87d0 , &
+  10244.84d0 , &
+  10227.82d0 , &
+  10210.8d0 , &
+  10193.78d0 , &
+  10176.77d0 , &
+  10159.74d0 , &
+  10142.72d0 , &
+  10125.71d0 , &
+  10108.7d0 , &
+  10091.68d0 , &
+  10074.68d0 , &
+  10057.68d0 , &
+  10040.64d0 , &
+  10040.67d0 , &
+  10010.52d0 , &
+  9980.51d0 , &
+  9950.64d0 , &
+  9920.91d0 , &
+  9891.35d0 , &
+  9861.96d0 , &
+  9832.79d0 , &
+  9803.79d0 , &
+  9774.98d0 , &
+  9746.41d0 , &
+  9718.08d0 , &
+  9689.96d0 , &
+  9662.1d0 /)
 
- Mref_V%vpv_ref( 571 : 600 ) = (/ &
- 11292.2000000000 , &
- 11276.2500000000 , &
- 11260.2500000000 , &
- 11244.1900000000 , &
- 11228.0800000000 , &
- 11211.9000000000 , &
- 11195.6700000000 , &
- 11179.3800000000 , &
- 11163.0400000000 , &
- 11146.6300000000 , &
- 11130.1800000000 , &
- 11113.6700000000 , &
- 11097.1100000000 , &
- 11080.5100000000 , &
- 11080.5100000000 , &
- 11063.0100000000 , &
- 11045.2200000000 , &
- 11026.8200000000 , &
- 11008.4700000000 , &
- 10989.0400000000 , &
- 10969.6300000000 , &
- 10948.7600000000 , &
- 10928.0200000000 , &
- 10907.4200000000 , &
- 10886.9400000000 , &
- 10866.6000000000 , &
- 10846.4100000000 , &
- 10826.3500000000 , &
- 10806.4200000000 , &
- 10786.6100000000 /)
+  Mref_V_vpv_ref( 631 : 660 ) = (/ &
+  9634.47d0 , &
+  9607.11d0 , &
+  9579.97d0 , &
+  9553.08d0 , &
+  9526.38d0 , &
+  9499.78d0 , &
+  9473.25d0 , &
+  9446.74d0 , &
+  9420.19d0 , &
+  9393.55d0 , &
+  9366.75d0 , &
+  9339.76d0 , &
+  9312.5d0 , &
+  9284.96d0 , &
+  9257.04d0 , &
+  9228.73d0 , &
+  9199.94d0 , &
+  8940.94d0 , &
+  8930.61d0 , &
+  8920.22d0 , &
+  8909.68d0 , &
+  8898.47d0 , &
+  8886.28d0 , &
+  8873.03d0 , &
+  8858.58d0 , &
+  8842.82d0 , &
+  8825.64d0 , &
+  8806.94d0 , &
+  8786.67d0 , &
+  8764.85d0 /)
 
- Mref_V%vpv_ref( 601 : 630 ) = (/ &
- 10766.9000000000 , &
- 10278.8800000000 , &
- 10261.8700000000 , &
- 10244.8400000000 , &
- 10227.8200000000 , &
- 10210.8000000000 , &
- 10193.7800000000 , &
- 10176.7700000000 , &
- 10159.7400000000 , &
- 10142.7200000000 , &
- 10125.7100000000 , &
- 10108.7000000000 , &
- 10091.6800000000 , &
- 10074.6800000000 , &
- 10057.6800000000 , &
- 10040.6400000000 , &
- 10040.6700000000 , &
- 10010.5200000000 , &
- 9980.51000000000 , &
- 9950.64000000000 , &
- 9920.91000000000 , &
- 9891.35000000000 , &
- 9861.96000000000 , &
- 9832.79000000000 , &
- 9803.79000000000 , &
- 9774.98000000000 , &
- 9746.41000000000 , &
- 9718.08000000000 , &
- 9689.96000000000 , &
- 9662.10000000000 /)
+  Mref_V_vpv_ref( 661 : 690 ) = (/ &
+  8741.49d0 , &
+  8716.63d0 , &
+  8690.3d0 , &
+  8662.5d0 , &
+  8633.28d0 , &
+  8602.66d0 , &
+  8570.81d0 , &
+  8538.06d0 , &
+  8504.66d0 , &
+  8470.92d0 , &
+  8437.13d0 , &
+  8403.52d0 , &
+  8370.42d0 , &
+  8338.11d0 , &
+  8306.25d0 , &
+  8275.42d0 , &
+  8241.77d0 , &
+  8207.37d0 , &
+  8207.01d0 , &
+  8174.32d0 , &
+  8141.99d0 , &
+  8110.4d0 , &
+  8079.71d0 , &
+  8050.15d0 , &
+  8021.89d0 , &
+  7995.08d0 , &
+  7969.97d0 , &
+  7946.7d0 , &
+  7925.45d0 , &
+  7906.44d0 /)
 
- Mref_V%vpv_ref( 631 : 660 ) = (/ &
- 9634.47000000000 , &
- 9607.11000000000 , &
- 9579.97000000000 , &
- 9553.08000000000 , &
- 9526.38000000000 , &
- 9499.78000000000 , &
- 9473.25000000000 , &
- 9446.74000000000 , &
- 9420.19000000000 , &
- 9393.55000000000 , &
- 9366.75000000000 , &
- 9339.76000000000 , &
- 9312.50000000000 , &
- 9284.96000000000 , &
- 9257.04000000000 , &
- 9228.73000000000 , &
- 9199.94000000000 , &
- 8940.94000000000 , &
- 8930.61000000000 , &
- 8920.22000000000 , &
- 8909.68000000000 , &
- 8898.47000000000 , &
- 8886.28000000000 , &
- 8873.03000000000 , &
- 8858.58000000000 , &
- 8842.82000000000 , &
- 8825.64000000000 , &
- 8806.94000000000 , &
- 8786.67000000000 , &
- 8764.85000000000 /)
+  Mref_V_vpv_ref( 691 : 720 ) = (/ &
+  7889.8d0 , &
+  7875.56d0 , &
+  7863.64d0 , &
+  7853.87d0 , &
+  7846.17d0 , &
+  7840.38d0 , &
+  7836.39d0 , &
+  7834.11d0 , &
+  7833.38d0 , &
+  7834.11d0 , &
+  7836.11d0 , &
+  7839.12d0 , &
+  7839.37d0 , &
+  7841.82d0 , &
+  7844.77d0 , &
+  7848.07d0 , &
+  7851.72d0 , &
+  7855.75d0 , &
+  7860.14d0 , &
+  7864.89d0 , &
+  7870.01d0 , &
+  7875.49d0 , &
+  7881.33d0 , &
+  7887.54d0 , &
+  7894.13d0 , &
+  7901.1d0 , &
+  7908.24d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 /)
 
- Mref_V%vpv_ref( 661 : 690 ) = (/ &
- 8741.49000000000 , &
- 8716.63000000000 , &
- 8690.30000000000 , &
- 8662.50000000000 , &
- 8633.28000000000 , &
- 8602.66000000000 , &
- 8570.81000000000 , &
- 8538.06000000000 , &
- 8504.66000000000 , &
- 8470.92000000000 , &
- 8437.13000000000 , &
- 8403.52000000000 , &
- 8370.42000000000 , &
- 8338.11000000000 , &
- 8306.25000000000 , &
- 8275.42000000000 , &
- 8241.77000000000 , &
- 8207.37000000000 , &
- 8207.01000000000 , &
- 8174.32000000000 , &
- 8141.99000000000 , &
- 8110.40000000000 , &
- 8079.71000000000 , &
- 8050.15000000000 , &
- 8021.89000000000 , &
- 7995.08000000000 , &
- 7969.97000000000 , &
- 7946.70000000000 , &
- 7925.45000000000 , &
- 7906.44000000000 /)
+  Mref_V_vpv_ref( 721 : 750 ) = (/ &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 /)
 
- Mref_V%vpv_ref( 691 : 720 ) = (/ &
- 7889.80000000000 , &
- 7875.56000000000 , &
- 7863.64000000000 , &
- 7853.87000000000 , &
- 7846.17000000000 , &
- 7840.38000000000 , &
- 7836.39000000000 , &
- 7834.11000000000 , &
- 7833.38000000000 , &
- 7834.11000000000 , &
- 7836.11000000000 , &
- 7839.12000000000 , &
- 7839.37000000000 , &
- 7841.82000000000 , &
- 7844.77000000000 , &
- 7848.07000000000 , &
- 7851.72000000000 , &
- 7855.75000000000 , &
- 7860.14000000000 , &
- 7864.89000000000 , &
- 7870.01000000000 , &
- 7875.49000000000 , &
- 7881.33000000000 , &
- 7887.54000000000 , &
- 7894.13000000000 , &
- 7901.10000000000 , &
- 7908.24000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 /)
+  Mref_V_vsv_ref( 1 : 30 ) = (/ &
+  3667.8d0 , &
+  3667.79d0 , &
+  3667.78d0 , &
+  3667.75d0 , &
+  3667.72d0 , &
+  3667.67d0 , &
+  3667.62d0 , &
+  3667.55d0 , &
+  3667.47d0 , &
+  3667.39d0 , &
+  3667.29d0 , &
+  3667.18d0 , &
+  3667.06d0 , &
+  3666.94d0 , &
+  3666.8d0 , &
+  3666.65d0 , &
+  3666.49d0 , &
+  3666.32d0 , &
+  3666.15d0 , &
+  3665.96d0 , &
+  3665.76d0 , &
+  3665.55d0 , &
+  3665.33d0 , &
+  3665.1d0 , &
+  3664.86d0 , &
+  3664.61d0 , &
+  3664.35d0 , &
+  3664.08d0 , &
+  3663.8d0 , &
+  3663.51d0 /)
 
- Mref_V%vpv_ref( 721 : 750 ) = (/ &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 /)
+  Mref_V_vsv_ref( 31 : 60 ) = (/ &
+  3663.21d0 , &
+  3662.9d0 , &
+  3662.57d0 , &
+  3662.24d0 , &
+  3661.9d0 , &
+  3661.55d0 , &
+  3661.19d0 , &
+  3660.81d0 , &
+  3660.43d0 , &
+  3660.04d0 , &
+  3659.64d0 , &
+  3659.22d0 , &
+  3658.8d0 , &
+  3658.36d0 , &
+  3657.92d0 , &
+  3657.47d0 , &
+  3657.d0 , &
+  3656.53d0 , &
+  3656.04d0 , &
+  3655.55d0 , &
+  3655.04d0 , &
+  3654.53d0 , &
+  3654.d0 , &
+  3653.47d0 , &
+  3652.92d0 , &
+  3652.36d0 , &
+  3651.8d0 , &
+  3651.22d0 , &
+  3650.63d0 , &
+  3650.04d0 /)
 
- Mref_V%vsv_ref( 1 : 30 ) = (/ &
- 3667.80000000000 , &
- 3667.79000000000 , &
- 3667.78000000000 , &
- 3667.75000000000 , &
- 3667.72000000000 , &
- 3667.67000000000 , &
- 3667.62000000000 , &
- 3667.55000000000 , &
- 3667.47000000000 , &
- 3667.39000000000 , &
- 3667.29000000000 , &
- 3667.18000000000 , &
- 3667.06000000000 , &
- 3666.94000000000 , &
- 3666.80000000000 , &
- 3666.65000000000 , &
- 3666.49000000000 , &
- 3666.32000000000 , &
- 3666.15000000000 , &
- 3665.96000000000 , &
- 3665.76000000000 , &
- 3665.55000000000 , &
- 3665.33000000000 , &
- 3665.10000000000 , &
- 3664.86000000000 , &
- 3664.61000000000 , &
- 3664.35000000000 , &
- 3664.08000000000 , &
- 3663.80000000000 , &
- 3663.51000000000 /)
+  Mref_V_vsv_ref( 61 : 90 ) = (/ &
+  3649.43d0 , &
+  3648.81d0 , &
+  3648.19d0 , &
+  3647.55d0 , &
+  3646.9d0 , &
+  3646.24d0 , &
+  3645.57d0 , &
+  3644.89d0 , &
+  3644.21d0 , &
+  3643.51d0 , &
+  3642.8d0 , &
+  3642.08d0 , &
+  3641.35d0 , &
+  3640.61d0 , &
+  3639.86d0 , &
+  3639.1d0 , &
+  3638.33d0 , &
+  3637.55d0 , &
+  3636.76d0 , &
+  3635.96d0 , &
+  3635.14d0 , &
+  3634.32d0 , &
+  3633.49d0 , &
+  3632.65d0 , &
+  3631.8d0 , &
+  3630.93d0 , &
+  3630.06d0 , &
+  3629.18d0 , &
+  3628.29d0 , &
+  3627.38d0 /)
 
- Mref_V%vsv_ref( 31 : 60 ) = (/ &
- 3663.21000000000 , &
- 3662.90000000000 , &
- 3662.57000000000 , &
- 3662.24000000000 , &
- 3661.90000000000 , &
- 3661.55000000000 , &
- 3661.19000000000 , &
- 3660.81000000000 , &
- 3660.43000000000 , &
- 3660.04000000000 , &
- 3659.64000000000 , &
- 3659.22000000000 , &
- 3658.80000000000 , &
- 3658.36000000000 , &
- 3657.92000000000 , &
- 3657.47000000000 , &
- 3657.00000000000 , &
- 3656.53000000000 , &
- 3656.04000000000 , &
- 3655.55000000000 , &
- 3655.04000000000 , &
- 3654.53000000000 , &
- 3654.00000000000 , &
- 3653.47000000000 , &
- 3652.92000000000 , &
- 3652.36000000000 , &
- 3651.80000000000 , &
- 3651.22000000000 , &
- 3650.63000000000 , &
- 3650.04000000000 /)
+  Mref_V_vsv_ref( 91 : 120 ) = (/ &
+  3626.47d0 , &
+  3625.55d0 , &
+  3624.61d0 , &
+  3623.67d0 , &
+  3622.71d0 , &
+  3621.75d0 , &
+  3620.78d0 , &
+  3619.79d0 , &
+  3618.8d0 , &
+  3617.79d0 , &
+  3616.78d0 , &
+  3615.75d0 , &
+  3614.71d0 , &
+  3613.67d0 , &
+  3612.61d0 , &
+  3611.55d0 , &
+  3610.47d0 , &
+  3609.38d0 , &
+  3608.28d0 , &
+  3607.18d0 , &
+  3606.06d0 , &
+  3604.93d0 , &
+  3603.79d0 , &
+  3602.65d0 , &
+  3601.49d0 , &
+  3600.32d0 , &
+  3599.14d0 , &
+  3597.95d0 , &
+  3596.75d0 , &
+  3595.54d0 /)
 
- Mref_V%vsv_ref( 61 : 90 ) = (/ &
- 3649.43000000000 , &
- 3648.81000000000 , &
- 3648.19000000000 , &
- 3647.55000000000 , &
- 3646.90000000000 , &
- 3646.24000000000 , &
- 3645.57000000000 , &
- 3644.89000000000 , &
- 3644.21000000000 , &
- 3643.51000000000 , &
- 3642.80000000000 , &
- 3642.08000000000 , &
- 3641.35000000000 , &
- 3640.61000000000 , &
- 3639.86000000000 , &
- 3639.10000000000 , &
- 3638.33000000000 , &
- 3637.55000000000 , &
- 3636.76000000000 , &
- 3635.96000000000 , &
- 3635.14000000000 , &
- 3634.32000000000 , &
- 3633.49000000000 , &
- 3632.65000000000 , &
- 3631.80000000000 , &
- 3630.93000000000 , &
- 3630.06000000000 , &
- 3629.18000000000 , &
- 3628.29000000000 , &
- 3627.38000000000 /)
+  Mref_V_vsv_ref( 121 : 150 ) = (/ &
+  3594.32d0 , &
+  3593.1d0 , &
+  3591.86d0 , &
+  3590.61d0 , &
+  3589.34d0 , &
+  3588.07d0 , &
+  3586.79d0 , &
+  3585.5d0 , &
+  3584.2d0 , &
+  3582.89d0 , &
+  3581.57d0 , &
+  3580.24d0 , &
+  3578.9d0 , &
+  3577.54d0 , &
+  3576.18d0 , &
+  3574.81d0 , &
+  3573.43d0 , &
+  3572.03d0 , &
+  3570.63d0 , &
+  3569.22d0 , &
+  3567.79d0 , &
+  3566.36d0 , &
+  3564.91d0 , &
+  3563.46d0 , &
+  3562.d0 , &
+  3560.52d0 , &
+  3559.04d0 , &
+  3557.54d0 , &
+  3556.04d0 , &
+  3554.52d0 /)
 
- Mref_V%vsv_ref( 91 : 120 ) = (/ &
- 3626.47000000000 , &
- 3625.55000000000 , &
- 3624.61000000000 , &
- 3623.67000000000 , &
- 3622.71000000000 , &
- 3621.75000000000 , &
- 3620.78000000000 , &
- 3619.79000000000 , &
- 3618.80000000000 , &
- 3617.79000000000 , &
- 3616.78000000000 , &
- 3615.75000000000 , &
- 3614.71000000000 , &
- 3613.67000000000 , &
- 3612.61000000000 , &
- 3611.55000000000 , &
- 3610.47000000000 , &
- 3609.38000000000 , &
- 3608.28000000000 , &
- 3607.18000000000 , &
- 3606.06000000000 , &
- 3604.93000000000 , &
- 3603.79000000000 , &
- 3602.65000000000 , &
- 3601.49000000000 , &
- 3600.32000000000 , &
- 3599.14000000000 , &
- 3597.95000000000 , &
- 3596.75000000000 , &
- 3595.54000000000 /)
+  Mref_V_vsv_ref( 151 : 180 ) = (/ &
+  3553.d0 , &
+  3551.46d0 , &
+  3549.91d0 , &
+  3548.36d0 , &
+  3546.79d0 , &
+  3545.21d0 , &
+  3543.63d0 , &
+  3542.03d0 , &
+  3540.42d0 , &
+  3538.81d0 , &
+  3537.18d0 , &
+  3535.54d0 , &
+  3533.89d0 , &
+  3532.23d0 , &
+  3530.57d0 , &
+  3528.89d0 , &
+  3527.2d0 , &
+  3525.5d0 , &
+  3523.79d0 , &
+  3522.07d0 , &
+  3520.34d0 , &
+  3518.6d0 , &
+  3516.85d0 , &
+  3515.09d0 , &
+  3513.32d0 , &
+  3511.54d0 , &
+  3509.75d0 , &
+  3507.95d0 , &
+  3506.13d0 , &
+  3504.31d0 /)
 
- Mref_V%vsv_ref( 121 : 150 ) = (/ &
- 3594.32000000000 , &
- 3593.10000000000 , &
- 3591.86000000000 , &
- 3590.61000000000 , &
- 3589.34000000000 , &
- 3588.07000000000 , &
- 3586.79000000000 , &
- 3585.50000000000 , &
- 3584.20000000000 , &
- 3582.89000000000 , &
- 3581.57000000000 , &
- 3580.24000000000 , &
- 3578.90000000000 , &
- 3577.54000000000 , &
- 3576.18000000000 , &
- 3574.81000000000 , &
- 3573.43000000000 , &
- 3572.03000000000 , &
- 3570.63000000000 , &
- 3569.22000000000 , &
- 3567.79000000000 , &
- 3566.36000000000 , &
- 3564.91000000000 , &
- 3563.46000000000 , &
- 3562.00000000000 , &
- 3560.52000000000 , &
- 3559.04000000000 , &
- 3557.54000000000 , &
- 3556.04000000000 , &
- 3554.52000000000 /)
+  Mref_V_vsv_ref( 181 : 210 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsv_ref( 151 : 180 ) = (/ &
- 3553.00000000000 , &
- 3551.46000000000 , &
- 3549.91000000000 , &
- 3548.36000000000 , &
- 3546.79000000000 , &
- 3545.21000000000 , &
- 3543.63000000000 , &
- 3542.03000000000 , &
- 3540.42000000000 , &
- 3538.81000000000 , &
- 3537.18000000000 , &
- 3535.54000000000 , &
- 3533.89000000000 , &
- 3532.23000000000 , &
- 3530.57000000000 , &
- 3528.89000000000 , &
- 3527.20000000000 , &
- 3525.50000000000 , &
- 3523.79000000000 , &
- 3522.07000000000 , &
- 3520.34000000000 , &
- 3518.60000000000 , &
- 3516.85000000000 , &
- 3515.09000000000 , &
- 3513.32000000000 , &
- 3511.54000000000 , &
- 3509.75000000000 , &
- 3507.95000000000 , &
- 3506.13000000000 , &
- 3504.31000000000 /)
+  Mref_V_vsv_ref( 211 : 240 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsv_ref( 181 : 210 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsv_ref( 241 : 270 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsv_ref( 211 : 240 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsv_ref( 271 : 300 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsv_ref( 241 : 270 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsv_ref( 301 : 330 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsv_ref( 271 : 300 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsv_ref( 331 : 360 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  7264.66d0 , &
+  7264.75d0 /)
 
- Mref_V%vsv_ref( 301 : 330 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsv_ref( 361 : 390 ) = (/ &
+  7264.85d0 , &
+  7264.94d0 , &
+  7265.03d0 , &
+  7265.12d0 , &
+  7265.21d0 , &
+  7265.29d0 , &
+  7265.38d0 , &
+  7265.46d0 , &
+  7265.54d0 , &
+  7265.62d0 , &
+  7265.69d0 , &
+  7265.76d0 , &
+  7265.84d0 , &
+  7265.91d0 , &
+  7265.97d0 , &
+  7265.97d0 , &
+  7261.63d0 , &
+  7257.29d0 , &
+  7252.97d0 , &
+  7248.64d0 , &
+  7244.33d0 , &
+  7240.01d0 , &
+  7235.71d0 , &
+  7231.41d0 , &
+  7227.12d0 , &
+  7222.83d0 , &
+  7218.55d0 , &
+  7214.27d0 , &
+  7210.d0 , &
+  7205.73d0 /)
 
- Mref_V%vsv_ref( 331 : 360 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 7264.66000000000 , &
- 7264.75000000000 /)
+  Mref_V_vsv_ref( 391 : 420 ) = (/ &
+  7201.47d0 , &
+  7197.21d0 , &
+  7192.95d0 , &
+  7188.7d0 , &
+  7184.45d0 , &
+  7180.21d0 , &
+  7175.97d0 , &
+  7171.73d0 , &
+  7167.5d0 , &
+  7163.27d0 , &
+  7159.04d0 , &
+  7154.81d0 , &
+  7150.59d0 , &
+  7146.37d0 , &
+  7142.15d0 , &
+  7137.93d0 , &
+  7133.71d0 , &
+  7129.5d0 , &
+  7125.29d0 , &
+  7121.07d0 , &
+  7116.86d0 , &
+  7112.65d0 , &
+  7108.44d0 , &
+  7104.23d0 , &
+  7100.02d0 , &
+  7095.81d0 , &
+  7091.6d0 , &
+  7087.39d0 , &
+  7083.18d0 , &
+  7078.96d0 /)
 
- Mref_V%vsv_ref( 361 : 390 ) = (/ &
- 7264.85000000000 , &
- 7264.94000000000 , &
- 7265.03000000000 , &
- 7265.12000000000 , &
- 7265.21000000000 , &
- 7265.29000000000 , &
- 7265.38000000000 , &
- 7265.46000000000 , &
- 7265.54000000000 , &
- 7265.62000000000 , &
- 7265.69000000000 , &
- 7265.76000000000 , &
- 7265.84000000000 , &
- 7265.91000000000 , &
- 7265.97000000000 , &
- 7265.97000000000 , &
- 7261.63000000000 , &
- 7257.29000000000 , &
- 7252.97000000000 , &
- 7248.64000000000 , &
- 7244.33000000000 , &
- 7240.01000000000 , &
- 7235.71000000000 , &
- 7231.41000000000 , &
- 7227.12000000000 , &
- 7222.83000000000 , &
- 7218.55000000000 , &
- 7214.27000000000 , &
- 7210.00000000000 , &
- 7205.73000000000 /)
+  Mref_V_vsv_ref( 421 : 450 ) = (/ &
+  7074.75d0 , &
+  7070.54d0 , &
+  7066.32d0 , &
+  7062.1d0 , &
+  7057.88d0 , &
+  7053.66d0 , &
+  7049.44d0 , &
+  7045.22d0 , &
+  7040.99d0 , &
+  7036.76d0 , &
+  7032.52d0 , &
+  7028.29d0 , &
+  7024.05d0 , &
+  7019.81d0 , &
+  7015.56d0 , &
+  7011.31d0 , &
+  7007.06d0 , &
+  7002.8d0 , &
+  6998.54d0 , &
+  6994.27d0 , &
+  6990.d0 , &
+  6985.72d0 , &
+  6981.44d0 , &
+  6977.15d0 , &
+  6972.86d0 , &
+  6968.57d0 , &
+  6964.26d0 , &
+  6959.95d0 , &
+  6955.64d0 , &
+  6951.32d0 /)
 
- Mref_V%vsv_ref( 391 : 420 ) = (/ &
- 7201.47000000000 , &
- 7197.21000000000 , &
- 7192.95000000000 , &
- 7188.70000000000 , &
- 7184.45000000000 , &
- 7180.21000000000 , &
- 7175.97000000000 , &
- 7171.73000000000 , &
- 7167.50000000000 , &
- 7163.27000000000 , &
- 7159.04000000000 , &
- 7154.81000000000 , &
- 7150.59000000000 , &
- 7146.37000000000 , &
- 7142.15000000000 , &
- 7137.93000000000 , &
- 7133.71000000000 , &
- 7129.50000000000 , &
- 7125.29000000000 , &
- 7121.07000000000 , &
- 7116.86000000000 , &
- 7112.65000000000 , &
- 7108.44000000000 , &
- 7104.23000000000 , &
- 7100.02000000000 , &
- 7095.81000000000 , &
- 7091.60000000000 , &
- 7087.39000000000 , &
- 7083.18000000000 , &
- 7078.96000000000 /)
+  Mref_V_vsv_ref( 451 : 480 ) = (/ &
+  6946.99d0 , &
+  6942.66d0 , &
+  6938.31d0 , &
+  6933.97d0 , &
+  6929.61d0 , &
+  6925.25d0 , &
+  6920.88d0 , &
+  6916.5d0 , &
+  6912.11d0 , &
+  6907.72d0 , &
+  6903.32d0 , &
+  6898.91d0 , &
+  6894.49d0 , &
+  6890.06d0 , &
+  6885.62d0 , &
+  6881.17d0 , &
+  6876.72d0 , &
+  6872.25d0 , &
+  6867.78d0 , &
+  6863.29d0 , &
+  6858.8d0 , &
+  6854.29d0 , &
+  6849.78d0 , &
+  6845.25d0 , &
+  6840.71d0 , &
+  6836.16d0 , &
+  6831.6d0 , &
+  6827.03d0 , &
+  6822.45d0 , &
+  6817.85d0 /)
 
- Mref_V%vsv_ref( 421 : 450 ) = (/ &
- 7074.75000000000 , &
- 7070.54000000000 , &
- 7066.32000000000 , &
- 7062.10000000000 , &
- 7057.88000000000 , &
- 7053.66000000000 , &
- 7049.44000000000 , &
- 7045.22000000000 , &
- 7040.99000000000 , &
- 7036.76000000000 , &
- 7032.52000000000 , &
- 7028.29000000000 , &
- 7024.05000000000 , &
- 7019.81000000000 , &
- 7015.56000000000 , &
- 7011.31000000000 , &
- 7007.06000000000 , &
- 7002.80000000000 , &
- 6998.54000000000 , &
- 6994.27000000000 , &
- 6990.00000000000 , &
- 6985.72000000000 , &
- 6981.44000000000 , &
- 6977.15000000000 , &
- 6972.86000000000 , &
- 6968.57000000000 , &
- 6964.26000000000 , &
- 6959.95000000000 , &
- 6955.64000000000 , &
- 6951.32000000000 /)
+  Mref_V_vsv_ref( 481 : 510 ) = (/ &
+  6813.25d0 , &
+  6808.63d0 , &
+  6804.d0 , &
+  6799.35d0 , &
+  6794.7d0 , &
+  6790.03d0 , &
+  6785.34d0 , &
+  6780.65d0 , &
+  6775.94d0 , &
+  6771.22d0 , &
+  6766.48d0 , &
+  6761.73d0 , &
+  6756.97d0 , &
+  6752.19d0 , &
+  6747.4d0 , &
+  6742.59d0 , &
+  6737.76d0 , &
+  6732.93d0 , &
+  6728.07d0 , &
+  6723.21d0 , &
+  6718.32d0 , &
+  6713.42d0 , &
+  6708.51d0 , &
+  6703.57d0 , &
+  6698.62d0 , &
+  6693.66d0 , &
+  6688.68d0 , &
+  6683.68d0 , &
+  6678.66d0 , &
+  6673.63d0 /)
 
- Mref_V%vsv_ref( 451 : 480 ) = (/ &
- 6946.99000000000 , &
- 6942.66000000000 , &
- 6938.31000000000 , &
- 6933.97000000000 , &
- 6929.61000000000 , &
- 6925.25000000000 , &
- 6920.88000000000 , &
- 6916.50000000000 , &
- 6912.11000000000 , &
- 6907.72000000000 , &
- 6903.32000000000 , &
- 6898.91000000000 , &
- 6894.49000000000 , &
- 6890.06000000000 , &
- 6885.62000000000 , &
- 6881.17000000000 , &
- 6876.72000000000 , &
- 6872.25000000000 , &
- 6867.78000000000 , &
- 6863.29000000000 , &
- 6858.80000000000 , &
- 6854.29000000000 , &
- 6849.78000000000 , &
- 6845.25000000000 , &
- 6840.71000000000 , &
- 6836.16000000000 , &
- 6831.60000000000 , &
- 6827.03000000000 , &
- 6822.45000000000 , &
- 6817.85000000000 /)
+  Mref_V_vsv_ref( 511 : 540 ) = (/ &
+  6668.58d0 , &
+  6663.51d0 , &
+  6658.43d0 , &
+  6653.32d0 , &
+  6648.2d0 , &
+  6643.06d0 , &
+  6637.9d0 , &
+  6632.73d0 , &
+  6627.53d0 , &
+  6622.31d0 , &
+  6617.08d0 , &
+  6611.82d0 , &
+  6606.55d0 , &
+  6601.26d0 , &
+  6595.94d0 , &
+  6590.61d0 , &
+  6584.91d0 , &
+  6579.51d0 , &
+  6574.11d0 , &
+  6568.67d0 , &
+  6563.22d0 , &
+  6557.74d0 , &
+  6552.24d0 , &
+  6546.73d0 , &
+  6541.19d0 , &
+  6535.63d0 , &
+  6530.05d0 , &
+  6524.44d0 , &
+  6518.82d0 , &
+  6513.17d0 /)
 
- Mref_V%vsv_ref( 481 : 510 ) = (/ &
- 6813.25000000000 , &
- 6808.63000000000 , &
- 6804.00000000000 , &
- 6799.35000000000 , &
- 6794.70000000000 , &
- 6790.03000000000 , &
- 6785.34000000000 , &
- 6780.65000000000 , &
- 6775.94000000000 , &
- 6771.22000000000 , &
- 6766.48000000000 , &
- 6761.73000000000 , &
- 6756.97000000000 , &
- 6752.19000000000 , &
- 6747.40000000000 , &
- 6742.59000000000 , &
- 6737.76000000000 , &
- 6732.93000000000 , &
- 6728.07000000000 , &
- 6723.21000000000 , &
- 6718.32000000000 , &
- 6713.42000000000 , &
- 6708.51000000000 , &
- 6703.57000000000 , &
- 6698.62000000000 , &
- 6693.66000000000 , &
- 6688.68000000000 , &
- 6683.68000000000 , &
- 6678.66000000000 , &
- 6673.63000000000 /)
+  Mref_V_vsv_ref( 541 : 570 ) = (/ &
+  6507.5d0 , &
+  6501.8d0 , &
+  6496.09d0 , &
+  6490.35d0 , &
+  6484.59d0 , &
+  6478.8d0 , &
+  6472.99d0 , &
+  6467.16d0 , &
+  6461.3d0 , &
+  6455.42d0 , &
+  6449.51d0 , &
+  6443.58d0 , &
+  6437.63d0 , &
+  6431.65d0 , &
+  6425.65d0 , &
+  6419.61d0 , &
+  6413.56d0 , &
+  6407.48d0 , &
+  6401.37d0 , &
+  6395.25d0 , &
+  6389.09d0 , &
+  6382.91d0 , &
+  6376.7d0 , &
+  6370.46d0 , &
+  6364.2d0 , &
+  6357.91d0 , &
+  6351.59d0 , &
+  6345.25d0 , &
+  6338.88d0 , &
+  6332.49d0 /)
 
- Mref_V%vsv_ref( 511 : 540 ) = (/ &
- 6668.58000000000 , &
- 6663.51000000000 , &
- 6658.43000000000 , &
- 6653.32000000000 , &
- 6648.20000000000 , &
- 6643.06000000000 , &
- 6637.90000000000 , &
- 6632.73000000000 , &
- 6627.53000000000 , &
- 6622.31000000000 , &
- 6617.08000000000 , &
- 6611.82000000000 , &
- 6606.55000000000 , &
- 6601.26000000000 , &
- 6595.94000000000 , &
- 6590.61000000000 , &
- 6584.91000000000 , &
- 6579.51000000000 , &
- 6574.11000000000 , &
- 6568.67000000000 , &
- 6563.22000000000 , &
- 6557.74000000000 , &
- 6552.24000000000 , &
- 6546.73000000000 , &
- 6541.19000000000 , &
- 6535.63000000000 , &
- 6530.05000000000 , &
- 6524.44000000000 , &
- 6518.82000000000 , &
- 6513.17000000000 /)
+  Mref_V_vsv_ref( 571 : 600 ) = (/ &
+  6326.05d0 , &
+  6319.6d0 , &
+  6313.13d0 , &
+  6306.62d0 , &
+  6300.08d0 , &
+  6293.52d0 , &
+  6286.92d0 , &
+  6280.29d0 , &
+  6273.64d0 , &
+  6266.96d0 , &
+  6260.25d0 , &
+  6253.51d0 , &
+  6246.75d0 , &
+  6239.95d0 , &
+  6239.95d0 , &
+  6219.68d0 , &
+  6200.29d0 , &
+  6181.16d0 , &
+  6162.04d0 , &
+  6143.01d0 , &
+  6123.98d0 , &
+  6103.71d0 , &
+  6083.53d0 , &
+  6063.45d0 , &
+  6043.44d0 , &
+  6023.52d0 , &
+  6003.73d0 , &
+  5984.03d0 , &
+  5964.38d0 , &
+  5944.81d0 /)
 
- Mref_V%vsv_ref( 541 : 570 ) = (/ &
- 6507.50000000000 , &
- 6501.80000000000 , &
- 6496.09000000000 , &
- 6490.35000000000 , &
- 6484.59000000000 , &
- 6478.80000000000 , &
- 6472.99000000000 , &
- 6467.16000000000 , &
- 6461.30000000000 , &
- 6455.42000000000 , &
- 6449.51000000000 , &
- 6443.58000000000 , &
- 6437.63000000000 , &
- 6431.65000000000 , &
- 6425.65000000000 , &
- 6419.61000000000 , &
- 6413.56000000000 , &
- 6407.48000000000 , &
- 6401.37000000000 , &
- 6395.25000000000 , &
- 6389.09000000000 , &
- 6382.91000000000 , &
- 6376.70000000000 , &
- 6370.46000000000 , &
- 6364.20000000000 , &
- 6357.91000000000 , &
- 6351.59000000000 , &
- 6345.25000000000 , &
- 6338.88000000000 , &
- 6332.49000000000 /)
+  Mref_V_vsv_ref( 601 : 630 ) = (/ &
+  5925.27d0 , &
+  5550.32d0 , &
+  5541.2d0 , &
+  5532.08d0 , &
+  5522.96d0 , &
+  5513.83d0 , &
+  5504.71d0 , &
+  5495.59d0 , &
+  5486.47d0 , &
+  5477.35d0 , &
+  5468.22d0 , &
+  5459.1d0 , &
+  5449.97d0 , &
+  5440.84d0 , &
+  5431.71d0 , &
+  5422.57d0 , &
+  5422.59d0 , &
+  5406.39d0 , &
+  5390.3d0 , &
+  5374.34d0 , &
+  5358.52d0 , &
+  5342.83d0 , &
+  5327.31d0 , &
+  5311.92d0 , &
+  5296.73d0 , &
+  5281.71d0 , &
+  5266.86d0 , &
+  5252.21d0 , &
+  5237.78d0 , &
+  5223.55d0 /)
 
- Mref_V%vsv_ref( 571 : 600 ) = (/ &
- 6326.05000000000 , &
- 6319.60000000000 , &
- 6313.13000000000 , &
- 6306.62000000000 , &
- 6300.08000000000 , &
- 6293.52000000000 , &
- 6286.92000000000 , &
- 6280.29000000000 , &
- 6273.64000000000 , &
- 6266.96000000000 , &
- 6260.25000000000 , &
- 6253.51000000000 , &
- 6246.75000000000 , &
- 6239.95000000000 , &
- 6239.95000000000 , &
- 6219.68000000000 , &
- 6200.29000000000 , &
- 6181.16000000000 , &
- 6162.04000000000 , &
- 6143.01000000000 , &
- 6123.98000000000 , &
- 6103.71000000000 , &
- 6083.53000000000 , &
- 6063.45000000000 , &
- 6043.44000000000 , &
- 6023.52000000000 , &
- 6003.73000000000 , &
- 5984.03000000000 , &
- 5964.38000000000 , &
- 5944.81000000000 /)
+  Mref_V_vsv_ref( 631 : 660 ) = (/ &
+  5209.54d0 , &
+  5195.72d0 , &
+  5182.1d0 , &
+  5168.69d0 , &
+  5155.42d0 , &
+  5142.22d0 , &
+  5129.05d0 , &
+  5115.84d0 , &
+  5102.55d0 , &
+  5089.14d0 , &
+  5075.5d0 , &
+  5061.63d0 , &
+  5047.46d0 , &
+  5032.93d0 , &
+  5018.03d0 , &
+  5002.66d0 , &
+  4986.77d0 , &
+  4802.15d0 , &
+  4798.23d0 , &
+  4794.28d0 , &
+  4790.38d0 , &
+  4785.95d0 , &
+  4780.83d0 , &
+  4775.01d0 , &
+  4768.45d0 , &
+  4761.12d0 , &
+  4752.97d0 , &
+  4744.01d0 , &
+  4734.25d0 , &
+  4723.77d0 /)
 
- Mref_V%vsv_ref( 601 : 630 ) = (/ &
- 5925.27000000000 , &
- 5550.32000000000 , &
- 5541.20000000000 , &
- 5532.08000000000 , &
- 5522.96000000000 , &
- 5513.83000000000 , &
- 5504.71000000000 , &
- 5495.59000000000 , &
- 5486.47000000000 , &
- 5477.35000000000 , &
- 5468.22000000000 , &
- 5459.10000000000 , &
- 5449.97000000000 , &
- 5440.84000000000 , &
- 5431.71000000000 , &
- 5422.57000000000 , &
- 5422.59000000000 , &
- 5406.39000000000 , &
- 5390.30000000000 , &
- 5374.34000000000 , &
- 5358.52000000000 , &
- 5342.83000000000 , &
- 5327.31000000000 , &
- 5311.92000000000 , &
- 5296.73000000000 , &
- 5281.71000000000 , &
- 5266.86000000000 , &
- 5252.21000000000 , &
- 5237.78000000000 , &
- 5223.55000000000 /)
+  Mref_V_vsv_ref( 661 : 690 ) = (/ &
+  4712.7d0 , &
+  4701.12d0 , &
+  4689.11d0 , &
+  4676.77d0 , &
+  4664.2d0 , &
+  4651.49d0 , &
+  4638.69d0 , &
+  4625.88d0 , &
+  4613.07d0 , &
+  4600.31d0 , &
+  4587.67d0 , &
+  4575.18d0 , &
+  4562.88d0 , &
+  4550.85d0 , &
+  4539.08d0 , &
+  4527.67d0 , &
+  4516.65d0 , &
+  4506.09d0 , &
+  4506.d0 , &
+  4496.29d0 , &
+  4487.d0 , &
+  4478.17d0 , &
+  4469.83d0 , &
+  4462.d0 , &
+  4454.69d0 , &
+  4447.94d0 , &
+  4441.76d0 , &
+  4436.18d0 , &
+  4431.2d0 , &
+  4426.83d0 /)
 
- Mref_V%vsv_ref( 631 : 660 ) = (/ &
- 5209.54000000000 , &
- 5195.72000000000 , &
- 5182.10000000000 , &
- 5168.69000000000 , &
- 5155.42000000000 , &
- 5142.22000000000 , &
- 5129.05000000000 , &
- 5115.84000000000 , &
- 5102.55000000000 , &
- 5089.14000000000 , &
- 5075.50000000000 , &
- 5061.63000000000 , &
- 5047.46000000000 , &
- 5032.93000000000 , &
- 5018.03000000000 , &
- 5002.66000000000 , &
- 4986.77000000000 , &
- 4802.15000000000 , &
- 4798.23000000000 , &
- 4794.28000000000 , &
- 4790.38000000000 , &
- 4785.95000000000 , &
- 4780.83000000000 , &
- 4775.01000000000 , &
- 4768.45000000000 , &
- 4761.12000000000 , &
- 4752.97000000000 , &
- 4744.01000000000 , &
- 4734.25000000000 , &
- 4723.77000000000 /)
+  Mref_V_vsv_ref( 691 : 720 ) = (/ &
+  4423.12d0 , &
+  4420.09d0 , &
+  4417.81d0 , &
+  4416.3d0 , &
+  4415.67d0 , &
+  4415.93d0 , &
+  4417.15d0 , &
+  4419.42d0 , &
+  4422.78d0 , &
+  4427.25d0 , &
+  4432.88d0 , &
+  4439.57d0 , &
+  4439.74d0 , &
+  4444.71d0 , &
+  4450.28d0 , &
+  4456.35d0 , &
+  4462.89d0 , &
+  4469.94d0 , &
+  4477.4d0 , &
+  4485.33d0 , &
+  4493.69d0 , &
+  4502.48d0 , &
+  4511.66d0 , &
+  4521.24d0 , &
+  4531.23d0 , &
+  4541.57d0 , &
+  4552.08d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 /)
 
- Mref_V%vsv_ref( 661 : 690 ) = (/ &
- 4712.70000000000 , &
- 4701.12000000000 , &
- 4689.11000000000 , &
- 4676.77000000000 , &
- 4664.20000000000 , &
- 4651.49000000000 , &
- 4638.69000000000 , &
- 4625.88000000000 , &
- 4613.07000000000 , &
- 4600.31000000000 , &
- 4587.67000000000 , &
- 4575.18000000000 , &
- 4562.88000000000 , &
- 4550.85000000000 , &
- 4539.08000000000 , &
- 4527.67000000000 , &
- 4516.65000000000 , &
- 4506.09000000000 , &
- 4506.00000000000 , &
- 4496.29000000000 , &
- 4487.00000000000 , &
- 4478.17000000000 , &
- 4469.83000000000 , &
- 4462.00000000000 , &
- 4454.69000000000 , &
- 4447.94000000000 , &
- 4441.76000000000 , &
- 4436.18000000000 , &
- 4431.20000000000 , &
- 4426.83000000000 /)
+  Mref_V_vsv_ref( 721 : 750 ) = (/ &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 /)
 
- Mref_V%vsv_ref( 691 : 720 ) = (/ &
- 4423.12000000000 , &
- 4420.09000000000 , &
- 4417.81000000000 , &
- 4416.30000000000 , &
- 4415.67000000000 , &
- 4415.93000000000 , &
- 4417.15000000000 , &
- 4419.42000000000 , &
- 4422.78000000000 , &
- 4427.25000000000 , &
- 4432.88000000000 , &
- 4439.57000000000 , &
- 4439.74000000000 , &
- 4444.71000000000 , &
- 4450.28000000000 , &
- 4456.35000000000 , &
- 4462.89000000000 , &
- 4469.94000000000 , &
- 4477.40000000000 , &
- 4485.33000000000 , &
- 4493.69000000000 , &
- 4502.48000000000 , &
- 4511.66000000000 , &
- 4521.24000000000 , &
- 4531.23000000000 , &
- 4541.57000000000 , &
- 4552.08000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 /)
+  Mref_V_Qkappa_ref( 1 : 30 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%vsv_ref( 721 : 750 ) = (/ &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 /)
+  Mref_V_Qkappa_ref( 31 : 60 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%Qkappa_ref( 1 : 30 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 61 : 90 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%Qkappa_ref( 31 : 60 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 91 : 120 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%Qkappa_ref( 61 : 90 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 121 : 150 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%Qkappa_ref( 91 : 120 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 151 : 180 ) = (/ &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 , &
+  1327.6d0 /)
 
- Mref_V%Qkappa_ref( 121 : 150 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 181 : 210 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 151 : 180 ) = (/ &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 , &
- 1327.60000000000 /)
+  Mref_V_Qkappa_ref( 211 : 240 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 181 : 210 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 241 : 270 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 211 : 240 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 271 : 300 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 241 : 270 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 301 : 330 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 271 : 300 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 331 : 360 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 301 : 330 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 361 : 390 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 331 : 360 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 391 : 420 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 361 : 390 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 421 : 450 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 391 : 420 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 451 : 480 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 421 : 450 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 481 : 510 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 451 : 480 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 511 : 540 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 481 : 510 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 541 : 570 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 511 : 540 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 571 : 600 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 541 : 570 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 601 : 630 ) = (/ &
+  57822.5d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 /)
 
- Mref_V%Qkappa_ref( 571 : 600 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qkappa_ref( 631 : 660 ) = (/ &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 /)
 
- Mref_V%Qkappa_ref( 601 : 630 ) = (/ &
- 57822.5000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 /)
+  Mref_V_Qkappa_ref( 661 : 690 ) = (/ &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 /)
 
- Mref_V%Qkappa_ref( 631 : 660 ) = (/ &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 /)
+  Mref_V_Qkappa_ref( 691 : 720 ) = (/ &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  943.d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 661 : 690 ) = (/ &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 /)
+  Mref_V_Qkappa_ref( 721 : 750 ) = (/ &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 , &
+  57822.5d0 /)
 
- Mref_V%Qkappa_ref( 691 : 720 ) = (/ &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 943.000000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qmu_ref( 1 : 30 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qkappa_ref( 721 : 750 ) = (/ &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 , &
- 57822.5000000000 /)
+  Mref_V_Qmu_ref( 31 : 60 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qmu_ref( 1 : 30 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 61 : 90 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qmu_ref( 31 : 60 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 91 : 120 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qmu_ref( 61 : 90 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 121 : 150 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qmu_ref( 91 : 120 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 151 : 180 ) = (/ &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 , &
+  104.d0 /)
 
- Mref_V%Qmu_ref( 121 : 150 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 181 : 210 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%Qmu_ref( 151 : 180 ) = (/ &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 , &
- 104.000000000000 /)
+  Mref_V_Qmu_ref( 211 : 240 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%Qmu_ref( 181 : 210 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_Qmu_ref( 241 : 270 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%Qmu_ref( 211 : 240 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_Qmu_ref( 271 : 300 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%Qmu_ref( 241 : 270 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_Qmu_ref( 301 : 330 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%Qmu_ref( 271 : 300 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_Qmu_ref( 331 : 360 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 301 : 330 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_Qmu_ref( 361 : 390 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 331 : 360 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 391 : 420 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 361 : 390 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 421 : 450 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 391 : 420 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 451 : 480 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 421 : 450 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 481 : 510 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 451 : 480 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 511 : 540 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 481 : 510 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 541 : 570 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 511 : 540 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 571 : 600 ) = (/ &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 , &
+  355.d0 /)
 
- Mref_V%Qmu_ref( 541 : 570 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 601 : 630 ) = (/ &
+  355.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 /)
 
- Mref_V%Qmu_ref( 571 : 600 ) = (/ &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 , &
- 355.000000000000 /)
+  Mref_V_Qmu_ref( 631 : 660 ) = (/ &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 /)
 
- Mref_V%Qmu_ref( 601 : 630 ) = (/ &
- 355.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 /)
+  Mref_V_Qmu_ref( 661 : 690 ) = (/ &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  165.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 /)
 
- Mref_V%Qmu_ref( 631 : 660 ) = (/ &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 /)
+  Mref_V_Qmu_ref( 691 : 720 ) = (/ &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  70.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  191.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 /)
 
- Mref_V%Qmu_ref( 661 : 690 ) = (/ &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 165.000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 /)
+  Mref_V_Qmu_ref( 721 : 750 ) = (/ &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 , &
+  300.d0 /)
 
- Mref_V%Qmu_ref( 691 : 720 ) = (/ &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 70.0000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 191.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 /)
+  Mref_V_vph_ref( 1 : 30 ) = (/ &
+  11262.2d0 , &
+  11262.2d0 , &
+  11262.18d0 , &
+  11262.14d0 , &
+  11262.09d0 , &
+  11262.02d0 , &
+  11261.94d0 , &
+  11261.85d0 , &
+  11261.74d0 , &
+  11261.61d0 , &
+  11261.47d0 , &
+  11261.32d0 , &
+  11261.15d0 , &
+  11260.97d0 , &
+  11260.77d0 , &
+  11260.56d0 , &
+  11260.34d0 , &
+  11260.09d0 , &
+  11259.84d0 , &
+  11259.57d0 , &
+  11259.28d0 , &
+  11258.99d0 , &
+  11258.67d0 , &
+  11258.34d0 , &
+  11258.d0 , &
+  11257.64d0 , &
+  11257.27d0 , &
+  11256.88d0 , &
+  11256.48d0 , &
+  11256.06d0 /)
 
- Mref_V%Qmu_ref( 721 : 750 ) = (/ &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 , &
- 300.000000000000 /)
+  Mref_V_vph_ref( 31 : 60 ) = (/ &
+  11255.63d0 , &
+  11255.19d0 , &
+  11254.73d0 , &
+  11254.25d0 , &
+  11253.76d0 , &
+  11253.26d0 , &
+  11252.74d0 , &
+  11252.21d0 , &
+  11251.66d0 , &
+  11251.1d0 , &
+  11250.52d0 , &
+  11249.93d0 , &
+  11249.33d0 , &
+  11248.71d0 , &
+  11248.07d0 , &
+  11247.42d0 , &
+  11246.76d0 , &
+  11246.08d0 , &
+  11245.38d0 , &
+  11244.67d0 , &
+  11243.95d0 , &
+  11243.21d0 , &
+  11242.46d0 , &
+  11241.7d0 , &
+  11240.91d0 , &
+  11240.12d0 , &
+  11239.31d0 , &
+  11238.48d0 , &
+  11237.64d0 , &
+  11236.79d0 /)
 
- Mref_V%vph_ref( 1 : 30 ) = (/ &
- 11262.2000000000 , &
- 11262.2000000000 , &
- 11262.1800000000 , &
- 11262.1400000000 , &
- 11262.0900000000 , &
- 11262.0200000000 , &
- 11261.9400000000 , &
- 11261.8500000000 , &
- 11261.7400000000 , &
- 11261.6100000000 , &
- 11261.4700000000 , &
- 11261.3200000000 , &
- 11261.1500000000 , &
- 11260.9700000000 , &
- 11260.7700000000 , &
- 11260.5600000000 , &
- 11260.3400000000 , &
- 11260.0900000000 , &
- 11259.8400000000 , &
- 11259.5700000000 , &
- 11259.2800000000 , &
- 11258.9900000000 , &
- 11258.6700000000 , &
- 11258.3400000000 , &
- 11258.0000000000 , &
- 11257.6400000000 , &
- 11257.2700000000 , &
- 11256.8800000000 , &
- 11256.4800000000 , &
- 11256.0600000000 /)
+  Mref_V_vph_ref( 61 : 90 ) = (/ &
+  11235.92d0 , &
+  11235.04d0 , &
+  11234.14d0 , &
+  11233.23d0 , &
+  11232.3d0 , &
+  11231.36d0 , &
+  11230.4d0 , &
+  11229.43d0 , &
+  11228.44d0 , &
+  11227.44d0 , &
+  11226.43d0 , &
+  11225.4d0 , &
+  11224.36d0 , &
+  11223.3d0 , &
+  11222.22d0 , &
+  11221.14d0 , &
+  11220.03d0 , &
+  11218.92d0 , &
+  11217.78d0 , &
+  11216.64d0 , &
+  11215.48d0 , &
+  11214.3d0 , &
+  11213.11d0 , &
+  11211.91d0 , &
+  11210.69d0 , &
+  11209.45d0 , &
+  11208.21d0 , &
+  11206.94d0 , &
+  11205.67d0 , &
+  11204.37d0 /)
 
- Mref_V%vph_ref( 31 : 60 ) = (/ &
- 11255.6300000000 , &
- 11255.1900000000 , &
- 11254.7300000000 , &
- 11254.2500000000 , &
- 11253.7600000000 , &
- 11253.2600000000 , &
- 11252.7400000000 , &
- 11252.2100000000 , &
- 11251.6600000000 , &
- 11251.1000000000 , &
- 11250.5200000000 , &
- 11249.9300000000 , &
- 11249.3300000000 , &
- 11248.7100000000 , &
- 11248.0700000000 , &
- 11247.4200000000 , &
- 11246.7600000000 , &
- 11246.0800000000 , &
- 11245.3800000000 , &
- 11244.6700000000 , &
- 11243.9500000000 , &
- 11243.2100000000 , &
- 11242.4600000000 , &
- 11241.7000000000 , &
- 11240.9100000000 , &
- 11240.1200000000 , &
- 11239.3100000000 , &
- 11238.4800000000 , &
- 11237.6400000000 , &
- 11236.7900000000 /)
+  Mref_V_vph_ref( 91 : 120 ) = (/ &
+  11203.07d0 , &
+  11201.74d0 , &
+  11200.41d0 , &
+  11199.06d0 , &
+  11197.69d0 , &
+  11196.31d0 , &
+  11194.92d0 , &
+  11193.51d0 , &
+  11192.09d0 , &
+  11190.65d0 , &
+  11189.19d0 , &
+  11187.73d0 , &
+  11186.24d0 , &
+  11184.75d0 , &
+  11183.24d0 , &
+  11181.71d0 , &
+  11180.17d0 , &
+  11178.61d0 , &
+  11177.04d0 , &
+  11175.46d0 , &
+  11173.86d0 , &
+  11172.25d0 , &
+  11170.62d0 , &
+  11168.98d0 , &
+  11167.32d0 , &
+  11165.65d0 , &
+  11163.96d0 , &
+  11162.26d0 , &
+  11160.54d0 , &
+  11158.81d0 /)
 
- Mref_V%vph_ref( 61 : 90 ) = (/ &
- 11235.9200000000 , &
- 11235.0400000000 , &
- 11234.1400000000 , &
- 11233.2300000000 , &
- 11232.3000000000 , &
- 11231.3600000000 , &
- 11230.4000000000 , &
- 11229.4300000000 , &
- 11228.4400000000 , &
- 11227.4400000000 , &
- 11226.4300000000 , &
- 11225.4000000000 , &
- 11224.3600000000 , &
- 11223.3000000000 , &
- 11222.2200000000 , &
- 11221.1400000000 , &
- 11220.0300000000 , &
- 11218.9200000000 , &
- 11217.7800000000 , &
- 11216.6400000000 , &
- 11215.4800000000 , &
- 11214.3000000000 , &
- 11213.1100000000 , &
- 11211.9100000000 , &
- 11210.6900000000 , &
- 11209.4500000000 , &
- 11208.2100000000 , &
- 11206.9400000000 , &
- 11205.6700000000 , &
- 11204.3700000000 /)
+  Mref_V_vph_ref( 121 : 150 ) = (/ &
+  11157.07d0 , &
+  11155.31d0 , &
+  11153.54d0 , &
+  11151.75d0 , &
+  11149.94d0 , &
+  11148.13d0 , &
+  11146.29d0 , &
+  11144.45d0 , &
+  11142.58d0 , &
+  11140.71d0 , &
+  11138.82d0 , &
+  11136.91d0 , &
+  11134.99d0 , &
+  11133.06d0 , &
+  11131.11d0 , &
+  11129.14d0 , &
+  11127.16d0 , &
+  11125.17d0 , &
+  11123.16d0 , &
+  11121.14d0 , &
+  11119.1d0 , &
+  11117.05d0 , &
+  11114.99d0 , &
+  11112.9d0 , &
+  11110.81d0 , &
+  11108.7d0 , &
+  11106.57d0 , &
+  11104.44d0 , &
+  11102.28d0 , &
+  11100.11d0 /)
 
- Mref_V%vph_ref( 91 : 120 ) = (/ &
- 11203.0700000000 , &
- 11201.7400000000 , &
- 11200.4100000000 , &
- 11199.0600000000 , &
- 11197.6900000000 , &
- 11196.3100000000 , &
- 11194.9200000000 , &
- 11193.5100000000 , &
- 11192.0900000000 , &
- 11190.6500000000 , &
- 11189.1900000000 , &
- 11187.7300000000 , &
- 11186.2400000000 , &
- 11184.7500000000 , &
- 11183.2400000000 , &
- 11181.7100000000 , &
- 11180.1700000000 , &
- 11178.6100000000 , &
- 11177.0400000000 , &
- 11175.4600000000 , &
- 11173.8600000000 , &
- 11172.2500000000 , &
- 11170.6200000000 , &
- 11168.9800000000 , &
- 11167.3200000000 , &
- 11165.6500000000 , &
- 11163.9600000000 , &
- 11162.2600000000 , &
- 11160.5400000000 , &
- 11158.8100000000 /)
+  Mref_V_vph_ref( 151 : 180 ) = (/ &
+  11097.93d0 , &
+  11095.73d0 , &
+  11093.52d0 , &
+  11091.29d0 , &
+  11089.05d0 , &
+  11086.8d0 , &
+  11084.53d0 , &
+  11082.24d0 , &
+  11079.94d0 , &
+  11077.63d0 , &
+  11075.3d0 , &
+  11072.95d0 , &
+  11070.59d0 , &
+  11068.22d0 , &
+  11065.83d0 , &
+  11063.43d0 , &
+  11061.02d0 , &
+  11058.58d0 , &
+  11056.14d0 , &
+  11053.68d0 , &
+  11051.2d0 , &
+  11048.71d0 , &
+  11046.21d0 , &
+  11043.69d0 , &
+  11041.16d0 , &
+  11038.61d0 , &
+  11036.05d0 , &
+  11033.47d0 , &
+  11030.88d0 , &
+  11028.27d0 /)
 
- Mref_V%vph_ref( 121 : 150 ) = (/ &
- 11157.0700000000 , &
- 11155.3100000000 , &
- 11153.5400000000 , &
- 11151.7500000000 , &
- 11149.9400000000 , &
- 11148.1300000000 , &
- 11146.2900000000 , &
- 11144.4500000000 , &
- 11142.5800000000 , &
- 11140.7100000000 , &
- 11138.8200000000 , &
- 11136.9100000000 , &
- 11134.9900000000 , &
- 11133.0600000000 , &
- 11131.1100000000 , &
- 11129.1400000000 , &
- 11127.1600000000 , &
- 11125.1700000000 , &
- 11123.1600000000 , &
- 11121.1400000000 , &
- 11119.1000000000 , &
- 11117.0500000000 , &
- 11114.9900000000 , &
- 11112.9000000000 , &
- 11110.8100000000 , &
- 11108.7000000000 , &
- 11106.5700000000 , &
- 11104.4400000000 , &
- 11102.2800000000 , &
- 11100.1100000000 /)
+  Mref_V_vph_ref( 181 : 210 ) = (/ &
+  10355.69d0 , &
+  10348.28d0 , &
+  10340.85d0 , &
+  10333.39d0 , &
+  10325.91d0 , &
+  10318.4d0 , &
+  10310.87d0 , &
+  10303.3d0 , &
+  10295.71d0 , &
+  10288.09d0 , &
+  10280.44d0 , &
+  10272.76d0 , &
+  10265.04d0 , &
+  10257.3d0 , &
+  10249.52d0 , &
+  10241.71d0 , &
+  10233.86d0 , &
+  10225.98d0 , &
+  10218.06d0 , &
+  10210.11d0 , &
+  10202.12d0 , &
+  10194.1d0 , &
+  10186.04d0 , &
+  10177.94d0 , &
+  10169.79d0 , &
+  10161.61d0 , &
+  10153.39d0 , &
+  10145.13d0 , &
+  10136.83d0 , &
+  10128.48d0 /)
 
- Mref_V%vph_ref( 151 : 180 ) = (/ &
- 11097.9300000000 , &
- 11095.7300000000 , &
- 11093.5200000000 , &
- 11091.2900000000 , &
- 11089.0500000000 , &
- 11086.8000000000 , &
- 11084.5300000000 , &
- 11082.2400000000 , &
- 11079.9400000000 , &
- 11077.6300000000 , &
- 11075.3000000000 , &
- 11072.9500000000 , &
- 11070.5900000000 , &
- 11068.2200000000 , &
- 11065.8300000000 , &
- 11063.4300000000 , &
- 11061.0200000000 , &
- 11058.5800000000 , &
- 11056.1400000000 , &
- 11053.6800000000 , &
- 11051.2000000000 , &
- 11048.7100000000 , &
- 11046.2100000000 , &
- 11043.6900000000 , &
- 11041.1600000000 , &
- 11038.6100000000 , &
- 11036.0500000000 , &
- 11033.4700000000 , &
- 11030.8800000000 , &
- 11028.2700000000 /)
+  Mref_V_vph_ref( 211 : 240 ) = (/ &
+  10120.09d0 , &
+  10111.66d0 , &
+  10103.18d0 , &
+  10094.66d0 , &
+  10086.09d0 , &
+  10077.48d0 , &
+  10068.82d0 , &
+  10060.11d0 , &
+  10051.35d0 , &
+  10042.54d0 , &
+  10033.69d0 , &
+  10024.78d0 , &
+  10015.82d0 , &
+  10006.82d0 , &
+  9997.75d0 , &
+  9988.64d0 , &
+  9979.47d0 , &
+  9970.25d0 , &
+  9960.97d0 , &
+  9951.64d0 , &
+  9942.25d0 , &
+  9932.81d0 , &
+  9923.31d0 , &
+  9913.75d0 , &
+  9904.13d0 , &
+  9894.45d0 , &
+  9884.71d0 , &
+  9874.91d0 , &
+  9865.05d0 , &
+  9855.13d0 /)
 
- Mref_V%vph_ref( 181 : 210 ) = (/ &
- 10355.6900000000 , &
- 10348.2800000000 , &
- 10340.8500000000 , &
- 10333.3900000000 , &
- 10325.9100000000 , &
- 10318.4000000000 , &
- 10310.8700000000 , &
- 10303.3000000000 , &
- 10295.7100000000 , &
- 10288.0900000000 , &
- 10280.4400000000 , &
- 10272.7600000000 , &
- 10265.0400000000 , &
- 10257.3000000000 , &
- 10249.5200000000 , &
- 10241.7100000000 , &
- 10233.8600000000 , &
- 10225.9800000000 , &
- 10218.0600000000 , &
- 10210.1100000000 , &
- 10202.1200000000 , &
- 10194.1000000000 , &
- 10186.0400000000 , &
- 10177.9400000000 , &
- 10169.7900000000 , &
- 10161.6100000000 , &
- 10153.3900000000 , &
- 10145.1300000000 , &
- 10136.8300000000 , &
- 10128.4800000000 /)
+  Mref_V_vph_ref( 241 : 270 ) = (/ &
+  9845.14d0 , &
+  9835.09d0 , &
+  9824.98d0 , &
+  9814.8d0 , &
+  9804.56d0 , &
+  9794.25d0 , &
+  9783.87d0 , &
+  9773.43d0 , &
+  9762.92d0 , &
+  9752.34d0 , &
+  9741.69d0 , &
+  9730.97d0 , &
+  9720.18d0 , &
+  9709.32d0 , &
+  9698.39d0 , &
+  9687.38d0 , &
+  9676.31d0 , &
+  9665.15d0 , &
+  9653.93d0 , &
+  9642.63d0 , &
+  9631.25d0 , &
+  9619.8d0 , &
+  9608.27d0 , &
+  9596.66d0 , &
+  9584.97d0 , &
+  9573.2d0 , &
+  9561.36d0 , &
+  9549.43d0 , &
+  9537.43d0 , &
+  9525.34d0 /)
 
- Mref_V%vph_ref( 211 : 240 ) = (/ &
- 10120.0900000000 , &
- 10111.6600000000 , &
- 10103.1800000000 , &
- 10094.6600000000 , &
- 10086.0900000000 , &
- 10077.4800000000 , &
- 10068.8200000000 , &
- 10060.1100000000 , &
- 10051.3500000000 , &
- 10042.5400000000 , &
- 10033.6900000000 , &
- 10024.7800000000 , &
- 10015.8200000000 , &
- 10006.8200000000 , &
- 9997.75000000000 , &
- 9988.64000000000 , &
- 9979.47000000000 , &
- 9970.25000000000 , &
- 9960.97000000000 , &
- 9951.64000000000 , &
- 9942.25000000000 , &
- 9932.81000000000 , &
- 9923.31000000000 , &
- 9913.75000000000 , &
- 9904.13000000000 , &
- 9894.45000000000 , &
- 9884.71000000000 , &
- 9874.91000000000 , &
- 9865.05000000000 , &
- 9855.13000000000 /)
+  Mref_V_vph_ref( 271 : 300 ) = (/ &
+  9513.17d0 , &
+  9500.91d0 , &
+  9488.57d0 , &
+  9476.15d0 , &
+  9463.64d0 , &
+  9451.05d0 , &
+  9438.37d0 , &
+  9425.61d0 , &
+  9412.75d0 , &
+  9399.81d0 , &
+  9386.78d0 , &
+  9373.66d0 , &
+  9360.45d0 , &
+  9347.15d0 , &
+  9333.76d0 , &
+  9320.27d0 , &
+  9306.7d0 , &
+  9293.03d0 , &
+  9279.26d0 , &
+  9265.4d0 , &
+  9251.45d0 , &
+  9237.4d0 , &
+  9223.25d0 , &
+  9209.d0 , &
+  9194.66d0 , &
+  9180.22d0 , &
+  9165.68d0 , &
+  9151.03d0 , &
+  9136.29d0 , &
+  9121.45d0 /)
 
- Mref_V%vph_ref( 241 : 270 ) = (/ &
- 9845.14000000000 , &
- 9835.09000000000 , &
- 9824.98000000000 , &
- 9814.80000000000 , &
- 9804.56000000000 , &
- 9794.25000000000 , &
- 9783.87000000000 , &
- 9773.43000000000 , &
- 9762.92000000000 , &
- 9752.34000000000 , &
- 9741.69000000000 , &
- 9730.97000000000 , &
- 9720.18000000000 , &
- 9709.32000000000 , &
- 9698.39000000000 , &
- 9687.38000000000 , &
- 9676.31000000000 , &
- 9665.15000000000 , &
- 9653.93000000000 , &
- 9642.63000000000 , &
- 9631.25000000000 , &
- 9619.80000000000 , &
- 9608.27000000000 , &
- 9596.66000000000 , &
- 9584.97000000000 , &
- 9573.20000000000 , &
- 9561.36000000000 , &
- 9549.43000000000 , &
- 9537.43000000000 , &
- 9525.34000000000 /)
+  Mref_V_vph_ref( 301 : 330 ) = (/ &
+  9106.5d0 , &
+  9091.46d0 , &
+  9076.3d0 , &
+  9061.05d0 , &
+  9045.69d0 , &
+  9030.23d0 , &
+  9014.65d0 , &
+  8998.98d0 , &
+  8983.19d0 , &
+  8967.3d0 , &
+  8951.3d0 , &
+  8935.19d0 , &
+  8918.97d0 , &
+  8902.64d0 , &
+  8886.2d0 , &
+  8869.64d0 , &
+  8852.98d0 , &
+  8836.2d0 , &
+  8819.31d0 , &
+  8802.3d0 , &
+  8785.18d0 , &
+  8767.94d0 , &
+  8750.59d0 , &
+  8733.12d0 , &
+  8715.53d0 , &
+  8697.82d0 , &
+  8680.d0 , &
+  8662.05d0 , &
+  8643.99d0 , &
+  8625.8d0 /)
 
- Mref_V%vph_ref( 271 : 300 ) = (/ &
- 9513.17000000000 , &
- 9500.91000000000 , &
- 9488.57000000000 , &
- 9476.15000000000 , &
- 9463.64000000000 , &
- 9451.05000000000 , &
- 9438.37000000000 , &
- 9425.61000000000 , &
- 9412.75000000000 , &
- 9399.81000000000 , &
- 9386.78000000000 , &
- 9373.66000000000 , &
- 9360.45000000000 , &
- 9347.15000000000 , &
- 9333.76000000000 , &
- 9320.27000000000 , &
- 9306.70000000000 , &
- 9293.03000000000 , &
- 9279.26000000000 , &
- 9265.40000000000 , &
- 9251.45000000000 , &
- 9237.40000000000 , &
- 9223.25000000000 , &
- 9209.00000000000 , &
- 9194.66000000000 , &
- 9180.22000000000 , &
- 9165.68000000000 , &
- 9151.03000000000 , &
- 9136.29000000000 , &
- 9121.45000000000 /)
+  Mref_V_vph_ref( 331 : 360 ) = (/ &
+  8607.49d0 , &
+  8589.06d0 , &
+  8570.51d0 , &
+  8551.83d0 , &
+  8533.03d0 , &
+  8514.1d0 , &
+  8495.05d0 , &
+  8475.87d0 , &
+  8456.57d0 , &
+  8437.14d0 , &
+  8417.58d0 , &
+  8397.89d0 , &
+  8378.07d0 , &
+  8358.12d0 , &
+  8338.04d0 , &
+  8317.83d0 , &
+  8297.49d0 , &
+  8277.01d0 , &
+  8256.41d0 , &
+  8235.66d0 , &
+  8214.79d0 , &
+  8193.77d0 , &
+  8172.62d0 , &
+  8151.34d0 , &
+  8129.92d0 , &
+  8108.36d0 , &
+  8086.66d0 , &
+  8064.82d0 , &
+  13716.6d0 , &
+  13714.29d0 /)
 
- Mref_V%vph_ref( 301 : 330 ) = (/ &
- 9106.50000000000 , &
- 9091.46000000000 , &
- 9076.30000000000 , &
- 9061.05000000000 , &
- 9045.69000000000 , &
- 9030.23000000000 , &
- 9014.65000000000 , &
- 8998.98000000000 , &
- 8983.19000000000 , &
- 8967.30000000000 , &
- 8951.30000000000 , &
- 8935.19000000000 , &
- 8918.97000000000 , &
- 8902.64000000000 , &
- 8886.20000000000 , &
- 8869.64000000000 , &
- 8852.98000000000 , &
- 8836.20000000000 , &
- 8819.31000000000 , &
- 8802.30000000000 , &
- 8785.18000000000 , &
- 8767.94000000000 , &
- 8750.59000000000 , &
- 8733.12000000000 , &
- 8715.53000000000 , &
- 8697.82000000000 , &
- 8680.00000000000 , &
- 8662.05000000000 , &
- 8643.99000000000 , &
- 8625.80000000000 /)
+  Mref_V_vph_ref( 361 : 390 ) = (/ &
+  13712.d0 , &
+  13709.7d0 , &
+  13707.42d0 , &
+  13705.14d0 , &
+  13702.86d0 , &
+  13700.59d0 , &
+  13698.33d0 , &
+  13696.07d0 , &
+  13693.82d0 , &
+  13691.57d0 , &
+  13689.33d0 , &
+  13687.09d0 , &
+  13684.86d0 , &
+  13682.63d0 , &
+  13680.41d0 , &
+  13680.41d0 , &
+  13668.9d0 , &
+  13657.43d0 , &
+  13645.97d0 , &
+  13634.54d0 , &
+  13623.14d0 , &
+  13611.76d0 , &
+  13600.4d0 , &
+  13589.07d0 , &
+  13577.76d0 , &
+  13566.47d0 , &
+  13555.2d0 , &
+  13543.95d0 , &
+  13532.72d0 , &
+  13521.51d0 /)
 
- Mref_V%vph_ref( 331 : 360 ) = (/ &
- 8607.49000000000 , &
- 8589.06000000000 , &
- 8570.51000000000 , &
- 8551.83000000000 , &
- 8533.03000000000 , &
- 8514.10000000000 , &
- 8495.05000000000 , &
- 8475.87000000000 , &
- 8456.57000000000 , &
- 8437.14000000000 , &
- 8417.58000000000 , &
- 8397.89000000000 , &
- 8378.07000000000 , &
- 8358.12000000000 , &
- 8338.04000000000 , &
- 8317.83000000000 , &
- 8297.49000000000 , &
- 8277.01000000000 , &
- 8256.41000000000 , &
- 8235.66000000000 , &
- 8214.79000000000 , &
- 8193.77000000000 , &
- 8172.62000000000 , &
- 8151.34000000000 , &
- 8129.92000000000 , &
- 8108.36000000000 , &
- 8086.66000000000 , &
- 8064.82000000000 , &
- 13716.6000000000 , &
- 13714.2900000000 /)
+  Mref_V_vph_ref( 391 : 420 ) = (/ &
+  13510.32d0 , &
+  13499.14d0 , &
+  13487.99d0 , &
+  13476.85d0 , &
+  13465.73d0 , &
+  13454.63d0 , &
+  13443.54d0 , &
+  13432.46d0 , &
+  13421.41d0 , &
+  13410.36d0 , &
+  13399.33d0 , &
+  13388.31d0 , &
+  13377.31d0 , &
+  13366.31d0 , &
+  13355.33d0 , &
+  13344.36d0 , &
+  13333.4d0 , &
+  13322.45d0 , &
+  13311.51d0 , &
+  13300.58d0 , &
+  13289.66d0 , &
+  13278.74d0 , &
+  13267.84d0 , &
+  13256.93d0 , &
+  13246.04d0 , &
+  13235.15d0 , &
+  13224.27d0 , &
+  13213.39d0 , &
+  13202.51d0 , &
+  13191.64d0 /)
 
- Mref_V%vph_ref( 361 : 390 ) = (/ &
- 13712.0000000000 , &
- 13709.7000000000 , &
- 13707.4200000000 , &
- 13705.1400000000 , &
- 13702.8600000000 , &
- 13700.5900000000 , &
- 13698.3300000000 , &
- 13696.0700000000 , &
- 13693.8200000000 , &
- 13691.5700000000 , &
- 13689.3300000000 , &
- 13687.0900000000 , &
- 13684.8600000000 , &
- 13682.6300000000 , &
- 13680.4100000000 , &
- 13680.4100000000 , &
- 13668.9000000000 , &
- 13657.4300000000 , &
- 13645.9700000000 , &
- 13634.5400000000 , &
- 13623.1400000000 , &
- 13611.7600000000 , &
- 13600.4000000000 , &
- 13589.0700000000 , &
- 13577.7600000000 , &
- 13566.4700000000 , &
- 13555.2000000000 , &
- 13543.9500000000 , &
- 13532.7200000000 , &
- 13521.5100000000 /)
+  Mref_V_vph_ref( 421 : 450 ) = (/ &
+  13180.78d0 , &
+  13169.91d0 , &
+  13159.05d0 , &
+  13148.19d0 , &
+  13137.33d0 , &
+  13126.47d0 , &
+  13115.61d0 , &
+  13104.75d0 , &
+  13093.89d0 , &
+  13083.02d0 , &
+  13072.16d0 , &
+  13061.29d0 , &
+  13050.42d0 , &
+  13039.55d0 , &
+  13028.67d0 , &
+  13017.78d0 , &
+  13006.9d0 , &
+  12996.d0 , &
+  12985.1d0 , &
+  12974.19d0 , &
+  12963.28d0 , &
+  12952.36d0 , &
+  12941.42d0 , &
+  12930.48d0 , &
+  12919.54d0 , &
+  12908.58d0 , &
+  12897.61d0 , &
+  12886.63d0 , &
+  12875.63d0 , &
+  12864.63d0 /)
 
- Mref_V%vph_ref( 391 : 420 ) = (/ &
- 13510.3200000000 , &
- 13499.1400000000 , &
- 13487.9900000000 , &
- 13476.8500000000 , &
- 13465.7300000000 , &
- 13454.6300000000 , &
- 13443.5400000000 , &
- 13432.4600000000 , &
- 13421.4100000000 , &
- 13410.3600000000 , &
- 13399.3300000000 , &
- 13388.3100000000 , &
- 13377.3100000000 , &
- 13366.3100000000 , &
- 13355.3300000000 , &
- 13344.3600000000 , &
- 13333.4000000000 , &
- 13322.4500000000 , &
- 13311.5100000000 , &
- 13300.5800000000 , &
- 13289.6600000000 , &
- 13278.7400000000 , &
- 13267.8400000000 , &
- 13256.9300000000 , &
- 13246.0400000000 , &
- 13235.1500000000 , &
- 13224.2700000000 , &
- 13213.3900000000 , &
- 13202.5100000000 , &
- 13191.6400000000 /)
+  Mref_V_vph_ref( 451 : 480 ) = (/ &
+  12853.61d0 , &
+  12842.58d0 , &
+  12831.54d0 , &
+  12820.48d0 , &
+  12809.41d0 , &
+  12798.32d0 , &
+  12787.22d0 , &
+  12776.1d0 , &
+  12764.96d0 , &
+  12753.81d0 , &
+  12742.63d0 , &
+  12731.44d0 , &
+  12720.24d0 , &
+  12709.01d0 , &
+  12697.76d0 , &
+  12686.49d0 , &
+  12675.2d0 , &
+  12663.89d0 , &
+  12652.56d0 , &
+  12641.2d0 , &
+  12629.82d0 , &
+  12618.42d0 , &
+  12606.99d0 , &
+  12595.54d0 , &
+  12584.06d0 , &
+  12572.56d0 , &
+  12561.03d0 , &
+  12549.48d0 , &
+  12537.89d0 , &
+  12526.28d0 /)
 
- Mref_V%vph_ref( 421 : 450 ) = (/ &
- 13180.7800000000 , &
- 13169.9100000000 , &
- 13159.0500000000 , &
- 13148.1900000000 , &
- 13137.3300000000 , &
- 13126.4700000000 , &
- 13115.6100000000 , &
- 13104.7500000000 , &
- 13093.8900000000 , &
- 13083.0200000000 , &
- 13072.1600000000 , &
- 13061.2900000000 , &
- 13050.4200000000 , &
- 13039.5500000000 , &
- 13028.6700000000 , &
- 13017.7800000000 , &
- 13006.9000000000 , &
- 12996.0000000000 , &
- 12985.1000000000 , &
- 12974.1900000000 , &
- 12963.2800000000 , &
- 12952.3600000000 , &
- 12941.4200000000 , &
- 12930.4800000000 , &
- 12919.5400000000 , &
- 12908.5800000000 , &
- 12897.6100000000 , &
- 12886.6300000000 , &
- 12875.6300000000 , &
- 12864.6300000000 /)
+  Mref_V_vph_ref( 481 : 510 ) = (/ &
+  12514.64d0 , &
+  12502.98d0 , &
+  12491.28d0 , &
+  12479.55d0 , &
+  12467.79d0 , &
+  12456.01d0 , &
+  12444.19d0 , &
+  12432.33d0 , &
+  12420.45d0 , &
+  12408.53d0 , &
+  12396.58d0 , &
+  12384.6d0 , &
+  12372.58d0 , &
+  12360.52d0 , &
+  12348.43d0 , &
+  12336.3d0 , &
+  12324.14d0 , &
+  12311.94d0 , &
+  12299.7d0 , &
+  12287.42d0 , &
+  12275.11d0 , &
+  12262.75d0 , &
+  12250.35d0 , &
+  12237.92d0 , &
+  12225.44d0 , &
+  12212.92d0 , &
+  12200.36d0 , &
+  12187.76d0 , &
+  12175.11d0 , &
+  12162.43d0 /)
 
- Mref_V%vph_ref( 451 : 480 ) = (/ &
- 12853.6100000000 , &
- 12842.5800000000 , &
- 12831.5400000000 , &
- 12820.4800000000 , &
- 12809.4100000000 , &
- 12798.3200000000 , &
- 12787.2200000000 , &
- 12776.1000000000 , &
- 12764.9600000000 , &
- 12753.8100000000 , &
- 12742.6300000000 , &
- 12731.4400000000 , &
- 12720.2400000000 , &
- 12709.0100000000 , &
- 12697.7600000000 , &
- 12686.4900000000 , &
- 12675.2000000000 , &
- 12663.8900000000 , &
- 12652.5600000000 , &
- 12641.2000000000 , &
- 12629.8200000000 , &
- 12618.4200000000 , &
- 12606.9900000000 , &
- 12595.5400000000 , &
- 12584.0600000000 , &
- 12572.5600000000 , &
- 12561.0300000000 , &
- 12549.4800000000 , &
- 12537.8900000000 , &
- 12526.2800000000 /)
+  Mref_V_vph_ref( 511 : 540 ) = (/ &
+  12149.69d0 , &
+  12136.91d0 , &
+  12124.09d0 , &
+  12111.22d0 , &
+  12098.31d0 , &
+  12085.34d0 , &
+  12072.34d0 , &
+  12059.28d0 , &
+  12046.17d0 , &
+  12033.02d0 , &
+  12019.82d0 , &
+  12006.56d0 , &
+  11993.26d0 , &
+  11979.9d0 , &
+  11966.5d0 , &
+  11953.04d0 , &
+  11939.53d0 , &
+  11925.97d0 , &
+  11912.35d0 , &
+  11898.69d0 , &
+  11884.96d0 , &
+  11871.19d0 , &
+  11857.37d0 , &
+  11843.48d0 , &
+  11829.55d0 , &
+  11815.57d0 , &
+  11801.53d0 , &
+  11787.44d0 , &
+  11773.3d0 , &
+  11759.1d0 /)
 
- Mref_V%vph_ref( 481 : 510 ) = (/ &
- 12514.6400000000 , &
- 12502.9800000000 , &
- 12491.2800000000 , &
- 12479.5500000000 , &
- 12467.7900000000 , &
- 12456.0100000000 , &
- 12444.1900000000 , &
- 12432.3300000000 , &
- 12420.4500000000 , &
- 12408.5300000000 , &
- 12396.5800000000 , &
- 12384.6000000000 , &
- 12372.5800000000 , &
- 12360.5200000000 , &
- 12348.4300000000 , &
- 12336.3000000000 , &
- 12324.1400000000 , &
- 12311.9400000000 , &
- 12299.7000000000 , &
- 12287.4200000000 , &
- 12275.1100000000 , &
- 12262.7500000000 , &
- 12250.3500000000 , &
- 12237.9200000000 , &
- 12225.4400000000 , &
- 12212.9200000000 , &
- 12200.3600000000 , &
- 12187.7600000000 , &
- 12175.1100000000 , &
- 12162.4300000000 /)
+  Mref_V_vph_ref( 541 : 570 ) = (/ &
+  11744.85d0 , &
+  11730.55d0 , &
+  11716.18d0 , &
+  11701.78d0 , &
+  11687.31d0 , &
+  11672.8d0 , &
+  11658.23d0 , &
+  11643.6d0 , &
+  11628.92d0 , &
+  11614.19d0 , &
+  11599.4d0 , &
+  11584.57d0 , &
+  11569.68d0 , &
+  11554.72d0 , &
+  11539.72d0 , &
+  11524.67d0 , &
+  11509.56d0 , &
+  11494.39d0 , &
+  11479.17d0 , &
+  11463.89d0 , &
+  11448.55d0 , &
+  11433.17d0 , &
+  11417.73d0 , &
+  11402.23d0 , &
+  11386.68d0 , &
+  11371.07d0 , &
+  11355.41d0 , &
+  11339.69d0 , &
+  11323.91d0 , &
+  11308.09d0 /)
 
- Mref_V%vph_ref( 511 : 540 ) = (/ &
- 12149.6900000000 , &
- 12136.9100000000 , &
- 12124.0900000000 , &
- 12111.2200000000 , &
- 12098.3100000000 , &
- 12085.3400000000 , &
- 12072.3400000000 , &
- 12059.2800000000 , &
- 12046.1700000000 , &
- 12033.0200000000 , &
- 12019.8200000000 , &
- 12006.5600000000 , &
- 11993.2600000000 , &
- 11979.9000000000 , &
- 11966.5000000000 , &
- 11953.0400000000 , &
- 11939.5300000000 , &
- 11925.9700000000 , &
- 11912.3500000000 , &
- 11898.6900000000 , &
- 11884.9600000000 , &
- 11871.1900000000 , &
- 11857.3700000000 , &
- 11843.4800000000 , &
- 11829.5500000000 , &
- 11815.5700000000 , &
- 11801.5300000000 , &
- 11787.4400000000 , &
- 11773.3000000000 , &
- 11759.1000000000 /)
+  Mref_V_vph_ref( 571 : 600 ) = (/ &
+  11292.2d0 , &
+  11276.25d0 , &
+  11260.25d0 , &
+  11244.19d0 , &
+  11228.08d0 , &
+  11211.9d0 , &
+  11195.67d0 , &
+  11179.38d0 , &
+  11163.04d0 , &
+  11146.63d0 , &
+  11130.18d0 , &
+  11113.67d0 , &
+  11097.11d0 , &
+  11080.51d0 , &
+  11080.51d0 , &
+  11063.01d0 , &
+  11045.22d0 , &
+  11026.82d0 , &
+  11008.47d0 , &
+  10989.04d0 , &
+  10969.63d0 , &
+  10948.76d0 , &
+  10928.02d0 , &
+  10907.42d0 , &
+  10886.94d0 , &
+  10866.6d0 , &
+  10846.41d0 , &
+  10826.35d0 , &
+  10806.42d0 , &
+  10786.61d0 /)
 
- Mref_V%vph_ref( 541 : 570 ) = (/ &
- 11744.8500000000 , &
- 11730.5500000000 , &
- 11716.1800000000 , &
- 11701.7800000000 , &
- 11687.3100000000 , &
- 11672.8000000000 , &
- 11658.2300000000 , &
- 11643.6000000000 , &
- 11628.9200000000 , &
- 11614.1900000000 , &
- 11599.4000000000 , &
- 11584.5700000000 , &
- 11569.6800000000 , &
- 11554.7200000000 , &
- 11539.7200000000 , &
- 11524.6700000000 , &
- 11509.5600000000 , &
- 11494.3900000000 , &
- 11479.1700000000 , &
- 11463.8900000000 , &
- 11448.5500000000 , &
- 11433.1700000000 , &
- 11417.7300000000 , &
- 11402.2300000000 , &
- 11386.6800000000 , &
- 11371.0700000000 , &
- 11355.4100000000 , &
- 11339.6900000000 , &
- 11323.9100000000 , &
- 11308.0900000000 /)
+  Mref_V_vph_ref( 601 : 630 ) = (/ &
+  10766.9d0 , &
+  10278.88d0 , &
+  10261.87d0 , &
+  10244.84d0 , &
+  10227.82d0 , &
+  10210.8d0 , &
+  10193.78d0 , &
+  10176.77d0 , &
+  10159.74d0 , &
+  10142.72d0 , &
+  10125.71d0 , &
+  10108.7d0 , &
+  10091.68d0 , &
+  10074.68d0 , &
+  10057.68d0 , &
+  10040.64d0 , &
+  10040.67d0 , &
+  10010.52d0 , &
+  9980.51d0 , &
+  9950.64d0 , &
+  9920.91d0 , &
+  9891.35d0 , &
+  9861.96d0 , &
+  9832.79d0 , &
+  9803.79d0 , &
+  9774.98d0 , &
+  9746.41d0 , &
+  9718.08d0 , &
+  9689.96d0 , &
+  9662.1d0 /)
 
- Mref_V%vph_ref( 571 : 600 ) = (/ &
- 11292.2000000000 , &
- 11276.2500000000 , &
- 11260.2500000000 , &
- 11244.1900000000 , &
- 11228.0800000000 , &
- 11211.9000000000 , &
- 11195.6700000000 , &
- 11179.3800000000 , &
- 11163.0400000000 , &
- 11146.6300000000 , &
- 11130.1800000000 , &
- 11113.6700000000 , &
- 11097.1100000000 , &
- 11080.5100000000 , &
- 11080.5100000000 , &
- 11063.0100000000 , &
- 11045.2200000000 , &
- 11026.8200000000 , &
- 11008.4700000000 , &
- 10989.0400000000 , &
- 10969.6300000000 , &
- 10948.7600000000 , &
- 10928.0200000000 , &
- 10907.4200000000 , &
- 10886.9400000000 , &
- 10866.6000000000 , &
- 10846.4100000000 , &
- 10826.3500000000 , &
- 10806.4200000000 , &
- 10786.6100000000 /)
+  Mref_V_vph_ref( 631 : 660 ) = (/ &
+  9634.47d0 , &
+  9607.11d0 , &
+  9579.97d0 , &
+  9553.08d0 , &
+  9526.38d0 , &
+  9499.78d0 , &
+  9473.25d0 , &
+  9446.74d0 , &
+  9420.19d0 , &
+  9393.55d0 , &
+  9366.75d0 , &
+  9339.76d0 , &
+  9312.5d0 , &
+  9284.96d0 , &
+  9257.04d0 , &
+  9228.73d0 , &
+  9199.94d0 , &
+  8940.94d0 , &
+  8930.61d0 , &
+  8920.22d0 , &
+  8909.68d0 , &
+  8898.47d0 , &
+  8886.28d0 , &
+  8873.03d0 , &
+  8858.58d0 , &
+  8842.82d0 , &
+  8825.64d0 , &
+  8806.94d0 , &
+  8786.67d0 , &
+  8764.85d0 /)
 
- Mref_V%vph_ref( 601 : 630 ) = (/ &
- 10766.9000000000 , &
- 10278.8800000000 , &
- 10261.8700000000 , &
- 10244.8400000000 , &
- 10227.8200000000 , &
- 10210.8000000000 , &
- 10193.7800000000 , &
- 10176.7700000000 , &
- 10159.7400000000 , &
- 10142.7200000000 , &
- 10125.7100000000 , &
- 10108.7000000000 , &
- 10091.6800000000 , &
- 10074.6800000000 , &
- 10057.6800000000 , &
- 10040.6400000000 , &
- 10040.6700000000 , &
- 10010.5200000000 , &
- 9980.51000000000 , &
- 9950.64000000000 , &
- 9920.91000000000 , &
- 9891.35000000000 , &
- 9861.96000000000 , &
- 9832.79000000000 , &
- 9803.79000000000 , &
- 9774.98000000000 , &
- 9746.41000000000 , &
- 9718.08000000000 , &
- 9689.96000000000 , &
- 9662.10000000000 /)
+  Mref_V_vph_ref( 661 : 690 ) = (/ &
+  8741.49d0 , &
+  8716.63d0 , &
+  8690.3d0 , &
+  8662.5d0 , &
+  8633.28d0 , &
+  8602.66d0 , &
+  8570.81d0 , &
+  8538.06d0 , &
+  8504.66d0 , &
+  8470.92d0 , &
+  8437.13d0 , &
+  8403.52d0 , &
+  8370.42d0 , &
+  8338.11d0 , &
+  8307.42d0 , &
+  8278.36d0 , &
+  8255.33d0 , &
+  8236.9d0 , &
+  8236.81d0 , &
+  8222.27d0 , &
+  8210.47d0 , &
+  8201.14d0 , &
+  8193.99d0 , &
+  8188.67d0 , &
+  8184.92d0 , &
+  8182.39d0 , &
+  8180.79d0 , &
+  8179.83d0 , &
+  8179.17d0 , &
+  8178.54d0 /)
 
- Mref_V%vph_ref( 631 : 660 ) = (/ &
- 9634.47000000000 , &
- 9607.11000000000 , &
- 9579.97000000000 , &
- 9553.08000000000 , &
- 9526.38000000000 , &
- 9499.78000000000 , &
- 9473.25000000000 , &
- 9446.74000000000 , &
- 9420.19000000000 , &
- 9393.55000000000 , &
- 9366.75000000000 , &
- 9339.76000000000 , &
- 9312.50000000000 , &
- 9284.96000000000 , &
- 9257.04000000000 , &
- 9228.73000000000 , &
- 9199.94000000000 , &
- 8940.94000000000 , &
- 8930.61000000000 , &
- 8920.22000000000 , &
- 8909.68000000000 , &
- 8898.47000000000 , &
- 8886.28000000000 , &
- 8873.03000000000 , &
- 8858.58000000000 , &
- 8842.82000000000 , &
- 8825.64000000000 , &
- 8806.94000000000 , &
- 8786.67000000000 , &
- 8764.85000000000 /)
+  Mref_V_vph_ref( 691 : 720 ) = (/ &
+  8177.64d0 , &
+  8176.3d0 , &
+  8174.55d0 , &
+  8172.42d0 , &
+  8169.91d0 , &
+  8167.05d0 , &
+  8163.88d0 , &
+  8160.37d0 , &
+  8156.58d0 , &
+  8152.57d0 , &
+  8148.41d0 , &
+  8144.2d0 , &
+  8144.32d0 , &
+  8141.6d0 , &
+  8139.01d0 , &
+  8136.5d0 , &
+  8134.11d0 , &
+  8131.82d0 , &
+  8129.66d0 , &
+  8127.6d0 , &
+  8125.65d0 , &
+  8123.87d0 , &
+  8122.23d0 , &
+  8120.74d0 , &
+  8119.38d0 , &
+  8118.22d0 , &
+  8117.13d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 /)
 
- Mref_V%vph_ref( 661 : 690 ) = (/ &
- 8741.49000000000 , &
- 8716.63000000000 , &
- 8690.30000000000 , &
- 8662.50000000000 , &
- 8633.28000000000 , &
- 8602.66000000000 , &
- 8570.81000000000 , &
- 8538.06000000000 , &
- 8504.66000000000 , &
- 8470.92000000000 , &
- 8437.13000000000 , &
- 8403.52000000000 , &
- 8370.42000000000 , &
- 8338.11000000000 , &
- 8307.42000000000 , &
- 8278.36000000000 , &
- 8255.33000000000 , &
- 8236.90000000000 , &
- 8236.81000000000 , &
- 8222.27000000000 , &
- 8210.47000000000 , &
- 8201.14000000000 , &
- 8193.99000000000 , &
- 8188.67000000000 , &
- 8184.92000000000 , &
- 8182.39000000000 , &
- 8180.79000000000 , &
- 8179.83000000000 , &
- 8179.17000000000 , &
- 8178.54000000000 /)
+  Mref_V_vph_ref( 721 : 750 ) = (/ &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  6800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 , &
+  5800.d0 /)
 
- Mref_V%vph_ref( 691 : 720 ) = (/ &
- 8177.64000000000 , &
- 8176.30000000000 , &
- 8174.55000000000 , &
- 8172.42000000000 , &
- 8169.91000000000 , &
- 8167.05000000000 , &
- 8163.88000000000 , &
- 8160.37000000000 , &
- 8156.58000000000 , &
- 8152.57000000000 , &
- 8148.41000000000 , &
- 8144.20000000000 , &
- 8144.32000000000 , &
- 8141.60000000000 , &
- 8139.01000000000 , &
- 8136.50000000000 , &
- 8134.11000000000 , &
- 8131.82000000000 , &
- 8129.66000000000 , &
- 8127.60000000000 , &
- 8125.65000000000 , &
- 8123.87000000000 , &
- 8122.23000000000 , &
- 8120.74000000000 , &
- 8119.38000000000 , &
- 8118.22000000000 , &
- 8117.13000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 /)
+  Mref_V_vsh_ref( 1 : 30 ) = (/ &
+  3667.8d0 , &
+  3667.79d0 , &
+  3667.78d0 , &
+  3667.75d0 , &
+  3667.72d0 , &
+  3667.67d0 , &
+  3667.62d0 , &
+  3667.55d0 , &
+  3667.47d0 , &
+  3667.39d0 , &
+  3667.29d0 , &
+  3667.18d0 , &
+  3667.06d0 , &
+  3666.94d0 , &
+  3666.8d0 , &
+  3666.65d0 , &
+  3666.49d0 , &
+  3666.32d0 , &
+  3666.15d0 , &
+  3665.96d0 , &
+  3665.76d0 , &
+  3665.55d0 , &
+  3665.33d0 , &
+  3665.1d0 , &
+  3664.86d0 , &
+  3664.61d0 , &
+  3664.35d0 , &
+  3664.08d0 , &
+  3663.8d0 , &
+  3663.51d0 /)
 
- Mref_V%vph_ref( 721 : 750 ) = (/ &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 6800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 , &
- 5800.00000000000 /)
+  Mref_V_vsh_ref( 31 : 60 ) = (/ &
+  3663.21d0 , &
+  3662.9d0 , &
+  3662.57d0 , &
+  3662.24d0 , &
+  3661.9d0 , &
+  3661.55d0 , &
+  3661.19d0 , &
+  3660.81d0 , &
+  3660.43d0 , &
+  3660.04d0 , &
+  3659.64d0 , &
+  3659.22d0 , &
+  3658.8d0 , &
+  3658.36d0 , &
+  3657.92d0 , &
+  3657.47d0 , &
+  3657.d0 , &
+  3656.53d0 , &
+  3656.04d0 , &
+  3655.55d0 , &
+  3655.04d0 , &
+  3654.53d0 , &
+  3654.d0 , &
+  3653.47d0 , &
+  3652.92d0 , &
+  3652.36d0 , &
+  3651.8d0 , &
+  3651.22d0 , &
+  3650.63d0 , &
+  3650.04d0 /)
 
- Mref_V%vsh_ref( 1 : 30 ) = (/ &
- 3667.80000000000 , &
- 3667.79000000000 , &
- 3667.78000000000 , &
- 3667.75000000000 , &
- 3667.72000000000 , &
- 3667.67000000000 , &
- 3667.62000000000 , &
- 3667.55000000000 , &
- 3667.47000000000 , &
- 3667.39000000000 , &
- 3667.29000000000 , &
- 3667.18000000000 , &
- 3667.06000000000 , &
- 3666.94000000000 , &
- 3666.80000000000 , &
- 3666.65000000000 , &
- 3666.49000000000 , &
- 3666.32000000000 , &
- 3666.15000000000 , &
- 3665.96000000000 , &
- 3665.76000000000 , &
- 3665.55000000000 , &
- 3665.33000000000 , &
- 3665.10000000000 , &
- 3664.86000000000 , &
- 3664.61000000000 , &
- 3664.35000000000 , &
- 3664.08000000000 , &
- 3663.80000000000 , &
- 3663.51000000000 /)
+  Mref_V_vsh_ref( 61 : 90 ) = (/ &
+  3649.43d0 , &
+  3648.81d0 , &
+  3648.19d0 , &
+  3647.55d0 , &
+  3646.9d0 , &
+  3646.24d0 , &
+  3645.57d0 , &
+  3644.89d0 , &
+  3644.21d0 , &
+  3643.51d0 , &
+  3642.8d0 , &
+  3642.08d0 , &
+  3641.35d0 , &
+  3640.61d0 , &
+  3639.86d0 , &
+  3639.1d0 , &
+  3638.33d0 , &
+  3637.55d0 , &
+  3636.76d0 , &
+  3635.96d0 , &
+  3635.14d0 , &
+  3634.32d0 , &
+  3633.49d0 , &
+  3632.65d0 , &
+  3631.8d0 , &
+  3630.93d0 , &
+  3630.06d0 , &
+  3629.18d0 , &
+  3628.29d0 , &
+  3627.38d0 /)
 
- Mref_V%vsh_ref( 31 : 60 ) = (/ &
- 3663.21000000000 , &
- 3662.90000000000 , &
- 3662.57000000000 , &
- 3662.24000000000 , &
- 3661.90000000000 , &
- 3661.55000000000 , &
- 3661.19000000000 , &
- 3660.81000000000 , &
- 3660.43000000000 , &
- 3660.04000000000 , &
- 3659.64000000000 , &
- 3659.22000000000 , &
- 3658.80000000000 , &
- 3658.36000000000 , &
- 3657.92000000000 , &
- 3657.47000000000 , &
- 3657.00000000000 , &
- 3656.53000000000 , &
- 3656.04000000000 , &
- 3655.55000000000 , &
- 3655.04000000000 , &
- 3654.53000000000 , &
- 3654.00000000000 , &
- 3653.47000000000 , &
- 3652.92000000000 , &
- 3652.36000000000 , &
- 3651.80000000000 , &
- 3651.22000000000 , &
- 3650.63000000000 , &
- 3650.04000000000 /)
+  Mref_V_vsh_ref( 91 : 120 ) = (/ &
+  3626.47d0 , &
+  3625.55d0 , &
+  3624.61d0 , &
+  3623.67d0 , &
+  3622.71d0 , &
+  3621.75d0 , &
+  3620.78d0 , &
+  3619.79d0 , &
+  3618.8d0 , &
+  3617.79d0 , &
+  3616.78d0 , &
+  3615.75d0 , &
+  3614.71d0 , &
+  3613.67d0 , &
+  3612.61d0 , &
+  3611.55d0 , &
+  3610.47d0 , &
+  3609.38d0 , &
+  3608.28d0 , &
+  3607.18d0 , &
+  3606.06d0 , &
+  3604.93d0 , &
+  3603.79d0 , &
+  3602.65d0 , &
+  3601.49d0 , &
+  3600.32d0 , &
+  3599.14d0 , &
+  3597.95d0 , &
+  3596.75d0 , &
+  3595.54d0 /)
 
- Mref_V%vsh_ref( 61 : 90 ) = (/ &
- 3649.43000000000 , &
- 3648.81000000000 , &
- 3648.19000000000 , &
- 3647.55000000000 , &
- 3646.90000000000 , &
- 3646.24000000000 , &
- 3645.57000000000 , &
- 3644.89000000000 , &
- 3644.21000000000 , &
- 3643.51000000000 , &
- 3642.80000000000 , &
- 3642.08000000000 , &
- 3641.35000000000 , &
- 3640.61000000000 , &
- 3639.86000000000 , &
- 3639.10000000000 , &
- 3638.33000000000 , &
- 3637.55000000000 , &
- 3636.76000000000 , &
- 3635.96000000000 , &
- 3635.14000000000 , &
- 3634.32000000000 , &
- 3633.49000000000 , &
- 3632.65000000000 , &
- 3631.80000000000 , &
- 3630.93000000000 , &
- 3630.06000000000 , &
- 3629.18000000000 , &
- 3628.29000000000 , &
- 3627.38000000000 /)
+  Mref_V_vsh_ref( 121 : 150 ) = (/ &
+  3594.32d0 , &
+  3593.1d0 , &
+  3591.86d0 , &
+  3590.61d0 , &
+  3589.34d0 , &
+  3588.07d0 , &
+  3586.79d0 , &
+  3585.5d0 , &
+  3584.2d0 , &
+  3582.89d0 , &
+  3581.57d0 , &
+  3580.24d0 , &
+  3578.9d0 , &
+  3577.54d0 , &
+  3576.18d0 , &
+  3574.81d0 , &
+  3573.43d0 , &
+  3572.03d0 , &
+  3570.63d0 , &
+  3569.22d0 , &
+  3567.79d0 , &
+  3566.36d0 , &
+  3564.91d0 , &
+  3563.46d0 , &
+  3562.d0 , &
+  3560.52d0 , &
+  3559.04d0 , &
+  3557.54d0 , &
+  3556.04d0 , &
+  3554.52d0 /)
 
- Mref_V%vsh_ref( 91 : 120 ) = (/ &
- 3626.47000000000 , &
- 3625.55000000000 , &
- 3624.61000000000 , &
- 3623.67000000000 , &
- 3622.71000000000 , &
- 3621.75000000000 , &
- 3620.78000000000 , &
- 3619.79000000000 , &
- 3618.80000000000 , &
- 3617.79000000000 , &
- 3616.78000000000 , &
- 3615.75000000000 , &
- 3614.71000000000 , &
- 3613.67000000000 , &
- 3612.61000000000 , &
- 3611.55000000000 , &
- 3610.47000000000 , &
- 3609.38000000000 , &
- 3608.28000000000 , &
- 3607.18000000000 , &
- 3606.06000000000 , &
- 3604.93000000000 , &
- 3603.79000000000 , &
- 3602.65000000000 , &
- 3601.49000000000 , &
- 3600.32000000000 , &
- 3599.14000000000 , &
- 3597.95000000000 , &
- 3596.75000000000 , &
- 3595.54000000000 /)
+  Mref_V_vsh_ref( 151 : 180 ) = (/ &
+  3553.d0 , &
+  3551.46d0 , &
+  3549.91d0 , &
+  3548.36d0 , &
+  3546.79d0 , &
+  3545.21d0 , &
+  3543.63d0 , &
+  3542.03d0 , &
+  3540.42d0 , &
+  3538.81d0 , &
+  3537.18d0 , &
+  3535.54d0 , &
+  3533.89d0 , &
+  3532.23d0 , &
+  3530.57d0 , &
+  3528.89d0 , &
+  3527.2d0 , &
+  3525.5d0 , &
+  3523.79d0 , &
+  3522.07d0 , &
+  3520.34d0 , &
+  3518.6d0 , &
+  3516.85d0 , &
+  3515.09d0 , &
+  3513.32d0 , &
+  3511.54d0 , &
+  3509.75d0 , &
+  3507.95d0 , &
+  3506.13d0 , &
+  3504.31d0 /)
 
- Mref_V%vsh_ref( 121 : 150 ) = (/ &
- 3594.32000000000 , &
- 3593.10000000000 , &
- 3591.86000000000 , &
- 3590.61000000000 , &
- 3589.34000000000 , &
- 3588.07000000000 , &
- 3586.79000000000 , &
- 3585.50000000000 , &
- 3584.20000000000 , &
- 3582.89000000000 , &
- 3581.57000000000 , &
- 3580.24000000000 , &
- 3578.90000000000 , &
- 3577.54000000000 , &
- 3576.18000000000 , &
- 3574.81000000000 , &
- 3573.43000000000 , &
- 3572.03000000000 , &
- 3570.63000000000 , &
- 3569.22000000000 , &
- 3567.79000000000 , &
- 3566.36000000000 , &
- 3564.91000000000 , &
- 3563.46000000000 , &
- 3562.00000000000 , &
- 3560.52000000000 , &
- 3559.04000000000 , &
- 3557.54000000000 , &
- 3556.04000000000 , &
- 3554.52000000000 /)
+  Mref_V_vsh_ref( 181 : 210 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsh_ref( 151 : 180 ) = (/ &
- 3553.00000000000 , &
- 3551.46000000000 , &
- 3549.91000000000 , &
- 3548.36000000000 , &
- 3546.79000000000 , &
- 3545.21000000000 , &
- 3543.63000000000 , &
- 3542.03000000000 , &
- 3540.42000000000 , &
- 3538.81000000000 , &
- 3537.18000000000 , &
- 3535.54000000000 , &
- 3533.89000000000 , &
- 3532.23000000000 , &
- 3530.57000000000 , &
- 3528.89000000000 , &
- 3527.20000000000 , &
- 3525.50000000000 , &
- 3523.79000000000 , &
- 3522.07000000000 , &
- 3520.34000000000 , &
- 3518.60000000000 , &
- 3516.85000000000 , &
- 3515.09000000000 , &
- 3513.32000000000 , &
- 3511.54000000000 , &
- 3509.75000000000 , &
- 3507.95000000000 , &
- 3506.13000000000 , &
- 3504.31000000000 /)
+  Mref_V_vsh_ref( 211 : 240 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsh_ref( 181 : 210 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsh_ref( 241 : 270 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsh_ref( 211 : 240 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsh_ref( 271 : 300 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsh_ref( 241 : 270 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsh_ref( 301 : 330 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 /)
 
- Mref_V%vsh_ref( 271 : 300 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsh_ref( 331 : 360 ) = (/ &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  0.d0 , &
+  7264.66d0 , &
+  7264.75d0 /)
 
- Mref_V%vsh_ref( 301 : 330 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 /)
+  Mref_V_vsh_ref( 361 : 390 ) = (/ &
+  7264.85d0 , &
+  7264.94d0 , &
+  7265.03d0 , &
+  7265.12d0 , &
+  7265.21d0 , &
+  7265.29d0 , &
+  7265.38d0 , &
+  7265.46d0 , &
+  7265.54d0 , &
+  7265.62d0 , &
+  7265.69d0 , &
+  7265.76d0 , &
+  7265.84d0 , &
+  7265.91d0 , &
+  7265.97d0 , &
+  7265.97d0 , &
+  7261.63d0 , &
+  7257.29d0 , &
+  7252.97d0 , &
+  7248.64d0 , &
+  7244.33d0 , &
+  7240.01d0 , &
+  7235.71d0 , &
+  7231.41d0 , &
+  7227.12d0 , &
+  7222.83d0 , &
+  7218.55d0 , &
+  7214.27d0 , &
+  7210.d0 , &
+  7205.73d0 /)
 
- Mref_V%vsh_ref( 331 : 360 ) = (/ &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 0.000000000000000E+000 , &
- 7264.66000000000 , &
- 7264.75000000000 /)
+  Mref_V_vsh_ref( 391 : 420 ) = (/ &
+  7201.47d0 , &
+  7197.21d0 , &
+  7192.95d0 , &
+  7188.7d0 , &
+  7184.45d0 , &
+  7180.21d0 , &
+  7175.97d0 , &
+  7171.73d0 , &
+  7167.5d0 , &
+  7163.27d0 , &
+  7159.04d0 , &
+  7154.81d0 , &
+  7150.59d0 , &
+  7146.37d0 , &
+  7142.15d0 , &
+  7137.93d0 , &
+  7133.71d0 , &
+  7129.5d0 , &
+  7125.29d0 , &
+  7121.07d0 , &
+  7116.86d0 , &
+  7112.65d0 , &
+  7108.44d0 , &
+  7104.23d0 , &
+  7100.02d0 , &
+  7095.81d0 , &
+  7091.6d0 , &
+  7087.39d0 , &
+  7083.18d0 , &
+  7078.96d0 /)
 
- Mref_V%vsh_ref( 361 : 390 ) = (/ &
- 7264.85000000000 , &
- 7264.94000000000 , &
- 7265.03000000000 , &
- 7265.12000000000 , &
- 7265.21000000000 , &
- 7265.29000000000 , &
- 7265.38000000000 , &
- 7265.46000000000 , &
- 7265.54000000000 , &
- 7265.62000000000 , &
- 7265.69000000000 , &
- 7265.76000000000 , &
- 7265.84000000000 , &
- 7265.91000000000 , &
- 7265.97000000000 , &
- 7265.97000000000 , &
- 7261.63000000000 , &
- 7257.29000000000 , &
- 7252.97000000000 , &
- 7248.64000000000 , &
- 7244.33000000000 , &
- 7240.01000000000 , &
- 7235.71000000000 , &
- 7231.41000000000 , &
- 7227.12000000000 , &
- 7222.83000000000 , &
- 7218.55000000000 , &
- 7214.27000000000 , &
- 7210.00000000000 , &
- 7205.73000000000 /)
+  Mref_V_vsh_ref( 421 : 450 ) = (/ &
+  7074.75d0 , &
+  7070.54d0 , &
+  7066.32d0 , &
+  7062.1d0 , &
+  7057.88d0 , &
+  7053.66d0 , &
+  7049.44d0 , &
+  7045.22d0 , &
+  7040.99d0 , &
+  7036.76d0 , &
+  7032.52d0 , &
+  7028.29d0 , &
+  7024.05d0 , &
+  7019.81d0 , &
+  7015.56d0 , &
+  7011.31d0 , &
+  7007.06d0 , &
+  7002.8d0 , &
+  6998.54d0 , &
+  6994.27d0 , &
+  6990.d0 , &
+  6985.72d0 , &
+  6981.44d0 , &
+  6977.15d0 , &
+  6972.86d0 , &
+  6968.57d0 , &
+  6964.26d0 , &
+  6959.95d0 , &
+  6955.64d0 , &
+  6951.32d0 /)
 
- Mref_V%vsh_ref( 391 : 420 ) = (/ &
- 7201.47000000000 , &
- 7197.21000000000 , &
- 7192.95000000000 , &
- 7188.70000000000 , &
- 7184.45000000000 , &
- 7180.21000000000 , &
- 7175.97000000000 , &
- 7171.73000000000 , &
- 7167.50000000000 , &
- 7163.27000000000 , &
- 7159.04000000000 , &
- 7154.81000000000 , &
- 7150.59000000000 , &
- 7146.37000000000 , &
- 7142.15000000000 , &
- 7137.93000000000 , &
- 7133.71000000000 , &
- 7129.50000000000 , &
- 7125.29000000000 , &
- 7121.07000000000 , &
- 7116.86000000000 , &
- 7112.65000000000 , &
- 7108.44000000000 , &
- 7104.23000000000 , &
- 7100.02000000000 , &
- 7095.81000000000 , &
- 7091.60000000000 , &
- 7087.39000000000 , &
- 7083.18000000000 , &
- 7078.96000000000 /)
+  Mref_V_vsh_ref( 451 : 480 ) = (/ &
+  6946.99d0 , &
+  6942.66d0 , &
+  6938.31d0 , &
+  6933.97d0 , &
+  6929.61d0 , &
+  6925.25d0 , &
+  6920.88d0 , &
+  6916.5d0 , &
+  6912.11d0 , &
+  6907.72d0 , &
+  6903.32d0 , &
+  6898.91d0 , &
+  6894.49d0 , &
+  6890.06d0 , &
+  6885.62d0 , &
+  6881.17d0 , &
+  6876.72d0 , &
+  6872.25d0 , &
+  6867.78d0 , &
+  6863.29d0 , &
+  6858.8d0 , &
+  6854.29d0 , &
+  6849.78d0 , &
+  6845.25d0 , &
+  6840.71d0 , &
+  6836.16d0 , &
+  6831.6d0 , &
+  6827.03d0 , &
+  6822.45d0 , &
+  6817.85d0 /)
 
- Mref_V%vsh_ref( 421 : 450 ) = (/ &
- 7074.75000000000 , &
- 7070.54000000000 , &
- 7066.32000000000 , &
- 7062.10000000000 , &
- 7057.88000000000 , &
- 7053.66000000000 , &
- 7049.44000000000 , &
- 7045.22000000000 , &
- 7040.99000000000 , &
- 7036.76000000000 , &
- 7032.52000000000 , &
- 7028.29000000000 , &
- 7024.05000000000 , &
- 7019.81000000000 , &
- 7015.56000000000 , &
- 7011.31000000000 , &
- 7007.06000000000 , &
- 7002.80000000000 , &
- 6998.54000000000 , &
- 6994.27000000000 , &
- 6990.00000000000 , &
- 6985.72000000000 , &
- 6981.44000000000 , &
- 6977.15000000000 , &
- 6972.86000000000 , &
- 6968.57000000000 , &
- 6964.26000000000 , &
- 6959.95000000000 , &
- 6955.64000000000 , &
- 6951.32000000000 /)
+  Mref_V_vsh_ref( 481 : 510 ) = (/ &
+  6813.25d0 , &
+  6808.63d0 , &
+  6804.d0 , &
+  6799.35d0 , &
+  6794.7d0 , &
+  6790.03d0 , &
+  6785.34d0 , &
+  6780.65d0 , &
+  6775.94d0 , &
+  6771.22d0 , &
+  6766.48d0 , &
+  6761.73d0 , &
+  6756.97d0 , &
+  6752.19d0 , &
+  6747.4d0 , &
+  6742.59d0 , &
+  6737.76d0 , &
+  6732.93d0 , &
+  6728.07d0 , &
+  6723.21d0 , &
+  6718.32d0 , &
+  6713.42d0 , &
+  6708.51d0 , &
+  6703.57d0 , &
+  6698.62d0 , &
+  6693.66d0 , &
+  6688.68d0 , &
+  6683.68d0 , &
+  6678.66d0 , &
+  6673.63d0 /)
 
- Mref_V%vsh_ref( 451 : 480 ) = (/ &
- 6946.99000000000 , &
- 6942.66000000000 , &
- 6938.31000000000 , &
- 6933.97000000000 , &
- 6929.61000000000 , &
- 6925.25000000000 , &
- 6920.88000000000 , &
- 6916.50000000000 , &
- 6912.11000000000 , &
- 6907.72000000000 , &
- 6903.32000000000 , &
- 6898.91000000000 , &
- 6894.49000000000 , &
- 6890.06000000000 , &
- 6885.62000000000 , &
- 6881.17000000000 , &
- 6876.72000000000 , &
- 6872.25000000000 , &
- 6867.78000000000 , &
- 6863.29000000000 , &
- 6858.80000000000 , &
- 6854.29000000000 , &
- 6849.78000000000 , &
- 6845.25000000000 , &
- 6840.71000000000 , &
- 6836.16000000000 , &
- 6831.60000000000 , &
- 6827.03000000000 , &
- 6822.45000000000 , &
- 6817.85000000000 /)
+  Mref_V_vsh_ref( 511 : 540 ) = (/ &
+  6668.58d0 , &
+  6663.51d0 , &
+  6658.43d0 , &
+  6653.32d0 , &
+  6648.2d0 , &
+  6643.06d0 , &
+  6637.9d0 , &
+  6632.73d0 , &
+  6627.53d0 , &
+  6622.31d0 , &
+  6617.08d0 , &
+  6611.82d0 , &
+  6606.55d0 , &
+  6601.26d0 , &
+  6595.94d0 , &
+  6590.61d0 , &
+  6584.91d0 , &
+  6579.51d0 , &
+  6574.11d0 , &
+  6568.67d0 , &
+  6563.22d0 , &
+  6557.74d0 , &
+  6552.24d0 , &
+  6546.73d0 , &
+  6541.19d0 , &
+  6535.63d0 , &
+  6530.05d0 , &
+  6524.44d0 , &
+  6518.82d0 , &
+  6513.17d0 /)
 
- Mref_V%vsh_ref( 481 : 510 ) = (/ &
- 6813.25000000000 , &
- 6808.63000000000 , &
- 6804.00000000000 , &
- 6799.35000000000 , &
- 6794.70000000000 , &
- 6790.03000000000 , &
- 6785.34000000000 , &
- 6780.65000000000 , &
- 6775.94000000000 , &
- 6771.22000000000 , &
- 6766.48000000000 , &
- 6761.73000000000 , &
- 6756.97000000000 , &
- 6752.19000000000 , &
- 6747.40000000000 , &
- 6742.59000000000 , &
- 6737.76000000000 , &
- 6732.93000000000 , &
- 6728.07000000000 , &
- 6723.21000000000 , &
- 6718.32000000000 , &
- 6713.42000000000 , &
- 6708.51000000000 , &
- 6703.57000000000 , &
- 6698.62000000000 , &
- 6693.66000000000 , &
- 6688.68000000000 , &
- 6683.68000000000 , &
- 6678.66000000000 , &
- 6673.63000000000 /)
+  Mref_V_vsh_ref( 541 : 570 ) = (/ &
+  6507.5d0 , &
+  6501.8d0 , &
+  6496.09d0 , &
+  6490.35d0 , &
+  6484.59d0 , &
+  6478.8d0 , &
+  6472.99d0 , &
+  6467.16d0 , &
+  6461.3d0 , &
+  6455.42d0 , &
+  6449.51d0 , &
+  6443.58d0 , &
+  6437.63d0 , &
+  6431.65d0 , &
+  6425.65d0 , &
+  6419.61d0 , &
+  6413.56d0 , &
+  6407.48d0 , &
+  6401.37d0 , &
+  6395.25d0 , &
+  6389.09d0 , &
+  6382.91d0 , &
+  6376.7d0 , &
+  6370.46d0 , &
+  6364.2d0 , &
+  6357.91d0 , &
+  6351.59d0 , &
+  6345.25d0 , &
+  6338.88d0 , &
+  6332.49d0 /)
 
- Mref_V%vsh_ref( 511 : 540 ) = (/ &
- 6668.58000000000 , &
- 6663.51000000000 , &
- 6658.43000000000 , &
- 6653.32000000000 , &
- 6648.20000000000 , &
- 6643.06000000000 , &
- 6637.90000000000 , &
- 6632.73000000000 , &
- 6627.53000000000 , &
- 6622.31000000000 , &
- 6617.08000000000 , &
- 6611.82000000000 , &
- 6606.55000000000 , &
- 6601.26000000000 , &
- 6595.94000000000 , &
- 6590.61000000000 , &
- 6584.91000000000 , &
- 6579.51000000000 , &
- 6574.11000000000 , &
- 6568.67000000000 , &
- 6563.22000000000 , &
- 6557.74000000000 , &
- 6552.24000000000 , &
- 6546.73000000000 , &
- 6541.19000000000 , &
- 6535.63000000000 , &
- 6530.05000000000 , &
- 6524.44000000000 , &
- 6518.82000000000 , &
- 6513.17000000000 /)
+  Mref_V_vsh_ref( 571 : 600 ) = (/ &
+  6326.05d0 , &
+  6319.6d0 , &
+  6313.13d0 , &
+  6306.62d0 , &
+  6300.08d0 , &
+  6293.52d0 , &
+  6286.92d0 , &
+  6280.29d0 , &
+  6273.64d0 , &
+  6266.96d0 , &
+  6260.25d0 , &
+  6253.51d0 , &
+  6246.75d0 , &
+  6239.95d0 , &
+  6239.95d0 , &
+  6219.68d0 , &
+  6200.29d0 , &
+  6181.16d0 , &
+  6162.04d0 , &
+  6143.01d0 , &
+  6123.98d0 , &
+  6103.71d0 , &
+  6083.53d0 , &
+  6063.45d0 , &
+  6043.44d0 , &
+  6023.52d0 , &
+  6003.73d0 , &
+  5984.03d0 , &
+  5964.38d0 , &
+  5944.81d0 /)
 
- Mref_V%vsh_ref( 541 : 570 ) = (/ &
- 6507.50000000000 , &
- 6501.80000000000 , &
- 6496.09000000000 , &
- 6490.35000000000 , &
- 6484.59000000000 , &
- 6478.80000000000 , &
- 6472.99000000000 , &
- 6467.16000000000 , &
- 6461.30000000000 , &
- 6455.42000000000 , &
- 6449.51000000000 , &
- 6443.58000000000 , &
- 6437.63000000000 , &
- 6431.65000000000 , &
- 6425.65000000000 , &
- 6419.61000000000 , &
- 6413.56000000000 , &
- 6407.48000000000 , &
- 6401.37000000000 , &
- 6395.25000000000 , &
- 6389.09000000000 , &
- 6382.91000000000 , &
- 6376.70000000000 , &
- 6370.46000000000 , &
- 6364.20000000000 , &
- 6357.91000000000 , &
- 6351.59000000000 , &
- 6345.25000000000 , &
- 6338.88000000000 , &
- 6332.49000000000 /)
+  Mref_V_vsh_ref( 601 : 630 ) = (/ &
+  5925.27d0 , &
+  5550.32d0 , &
+  5541.2d0 , &
+  5532.08d0 , &
+  5522.96d0 , &
+  5513.83d0 , &
+  5504.71d0 , &
+  5495.59d0 , &
+  5486.47d0 , &
+  5477.35d0 , &
+  5468.22d0 , &
+  5459.1d0 , &
+  5449.97d0 , &
+  5440.84d0 , &
+  5431.71d0 , &
+  5422.57d0 , &
+  5422.59d0 , &
+  5406.39d0 , &
+  5390.3d0 , &
+  5374.34d0 , &
+  5358.52d0 , &
+  5342.83d0 , &
+  5327.31d0 , &
+  5311.92d0 , &
+  5296.73d0 , &
+  5281.71d0 , &
+  5266.86d0 , &
+  5252.21d0 , &
+  5237.78d0 , &
+  5223.55d0 /)
 
- Mref_V%vsh_ref( 571 : 600 ) = (/ &
- 6326.05000000000 , &
- 6319.60000000000 , &
- 6313.13000000000 , &
- 6306.62000000000 , &
- 6300.08000000000 , &
- 6293.52000000000 , &
- 6286.92000000000 , &
- 6280.29000000000 , &
- 6273.64000000000 , &
- 6266.96000000000 , &
- 6260.25000000000 , &
- 6253.51000000000 , &
- 6246.75000000000 , &
- 6239.95000000000 , &
- 6239.95000000000 , &
- 6219.68000000000 , &
- 6200.29000000000 , &
- 6181.16000000000 , &
- 6162.04000000000 , &
- 6143.01000000000 , &
- 6123.98000000000 , &
- 6103.71000000000 , &
- 6083.53000000000 , &
- 6063.45000000000 , &
- 6043.44000000000 , &
- 6023.52000000000 , &
- 6003.73000000000 , &
- 5984.03000000000 , &
- 5964.38000000000 , &
- 5944.81000000000 /)
+  Mref_V_vsh_ref( 631 : 660 ) = (/ &
+  5209.54d0 , &
+  5195.72d0 , &
+  5182.1d0 , &
+  5168.69d0 , &
+  5155.42d0 , &
+  5142.22d0 , &
+  5129.05d0 , &
+  5115.84d0 , &
+  5102.55d0 , &
+  5089.14d0 , &
+  5075.5d0 , &
+  5061.63d0 , &
+  5047.46d0 , &
+  5032.93d0 , &
+  5018.03d0 , &
+  5002.66d0 , &
+  4986.77d0 , &
+  4803.78d0 , &
+  4800.54d0 , &
+  4797.28d0 , &
+  4793.96d0 , &
+  4790.18d0 , &
+  4785.78d0 , &
+  4780.71d0 , &
+  4775.d0 , &
+  4768.58d0 , &
+  4761.41d0 , &
+  4753.51d0 , &
+  4744.86d0 , &
+  4735.64d0 /)
 
- Mref_V%vsh_ref( 601 : 630 ) = (/ &
- 5925.27000000000 , &
- 5550.32000000000 , &
- 5541.20000000000 , &
- 5532.08000000000 , &
- 5522.96000000000 , &
- 5513.83000000000 , &
- 5504.71000000000 , &
- 5495.59000000000 , &
- 5486.47000000000 , &
- 5477.35000000000 , &
- 5468.22000000000 , &
- 5459.10000000000 , &
- 5449.97000000000 , &
- 5440.84000000000 , &
- 5431.71000000000 , &
- 5422.57000000000 , &
- 5422.59000000000 , &
- 5406.39000000000 , &
- 5390.30000000000 , &
- 5374.34000000000 , &
- 5358.52000000000 , &
- 5342.83000000000 , &
- 5327.31000000000 , &
- 5311.92000000000 , &
- 5296.73000000000 , &
- 5281.71000000000 , &
- 5266.86000000000 , &
- 5252.21000000000 , &
- 5237.78000000000 , &
- 5223.55000000000 /)
+  Mref_V_vsh_ref( 661 : 690 ) = (/ &
+  4725.88d0 , &
+  4715.76d0 , &
+  4705.34d0 , &
+  4694.74d0 , &
+  4684.08d0 , &
+  4673.46d0 , &
+  4662.94d0 , &
+  4652.61d0 , &
+  4642.55d0 , &
+  4632.81d0 , &
+  4623.51d0 , &
+  4614.68d0 , &
+  4606.39d0 , &
+  4598.73d0 , &
+  4591.76d0 , &
+  4585.56d0 , &
+  4580.21d0 , &
+  4575.75d0 , &
+  4575.74d0 , &
+  4572.27d0 , &
+  4569.53d0 , &
+  4567.46d0 , &
+  4566.02d0 , &
+  4565.1d0 , &
+  4564.66d0 , &
+  4564.65d0 , &
+  4564.99d0 , &
+  4565.62d0 , &
+  4566.47d0 , &
+  4567.46d0 /)
 
- Mref_V%vsh_ref( 631 : 660 ) = (/ &
- 5209.54000000000 , &
- 5195.72000000000 , &
- 5182.10000000000 , &
- 5168.69000000000 , &
- 5155.42000000000 , &
- 5142.22000000000 , &
- 5129.05000000000 , &
- 5115.84000000000 , &
- 5102.55000000000 , &
- 5089.14000000000 , &
- 5075.50000000000 , &
- 5061.63000000000 , &
- 5047.46000000000 , &
- 5032.93000000000 , &
- 5018.03000000000 , &
- 5002.66000000000 , &
- 4986.77000000000 , &
- 4803.78000000000 , &
- 4800.54000000000 , &
- 4797.28000000000 , &
- 4793.96000000000 , &
- 4790.18000000000 , &
- 4785.78000000000 , &
- 4780.71000000000 , &
- 4775.00000000000 , &
- 4768.58000000000 , &
- 4761.41000000000 , &
- 4753.51000000000 , &
- 4744.86000000000 , &
- 4735.64000000000 /)
+  Mref_V_vsh_ref( 691 : 720 ) = (/ &
+  4568.58d0 , &
+  4569.7d0 , &
+  4570.85d0 , &
+  4571.91d0 , &
+  4572.83d0 , &
+  4573.6d0 , &
+  4574.16d0 , &
+  4574.44d0 , &
+  4574.42d0 , &
+  4574.04d0 , &
+  4573.36d0 , &
+  4572.41d0 , &
+  4572.46d0 , &
+  4571.71d0 , &
+  4570.93d0 , &
+  4570.06d0 , &
+  4569.16d0 , &
+  4568.21d0 , &
+  4567.22d0 , &
+  4566.21d0 , &
+  4565.16d0 , &
+  4564.11d0 , &
+  4563.05d0 , &
+  4562.d0 , &
+  4560.94d0 , &
+  4559.94d0 , &
+  4558.94d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 /)
 
- Mref_V%vsh_ref( 661 : 690 ) = (/ &
- 4725.88000000000 , &
- 4715.76000000000 , &
- 4705.34000000000 , &
- 4694.74000000000 , &
- 4684.08000000000 , &
- 4673.46000000000 , &
- 4662.94000000000 , &
- 4652.61000000000 , &
- 4642.55000000000 , &
- 4632.81000000000 , &
- 4623.51000000000 , &
- 4614.68000000000 , &
- 4606.39000000000 , &
- 4598.73000000000 , &
- 4591.76000000000 , &
- 4585.56000000000 , &
- 4580.21000000000 , &
- 4575.75000000000 , &
- 4575.74000000000 , &
- 4572.27000000000 , &
- 4569.53000000000 , &
- 4567.46000000000 , &
- 4566.02000000000 , &
- 4565.10000000000 , &
- 4564.66000000000 , &
- 4564.65000000000 , &
- 4564.99000000000 , &
- 4565.62000000000 , &
- 4566.47000000000 , &
- 4567.46000000000 /)
+  Mref_V_vsh_ref( 721 : 750 ) = (/ &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3900.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 , &
+  3200.d0 /)
 
- Mref_V%vsh_ref( 691 : 720 ) = (/ &
- 4568.58000000000 , &
- 4569.70000000000 , &
- 4570.85000000000 , &
- 4571.91000000000 , &
- 4572.83000000000 , &
- 4573.60000000000 , &
- 4574.16000000000 , &
- 4574.44000000000 , &
- 4574.42000000000 , &
- 4574.04000000000 , &
- 4573.36000000000 , &
- 4572.41000000000 , &
- 4572.46000000000 , &
- 4571.71000000000 , &
- 4570.93000000000 , &
- 4570.06000000000 , &
- 4569.16000000000 , &
- 4568.21000000000 , &
- 4567.22000000000 , &
- 4566.21000000000 , &
- 4565.16000000000 , &
- 4564.11000000000 , &
- 4563.05000000000 , &
- 4562.00000000000 , &
- 4560.94000000000 , &
- 4559.94000000000 , &
- 4558.94000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 /)
+  Mref_V_eta_ref( 1 : 30 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%vsh_ref( 721 : 750 ) = (/ &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3900.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 , &
- 3200.00000000000 /)
+  Mref_V_eta_ref( 31 : 60 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 1 : 30 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 61 : 90 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 31 : 60 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 91 : 120 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 61 : 90 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 121 : 150 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 91 : 120 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 151 : 180 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 121 : 150 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 181 : 210 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 151 : 180 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 211 : 240 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 181 : 210 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 241 : 270 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 211 : 240 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 271 : 300 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 241 : 270 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 301 : 330 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 271 : 300 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 331 : 360 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 301 : 330 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 361 : 390 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 331 : 360 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 391 : 420 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 361 : 390 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 421 : 450 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 391 : 420 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 451 : 480 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 421 : 450 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 481 : 510 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 451 : 480 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 511 : 540 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 481 : 510 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 541 : 570 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 511 : 540 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 571 : 600 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 541 : 570 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 601 : 630 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 571 : 600 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 631 : 660 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  0.99999d0 , &
+  0.99997d0 , &
+  0.99995d0 , &
+  0.99994d0 , &
+  0.9999d0 , &
+  0.99986d0 , &
+  0.9998d0 , &
+  0.99974d0 , &
+  0.99966d0 /)
 
- Mref_V%eta_ref( 601 : 630 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
+  Mref_V_eta_ref( 661 : 690 ) = (/ &
+  0.99957d0 , &
+  0.99947d0 , &
+  0.99934d0 , &
+  0.9992d0 , &
+  0.99904d0 , &
+  0.99886d0 , &
+  0.99864d0 , &
+  0.99832d0 , &
+  0.9979d0 , &
+  0.99732d0 , &
+  0.99654d0 , &
+  0.99553d0 , &
+  0.99426d0 , &
+  0.99268d0 , &
+  0.99075d0 , &
+  0.98843d0 , &
+  0.98571d0 , &
+  0.98255d0 , &
+  0.9825d0 , &
+  0.97907d0 , &
+  0.97531d0 , &
+  0.97128d0 , &
+  0.96704d0 , &
+  0.96268d0 , &
+  0.95823d0 , &
+  0.95378d0 , &
+  0.94938d0 , &
+  0.94509d0 , &
+  0.94098d0 , &
+  0.93712d0 /)
 
- Mref_V%eta_ref( 631 : 660 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 0.999990000000000 , &
- 0.999970000000000 , &
- 0.999950000000000 , &
- 0.999940000000000 , &
- 0.999900000000000 , &
- 0.999860000000000 , &
- 0.999800000000000 , &
- 0.999740000000000 , &
- 0.999660000000000 /)
+  Mref_V_eta_ref( 691 : 720 ) = (/ &
+  0.93356d0 , &
+  0.93034d0 , &
+  0.92743d0 , &
+  0.92483d0 , &
+  0.92251d0 , &
+  0.92046d0 , &
+  0.91867d0 , &
+  0.91711d0 , &
+  0.91577d0 , &
+  0.91465d0 , &
+  0.91371d0 , &
+  0.91296d0 , &
+  0.91294d0 , &
+  0.91254d0 , &
+  0.91221d0 , &
+  0.91193d0 , &
+  0.91171d0 , &
+  0.91155d0 , &
+  0.91142d0 , &
+  0.91134d0 , &
+  0.9113d0 , &
+  0.91129d0 , &
+  0.9113d0 , &
+  0.91135d0 , &
+  0.9114d0 , &
+  0.91147d0 , &
+  0.91155d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 661 : 690 ) = (/ &
- 0.999570000000000 , &
- 0.999470000000000 , &
- 0.999340000000000 , &
- 0.999200000000000 , &
- 0.999040000000000 , &
- 0.998860000000000 , &
- 0.998640000000000 , &
- 0.998320000000000 , &
- 0.997900000000000 , &
- 0.997320000000000 , &
- 0.996540000000000 , &
- 0.995530000000000 , &
- 0.994260000000000 , &
- 0.992680000000000 , &
- 0.990750000000000 , &
- 0.988430000000000 , &
- 0.985710000000000 , &
- 0.982550000000000 , &
- 0.982500000000000 , &
- 0.979070000000000 , &
- 0.975310000000000 , &
- 0.971280000000000 , &
- 0.967040000000000 , &
- 0.962680000000000 , &
- 0.958230000000000 , &
- 0.953780000000000 , &
- 0.949380000000000 , &
- 0.945090000000000 , &
- 0.940980000000000 , &
- 0.937120000000000 /)
+  Mref_V_eta_ref( 721 : 750 ) = (/ &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 , &
+  1.d0 /)
 
- Mref_V%eta_ref( 691 : 720 ) = (/ &
- 0.933560000000000 , &
- 0.930340000000000 , &
- 0.927430000000000 , &
- 0.924830000000000 , &
- 0.922510000000000 , &
- 0.920460000000000 , &
- 0.918670000000000 , &
- 0.917110000000000 , &
- 0.915770000000000 , &
- 0.914650000000000 , &
- 0.913710000000000 , &
- 0.912960000000000 , &
- 0.912940000000000 , &
- 0.912540000000000 , &
- 0.912210000000000 , &
- 0.911930000000000 , &
- 0.911710000000000 , &
- 0.911550000000000 , &
- 0.911420000000000 , &
- 0.911340000000000 , &
- 0.911300000000000 , &
- 0.911290000000000 , &
- 0.911300000000000 , &
- 0.911350000000000 , &
- 0.911400000000000 , &
- 0.911470000000000 , &
- 0.911550000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
-
- Mref_V%eta_ref( 721 : 750 ) = (/ &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 , &
- 1.00000000000000 /)
-
-! strip the crust and replace it by mantle
+  ! strip the crust and replace it by mantle
   if (SUPPRESS_CRUSTAL_MESH .or. USE_EXTERNAL_CRUSTAL_MODEL) then
     ! sets values for depths less than 24.4 km to mantle values below
-    Mref_V%density_ref(718:750) = Mref_V%density_ref(717)
-    Mref_V%vpv_ref(718:750) = Mref_V%vpv_ref(717)
-    Mref_V%vph_ref(718:750) = Mref_V%vph_ref(717)
-    Mref_V%vsv_ref(718:750) = Mref_V%vsv_ref(717)
-    Mref_V%vsh_ref(718:750) = Mref_V%vsh_ref(717)
-    Mref_V%Qmu_ref(718:750) = Mref_V%Qmu_ref(717)
-    Mref_V%Qkappa_ref(718:750) = Mref_V%Qkappa_ref(717)
+    Mref_V_density_ref(718:750) = Mref_V_density_ref(717)
+    Mref_V_vpv_ref(718:750) = Mref_V_vpv_ref(717)
+    Mref_V_vph_ref(718:750) = Mref_V_vph_ref(717)
+    Mref_V_vsv_ref(718:750) = Mref_V_vsv_ref(717)
+    Mref_V_vsh_ref(718:750) = Mref_V_vsh_ref(717)
+    Mref_V_Qmu_ref(718:750) = Mref_V_Qmu_ref(717)
+    Mref_V_Qkappa_ref(718:750) = Mref_V_Qkappa_ref(717)
   endif
 
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_ak135.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_ak135.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_ak135.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -36,33 +36,50 @@
 ! DOI: 10.1111/j.1365-246X.1995.tb03540.x
 !--------------------------------------------------------------------------------------------------
 
+  module model_ak135_par
 
-  subroutine model_ak135_broadcast(CRUSTAL,Mak135_V)
+  ! number of layers in DATA/ak135/ak135.dat
+  integer, parameter :: NR_AK135 = 136
 
-! standard routine to setup model
+  ! model_ak135_variables
+  double precision, dimension(:), allocatable :: &
+    Mak135_V_radius_ak135,Mak135_V_density_ak135, &
+    Mak135_V_vp_ak135,Mak135_V_vs_ak135, &
+    Mak135_V_Qkappa_ak135,Mak135_V_Qmu_ak135
 
-  implicit none
+  end module model_ak135_par
 
-  include "constants.h"
+!
+!--------------------------------------------------------------------------------------------------
+!
 
-  ! 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
-  end type model_ak135_variables
 
-  type (model_ak135_variables) Mak135_V
-  ! model_ak135_variables
+  subroutine model_ak135_broadcast(myrank,CRUSTAL)
 
+! standard routine to setup model
+
+  use model_ak135_par
+
+  implicit none
+
+  integer :: myrank
   logical :: CRUSTAL
 
+  ! local parameters
+  integer :: ier
+
+  ! allocates model arrays
+  allocate(Mak135_V_radius_ak135(NR_AK135), &
+          Mak135_V_density_ak135(NR_AK135), &
+          Mak135_V_vp_ak135(NR_AK135), &
+          Mak135_V_vs_ak135(NR_AK135), &
+          Mak135_V_Qkappa_ak135(NR_AK135), &
+          Mak135_V_Qmu_ak135(NR_AK135), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating Mak135_V arrays')
+
   ! all processes will define same parameters
-  call define_model_ak135(CRUSTAL, Mak135_V)
+  call define_model_ak135(CRUSTAL)
 
   end subroutine model_ak135_broadcast
 
@@ -70,26 +87,14 @@
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine model_ak135(x,rho,vp,vs,Qkappa,Qmu,iregion_code,Mak135_V)
+  subroutine model_ak135(x,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
+  use model_ak135_par
+
   implicit none
 
   include "constants.h"
 
-! 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
-  end type model_ak135_variables
-
- type (model_ak135_variables) Mak135_V
-! model_ak135_variables
-
 ! input:
 ! radius r: meters
 
@@ -98,19 +103,18 @@
 ! compressional wave speed vp: km/s
 ! shear wave speed vs: km/s
 
-  integer iregion_code
+  double precision :: x,rho,vp,vs,Qmu,Qkappa
+  integer :: iregion_code
 
-  double precision x,rho,vp,vs,Qmu,Qkappa
+  ! local parameters
+  double precision :: r,frac,scaleval
+  integer :: i
 
-  integer i
-
-  double precision r,frac,scaleval
-
-! compute real physical radius in meters
+  ! compute real physical radius in meters
   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_AK135)
     i = i + 1
   enddo
 
@@ -126,21 +130,21 @@
   if(iregion_code == IREGION_CRUST_MANTLE .and. i < 71) i = 71
 
   if(i == 1) then
-    rho = Mak135_V%density_ak135(i)
-    vp = Mak135_V%vp_ak135(i)
-    vs = Mak135_V%vs_ak135(i)
-    Qmu = Mak135_V%Qmu_ak135(i)
-    Qkappa = Mak135_V%Qkappa_ak135(i)
+    rho = Mak135_V_density_ak135(i)
+    vp = Mak135_V_vp_ak135(i)
+    vs = Mak135_V_vs_ak135(i)
+    Qmu = Mak135_V_Qmu_ak135(i)
+    Qkappa = Mak135_V_Qkappa_ak135(i)
   else
 
 ! interpolate from radius_ak135(i-1) to r using the values at i-1 and i
-    frac = (r-Mak135_V%radius_ak135(i-1))/(Mak135_V%radius_ak135(i)-Mak135_V%radius_ak135(i-1))
+    frac = (r-Mak135_V_radius_ak135(i-1))/(Mak135_V_radius_ak135(i)-Mak135_V_radius_ak135(i-1))
 
-    rho = Mak135_V%density_ak135(i-1) + frac * (Mak135_V%density_ak135(i)-Mak135_V%density_ak135(i-1))
-    vp = Mak135_V%vp_ak135(i-1) + frac * (Mak135_V%vp_ak135(i)-Mak135_V%vp_ak135(i-1))
-    vs = Mak135_V%vs_ak135(i-1) + frac * (Mak135_V%vs_ak135(i)-Mak135_V%vs_ak135(i-1))
-    Qmu = Mak135_V%Qmu_ak135(i-1) + frac * (Mak135_V%Qmu_ak135(i)-Mak135_V%Qmu_ak135(i-1))
-    Qkappa = Mak135_V%Qkappa_ak135(i-1) + frac * (Mak135_V%Qkappa_ak135(i)-Mak135_V%Qkappa_ak135(i-1))
+    rho = Mak135_V_density_ak135(i-1) + frac * (Mak135_V_density_ak135(i)-Mak135_V_density_ak135(i-1))
+    vp = Mak135_V_vp_ak135(i-1) + frac * (Mak135_V_vp_ak135(i)-Mak135_V_vp_ak135(i-1))
+    vs = Mak135_V_vs_ak135(i-1) + frac * (Mak135_V_vs_ak135(i)-Mak135_V_vs_ak135(i-1))
+    Qmu = Mak135_V_Qmu_ak135(i-1) + frac * (Mak135_V_Qmu_ak135(i)-Mak135_V_Qmu_ak135(i-1))
+    Qkappa = Mak135_V_Qkappa_ak135(i-1) + frac * (Mak135_V_Qkappa_ak135(i)-Mak135_V_Qkappa_ak135(i-1))
 
   endif
 
@@ -163,858 +167,846 @@
 
 !-------------------
 
-  subroutine define_model_ak135(USE_EXTERNAL_CRUSTAL_MODEL,Mak135_V)
+  subroutine define_model_ak135(USE_EXTERNAL_CRUSTAL_MODEL)
 
+  use model_ak135_par
+
   implicit none
   include "constants.h"
 
-! 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
-  end type model_ak135_variables
+  logical :: USE_EXTERNAL_CRUSTAL_MODEL
 
- type (model_ak135_variables) Mak135_V
-! model_ak135_variables
-
-  logical USE_EXTERNAL_CRUSTAL_MODEL
-
 ! define all the values in the model
 
-  Mak135_V%radius_ak135(  1) =  0.000000000000000E+000
-  Mak135_V%radius_ak135(  2) =   50710.0000000000
-  Mak135_V%radius_ak135(  3) =   101430.000000000
-  Mak135_V%radius_ak135(  4) =   152140.000000000
-  Mak135_V%radius_ak135(  5) =   202850.000000000
-  Mak135_V%radius_ak135(  6) =   253560.000000000
-  Mak135_V%radius_ak135(  7) =   304280.000000000
-  Mak135_V%radius_ak135(  8) =   354990.000000000
-  Mak135_V%radius_ak135(  9) =   405700.000000000
-  Mak135_V%radius_ak135( 10) =   456410.000000000
-  Mak135_V%radius_ak135( 11) =   507130.000000000
-  Mak135_V%radius_ak135( 12) =   557840.000000000
-  Mak135_V%radius_ak135( 13) =   659260.000000000
-  Mak135_V%radius_ak135( 14) =   710000.000000000
-  Mak135_V%radius_ak135( 15) =   760690.000000000
-  Mak135_V%radius_ak135( 16) =   811400.000000000
-  Mak135_V%radius_ak135( 17) =   862110.000000000
-  Mak135_V%radius_ak135( 18) =   912830.000000000
-  Mak135_V%radius_ak135( 19) =   963540.000000000
-  Mak135_V%radius_ak135( 20) =   1014250.00000000
-  Mak135_V%radius_ak135( 21) =   1064960.00000000
-  Mak135_V%radius_ak135( 22) =   1115680.00000000
-  Mak135_V%radius_ak135( 23) =   1166390.00000000
-  Mak135_V%radius_ak135( 24) =   1217500.00000000
-  Mak135_V%radius_ak135( 25) =   1217500.00000000
-  Mak135_V%radius_ak135( 26) =   1267430.00000000
-  Mak135_V%radius_ak135( 27) =   1317760.00000000
-  Mak135_V%radius_ak135( 28) =   1368090.00000000
-  Mak135_V%radius_ak135( 29) =   1418420.00000000
-  Mak135_V%radius_ak135( 30) =   1468760.00000000
-  Mak135_V%radius_ak135( 31) =   1519090.00000000
-  Mak135_V%radius_ak135( 32) =   1569420.00000000
-  Mak135_V%radius_ak135( 33) =   1670080.00000000
-  Mak135_V%radius_ak135( 34) =   1720410.00000000
-  Mak135_V%radius_ak135( 35) =   1770740.00000000
-  Mak135_V%radius_ak135( 36) =   1821070.00000000
-  Mak135_V%radius_ak135( 37) =   1871400.00000000
-  Mak135_V%radius_ak135( 38) =   1921740.00000000
-  Mak135_V%radius_ak135( 39) =   1972070.00000000
-  Mak135_V%radius_ak135( 40) =   2022400.00000000
-  Mak135_V%radius_ak135( 41) =   2072730.00000000
-  Mak135_V%radius_ak135( 42) =   2123060.00000000
-  Mak135_V%radius_ak135( 43) =   2173390.00000000
-  Mak135_V%radius_ak135( 44) =   2223720.00000000
-  Mak135_V%radius_ak135( 45) =   2274050.00000000
-  Mak135_V%radius_ak135( 46) =   2324380.00000000
-  Mak135_V%radius_ak135( 47) =   2374720.00000000
-  Mak135_V%radius_ak135( 48) =   2425050.00000000
-  Mak135_V%radius_ak135( 49) =   2475380.00000000
-  Mak135_V%radius_ak135( 50) =   2525710.00000000
-  Mak135_V%radius_ak135( 51) =   2576040.00000000
-  Mak135_V%radius_ak135( 52) =   2626370.00000000
-  Mak135_V%radius_ak135( 53) =   2676700.00000000
-  Mak135_V%radius_ak135( 54) =   2727030.00000000
-  Mak135_V%radius_ak135( 55) =   2777360.00000000
-  Mak135_V%radius_ak135( 56) =   2827700.00000000
-  Mak135_V%radius_ak135( 57) =   2878030.00000000
-  Mak135_V%radius_ak135( 58) =   2928360.00000000
-  Mak135_V%radius_ak135( 59) =   2978690.00000000
-  Mak135_V%radius_ak135( 60) =   3029020.00000000
-  Mak135_V%radius_ak135( 61) =   3079350.00000000
-  Mak135_V%radius_ak135( 62) =   3129680.00000000
-  Mak135_V%radius_ak135( 63) =   3180010.00000000
-  Mak135_V%radius_ak135( 64) =   3230340.00000000
-  Mak135_V%radius_ak135( 65) =   3280680.00000000
-  Mak135_V%radius_ak135( 66) =   3331010.00000000
-  Mak135_V%radius_ak135( 67) =   3381340.00000000
-  Mak135_V%radius_ak135( 68) =   3431670.00000000
-  Mak135_V%radius_ak135( 69) =   3479500.00000000
-  Mak135_V%radius_ak135( 70) =   3479500.00000000
-  Mak135_V%radius_ak135( 71) =   3531670.00000000
-  Mak135_V%radius_ak135( 72) =   3581330.00000000
-  Mak135_V%radius_ak135( 73) =   3631000.00000000
-  Mak135_V%radius_ak135( 74) =   3631000.00000000
-  Mak135_V%radius_ak135( 75) =   3681000.00000000
-  Mak135_V%radius_ak135( 76) =   3731000.00000000
-  Mak135_V%radius_ak135( 77) =   3779500.00000000
-  Mak135_V%radius_ak135( 78) =   3829000.00000000
-  Mak135_V%radius_ak135( 79) =   3878500.00000000
-  Mak135_V%radius_ak135( 80) =   3928000.00000000
-  Mak135_V%radius_ak135( 81) =   3977500.00000000
-  Mak135_V%radius_ak135( 82) =   4027000.00000000
-  Mak135_V%radius_ak135( 83) =   4076500.00000000
-  Mak135_V%radius_ak135( 84) =   4126000.00000000
-  Mak135_V%radius_ak135( 85) =   4175500.00000000
-  Mak135_V%radius_ak135( 86) =   4225000.00000000
-  Mak135_V%radius_ak135( 87) =   4274500.00000000
-  Mak135_V%radius_ak135( 88) =   4324000.00000000
-  Mak135_V%radius_ak135( 89) =   4373500.00000000
-  Mak135_V%radius_ak135( 90) =   4423000.00000000
-  Mak135_V%radius_ak135( 91) =   4472500.00000000
-  Mak135_V%radius_ak135( 92) =   4522000.00000000
-  Mak135_V%radius_ak135( 93) =   4571500.00000000
-  Mak135_V%radius_ak135( 94) =   4621000.00000000
-  Mak135_V%radius_ak135( 95) =   4670500.00000000
-  Mak135_V%radius_ak135( 96) =   4720000.00000000
-  Mak135_V%radius_ak135( 97) =   4769500.00000000
-  Mak135_V%radius_ak135( 98) =   4819000.00000000
-  Mak135_V%radius_ak135( 99) =   4868500.00000000
-  Mak135_V%radius_ak135(100) =   4918000.00000000
-  Mak135_V%radius_ak135(101) =   4967500.00000000
-  Mak135_V%radius_ak135(102) =   5017000.00000000
-  Mak135_V%radius_ak135(103) =   5066500.00000000
-  Mak135_V%radius_ak135(104) =   5116000.00000000
-  Mak135_V%radius_ak135(105) =   5165500.00000000
-  Mak135_V%radius_ak135(106) =   5215000.00000000
-  Mak135_V%radius_ak135(107) =   5264500.00000000
-  Mak135_V%radius_ak135(108) =   5314000.00000000
-  Mak135_V%radius_ak135(109) =   5363500.00000000
-  Mak135_V%radius_ak135(110) =   5413000.00000000
-  Mak135_V%radius_ak135(111) =   5462500.00000000
-  Mak135_V%radius_ak135(112) =   5512000.00000000
-  Mak135_V%radius_ak135(113) =   5561500.00000000
-  Mak135_V%radius_ak135(114) =   5611000.00000000
-  Mak135_V%radius_ak135(115) =   5661000.00000000
-  Mak135_V%radius_ak135(116) =   5711000.00000000
-  Mak135_V%radius_ak135(117) =   5711000.00000000
-  Mak135_V%radius_ak135(118) =   5761000.00000000
-  Mak135_V%radius_ak135(119) =   5811000.00000000
-  Mak135_V%radius_ak135(120) =   5861000.00000000
-  Mak135_V%radius_ak135(121) =   5911000.00000000
-  Mak135_V%radius_ak135(122) =   5961000.00000000
-  Mak135_V%radius_ak135(123) =   5961000.00000000
-  Mak135_V%radius_ak135(124) =   6011000.00000000
-  Mak135_V%radius_ak135(125) =   6061000.00000000
-  Mak135_V%radius_ak135(126) =   6111000.00000000
-  Mak135_V%radius_ak135(127) =   6161000.00000000
-  Mak135_V%radius_ak135(128) =   6161000.00000000
-  Mak135_V%radius_ak135(129) =   6206000.00000000
-  Mak135_V%radius_ak135(130) =   6251000.00000000
-  Mak135_V%radius_ak135(131) =   6293500.00000000
-  Mak135_V%radius_ak135(132) =   6336000.00000000
-  Mak135_V%radius_ak135(133) =   6336000.00000000
-  Mak135_V%radius_ak135(134) =   6351000.00000000
-  Mak135_V%radius_ak135(135) =   6351000.00000000
-  Mak135_V%radius_ak135(136) =   6371000.00000000
+  Mak135_V_radius_ak135(  1) =  0.d0
+  Mak135_V_radius_ak135(  2) =   50710.d0
+  Mak135_V_radius_ak135(  3) =   101430.d0
+  Mak135_V_radius_ak135(  4) =   152140.d0
+  Mak135_V_radius_ak135(  5) =   202850.d0
+  Mak135_V_radius_ak135(  6) =   253560.d0
+  Mak135_V_radius_ak135(  7) =   304280.d0
+  Mak135_V_radius_ak135(  8) =   354990.d0
+  Mak135_V_radius_ak135(  9) =   405700.d0
+  Mak135_V_radius_ak135( 10) =   456410.d0
+  Mak135_V_radius_ak135( 11) =   507130.d0
+  Mak135_V_radius_ak135( 12) =   557840.d0
+  Mak135_V_radius_ak135( 13) =   659260.d0
+  Mak135_V_radius_ak135( 14) =   710000.d0
+  Mak135_V_radius_ak135( 15) =   760690.d0
+  Mak135_V_radius_ak135( 16) =   811400.d0
+  Mak135_V_radius_ak135( 17) =   862110.d0
+  Mak135_V_radius_ak135( 18) =   912830.d0
+  Mak135_V_radius_ak135( 19) =   963540.d0
+  Mak135_V_radius_ak135( 20) =   1014250.d0
+  Mak135_V_radius_ak135( 21) =   1064960.d0
+  Mak135_V_radius_ak135( 22) =   1115680.d0
+  Mak135_V_radius_ak135( 23) =   1166390.d0
+  Mak135_V_radius_ak135( 24) =   1217500.d0
+  Mak135_V_radius_ak135( 25) =   1217500.d0
+  Mak135_V_radius_ak135( 26) =   1267430.d0
+  Mak135_V_radius_ak135( 27) =   1317760.d0
+  Mak135_V_radius_ak135( 28) =   1368090.d0
+  Mak135_V_radius_ak135( 29) =   1418420.d0
+  Mak135_V_radius_ak135( 30) =   1468760.d0
+  Mak135_V_radius_ak135( 31) =   1519090.d0
+  Mak135_V_radius_ak135( 32) =   1569420.d0
+  Mak135_V_radius_ak135( 33) =   1670080.d0
+  Mak135_V_radius_ak135( 34) =   1720410.d0
+  Mak135_V_radius_ak135( 35) =   1770740.d0
+  Mak135_V_radius_ak135( 36) =   1821070.d0
+  Mak135_V_radius_ak135( 37) =   1871400.d0
+  Mak135_V_radius_ak135( 38) =   1921740.d0
+  Mak135_V_radius_ak135( 39) =   1972070.d0
+  Mak135_V_radius_ak135( 40) =   2022400.d0
+  Mak135_V_radius_ak135( 41) =   2072730.d0
+  Mak135_V_radius_ak135( 42) =   2123060.d0
+  Mak135_V_radius_ak135( 43) =   2173390.d0
+  Mak135_V_radius_ak135( 44) =   2223720.d0
+  Mak135_V_radius_ak135( 45) =   2274050.d0
+  Mak135_V_radius_ak135( 46) =   2324380.d0
+  Mak135_V_radius_ak135( 47) =   2374720.d0
+  Mak135_V_radius_ak135( 48) =   2425050.d0
+  Mak135_V_radius_ak135( 49) =   2475380.d0
+  Mak135_V_radius_ak135( 50) =   2525710.d0
+  Mak135_V_radius_ak135( 51) =   2576040.d0
+  Mak135_V_radius_ak135( 52) =   2626370.d0
+  Mak135_V_radius_ak135( 53) =   2676700.d0
+  Mak135_V_radius_ak135( 54) =   2727030.d0
+  Mak135_V_radius_ak135( 55) =   2777360.d0
+  Mak135_V_radius_ak135( 56) =   2827700.d0
+  Mak135_V_radius_ak135( 57) =   2878030.d0
+  Mak135_V_radius_ak135( 58) =   2928360.d0
+  Mak135_V_radius_ak135( 59) =   2978690.d0
+  Mak135_V_radius_ak135( 60) =   3029020.d0
+  Mak135_V_radius_ak135( 61) =   3079350.d0
+  Mak135_V_radius_ak135( 62) =   3129680.d0
+  Mak135_V_radius_ak135( 63) =   3180010.d0
+  Mak135_V_radius_ak135( 64) =   3230340.d0
+  Mak135_V_radius_ak135( 65) =   3280680.d0
+  Mak135_V_radius_ak135( 66) =   3331010.d0
+  Mak135_V_radius_ak135( 67) =   3381340.d0
+  Mak135_V_radius_ak135( 68) =   3431670.d0
+  Mak135_V_radius_ak135( 69) =   3479500.d0
+  Mak135_V_radius_ak135( 70) =   3479500.d0
+  Mak135_V_radius_ak135( 71) =   3531670.d0
+  Mak135_V_radius_ak135( 72) =   3581330.d0
+  Mak135_V_radius_ak135( 73) =   3631000.d0
+  Mak135_V_radius_ak135( 74) =   3631000.d0
+  Mak135_V_radius_ak135( 75) =   3681000.d0
+  Mak135_V_radius_ak135( 76) =   3731000.d0
+  Mak135_V_radius_ak135( 77) =   3779500.d0
+  Mak135_V_radius_ak135( 78) =   3829000.d0
+  Mak135_V_radius_ak135( 79) =   3878500.d0
+  Mak135_V_radius_ak135( 80) =   3928000.d0
+  Mak135_V_radius_ak135( 81) =   3977500.d0
+  Mak135_V_radius_ak135( 82) =   4027000.d0
+  Mak135_V_radius_ak135( 83) =   4076500.d0
+  Mak135_V_radius_ak135( 84) =   4126000.d0
+  Mak135_V_radius_ak135( 85) =   4175500.d0
+  Mak135_V_radius_ak135( 86) =   4225000.d0
+  Mak135_V_radius_ak135( 87) =   4274500.d0
+  Mak135_V_radius_ak135( 88) =   4324000.d0
+  Mak135_V_radius_ak135( 89) =   4373500.d0
+  Mak135_V_radius_ak135( 90) =   4423000.d0
+  Mak135_V_radius_ak135( 91) =   4472500.d0
+  Mak135_V_radius_ak135( 92) =   4522000.d0
+  Mak135_V_radius_ak135( 93) =   4571500.d0
+  Mak135_V_radius_ak135( 94) =   4621000.d0
+  Mak135_V_radius_ak135( 95) =   4670500.d0
+  Mak135_V_radius_ak135( 96) =   4720000.d0
+  Mak135_V_radius_ak135( 97) =   4769500.d0
+  Mak135_V_radius_ak135( 98) =   4819000.d0
+  Mak135_V_radius_ak135( 99) =   4868500.d0
+  Mak135_V_radius_ak135(100) =   4918000.d0
+  Mak135_V_radius_ak135(101) =   4967500.d0
+  Mak135_V_radius_ak135(102) =   5017000.d0
+  Mak135_V_radius_ak135(103) =   5066500.d0
+  Mak135_V_radius_ak135(104) =   5116000.d0
+  Mak135_V_radius_ak135(105) =   5165500.d0
+  Mak135_V_radius_ak135(106) =   5215000.d0
+  Mak135_V_radius_ak135(107) =   5264500.d0
+  Mak135_V_radius_ak135(108) =   5314000.d0
+  Mak135_V_radius_ak135(109) =   5363500.d0
+  Mak135_V_radius_ak135(110) =   5413000.d0
+  Mak135_V_radius_ak135(111) =   5462500.d0
+  Mak135_V_radius_ak135(112) =   5512000.d0
+  Mak135_V_radius_ak135(113) =   5561500.d0
+  Mak135_V_radius_ak135(114) =   5611000.d0
+  Mak135_V_radius_ak135(115) =   5661000.d0
+  Mak135_V_radius_ak135(116) =   5711000.d0
+  Mak135_V_radius_ak135(117) =   5711000.d0
+  Mak135_V_radius_ak135(118) =   5761000.d0
+  Mak135_V_radius_ak135(119) =   5811000.d0
+  Mak135_V_radius_ak135(120) =   5861000.d0
+  Mak135_V_radius_ak135(121) =   5911000.d0
+  Mak135_V_radius_ak135(122) =   5961000.d0
+  Mak135_V_radius_ak135(123) =   5961000.d0
+  Mak135_V_radius_ak135(124) =   6011000.d0
+  Mak135_V_radius_ak135(125) =   6061000.d0
+  Mak135_V_radius_ak135(126) =   6111000.d0
+  Mak135_V_radius_ak135(127) =   6161000.d0
+  Mak135_V_radius_ak135(128) =   6161000.d0
+  Mak135_V_radius_ak135(129) =   6206000.d0
+  Mak135_V_radius_ak135(130) =   6251000.d0
+  Mak135_V_radius_ak135(131) =   6293500.d0
+  Mak135_V_radius_ak135(132) =   6336000.d0
+  Mak135_V_radius_ak135(133) =   6336000.d0
+  Mak135_V_radius_ak135(134) =   6351000.d0
+  Mak135_V_radius_ak135(135) =   6351000.d0
+  Mak135_V_radius_ak135(136) =   6371000.d0
 
-  Mak135_V%density_ak135(  1) =   13.0122000000000
-  Mak135_V%density_ak135(  2) =   13.0117000000000
-  Mak135_V%density_ak135(  3) =   13.0100000000000
-  Mak135_V%density_ak135(  4) =   13.0074000000000
-  Mak135_V%density_ak135(  5) =   13.0036000000000
-  Mak135_V%density_ak135(  6) =   12.9988000000000
-  Mak135_V%density_ak135(  7) =   12.9929000000000
-  Mak135_V%density_ak135(  8) =   12.9859000000000
-  Mak135_V%density_ak135(  9) =   12.9779000000000
-  Mak135_V%density_ak135( 10) =   12.9688000000000
-  Mak135_V%density_ak135( 11) =   12.9586000000000
-  Mak135_V%density_ak135( 12) =   12.9474000000000
-  Mak135_V%density_ak135( 13) =   12.9217000000000
-  Mak135_V%density_ak135( 14) =   12.9070000000000
-  Mak135_V%density_ak135( 15) =   12.8917000000000
-  Mak135_V%density_ak135( 16) =   12.8751000000000
-  Mak135_V%density_ak135( 17) =   12.8574000000000
-  Mak135_V%density_ak135( 18) =   12.8387000000000
-  Mak135_V%density_ak135( 19) =   12.8188000000000
-  Mak135_V%density_ak135( 20) =   12.7980000000000
-  Mak135_V%density_ak135( 21) =   12.7760000000000
-  Mak135_V%density_ak135( 22) =   12.7530000000000
-  Mak135_V%density_ak135( 23) =   12.7289000000000
-  Mak135_V%density_ak135( 24) =   12.7037000000000
-  Mak135_V%density_ak135( 25) =   12.1391000000000
-  Mak135_V%density_ak135( 26) =   12.1133000000000
-  Mak135_V%density_ak135( 27) =   12.0867000000000
-  Mak135_V%density_ak135( 28) =   12.0593000000000
-  Mak135_V%density_ak135( 29) =   12.0311000000000
-  Mak135_V%density_ak135( 30) =   12.0001000000000
-  Mak135_V%density_ak135( 31) =   11.9722000000000
-  Mak135_V%density_ak135( 32) =   11.9414000000000
-  Mak135_V%density_ak135( 33) =   11.8772000000000
-  Mak135_V%density_ak135( 34) =   11.8437000000000
-  Mak135_V%density_ak135( 35) =   11.8092000000000
-  Mak135_V%density_ak135( 36) =   11.7737000000000
-  Mak135_V%density_ak135( 37) =   11.7373000000000
-  Mak135_V%density_ak135( 38) =   11.6998000000000
-  Mak135_V%density_ak135( 39) =   11.6612000000000
-  Mak135_V%density_ak135( 40) =   11.6216000000000
-  Mak135_V%density_ak135( 41) =   11.5809000000000
-  Mak135_V%density_ak135( 42) =   11.5391000000000
-  Mak135_V%density_ak135( 43) =   11.4962000000000
-  Mak135_V%density_ak135( 44) =   11.4521000000000
-  Mak135_V%density_ak135( 45) =   11.4069000000000
-  Mak135_V%density_ak135( 46) =   11.3604000000000
-  Mak135_V%density_ak135( 47) =   11.3127000000000
-  Mak135_V%density_ak135( 48) =   11.2639000000000
-  Mak135_V%density_ak135( 49) =   11.2137000000000
-  Mak135_V%density_ak135( 50) =   11.1623000000000
-  Mak135_V%density_ak135( 51) =   11.1095000000000
-  Mak135_V%density_ak135( 52) =   11.0555000000000
-  Mak135_V%density_ak135( 53) =   11.0001000000000
-  Mak135_V%density_ak135( 54) =   10.9434000000000
-  Mak135_V%density_ak135( 55) =   10.8852000000000
-  Mak135_V%density_ak135( 56) =   10.8257000000000
-  Mak135_V%density_ak135( 57) =   10.7647000000000
-  Mak135_V%density_ak135( 58) =   10.7023000000000
-  Mak135_V%density_ak135( 59) =   10.6385000000000
-  Mak135_V%density_ak135( 60) =   10.5731000000000
-  Mak135_V%density_ak135( 61) =   10.5062000000000
-  Mak135_V%density_ak135( 62) =   10.4378000000000
-  Mak135_V%density_ak135( 63) =   10.3679000000000
-  Mak135_V%density_ak135( 64) =   10.2964000000000
-  Mak135_V%density_ak135( 65) =   10.2233000000000
-  Mak135_V%density_ak135( 66) =   10.1485000000000
-  Mak135_V%density_ak135( 67) =   10.0722000000000
-  Mak135_V%density_ak135( 68) =   9.99420000000000
-  Mak135_V%density_ak135( 69) =   9.91450000000000
-  Mak135_V%density_ak135( 70) =   5.77210000000000
-  Mak135_V%density_ak135( 71) =   5.74580000000000
-  Mak135_V%density_ak135( 72) =   5.71960000000000
-  Mak135_V%density_ak135( 73) =   5.69340000000000
-  Mak135_V%density_ak135( 74) =   5.43870000000000
-  Mak135_V%density_ak135( 75) =   5.41760000000000
-  Mak135_V%density_ak135( 76) =   5.39620000000000
-  Mak135_V%density_ak135( 77) =   5.37480000000000
-  Mak135_V%density_ak135( 78) =   5.35310000000000
-  Mak135_V%density_ak135( 79) =   5.33130000000000
-  Mak135_V%density_ak135( 80) =   5.30920000000000
-  Mak135_V%density_ak135( 81) =   5.28700000000000
-  Mak135_V%density_ak135( 82) =   5.26460000000000
-  Mak135_V%density_ak135( 83) =   5.24200000000000
-  Mak135_V%density_ak135( 84) =   5.21920000000000
-  Mak135_V%density_ak135( 85) =   5.19630000000000
-  Mak135_V%density_ak135( 86) =   5.17320000000000
-  Mak135_V%density_ak135( 87) =   5.14990000000000
-  Mak135_V%density_ak135( 88) =   5.12640000000000
-  Mak135_V%density_ak135( 89) =   5.10270000000000
-  Mak135_V%density_ak135( 90) =   5.07890000000000
-  Mak135_V%density_ak135( 91) =   5.05480000000000
-  Mak135_V%density_ak135( 92) =   5.03060000000000
-  Mak135_V%density_ak135( 93) =   5.00620000000000
-  Mak135_V%density_ak135( 94) =   4.98170000000000
-  Mak135_V%density_ak135( 95) =   4.95700000000000
-  Mak135_V%density_ak135( 96) =   4.93210000000000
-  Mak135_V%density_ak135( 97) =   4.90690000000000
-  Mak135_V%density_ak135( 98) =   4.88170000000000
-  Mak135_V%density_ak135( 99) =   4.85620000000000
-  Mak135_V%density_ak135(100) =   4.83070000000000
-  Mak135_V%density_ak135(101) =   4.80500000000000
-  Mak135_V%density_ak135(102) =   4.77900000000000
-  Mak135_V%density_ak135(103) =   4.75280000000000
-  Mak135_V%density_ak135(104) =   4.72660000000000
-  Mak135_V%density_ak135(105) =   4.70010000000000
-  Mak135_V%density_ak135(106) =   4.67350000000000
-  Mak135_V%density_ak135(107) =   4.64670000000000
-  Mak135_V%density_ak135(108) =   4.61980000000000
-  Mak135_V%density_ak135(109) =   4.59260000000000
-  Mak135_V%density_ak135(110) =   4.56540000000000
-  Mak135_V%density_ak135(111) =   4.51620000000000
-  Mak135_V%density_ak135(112) =   4.46500000000000
-  Mak135_V%density_ak135(113) =   4.41180000000000
-  Mak135_V%density_ak135(114) =   4.35650000000000
-  Mak135_V%density_ak135(115) =   4.29860000000000
-  Mak135_V%density_ak135(116) =   4.23870000000000
-  Mak135_V%density_ak135(117) =   3.92010000000000
-  Mak135_V%density_ak135(118) =   3.92060000000000
-  Mak135_V%density_ak135(119) =   3.92180000000000
-  Mak135_V%density_ak135(120) =   3.92330000000000
-  Mak135_V%density_ak135(121) =   3.92730000000000
-  Mak135_V%density_ak135(122) =   3.93170000000000
-  Mak135_V%density_ak135(123) =   3.50680000000000
-  Mak135_V%density_ak135(124) =   3.45770000000000
-  Mak135_V%density_ak135(125) =   3.41100000000000
-  Mak135_V%density_ak135(126) =   3.36630000000000
-  Mak135_V%density_ak135(127) =   3.32430000000000
-  Mak135_V%density_ak135(128) =   3.32430000000000
-  Mak135_V%density_ak135(129) =   3.37110000000000
-  Mak135_V%density_ak135(130) =   3.42680000000000
-  Mak135_V%density_ak135(131) =   3.34500000000000
-  Mak135_V%density_ak135(132) =   3.32000000000000
-  Mak135_V%density_ak135(133) =   2.92000000000000
-  Mak135_V%density_ak135(134) =   2.92000000000000
-  Mak135_V%density_ak135(135) =   2.72000000000000
-  Mak135_V%density_ak135(136) =   2.72000000000000
+  Mak135_V_density_ak135(  1) =   13.0122d0
+  Mak135_V_density_ak135(  2) =   13.0117d0
+  Mak135_V_density_ak135(  3) =   13.01d0
+  Mak135_V_density_ak135(  4) =   13.0074d0
+  Mak135_V_density_ak135(  5) =   13.0036d0
+  Mak135_V_density_ak135(  6) =   12.9988d0
+  Mak135_V_density_ak135(  7) =   12.9929d0
+  Mak135_V_density_ak135(  8) =   12.9859d0
+  Mak135_V_density_ak135(  9) =   12.9779d0
+  Mak135_V_density_ak135( 10) =   12.9688d0
+  Mak135_V_density_ak135( 11) =   12.9586d0
+  Mak135_V_density_ak135( 12) =   12.9474d0
+  Mak135_V_density_ak135( 13) =   12.9217d0
+  Mak135_V_density_ak135( 14) =   12.907d0
+  Mak135_V_density_ak135( 15) =   12.8917d0
+  Mak135_V_density_ak135( 16) =   12.8751d0
+  Mak135_V_density_ak135( 17) =   12.8574d0
+  Mak135_V_density_ak135( 18) =   12.8387d0
+  Mak135_V_density_ak135( 19) =   12.8188d0
+  Mak135_V_density_ak135( 20) =   12.798d0
+  Mak135_V_density_ak135( 21) =   12.776d0
+  Mak135_V_density_ak135( 22) =   12.753d0
+  Mak135_V_density_ak135( 23) =   12.7289d0
+  Mak135_V_density_ak135( 24) =   12.7037d0
+  Mak135_V_density_ak135( 25) =   12.1391d0
+  Mak135_V_density_ak135( 26) =   12.1133d0
+  Mak135_V_density_ak135( 27) =   12.0867d0
+  Mak135_V_density_ak135( 28) =   12.0593d0
+  Mak135_V_density_ak135( 29) =   12.0311d0
+  Mak135_V_density_ak135( 30) =   12.0001d0
+  Mak135_V_density_ak135( 31) =   11.9722d0
+  Mak135_V_density_ak135( 32) =   11.9414d0
+  Mak135_V_density_ak135( 33) =   11.8772d0
+  Mak135_V_density_ak135( 34) =   11.8437d0
+  Mak135_V_density_ak135( 35) =   11.8092d0
+  Mak135_V_density_ak135( 36) =   11.7737d0
+  Mak135_V_density_ak135( 37) =   11.7373d0
+  Mak135_V_density_ak135( 38) =   11.6998d0
+  Mak135_V_density_ak135( 39) =   11.6612d0
+  Mak135_V_density_ak135( 40) =   11.6216d0
+  Mak135_V_density_ak135( 41) =   11.5809d0
+  Mak135_V_density_ak135( 42) =   11.5391d0
+  Mak135_V_density_ak135( 43) =   11.4962d0
+  Mak135_V_density_ak135( 44) =   11.4521d0
+  Mak135_V_density_ak135( 45) =   11.4069d0
+  Mak135_V_density_ak135( 46) =   11.3604d0
+  Mak135_V_density_ak135( 47) =   11.3127d0
+  Mak135_V_density_ak135( 48) =   11.2639d0
+  Mak135_V_density_ak135( 49) =   11.2137d0
+  Mak135_V_density_ak135( 50) =   11.1623d0
+  Mak135_V_density_ak135( 51) =   11.1095d0
+  Mak135_V_density_ak135( 52) =   11.0555d0
+  Mak135_V_density_ak135( 53) =   11.0001d0
+  Mak135_V_density_ak135( 54) =   10.9434d0
+  Mak135_V_density_ak135( 55) =   10.8852d0
+  Mak135_V_density_ak135( 56) =   10.8257d0
+  Mak135_V_density_ak135( 57) =   10.7647d0
+  Mak135_V_density_ak135( 58) =   10.7023d0
+  Mak135_V_density_ak135( 59) =   10.6385d0
+  Mak135_V_density_ak135( 60) =   10.5731d0
+  Mak135_V_density_ak135( 61) =   10.5062d0
+  Mak135_V_density_ak135( 62) =   10.4378d0
+  Mak135_V_density_ak135( 63) =   10.3679d0
+  Mak135_V_density_ak135( 64) =   10.2964d0
+  Mak135_V_density_ak135( 65) =   10.2233d0
+  Mak135_V_density_ak135( 66) =   10.1485d0
+  Mak135_V_density_ak135( 67) =   10.0722d0
+  Mak135_V_density_ak135( 68) =   9.9942d0
+  Mak135_V_density_ak135( 69) =   9.9145d0
+  Mak135_V_density_ak135( 70) =   5.7721d0
+  Mak135_V_density_ak135( 71) =   5.7458d0
+  Mak135_V_density_ak135( 72) =   5.7196d0
+  Mak135_V_density_ak135( 73) =   5.6934d0
+  Mak135_V_density_ak135( 74) =   5.4387d0
+  Mak135_V_density_ak135( 75) =   5.4176d0
+  Mak135_V_density_ak135( 76) =   5.3962d0
+  Mak135_V_density_ak135( 77) =   5.3748d0
+  Mak135_V_density_ak135( 78) =   5.3531d0
+  Mak135_V_density_ak135( 79) =   5.3313d0
+  Mak135_V_density_ak135( 80) =   5.3092d0
+  Mak135_V_density_ak135( 81) =   5.287d0
+  Mak135_V_density_ak135( 82) =   5.2646d0
+  Mak135_V_density_ak135( 83) =   5.242d0
+  Mak135_V_density_ak135( 84) =   5.2192d0
+  Mak135_V_density_ak135( 85) =   5.1963d0
+  Mak135_V_density_ak135( 86) =   5.1732d0
+  Mak135_V_density_ak135( 87) =   5.1499d0
+  Mak135_V_density_ak135( 88) =   5.1264d0
+  Mak135_V_density_ak135( 89) =   5.1027d0
+  Mak135_V_density_ak135( 90) =   5.0789d0
+  Mak135_V_density_ak135( 91) =   5.0548d0
+  Mak135_V_density_ak135( 92) =   5.0306d0
+  Mak135_V_density_ak135( 93) =   5.0062d0
+  Mak135_V_density_ak135( 94) =   4.9817d0
+  Mak135_V_density_ak135( 95) =   4.957d0
+  Mak135_V_density_ak135( 96) =   4.9321d0
+  Mak135_V_density_ak135( 97) =   4.9069d0
+  Mak135_V_density_ak135( 98) =   4.8817d0
+  Mak135_V_density_ak135( 99) =   4.8562d0
+  Mak135_V_density_ak135(100) =   4.8307d0
+  Mak135_V_density_ak135(101) =   4.805d0
+  Mak135_V_density_ak135(102) =   4.779d0
+  Mak135_V_density_ak135(103) =   4.7528d0
+  Mak135_V_density_ak135(104) =   4.7266d0
+  Mak135_V_density_ak135(105) =   4.7001d0
+  Mak135_V_density_ak135(106) =   4.6735d0
+  Mak135_V_density_ak135(107) =   4.6467d0
+  Mak135_V_density_ak135(108) =   4.6198d0
+  Mak135_V_density_ak135(109) =   4.5926d0
+  Mak135_V_density_ak135(110) =   4.5654d0
+  Mak135_V_density_ak135(111) =   4.5162d0
+  Mak135_V_density_ak135(112) =   4.465d0
+  Mak135_V_density_ak135(113) =   4.4118d0
+  Mak135_V_density_ak135(114) =   4.3565d0
+  Mak135_V_density_ak135(115) =   4.2986d0
+  Mak135_V_density_ak135(116) =   4.2387d0
+  Mak135_V_density_ak135(117) =   3.9201d0
+  Mak135_V_density_ak135(118) =   3.9206d0
+  Mak135_V_density_ak135(119) =   3.9218d0
+  Mak135_V_density_ak135(120) =   3.9233d0
+  Mak135_V_density_ak135(121) =   3.9273d0
+  Mak135_V_density_ak135(122) =   3.9317d0
+  Mak135_V_density_ak135(123) =   3.5068d0
+  Mak135_V_density_ak135(124) =   3.4577d0
+  Mak135_V_density_ak135(125) =   3.411d0
+  Mak135_V_density_ak135(126) =   3.3663d0
+  Mak135_V_density_ak135(127) =   3.3243d0
+  Mak135_V_density_ak135(128) =   3.3243d0
+  Mak135_V_density_ak135(129) =   3.3711d0
+  Mak135_V_density_ak135(130) =   3.4268d0
+  Mak135_V_density_ak135(131) =   3.345d0
+  Mak135_V_density_ak135(132) =   3.32d0
+  Mak135_V_density_ak135(133) =   2.92d0
+  Mak135_V_density_ak135(134) =   2.92d0
+  Mak135_V_density_ak135(135) =   2.72d0
+  Mak135_V_density_ak135(136) =   2.72d0
 
-  Mak135_V%vp_ak135(  1) =   11.2622000000000
-  Mak135_V%vp_ak135(  2) =   11.2618000000000
-  Mak135_V%vp_ak135(  3) =   11.2606000000000
-  Mak135_V%vp_ak135(  4) =   11.2586000000000
-  Mak135_V%vp_ak135(  5) =   11.2557000000000
-  Mak135_V%vp_ak135(  6) =   11.2521000000000
-  Mak135_V%vp_ak135(  7) =   11.2477000000000
-  Mak135_V%vp_ak135(  8) =   11.2424000000000
-  Mak135_V%vp_ak135(  9) =   11.2364000000000
-  Mak135_V%vp_ak135( 10) =   11.2295000000000
-  Mak135_V%vp_ak135( 11) =   11.2219000000000
-  Mak135_V%vp_ak135( 12) =   11.2134000000000
-  Mak135_V%vp_ak135( 13) =   11.1941000000000
-  Mak135_V%vp_ak135( 14) =   11.1830000000000
-  Mak135_V%vp_ak135( 15) =   11.1715000000000
-  Mak135_V%vp_ak135( 16) =   11.1590000000000
-  Mak135_V%vp_ak135( 17) =   11.1457000000000
-  Mak135_V%vp_ak135( 18) =   11.1316000000000
-  Mak135_V%vp_ak135( 19) =   11.1166000000000
-  Mak135_V%vp_ak135( 20) =   11.0983000000000
-  Mak135_V%vp_ak135( 21) =   11.0850000000000
-  Mak135_V%vp_ak135( 22) =   11.0718000000000
-  Mak135_V%vp_ak135( 23) =   11.0585000000000
-  Mak135_V%vp_ak135( 24) =   11.0427000000000
-  Mak135_V%vp_ak135( 25) =   10.2890000000000
-  Mak135_V%vp_ak135( 26) =   10.2854000000000
-  Mak135_V%vp_ak135( 27) =   10.2745000000000
-  Mak135_V%vp_ak135( 28) =   10.2565000000000
-  Mak135_V%vp_ak135( 29) =   10.2329000000000
-  Mak135_V%vp_ak135( 30) =   10.2049000000000
-  Mak135_V%vp_ak135( 31) =   10.1739000000000
-  Mak135_V%vp_ak135( 32) =   10.1415000000000
-  Mak135_V%vp_ak135( 33) =   10.0768000000000
-  Mak135_V%vp_ak135( 34) =   10.0439000000000
-  Mak135_V%vp_ak135( 35) =   10.0103000000000
-  Mak135_V%vp_ak135( 36) =   9.97610000000000
-  Mak135_V%vp_ak135( 37) =   9.94100000000000
-  Mak135_V%vp_ak135( 38) =   9.90510000000000
-  Mak135_V%vp_ak135( 39) =   9.86820000000000
-  Mak135_V%vp_ak135( 40) =   9.83040000000000
-  Mak135_V%vp_ak135( 41) =   9.79140000000000
-  Mak135_V%vp_ak135( 42) =   9.75130000000000
-  Mak135_V%vp_ak135( 43) =   9.71000000000000
-  Mak135_V%vp_ak135( 44) =   9.66730000000000
-  Mak135_V%vp_ak135( 45) =   9.62320000000000
-  Mak135_V%vp_ak135( 46) =   9.57770000000000
-  Mak135_V%vp_ak135( 47) =   9.53060000000000
-  Mak135_V%vp_ak135( 48) =   9.48140000000000
-  Mak135_V%vp_ak135( 49) =   9.42970000000000
-  Mak135_V%vp_ak135( 50) =   9.37600000000000
-  Mak135_V%vp_ak135( 51) =   9.32050000000000
-  Mak135_V%vp_ak135( 52) =   9.26340000000000
-  Mak135_V%vp_ak135( 53) =   9.20420000000000
-  Mak135_V%vp_ak135( 54) =   9.14260000000000
-  Mak135_V%vp_ak135( 55) =   9.07920000000000
-  Mak135_V%vp_ak135( 56) =   9.01380000000000
-  Mak135_V%vp_ak135( 57) =   8.94610000000000
-  Mak135_V%vp_ak135( 58) =   8.87610000000000
-  Mak135_V%vp_ak135( 59) =   8.80360000000000
-  Mak135_V%vp_ak135( 60) =   8.72830000000000
-  Mak135_V%vp_ak135( 61) =   8.64960000000000
-  Mak135_V%vp_ak135( 62) =   8.56920000000000
-  Mak135_V%vp_ak135( 63) =   8.48610000000000
-  Mak135_V%vp_ak135( 64) =   8.40010000000000
-  Mak135_V%vp_ak135( 65) =   8.31220000000000
-  Mak135_V%vp_ak135( 66) =   8.22130000000000
-  Mak135_V%vp_ak135( 67) =   8.12830000000000
-  Mak135_V%vp_ak135( 68) =   8.03820000000000
-  Mak135_V%vp_ak135( 69) =   8.00000000000000
-  Mak135_V%vp_ak135( 70) =   13.6601000000000
-  Mak135_V%vp_ak135( 71) =   13.6570000000000
-  Mak135_V%vp_ak135( 72) =   13.6533000000000
-  Mak135_V%vp_ak135( 73) =   13.6498000000000
-  Mak135_V%vp_ak135( 74) =   13.6498000000000
-  Mak135_V%vp_ak135( 75) =   13.5899000000000
-  Mak135_V%vp_ak135( 76) =   13.5311000000000
-  Mak135_V%vp_ak135( 77) =   13.4741000000000
-  Mak135_V%vp_ak135( 78) =   13.4156000000000
-  Mak135_V%vp_ak135( 79) =   13.3584000000000
-  Mak135_V%vp_ak135( 80) =   13.3017000000000
-  Mak135_V%vp_ak135( 81) =   13.2465000000000
-  Mak135_V%vp_ak135( 82) =   13.1895000000000
-  Mak135_V%vp_ak135( 83) =   13.1337000000000
-  Mak135_V%vp_ak135( 84) =   13.0786000000000
-  Mak135_V%vp_ak135( 85) =   13.0226000000000
-  Mak135_V%vp_ak135( 86) =   12.9663000000000
-  Mak135_V%vp_ak135( 87) =   12.9093000000000
-  Mak135_V%vp_ak135( 88) =   12.8524000000000
-  Mak135_V%vp_ak135( 89) =   12.7956000000000
-  Mak135_V%vp_ak135( 90) =   12.7384000000000
-  Mak135_V%vp_ak135( 91) =   12.6807000000000
-  Mak135_V%vp_ak135( 92) =   12.6226000000000
-  Mak135_V%vp_ak135( 93) =   12.5638000000000
-  Mak135_V%vp_ak135( 94) =   12.5030000000000
-  Mak135_V%vp_ak135( 95) =   12.4427000000000
-  Mak135_V%vp_ak135( 96) =   12.3813000000000
-  Mak135_V%vp_ak135( 97) =   12.3181000000000
-  Mak135_V%vp_ak135( 98) =   12.2558000000000
-  Mak135_V%vp_ak135( 99) =   12.1912000000000
-  Mak135_V%vp_ak135(100) =   12.1247000000000
-  Mak135_V%vp_ak135(101) =   12.0571000000000
-  Mak135_V%vp_ak135(102) =   11.9891000000000
-  Mak135_V%vp_ak135(103) =   11.9208000000000
-  Mak135_V%vp_ak135(104) =   11.8491000000000
-  Mak135_V%vp_ak135(105) =   11.7768000000000
-  Mak135_V%vp_ak135(106) =   11.7020000000000
-  Mak135_V%vp_ak135(107) =   11.6265000000000
-  Mak135_V%vp_ak135(108) =   11.5493000000000
-  Mak135_V%vp_ak135(109) =   11.4704000000000
-  Mak135_V%vp_ak135(110) =   11.3897000000000
-  Mak135_V%vp_ak135(111) =   11.3068000000000
-  Mak135_V%vp_ak135(112) =   11.2228000000000
-  Mak135_V%vp_ak135(113) =   11.1355000000000
-  Mak135_V%vp_ak135(114) =   11.0553000000000
-  Mak135_V%vp_ak135(115) =   10.9222000000000
-  Mak135_V%vp_ak135(116) =   10.7909000000000
-  Mak135_V%vp_ak135(117) =   10.2000000000000
-  Mak135_V%vp_ak135(118) =   10.0320000000000
-  Mak135_V%vp_ak135(119) =   9.86400000000000
-  Mak135_V%vp_ak135(120) =   9.69620000000000
-  Mak135_V%vp_ak135(121) =   9.52800000000000
-  Mak135_V%vp_ak135(122) =   9.36010000000000
-  Mak135_V%vp_ak135(123) =   9.03020000000000
-  Mak135_V%vp_ak135(124) =   8.84760000000000
-  Mak135_V%vp_ak135(125) =   8.66500000000000
-  Mak135_V%vp_ak135(126) =   8.48220000000000
-  Mak135_V%vp_ak135(127) =   8.30070000000000
-  Mak135_V%vp_ak135(128) =   8.30070000000000
-  Mak135_V%vp_ak135(129) =   8.17500000000000
-  Mak135_V%vp_ak135(130) =   8.05050000000000
-  Mak135_V%vp_ak135(131) =   8.04500000000000
-  Mak135_V%vp_ak135(132) =   8.04000000000000
-  Mak135_V%vp_ak135(133) =   6.50000000000000
-  Mak135_V%vp_ak135(134) =   6.50000000000000
-  Mak135_V%vp_ak135(135) =   5.80000000000000
-  Mak135_V%vp_ak135(136) =   5.80000000000000
+  Mak135_V_vp_ak135(  1) =   11.2622d0
+  Mak135_V_vp_ak135(  2) =   11.2618d0
+  Mak135_V_vp_ak135(  3) =   11.2606d0
+  Mak135_V_vp_ak135(  4) =   11.2586d0
+  Mak135_V_vp_ak135(  5) =   11.2557d0
+  Mak135_V_vp_ak135(  6) =   11.2521d0
+  Mak135_V_vp_ak135(  7) =   11.2477d0
+  Mak135_V_vp_ak135(  8) =   11.2424d0
+  Mak135_V_vp_ak135(  9) =   11.2364d0
+  Mak135_V_vp_ak135( 10) =   11.2295d0
+  Mak135_V_vp_ak135( 11) =   11.2219d0
+  Mak135_V_vp_ak135( 12) =   11.2134d0
+  Mak135_V_vp_ak135( 13) =   11.1941d0
+  Mak135_V_vp_ak135( 14) =   11.183d0
+  Mak135_V_vp_ak135( 15) =   11.1715d0
+  Mak135_V_vp_ak135( 16) =   11.159d0
+  Mak135_V_vp_ak135( 17) =   11.1457d0
+  Mak135_V_vp_ak135( 18) =   11.1316d0
+  Mak135_V_vp_ak135( 19) =   11.1166d0
+  Mak135_V_vp_ak135( 20) =   11.0983d0
+  Mak135_V_vp_ak135( 21) =   11.085d0
+  Mak135_V_vp_ak135( 22) =   11.0718d0
+  Mak135_V_vp_ak135( 23) =   11.0585d0
+  Mak135_V_vp_ak135( 24) =   11.0427d0
+  Mak135_V_vp_ak135( 25) =   10.289d0
+  Mak135_V_vp_ak135( 26) =   10.2854d0
+  Mak135_V_vp_ak135( 27) =   10.2745d0
+  Mak135_V_vp_ak135( 28) =   10.2565d0
+  Mak135_V_vp_ak135( 29) =   10.2329d0
+  Mak135_V_vp_ak135( 30) =   10.2049d0
+  Mak135_V_vp_ak135( 31) =   10.1739d0
+  Mak135_V_vp_ak135( 32) =   10.1415d0
+  Mak135_V_vp_ak135( 33) =   10.0768d0
+  Mak135_V_vp_ak135( 34) =   10.0439d0
+  Mak135_V_vp_ak135( 35) =   10.0103d0
+  Mak135_V_vp_ak135( 36) =   9.9761d0
+  Mak135_V_vp_ak135( 37) =   9.941d0
+  Mak135_V_vp_ak135( 38) =   9.9051d0
+  Mak135_V_vp_ak135( 39) =   9.8682d0
+  Mak135_V_vp_ak135( 40) =   9.8304d0
+  Mak135_V_vp_ak135( 41) =   9.7914d0
+  Mak135_V_vp_ak135( 42) =   9.7513d0
+  Mak135_V_vp_ak135( 43) =   9.71d0
+  Mak135_V_vp_ak135( 44) =   9.6673d0
+  Mak135_V_vp_ak135( 45) =   9.6232d0
+  Mak135_V_vp_ak135( 46) =   9.5777d0
+  Mak135_V_vp_ak135( 47) =   9.5306d0
+  Mak135_V_vp_ak135( 48) =   9.4814d0
+  Mak135_V_vp_ak135( 49) =   9.4297d0
+  Mak135_V_vp_ak135( 50) =   9.376d0
+  Mak135_V_vp_ak135( 51) =   9.3205d0
+  Mak135_V_vp_ak135( 52) =   9.2634d0
+  Mak135_V_vp_ak135( 53) =   9.2042d0
+  Mak135_V_vp_ak135( 54) =   9.1426d0
+  Mak135_V_vp_ak135( 55) =   9.0792d0
+  Mak135_V_vp_ak135( 56) =   9.0138d0
+  Mak135_V_vp_ak135( 57) =   8.9461d0
+  Mak135_V_vp_ak135( 58) =   8.8761d0
+  Mak135_V_vp_ak135( 59) =   8.8036d0
+  Mak135_V_vp_ak135( 60) =   8.7283d0
+  Mak135_V_vp_ak135( 61) =   8.6496d0
+  Mak135_V_vp_ak135( 62) =   8.5692d0
+  Mak135_V_vp_ak135( 63) =   8.4861d0
+  Mak135_V_vp_ak135( 64) =   8.4001d0
+  Mak135_V_vp_ak135( 65) =   8.3122d0
+  Mak135_V_vp_ak135( 66) =   8.2213d0
+  Mak135_V_vp_ak135( 67) =   8.1283d0
+  Mak135_V_vp_ak135( 68) =   8.0382d0
+  Mak135_V_vp_ak135( 69) =   8.d0
+  Mak135_V_vp_ak135( 70) =   13.6601d0
+  Mak135_V_vp_ak135( 71) =   13.657d0
+  Mak135_V_vp_ak135( 72) =   13.6533d0
+  Mak135_V_vp_ak135( 73) =   13.6498d0
+  Mak135_V_vp_ak135( 74) =   13.6498d0
+  Mak135_V_vp_ak135( 75) =   13.5899d0
+  Mak135_V_vp_ak135( 76) =   13.5311d0
+  Mak135_V_vp_ak135( 77) =   13.4741d0
+  Mak135_V_vp_ak135( 78) =   13.4156d0
+  Mak135_V_vp_ak135( 79) =   13.3584d0
+  Mak135_V_vp_ak135( 80) =   13.3017d0
+  Mak135_V_vp_ak135( 81) =   13.2465d0
+  Mak135_V_vp_ak135( 82) =   13.1895d0
+  Mak135_V_vp_ak135( 83) =   13.1337d0
+  Mak135_V_vp_ak135( 84) =   13.0786d0
+  Mak135_V_vp_ak135( 85) =   13.0226d0
+  Mak135_V_vp_ak135( 86) =   12.9663d0
+  Mak135_V_vp_ak135( 87) =   12.9093d0
+  Mak135_V_vp_ak135( 88) =   12.8524d0
+  Mak135_V_vp_ak135( 89) =   12.7956d0
+  Mak135_V_vp_ak135( 90) =   12.7384d0
+  Mak135_V_vp_ak135( 91) =   12.6807d0
+  Mak135_V_vp_ak135( 92) =   12.6226d0
+  Mak135_V_vp_ak135( 93) =   12.5638d0
+  Mak135_V_vp_ak135( 94) =   12.503d0
+  Mak135_V_vp_ak135( 95) =   12.4427d0
+  Mak135_V_vp_ak135( 96) =   12.3813d0
+  Mak135_V_vp_ak135( 97) =   12.3181d0
+  Mak135_V_vp_ak135( 98) =   12.2558d0
+  Mak135_V_vp_ak135( 99) =   12.1912d0
+  Mak135_V_vp_ak135(100) =   12.1247d0
+  Mak135_V_vp_ak135(101) =   12.0571d0
+  Mak135_V_vp_ak135(102) =   11.9891d0
+  Mak135_V_vp_ak135(103) =   11.9208d0
+  Mak135_V_vp_ak135(104) =   11.8491d0
+  Mak135_V_vp_ak135(105) =   11.7768d0
+  Mak135_V_vp_ak135(106) =   11.702d0
+  Mak135_V_vp_ak135(107) =   11.6265d0
+  Mak135_V_vp_ak135(108) =   11.5493d0
+  Mak135_V_vp_ak135(109) =   11.4704d0
+  Mak135_V_vp_ak135(110) =   11.3897d0
+  Mak135_V_vp_ak135(111) =   11.3068d0
+  Mak135_V_vp_ak135(112) =   11.2228d0
+  Mak135_V_vp_ak135(113) =   11.1355d0
+  Mak135_V_vp_ak135(114) =   11.0553d0
+  Mak135_V_vp_ak135(115) =   10.9222d0
+  Mak135_V_vp_ak135(116) =   10.7909d0
+  Mak135_V_vp_ak135(117) =   10.2d0
+  Mak135_V_vp_ak135(118) =   10.032d0
+  Mak135_V_vp_ak135(119) =   9.864d0
+  Mak135_V_vp_ak135(120) =   9.6962d0
+  Mak135_V_vp_ak135(121) =   9.528d0
+  Mak135_V_vp_ak135(122) =   9.3601d0
+  Mak135_V_vp_ak135(123) =   9.0302d0
+  Mak135_V_vp_ak135(124) =   8.8476d0
+  Mak135_V_vp_ak135(125) =   8.665d0
+  Mak135_V_vp_ak135(126) =   8.4822d0
+  Mak135_V_vp_ak135(127) =   8.3007d0
+  Mak135_V_vp_ak135(128) =   8.3007d0
+  Mak135_V_vp_ak135(129) =   8.175d0
+  Mak135_V_vp_ak135(130) =   8.0505d0
+  Mak135_V_vp_ak135(131) =   8.045d0
+  Mak135_V_vp_ak135(132) =   8.04d0
+  Mak135_V_vp_ak135(133) =   6.5d0
+  Mak135_V_vp_ak135(134) =   6.5d0
+  Mak135_V_vp_ak135(135) =   5.8d0
+  Mak135_V_vp_ak135(136) =   5.8d0
 
-  Mak135_V%vs_ak135(  1) =   3.66780000000000
-  Mak135_V%vs_ak135(  2) =   3.66750000000000
-  Mak135_V%vs_ak135(  3) =   3.66670000000000
-  Mak135_V%vs_ak135(  4) =   3.66530000000000
-  Mak135_V%vs_ak135(  5) =   3.66330000000000
-  Mak135_V%vs_ak135(  6) =   3.66080000000000
-  Mak135_V%vs_ak135(  7) =   3.65770000000000
-  Mak135_V%vs_ak135(  8) =   3.65400000000000
-  Mak135_V%vs_ak135(  9) =   3.64980000000000
-  Mak135_V%vs_ak135( 10) =   3.64500000000000
-  Mak135_V%vs_ak135( 11) =   3.63960000000000
-  Mak135_V%vs_ak135( 12) =   3.63370000000000
-  Mak135_V%vs_ak135( 13) =   3.62020000000000
-  Mak135_V%vs_ak135( 14) =   3.61300000000000
-  Mak135_V%vs_ak135( 15) =   3.60440000000000
-  Mak135_V%vs_ak135( 16) =   3.59570000000000
-  Mak135_V%vs_ak135( 17) =   3.58640000000000
-  Mak135_V%vs_ak135( 18) =   3.57650000000000
-  Mak135_V%vs_ak135( 19) =   3.56610000000000
-  Mak135_V%vs_ak135( 20) =   3.55510000000000
-  Mak135_V%vs_ak135( 21) =   3.54350000000000
-  Mak135_V%vs_ak135( 22) =   3.53140000000000
-  Mak135_V%vs_ak135( 23) =   3.51870000000000
-  Mak135_V%vs_ak135( 24) =   3.50430000000000
-  Mak135_V%vs_ak135( 25) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 26) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 27) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 28) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 29) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 30) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 31) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 32) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 33) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 34) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 35) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 36) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 37) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 38) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 39) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 40) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 41) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 42) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 43) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 44) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 45) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 46) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 47) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 48) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 49) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 50) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 51) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 52) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 53) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 54) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 55) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 56) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 57) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 58) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 59) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 60) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 61) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 62) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 63) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 64) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 65) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 66) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 67) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 68) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 69) =  0.000000000000000E+000
-  Mak135_V%vs_ak135( 70) =   7.28170000000000
-  Mak135_V%vs_ak135( 71) =   7.27000000000000
-  Mak135_V%vs_ak135( 72) =   7.25930000000000
-  Mak135_V%vs_ak135( 73) =   7.24850000000000
-  Mak135_V%vs_ak135( 74) =   7.24850000000000
-  Mak135_V%vs_ak135( 75) =   7.22530000000000
-  Mak135_V%vs_ak135( 76) =   7.20310000000000
-  Mak135_V%vs_ak135( 77) =   7.18040000000000
-  Mak135_V%vs_ak135( 78) =   7.15840000000000
-  Mak135_V%vs_ak135( 79) =   7.13680000000000
-  Mak135_V%vs_ak135( 80) =   7.11440000000000
-  Mak135_V%vs_ak135( 81) =   7.09320000000000
-  Mak135_V%vs_ak135( 82) =   7.07220000000000
-  Mak135_V%vs_ak135( 83) =   7.05040000000000
-  Mak135_V%vs_ak135( 84) =   7.02860000000000
-  Mak135_V%vs_ak135( 85) =   7.00690000000000
-  Mak135_V%vs_ak135( 86) =   6.98520000000000
-  Mak135_V%vs_ak135( 87) =   6.96250000000000
-  Mak135_V%vs_ak135( 88) =   6.94160000000000
-  Mak135_V%vs_ak135( 89) =   6.91940000000000
-  Mak135_V%vs_ak135( 90) =   6.89720000000000
-  Mak135_V%vs_ak135( 91) =   6.87430000000000
-  Mak135_V%vs_ak135( 92) =   6.85170000000000
-  Mak135_V%vs_ak135( 93) =   6.82890000000000
-  Mak135_V%vs_ak135( 94) =   6.80560000000000
-  Mak135_V%vs_ak135( 95) =   6.78200000000000
-  Mak135_V%vs_ak135( 96) =   6.75790000000000
-  Mak135_V%vs_ak135( 97) =   6.73230000000000
-  Mak135_V%vs_ak135( 98) =   6.70700000000000
-  Mak135_V%vs_ak135( 99) =   6.68130000000000
-  Mak135_V%vs_ak135(100) =   6.65540000000000
-  Mak135_V%vs_ak135(101) =   6.62850000000000
-  Mak135_V%vs_ak135(102) =   6.60090000000000
-  Mak135_V%vs_ak135(103) =   6.57280000000000
-  Mak135_V%vs_ak135(104) =   6.54310000000000
-  Mak135_V%vs_ak135(105) =   6.51310000000000
-  Mak135_V%vs_ak135(106) =   6.48220000000000
-  Mak135_V%vs_ak135(107) =   6.45140000000000
-  Mak135_V%vs_ak135(108) =   6.41820000000000
-  Mak135_V%vs_ak135(109) =   6.38600000000000
-  Mak135_V%vs_ak135(110) =   6.35190000000000
-  Mak135_V%vs_ak135(111) =   6.31640000000000
-  Mak135_V%vs_ak135(112) =   6.27990000000000
-  Mak135_V%vs_ak135(113) =   6.24240000000000
-  Mak135_V%vs_ak135(114) =   6.21000000000000
-  Mak135_V%vs_ak135(115) =   6.08980000000000
-  Mak135_V%vs_ak135(116) =   5.96070000000000
-  Mak135_V%vs_ak135(117) =   5.61040000000000
-  Mak135_V%vs_ak135(118) =   5.50470000000000
-  Mak135_V%vs_ak135(119) =   5.39890000000000
-  Mak135_V%vs_ak135(120) =   5.29220000000000
-  Mak135_V%vs_ak135(121) =   5.18640000000000
-  Mak135_V%vs_ak135(122) =   5.08060000000000
-  Mak135_V%vs_ak135(123) =   4.87020000000000
-  Mak135_V%vs_ak135(124) =   4.78320000000000
-  Mak135_V%vs_ak135(125) =   4.69640000000000
-  Mak135_V%vs_ak135(126) =   4.60940000000000
-  Mak135_V%vs_ak135(127) =   4.51840000000000
-  Mak135_V%vs_ak135(128) =   4.51840000000000
-  Mak135_V%vs_ak135(129) =   4.50900000000000
-  Mak135_V%vs_ak135(130) =   4.50000000000000
-  Mak135_V%vs_ak135(131) =   4.49000000000000
-  Mak135_V%vs_ak135(132) =   4.48000000000000
-  Mak135_V%vs_ak135(133) =   3.85000000000000
-  Mak135_V%vs_ak135(134) =   3.85000000000000
-  Mak135_V%vs_ak135(135) =   3.46000000000000
-  Mak135_V%vs_ak135(136) =   3.46000000000000
+  Mak135_V_vs_ak135(  1) =   3.6678d0
+  Mak135_V_vs_ak135(  2) =   3.6675d0
+  Mak135_V_vs_ak135(  3) =   3.6667d0
+  Mak135_V_vs_ak135(  4) =   3.6653d0
+  Mak135_V_vs_ak135(  5) =   3.6633d0
+  Mak135_V_vs_ak135(  6) =   3.6608d0
+  Mak135_V_vs_ak135(  7) =   3.6577d0
+  Mak135_V_vs_ak135(  8) =   3.654d0
+  Mak135_V_vs_ak135(  9) =   3.6498d0
+  Mak135_V_vs_ak135( 10) =   3.645d0
+  Mak135_V_vs_ak135( 11) =   3.6396d0
+  Mak135_V_vs_ak135( 12) =   3.6337d0
+  Mak135_V_vs_ak135( 13) =   3.6202d0
+  Mak135_V_vs_ak135( 14) =   3.613d0
+  Mak135_V_vs_ak135( 15) =   3.6044d0
+  Mak135_V_vs_ak135( 16) =   3.5957d0
+  Mak135_V_vs_ak135( 17) =   3.5864d0
+  Mak135_V_vs_ak135( 18) =   3.5765d0
+  Mak135_V_vs_ak135( 19) =   3.5661d0
+  Mak135_V_vs_ak135( 20) =   3.5551d0
+  Mak135_V_vs_ak135( 21) =   3.5435d0
+  Mak135_V_vs_ak135( 22) =   3.5314d0
+  Mak135_V_vs_ak135( 23) =   3.5187d0
+  Mak135_V_vs_ak135( 24) =   3.5043d0
+  Mak135_V_vs_ak135( 25) =  0.d0
+  Mak135_V_vs_ak135( 26) =  0.d0
+  Mak135_V_vs_ak135( 27) =  0.d0
+  Mak135_V_vs_ak135( 28) =  0.d0
+  Mak135_V_vs_ak135( 29) =  0.d0
+  Mak135_V_vs_ak135( 30) =  0.d0
+  Mak135_V_vs_ak135( 31) =  0.d0
+  Mak135_V_vs_ak135( 32) =  0.d0
+  Mak135_V_vs_ak135( 33) =  0.d0
+  Mak135_V_vs_ak135( 34) =  0.d0
+  Mak135_V_vs_ak135( 35) =  0.d0
+  Mak135_V_vs_ak135( 36) =  0.d0
+  Mak135_V_vs_ak135( 37) =  0.d0
+  Mak135_V_vs_ak135( 38) =  0.d0
+  Mak135_V_vs_ak135( 39) =  0.d0
+  Mak135_V_vs_ak135( 40) =  0.d0
+  Mak135_V_vs_ak135( 41) =  0.d0
+  Mak135_V_vs_ak135( 42) =  0.d0
+  Mak135_V_vs_ak135( 43) =  0.d0
+  Mak135_V_vs_ak135( 44) =  0.d0
+  Mak135_V_vs_ak135( 45) =  0.d0
+  Mak135_V_vs_ak135( 46) =  0.d0
+  Mak135_V_vs_ak135( 47) =  0.d0
+  Mak135_V_vs_ak135( 48) =  0.d0
+  Mak135_V_vs_ak135( 49) =  0.d0
+  Mak135_V_vs_ak135( 50) =  0.d0
+  Mak135_V_vs_ak135( 51) =  0.d0
+  Mak135_V_vs_ak135( 52) =  0.d0
+  Mak135_V_vs_ak135( 53) =  0.d0
+  Mak135_V_vs_ak135( 54) =  0.d0
+  Mak135_V_vs_ak135( 55) =  0.d0
+  Mak135_V_vs_ak135( 56) =  0.d0
+  Mak135_V_vs_ak135( 57) =  0.d0
+  Mak135_V_vs_ak135( 58) =  0.d0
+  Mak135_V_vs_ak135( 59) =  0.d0
+  Mak135_V_vs_ak135( 60) =  0.d0
+  Mak135_V_vs_ak135( 61) =  0.d0
+  Mak135_V_vs_ak135( 62) =  0.d0
+  Mak135_V_vs_ak135( 63) =  0.d0
+  Mak135_V_vs_ak135( 64) =  0.d0
+  Mak135_V_vs_ak135( 65) =  0.d0
+  Mak135_V_vs_ak135( 66) =  0.d0
+  Mak135_V_vs_ak135( 67) =  0.d0
+  Mak135_V_vs_ak135( 68) =  0.d0
+  Mak135_V_vs_ak135( 69) =  0.d0
+  Mak135_V_vs_ak135( 70) =   7.2817d0
+  Mak135_V_vs_ak135( 71) =   7.27d0
+  Mak135_V_vs_ak135( 72) =   7.2593d0
+  Mak135_V_vs_ak135( 73) =   7.2485d0
+  Mak135_V_vs_ak135( 74) =   7.2485d0
+  Mak135_V_vs_ak135( 75) =   7.2253d0
+  Mak135_V_vs_ak135( 76) =   7.2031d0
+  Mak135_V_vs_ak135( 77) =   7.1804d0
+  Mak135_V_vs_ak135( 78) =   7.1584d0
+  Mak135_V_vs_ak135( 79) =   7.1368d0
+  Mak135_V_vs_ak135( 80) =   7.1144d0
+  Mak135_V_vs_ak135( 81) =   7.0932d0
+  Mak135_V_vs_ak135( 82) =   7.0722d0
+  Mak135_V_vs_ak135( 83) =   7.0504d0
+  Mak135_V_vs_ak135( 84) =   7.0286d0
+  Mak135_V_vs_ak135( 85) =   7.0069d0
+  Mak135_V_vs_ak135( 86) =   6.9852d0
+  Mak135_V_vs_ak135( 87) =   6.9625d0
+  Mak135_V_vs_ak135( 88) =   6.9416d0
+  Mak135_V_vs_ak135( 89) =   6.9194d0
+  Mak135_V_vs_ak135( 90) =   6.8972d0
+  Mak135_V_vs_ak135( 91) =   6.8743d0
+  Mak135_V_vs_ak135( 92) =   6.8517d0
+  Mak135_V_vs_ak135( 93) =   6.8289d0
+  Mak135_V_vs_ak135( 94) =   6.8056d0
+  Mak135_V_vs_ak135( 95) =   6.782d0
+  Mak135_V_vs_ak135( 96) =   6.7579d0
+  Mak135_V_vs_ak135( 97) =   6.7323d0
+  Mak135_V_vs_ak135( 98) =   6.707d0
+  Mak135_V_vs_ak135( 99) =   6.6813d0
+  Mak135_V_vs_ak135(100) =   6.6554d0
+  Mak135_V_vs_ak135(101) =   6.6285d0
+  Mak135_V_vs_ak135(102) =   6.6009d0
+  Mak135_V_vs_ak135(103) =   6.5728d0
+  Mak135_V_vs_ak135(104) =   6.5431d0
+  Mak135_V_vs_ak135(105) =   6.5131d0
+  Mak135_V_vs_ak135(106) =   6.4822d0
+  Mak135_V_vs_ak135(107) =   6.4514d0
+  Mak135_V_vs_ak135(108) =   6.4182d0
+  Mak135_V_vs_ak135(109) =   6.386d0
+  Mak135_V_vs_ak135(110) =   6.3519d0
+  Mak135_V_vs_ak135(111) =   6.3164d0
+  Mak135_V_vs_ak135(112) =   6.2799d0
+  Mak135_V_vs_ak135(113) =   6.2424d0
+  Mak135_V_vs_ak135(114) =   6.21d0
+  Mak135_V_vs_ak135(115) =   6.0898d0
+  Mak135_V_vs_ak135(116) =   5.9607d0
+  Mak135_V_vs_ak135(117) =   5.6104d0
+  Mak135_V_vs_ak135(118) =   5.5047d0
+  Mak135_V_vs_ak135(119) =   5.3989d0
+  Mak135_V_vs_ak135(120) =   5.2922d0
+  Mak135_V_vs_ak135(121) =   5.1864d0
+  Mak135_V_vs_ak135(122) =   5.0806d0
+  Mak135_V_vs_ak135(123) =   4.8702d0
+  Mak135_V_vs_ak135(124) =   4.7832d0
+  Mak135_V_vs_ak135(125) =   4.6964d0
+  Mak135_V_vs_ak135(126) =   4.6094d0
+  Mak135_V_vs_ak135(127) =   4.5184d0
+  Mak135_V_vs_ak135(128) =   4.5184d0
+  Mak135_V_vs_ak135(129) =   4.509d0
+  Mak135_V_vs_ak135(130) =   4.5d0
+  Mak135_V_vs_ak135(131) =   4.49d0
+  Mak135_V_vs_ak135(132) =   4.48d0
+  Mak135_V_vs_ak135(133) =   3.85d0
+  Mak135_V_vs_ak135(134) =   3.85d0
+  Mak135_V_vs_ak135(135) =   3.46d0
+  Mak135_V_vs_ak135(136) =   3.46d0
 
-  Mak135_V%Qkappa_ak135(  1) =   601.270000000000
-  Mak135_V%Qkappa_ak135(  2) =   601.320000000000
-  Mak135_V%Qkappa_ak135(  3) =   601.460000000000
-  Mak135_V%Qkappa_ak135(  4) =   601.700000000000
-  Mak135_V%Qkappa_ak135(  5) =   602.050000000000
-  Mak135_V%Qkappa_ak135(  6) =   602.490000000000
-  Mak135_V%Qkappa_ak135(  7) =   603.040000000000
-  Mak135_V%Qkappa_ak135(  8) =   603.690000000000
-  Mak135_V%Qkappa_ak135(  9) =   604.440000000000
-  Mak135_V%Qkappa_ak135( 10) =   605.280000000000
-  Mak135_V%Qkappa_ak135( 11) =   606.260000000000
-  Mak135_V%Qkappa_ak135( 12) =   607.310000000000
-  Mak135_V%Qkappa_ak135( 13) =   609.740000000000
-  Mak135_V%Qkappa_ak135( 14) =   611.180000000000
-  Mak135_V%Qkappa_ak135( 15) =   612.620000000000
-  Mak135_V%Qkappa_ak135( 16) =   614.210000000000
-  Mak135_V%Qkappa_ak135( 17) =   615.930000000000
-  Mak135_V%Qkappa_ak135( 18) =   617.780000000000
-  Mak135_V%Qkappa_ak135( 19) =   619.710000000000
-  Mak135_V%Qkappa_ak135( 20) =   621.500000000000
-  Mak135_V%Qkappa_ak135( 21) =   624.080000000000
-  Mak135_V%Qkappa_ak135( 22) =   626.870000000000
-  Mak135_V%Qkappa_ak135( 23) =   629.890000000000
-  Mak135_V%Qkappa_ak135( 24) =   633.260000000000
-  Mak135_V%Qkappa_ak135( 25) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 26) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 27) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 28) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 29) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 30) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 31) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 32) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 33) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 34) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 35) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 36) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 37) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 38) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 39) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 40) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 41) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 42) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 43) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 44) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 45) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 46) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 47) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 48) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 49) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 50) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 51) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 52) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 53) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 54) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 55) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 56) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 57) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 58) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 59) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 60) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 61) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 62) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 63) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 64) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 65) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 66) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 67) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 68) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 69) =   57822.0000000000
-  Mak135_V%Qkappa_ak135( 70) =   723.120000000000
-  Mak135_V%Qkappa_ak135( 71) =   725.110000000000
-  Mak135_V%Qkappa_ak135( 72) =   726.870000000000
-  Mak135_V%Qkappa_ak135( 73) =   722.730000000000
-  Mak135_V%Qkappa_ak135( 74) =   933.210000000000
-  Mak135_V%Qkappa_ak135( 75) =   940.880000000000
-  Mak135_V%Qkappa_ak135( 76) =   952.000000000000
-  Mak135_V%Qkappa_ak135( 77) =   960.360000000000
-  Mak135_V%Qkappa_ak135( 78) =   968.460000000000
-  Mak135_V%Qkappa_ak135( 79) =   976.810000000000
-  Mak135_V%Qkappa_ak135( 80) =   985.630000000000
-  Mak135_V%Qkappa_ak135( 81) =   990.770000000000
-  Mak135_V%Qkappa_ak135( 82) =   999.440000000000
-  Mak135_V%Qkappa_ak135( 83) =   1008.79000000000
-  Mak135_V%Qkappa_ak135( 84) =   1018.38000000000
-  Mak135_V%Qkappa_ak135( 85) =   1032.14000000000
-  Mak135_V%Qkappa_ak135( 86) =   1042.07000000000
-  Mak135_V%Qkappa_ak135( 87) =   1048.09000000000
-  Mak135_V%Qkappa_ak135( 88) =   1058.03000000000
-  Mak135_V%Qkappa_ak135( 89) =   1064.23000000000
-  Mak135_V%Qkappa_ak135( 90) =   1070.38000000000
-  Mak135_V%Qkappa_ak135( 91) =   1085.97000000000
-  Mak135_V%Qkappa_ak135( 92) =   1097.16000000000
-  Mak135_V%Qkappa_ak135( 93) =   1108.58000000000
-  Mak135_V%Qkappa_ak135( 94) =   1120.09000000000
-  Mak135_V%Qkappa_ak135( 95) =   1127.02000000000
-  Mak135_V%Qkappa_ak135( 96) =   1134.01000000000
-  Mak135_V%Qkappa_ak135( 97) =   1141.32000000000
-  Mak135_V%Qkappa_ak135( 98) =   1148.76000000000
-  Mak135_V%Qkappa_ak135( 99) =   1156.04000000000
-  Mak135_V%Qkappa_ak135(100) =   1163.16000000000
-  Mak135_V%Qkappa_ak135(101) =   1170.53000000000
-  Mak135_V%Qkappa_ak135(102) =   1178.19000000000
-  Mak135_V%Qkappa_ak135(103) =   1186.06000000000
-  Mak135_V%Qkappa_ak135(104) =   1193.99000000000
-  Mak135_V%Qkappa_ak135(105) =   1202.04000000000
-  Mak135_V%Qkappa_ak135(106) =   1210.02000000000
-  Mak135_V%Qkappa_ak135(107) =   1217.91000000000
-  Mak135_V%Qkappa_ak135(108) =   1226.52000000000
-  Mak135_V%Qkappa_ak135(109) =   1234.54000000000
-  Mak135_V%Qkappa_ak135(110) =   1243.02000000000
-  Mak135_V%Qkappa_ak135(111) =   1251.69000000000
-  Mak135_V%Qkappa_ak135(112) =   1260.68000000000
-  Mak135_V%Qkappa_ak135(113) =   1269.44000000000
-  Mak135_V%Qkappa_ak135(114) =   1277.93000000000
-  Mak135_V%Qkappa_ak135(115) =   1311.17000000000
-  Mak135_V%Qkappa_ak135(116) =   1350.54000000000
-  Mak135_V%Qkappa_ak135(117) =   428.690000000000
-  Mak135_V%Qkappa_ak135(118) =   425.510000000000
-  Mak135_V%Qkappa_ak135(119) =   422.550000000000
-  Mak135_V%Qkappa_ak135(120) =   419.940000000000
-  Mak135_V%Qkappa_ak135(121) =   417.320000000000
-  Mak135_V%Qkappa_ak135(122) =   413.660000000000
-  Mak135_V%Qkappa_ak135(123) =   377.930000000000
-  Mak135_V%Qkappa_ak135(124) =   366.340000000000
-  Mak135_V%Qkappa_ak135(125) =   355.850000000000
-  Mak135_V%Qkappa_ak135(126) =   346.370000000000
-  Mak135_V%Qkappa_ak135(127) =   338.470000000000
-  Mak135_V%Qkappa_ak135(128) =   200.970000000000
-  Mak135_V%Qkappa_ak135(129) =   188.720000000000
-  Mak135_V%Qkappa_ak135(130) =   182.570000000000
-  Mak135_V%Qkappa_ak135(131) =   182.030000000000
-  Mak135_V%Qkappa_ak135(132) =   182.030000000000
-  Mak135_V%Qkappa_ak135(133) =   972.770000000000
-  Mak135_V%Qkappa_ak135(134) =   972.770000000000
-  Mak135_V%Qkappa_ak135(135) =   1368.02000000000
-  Mak135_V%Qkappa_ak135(136) =   1368.02000000000
+  Mak135_V_Qkappa_ak135(  1) =   601.27d0
+  Mak135_V_Qkappa_ak135(  2) =   601.32d0
+  Mak135_V_Qkappa_ak135(  3) =   601.46d0
+  Mak135_V_Qkappa_ak135(  4) =   601.7d0
+  Mak135_V_Qkappa_ak135(  5) =   602.05d0
+  Mak135_V_Qkappa_ak135(  6) =   602.49d0
+  Mak135_V_Qkappa_ak135(  7) =   603.04d0
+  Mak135_V_Qkappa_ak135(  8) =   603.69d0
+  Mak135_V_Qkappa_ak135(  9) =   604.44d0
+  Mak135_V_Qkappa_ak135( 10) =   605.28d0
+  Mak135_V_Qkappa_ak135( 11) =   606.26d0
+  Mak135_V_Qkappa_ak135( 12) =   607.31d0
+  Mak135_V_Qkappa_ak135( 13) =   609.74d0
+  Mak135_V_Qkappa_ak135( 14) =   611.18d0
+  Mak135_V_Qkappa_ak135( 15) =   612.62d0
+  Mak135_V_Qkappa_ak135( 16) =   614.21d0
+  Mak135_V_Qkappa_ak135( 17) =   615.93d0
+  Mak135_V_Qkappa_ak135( 18) =   617.78d0
+  Mak135_V_Qkappa_ak135( 19) =   619.71d0
+  Mak135_V_Qkappa_ak135( 20) =   621.5d0
+  Mak135_V_Qkappa_ak135( 21) =   624.08d0
+  Mak135_V_Qkappa_ak135( 22) =   626.87d0
+  Mak135_V_Qkappa_ak135( 23) =   629.89d0
+  Mak135_V_Qkappa_ak135( 24) =   633.26d0
+  Mak135_V_Qkappa_ak135( 25) =   57822.d0
+  Mak135_V_Qkappa_ak135( 26) =   57822.d0
+  Mak135_V_Qkappa_ak135( 27) =   57822.d0
+  Mak135_V_Qkappa_ak135( 28) =   57822.d0
+  Mak135_V_Qkappa_ak135( 29) =   57822.d0
+  Mak135_V_Qkappa_ak135( 30) =   57822.d0
+  Mak135_V_Qkappa_ak135( 31) =   57822.d0
+  Mak135_V_Qkappa_ak135( 32) =   57822.d0
+  Mak135_V_Qkappa_ak135( 33) =   57822.d0
+  Mak135_V_Qkappa_ak135( 34) =   57822.d0
+  Mak135_V_Qkappa_ak135( 35) =   57822.d0
+  Mak135_V_Qkappa_ak135( 36) =   57822.d0
+  Mak135_V_Qkappa_ak135( 37) =   57822.d0
+  Mak135_V_Qkappa_ak135( 38) =   57822.d0
+  Mak135_V_Qkappa_ak135( 39) =   57822.d0
+  Mak135_V_Qkappa_ak135( 40) =   57822.d0
+  Mak135_V_Qkappa_ak135( 41) =   57822.d0
+  Mak135_V_Qkappa_ak135( 42) =   57822.d0
+  Mak135_V_Qkappa_ak135( 43) =   57822.d0
+  Mak135_V_Qkappa_ak135( 44) =   57822.d0
+  Mak135_V_Qkappa_ak135( 45) =   57822.d0
+  Mak135_V_Qkappa_ak135( 46) =   57822.d0
+  Mak135_V_Qkappa_ak135( 47) =   57822.d0
+  Mak135_V_Qkappa_ak135( 48) =   57822.d0
+  Mak135_V_Qkappa_ak135( 49) =   57822.d0
+  Mak135_V_Qkappa_ak135( 50) =   57822.d0
+  Mak135_V_Qkappa_ak135( 51) =   57822.d0
+  Mak135_V_Qkappa_ak135( 52) =   57822.d0
+  Mak135_V_Qkappa_ak135( 53) =   57822.d0
+  Mak135_V_Qkappa_ak135( 54) =   57822.d0
+  Mak135_V_Qkappa_ak135( 55) =   57822.d0
+  Mak135_V_Qkappa_ak135( 56) =   57822.d0
+  Mak135_V_Qkappa_ak135( 57) =   57822.d0
+  Mak135_V_Qkappa_ak135( 58) =   57822.d0
+  Mak135_V_Qkappa_ak135( 59) =   57822.d0
+  Mak135_V_Qkappa_ak135( 60) =   57822.d0
+  Mak135_V_Qkappa_ak135( 61) =   57822.d0
+  Mak135_V_Qkappa_ak135( 62) =   57822.d0
+  Mak135_V_Qkappa_ak135( 63) =   57822.d0
+  Mak135_V_Qkappa_ak135( 64) =   57822.d0
+  Mak135_V_Qkappa_ak135( 65) =   57822.d0
+  Mak135_V_Qkappa_ak135( 66) =   57822.d0
+  Mak135_V_Qkappa_ak135( 67) =   57822.d0
+  Mak135_V_Qkappa_ak135( 68) =   57822.d0
+  Mak135_V_Qkappa_ak135( 69) =   57822.d0
+  Mak135_V_Qkappa_ak135( 70) =   723.12d0
+  Mak135_V_Qkappa_ak135( 71) =   725.11d0
+  Mak135_V_Qkappa_ak135( 72) =   726.87d0
+  Mak135_V_Qkappa_ak135( 73) =   722.73d0
+  Mak135_V_Qkappa_ak135( 74) =   933.21d0
+  Mak135_V_Qkappa_ak135( 75) =   940.88d0
+  Mak135_V_Qkappa_ak135( 76) =   952.d0
+  Mak135_V_Qkappa_ak135( 77) =   960.36d0
+  Mak135_V_Qkappa_ak135( 78) =   968.46d0
+  Mak135_V_Qkappa_ak135( 79) =   976.81d0
+  Mak135_V_Qkappa_ak135( 80) =   985.63d0
+  Mak135_V_Qkappa_ak135( 81) =   990.77d0
+  Mak135_V_Qkappa_ak135( 82) =   999.44d0
+  Mak135_V_Qkappa_ak135( 83) =   1008.79d0
+  Mak135_V_Qkappa_ak135( 84) =   1018.38d0
+  Mak135_V_Qkappa_ak135( 85) =   1032.14d0
+  Mak135_V_Qkappa_ak135( 86) =   1042.07d0
+  Mak135_V_Qkappa_ak135( 87) =   1048.09d0
+  Mak135_V_Qkappa_ak135( 88) =   1058.03d0
+  Mak135_V_Qkappa_ak135( 89) =   1064.23d0
+  Mak135_V_Qkappa_ak135( 90) =   1070.38d0
+  Mak135_V_Qkappa_ak135( 91) =   1085.97d0
+  Mak135_V_Qkappa_ak135( 92) =   1097.16d0
+  Mak135_V_Qkappa_ak135( 93) =   1108.58d0
+  Mak135_V_Qkappa_ak135( 94) =   1120.09d0
+  Mak135_V_Qkappa_ak135( 95) =   1127.02d0
+  Mak135_V_Qkappa_ak135( 96) =   1134.01d0
+  Mak135_V_Qkappa_ak135( 97) =   1141.32d0
+  Mak135_V_Qkappa_ak135( 98) =   1148.76d0
+  Mak135_V_Qkappa_ak135( 99) =   1156.04d0
+  Mak135_V_Qkappa_ak135(100) =   1163.16d0
+  Mak135_V_Qkappa_ak135(101) =   1170.53d0
+  Mak135_V_Qkappa_ak135(102) =   1178.19d0
+  Mak135_V_Qkappa_ak135(103) =   1186.06d0
+  Mak135_V_Qkappa_ak135(104) =   1193.99d0
+  Mak135_V_Qkappa_ak135(105) =   1202.04d0
+  Mak135_V_Qkappa_ak135(106) =   1210.02d0
+  Mak135_V_Qkappa_ak135(107) =   1217.91d0
+  Mak135_V_Qkappa_ak135(108) =   1226.52d0
+  Mak135_V_Qkappa_ak135(109) =   1234.54d0
+  Mak135_V_Qkappa_ak135(110) =   1243.02d0
+  Mak135_V_Qkappa_ak135(111) =   1251.69d0
+  Mak135_V_Qkappa_ak135(112) =   1260.68d0
+  Mak135_V_Qkappa_ak135(113) =   1269.44d0
+  Mak135_V_Qkappa_ak135(114) =   1277.93d0
+  Mak135_V_Qkappa_ak135(115) =   1311.17d0
+  Mak135_V_Qkappa_ak135(116) =   1350.54d0
+  Mak135_V_Qkappa_ak135(117) =   428.69d0
+  Mak135_V_Qkappa_ak135(118) =   425.51d0
+  Mak135_V_Qkappa_ak135(119) =   422.55d0
+  Mak135_V_Qkappa_ak135(120) =   419.94d0
+  Mak135_V_Qkappa_ak135(121) =   417.32d0
+  Mak135_V_Qkappa_ak135(122) =   413.66d0
+  Mak135_V_Qkappa_ak135(123) =   377.93d0
+  Mak135_V_Qkappa_ak135(124) =   366.34d0
+  Mak135_V_Qkappa_ak135(125) =   355.85d0
+  Mak135_V_Qkappa_ak135(126) =   346.37d0
+  Mak135_V_Qkappa_ak135(127) =   338.47d0
+  Mak135_V_Qkappa_ak135(128) =   200.97d0
+  Mak135_V_Qkappa_ak135(129) =   188.72d0
+  Mak135_V_Qkappa_ak135(130) =   182.57d0
+  Mak135_V_Qkappa_ak135(131) =   182.03d0
+  Mak135_V_Qkappa_ak135(132) =   182.03d0
+  Mak135_V_Qkappa_ak135(133) =   972.77d0
+  Mak135_V_Qkappa_ak135(134) =   972.77d0
+  Mak135_V_Qkappa_ak135(135) =   1368.02d0
+  Mak135_V_Qkappa_ak135(136) =   1368.02d0
 
-  Mak135_V%Qmu_ak135(  1) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  2) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  3) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  4) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  5) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  6) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  7) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  8) =   85.0300000000000
-  Mak135_V%Qmu_ak135(  9) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 10) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 11) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 12) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 13) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 14) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 15) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 16) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 17) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 18) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 19) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 20) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 21) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 22) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 23) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 24) =   85.0300000000000
-  Mak135_V%Qmu_ak135( 25) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 26) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 27) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 28) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 29) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 30) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 31) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 32) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 33) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 34) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 35) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 36) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 37) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 38) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 39) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 40) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 41) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 42) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 43) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 44) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 45) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 46) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 47) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 48) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 49) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 50) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 51) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 52) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 53) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 54) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 55) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 56) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 57) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 58) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 59) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 60) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 61) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 62) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 63) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 64) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 65) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 66) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 67) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 68) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 69) =  0.000000000000000E+000
-  Mak135_V%Qmu_ak135( 70) =   273.970000000000
-  Mak135_V%Qmu_ak135( 71) =   273.970000000000
-  Mak135_V%Qmu_ak135( 72) =   273.970000000000
-  Mak135_V%Qmu_ak135( 73) =   271.740000000000
-  Mak135_V%Qmu_ak135( 74) =   350.880000000000
-  Mak135_V%Qmu_ak135( 75) =   354.610000000000
-  Mak135_V%Qmu_ak135( 76) =   359.710000000000
-  Mak135_V%Qmu_ak135( 77) =   363.640000000000
-  Mak135_V%Qmu_ak135( 78) =   367.650000000000
-  Mak135_V%Qmu_ak135( 79) =   371.750000000000
-  Mak135_V%Qmu_ak135( 80) =   375.940000000000
-  Mak135_V%Qmu_ak135( 81) =   378.790000000000
-  Mak135_V%Qmu_ak135( 82) =   383.140000000000
-  Mak135_V%Qmu_ak135( 83) =   387.600000000000
-  Mak135_V%Qmu_ak135( 84) =   392.160000000000
-  Mak135_V%Qmu_ak135( 85) =   398.410000000000
-  Mak135_V%Qmu_ak135( 86) =   403.230000000000
-  Mak135_V%Qmu_ak135( 87) =   406.500000000000
-  Mak135_V%Qmu_ak135( 88) =   411.520000000000
-  Mak135_V%Qmu_ak135( 89) =   414.940000000000
-  Mak135_V%Qmu_ak135( 90) =   418.410000000000
-  Mak135_V%Qmu_ak135( 91) =   425.530000000000
-  Mak135_V%Qmu_ak135( 92) =   431.030000000000
-  Mak135_V%Qmu_ak135( 93) =   436.680000000000
-  Mak135_V%Qmu_ak135( 94) =   442.480000000000
-  Mak135_V%Qmu_ak135( 95) =   446.430000000000
-  Mak135_V%Qmu_ak135( 96) =   450.450000000000
-  Mak135_V%Qmu_ak135( 97) =   454.550000000000
-  Mak135_V%Qmu_ak135( 98) =   458.720000000000
-  Mak135_V%Qmu_ak135( 99) =   462.960000000000
-  Mak135_V%Qmu_ak135(100) =   467.290000000000
-  Mak135_V%Qmu_ak135(101) =   471.700000000000
-  Mak135_V%Qmu_ak135(102) =   476.190000000000
-  Mak135_V%Qmu_ak135(103) =   480.770000000000
-  Mak135_V%Qmu_ak135(104) =   485.440000000000
-  Mak135_V%Qmu_ak135(105) =   490.200000000000
-  Mak135_V%Qmu_ak135(106) =   495.050000000000
-  Mak135_V%Qmu_ak135(107) =   500.000000000000
-  Mak135_V%Qmu_ak135(108) =   505.050000000000
-  Mak135_V%Qmu_ak135(109) =   510.200000000000
-  Mak135_V%Qmu_ak135(110) =   515.460000000000
-  Mak135_V%Qmu_ak135(111) =   520.830000000000
-  Mak135_V%Qmu_ak135(112) =   526.320000000000
-  Mak135_V%Qmu_ak135(113) =   531.910000000000
-  Mak135_V%Qmu_ak135(114) =   537.630000000000
-  Mak135_V%Qmu_ak135(115) =   543.480000000000
-  Mak135_V%Qmu_ak135(116) =   549.450000000000
-  Mak135_V%Qmu_ak135(117) =   172.930000000000
-  Mak135_V%Qmu_ak135(118) =   170.820000000000
-  Mak135_V%Qmu_ak135(119) =   168.780000000000
-  Mak135_V%Qmu_ak135(120) =   166.800000000000
-  Mak135_V%Qmu_ak135(121) =   164.870000000000
-  Mak135_V%Qmu_ak135(122) =   162.500000000000
-  Mak135_V%Qmu_ak135(123) =   146.570000000000
-  Mak135_V%Qmu_ak135(124) =   142.760000000000
-  Mak135_V%Qmu_ak135(125) =   139.380000000000
-  Mak135_V%Qmu_ak135(126) =   136.380000000000
-  Mak135_V%Qmu_ak135(127) =   133.720000000000
-  Mak135_V%Qmu_ak135(128) =   79.4000000000000
-  Mak135_V%Qmu_ak135(129) =   76.5500000000000
-  Mak135_V%Qmu_ak135(130) =   76.0600000000000
-  Mak135_V%Qmu_ak135(131) =   75.6000000000000
-  Mak135_V%Qmu_ak135(132) =   75.6000000000000
-  Mak135_V%Qmu_ak135(133) =   403.930000000000
-  Mak135_V%Qmu_ak135(134) =   403.930000000000
-  Mak135_V%Qmu_ak135(135) =   599.990000000000
-  Mak135_V%Qmu_ak135(136) =   599.990000000000
+  Mak135_V_Qmu_ak135(  1) =   85.03d0
+  Mak135_V_Qmu_ak135(  2) =   85.03d0
+  Mak135_V_Qmu_ak135(  3) =   85.03d0
+  Mak135_V_Qmu_ak135(  4) =   85.03d0
+  Mak135_V_Qmu_ak135(  5) =   85.03d0
+  Mak135_V_Qmu_ak135(  6) =   85.03d0
+  Mak135_V_Qmu_ak135(  7) =   85.03d0
+  Mak135_V_Qmu_ak135(  8) =   85.03d0
+  Mak135_V_Qmu_ak135(  9) =   85.03d0
+  Mak135_V_Qmu_ak135( 10) =   85.03d0
+  Mak135_V_Qmu_ak135( 11) =   85.03d0
+  Mak135_V_Qmu_ak135( 12) =   85.03d0
+  Mak135_V_Qmu_ak135( 13) =   85.03d0
+  Mak135_V_Qmu_ak135( 14) =   85.03d0
+  Mak135_V_Qmu_ak135( 15) =   85.03d0
+  Mak135_V_Qmu_ak135( 16) =   85.03d0
+  Mak135_V_Qmu_ak135( 17) =   85.03d0
+  Mak135_V_Qmu_ak135( 18) =   85.03d0
+  Mak135_V_Qmu_ak135( 19) =   85.03d0
+  Mak135_V_Qmu_ak135( 20) =   85.03d0
+  Mak135_V_Qmu_ak135( 21) =   85.03d0
+  Mak135_V_Qmu_ak135( 22) =   85.03d0
+  Mak135_V_Qmu_ak135( 23) =   85.03d0
+  Mak135_V_Qmu_ak135( 24) =   85.03d0
+  Mak135_V_Qmu_ak135( 25) =  0.d0
+  Mak135_V_Qmu_ak135( 26) =  0.d0
+  Mak135_V_Qmu_ak135( 27) =  0.d0
+  Mak135_V_Qmu_ak135( 28) =  0.d0
+  Mak135_V_Qmu_ak135( 29) =  0.d0
+  Mak135_V_Qmu_ak135( 30) =  0.d0
+  Mak135_V_Qmu_ak135( 31) =  0.d0
+  Mak135_V_Qmu_ak135( 32) =  0.d0
+  Mak135_V_Qmu_ak135( 33) =  0.d0
+  Mak135_V_Qmu_ak135( 34) =  0.d0
+  Mak135_V_Qmu_ak135( 35) =  0.d0
+  Mak135_V_Qmu_ak135( 36) =  0.d0
+  Mak135_V_Qmu_ak135( 37) =  0.d0
+  Mak135_V_Qmu_ak135( 38) =  0.d0
+  Mak135_V_Qmu_ak135( 39) =  0.d0
+  Mak135_V_Qmu_ak135( 40) =  0.d0
+  Mak135_V_Qmu_ak135( 41) =  0.d0
+  Mak135_V_Qmu_ak135( 42) =  0.d0
+  Mak135_V_Qmu_ak135( 43) =  0.d0
+  Mak135_V_Qmu_ak135( 44) =  0.d0
+  Mak135_V_Qmu_ak135( 45) =  0.d0
+  Mak135_V_Qmu_ak135( 46) =  0.d0
+  Mak135_V_Qmu_ak135( 47) =  0.d0
+  Mak135_V_Qmu_ak135( 48) =  0.d0
+  Mak135_V_Qmu_ak135( 49) =  0.d0
+  Mak135_V_Qmu_ak135( 50) =  0.d0
+  Mak135_V_Qmu_ak135( 51) =  0.d0
+  Mak135_V_Qmu_ak135( 52) =  0.d0
+  Mak135_V_Qmu_ak135( 53) =  0.d0
+  Mak135_V_Qmu_ak135( 54) =  0.d0
+  Mak135_V_Qmu_ak135( 55) =  0.d0
+  Mak135_V_Qmu_ak135( 56) =  0.d0
+  Mak135_V_Qmu_ak135( 57) =  0.d0
+  Mak135_V_Qmu_ak135( 58) =  0.d0
+  Mak135_V_Qmu_ak135( 59) =  0.d0
+  Mak135_V_Qmu_ak135( 60) =  0.d0
+  Mak135_V_Qmu_ak135( 61) =  0.d0
+  Mak135_V_Qmu_ak135( 62) =  0.d0
+  Mak135_V_Qmu_ak135( 63) =  0.d0
+  Mak135_V_Qmu_ak135( 64) =  0.d0
+  Mak135_V_Qmu_ak135( 65) =  0.d0
+  Mak135_V_Qmu_ak135( 66) =  0.d0
+  Mak135_V_Qmu_ak135( 67) =  0.d0
+  Mak135_V_Qmu_ak135( 68) =  0.d0
+  Mak135_V_Qmu_ak135( 69) =  0.d0
+  Mak135_V_Qmu_ak135( 70) =   273.97d0
+  Mak135_V_Qmu_ak135( 71) =   273.97d0
+  Mak135_V_Qmu_ak135( 72) =   273.97d0
+  Mak135_V_Qmu_ak135( 73) =   271.74d0
+  Mak135_V_Qmu_ak135( 74) =   350.88d0
+  Mak135_V_Qmu_ak135( 75) =   354.61d0
+  Mak135_V_Qmu_ak135( 76) =   359.71d0
+  Mak135_V_Qmu_ak135( 77) =   363.64d0
+  Mak135_V_Qmu_ak135( 78) =   367.65d0
+  Mak135_V_Qmu_ak135( 79) =   371.75d0
+  Mak135_V_Qmu_ak135( 80) =   375.94d0
+  Mak135_V_Qmu_ak135( 81) =   378.79d0
+  Mak135_V_Qmu_ak135( 82) =   383.14d0
+  Mak135_V_Qmu_ak135( 83) =   387.6d0
+  Mak135_V_Qmu_ak135( 84) =   392.16d0
+  Mak135_V_Qmu_ak135( 85) =   398.41d0
+  Mak135_V_Qmu_ak135( 86) =   403.23d0
+  Mak135_V_Qmu_ak135( 87) =   406.5d0
+  Mak135_V_Qmu_ak135( 88) =   411.52d0
+  Mak135_V_Qmu_ak135( 89) =   414.94d0
+  Mak135_V_Qmu_ak135( 90) =   418.41d0
+  Mak135_V_Qmu_ak135( 91) =   425.53d0
+  Mak135_V_Qmu_ak135( 92) =   431.03d0
+  Mak135_V_Qmu_ak135( 93) =   436.68d0
+  Mak135_V_Qmu_ak135( 94) =   442.48d0
+  Mak135_V_Qmu_ak135( 95) =   446.43d0
+  Mak135_V_Qmu_ak135( 96) =   450.45d0
+  Mak135_V_Qmu_ak135( 97) =   454.55d0
+  Mak135_V_Qmu_ak135( 98) =   458.72d0
+  Mak135_V_Qmu_ak135( 99) =   462.96d0
+  Mak135_V_Qmu_ak135(100) =   467.29d0
+  Mak135_V_Qmu_ak135(101) =   471.7d0
+  Mak135_V_Qmu_ak135(102) =   476.19d0
+  Mak135_V_Qmu_ak135(103) =   480.77d0
+  Mak135_V_Qmu_ak135(104) =   485.44d0
+  Mak135_V_Qmu_ak135(105) =   490.2d0
+  Mak135_V_Qmu_ak135(106) =   495.05d0
+  Mak135_V_Qmu_ak135(107) =   500.d0
+  Mak135_V_Qmu_ak135(108) =   505.05d0
+  Mak135_V_Qmu_ak135(109) =   510.2d0
+  Mak135_V_Qmu_ak135(110) =   515.46d0
+  Mak135_V_Qmu_ak135(111) =   520.83d0
+  Mak135_V_Qmu_ak135(112) =   526.32d0
+  Mak135_V_Qmu_ak135(113) =   531.91d0
+  Mak135_V_Qmu_ak135(114) =   537.63d0
+  Mak135_V_Qmu_ak135(115) =   543.48d0
+  Mak135_V_Qmu_ak135(116) =   549.45d0
+  Mak135_V_Qmu_ak135(117) =   172.93d0
+  Mak135_V_Qmu_ak135(118) =   170.82d0
+  Mak135_V_Qmu_ak135(119) =   168.78d0
+  Mak135_V_Qmu_ak135(120) =   166.8d0
+  Mak135_V_Qmu_ak135(121) =   164.87d0
+  Mak135_V_Qmu_ak135(122) =   162.5d0
+  Mak135_V_Qmu_ak135(123) =   146.57d0
+  Mak135_V_Qmu_ak135(124) =   142.76d0
+  Mak135_V_Qmu_ak135(125) =   139.38d0
+  Mak135_V_Qmu_ak135(126) =   136.38d0
+  Mak135_V_Qmu_ak135(127) =   133.72d0
+  Mak135_V_Qmu_ak135(128) =   79.4d0
+  Mak135_V_Qmu_ak135(129) =   76.55d0
+  Mak135_V_Qmu_ak135(130) =   76.06d0
+  Mak135_V_Qmu_ak135(131) =   75.6d0
+  Mak135_V_Qmu_ak135(132) =   75.6d0
+  Mak135_V_Qmu_ak135(133) =   403.93d0
+  Mak135_V_Qmu_ak135(134) =   403.93d0
+  Mak135_V_Qmu_ak135(135) =   599.99d0
+  Mak135_V_Qmu_ak135(136) =   599.99d0
 
-! strip the crust and replace it with mantle
+  ! strip the crust and replace it with mantle
   if (SUPPRESS_CRUSTAL_MESH .or. USE_EXTERNAL_CRUSTAL_MODEL) then
-    Mak135_V%vp_ak135(133:136) = Mak135_V%vp_ak135(132)
-    Mak135_V%vs_ak135(133:136) = Mak135_V%vs_ak135(132)
-    Mak135_V%density_ak135(133:136) = Mak135_V%density_ak135(132)
-    Mak135_V%Qkappa_ak135(133:136) = Mak135_V%Qkappa_ak135(132)
-    Mak135_V%Qmu_ak135(133:136) = Mak135_V%Qmu_ak135(132)
+    Mak135_V_vp_ak135(133:136) = Mak135_V_vp_ak135(132)
+    Mak135_V_vs_ak135(133:136) = Mak135_V_vs_ak135(132)
+    Mak135_V_density_ak135(133:136) = Mak135_V_density_ak135(132)
+    Mak135_V_Qkappa_ak135(133:136) = Mak135_V_Qkappa_ak135(132)
+    Mak135_V_Qmu_ak135(133:136) = Mak135_V_Qmu_ak135(132)
   endif
 
   end subroutine define_model_ak135

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_aniso_mantle.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_aniso_mantle.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_aniso_mantle.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -40,41 +40,50 @@
 !
 !--------------------------------------------------------------------------------------------------
 
+  module model_aniso_mantle_par
 
-  subroutine model_aniso_mantle_broadcast(myrank,AMM_V)
+  ! model_aniso_mantle_variables
+  double precision,dimension(:,:,:,:),allocatable :: AMM_V_beta
+  double precision,dimension(:),allocatable :: AMM_V_pro
+  integer :: AMM_V_npar1
 
+  end module model_aniso_mantle_par
+
+!
+!--------------------------------------------------------------------------------------------------
+!
+
+  subroutine model_aniso_mantle_broadcast(myrank)
+
 ! standard routine to setup model
 
+  use model_aniso_mantle_par
+
   implicit none
 
   include "constants.h"
   ! standard include of the MPI library
   include 'mpif.h'
 
-  ! model_aniso_mantle_variables
-  type model_aniso_mantle_variables
-    sequence
-    double precision beta(14,34,37,73)
-    double precision pro(47)
-    integer npar1
-    integer dummy_pad ! padding 4 bytes to align the structure
-  end type model_aniso_mantle_variables
+  integer :: myrank
 
-  type (model_aniso_mantle_variables) AMM_V
-  ! model_aniso_mantle_variables
-
-  integer :: myrank
+  ! local parameters
   integer :: ier
 
+  ! allocates model arrays
+  allocate(AMM_V_beta(14,34,37,73), &
+          AMM_V_pro(47), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating AMM_V arrays')
+
   ! the variables read are declared and stored in structure AMM_V
-  if(myrank == 0) call read_aniso_mantle_model(AMM_V)
+  if(myrank == 0) call read_aniso_mantle_model()
 
   ! broadcast the information read on the master to the nodes
-  call MPI_BCAST(AMM_V%npar1,1,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(AMM_V%beta,14*34*37*73,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(AMM_V%pro,47,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(AMM_V_npar1,1,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(AMM_V_beta,14*34*37*73,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(AMM_V_pro,47,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
 
-
   end subroutine model_aniso_mantle_broadcast
 
 !
@@ -83,35 +92,25 @@
 
 
   subroutine model_aniso_mantle(r,theta,phi,rho, &
-    c11,c12,c13,c14,c15,c16,c22,c23,c24,c25,c26,c33,c34,c35,c36,c44,c45,c46,c55,c56,c66,&
-    AMM_V)
+                              c11,c12,c13,c14,c15,c16, &
+                              c22,c23,c24,c25,c26,c33,c34,c35,c36,c44,c45,c46,c55,c56,c66)
 
+  use model_aniso_mantle_par
+
   implicit none
 
   include "constants.h"
 
-! model_aniso_mantle_variables
-  type model_aniso_mantle_variables
-    sequence
-    double precision beta(14,34,37,73)
-    double precision pro(47)
-    integer npar1
-    integer dummy_pad ! padding 4 bytes to align the structure
-  end type model_aniso_mantle_variables
-
-  type (model_aniso_mantle_variables) AMM_V
-! model_aniso_mantle_variables
-
-  double precision r,theta,phi
-  double precision rho
-  double precision c11,c12,c13,c14,c15,c16,c22,c23,c24,c25,c26, &
+  double precision :: r,theta,phi
+  double precision :: rho
+  double precision :: c11,c12,c13,c14,c15,c16,c22,c23,c24,c25,c26, &
                    c33,c34,c35,c36,c44,c45,c46,c55,c56,c66
 
-  double precision d11,d12,d13,d14,d15,d16,d22,d23,d24,d25,d26, &
+  ! local parameters
+  double precision :: d11,d12,d13,d14,d15,d16,d22,d23,d24,d25,d26, &
                    d33,d34,d35,d36,d44,d45,d46,d55,d56,d66
+  double precision :: colat,lon
 
-  double precision colat,lon
-
   lon = phi / DEGREES_TO_RADIANS
   colat = theta / DEGREES_TO_RADIANS
 
@@ -121,7 +120,7 @@
 ! assign the local (d_ij) or global (c_ij) anisotropic parameters.
 ! The c_ij are the coefficients in the global
 ! reference frame used in SPECFEM3D.
-  call build_cij(AMM_V%pro,AMM_V%npar1,rho,AMM_V%beta,r,colat,lon,&
+  call build_cij(AMM_V_pro,AMM_V_npar1,rho,AMM_V_beta,r,colat,lon,&
                  d11,d12,d13,d14,d15,d16,d22,d23,d24,d25,d26,d33,d34,d35,d36,&
                  d44,d45,d46,d55,d56,d66)
 
@@ -142,17 +141,24 @@
 
   include "constants.h"
 
-  integer npar1,ndepth,idep,ipar,itheta,ilon,icz0,nx0,ny0,nz0,&
-          ict0,ict1,icp0,icp1,icz1
+  double precision :: pro(47)
+  integer :: npar1
 
-  double precision d11,d12,d13,d14,d15,d16,d22,d23,d24,d25,d26, &
+  double precision :: rho
+  double precision :: beta(14,34,37,73)
+
+  double precision :: r,theta,phi
+  double precision :: d11,d12,d13,d14,d15,d16,d22,d23,d24,d25,d26, &
                    d33,d34,d35,d36,d44,d45,d46,d55,d56,d66
-  double precision r,theta,phi,rho,depth,tei,tet,ph,fi,x0,y0,pxy0
-  double precision d1,d2,d3,d4,sd,thickness,dprof1,dprof2,eps,pc1,pc2,pc3,pc4,&
+
+  ! local parameters
+  double precision :: depth,tei,tet,ph,fi,x0,y0,pxy0
+  double precision :: d1,d2,d3,d4,sd,thickness,dprof1,dprof2,eps,pc1,pc2,pc3,pc4,&
                    dpr1,dpr2,param,scale_GPa,scaleval
-  double precision A,C,F,AL,AN,BC,BS,GC,GS,HC,HS,EC,ES,C1p,C1sv,C1sh,C3,S1p,S1sv,S1sh,S3
-  double precision beta(14,34,37,73),pro(47)
-  double precision anispara(14,2,4),elpar(14)
+  double precision :: A,C,F,AL,AN,BC,BS,GC,GS,HC,HS,EC,ES,C1p,C1sv,C1sh,C3,S1p,S1sv,S1sh,S3
+  double precision :: anispara(14,2,4),elpar(14)
+  integer :: ndepth,idep,ipar,itheta,ilon,icz0,nx0,ny0,nz0,&
+          ict0,ict1,icp0,icp1,icz1
 
   ndepth = npar1
   pxy0 = 5.
@@ -360,26 +366,18 @@
 
   end subroutine build_cij
 
-!--------------------------------------------------------------
+!
+!-------------------------------------------------------------------------------------------------
+!
 
-  subroutine read_aniso_mantle_model(AMM_V)
+  subroutine read_aniso_mantle_model()
 
+  use model_aniso_mantle_par
+
   implicit none
 
   include "constants.h"
 
-  ! model_aniso_mantle_variables
-  type model_aniso_mantle_variables
-    sequence
-    double precision beta(14,34,37,73)
-    double precision pro(47)
-    integer npar1
-    integer dummy_pad ! padding 4 bytes to align the structure
-  end type model_aniso_mantle_variables
-
-  type (model_aniso_mantle_variables) AMM_V
-  ! model_aniso_mantle_variables
-
   ! local parameters
   integer :: nx,ny,np1,np2,ipar,ipa1,ipa,ilat,ilon,il,idep,nfin,nfi0,nf,nri
   double precision :: xinf,yinf,pxy,ppp,angle,A,A2L,AL,af
@@ -395,7 +393,7 @@
 
   np1 = 1
   np2 = 34
-  AMM_V%npar1 = (np2 - np1 + 1)
+  AMM_V_npar1 = (np2 - np1 + 1)
 
 !
 ! glob-prem3sm01: model with rho,A,L,xi-1,1-phi,eta
@@ -418,12 +416,12 @@
   nfin = 14
   do nf = 1,nfi0
     ipa = ipa + 1
-    do idep = 1,AMM_V%npar1
+    do idep = 1,AMM_V_npar1
       il = idep + np1 - 1
       read(19,"(2f4.0,2i3,f4.0)",end = 88) xinf,yinf,nx,ny,pxy
 
       ppp = 1.
-      read(19,"(f5.0,f8.4)",end = 88) AMM_V%pro(idep),ppp
+      read(19,"(f5.0,f8.4)",end = 88) AMM_V_pro(idep),ppp
 
       if(nf == 1) pari(nf,il) = ppp
       if(nf == 2) pari(nf,il) = ppp
@@ -431,7 +429,7 @@
       if(nf == 4) ppp = pari(nf,il)
       if(nf == 5) ppp = pari(nf,il)
       do ilat = 1,nx
-        read(19,"(17f7.2)",end = 88) (AMM_V%beta(ipa,idep,ilat,ilon),ilon = 1,ny)
+        read(19,"(17f7.2)",end = 88) (AMM_V_beta(ipa,idep,ilat,ilon),ilon = 1,ny)
 !
 ! calculation of A,C,F,L,N
 !
@@ -442,10 +440,10 @@
 !
         do ilon = 1,ny
           if(nf <= 3 .or. nf >= 6)then
-            bet2(ipa,idep,ilat,ilon) = AMM_V%beta(ipa,idep,ilat,ilon)*0.01*ppp + ppp
+            bet2(ipa,idep,ilat,ilon) = AMM_V_beta(ipa,idep,ilat,ilon)*0.01*ppp + ppp
           else
-            if(nf == 4)bet2(ipa,idep,ilat,ilon) = AMM_V%beta(ipa,idep,ilat,ilon)*0.01 + 1.
-            if(nf == 5)bet2(ipa,idep,ilat,ilon) = - AMM_V%beta(ipa,idep,ilat,ilon)*0.01 + 1.
+            if(nf == 4)bet2(ipa,idep,ilat,ilon) = AMM_V_beta(ipa,idep,ilat,ilon)*0.01 + 1.
+            if(nf == 5)bet2(ipa,idep,ilat,ilon) = - AMM_V_beta(ipa,idep,ilat,ilon)*0.01 + 1.
           endif
         enddo
 
@@ -469,10 +467,10 @@
   do nf = 7,nfin,2
     ipa = nf
     ipa1 = ipa + 1
-    do idep = 1,AMM_V%npar1
+    do idep = 1,AMM_V_npar1
       il = idep + np1 - 1
       read(15,"(2f4.0,2i3,f4.0)",end = 888) xinf,yinf,nx,ny,pxy
-      read(15,"(f5.0,f8.4)",end = 888) AMM_V%pro(idep),ppp
+      read(15,"(f5.0,f8.4)",end = 888) AMM_V_pro(idep),ppp
       if(nf == 7) ppp = pari(2,il)
       if(nf == 9) ppp = pari(3,il)
       af = pari(6,il)*(pari(2,il) - 2.*pari(3,il))
@@ -490,8 +488,8 @@
       do ilat = 1,nx
         do ilon = 1,ny
           angle = 2.*DEGREES_TO_RADIANS*ph(ilon,ilat)
-          AMM_V%beta(ipa,idep,ilat,ilon) = alph(ilon,ilat)*ppp*0.01d0
-          AMM_V%beta(ipa1,idep,ilat,ilon) = ph(ilon,ilat)
+          AMM_V_beta(ipa,idep,ilat,ilon) = alph(ilon,ilat)*ppp*0.01d0
+          AMM_V_beta(ipa1,idep,ilat,ilon) = ph(ilon,ilat)
           bet2(ipa,idep,ilat,ilon) = alph(ilon,ilat)*dcos(angle)*ppp*0.01d0
           bet2(ipa1,idep,ilat,ilon) = alph(ilon,ilat)*dsin(angle)*ppp*0.01d0
         enddo
@@ -502,34 +500,34 @@
 
 888 close(15)
 
-  do idep = 1,AMM_V%npar1
+  do idep = 1,AMM_V_npar1
     do ilat = 1,nx
       do ilon = 1,ny
 
 ! rho
-        AMM_V%beta(1,idep,ilat,ilon) = bet2(1,idep,ilat,ilon)
+        AMM_V_beta(1,idep,ilat,ilon) = bet2(1,idep,ilat,ilon)
 
 ! A
-        AMM_V%beta(2,idep,ilat,ilon) = bet2(2,idep,ilat,ilon)
+        AMM_V_beta(2,idep,ilat,ilon) = bet2(2,idep,ilat,ilon)
         A=bet2(2,idep,ilat,ilon)
 
 !  C
-        AMM_V%beta(3,idep,ilat,ilon) = bet2(5,idep,ilat,ilon)*A
+        AMM_V_beta(3,idep,ilat,ilon) = bet2(5,idep,ilat,ilon)*A
 
 !  F
         A2L = A - 2.*bet2(3,idep,ilat,ilon)
-        AMM_V%beta(4,idep,ilat,ilon) = bet2(6,idep,ilat,ilon)*A2L
+        AMM_V_beta(4,idep,ilat,ilon) = bet2(6,idep,ilat,ilon)*A2L
 
 !  L
-        AMM_V%beta(5,idep,ilat,ilon) = bet2(3,idep,ilat,ilon)
+        AMM_V_beta(5,idep,ilat,ilon) = bet2(3,idep,ilat,ilon)
         AL = bet2(3,idep,ilat,ilon)
 
 !  N
-        AMM_V%beta(6,idep,ilat,ilon) = bet2(4,idep,ilat,ilon)*AL
+        AMM_V_beta(6,idep,ilat,ilon) = bet2(4,idep,ilat,ilon)*AL
 
 !  azimuthal terms
         do ipar = 7,14
-          AMM_V%beta(ipar,idep,ilat,ilon) = bet2(ipar,idep,ilat,ilon)
+          AMM_V_beta(ipar,idep,ilat,ilon) = bet2(ipar,idep,ilat,ilon)
         enddo
 
       enddo
@@ -540,7 +538,9 @@
 
   end subroutine read_aniso_mantle_model
 
+!
 !--------------------------------------------------------------------
+!
 
   subroutine lecmod(nri,pari,ra)
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_attenuation.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_attenuation.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_attenuation.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -158,8 +158,20 @@
 ! All this subroutine does is define the Attenuation vs Radius and then Compute the Attenuation
 ! Variables (tau_sigma and tau_epslion ( or tau_mu) )
   subroutine model_attenuation_setup(REFERENCE_1D_MODEL,RICB,RCMB,R670, &
-                    R220,R80,AM_V,M1066a_V,Mak135_V,Mref_V,SEA1DM_V,AM_S,AS_V)
+                    R220,R80,AM_V,AM_S,AS_V)
 
+  use model_1dref_par, only: &
+    NR_REF,Mref_V_radius_ref,Mref_V_Qmu_ref
+
+  use model_ak135_par, only: &
+    NR_AK135,Mak135_V_radius_ak135,Mak135_V_Qmu_ak135
+
+  use model_1066a_par, only: &
+    NR_1066A,M1066a_V_radius_1066a,M1066a_V_Qmu_1066a
+
+  use model_sea1d_par, only: &
+    NR_SEA1D,SEA1DM_V_radius_sea1d,SEA1DM_V_Qmu_sea1d
+
   implicit none
 
   include 'constants.h'
@@ -187,65 +199,6 @@
   type (model_attenuation_variables) AM_V
 ! model_attenuation_variables
 
-! model_1066a_variables
-  type model_1066a_variables
-    sequence
-      double precision, dimension(NR_1066A) :: radius_1066a
-      double precision, dimension(NR_1066A) :: density_1066a
-      double precision, dimension(NR_1066A) :: vp_1066a
-      double precision, dimension(NR_1066A) :: vs_1066a
-      double precision, dimension(NR_1066A) :: Qkappa_1066a
-      double precision, dimension(NR_1066A) :: Qmu_1066a
-  end type model_1066a_variables
-
-  type (model_1066a_variables) M1066a_V
-! model_1066a_variables
-
-! 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
-  end type model_ak135_variables
-
- type (model_ak135_variables) Mak135_V
-! model_ak135_variables
-
-! model_1dref_variables
-  type model_1dref_variables
-    sequence
-    double precision, dimension(NR_REF) :: radius_ref
-    double precision, dimension(NR_REF) :: density_ref
-    double precision, dimension(NR_REF) :: vpv_ref
-    double precision, dimension(NR_REF) :: vph_ref
-    double precision, dimension(NR_REF) :: vsv_ref
-    double precision, dimension(NR_REF) :: vsh_ref
-    double precision, dimension(NR_REF) :: eta_ref
-    double precision, dimension(NR_REF) :: Qkappa_ref
-    double precision, dimension(NR_REF) :: Qmu_ref
-  end type model_1dref_variables
-
- type (model_1dref_variables) Mref_V
-! model_1dref_variables
-
-! model_sea1d_variables
-  type model_sea1d_variables
-    sequence
-     double precision, dimension(NR_SEA1D) :: radius_sea1d
-     double precision, dimension(NR_SEA1D) :: density_sea1d
-     double precision, dimension(NR_SEA1D) :: vp_sea1d
-     double precision, dimension(NR_SEA1D) :: vs_sea1d
-     double precision, dimension(NR_SEA1D) :: Qkappa_sea1d
-     double precision, dimension(NR_SEA1D) :: Qmu_sea1d
-  end type model_sea1d_variables
-
-  type (model_sea1d_variables) SEA1DM_V
-! model_sea1d_variables
-
 ! model_attenuation_storage_var
   type model_attenuation_storage_var
     sequence
@@ -298,18 +251,18 @@
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_IASP91) then
      AM_V%Qn = 12
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_AK135) then
-     call define_model_ak135(.FALSE.,Mak135_V)
+     call define_model_ak135(.FALSE.)
      AM_V%Qn = NR_AK135
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1066A) then
-     call define_model_1066a(.FALSE.,M1066a_V)
+     call define_model_1066a(.FALSE.)
      AM_V%Qn = NR_1066A
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1DREF) then
-     call define_model_1dref(.FALSE.,Mref_V)
+     call define_model_1dref(.FALSE.)
      AM_V%Qn = NR_REF
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_JP1D) then
      AM_V%Qn = 12
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_SEA1D) then
-     call define_model_sea1d(.FALSE.,SEA1DM_V)
+     call define_model_sea1d(.FALSE.)
      AM_V%Qn = NR_SEA1D
   else
      call exit_MPI(myrank, 'Reference 1D Model Not recognized')
@@ -328,20 +281,20 @@
      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
-     AM_V%Qr(:)     = Mak135_V%radius_ak135(:)
-     AM_V%Qmu(:)    = Mak135_V%Qmu_ak135(:)
+     AM_V%Qr(:)     = Mak135_V_radius_ak135(:)
+     AM_V%Qmu(:)    = Mak135_V_Qmu_ak135(:)
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1066A) then
-     AM_V%Qr(:)     = M1066a_V%radius_1066a(:)
-     AM_V%Qmu(:)    = M1066a_V%Qmu_1066a(:)
+     AM_V%Qr(:)     = M1066a_V_radius_1066a(:)
+     AM_V%Qmu(:)    = M1066a_V_Qmu_1066a(:)
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_1DREF) then
-     AM_V%Qr(:)     = Mref_V%radius_ref(:)
-     AM_V%Qmu(:)    = Mref_V%Qmu_ref(:)
+     AM_V%Qr(:)     = Mref_V_radius_ref(:)
+     AM_V%Qmu(:)    = Mref_V_Qmu_ref(:)
   else if(REFERENCE_1D_MODEL == REFERENCE_MODEL_JP1D) 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_SEA1D) then
-     AM_V%Qr(:)     = SEA1DM_V%radius_sea1d(:)
-     AM_V%Qmu(:)    = SEA1DM_V%Qmu_sea1d(:)
+     AM_V%Qr(:)     = SEA1DM_V_radius_sea1d(:)
+     AM_V%Qmu(:)    = SEA1DM_V_Qmu_sea1d(:)
   end if
 
   do i = 1, AM_V%Qn

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_heterogen_mantle.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_heterogen_mantle.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_heterogen_mantle.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -31,41 +31,56 @@
 ! generic heterogeneous mantle model
 !--------------------------------------------------------------------------------------------------
 
-  subroutine model_heterogen_mntl_broadcast(myrank,HMM)
+  module model_heterogen_mantle_par
 
+  ! heterogen_mantle_model_constants
+  integer, parameter :: N_R = 256,N_THETA = 256,N_PHI = 256
+
+  ! model array
+  double precision,dimension(:),allocatable :: HMM_rho_in
+
+  end module model_heterogen_mantle_par
+
+!
+!--------------------------------------------------------------------------------------------------
+!
+
+  subroutine model_heterogen_mntl_broadcast(myrank)
+
 ! standard routine to setup model
 
+  use model_heterogen_mantle_par
+
   implicit none
 
   include "constants.h"
   ! standard include of the MPI library
   include 'mpif.h'
 
-  ! model_heterogen_m_variables
-  type model_heterogen_m_variables
-    sequence
-    double precision rho_in(N_R*N_THETA*N_PHI)
-  end type model_heterogen_m_variables
+  integer :: myrank
 
-  type (model_heterogen_m_variables) HMM
-  ! model_heterogen_m_variables
-
-  integer :: myrank
+  ! local parameters
   integer :: ier
 
+  ! allocates model array
+  allocate(HMM_rho_in(N_R*N_THETA*N_PHI), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating HMM array')
+
+  ! master process reads in model
   if(myrank == 0) then
      write(IMAIN,*) 'Reading in model_heterogen_mantle.'
-     call read_heterogen_mantle_model(HMM)
+     call read_heterogen_mantle_model()
      write(IMAIN,*) 'model_heterogen_mantle is read in.'
   endif
 
   ! broadcast the information read on the master to the nodes
-  call MPI_BCAST(HMM%rho_in,N_R*N_THETA*N_PHI,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(HMM_rho_in,N_R*N_THETA*N_PHI,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
 
   if(myrank == 0) then
      write(IMAIN,*) 'model_heterogen_mantle is broadcast.'
-     write(IMAIN,*) 'First value in HMM:',HMM%rho_in(1)
-     write(IMAIN,*) 'Last value in HMM:',HMM%rho_in(N_R*N_THETA*N_PHI)
+     write(IMAIN,*) 'First value in HMM:',HMM_rho_in(1)
+     write(IMAIN,*) 'Last value in HMM:',HMM_rho_in(N_R*N_THETA*N_PHI)
   endif
 
   end subroutine model_heterogen_mntl_broadcast
@@ -79,69 +94,59 @@
 ! NOTE: CURRENTLY THIS ROUTINE ONLY WORKS FOR N_R=N_THETA=N_PHI !!!!!
 !
 
-  subroutine read_heterogen_mantle_model(HMM)
+  subroutine read_heterogen_mantle_model()
 
+  use model_heterogen_mantle_par
+
   implicit none
 
   include "constants.h"
 
-  integer i,j
+  ! local parameters
+  integer :: i,j,ier
 
-! model_heterogen_m_variables
-  type model_heterogen_m_variables
-    sequence
-    double precision rho_in(N_R*N_THETA*N_PHI)
-  end type model_heterogen_m_variables
-
-  type (model_heterogen_m_variables) HMM
-! model_heterogen_m_variables
-
-
-! open heterogen.dat
+  ! open heterogen.dat
   open(unit=10,file='./DATA/heterogen/heterogen.dat',access='direct',&
-       form='formatted',recl=20,status='old',action='read')
+       form='formatted',recl=20,status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(0,'error opening model file heterogen.dat')
 
   j = N_R*N_THETA*N_PHI
 
   do i = 1,j
-    read(10,rec=i,fmt='(F20.15)') HMM%rho_in(i)
+    read(10,rec=i,fmt='(F20.15)') HMM_rho_in(i)
   end do
 
   close(10)
 
   end subroutine read_heterogen_mantle_model
 
-!====================================================================
+!
+!-------------------------------------------------------------------------------------------------
+!
 
-  subroutine model_heterogen_mantle(radius,theta,phi,dvs,dvp,drho,HMM)
+  subroutine model_heterogen_mantle(radius,theta,phi,dvs,dvp,drho)
 
+  use model_heterogen_mantle_par
+
   implicit none
 
   include "constants.h"
 
   ! variable declaration
-  double precision radius,theta,phi            ! input coordinates
-  double precision x,y,z                       ! input converted to cartesian
-  double precision drho,dvp,dvs                ! output anomaly values
-  double precision x_low,x_high                ! x values used to interpolate
-  double precision y_low,y_high                ! y values used to interpolate
-  double precision z_low,z_high                ! z values used to interpolate
-  double precision delta,delta2                ! weigts in record# and in interpolation
-  double precision rho1,rho2,rho3,rho4,rho5,rho6,rho7,rho8 ! rho values at the interpolation points
-  double precision r_inner,r_outer             ! lower and upper domain bounds for r
-  integer rec_read                             ! nr of record to be read from heterogen.dat (direct access file)
-  double precision a,b,c                       ! substitutions in interpolation algorithm (weights)
+  double precision :: radius,theta,phi            ! input coordinates
+  double precision :: drho,dvp,dvs                ! output anomaly values
 
+  ! local parameters
+  double precision :: x,y,z                       ! input converted to cartesian
+  double precision :: x_low,x_high                ! x values used to interpolate
+  double precision :: y_low,y_high                ! y values used to interpolate
+  double precision :: z_low,z_high                ! z values used to interpolate
+  double precision :: delta,delta2                ! weigts in record# and in interpolation
+  double precision :: rho1,rho2,rho3,rho4,rho5,rho6,rho7,rho8 ! rho values at the interpolation points
+  double precision :: r_inner,r_outer             ! lower and upper domain bounds for r
+  integer :: rec_read                             ! nr of record to be read from heterogen.dat (direct access file)
+  double precision :: a,b,c                       ! substitutions in interpolation algorithm (weights)
 
-! model_heterogen_m_variables
-  type model_heterogen_m_variables
-    sequence
-    double precision rho_in(N_R*N_THETA*N_PHI)
-  end type model_heterogen_m_variables
-
-  type (model_heterogen_m_variables) HMM
-! model_heterogen_m_variables
-
   radius = radius*R_EARTH
   r_inner = 3.500d6  !lower bound for heterogeneity zone
 ! NOTE: r_outer NEEDS TO BE (just) SMALLER THAN R_EARTH!!!!!!!!
@@ -168,35 +173,35 @@
 
     ! rho1 at: x_low y_low z_low
     rec_read = 1+(x_low*N_R*N_R)+(y_low*N_R)+z_low
-    rho1 = HMM%rho_in(rec_read)
+    rho1 = HMM_rho_in(rec_read)
 
     ! rho2 at: x_low y_high z_low
     rec_read = 1+(x_low*N_R*N_R)+(y_high*N_R)+z_low
-    rho2 = HMM%rho_in(rec_read)
+    rho2 = HMM_rho_in(rec_read)
 
     ! rho3 at: x_high y_low z_low
     rec_read = 1+(x_high*N_R*N_R)+(y_low*N_R)+z_low
-    rho3 = HMM%rho_in(rec_read)
+    rho3 = HMM_rho_in(rec_read)
 
     ! rho4 at: x_high y_high z_low
     rec_read = 1+(x_high*N_R*N_R)+(y_high*N_R)+z_low
-    rho4 = HMM%rho_in(rec_read)
+    rho4 = HMM_rho_in(rec_read)
 
     ! rho5 at: x_low y_low z_high
     rec_read = 1+(x_low*N_R*N_R)+(y_low*N_R)+z_high
-    rho5 = HMM%rho_in(rec_read)
+    rho5 = HMM_rho_in(rec_read)
 
     ! rho6 at: x_low y_high z_high
     rec_read = 1+(x_low*N_R*N_R)+(y_high*N_R)+z_high
-    rho6 = HMM%rho_in(rec_read)
+    rho6 = HMM_rho_in(rec_read)
 
     ! rho7 at: x_high y_low z_high
     rec_read = 1+(x_high*N_R*N_R)+(y_low*N_R)+z_high
-    rho7 = HMM%rho_in(rec_read)
+    rho7 = HMM_rho_in(rec_read)
 
     ! rho8 at: x_high y_high z_high
     rec_read = 1+(x_high*N_R*N_R)+(y_high*N_R)+z_high
-    rho8 = HMM%rho_in(rec_read)
+    rho8 = HMM_rho_in(rec_read)
 
     ! perform linear interpolation between the 8 points
     a = (x-x_low*delta)/delta       ! weight for x

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_jp1d.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_jp1d.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_jp1d.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -32,7 +32,7 @@
 !--------------------------------------------------------------------------------------------------
 
 
-subroutine model_jp1d(myrank,x,rho,vp,vs,Qkappa,Qmu,idoubling, &
+  subroutine model_jp1d(myrank,x,rho,vp,vs,Qkappa,Qmu,idoubling, &
      check_doubling_flag,RICB,RCMB,RTOPDDOUBLEPRIME, &
      R670,R220,R771,R400,R80,RMOHO,RMIDDLE_CRUST)
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s20rts.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s20rts.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s20rts.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -34,149 +34,152 @@
 ! model, and that we use the PREM radial attenuation model when ATTENUATION is incorporated.
 !--------------------------------------------------------------------------------------------------
 
+  module model_s20rts_par
 
-  subroutine model_s20rts_broadcast(myrank,S20RTS_V)
+  ! three_d_mantle_model_constants
+  integer, parameter :: NK_20 = 20
+  integer, parameter :: NS_20 = 20
 
+  ! model_s20rts_variables
+  !a = positive m  (radial, theta, phi) --> (k,l,m) (maybe other way around??)
+  !b = negative m  (radial, theta, phi) --> (k,l,-m)
+  double precision,dimension(:,:,:),allocatable :: &
+    S20RTS_V_dvs_a,S20RTS_V_dvs_b,S20RTS_V_dvp_a,S20RTS_V_dvp_b
+
+  ! splines
+  double precision,dimension(:),allocatable :: S20RTS_V_spknt
+  double precision,dimension(:,:),allocatable :: S20RTS_V_qq0
+  double precision,dimension(:,:,:),allocatable :: S20RTS_V_qq
+
+  end module model_s20rts_par
+
+!
+!--------------------------------------------------------------------------------------------------
+!
+
+
+  subroutine model_s20rts_broadcast(myrank)
+
 ! standard routine to setup model
 
+  use model_s20rts_par
+
   implicit none
 
   include "constants.h"
   ! standard include of the MPI library
   include 'mpif.h'
 
-! model_s20rts_variables s20rts
-  type model_s20rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvs_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s20rts_variables
-
-  type (model_s20rts_variables) S20RTS_V
-! model_s20rts_variables
-
   integer :: myrank
+
+  ! local parameters
   integer :: ier
 
+  ! allocates memory
+  allocate(S20RTS_V_dvs_a(0:NK_20,0:NS_20,0:NS_20), &
+          S20RTS_V_dvs_b(0:NK_20,0:NS_20,0:NS_20), &
+          S20RTS_V_dvp_a(0:NK_20,0:NS_20,0:NS_20), &
+          S20RTS_V_dvp_b(0:NK_20,0:NS_20,0:NS_20), &
+          S20RTS_V_spknt(NK_20+1), &
+          S20RTS_V_qq0(NK_20+1,NK_20+1), &
+          S20RTS_V_qq(3,NK_20+1,NK_20+1), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating S20RTS_V arrays')
+
   ! the variables read are declared and stored in structure S20RTS_V
-  if(myrank == 0) call read_model_s20rts(S20RTS_V)
+  if(myrank == 0) call read_model_s20rts()
 
   ! broadcast the information read on the master to the nodes
-  call MPI_BCAST(S20RTS_V%dvs_a,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%dvs_b,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%dvp_a,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%dvp_b,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%spknt,NK_20+1,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%qq0,(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S20RTS_V%qq,3*(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_dvs_a,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_dvs_b,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_dvp_a,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_dvp_b,(NK_20+1)*(NS_20+1)*(NS_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_spknt,NK_20+1,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_qq0,(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S20RTS_V_qq,3*(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
 
   end subroutine model_s20rts_broadcast
+
 !
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine read_model_s20rts(S20RTS_V)
+  subroutine read_model_s20rts()
 
+  use model_s20rts_par
+
   implicit none
 
   include "constants.h"
 
-! model_s20rts_variables
-  type model_s20rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvs_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s20rts_variables
+  ! local parameters
+  integer :: k,l,m,ier
 
-  type (model_s20rts_variables) S20RTS_V
-! model_s20rts_variables
+  character(len=150) :: S20RTS, P12
 
-  integer k,l,m
-
-  character(len=150) S20RTS, P12
-
   call get_value_string(S20RTS, 'model.S20RTS', 'DATA/s20rts/S20RTS.dat')
   call get_value_string(P12, 'model.P12', 'DATA/s20rts/P12.dat')
 
-! S20RTS degree 20 S model from Ritsema
-  open(unit=10,file=S20RTS,status='old',action='read')
+  ! S20RTS degree 20 S model from Ritsema
+  open(unit=10,file=S20RTS,status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(0,'error opening file S20RTS.dat')
+
   do k=0,NK_20
     do l=0,NS_20
-      read(10,*) S20RTS_V%dvs_a(k,l,0),(S20RTS_V%dvs_a(k,l,m),S20RTS_V%dvs_b(k,l,m),m=1,l)
+      read(10,*) S20RTS_V_dvs_a(k,l,0),(S20RTS_V_dvs_a(k,l,m),S20RTS_V_dvs_b(k,l,m),m=1,l)
     enddo
   enddo
   close(10)
 
-! P12 degree 12 P model from Ritsema
-  open(unit=10,file=P12,status='old',action='read')
+  ! P12 degree 12 P model from Ritsema
+  open(unit=10,file=P12,status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(0,'error opening file P12.dat')
+
   do k=0,NK_20
     do l=0,12
-      read(10,*) S20RTS_V%dvp_a(k,l,0),(S20RTS_V%dvp_a(k,l,m),S20RTS_V%dvp_b(k,l,m),m=1,l)
+      read(10,*) S20RTS_V_dvp_a(k,l,0),(S20RTS_V_dvp_a(k,l,m),S20RTS_V_dvp_b(k,l,m),m=1,l)
     enddo
     do l=13,NS_20
-      S20RTS_V%dvp_a(k,l,0) = 0.0d0
+      S20RTS_V_dvp_a(k,l,0) = 0.0d0
       do m=1,l
-        S20RTS_V%dvp_a(k,l,m) = 0.0d0
-        S20RTS_V%dvp_b(k,l,m) = 0.0d0
+        S20RTS_V_dvp_a(k,l,m) = 0.0d0
+        S20RTS_V_dvp_b(k,l,m) = 0.0d0
       enddo
     enddo
   enddo
   close(10)
 
-! set up the splines used as radial basis functions by Ritsema
-  call s20rts_splhsetup(S20RTS_V)
+  ! set up the splines used as radial basis functions by Ritsema
+  call s20rts_splhsetup()
 
   end subroutine read_model_s20rts
 
 !---------------------------
 
-  subroutine mantle_s20rts(radius,theta,phi,dvs,dvp,drho,S20RTS_V)
+  subroutine mantle_s20rts(radius,theta,phi,dvs,dvp,drho)
 
+  use model_s20rts_par
+
   implicit none
 
   include "constants.h"
 
-! model_s20rts_variables
-  type model_s20rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvs_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s20rts_variables
+  double precision :: radius,theta,phi,dvs,dvp,drho
 
-  type (model_s20rts_variables) S20RTS_V
-! model_s20rts_variables
-
-! factor to convert perturbations in shear speed to perturbations in density
+  ! local parameters
+  ! factor to convert perturbations in shear speed to perturbations in density
   double precision, parameter :: SCALE_RHO = 0.40d0
-
-  double precision radius,theta,phi,dvs,dvp,drho
-
   double precision, parameter :: RMOHO_ = 6346600.d0
   double precision, parameter :: RCMB_ = 3480000.d0
   double precision, parameter :: R_EARTH_ = 6371000.d0
   double precision, parameter :: ZERO_ = 0.d0
 
-  integer l,m,k
-  double precision r_moho,r_cmb,xr
-  double precision dvs_alm,dvs_blm
-  double precision dvp_alm,dvp_blm
-  double precision s20rts_rsple,radial_basis(0:NK_20)
-  double precision sint,cost,x(2*NS_20+1),dx(2*NS_20+1)
+  integer :: l,m,k
+  double precision :: r_moho,r_cmb,xr
+  double precision :: dvs_alm,dvs_blm
+  double precision :: dvp_alm,dvp_blm
+  double precision :: s20rts_rsple,radial_basis(0:NK_20)
+  double precision :: sint,cost,x(2*NS_20+1),dx(2*NS_20+1)
 
   dvs = ZERO_
   dvp = ZERO_
@@ -188,7 +191,7 @@
 
   xr=-1.0d0+2.0d0*(radius-r_cmb)/(r_moho-r_cmb)
   do k=0,NK_20
-    radial_basis(k)=s20rts_rsple(1,NK_20+1,S20RTS_V%spknt(1),S20RTS_V%qq0(1,NK_20+1-k),S20RTS_V%qq(1,1,NK_20+1-k),xr)
+    radial_basis(k)=s20rts_rsple(1,NK_20+1,S20RTS_V_spknt(1),S20RTS_V_qq0(1,NK_20+1-k),S20RTS_V_qq(1,1,NK_20+1-k),xr)
   enddo
 
   do l=0,NS_20
@@ -199,8 +202,8 @@
     dvs_alm=0.0d0
     dvp_alm=0.0d0
     do k=0,NK_20
-      dvs_alm=dvs_alm+radial_basis(k)*S20RTS_V%dvs_a(k,l,0)
-      dvp_alm=dvp_alm+radial_basis(k)*S20RTS_V%dvp_a(k,l,0)
+      dvs_alm=dvs_alm+radial_basis(k)*S20RTS_V_dvs_a(k,l,0)
+      dvp_alm=dvp_alm+radial_basis(k)*S20RTS_V_dvp_a(k,l,0)
     enddo
     dvs=dvs+dvs_alm*x(1)
     dvp=dvp+dvp_alm*x(1)
@@ -211,10 +214,10 @@
       dvs_blm=0.0d0
       dvp_blm=0.0d0
       do k=0,NK_20
-        dvs_alm=dvs_alm+radial_basis(k)*S20RTS_V%dvs_a(k,l,m)
-        dvp_alm=dvp_alm+radial_basis(k)*S20RTS_V%dvp_a(k,l,m)
-        dvs_blm=dvs_blm+radial_basis(k)*S20RTS_V%dvs_b(k,l,m)
-        dvp_blm=dvp_blm+radial_basis(k)*S20RTS_V%dvp_b(k,l,m)
+        dvs_alm=dvs_alm+radial_basis(k)*S20RTS_V_dvs_a(k,l,m)
+        dvp_alm=dvp_alm+radial_basis(k)*S20RTS_V_dvp_a(k,l,m)
+        dvs_blm=dvs_blm+radial_basis(k)*S20RTS_V_dvs_b(k,l,m)
+        dvp_blm=dvp_blm+radial_basis(k)*S20RTS_V_dvp_b(k,l,m)
       enddo
       dvs=dvs+(dvs_alm*dcos(dble(m)*phi)+dvs_blm*dsin(dble(m)*phi))*x(m+1)
       dvp=dvp+(dvp_alm*dcos(dble(m)*phi)+dvp_blm*dsin(dble(m)*phi))*x(m+1)
@@ -226,72 +229,63 @@
 
   end subroutine mantle_s20rts
 
+!
 !----------------------------------
+!
 
-  subroutine s20rts_splhsetup(S20RTS_V)!!!!!!!!!!!!!!(spknt,qq0,qq)
+  subroutine s20rts_splhsetup()!!!!!!!!!!!!!!(spknt,qq0,qq)
 
+  use model_s20rts_par
+
   implicit none
   include "constants.h"
 
 !!!!!!!!!!!!!!!!!!!  double precision spknt(NK_20+1),qq0(NK_20+1,NK_20+1),qq(3,NK_20+1,NK_20+1)
 
-! model_s20rts_variables
-  type model_s20rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvs_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_a(0:NK_20,0:NS_20,0:NS_20)
-    double precision dvp_b(0:NK_20,0:NS_20,0:NS_20)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s20rts_variables
+  ! local parameters
+  integer :: i,j
+  double precision :: qqwk(3,NK_20+1)
 
-  type (model_s20rts_variables) S20RTS_V
-! model_s20rts_variables
+  S20RTS_V_spknt(1) = -1.00000d0
+  S20RTS_V_spknt(2) = -0.78631d0
+  S20RTS_V_spknt(3) = -0.59207d0
+  S20RTS_V_spknt(4) = -0.41550d0
+  S20RTS_V_spknt(5) = -0.25499d0
+  S20RTS_V_spknt(6) = -0.10909d0
+  S20RTS_V_spknt(7) = 0.02353d0
+  S20RTS_V_spknt(8) = 0.14409d0
+  S20RTS_V_spknt(9) = 0.25367d0
+  S20RTS_V_spknt(10) = 0.35329d0
+  S20RTS_V_spknt(11) = 0.44384d0
+  S20RTS_V_spknt(12) = 0.52615d0
+  S20RTS_V_spknt(13) = 0.60097d0
+  S20RTS_V_spknt(14) = 0.66899d0
+  S20RTS_V_spknt(15) = 0.73081d0
+  S20RTS_V_spknt(16) = 0.78701d0
+  S20RTS_V_spknt(17) = 0.83810d0
+  S20RTS_V_spknt(18) = 0.88454d0
+  S20RTS_V_spknt(19) = 0.92675d0
+  S20RTS_V_spknt(20) = 0.96512d0
+  S20RTS_V_spknt(21) = 1.00000d0
 
-
-  integer i,j
-  double precision qqwk(3,NK_20+1)
-
-  S20RTS_V%spknt(1) = -1.00000d0
-  S20RTS_V%spknt(2) = -0.78631d0
-  S20RTS_V%spknt(3) = -0.59207d0
-  S20RTS_V%spknt(4) = -0.41550d0
-  S20RTS_V%spknt(5) = -0.25499d0
-  S20RTS_V%spknt(6) = -0.10909d0
-  S20RTS_V%spknt(7) = 0.02353d0
-  S20RTS_V%spknt(8) = 0.14409d0
-  S20RTS_V%spknt(9) = 0.25367d0
-  S20RTS_V%spknt(10) = 0.35329d0
-  S20RTS_V%spknt(11) = 0.44384d0
-  S20RTS_V%spknt(12) = 0.52615d0
-  S20RTS_V%spknt(13) = 0.60097d0
-  S20RTS_V%spknt(14) = 0.66899d0
-  S20RTS_V%spknt(15) = 0.73081d0
-  S20RTS_V%spknt(16) = 0.78701d0
-  S20RTS_V%spknt(17) = 0.83810d0
-  S20RTS_V%spknt(18) = 0.88454d0
-  S20RTS_V%spknt(19) = 0.92675d0
-  S20RTS_V%spknt(20) = 0.96512d0
-  S20RTS_V%spknt(21) = 1.00000d0
-
   do i=1,NK_20+1
     do j=1,NK_20+1
       if(i == j) then
-        S20RTS_V%qq0(j,i)=1.0d0
+        S20RTS_V_qq0(j,i)=1.0d0
       else
-        S20RTS_V%qq0(j,i)=0.0d0
+        S20RTS_V_qq0(j,i)=0.0d0
       endif
     enddo
   enddo
   do i=1,NK_20+1
-    call s20rts_rspln(1,NK_20+1,S20RTS_V%spknt(1),S20RTS_V%qq0(1,i),S20RTS_V%qq(1,1,i),qqwk(1,1))
+    call s20rts_rspln(1,NK_20+1,S20RTS_V_spknt(1),S20RTS_V_qq0(1,i),S20RTS_V_qq(1,1,i),qqwk(1,1))
   enddo
 
   end subroutine s20rts_splhsetup
 
+!
 !----------------------------------
+!
 
 ! changed the obsolecent f77 features in the two routines below
 ! now still awful Fortran, but at least conforms to f90 standard
@@ -370,7 +364,9 @@
 
       end function s20rts_rsple
 
+!
 !----------------------------------
+!
 
   subroutine s20rts_rspln(I1,I2,X,Y,Q,F)
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s40rts.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s40rts.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_s40rts.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -41,146 +41,150 @@
 !--------------------------------------------------------------------------------------------------
 
 
-  subroutine model_s40rts_broadcast(myrank,S40RTS_V)
+  module model_s40rts_par
 
+  ! three_d_mantle_model_constants
+  integer, parameter :: NK_20 = 20
+  integer, parameter :: NS_40 = 40
+
+  ! model_s20rts_variables
+  !a = positive m  (radial, theta, phi) --> (k,l,m) (maybe other way around??)
+  !b = negative m  (radial, theta, phi) --> (k,l,-m)
+  double precision,dimension(:,:,:),allocatable :: &
+    S40RTS_V_dvs_a,S40RTS_V_dvs_b,S40RTS_V_dvp_a,S40RTS_V_dvp_b
+
+  ! splines
+  double precision,dimension(:),allocatable :: S40RTS_V_spknt
+  double precision,dimension(:,:),allocatable :: S40RTS_V_qq0
+  double precision,dimension(:,:,:),allocatable :: S40RTS_V_qq
+
+  end module model_s40rts_par
+
+!
+!--------------------------------------------------------------------------------------------------
+!
+
+
+  subroutine model_s40rts_broadcast(myrank)
+
 ! standard routine to setup model
 
+  use model_s40rts_par
+
   implicit none
 
   include "constants.h"
   ! standard include of the MPI library
   include 'mpif.h'
 
-! model_s40rts_variables s40rts
-  type model_s40rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvs_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s40rts_variables
-
-  type (model_s40rts_variables) S40RTS_V
-! model_s40rts_variables
-
   integer :: myrank
+
+  ! local parameters
   integer :: ier
+
+  allocate(S40RTS_V_dvs_a(0:NK_20,0:NS_40,0:NS_40), &
+          S40RTS_V_dvs_b(0:NK_20,0:NS_40,0:NS_40), &
+          S40RTS_V_dvp_a(0:NK_20,0:NS_40,0:NS_40), &
+          S40RTS_V_dvp_b(0:NK_20,0:NS_40,0:NS_40), &
+          S40RTS_V_spknt(NK_20+1), &
+          S40RTS_V_qq0(NK_20+1,NK_20+1), &
+          S40RTS_V_qq(3,NK_20+1,NK_20+1), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating S40RTS_V arrays')
+
   ! the variables read are declared and stored in structure S40RTS_V
-  if(myrank == 0) call read_model_s40rts(S40RTS_V)
+  if(myrank == 0) call read_model_s40rts()
 
   ! broadcast the information read on the master to the nodes
-  call MPI_BCAST(S40RTS_V%dvs_a,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%dvs_b,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%dvp_a,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%dvp_b,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%spknt,NK_20+1,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%qq0,(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
-  call MPI_BCAST(S40RTS_V%qq,3*(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_dvs_a,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_dvs_b,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_dvp_a,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_dvp_b,(NK_20+1)*(NS_40+1)*(NS_40+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_spknt,NK_20+1,MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_qq0,(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
+  call MPI_BCAST(S40RTS_V_qq,3*(NK_20+1)*(NK_20+1),MPI_DOUBLE_PRECISION,0,MPI_COMM_WORLD,ier)
 
   end subroutine model_s40rts_broadcast
 !
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine read_model_s40rts(S40RTS_V)
+  subroutine read_model_s40rts()
 
+  use model_s40rts_par
+
   implicit none
 
   include "constants.h"
 
-! model_s40rts_variables
-  type model_s40rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvs_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s40rts_variables
+  ! local parameters
+  integer :: k,l,m,ier
+  character(len=150) :: S40RTS, P12
 
-  type (model_s40rts_variables) S40RTS_V
-! model_s40rts_variables
-
-  integer k,l,m
-
-  character(len=150) S40RTS, P12
   call get_value_string(S40RTS, 'model.S40RTS', 'DATA/s40rts/S40RTS.dat')
   call get_value_string(P12, 'model.P12', 'DATA/s20rts/P12.dat')    !model P12 is in s20rts data directory
 
-! S40RTS degree 20 S model from Ritsema
-  open(unit=10,file=S40RTS,status='old',action='read')
+  ! S40RTS degree 40 S model from Ritsema
+  open(unit=10,file=S40RTS,status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(0,'error opening file S40RTS.dat')
+
   do k=0,NK_20
     do l=0,NS_40
-      read(10,*) S40RTS_V%dvs_a(k,l,0),(S40RTS_V%dvs_a(k,l,m),S40RTS_V%dvs_b(k,l,m),m=1,l)
+      read(10,*) S40RTS_V_dvs_a(k,l,0),(S40RTS_V_dvs_a(k,l,m),S40RTS_V_dvs_b(k,l,m),m=1,l)
     enddo
   enddo
   close(10)
 
-! P12 degree 12 P model from Ritsema
-  open(unit=10,file=P12,status='old',action='read')
+  ! P12 degree 12 P model from Ritsema
+  open(unit=10,file=P12,status='old',action='read',iostat=ier)
+  if( ier /= 0 ) call exit_MPI(0,'error opening file P12.dat')
+
   do k=0,NK_20
     do l=0,12
-      read(10,*) S40RTS_V%dvp_a(k,l,0),(S40RTS_V%dvp_a(k,l,m),S40RTS_V%dvp_b(k,l,m),m=1,l)
+      read(10,*) S40RTS_V_dvp_a(k,l,0),(S40RTS_V_dvp_a(k,l,m),S40RTS_V_dvp_b(k,l,m),m=1,l)
     enddo
     do l=13,NS_40
-      S40RTS_V%dvp_a(k,l,0) = 0.0d0
+      S40RTS_V_dvp_a(k,l,0) = 0.0d0
       do m=1,l
-        S40RTS_V%dvp_a(k,l,m) = 0.0d0
-        S40RTS_V%dvp_b(k,l,m) = 0.0d0
+        S40RTS_V_dvp_a(k,l,m) = 0.0d0
+        S40RTS_V_dvp_b(k,l,m) = 0.0d0
       enddo
     enddo
   enddo
   close(10)
 
-! set up the splines used as radial basis functions by Ritsema
-  call s40rts_splhsetup(S40RTS_V)
+  ! set up the splines used as radial basis functions by Ritsema
+  call s40rts_splhsetup()
 
   end subroutine read_model_s40rts
 
 !---------------------------
 
-  subroutine mantle_s40rts(radius,theta,phi,dvs,dvp,drho,S40RTS_V)
+  subroutine mantle_s40rts(radius,theta,phi,dvs,dvp,drho)
 
+  use model_s40rts_par
+
   implicit none
 
   include "constants.h"
 
-! model_s40rts_variables
-  type model_s40rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvs_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s40rts_variables
+  double precision :: radius,theta,phi,dvs,dvp,drho
 
-  type (model_s40rts_variables) S40RTS_V
-! model_s40rts_variables
-
-! factor to convert perturbations in shear speed to perturbations in density
+  ! local parameters
+  ! factor to convert perturbations in shear speed to perturbations in density
   double precision, parameter :: SCALE_RHO = 0.40d0
-
-  double precision radius,theta,phi,dvs,dvp,drho
-
   double precision, parameter :: RMOHO_ = 6346600.d0
   double precision, parameter :: RCMB_ = 3480000.d0
   double precision, parameter :: R_EARTH_ = 6371000.d0
   double precision, parameter :: ZERO_ = 0.d0
 
-  integer l,m,k
-  double precision r_moho,r_cmb,xr
-  double precision dvs_alm,dvs_blm
-  double precision dvp_alm,dvp_blm
-  double precision s40rts_rsple,radial_basis(0:NK_20)
-  double precision sint,cost,x(2*NS_40+1),dx(2*NS_40+1)
+  integer :: l,m,k
+  double precision :: r_moho,r_cmb,xr
+  double precision :: dvs_alm,dvs_blm
+  double precision :: dvp_alm,dvp_blm
+  double precision :: s40rts_rsple,radial_basis(0:NK_20)
+  double precision :: sint,cost,x(2*NS_40+1),dx(2*NS_40+1)
+
   dvs = ZERO_
   dvp = ZERO_
   drho = ZERO_
@@ -193,7 +197,7 @@
   if(xr > 1.0) print *,'xr > 1.0'
   if(xr < -1.0) print *,'xr < -1.0'
   do k=0,NK_20
-    radial_basis(k)=s40rts_rsple(1,NK_20+1,S40RTS_V%spknt(1),S40RTS_V%qq0(1,NK_20+1-k),S40RTS_V%qq(1,1,NK_20+1-k),xr)
+    radial_basis(k)=s40rts_rsple(1,NK_20+1,S40RTS_V_spknt(1),S40RTS_V_qq0(1,NK_20+1-k),S40RTS_V_qq(1,1,NK_20+1-k),xr)
   enddo
 
   do l=0,NS_40
@@ -204,8 +208,8 @@
     dvs_alm=0.0d0
     dvp_alm=0.0d0
     do k=0,NK_20
-      dvs_alm=dvs_alm+radial_basis(k)*S40RTS_V%dvs_a(k,l,0)
-      dvp_alm=dvp_alm+radial_basis(k)*S40RTS_V%dvp_a(k,l,0)
+      dvs_alm=dvs_alm+radial_basis(k)*S40RTS_V_dvs_a(k,l,0)
+      dvp_alm=dvp_alm+radial_basis(k)*S40RTS_V_dvp_a(k,l,0)
     enddo
     dvs=dvs+dvs_alm*x(1)
     dvp=dvp+dvp_alm*x(1)
@@ -216,10 +220,10 @@
       dvs_blm=0.0d0
       dvp_blm=0.0d0
       do k=0,NK_20
-        dvs_alm=dvs_alm+radial_basis(k)*S40RTS_V%dvs_a(k,l,m)
-        dvp_alm=dvp_alm+radial_basis(k)*S40RTS_V%dvp_a(k,l,m)
-        dvs_blm=dvs_blm+radial_basis(k)*S40RTS_V%dvs_b(k,l,m)
-        dvp_blm=dvp_blm+radial_basis(k)*S40RTS_V%dvp_b(k,l,m)
+        dvs_alm=dvs_alm+radial_basis(k)*S40RTS_V_dvs_a(k,l,m)
+        dvp_alm=dvp_alm+radial_basis(k)*S40RTS_V_dvp_a(k,l,m)
+        dvs_blm=dvs_blm+radial_basis(k)*S40RTS_V_dvs_b(k,l,m)
+        dvp_blm=dvp_blm+radial_basis(k)*S40RTS_V_dvp_b(k,l,m)
       enddo
       dvs=dvs+(dvs_alm*dcos(dble(m)*phi)+dvs_blm*dsin(dble(m)*phi))*x(m+1)
       dvp=dvp+(dvp_alm*dcos(dble(m)*phi)+dvp_blm*dsin(dble(m)*phi))*x(m+1)
@@ -233,65 +237,52 @@
 
 !----------------------------------
 
-  subroutine s40rts_splhsetup(S40RTS_V)!!!!!!!!!!!!!!(spknt,qq0,qq)
+  subroutine s40rts_splhsetup()!!!!!!!!!!!!!!(spknt,qq0,qq)
 
+  use model_s40rts_par
+
   implicit none
   include "constants.h"
 
 !!!!!!!!!!!!!!!!!!!  double precision spknt(NK_20+1),qq0(NK_20+1,NK_20+1),qq(3,NK_20+1,NK_20+1)
 
-! model_s40rts_variables
-  type model_s40rts_variables
-    sequence
-    double precision dvs_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvs_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_a(0:NK_20,0:NS_40,0:NS_40)
-    double precision dvp_b(0:NK_20,0:NS_40,0:NS_40)
-    double precision spknt(NK_20+1)
-    double precision qq0(NK_20+1,NK_20+1)
-    double precision qq(3,NK_20+1,NK_20+1)
-  end type model_s40rts_variables
+  ! local parameters
+  integer :: i,j
+  double precision :: qqwk(3,NK_20+1)
 
-  type (model_s40rts_variables) S40RTS_V
-! model_s40rts_variables
+  S40RTS_V_spknt(1) = -1.00000d0
+  S40RTS_V_spknt(2) = -0.78631d0
+  S40RTS_V_spknt(3) = -0.59207d0
+  S40RTS_V_spknt(4) = -0.41550d0
+  S40RTS_V_spknt(5) = -0.25499d0
+  S40RTS_V_spknt(6) = -0.10909d0
+  S40RTS_V_spknt(7) = 0.02353d0
+  S40RTS_V_spknt(8) = 0.14409d0
+  S40RTS_V_spknt(9) = 0.25367d0
+  S40RTS_V_spknt(10) = 0.35329d0
+  S40RTS_V_spknt(11) = 0.44384d0
+  S40RTS_V_spknt(12) = 0.52615d0
+  S40RTS_V_spknt(13) = 0.60097d0
+  S40RTS_V_spknt(14) = 0.66899d0
+  S40RTS_V_spknt(15) = 0.73081d0
+  S40RTS_V_spknt(16) = 0.78701d0
+  S40RTS_V_spknt(17) = 0.83810d0
+  S40RTS_V_spknt(18) = 0.88454d0
+  S40RTS_V_spknt(19) = 0.92675d0
+  S40RTS_V_spknt(20) = 0.96512d0
+  S40RTS_V_spknt(21) = 1.00000d0
 
-
-  integer i,j
-  double precision qqwk(3,NK_20+1)
-
-  S40RTS_V%spknt(1) = -1.00000d0
-  S40RTS_V%spknt(2) = -0.78631d0
-  S40RTS_V%spknt(3) = -0.59207d0
-  S40RTS_V%spknt(4) = -0.41550d0
-  S40RTS_V%spknt(5) = -0.25499d0
-  S40RTS_V%spknt(6) = -0.10909d0
-  S40RTS_V%spknt(7) = 0.02353d0
-  S40RTS_V%spknt(8) = 0.14409d0
-  S40RTS_V%spknt(9) = 0.25367d0
-  S40RTS_V%spknt(10) = 0.35329d0
-  S40RTS_V%spknt(11) = 0.44384d0
-  S40RTS_V%spknt(12) = 0.52615d0
-  S40RTS_V%spknt(13) = 0.60097d0
-  S40RTS_V%spknt(14) = 0.66899d0
-  S40RTS_V%spknt(15) = 0.73081d0
-  S40RTS_V%spknt(16) = 0.78701d0
-  S40RTS_V%spknt(17) = 0.83810d0
-  S40RTS_V%spknt(18) = 0.88454d0
-  S40RTS_V%spknt(19) = 0.92675d0
-  S40RTS_V%spknt(20) = 0.96512d0
-  S40RTS_V%spknt(21) = 1.00000d0
-
   do i=1,NK_20+1
     do j=1,NK_20+1
       if(i == j) then
-        S40RTS_V%qq0(j,i)=1.0d0
+        S40RTS_V_qq0(j,i)=1.0d0
       else
-        S40RTS_V%qq0(j,i)=0.0d0
+        S40RTS_V_qq0(j,i)=0.0d0
       endif
     enddo
   enddo
   do i=1,NK_20+1
-    call s40rts_rspln(1,NK_20+1,S40RTS_V%spknt(1),S40RTS_V%qq0(1,i),S40RTS_V%qq(1,1,i),qqwk(1,1))
+    call s40rts_rspln(1,NK_20+1,S40RTS_V_spknt(1),S40RTS_V_qq0(1,i),S40RTS_V_qq(1,1,i),qqwk(1,1))
   enddo
 
   end subroutine s40rts_splhsetup

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_sea1d.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_sea1d.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/model_sea1d.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -31,33 +31,48 @@
 ! used as 1-D reference model for SEA 99, Vs model by Lebedev & Nolet 2003
 !--------------------------------------------------------------------------------------------------
 
+  module model_sea1d_par
 
-  subroutine model_sea1d_broadcast(CRUSTAL, SEA1DM_V)
+  ! number of layers in DATA/Lebedev_sea99 1D model
+  integer, parameter :: NR_SEA1D = 163
 
-! standard routine to setup model
+  ! model_sea1d_variables
+  double precision, dimension(:), allocatable :: &
+    SEA1DM_V_radius_sea1d,SEA1DM_V_density_sea1d, &
+    SEA1DM_V_vp_sea1d,SEA1DM_V_vs_sea1d, &
+    SEA1DM_V_Qkappa_sea1d,SEA1DM_V_Qmu_sea1d
 
-  implicit none
+  end module model_sea1d_par
 
-  include "constants.h"
+!
+!--------------------------------------------------------------------------------------------------
+!
 
-  ! model_sea1d_variables
-  type model_sea1d_variables
-    sequence
-     double precision, dimension(NR_SEA1D) :: radius_sea1d
-     double precision, dimension(NR_SEA1D) :: density_sea1d
-     double precision, dimension(NR_SEA1D) :: vp_sea1d
-     double precision, dimension(NR_SEA1D) :: vs_sea1d
-     double precision, dimension(NR_SEA1D) :: Qkappa_sea1d
-     double precision, dimension(NR_SEA1D) :: Qmu_sea1d
-  end type model_sea1d_variables
+  subroutine model_sea1d_broadcast(myrank,CRUSTAL)
 
-  type (model_sea1d_variables) SEA1DM_V
-  ! model_sea1d_variables
+! standard routine to setup model
+  use model_sea1d_par
 
+  implicit none
+
+  integer :: myrank
   logical :: CRUSTAL
 
+  ! local parametes
+  integer :: ier
+
+  ! allocates arrays
+  allocate(SEA1DM_V_radius_sea1d(NR_SEA1D), &
+          SEA1DM_V_density_sea1d(NR_SEA1D), &
+          SEA1DM_V_vp_sea1d(NR_SEA1D), &
+          SEA1DM_V_vs_sea1d(NR_SEA1D), &
+          SEA1DM_V_Qkappa_sea1d(NR_SEA1D), &
+          SEA1DM_V_Qmu_sea1d(NR_SEA1D), &
+          stat=ier)
+  if( ier /= 0 ) call exit_MPI(myrank,'error allocating SEA1DM_V arrays')
+
   ! all processes will define same parameters
-  call define_model_sea1d(CRUSTAL, SEA1DM_V)
+  call define_model_sea1d(CRUSTAL)
 
   end subroutine model_sea1d_broadcast
 
@@ -65,26 +80,14 @@
 !-------------------------------------------------------------------------------------------------
 !
 
-  subroutine model_sea1d(x,rho,vp,vs,Qkappa,Qmu,iregion_code,SEA1DM_V)
+  subroutine model_sea1d(x,rho,vp,vs,Qkappa,Qmu,iregion_code)
 
+  use model_sea1d_par
+
   implicit none
 
   include "constants.h"
 
-! model_sea1d_variables
-  type model_sea1d_variables
-    sequence
-     double precision, dimension(NR_SEA1D) :: radius_sea1d
-     double precision, dimension(NR_SEA1D) :: density_sea1d
-     double precision, dimension(NR_SEA1D) :: vp_sea1d
-     double precision, dimension(NR_SEA1D) :: vs_sea1d
-     double precision, dimension(NR_SEA1D) :: Qkappa_sea1d
-     double precision, dimension(NR_SEA1D) :: Qmu_sea1d
-  end type model_sea1d_variables
-
-  type (model_sea1d_variables) SEA1DM_V
-! model_sea1d_variables
-
 ! input:
 ! radius r: meters
 
@@ -93,14 +96,13 @@
 ! compressional wave speed vp: km/s
 ! shear wave speed vs: km/s
 
-  integer iregion_code
+  double precision :: x,rho,vp,vs,Qmu,Qkappa
+  integer :: iregion_code
 
-  double precision x,rho,vp,vs,Qmu,Qkappa
+  ! local parameters
+  double precision :: r,frac,scaleval
+  integer :: i
 
-  integer i
-
-  double precision r,frac,scaleval
-
 !! DK DK UGLY implementation of model sea1d below and its radii in
 !! DK DK UGLY subroutine read_parameter_file.f90 has not been thoroughly
 !! DK DK UGLY checked yet
@@ -109,7 +111,7 @@
   r = x * R_EARTH
 
   i = 1
-  do while(r >= SEA1DM_V%radius_sea1d(i) .and. i /= NR_SEA1D)
+  do while(r >= SEA1DM_V_radius_sea1d(i) .and. i /= NR_SEA1D)
     i = i + 1
   enddo
 
@@ -120,21 +122,21 @@
   if(iregion_code == IREGION_CRUST_MANTLE .and. i < 39) i = 39
 
   if(i == 1) then
-    rho = SEA1DM_V%density_sea1d(i)
-    vp = SEA1DM_V%vp_sea1d(i)
-    vs = SEA1DM_V%vs_sea1d(i)
-    Qmu = SEA1DM_V%Qmu_sea1d(i)
-    Qkappa = SEA1DM_V%Qkappa_sea1d(i)
+    rho = SEA1DM_V_density_sea1d(i)
+    vp = SEA1DM_V_vp_sea1d(i)
+    vs = SEA1DM_V_vs_sea1d(i)
+    Qmu = SEA1DM_V_Qmu_sea1d(i)
+    Qkappa = SEA1DM_V_Qkappa_sea1d(i)
   else
 
-! interpolate from SEA1DM_V%radius_sea1d(i-1) to r using the values at i-1 and i
-    frac = (r-SEA1DM_V%radius_sea1d(i-1))/(SEA1DM_V%radius_sea1d(i)-SEA1DM_V%radius_sea1d(i-1))
+! interpolate from SEA1DM_V_radius_sea1d(i-1) to r using the values at i-1 and i
+    frac = (r-SEA1DM_V_radius_sea1d(i-1))/(SEA1DM_V_radius_sea1d(i)-SEA1DM_V_radius_sea1d(i-1))
 
-    rho = SEA1DM_V%density_sea1d(i-1) + frac * (SEA1DM_V%density_sea1d(i)-SEA1DM_V%density_sea1d(i-1))
-    vp = SEA1DM_V%vp_sea1d(i-1) + frac * (SEA1DM_V%vp_sea1d(i)-SEA1DM_V%vp_sea1d(i-1))
-    vs = SEA1DM_V%vs_sea1d(i-1) + frac * (SEA1DM_V%vs_sea1d(i)-SEA1DM_V%vs_sea1d(i-1))
-    Qmu = SEA1DM_V%Qmu_sea1d(i-1) + frac * (SEA1DM_V%Qmu_sea1d(i)-SEA1DM_V%Qmu_sea1d(i-1))
-    Qkappa = SEA1DM_V%Qkappa_sea1d(i-1) + frac * (SEA1DM_V%Qkappa_sea1d(i)-SEA1DM_V%Qkappa_sea1d(i-1))
+    rho = SEA1DM_V_density_sea1d(i-1) + frac * (SEA1DM_V_density_sea1d(i)-SEA1DM_V_density_sea1d(i-1))
+    vp = SEA1DM_V_vp_sea1d(i-1) + frac * (SEA1DM_V_vp_sea1d(i)-SEA1DM_V_vp_sea1d(i-1))
+    vs = SEA1DM_V_vs_sea1d(i-1) + frac * (SEA1DM_V_vs_sea1d(i)-SEA1DM_V_vs_sea1d(i-1))
+    Qmu = SEA1DM_V_Qmu_sea1d(i-1) + frac * (SEA1DM_V_Qmu_sea1d(i)-SEA1DM_V_Qmu_sea1d(i-1))
+    Qkappa = SEA1DM_V_Qkappa_sea1d(i-1) + frac * (SEA1DM_V_Qkappa_sea1d(i)-SEA1DM_V_Qkappa_sea1d(i-1))
 
   endif
 
@@ -157,1024 +159,1013 @@
 
 !-------------------
 
-  subroutine define_model_sea1d(USE_EXTERNAL_CRUSTAL_MODEL,SEA1DM_V)
+  subroutine define_model_sea1d(USE_EXTERNAL_CRUSTAL_MODEL)
 
+  use model_sea1d_par
+
   implicit none
 
   include "constants.h"
 
-! model_sea1d_variables
-  type model_sea1d_variables
-    sequence
-     double precision, dimension(NR_SEA1D) :: radius_sea1d
-     double precision, dimension(NR_SEA1D) :: density_sea1d
-     double precision, dimension(NR_SEA1D) :: vp_sea1d
-     double precision, dimension(NR_SEA1D) :: vs_sea1d
-     double precision, dimension(NR_SEA1D) :: Qkappa_sea1d
-     double precision, dimension(NR_SEA1D) :: Qmu_sea1d
-  end type model_sea1d_variables
+  logical :: USE_EXTERNAL_CRUSTAL_MODEL
 
-  type (model_sea1d_variables) SEA1DM_V
-! model_sea1d_variables
+  ! local parameters
+  integer :: i
 
-  logical USE_EXTERNAL_CRUSTAL_MODEL
-
-  integer i
-
 ! define all the values in the model
 
-  SEA1DM_V%radius_sea1d(1)= 0.0000000000
-  SEA1DM_V%radius_sea1d(2)= 101425.0000000000
-  SEA1DM_V%radius_sea1d(3)= 202850.0000000000
-  SEA1DM_V%radius_sea1d(4)= 304275.0000000000
-  SEA1DM_V%radius_sea1d(5)= 405700.0000000000
-  SEA1DM_V%radius_sea1d(6)= 507125.0000000000
-  SEA1DM_V%radius_sea1d(7)= 608550.0000000000
-  SEA1DM_V%radius_sea1d(8)= 709975.0000000000
-  SEA1DM_V%radius_sea1d(9)= 811400.0000000000
-  SEA1DM_V%radius_sea1d(10)= 912825.0000000000
-  SEA1DM_V%radius_sea1d(11)= 1014250.0000000000
-  SEA1DM_V%radius_sea1d(12)= 1115675.0000000000
-  SEA1DM_V%radius_sea1d(13)= 1217100.0000000000
-  SEA1DM_V%radius_sea1d(14)= 1217100.0000000000
-  SEA1DM_V%radius_sea1d(15)= 1315735.0000000000
-  SEA1DM_V%radius_sea1d(16)= 1414370.0000000000
-  SEA1DM_V%radius_sea1d(17)= 1513004.0000000000
-  SEA1DM_V%radius_sea1d(18)= 1611639.0000000000
-  SEA1DM_V%radius_sea1d(19)= 1710274.0000000000
-  SEA1DM_V%radius_sea1d(20)= 1808909.0000000000
-  SEA1DM_V%radius_sea1d(21)= 1907544.0000000000
-  SEA1DM_V%radius_sea1d(22)= 2006178.0000000000
-  SEA1DM_V%radius_sea1d(23)= 2104813.0000000000
-  SEA1DM_V%radius_sea1d(24)= 2203448.0000000000
-  SEA1DM_V%radius_sea1d(25)= 2302082.0000000000
-  SEA1DM_V%radius_sea1d(26)= 2400717.0000000000
-  SEA1DM_V%radius_sea1d(27)= 2499352.0000000000
-  SEA1DM_V%radius_sea1d(28)= 2597987.0000000000
-  SEA1DM_V%radius_sea1d(29)= 2696622.0000000000
-  SEA1DM_V%radius_sea1d(30)= 2795256.0000000000
-  SEA1DM_V%radius_sea1d(31)= 2893891.0000000000
-  SEA1DM_V%radius_sea1d(32)= 2992526.0000000000
-  SEA1DM_V%radius_sea1d(33)= 3091161.0000000000
-  SEA1DM_V%radius_sea1d(34)= 3189796.0000000000
-  SEA1DM_V%radius_sea1d(35)= 3288431.0000000000
-  SEA1DM_V%radius_sea1d(36)= 3387066.0000000000
-  SEA1DM_V%radius_sea1d(37)= 3485700.0000000000
-  SEA1DM_V%radius_sea1d(38)= 3485700.0000000000
-  SEA1DM_V%radius_sea1d(39)= 3536048.0000000000
-  SEA1DM_V%radius_sea1d(40)= 3586396.0000000000
-  SEA1DM_V%radius_sea1d(41)= 3636743.0000000000
-  SEA1DM_V%radius_sea1d(42)= 3687091.0000000000
-  SEA1DM_V%radius_sea1d(43)= 3737438.0000000000
-  SEA1DM_V%radius_sea1d(44)= 3787786.0000000000
-  SEA1DM_V%radius_sea1d(45)= 3838134.0000000000
-  SEA1DM_V%radius_sea1d(46)= 3888482.0000000000
-  SEA1DM_V%radius_sea1d(47)= 3938830.0000000000
-  SEA1DM_V%radius_sea1d(48)= 3989177.0000000000
-  SEA1DM_V%radius_sea1d(49)= 4039525.0000000000
-  SEA1DM_V%radius_sea1d(50)= 4089872.0000000000
-  SEA1DM_V%radius_sea1d(51)= 4140220.0000000000
-  SEA1DM_V%radius_sea1d(52)= 4190568.0000000000
-  SEA1DM_V%radius_sea1d(53)= 4240916.0000000000
-  SEA1DM_V%radius_sea1d(54)= 4291264.0000000000
-  SEA1DM_V%radius_sea1d(55)= 4341612.0000000000
-  SEA1DM_V%radius_sea1d(56)= 4391959.0000000000
-  SEA1DM_V%radius_sea1d(57)= 4442306.0000000000
-  SEA1DM_V%radius_sea1d(58)= 4492654.0000000000
-  SEA1DM_V%radius_sea1d(59)= 4543002.0000000000
-  SEA1DM_V%radius_sea1d(60)= 4593350.0000000000
-  SEA1DM_V%radius_sea1d(61)= 4643698.0000000000
-  SEA1DM_V%radius_sea1d(62)= 4694046.0000000000
-  SEA1DM_V%radius_sea1d(63)= 4744393.0000000000
-  SEA1DM_V%radius_sea1d(64)= 4794740.0000000000
-  SEA1DM_V%radius_sea1d(65)= 4845089.0000000000
-  SEA1DM_V%radius_sea1d(66)= 4895436.0000000000
-  SEA1DM_V%radius_sea1d(67)= 4945784.0000000000
-  SEA1DM_V%radius_sea1d(68)= 4996132.0000000000
-  SEA1DM_V%radius_sea1d(69)= 5046480.0000000000
-  SEA1DM_V%radius_sea1d(70)= 5096827.0000000000
-  SEA1DM_V%radius_sea1d(71)= 5147175.0000000000
-  SEA1DM_V%radius_sea1d(72)= 5197522.0000000000
-  SEA1DM_V%radius_sea1d(73)= 5247870.0000000000
-  SEA1DM_V%radius_sea1d(74)= 5298218.0000000000
-  SEA1DM_V%radius_sea1d(75)= 5348566.0000000000
-  SEA1DM_V%radius_sea1d(76)= 5398914.0000000000
-  SEA1DM_V%radius_sea1d(77)= 5449261.0000000000
-  SEA1DM_V%radius_sea1d(78)= 5499610.0000000000
-  SEA1DM_V%radius_sea1d(79)= 5549957.0000000000
-  SEA1DM_V%radius_sea1d(80)= 5600304.0000000000
-  SEA1DM_V%radius_sea1d(81)= 5650652.0000000000
-  SEA1DM_V%radius_sea1d(82)= 5701000.0000000000
-  SEA1DM_V%radius_sea1d(83)= 5711000.0000000000
-  SEA1DM_V%radius_sea1d(84)= 5711000.0000000000
-  SEA1DM_V%radius_sea1d(85)= 5721000.0000000000
-  SEA1DM_V%radius_sea1d(86)= 5731000.0000000000
-  SEA1DM_V%radius_sea1d(87)= 5741000.0000000000
-  SEA1DM_V%radius_sea1d(88)= 5751000.0000000000
-  SEA1DM_V%radius_sea1d(89)= 5761000.0000000000
-  SEA1DM_V%radius_sea1d(90)= 5771000.0000000000
-  SEA1DM_V%radius_sea1d(91)= 5781000.0000000000
-  SEA1DM_V%radius_sea1d(92)= 5791000.0000000000
-  SEA1DM_V%radius_sea1d(93)= 5801000.0000000000
-  SEA1DM_V%radius_sea1d(94)= 5811000.0000000000
-  SEA1DM_V%radius_sea1d(95)= 5821000.0000000000
-  SEA1DM_V%radius_sea1d(96)= 5831000.0000000000
-  SEA1DM_V%radius_sea1d(97)= 5841000.0000000000
-  SEA1DM_V%radius_sea1d(98)= 5851000.0000000000
-  SEA1DM_V%radius_sea1d(99)= 5861000.0000000000
-  SEA1DM_V%radius_sea1d(100)= 5871000.0000000000
-  SEA1DM_V%radius_sea1d(101)= 5881000.0000000000
-  SEA1DM_V%radius_sea1d(102)= 5891000.0000000000
-  SEA1DM_V%radius_sea1d(103)= 5901000.0000000000
-  SEA1DM_V%radius_sea1d(104)= 5911000.0000000000
-  SEA1DM_V%radius_sea1d(105)= 5921000.0000000000
-  SEA1DM_V%radius_sea1d(106)= 5931000.0000000000
-  SEA1DM_V%radius_sea1d(107)= 5941000.0000000000
-  SEA1DM_V%radius_sea1d(108)= 5951000.0000000000
-  SEA1DM_V%radius_sea1d(109)= 5961000.0000000000
-  SEA1DM_V%radius_sea1d(110)= 5961000.0000000000
-  SEA1DM_V%radius_sea1d(111)= 5971000.0000000000
-  SEA1DM_V%radius_sea1d(112)= 5981000.0000000000
-  SEA1DM_V%radius_sea1d(113)= 5991000.0000000000
-  SEA1DM_V%radius_sea1d(114)= 6001000.0000000000
-  SEA1DM_V%radius_sea1d(115)= 6011000.0000000000
-  SEA1DM_V%radius_sea1d(116)= 6021000.0000000000
-  SEA1DM_V%radius_sea1d(117)= 6031000.0000000000
-  SEA1DM_V%radius_sea1d(118)= 6041000.0000000000
-  SEA1DM_V%radius_sea1d(119)= 6051000.0000000000
-  SEA1DM_V%radius_sea1d(120)= 6061000.0000000000
-  SEA1DM_V%radius_sea1d(121)= 6071000.0000000000
-  SEA1DM_V%radius_sea1d(122)= 6081000.0000000000
-  SEA1DM_V%radius_sea1d(123)= 6091000.0000000000
-  SEA1DM_V%radius_sea1d(124)= 6101000.0000000000
-  SEA1DM_V%radius_sea1d(125)= 6111000.0000000000
-  SEA1DM_V%radius_sea1d(126)= 6121000.0000000000
-  SEA1DM_V%radius_sea1d(127)= 6131000.0000000000
-  SEA1DM_V%radius_sea1d(128)= 6141000.0000000000
-  SEA1DM_V%radius_sea1d(129)= 6151000.0000000000
-  SEA1DM_V%radius_sea1d(130)= 6161000.0000000000
-  SEA1DM_V%radius_sea1d(131)= 6171000.0000000000
-  SEA1DM_V%radius_sea1d(132)= 6181000.0000000000
-  SEA1DM_V%radius_sea1d(133)= 6191000.0000000000
-  SEA1DM_V%radius_sea1d(134)= 6201000.0000000000
-  SEA1DM_V%radius_sea1d(135)= 6211000.0000000000
-  SEA1DM_V%radius_sea1d(136)= 6221000.0000000000
-  SEA1DM_V%radius_sea1d(137)= 6231000.0000000000
-  SEA1DM_V%radius_sea1d(138)= 6241000.0000000000
-  SEA1DM_V%radius_sea1d(139)= 6251000.0000000000
-  SEA1DM_V%radius_sea1d(140)= 6261000.0000000000
-  SEA1DM_V%radius_sea1d(141)= 6271000.0000000000
-  SEA1DM_V%radius_sea1d(142)= 6281000.0000000000
-  SEA1DM_V%radius_sea1d(143)= 6291000.0000000000
-  SEA1DM_V%radius_sea1d(144)= 6301000.0000000000
-  SEA1DM_V%radius_sea1d(145)= 6311000.0000000000
-  SEA1DM_V%radius_sea1d(146)= 6321000.0000000000
-  SEA1DM_V%radius_sea1d(147)= 6326000.0000000000
-  SEA1DM_V%radius_sea1d(148)= 6331000.0000000000
-  SEA1DM_V%radius_sea1d(149)= 6336000.0000000000
-  SEA1DM_V%radius_sea1d(150)= 6341000.0000000000
-  SEA1DM_V%radius_sea1d(151)= 6346000.0000000000
-  SEA1DM_V%radius_sea1d(152)= 6346000.0000000000
-  SEA1DM_V%radius_sea1d(153)= 6351000.0000000000
-  SEA1DM_V%radius_sea1d(154)= 6353800.0000000000
-  SEA1DM_V%radius_sea1d(155)= 6356600.0000000000
-  SEA1DM_V%radius_sea1d(156)= 6360000.0000000000
-  SEA1DM_V%radius_sea1d(157)= 6363000.0000000000
-  SEA1DM_V%radius_sea1d(158)= 6365000.0000000000
-  SEA1DM_V%radius_sea1d(159)= 6366000.0000000000
-  SEA1DM_V%radius_sea1d(160)= 6366000.0000000000
-  SEA1DM_V%radius_sea1d(161)= 6368000.0000000000
-  SEA1DM_V%radius_sea1d(162)= 6368000.0000000000
-  SEA1DM_V%radius_sea1d(163)= 6371000.0000000000
+  SEA1DM_V_radius_sea1d(1)= 0.0000000000
+  SEA1DM_V_radius_sea1d(2)= 101425.0000000000
+  SEA1DM_V_radius_sea1d(3)= 202850.0000000000
+  SEA1DM_V_radius_sea1d(4)= 304275.0000000000
+  SEA1DM_V_radius_sea1d(5)= 405700.0000000000
+  SEA1DM_V_radius_sea1d(6)= 507125.0000000000
+  SEA1DM_V_radius_sea1d(7)= 608550.0000000000
+  SEA1DM_V_radius_sea1d(8)= 709975.0000000000
+  SEA1DM_V_radius_sea1d(9)= 811400.0000000000
+  SEA1DM_V_radius_sea1d(10)= 912825.0000000000
+  SEA1DM_V_radius_sea1d(11)= 1014250.0000000000
+  SEA1DM_V_radius_sea1d(12)= 1115675.0000000000
+  SEA1DM_V_radius_sea1d(13)= 1217100.0000000000
+  SEA1DM_V_radius_sea1d(14)= 1217100.0000000000
+  SEA1DM_V_radius_sea1d(15)= 1315735.0000000000
+  SEA1DM_V_radius_sea1d(16)= 1414370.0000000000
+  SEA1DM_V_radius_sea1d(17)= 1513004.0000000000
+  SEA1DM_V_radius_sea1d(18)= 1611639.0000000000
+  SEA1DM_V_radius_sea1d(19)= 1710274.0000000000
+  SEA1DM_V_radius_sea1d(20)= 1808909.0000000000
+  SEA1DM_V_radius_sea1d(21)= 1907544.0000000000
+  SEA1DM_V_radius_sea1d(22)= 2006178.0000000000
+  SEA1DM_V_radius_sea1d(23)= 2104813.0000000000
+  SEA1DM_V_radius_sea1d(24)= 2203448.0000000000
+  SEA1DM_V_radius_sea1d(25)= 2302082.0000000000
+  SEA1DM_V_radius_sea1d(26)= 2400717.0000000000
+  SEA1DM_V_radius_sea1d(27)= 2499352.0000000000
+  SEA1DM_V_radius_sea1d(28)= 2597987.0000000000
+  SEA1DM_V_radius_sea1d(29)= 2696622.0000000000
+  SEA1DM_V_radius_sea1d(30)= 2795256.0000000000
+  SEA1DM_V_radius_sea1d(31)= 2893891.0000000000
+  SEA1DM_V_radius_sea1d(32)= 2992526.0000000000
+  SEA1DM_V_radius_sea1d(33)= 3091161.0000000000
+  SEA1DM_V_radius_sea1d(34)= 3189796.0000000000
+  SEA1DM_V_radius_sea1d(35)= 3288431.0000000000
+  SEA1DM_V_radius_sea1d(36)= 3387066.0000000000
+  SEA1DM_V_radius_sea1d(37)= 3485700.0000000000
+  SEA1DM_V_radius_sea1d(38)= 3485700.0000000000
+  SEA1DM_V_radius_sea1d(39)= 3536048.0000000000
+  SEA1DM_V_radius_sea1d(40)= 3586396.0000000000
+  SEA1DM_V_radius_sea1d(41)= 3636743.0000000000
+  SEA1DM_V_radius_sea1d(42)= 3687091.0000000000
+  SEA1DM_V_radius_sea1d(43)= 3737438.0000000000
+  SEA1DM_V_radius_sea1d(44)= 3787786.0000000000
+  SEA1DM_V_radius_sea1d(45)= 3838134.0000000000
+  SEA1DM_V_radius_sea1d(46)= 3888482.0000000000
+  SEA1DM_V_radius_sea1d(47)= 3938830.0000000000
+  SEA1DM_V_radius_sea1d(48)= 3989177.0000000000
+  SEA1DM_V_radius_sea1d(49)= 4039525.0000000000
+  SEA1DM_V_radius_sea1d(50)= 4089872.0000000000
+  SEA1DM_V_radius_sea1d(51)= 4140220.0000000000
+  SEA1DM_V_radius_sea1d(52)= 4190568.0000000000
+  SEA1DM_V_radius_sea1d(53)= 4240916.0000000000
+  SEA1DM_V_radius_sea1d(54)= 4291264.0000000000
+  SEA1DM_V_radius_sea1d(55)= 4341612.0000000000
+  SEA1DM_V_radius_sea1d(56)= 4391959.0000000000
+  SEA1DM_V_radius_sea1d(57)= 4442306.0000000000
+  SEA1DM_V_radius_sea1d(58)= 4492654.0000000000
+  SEA1DM_V_radius_sea1d(59)= 4543002.0000000000
+  SEA1DM_V_radius_sea1d(60)= 4593350.0000000000
+  SEA1DM_V_radius_sea1d(61)= 4643698.0000000000
+  SEA1DM_V_radius_sea1d(62)= 4694046.0000000000
+  SEA1DM_V_radius_sea1d(63)= 4744393.0000000000
+  SEA1DM_V_radius_sea1d(64)= 4794740.0000000000
+  SEA1DM_V_radius_sea1d(65)= 4845089.0000000000
+  SEA1DM_V_radius_sea1d(66)= 4895436.0000000000
+  SEA1DM_V_radius_sea1d(67)= 4945784.0000000000
+  SEA1DM_V_radius_sea1d(68)= 4996132.0000000000
+  SEA1DM_V_radius_sea1d(69)= 5046480.0000000000
+  SEA1DM_V_radius_sea1d(70)= 5096827.0000000000
+  SEA1DM_V_radius_sea1d(71)= 5147175.0000000000
+  SEA1DM_V_radius_sea1d(72)= 5197522.0000000000
+  SEA1DM_V_radius_sea1d(73)= 5247870.0000000000
+  SEA1DM_V_radius_sea1d(74)= 5298218.0000000000
+  SEA1DM_V_radius_sea1d(75)= 5348566.0000000000
+  SEA1DM_V_radius_sea1d(76)= 5398914.0000000000
+  SEA1DM_V_radius_sea1d(77)= 5449261.0000000000
+  SEA1DM_V_radius_sea1d(78)= 5499610.0000000000
+  SEA1DM_V_radius_sea1d(79)= 5549957.0000000000
+  SEA1DM_V_radius_sea1d(80)= 5600304.0000000000
+  SEA1DM_V_radius_sea1d(81)= 5650652.0000000000
+  SEA1DM_V_radius_sea1d(82)= 5701000.0000000000
+  SEA1DM_V_radius_sea1d(83)= 5711000.0000000000
+  SEA1DM_V_radius_sea1d(84)= 5711000.0000000000
+  SEA1DM_V_radius_sea1d(85)= 5721000.0000000000
+  SEA1DM_V_radius_sea1d(86)= 5731000.0000000000
+  SEA1DM_V_radius_sea1d(87)= 5741000.0000000000
+  SEA1DM_V_radius_sea1d(88)= 5751000.0000000000
+  SEA1DM_V_radius_sea1d(89)= 5761000.0000000000
+  SEA1DM_V_radius_sea1d(90)= 5771000.0000000000
+  SEA1DM_V_radius_sea1d(91)= 5781000.0000000000
+  SEA1DM_V_radius_sea1d(92)= 5791000.0000000000
+  SEA1DM_V_radius_sea1d(93)= 5801000.0000000000
+  SEA1DM_V_radius_sea1d(94)= 5811000.0000000000
+  SEA1DM_V_radius_sea1d(95)= 5821000.0000000000
+  SEA1DM_V_radius_sea1d(96)= 5831000.0000000000
+  SEA1DM_V_radius_sea1d(97)= 5841000.0000000000
+  SEA1DM_V_radius_sea1d(98)= 5851000.0000000000
+  SEA1DM_V_radius_sea1d(99)= 5861000.0000000000
+  SEA1DM_V_radius_sea1d(100)= 5871000.0000000000
+  SEA1DM_V_radius_sea1d(101)= 5881000.0000000000
+  SEA1DM_V_radius_sea1d(102)= 5891000.0000000000
+  SEA1DM_V_radius_sea1d(103)= 5901000.0000000000
+  SEA1DM_V_radius_sea1d(104)= 5911000.0000000000
+  SEA1DM_V_radius_sea1d(105)= 5921000.0000000000
+  SEA1DM_V_radius_sea1d(106)= 5931000.0000000000
+  SEA1DM_V_radius_sea1d(107)= 5941000.0000000000
+  SEA1DM_V_radius_sea1d(108)= 5951000.0000000000
+  SEA1DM_V_radius_sea1d(109)= 5961000.0000000000
+  SEA1DM_V_radius_sea1d(110)= 5961000.0000000000
+  SEA1DM_V_radius_sea1d(111)= 5971000.0000000000
+  SEA1DM_V_radius_sea1d(112)= 5981000.0000000000
+  SEA1DM_V_radius_sea1d(113)= 5991000.0000000000
+  SEA1DM_V_radius_sea1d(114)= 6001000.0000000000
+  SEA1DM_V_radius_sea1d(115)= 6011000.0000000000
+  SEA1DM_V_radius_sea1d(116)= 6021000.0000000000
+  SEA1DM_V_radius_sea1d(117)= 6031000.0000000000
+  SEA1DM_V_radius_sea1d(118)= 6041000.0000000000
+  SEA1DM_V_radius_sea1d(119)= 6051000.0000000000
+  SEA1DM_V_radius_sea1d(120)= 6061000.0000000000
+  SEA1DM_V_radius_sea1d(121)= 6071000.0000000000
+  SEA1DM_V_radius_sea1d(122)= 6081000.0000000000
+  SEA1DM_V_radius_sea1d(123)= 6091000.0000000000
+  SEA1DM_V_radius_sea1d(124)= 6101000.0000000000
+  SEA1DM_V_radius_sea1d(125)= 6111000.0000000000
+  SEA1DM_V_radius_sea1d(126)= 6121000.0000000000
+  SEA1DM_V_radius_sea1d(127)= 6131000.0000000000
+  SEA1DM_V_radius_sea1d(128)= 6141000.0000000000
+  SEA1DM_V_radius_sea1d(129)= 6151000.0000000000
+  SEA1DM_V_radius_sea1d(130)= 6161000.0000000000
+  SEA1DM_V_radius_sea1d(131)= 6171000.0000000000
+  SEA1DM_V_radius_sea1d(132)= 6181000.0000000000
+  SEA1DM_V_radius_sea1d(133)= 6191000.0000000000
+  SEA1DM_V_radius_sea1d(134)= 6201000.0000000000
+  SEA1DM_V_radius_sea1d(135)= 6211000.0000000000
+  SEA1DM_V_radius_sea1d(136)= 6221000.0000000000
+  SEA1DM_V_radius_sea1d(137)= 6231000.0000000000
+  SEA1DM_V_radius_sea1d(138)= 6241000.0000000000
+  SEA1DM_V_radius_sea1d(139)= 6251000.0000000000
+  SEA1DM_V_radius_sea1d(140)= 6261000.0000000000
+  SEA1DM_V_radius_sea1d(141)= 6271000.0000000000
+  SEA1DM_V_radius_sea1d(142)= 6281000.0000000000
+  SEA1DM_V_radius_sea1d(143)= 6291000.0000000000
+  SEA1DM_V_radius_sea1d(144)= 6301000.0000000000
+  SEA1DM_V_radius_sea1d(145)= 6311000.0000000000
+  SEA1DM_V_radius_sea1d(146)= 6321000.0000000000
+  SEA1DM_V_radius_sea1d(147)= 6326000.0000000000
+  SEA1DM_V_radius_sea1d(148)= 6331000.0000000000
+  SEA1DM_V_radius_sea1d(149)= 6336000.0000000000
+  SEA1DM_V_radius_sea1d(150)= 6341000.0000000000
+  SEA1DM_V_radius_sea1d(151)= 6346000.0000000000
+  SEA1DM_V_radius_sea1d(152)= 6346000.0000000000
+  SEA1DM_V_radius_sea1d(153)= 6351000.0000000000
+  SEA1DM_V_radius_sea1d(154)= 6353800.0000000000
+  SEA1DM_V_radius_sea1d(155)= 6356600.0000000000
+  SEA1DM_V_radius_sea1d(156)= 6360000.0000000000
+  SEA1DM_V_radius_sea1d(157)= 6363000.0000000000
+  SEA1DM_V_radius_sea1d(158)= 6365000.0000000000
+  SEA1DM_V_radius_sea1d(159)= 6366000.0000000000
+  SEA1DM_V_radius_sea1d(160)= 6366000.0000000000
+  SEA1DM_V_radius_sea1d(161)= 6368000.0000000000
+  SEA1DM_V_radius_sea1d(162)= 6368000.0000000000
+  SEA1DM_V_radius_sea1d(163)= 6371000.0000000000
 
-  SEA1DM_V%density_sea1d(1)= 13.0121900000000
-  SEA1DM_V%density_sea1d(2)= 13.0100200000000
-  SEA1DM_V%density_sea1d(3)= 13.0035600000000
-  SEA1DM_V%density_sea1d(4)= 12.9928300000000
-  SEA1DM_V%density_sea1d(5)= 12.9778000000000
-  SEA1DM_V%density_sea1d(6)= 12.9585000000000
-  SEA1DM_V%density_sea1d(7)= 12.9349100000000
-  SEA1DM_V%density_sea1d(8)= 12.9070300000000
-  SEA1DM_V%density_sea1d(9)= 12.8748700000000
-  SEA1DM_V%density_sea1d(10)= 12.8384300000000
-  SEA1DM_V%density_sea1d(11)= 12.7977100000000
-  SEA1DM_V%density_sea1d(12)= 12.7526900000000
-  SEA1DM_V%density_sea1d(13)= 12.7037000000000
-  SEA1DM_V%density_sea1d(14)= 12.1391000000000
-  SEA1DM_V%density_sea1d(15)= 12.0877600000000
-  SEA1DM_V%density_sea1d(16)= 12.0333900000000
-  SEA1DM_V%density_sea1d(17)= 11.9757900000000
-  SEA1DM_V%density_sea1d(18)= 11.9148500000000
-  SEA1DM_V%density_sea1d(19)= 11.8503900000000
-  SEA1DM_V%density_sea1d(20)= 11.7822500000000
-  SEA1DM_V%density_sea1d(21)= 11.7102700000000
-  SEA1DM_V%density_sea1d(22)= 11.6343000000000
-  SEA1DM_V%density_sea1d(23)= 11.5541800000000
-  SEA1DM_V%density_sea1d(24)= 11.4697400000000
-  SEA1DM_V%density_sea1d(25)= 11.3808400000000
-  SEA1DM_V%density_sea1d(26)= 11.2873100000000
-  SEA1DM_V%density_sea1d(27)= 11.1890000000000
-  SEA1DM_V%density_sea1d(28)= 11.0857400000000
-  SEA1DM_V%density_sea1d(29)= 10.9773800000000
-  SEA1DM_V%density_sea1d(30)= 10.8637600000000
-  SEA1DM_V%density_sea1d(31)= 10.7447200000000
-  SEA1DM_V%density_sea1d(32)= 10.6201000000000
-  SEA1DM_V%density_sea1d(33)= 10.4897500000000
-  SEA1DM_V%density_sea1d(34)= 10.3535000000000
-  SEA1DM_V%density_sea1d(35)= 10.2112100000000
-  SEA1DM_V%density_sea1d(36)= 10.0627000000000
-  SEA1DM_V%density_sea1d(37)= 9.9085500000000
-  SEA1DM_V%density_sea1d(38)= 5.5497800000000
-  SEA1DM_V%density_sea1d(39)= 5.5263200000000
-  SEA1DM_V%density_sea1d(40)= 5.5027000000000
-  SEA1DM_V%density_sea1d(41)= 5.4789400000000
-  SEA1DM_V%density_sea1d(42)= 5.4550400000000
-  SEA1DM_V%density_sea1d(43)= 5.4309700000000
-  SEA1DM_V%density_sea1d(44)= 5.4067700000000
-  SEA1DM_V%density_sea1d(45)= 5.3824200000000
-  SEA1DM_V%density_sea1d(46)= 5.3579200000000
-  SEA1DM_V%density_sea1d(47)= 5.3332700000000
-  SEA1DM_V%density_sea1d(48)= 5.3084700000000
-  SEA1DM_V%density_sea1d(49)= 5.2835200000000
-  SEA1DM_V%density_sea1d(50)= 5.2584400000000
-  SEA1DM_V%density_sea1d(51)= 5.2331900000000
-  SEA1DM_V%density_sea1d(52)= 5.2078000000000
-  SEA1DM_V%density_sea1d(53)= 5.1822700000000
-  SEA1DM_V%density_sea1d(54)= 5.1565900000000
-  SEA1DM_V%density_sea1d(55)= 5.1307500000000
-  SEA1DM_V%density_sea1d(56)= 5.1047600000000
-  SEA1DM_V%density_sea1d(57)= 5.0786400000000
-  SEA1DM_V%density_sea1d(58)= 5.0523600000000
-  SEA1DM_V%density_sea1d(59)= 5.0259400000000
-  SEA1DM_V%density_sea1d(60)= 4.9993600000000
-  SEA1DM_V%density_sea1d(61)= 4.9726500000000
-  SEA1DM_V%density_sea1d(62)= 4.9457800000000
-  SEA1DM_V%density_sea1d(63)= 4.9187500000000
-  SEA1DM_V%density_sea1d(64)= 4.8915900000000
-  SEA1DM_V%density_sea1d(65)= 4.8642700000000
-  SEA1DM_V%density_sea1d(66)= 4.8368200000000
-  SEA1DM_V%density_sea1d(67)= 4.8092100000000
-  SEA1DM_V%density_sea1d(68)= 4.7814400000000
-  SEA1DM_V%density_sea1d(69)= 4.7535400000000
-  SEA1DM_V%density_sea1d(70)= 4.7254900000000
-  SEA1DM_V%density_sea1d(71)= 4.6972900000000
-  SEA1DM_V%density_sea1d(72)= 4.6689400000000
-  SEA1DM_V%density_sea1d(73)= 4.6404400000000
-  SEA1DM_V%density_sea1d(74)= 4.6117900000000
-  SEA1DM_V%density_sea1d(75)= 4.5830000000000
-  SEA1DM_V%density_sea1d(76)= 4.5540600000000
-  SEA1DM_V%density_sea1d(77)= 4.5249700000000
-  SEA1DM_V%density_sea1d(78)= 4.4957300000000
-  SEA1DM_V%density_sea1d(79)= 4.4663500000000
-  SEA1DM_V%density_sea1d(80)= 4.4368100000000
-  SEA1DM_V%density_sea1d(81)= 4.4071300000000
-  SEA1DM_V%density_sea1d(82)= 4.3773100000000
-  SEA1DM_V%density_sea1d(83)= 4.3713900000000
-  SEA1DM_V%density_sea1d(84)= 4.0645800000000
-  SEA1DM_V%density_sea1d(85)= 4.0522200000000
-  SEA1DM_V%density_sea1d(86)= 4.0398700000000
-  SEA1DM_V%density_sea1d(87)= 4.0275200000000
-  SEA1DM_V%density_sea1d(88)= 4.0151600000000
-  SEA1DM_V%density_sea1d(89)= 4.0028100000000
-  SEA1DM_V%density_sea1d(90)= 3.9904500000000
-  SEA1DM_V%density_sea1d(91)= 3.9781000000000
-  SEA1DM_V%density_sea1d(92)= 3.9657500000000
-  SEA1DM_V%density_sea1d(93)= 3.9533900000000
-  SEA1DM_V%density_sea1d(94)= 3.9410400000000
-  SEA1DM_V%density_sea1d(95)= 3.9286900000000
-  SEA1DM_V%density_sea1d(96)= 3.9163300000000
-  SEA1DM_V%density_sea1d(97)= 3.9039800000000
-  SEA1DM_V%density_sea1d(98)= 3.8916200000000
-  SEA1DM_V%density_sea1d(99)= 3.8792700000000
-  SEA1DM_V%density_sea1d(100)= 3.8669200000000
-  SEA1DM_V%density_sea1d(101)= 3.8545600000000
-  SEA1DM_V%density_sea1d(102)= 3.8422100000000
-  SEA1DM_V%density_sea1d(103)= 3.8298600000000
-  SEA1DM_V%density_sea1d(104)= 3.8175000000000
-  SEA1DM_V%density_sea1d(105)= 3.8051500000000
-  SEA1DM_V%density_sea1d(106)= 3.7928000000000
-  SEA1DM_V%density_sea1d(107)= 3.7804400000000
-  SEA1DM_V%density_sea1d(108)= 3.7680900000000
-  SEA1DM_V%density_sea1d(109)= 3.7557300000000
-  SEA1DM_V%density_sea1d(110)= 3.5469600000000
-  SEA1DM_V%density_sea1d(111)= 3.5409000000000
-  SEA1DM_V%density_sea1d(112)= 3.5348400000000
-  SEA1DM_V%density_sea1d(113)= 3.5287900000000
-  SEA1DM_V%density_sea1d(114)= 3.5227300000000
-  SEA1DM_V%density_sea1d(115)= 3.5166700000000
-  SEA1DM_V%density_sea1d(116)= 3.5106100000000
-  SEA1DM_V%density_sea1d(117)= 3.5045500000000
-  SEA1DM_V%density_sea1d(118)= 3.4984900000000
-  SEA1DM_V%density_sea1d(119)= 3.4924300000000
-  SEA1DM_V%density_sea1d(120)= 3.4863800000000
-  SEA1DM_V%density_sea1d(121)= 3.4803200000000
-  SEA1DM_V%density_sea1d(122)= 3.4742600000000
-  SEA1DM_V%density_sea1d(123)= 3.4682000000000
-  SEA1DM_V%density_sea1d(124)= 3.4621400000000
-  SEA1DM_V%density_sea1d(125)= 3.4560800000000
-  SEA1DM_V%density_sea1d(126)= 3.4500200000000
-  SEA1DM_V%density_sea1d(127)= 3.4439700000000
-  SEA1DM_V%density_sea1d(128)= 3.4379100000000
-  SEA1DM_V%density_sea1d(129)= 3.4318500000000
-  SEA1DM_V%density_sea1d(130)= 3.4257900000000
-  SEA1DM_V%density_sea1d(131)= 3.4197300000000
-  SEA1DM_V%density_sea1d(132)= 3.4136800000000
-  SEA1DM_V%density_sea1d(133)= 3.4076200000000
-  SEA1DM_V%density_sea1d(134)= 3.4015600000000
-  SEA1DM_V%density_sea1d(135)= 3.3955000000000
-  SEA1DM_V%density_sea1d(136)= 3.3894400000000
-  SEA1DM_V%density_sea1d(137)= 3.3833800000000
-  SEA1DM_V%density_sea1d(138)= 3.3773200000000
-  SEA1DM_V%density_sea1d(139)= 3.3712600000000
-  SEA1DM_V%density_sea1d(140)= 3.3652100000000
-  SEA1DM_V%density_sea1d(141)= 3.3591500000000
-  SEA1DM_V%density_sea1d(142)= 3.3530900000000
-  SEA1DM_V%density_sea1d(143)= 3.3470300000000
-  SEA1DM_V%density_sea1d(144)= 3.3409700000000
-  SEA1DM_V%density_sea1d(145)= 3.3349100000000
-  SEA1DM_V%density_sea1d(146)= 3.3288500000000
-  SEA1DM_V%density_sea1d(147)= 3.3288500000000
-  SEA1DM_V%density_sea1d(148)= 3.3227900000000
-  SEA1DM_V%density_sea1d(149)= 3.3227900000000
-  SEA1DM_V%density_sea1d(150)= 3.3227900000000
-  SEA1DM_V%density_sea1d(151)= 3.3227900000000
-  SEA1DM_V%density_sea1d(152)= 2.8500000000000
-  SEA1DM_V%density_sea1d(153)= 2.8500000000000
-  SEA1DM_V%density_sea1d(154)= 2.8500000000000
-  SEA1DM_V%density_sea1d(155)= 2.8500000000000
-  SEA1DM_V%density_sea1d(156)= 2.8500000000000
-  SEA1DM_V%density_sea1d(157)= 2.8500000000000
-  SEA1DM_V%density_sea1d(158)= 2.8500000000000
-  SEA1DM_V%density_sea1d(159)= 2.8500000000000
-  SEA1DM_V%density_sea1d(160)= 2.8500000000000
-  SEA1DM_V%density_sea1d(161)= 2.8500000000000
-  SEA1DM_V%density_sea1d(162)= 2.8500000000000
-  SEA1DM_V%density_sea1d(163)= 2.8500000000000
+  SEA1DM_V_density_sea1d(1)= 13.0121900000000
+  SEA1DM_V_density_sea1d(2)= 13.0100200000000
+  SEA1DM_V_density_sea1d(3)= 13.0035600000000
+  SEA1DM_V_density_sea1d(4)= 12.9928300000000
+  SEA1DM_V_density_sea1d(5)= 12.9778000000000
+  SEA1DM_V_density_sea1d(6)= 12.9585000000000
+  SEA1DM_V_density_sea1d(7)= 12.9349100000000
+  SEA1DM_V_density_sea1d(8)= 12.9070300000000
+  SEA1DM_V_density_sea1d(9)= 12.8748700000000
+  SEA1DM_V_density_sea1d(10)= 12.8384300000000
+  SEA1DM_V_density_sea1d(11)= 12.7977100000000
+  SEA1DM_V_density_sea1d(12)= 12.7526900000000
+  SEA1DM_V_density_sea1d(13)= 12.7037000000000
+  SEA1DM_V_density_sea1d(14)= 12.1391000000000
+  SEA1DM_V_density_sea1d(15)= 12.0877600000000
+  SEA1DM_V_density_sea1d(16)= 12.0333900000000
+  SEA1DM_V_density_sea1d(17)= 11.9757900000000
+  SEA1DM_V_density_sea1d(18)= 11.9148500000000
+  SEA1DM_V_density_sea1d(19)= 11.8503900000000
+  SEA1DM_V_density_sea1d(20)= 11.7822500000000
+  SEA1DM_V_density_sea1d(21)= 11.7102700000000
+  SEA1DM_V_density_sea1d(22)= 11.6343000000000
+  SEA1DM_V_density_sea1d(23)= 11.5541800000000
+  SEA1DM_V_density_sea1d(24)= 11.4697400000000
+  SEA1DM_V_density_sea1d(25)= 11.3808400000000
+  SEA1DM_V_density_sea1d(26)= 11.2873100000000
+  SEA1DM_V_density_sea1d(27)= 11.1890000000000
+  SEA1DM_V_density_sea1d(28)= 11.0857400000000
+  SEA1DM_V_density_sea1d(29)= 10.9773800000000
+  SEA1DM_V_density_sea1d(30)= 10.8637600000000
+  SEA1DM_V_density_sea1d(31)= 10.7447200000000
+  SEA1DM_V_density_sea1d(32)= 10.6201000000000
+  SEA1DM_V_density_sea1d(33)= 10.4897500000000
+  SEA1DM_V_density_sea1d(34)= 10.3535000000000
+  SEA1DM_V_density_sea1d(35)= 10.2112100000000
+  SEA1DM_V_density_sea1d(36)= 10.0627000000000
+  SEA1DM_V_density_sea1d(37)= 9.9085500000000
+  SEA1DM_V_density_sea1d(38)= 5.5497800000000
+  SEA1DM_V_density_sea1d(39)= 5.5263200000000
+  SEA1DM_V_density_sea1d(40)= 5.5027000000000
+  SEA1DM_V_density_sea1d(41)= 5.4789400000000
+  SEA1DM_V_density_sea1d(42)= 5.4550400000000
+  SEA1DM_V_density_sea1d(43)= 5.4309700000000
+  SEA1DM_V_density_sea1d(44)= 5.4067700000000
+  SEA1DM_V_density_sea1d(45)= 5.3824200000000
+  SEA1DM_V_density_sea1d(46)= 5.3579200000000
+  SEA1DM_V_density_sea1d(47)= 5.3332700000000
+  SEA1DM_V_density_sea1d(48)= 5.3084700000000
+  SEA1DM_V_density_sea1d(49)= 5.2835200000000
+  SEA1DM_V_density_sea1d(50)= 5.2584400000000
+  SEA1DM_V_density_sea1d(51)= 5.2331900000000
+  SEA1DM_V_density_sea1d(52)= 5.2078000000000
+  SEA1DM_V_density_sea1d(53)= 5.1822700000000
+  SEA1DM_V_density_sea1d(54)= 5.1565900000000
+  SEA1DM_V_density_sea1d(55)= 5.1307500000000
+  SEA1DM_V_density_sea1d(56)= 5.1047600000000
+  SEA1DM_V_density_sea1d(57)= 5.0786400000000
+  SEA1DM_V_density_sea1d(58)= 5.0523600000000
+  SEA1DM_V_density_sea1d(59)= 5.0259400000000
+  SEA1DM_V_density_sea1d(60)= 4.9993600000000
+  SEA1DM_V_density_sea1d(61)= 4.9726500000000
+  SEA1DM_V_density_sea1d(62)= 4.9457800000000
+  SEA1DM_V_density_sea1d(63)= 4.9187500000000
+  SEA1DM_V_density_sea1d(64)= 4.8915900000000
+  SEA1DM_V_density_sea1d(65)= 4.8642700000000
+  SEA1DM_V_density_sea1d(66)= 4.8368200000000
+  SEA1DM_V_density_sea1d(67)= 4.8092100000000
+  SEA1DM_V_density_sea1d(68)= 4.7814400000000
+  SEA1DM_V_density_sea1d(69)= 4.7535400000000
+  SEA1DM_V_density_sea1d(70)= 4.7254900000000
+  SEA1DM_V_density_sea1d(71)= 4.6972900000000
+  SEA1DM_V_density_sea1d(72)= 4.6689400000000
+  SEA1DM_V_density_sea1d(73)= 4.6404400000000
+  SEA1DM_V_density_sea1d(74)= 4.6117900000000
+  SEA1DM_V_density_sea1d(75)= 4.5830000000000
+  SEA1DM_V_density_sea1d(76)= 4.5540600000000
+  SEA1DM_V_density_sea1d(77)= 4.5249700000000
+  SEA1DM_V_density_sea1d(78)= 4.4957300000000
+  SEA1DM_V_density_sea1d(79)= 4.4663500000000
+  SEA1DM_V_density_sea1d(80)= 4.4368100000000
+  SEA1DM_V_density_sea1d(81)= 4.4071300000000
+  SEA1DM_V_density_sea1d(82)= 4.3773100000000
+  SEA1DM_V_density_sea1d(83)= 4.3713900000000
+  SEA1DM_V_density_sea1d(84)= 4.0645800000000
+  SEA1DM_V_density_sea1d(85)= 4.0522200000000
+  SEA1DM_V_density_sea1d(86)= 4.0398700000000
+  SEA1DM_V_density_sea1d(87)= 4.0275200000000
+  SEA1DM_V_density_sea1d(88)= 4.0151600000000
+  SEA1DM_V_density_sea1d(89)= 4.0028100000000
+  SEA1DM_V_density_sea1d(90)= 3.9904500000000
+  SEA1DM_V_density_sea1d(91)= 3.9781000000000
+  SEA1DM_V_density_sea1d(92)= 3.9657500000000
+  SEA1DM_V_density_sea1d(93)= 3.9533900000000
+  SEA1DM_V_density_sea1d(94)= 3.9410400000000
+  SEA1DM_V_density_sea1d(95)= 3.9286900000000
+  SEA1DM_V_density_sea1d(96)= 3.9163300000000
+  SEA1DM_V_density_sea1d(97)= 3.9039800000000
+  SEA1DM_V_density_sea1d(98)= 3.8916200000000
+  SEA1DM_V_density_sea1d(99)= 3.8792700000000
+  SEA1DM_V_density_sea1d(100)= 3.8669200000000
+  SEA1DM_V_density_sea1d(101)= 3.8545600000000
+  SEA1DM_V_density_sea1d(102)= 3.8422100000000
+  SEA1DM_V_density_sea1d(103)= 3.8298600000000
+  SEA1DM_V_density_sea1d(104)= 3.8175000000000
+  SEA1DM_V_density_sea1d(105)= 3.8051500000000
+  SEA1DM_V_density_sea1d(106)= 3.7928000000000
+  SEA1DM_V_density_sea1d(107)= 3.7804400000000
+  SEA1DM_V_density_sea1d(108)= 3.7680900000000
+  SEA1DM_V_density_sea1d(109)= 3.7557300000000
+  SEA1DM_V_density_sea1d(110)= 3.5469600000000
+  SEA1DM_V_density_sea1d(111)= 3.5409000000000
+  SEA1DM_V_density_sea1d(112)= 3.5348400000000
+  SEA1DM_V_density_sea1d(113)= 3.5287900000000
+  SEA1DM_V_density_sea1d(114)= 3.5227300000000
+  SEA1DM_V_density_sea1d(115)= 3.5166700000000
+  SEA1DM_V_density_sea1d(116)= 3.5106100000000
+  SEA1DM_V_density_sea1d(117)= 3.5045500000000
+  SEA1DM_V_density_sea1d(118)= 3.4984900000000
+  SEA1DM_V_density_sea1d(119)= 3.4924300000000
+  SEA1DM_V_density_sea1d(120)= 3.4863800000000
+  SEA1DM_V_density_sea1d(121)= 3.4803200000000
+  SEA1DM_V_density_sea1d(122)= 3.4742600000000
+  SEA1DM_V_density_sea1d(123)= 3.4682000000000
+  SEA1DM_V_density_sea1d(124)= 3.4621400000000
+  SEA1DM_V_density_sea1d(125)= 3.4560800000000
+  SEA1DM_V_density_sea1d(126)= 3.4500200000000
+  SEA1DM_V_density_sea1d(127)= 3.4439700000000
+  SEA1DM_V_density_sea1d(128)= 3.4379100000000
+  SEA1DM_V_density_sea1d(129)= 3.4318500000000
+  SEA1DM_V_density_sea1d(130)= 3.4257900000000
+  SEA1DM_V_density_sea1d(131)= 3.4197300000000
+  SEA1DM_V_density_sea1d(132)= 3.4136800000000
+  SEA1DM_V_density_sea1d(133)= 3.4076200000000
+  SEA1DM_V_density_sea1d(134)= 3.4015600000000
+  SEA1DM_V_density_sea1d(135)= 3.3955000000000
+  SEA1DM_V_density_sea1d(136)= 3.3894400000000
+  SEA1DM_V_density_sea1d(137)= 3.3833800000000
+  SEA1DM_V_density_sea1d(138)= 3.3773200000000
+  SEA1DM_V_density_sea1d(139)= 3.3712600000000
+  SEA1DM_V_density_sea1d(140)= 3.3652100000000
+  SEA1DM_V_density_sea1d(141)= 3.3591500000000
+  SEA1DM_V_density_sea1d(142)= 3.3530900000000
+  SEA1DM_V_density_sea1d(143)= 3.3470300000000
+  SEA1DM_V_density_sea1d(144)= 3.3409700000000
+  SEA1DM_V_density_sea1d(145)= 3.3349100000000
+  SEA1DM_V_density_sea1d(146)= 3.3288500000000
+  SEA1DM_V_density_sea1d(147)= 3.3288500000000
+  SEA1DM_V_density_sea1d(148)= 3.3227900000000
+  SEA1DM_V_density_sea1d(149)= 3.3227900000000
+  SEA1DM_V_density_sea1d(150)= 3.3227900000000
+  SEA1DM_V_density_sea1d(151)= 3.3227900000000
+  SEA1DM_V_density_sea1d(152)= 2.8500000000000
+  SEA1DM_V_density_sea1d(153)= 2.8500000000000
+  SEA1DM_V_density_sea1d(154)= 2.8500000000000
+  SEA1DM_V_density_sea1d(155)= 2.8500000000000
+  SEA1DM_V_density_sea1d(156)= 2.8500000000000
+  SEA1DM_V_density_sea1d(157)= 2.8500000000000
+  SEA1DM_V_density_sea1d(158)= 2.8500000000000
+  SEA1DM_V_density_sea1d(159)= 2.8500000000000
+  SEA1DM_V_density_sea1d(160)= 2.8500000000000
+  SEA1DM_V_density_sea1d(161)= 2.8500000000000
+  SEA1DM_V_density_sea1d(162)= 2.8500000000000
+  SEA1DM_V_density_sea1d(163)= 2.8500000000000
 
-  SEA1DM_V%vp_sea1d(1)= 11.2409400000000
-  SEA1DM_V%vp_sea1d(2)= 11.2398900000000
-  SEA1DM_V%vp_sea1d(3)= 11.2367600000000
-  SEA1DM_V%vp_sea1d(4)= 11.2315600000000
-  SEA1DM_V%vp_sea1d(5)= 11.2242700000000
-  SEA1DM_V%vp_sea1d(6)= 11.2149200000000
-  SEA1DM_V%vp_sea1d(7)= 11.2034800000000
-  SEA1DM_V%vp_sea1d(8)= 11.1899700000000
-  SEA1DM_V%vp_sea1d(9)= 11.1743800000000
-  SEA1DM_V%vp_sea1d(10)= 11.1567200000000
-  SEA1DM_V%vp_sea1d(11)= 11.1369900000000
-  SEA1DM_V%vp_sea1d(12)= 11.1151700000000
-  SEA1DM_V%vp_sea1d(13)= 11.0914200000000
-  SEA1DM_V%vp_sea1d(14)= 10.2577900000000
-  SEA1DM_V%vp_sea1d(15)= 10.2317700000000
-  SEA1DM_V%vp_sea1d(16)= 10.1991900000000
-  SEA1DM_V%vp_sea1d(17)= 10.1600600000000
-  SEA1DM_V%vp_sea1d(18)= 10.1143700000000
-  SEA1DM_V%vp_sea1d(19)= 10.0621400000000
-  SEA1DM_V%vp_sea1d(20)= 10.0033600000000
-  SEA1DM_V%vp_sea1d(21)= 9.9380100000000
-  SEA1DM_V%vp_sea1d(22)= 9.8661300000000
-  SEA1DM_V%vp_sea1d(23)= 9.7876800000000
-  SEA1DM_V%vp_sea1d(24)= 9.7026900000000
-  SEA1DM_V%vp_sea1d(25)= 9.6111500000000
-  SEA1DM_V%vp_sea1d(26)= 9.5130500000000
-  SEA1DM_V%vp_sea1d(27)= 9.4084000000000
-  SEA1DM_V%vp_sea1d(28)= 9.2972000000000
-  SEA1DM_V%vp_sea1d(29)= 9.1794500000000
-  SEA1DM_V%vp_sea1d(30)= 9.0551400000000
-  SEA1DM_V%vp_sea1d(31)= 8.9242800000000
-  SEA1DM_V%vp_sea1d(32)= 8.7868700000000
-  SEA1DM_V%vp_sea1d(33)= 8.6429000000000
-  SEA1DM_V%vp_sea1d(34)= 8.4923900000000
-  SEA1DM_V%vp_sea1d(35)= 8.3353300000000
-  SEA1DM_V%vp_sea1d(36)= 8.1717000000000
-  SEA1DM_V%vp_sea1d(37)= 8.0022600000000
-  SEA1DM_V%vp_sea1d(38)= 13.7318200000000
-  SEA1DM_V%vp_sea1d(39)= 13.6839600000000
-  SEA1DM_V%vp_sea1d(40)= 13.6355700000000
-  SEA1DM_V%vp_sea1d(41)= 13.5866700000000
-  SEA1DM_V%vp_sea1d(42)= 13.5372000000000
-  SEA1DM_V%vp_sea1d(43)= 13.4871700000000
-  SEA1DM_V%vp_sea1d(44)= 13.4365700000000
-  SEA1DM_V%vp_sea1d(45)= 13.3853700000000
-  SEA1DM_V%vp_sea1d(46)= 13.3335400000000
-  SEA1DM_V%vp_sea1d(47)= 13.2811000000000
-  SEA1DM_V%vp_sea1d(48)= 13.2280100000000
-  SEA1DM_V%vp_sea1d(49)= 13.1742700000000
-  SEA1DM_V%vp_sea1d(50)= 13.1198500000000
-  SEA1DM_V%vp_sea1d(51)= 13.0647300000000
-  SEA1DM_V%vp_sea1d(52)= 13.0089100000000
-  SEA1DM_V%vp_sea1d(53)= 12.9523700000000
-  SEA1DM_V%vp_sea1d(54)= 12.8951000000000
-  SEA1DM_V%vp_sea1d(55)= 12.8370600000000
-  SEA1DM_V%vp_sea1d(56)= 12.7782600000000
-  SEA1DM_V%vp_sea1d(57)= 12.7186700000000
-  SEA1DM_V%vp_sea1d(58)= 12.6582800000000
-  SEA1DM_V%vp_sea1d(59)= 12.5970700000000
-  SEA1DM_V%vp_sea1d(60)= 12.5350400000000
-  SEA1DM_V%vp_sea1d(61)= 12.4721600000000
-  SEA1DM_V%vp_sea1d(62)= 12.4084000000000
-  SEA1DM_V%vp_sea1d(63)= 12.3437700000000
-  SEA1DM_V%vp_sea1d(64)= 12.2782500000000
-  SEA1DM_V%vp_sea1d(65)= 12.2118200000000
-  SEA1DM_V%vp_sea1d(66)= 12.1444600000000
-  SEA1DM_V%vp_sea1d(67)= 12.0761600000000
-  SEA1DM_V%vp_sea1d(68)= 12.0069000000000
-  SEA1DM_V%vp_sea1d(69)= 11.9366700000000
-  SEA1DM_V%vp_sea1d(70)= 11.8654400000000
-  SEA1DM_V%vp_sea1d(71)= 11.7932100000000
-  SEA1DM_V%vp_sea1d(72)= 11.7199700000000
-  SEA1DM_V%vp_sea1d(73)= 11.6456800000000
-  SEA1DM_V%vp_sea1d(74)= 11.5703400000000
-  SEA1DM_V%vp_sea1d(75)= 11.4939400000000
-  SEA1DM_V%vp_sea1d(76)= 11.4164500000000
-  SEA1DM_V%vp_sea1d(77)= 11.3378700000000
-  SEA1DM_V%vp_sea1d(78)= 11.2581700000000
-  SEA1DM_V%vp_sea1d(79)= 11.1773300000000
-  SEA1DM_V%vp_sea1d(80)= 11.0953600000000
-  SEA1DM_V%vp_sea1d(81)= 11.0122200000000
-  SEA1DM_V%vp_sea1d(82)= 10.9280200000000
-  SEA1DM_V%vp_sea1d(83)= 10.9113000000000
-  SEA1DM_V%vp_sea1d(84)= 10.0182900000000
-  SEA1DM_V%vp_sea1d(85)= 9.9989600000000
-  SEA1DM_V%vp_sea1d(86)= 9.9796300000000
-  SEA1DM_V%vp_sea1d(87)= 9.9603000000000
-  SEA1DM_V%vp_sea1d(88)= 9.9409700000000
-  SEA1DM_V%vp_sea1d(89)= 9.9216400000000
-  SEA1DM_V%vp_sea1d(90)= 9.9023100000000
-  SEA1DM_V%vp_sea1d(91)= 9.8829800000000
-  SEA1DM_V%vp_sea1d(92)= 9.8636600000000
-  SEA1DM_V%vp_sea1d(93)= 9.8443300000000
-  SEA1DM_V%vp_sea1d(94)= 9.8250000000000
-  SEA1DM_V%vp_sea1d(95)= 9.8056700000000
-  SEA1DM_V%vp_sea1d(96)= 9.7863400000000
-  SEA1DM_V%vp_sea1d(97)= 9.7670100000000
-  SEA1DM_V%vp_sea1d(98)= 9.7476800000000
-  SEA1DM_V%vp_sea1d(99)= 9.7283500000000
-  SEA1DM_V%vp_sea1d(100)= 9.7090300000000
-  SEA1DM_V%vp_sea1d(101)= 9.6897000000000
-  SEA1DM_V%vp_sea1d(102)= 9.6703700000000
-  SEA1DM_V%vp_sea1d(103)= 9.6510400000000
-  SEA1DM_V%vp_sea1d(104)= 9.6317100000000
-  SEA1DM_V%vp_sea1d(105)= 9.6123800000000
-  SEA1DM_V%vp_sea1d(106)= 9.5930500000000
-  SEA1DM_V%vp_sea1d(107)= 9.5737200000000
-  SEA1DM_V%vp_sea1d(108)= 9.5543900000000
-  SEA1DM_V%vp_sea1d(109)= 9.5350600000000
-  SEA1DM_V%vp_sea1d(110)= 9.0766800000000
-  SEA1DM_V%vp_sea1d(111)= 9.0188500000000
-  SEA1DM_V%vp_sea1d(112)= 8.9610200000000
-  SEA1DM_V%vp_sea1d(113)= 8.9031800000000
-  SEA1DM_V%vp_sea1d(114)= 8.8453500000000
-  SEA1DM_V%vp_sea1d(115)= 8.7875100000000
-  SEA1DM_V%vp_sea1d(116)= 8.7296800000000
-  SEA1DM_V%vp_sea1d(117)= 8.6718500000000
-  SEA1DM_V%vp_sea1d(118)= 8.6140100000000
-  SEA1DM_V%vp_sea1d(119)= 8.5561800000000
-  SEA1DM_V%vp_sea1d(120)= 8.4983400000000
-  SEA1DM_V%vp_sea1d(121)= 8.4405100000000
-  SEA1DM_V%vp_sea1d(122)= 8.3826700000000
-  SEA1DM_V%vp_sea1d(123)= 8.3248400000000
-  SEA1DM_V%vp_sea1d(124)= 8.2670100000000
-  SEA1DM_V%vp_sea1d(125)= 8.2091700000000
-  SEA1DM_V%vp_sea1d(126)= 8.1513400000000
-  SEA1DM_V%vp_sea1d(127)= 8.0935000000000
-  SEA1DM_V%vp_sea1d(128)= 8.0356700000000
-  SEA1DM_V%vp_sea1d(129)= 7.9778300000000
-  SEA1DM_V%vp_sea1d(130)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(131)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(132)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(133)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(134)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(135)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(136)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(137)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(138)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(139)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(140)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(141)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(142)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(143)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(144)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(145)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(146)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(147)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(148)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(149)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(150)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(151)= 7.9200000000000
-  SEA1DM_V%vp_sea1d(152)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(153)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(154)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(155)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(156)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(157)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(158)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(159)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(160)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(161)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(162)= 6.4000000000000
-  SEA1DM_V%vp_sea1d(163)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(1)= 11.2409400000000
+  SEA1DM_V_vp_sea1d(2)= 11.2398900000000
+  SEA1DM_V_vp_sea1d(3)= 11.2367600000000
+  SEA1DM_V_vp_sea1d(4)= 11.2315600000000
+  SEA1DM_V_vp_sea1d(5)= 11.2242700000000
+  SEA1DM_V_vp_sea1d(6)= 11.2149200000000
+  SEA1DM_V_vp_sea1d(7)= 11.2034800000000
+  SEA1DM_V_vp_sea1d(8)= 11.1899700000000
+  SEA1DM_V_vp_sea1d(9)= 11.1743800000000
+  SEA1DM_V_vp_sea1d(10)= 11.1567200000000
+  SEA1DM_V_vp_sea1d(11)= 11.1369900000000
+  SEA1DM_V_vp_sea1d(12)= 11.1151700000000
+  SEA1DM_V_vp_sea1d(13)= 11.0914200000000
+  SEA1DM_V_vp_sea1d(14)= 10.2577900000000
+  SEA1DM_V_vp_sea1d(15)= 10.2317700000000
+  SEA1DM_V_vp_sea1d(16)= 10.1991900000000
+  SEA1DM_V_vp_sea1d(17)= 10.1600600000000
+  SEA1DM_V_vp_sea1d(18)= 10.1143700000000
+  SEA1DM_V_vp_sea1d(19)= 10.0621400000000
+  SEA1DM_V_vp_sea1d(20)= 10.0033600000000
+  SEA1DM_V_vp_sea1d(21)= 9.9380100000000
+  SEA1DM_V_vp_sea1d(22)= 9.8661300000000
+  SEA1DM_V_vp_sea1d(23)= 9.7876800000000
+  SEA1DM_V_vp_sea1d(24)= 9.7026900000000
+  SEA1DM_V_vp_sea1d(25)= 9.6111500000000
+  SEA1DM_V_vp_sea1d(26)= 9.5130500000000
+  SEA1DM_V_vp_sea1d(27)= 9.4084000000000
+  SEA1DM_V_vp_sea1d(28)= 9.2972000000000
+  SEA1DM_V_vp_sea1d(29)= 9.1794500000000
+  SEA1DM_V_vp_sea1d(30)= 9.0551400000000
+  SEA1DM_V_vp_sea1d(31)= 8.9242800000000
+  SEA1DM_V_vp_sea1d(32)= 8.7868700000000
+  SEA1DM_V_vp_sea1d(33)= 8.6429000000000
+  SEA1DM_V_vp_sea1d(34)= 8.4923900000000
+  SEA1DM_V_vp_sea1d(35)= 8.3353300000000
+  SEA1DM_V_vp_sea1d(36)= 8.1717000000000
+  SEA1DM_V_vp_sea1d(37)= 8.0022600000000
+  SEA1DM_V_vp_sea1d(38)= 13.7318200000000
+  SEA1DM_V_vp_sea1d(39)= 13.6839600000000
+  SEA1DM_V_vp_sea1d(40)= 13.6355700000000
+  SEA1DM_V_vp_sea1d(41)= 13.5866700000000
+  SEA1DM_V_vp_sea1d(42)= 13.5372000000000
+  SEA1DM_V_vp_sea1d(43)= 13.4871700000000
+  SEA1DM_V_vp_sea1d(44)= 13.4365700000000
+  SEA1DM_V_vp_sea1d(45)= 13.3853700000000
+  SEA1DM_V_vp_sea1d(46)= 13.3335400000000
+  SEA1DM_V_vp_sea1d(47)= 13.2811000000000
+  SEA1DM_V_vp_sea1d(48)= 13.2280100000000
+  SEA1DM_V_vp_sea1d(49)= 13.1742700000000
+  SEA1DM_V_vp_sea1d(50)= 13.1198500000000
+  SEA1DM_V_vp_sea1d(51)= 13.0647300000000
+  SEA1DM_V_vp_sea1d(52)= 13.0089100000000
+  SEA1DM_V_vp_sea1d(53)= 12.9523700000000
+  SEA1DM_V_vp_sea1d(54)= 12.8951000000000
+  SEA1DM_V_vp_sea1d(55)= 12.8370600000000
+  SEA1DM_V_vp_sea1d(56)= 12.7782600000000
+  SEA1DM_V_vp_sea1d(57)= 12.7186700000000
+  SEA1DM_V_vp_sea1d(58)= 12.6582800000000
+  SEA1DM_V_vp_sea1d(59)= 12.5970700000000
+  SEA1DM_V_vp_sea1d(60)= 12.5350400000000
+  SEA1DM_V_vp_sea1d(61)= 12.4721600000000
+  SEA1DM_V_vp_sea1d(62)= 12.4084000000000
+  SEA1DM_V_vp_sea1d(63)= 12.3437700000000
+  SEA1DM_V_vp_sea1d(64)= 12.2782500000000
+  SEA1DM_V_vp_sea1d(65)= 12.2118200000000
+  SEA1DM_V_vp_sea1d(66)= 12.1444600000000
+  SEA1DM_V_vp_sea1d(67)= 12.0761600000000
+  SEA1DM_V_vp_sea1d(68)= 12.0069000000000
+  SEA1DM_V_vp_sea1d(69)= 11.9366700000000
+  SEA1DM_V_vp_sea1d(70)= 11.8654400000000
+  SEA1DM_V_vp_sea1d(71)= 11.7932100000000
+  SEA1DM_V_vp_sea1d(72)= 11.7199700000000
+  SEA1DM_V_vp_sea1d(73)= 11.6456800000000
+  SEA1DM_V_vp_sea1d(74)= 11.5703400000000
+  SEA1DM_V_vp_sea1d(75)= 11.4939400000000
+  SEA1DM_V_vp_sea1d(76)= 11.4164500000000
+  SEA1DM_V_vp_sea1d(77)= 11.3378700000000
+  SEA1DM_V_vp_sea1d(78)= 11.2581700000000
+  SEA1DM_V_vp_sea1d(79)= 11.1773300000000
+  SEA1DM_V_vp_sea1d(80)= 11.0953600000000
+  SEA1DM_V_vp_sea1d(81)= 11.0122200000000
+  SEA1DM_V_vp_sea1d(82)= 10.9280200000000
+  SEA1DM_V_vp_sea1d(83)= 10.9113000000000
+  SEA1DM_V_vp_sea1d(84)= 10.0182900000000
+  SEA1DM_V_vp_sea1d(85)= 9.9989600000000
+  SEA1DM_V_vp_sea1d(86)= 9.9796300000000
+  SEA1DM_V_vp_sea1d(87)= 9.9603000000000
+  SEA1DM_V_vp_sea1d(88)= 9.9409700000000
+  SEA1DM_V_vp_sea1d(89)= 9.9216400000000
+  SEA1DM_V_vp_sea1d(90)= 9.9023100000000
+  SEA1DM_V_vp_sea1d(91)= 9.8829800000000
+  SEA1DM_V_vp_sea1d(92)= 9.8636600000000
+  SEA1DM_V_vp_sea1d(93)= 9.8443300000000
+  SEA1DM_V_vp_sea1d(94)= 9.8250000000000
+  SEA1DM_V_vp_sea1d(95)= 9.8056700000000
+  SEA1DM_V_vp_sea1d(96)= 9.7863400000000
+  SEA1DM_V_vp_sea1d(97)= 9.7670100000000
+  SEA1DM_V_vp_sea1d(98)= 9.7476800000000
+  SEA1DM_V_vp_sea1d(99)= 9.7283500000000
+  SEA1DM_V_vp_sea1d(100)= 9.7090300000000
+  SEA1DM_V_vp_sea1d(101)= 9.6897000000000
+  SEA1DM_V_vp_sea1d(102)= 9.6703700000000
+  SEA1DM_V_vp_sea1d(103)= 9.6510400000000
+  SEA1DM_V_vp_sea1d(104)= 9.6317100000000
+  SEA1DM_V_vp_sea1d(105)= 9.6123800000000
+  SEA1DM_V_vp_sea1d(106)= 9.5930500000000
+  SEA1DM_V_vp_sea1d(107)= 9.5737200000000
+  SEA1DM_V_vp_sea1d(108)= 9.5543900000000
+  SEA1DM_V_vp_sea1d(109)= 9.5350600000000
+  SEA1DM_V_vp_sea1d(110)= 9.0766800000000
+  SEA1DM_V_vp_sea1d(111)= 9.0188500000000
+  SEA1DM_V_vp_sea1d(112)= 8.9610200000000
+  SEA1DM_V_vp_sea1d(113)= 8.9031800000000
+  SEA1DM_V_vp_sea1d(114)= 8.8453500000000
+  SEA1DM_V_vp_sea1d(115)= 8.7875100000000
+  SEA1DM_V_vp_sea1d(116)= 8.7296800000000
+  SEA1DM_V_vp_sea1d(117)= 8.6718500000000
+  SEA1DM_V_vp_sea1d(118)= 8.6140100000000
+  SEA1DM_V_vp_sea1d(119)= 8.5561800000000
+  SEA1DM_V_vp_sea1d(120)= 8.4983400000000
+  SEA1DM_V_vp_sea1d(121)= 8.4405100000000
+  SEA1DM_V_vp_sea1d(122)= 8.3826700000000
+  SEA1DM_V_vp_sea1d(123)= 8.3248400000000
+  SEA1DM_V_vp_sea1d(124)= 8.2670100000000
+  SEA1DM_V_vp_sea1d(125)= 8.2091700000000
+  SEA1DM_V_vp_sea1d(126)= 8.1513400000000
+  SEA1DM_V_vp_sea1d(127)= 8.0935000000000
+  SEA1DM_V_vp_sea1d(128)= 8.0356700000000
+  SEA1DM_V_vp_sea1d(129)= 7.9778300000000
+  SEA1DM_V_vp_sea1d(130)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(131)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(132)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(133)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(134)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(135)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(136)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(137)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(138)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(139)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(140)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(141)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(142)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(143)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(144)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(145)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(146)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(147)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(148)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(149)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(150)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(151)= 7.9200000000000
+  SEA1DM_V_vp_sea1d(152)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(153)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(154)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(155)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(156)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(157)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(158)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(159)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(160)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(161)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(162)= 6.4000000000000
+  SEA1DM_V_vp_sea1d(163)= 6.4000000000000
 
-  SEA1DM_V%vs_sea1d(1)= 3.5645400000000
-  SEA1DM_V%vs_sea1d(2)= 3.5636500000000
-  SEA1DM_V%vs_sea1d(3)= 3.5610200000000
-  SEA1DM_V%vs_sea1d(4)= 3.5566300000000
-  SEA1DM_V%vs_sea1d(5)= 3.5504900000000
-  SEA1DM_V%vs_sea1d(6)= 3.5426100000000
-  SEA1DM_V%vs_sea1d(7)= 3.5329700000000
-  SEA1DM_V%vs_sea1d(8)= 3.5215900000000
-  SEA1DM_V%vs_sea1d(9)= 3.5084500000000
-  SEA1DM_V%vs_sea1d(10)= 3.4935700000000
-  SEA1DM_V%vs_sea1d(11)= 3.4769300000000
-  SEA1DM_V%vs_sea1d(12)= 3.4585500000000
-  SEA1DM_V%vs_sea1d(13)= 3.4385400000000
-  SEA1DM_V%vs_sea1d(14)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(15)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(16)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(17)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(18)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(19)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(20)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(21)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(22)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(23)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(24)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(25)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(26)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(27)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(28)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(29)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(30)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(31)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(32)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(33)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(34)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(35)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(36)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(37)= 0.0000000000000
-  SEA1DM_V%vs_sea1d(38)= 7.2433800000000
-  SEA1DM_V%vs_sea1d(39)= 7.2260300000000
-  SEA1DM_V%vs_sea1d(40)= 7.2085500000000
-  SEA1DM_V%vs_sea1d(41)= 7.1909200000000
-  SEA1DM_V%vs_sea1d(42)= 7.1731300000000
-  SEA1DM_V%vs_sea1d(43)= 7.1551600000000
-  SEA1DM_V%vs_sea1d(44)= 7.1370000000000
-  SEA1DM_V%vs_sea1d(45)= 7.1186000000000
-  SEA1DM_V%vs_sea1d(46)= 7.0999800000000
-  SEA1DM_V%vs_sea1d(47)= 7.0810900000000
-  SEA1DM_V%vs_sea1d(48)= 7.0619300000000
-  SEA1DM_V%vs_sea1d(49)= 7.0424700000000
-  SEA1DM_V%vs_sea1d(50)= 7.0227000000000
-  SEA1DM_V%vs_sea1d(51)= 7.0026000000000
-  SEA1DM_V%vs_sea1d(52)= 6.9821500000000
-  SEA1DM_V%vs_sea1d(53)= 6.9613400000000
-  SEA1DM_V%vs_sea1d(54)= 6.9401300000000
-  SEA1DM_V%vs_sea1d(55)= 6.9185200000000
-  SEA1DM_V%vs_sea1d(56)= 6.8964900000000
-  SEA1DM_V%vs_sea1d(57)= 6.8740200000000
-  SEA1DM_V%vs_sea1d(58)= 6.8510900000000
-  SEA1DM_V%vs_sea1d(59)= 6.8276700000000
-  SEA1DM_V%vs_sea1d(60)= 6.8037600000000
-  SEA1DM_V%vs_sea1d(61)= 6.7793300000000
-  SEA1DM_V%vs_sea1d(62)= 6.7543700000000
-  SEA1DM_V%vs_sea1d(63)= 6.7288500000000
-  SEA1DM_V%vs_sea1d(64)= 6.7027700000000
-  SEA1DM_V%vs_sea1d(65)= 6.6760900000000
-  SEA1DM_V%vs_sea1d(66)= 6.6488100000000
-  SEA1DM_V%vs_sea1d(67)= 6.6208900000000
-  SEA1DM_V%vs_sea1d(68)= 6.5923300000000
-  SEA1DM_V%vs_sea1d(69)= 6.5631100000000
-  SEA1DM_V%vs_sea1d(70)= 6.5332000000000
-  SEA1DM_V%vs_sea1d(71)= 6.5026000000000
-  SEA1DM_V%vs_sea1d(72)= 6.4712600000000
-  SEA1DM_V%vs_sea1d(73)= 6.4392000000000
-  SEA1DM_V%vs_sea1d(74)= 6.4063800000000
-  SEA1DM_V%vs_sea1d(75)= 6.3727800000000
-  SEA1DM_V%vs_sea1d(76)= 6.3383900000000
-  SEA1DM_V%vs_sea1d(77)= 6.3031900000000
-  SEA1DM_V%vs_sea1d(78)= 6.2671500000000
-  SEA1DM_V%vs_sea1d(79)= 6.2302600000000
-  SEA1DM_V%vs_sea1d(80)= 6.1925100000000
-  SEA1DM_V%vs_sea1d(81)= 6.1538700000000
-  SEA1DM_V%vs_sea1d(82)= 6.1144200000000
-  SEA1DM_V%vs_sea1d(83)= 6.1065800000000
-  SEA1DM_V%vs_sea1d(84)= 5.4546300000000
-  SEA1DM_V%vs_sea1d(85)= 5.4378400000000
-  SEA1DM_V%vs_sea1d(86)= 5.4210500000000
-  SEA1DM_V%vs_sea1d(87)= 5.4042500000000
-  SEA1DM_V%vs_sea1d(88)= 5.3874600000000
-  SEA1DM_V%vs_sea1d(89)= 5.3706700000000
-  SEA1DM_V%vs_sea1d(90)= 5.3538800000000
-  SEA1DM_V%vs_sea1d(91)= 5.3370900000000
-  SEA1DM_V%vs_sea1d(92)= 5.3203000000000
-  SEA1DM_V%vs_sea1d(93)= 5.3035100000000
-  SEA1DM_V%vs_sea1d(94)= 5.2867200000000
-  SEA1DM_V%vs_sea1d(95)= 5.2699300000000
-  SEA1DM_V%vs_sea1d(96)= 5.2531400000000
-  SEA1DM_V%vs_sea1d(97)= 5.2363500000000
-  SEA1DM_V%vs_sea1d(98)= 5.2195600000000
-  SEA1DM_V%vs_sea1d(99)= 5.2027700000000
-  SEA1DM_V%vs_sea1d(100)= 5.1859800000000
-  SEA1DM_V%vs_sea1d(101)= 5.1691900000000
-  SEA1DM_V%vs_sea1d(102)= 5.1524000000000
-  SEA1DM_V%vs_sea1d(103)= 5.1356100000000
-  SEA1DM_V%vs_sea1d(104)= 5.1188200000000
-  SEA1DM_V%vs_sea1d(105)= 5.1020200000000
-  SEA1DM_V%vs_sea1d(106)= 5.0852300000000
-  SEA1DM_V%vs_sea1d(107)= 5.0684400000000
-  SEA1DM_V%vs_sea1d(108)= 5.0516500000000
-  SEA1DM_V%vs_sea1d(109)= 5.0348600000000
-  SEA1DM_V%vs_sea1d(110)= 4.7959100000000
-  SEA1DM_V%vs_sea1d(111)= 4.7761200000000
-  SEA1DM_V%vs_sea1d(112)= 4.7563200000000
-  SEA1DM_V%vs_sea1d(113)= 4.7365300000000
-  SEA1DM_V%vs_sea1d(114)= 4.7167300000000
-  SEA1DM_V%vs_sea1d(115)= 4.6969400000000
-  SEA1DM_V%vs_sea1d(116)= 4.6771400000000
-  SEA1DM_V%vs_sea1d(117)= 4.6573400000000
-  SEA1DM_V%vs_sea1d(118)= 4.6375500000000
-  SEA1DM_V%vs_sea1d(119)= 4.6177500000000
-  SEA1DM_V%vs_sea1d(120)= 4.5979600000000
-  SEA1DM_V%vs_sea1d(121)= 4.5781600000000
-  SEA1DM_V%vs_sea1d(122)= 4.5583700000000
-  SEA1DM_V%vs_sea1d(123)= 4.5385700000000
-  SEA1DM_V%vs_sea1d(124)= 4.5187700000000
-  SEA1DM_V%vs_sea1d(125)= 4.4989800000000
-  SEA1DM_V%vs_sea1d(126)= 4.4791800000000
-  SEA1DM_V%vs_sea1d(127)= 4.4593900000000
-  SEA1DM_V%vs_sea1d(128)= 4.4395900000000
-  SEA1DM_V%vs_sea1d(129)= 4.4198000000000
-  SEA1DM_V%vs_sea1d(130)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(131)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(132)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(133)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(134)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(135)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(136)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(137)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(138)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(139)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(140)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(141)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(142)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(143)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(144)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(145)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(146)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(147)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(148)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(149)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(150)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(151)= 4.4000000000000
-  SEA1DM_V%vs_sea1d(152)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(153)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(154)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(155)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(156)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(157)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(158)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(159)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(160)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(161)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(162)= 3.4500000000000
-  SEA1DM_V%vs_sea1d(163)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(1)= 3.5645400000000
+  SEA1DM_V_vs_sea1d(2)= 3.5636500000000
+  SEA1DM_V_vs_sea1d(3)= 3.5610200000000
+  SEA1DM_V_vs_sea1d(4)= 3.5566300000000
+  SEA1DM_V_vs_sea1d(5)= 3.5504900000000
+  SEA1DM_V_vs_sea1d(6)= 3.5426100000000
+  SEA1DM_V_vs_sea1d(7)= 3.5329700000000
+  SEA1DM_V_vs_sea1d(8)= 3.5215900000000
+  SEA1DM_V_vs_sea1d(9)= 3.5084500000000
+  SEA1DM_V_vs_sea1d(10)= 3.4935700000000
+  SEA1DM_V_vs_sea1d(11)= 3.4769300000000
+  SEA1DM_V_vs_sea1d(12)= 3.4585500000000
+  SEA1DM_V_vs_sea1d(13)= 3.4385400000000
+  SEA1DM_V_vs_sea1d(14)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(15)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(16)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(17)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(18)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(19)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(20)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(21)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(22)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(23)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(24)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(25)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(26)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(27)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(28)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(29)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(30)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(31)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(32)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(33)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(34)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(35)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(36)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(37)= 0.0000000000000
+  SEA1DM_V_vs_sea1d(38)= 7.2433800000000
+  SEA1DM_V_vs_sea1d(39)= 7.2260300000000
+  SEA1DM_V_vs_sea1d(40)= 7.2085500000000
+  SEA1DM_V_vs_sea1d(41)= 7.1909200000000
+  SEA1DM_V_vs_sea1d(42)= 7.1731300000000
+  SEA1DM_V_vs_sea1d(43)= 7.1551600000000
+  SEA1DM_V_vs_sea1d(44)= 7.1370000000000
+  SEA1DM_V_vs_sea1d(45)= 7.1186000000000
+  SEA1DM_V_vs_sea1d(46)= 7.0999800000000
+  SEA1DM_V_vs_sea1d(47)= 7.0810900000000
+  SEA1DM_V_vs_sea1d(48)= 7.0619300000000
+  SEA1DM_V_vs_sea1d(49)= 7.0424700000000
+  SEA1DM_V_vs_sea1d(50)= 7.0227000000000
+  SEA1DM_V_vs_sea1d(51)= 7.0026000000000
+  SEA1DM_V_vs_sea1d(52)= 6.9821500000000
+  SEA1DM_V_vs_sea1d(53)= 6.9613400000000
+  SEA1DM_V_vs_sea1d(54)= 6.9401300000000
+  SEA1DM_V_vs_sea1d(55)= 6.9185200000000
+  SEA1DM_V_vs_sea1d(56)= 6.8964900000000
+  SEA1DM_V_vs_sea1d(57)= 6.8740200000000
+  SEA1DM_V_vs_sea1d(58)= 6.8510900000000
+  SEA1DM_V_vs_sea1d(59)= 6.8276700000000
+  SEA1DM_V_vs_sea1d(60)= 6.8037600000000
+  SEA1DM_V_vs_sea1d(61)= 6.7793300000000
+  SEA1DM_V_vs_sea1d(62)= 6.7543700000000
+  SEA1DM_V_vs_sea1d(63)= 6.7288500000000
+  SEA1DM_V_vs_sea1d(64)= 6.7027700000000
+  SEA1DM_V_vs_sea1d(65)= 6.6760900000000
+  SEA1DM_V_vs_sea1d(66)= 6.6488100000000
+  SEA1DM_V_vs_sea1d(67)= 6.6208900000000
+  SEA1DM_V_vs_sea1d(68)= 6.5923300000000
+  SEA1DM_V_vs_sea1d(69)= 6.5631100000000
+  SEA1DM_V_vs_sea1d(70)= 6.5332000000000
+  SEA1DM_V_vs_sea1d(71)= 6.5026000000000
+  SEA1DM_V_vs_sea1d(72)= 6.4712600000000
+  SEA1DM_V_vs_sea1d(73)= 6.4392000000000
+  SEA1DM_V_vs_sea1d(74)= 6.4063800000000
+  SEA1DM_V_vs_sea1d(75)= 6.3727800000000
+  SEA1DM_V_vs_sea1d(76)= 6.3383900000000
+  SEA1DM_V_vs_sea1d(77)= 6.3031900000000
+  SEA1DM_V_vs_sea1d(78)= 6.2671500000000
+  SEA1DM_V_vs_sea1d(79)= 6.2302600000000
+  SEA1DM_V_vs_sea1d(80)= 6.1925100000000
+  SEA1DM_V_vs_sea1d(81)= 6.1538700000000
+  SEA1DM_V_vs_sea1d(82)= 6.1144200000000
+  SEA1DM_V_vs_sea1d(83)= 6.1065800000000
+  SEA1DM_V_vs_sea1d(84)= 5.4546300000000
+  SEA1DM_V_vs_sea1d(85)= 5.4378400000000
+  SEA1DM_V_vs_sea1d(86)= 5.4210500000000
+  SEA1DM_V_vs_sea1d(87)= 5.4042500000000
+  SEA1DM_V_vs_sea1d(88)= 5.3874600000000
+  SEA1DM_V_vs_sea1d(89)= 5.3706700000000
+  SEA1DM_V_vs_sea1d(90)= 5.3538800000000
+  SEA1DM_V_vs_sea1d(91)= 5.3370900000000
+  SEA1DM_V_vs_sea1d(92)= 5.3203000000000
+  SEA1DM_V_vs_sea1d(93)= 5.3035100000000
+  SEA1DM_V_vs_sea1d(94)= 5.2867200000000
+  SEA1DM_V_vs_sea1d(95)= 5.2699300000000
+  SEA1DM_V_vs_sea1d(96)= 5.2531400000000
+  SEA1DM_V_vs_sea1d(97)= 5.2363500000000
+  SEA1DM_V_vs_sea1d(98)= 5.2195600000000
+  SEA1DM_V_vs_sea1d(99)= 5.2027700000000
+  SEA1DM_V_vs_sea1d(100)= 5.1859800000000
+  SEA1DM_V_vs_sea1d(101)= 5.1691900000000
+  SEA1DM_V_vs_sea1d(102)= 5.1524000000000
+  SEA1DM_V_vs_sea1d(103)= 5.1356100000000
+  SEA1DM_V_vs_sea1d(104)= 5.1188200000000
+  SEA1DM_V_vs_sea1d(105)= 5.1020200000000
+  SEA1DM_V_vs_sea1d(106)= 5.0852300000000
+  SEA1DM_V_vs_sea1d(107)= 5.0684400000000
+  SEA1DM_V_vs_sea1d(108)= 5.0516500000000
+  SEA1DM_V_vs_sea1d(109)= 5.0348600000000
+  SEA1DM_V_vs_sea1d(110)= 4.7959100000000
+  SEA1DM_V_vs_sea1d(111)= 4.7761200000000
+  SEA1DM_V_vs_sea1d(112)= 4.7563200000000
+  SEA1DM_V_vs_sea1d(113)= 4.7365300000000
+  SEA1DM_V_vs_sea1d(114)= 4.7167300000000
+  SEA1DM_V_vs_sea1d(115)= 4.6969400000000
+  SEA1DM_V_vs_sea1d(116)= 4.6771400000000
+  SEA1DM_V_vs_sea1d(117)= 4.6573400000000
+  SEA1DM_V_vs_sea1d(118)= 4.6375500000000
+  SEA1DM_V_vs_sea1d(119)= 4.6177500000000
+  SEA1DM_V_vs_sea1d(120)= 4.5979600000000
+  SEA1DM_V_vs_sea1d(121)= 4.5781600000000
+  SEA1DM_V_vs_sea1d(122)= 4.5583700000000
+  SEA1DM_V_vs_sea1d(123)= 4.5385700000000
+  SEA1DM_V_vs_sea1d(124)= 4.5187700000000
+  SEA1DM_V_vs_sea1d(125)= 4.4989800000000
+  SEA1DM_V_vs_sea1d(126)= 4.4791800000000
+  SEA1DM_V_vs_sea1d(127)= 4.4593900000000
+  SEA1DM_V_vs_sea1d(128)= 4.4395900000000
+  SEA1DM_V_vs_sea1d(129)= 4.4198000000000
+  SEA1DM_V_vs_sea1d(130)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(131)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(132)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(133)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(134)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(135)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(136)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(137)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(138)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(139)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(140)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(141)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(142)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(143)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(144)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(145)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(146)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(147)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(148)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(149)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(150)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(151)= 4.4000000000000
+  SEA1DM_V_vs_sea1d(152)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(153)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(154)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(155)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(156)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(157)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(158)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(159)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(160)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(161)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(162)= 3.4500000000000
+  SEA1DM_V_vs_sea1d(163)= 3.4500000000000
 
-  SEA1DM_V%Qkappa_sea1d(1)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(2)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(3)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(4)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(5)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(6)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(7)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(8)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(9)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(10)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(11)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(12)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(13)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(14)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(15)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(16)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(17)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(18)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(19)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(20)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(21)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(22)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(23)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(24)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(25)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(26)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(27)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(28)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(29)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(30)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(31)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(32)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(33)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(34)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(35)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(36)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(37)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(38)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(39)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(40)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(41)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(42)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(43)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(44)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(45)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(46)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(47)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(48)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(49)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(50)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(51)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(52)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(53)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(54)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(55)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(56)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(57)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(58)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(59)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(60)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(61)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(62)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(63)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(64)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(65)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(66)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(67)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(68)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(69)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(70)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(71)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(72)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(73)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(74)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(75)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(76)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(77)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(78)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(79)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(80)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(81)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(82)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(83)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(84)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(85)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(86)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(87)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(88)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(89)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(90)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(91)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(92)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(93)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(94)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(95)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(96)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(97)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(98)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(99)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(100)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(101)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(102)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(103)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(104)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(105)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(106)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(107)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(108)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(109)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(110)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(111)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(112)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(113)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(114)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(115)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(116)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(117)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(118)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(119)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(120)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(121)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(122)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(123)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(124)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(125)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(126)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(127)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(128)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(129)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(130)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(131)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(132)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(133)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(134)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(135)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(136)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(137)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(138)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(139)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(140)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(141)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(142)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(143)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(144)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(145)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(146)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(147)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(148)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(149)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(150)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(151)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(152)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(153)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(154)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(155)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(156)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(157)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(158)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(159)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(160)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(161)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(162)= 99999.0000000000000
-  SEA1DM_V%Qkappa_sea1d(163)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(1)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(2)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(3)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(4)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(5)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(6)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(7)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(8)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(9)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(10)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(11)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(12)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(13)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(14)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(15)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(16)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(17)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(18)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(19)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(20)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(21)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(22)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(23)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(24)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(25)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(26)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(27)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(28)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(29)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(30)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(31)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(32)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(33)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(34)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(35)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(36)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(37)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(38)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(39)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(40)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(41)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(42)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(43)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(44)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(45)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(46)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(47)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(48)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(49)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(50)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(51)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(52)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(53)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(54)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(55)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(56)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(57)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(58)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(59)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(60)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(61)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(62)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(63)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(64)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(65)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(66)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(67)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(68)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(69)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(70)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(71)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(72)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(73)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(74)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(75)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(76)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(77)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(78)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(79)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(80)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(81)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(82)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(83)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(84)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(85)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(86)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(87)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(88)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(89)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(90)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(91)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(92)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(93)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(94)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(95)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(96)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(97)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(98)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(99)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(100)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(101)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(102)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(103)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(104)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(105)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(106)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(107)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(108)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(109)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(110)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(111)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(112)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(113)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(114)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(115)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(116)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(117)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(118)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(119)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(120)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(121)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(122)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(123)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(124)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(125)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(126)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(127)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(128)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(129)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(130)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(131)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(132)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(133)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(134)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(135)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(136)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(137)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(138)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(139)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(140)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(141)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(142)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(143)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(144)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(145)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(146)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(147)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(148)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(149)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(150)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(151)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(152)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(153)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(154)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(155)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(156)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(157)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(158)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(159)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(160)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(161)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(162)= 99999.0000000000000
+  SEA1DM_V_Qkappa_sea1d(163)= 99999.0000000000000
 
-  SEA1DM_V%Qmu_sea1d(1)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(2)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(3)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(4)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(5)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(6)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(7)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(8)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(9)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(10)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(11)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(12)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(13)= 84.6000000000000
-  SEA1DM_V%Qmu_sea1d(14)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(15)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(16)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(17)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(18)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(19)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(20)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(21)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(22)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(23)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(24)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(25)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(26)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(27)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(28)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(29)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(30)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(31)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(32)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(33)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(34)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(35)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(36)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(37)= 0.0000000000000
-  SEA1DM_V%Qmu_sea1d(38)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(39)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(40)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(41)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(42)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(43)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(44)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(45)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(46)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(47)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(48)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(49)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(50)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(51)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(52)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(53)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(54)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(55)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(56)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(57)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(58)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(59)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(60)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(61)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(62)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(63)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(64)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(65)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(66)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(67)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(68)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(69)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(70)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(71)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(72)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(73)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(74)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(75)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(76)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(77)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(78)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(79)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(80)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(81)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(82)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(83)= 312.0000000000000
-  SEA1DM_V%Qmu_sea1d(84)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(85)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(86)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(87)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(88)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(89)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(90)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(91)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(92)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(93)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(94)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(95)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(96)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(97)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(98)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(99)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(100)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(101)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(102)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(103)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(104)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(105)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(106)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(107)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(108)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(109)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(110)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(111)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(112)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(113)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(114)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(115)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(116)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(117)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(118)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(119)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(120)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(121)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(122)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(123)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(124)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(125)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(126)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(127)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(128)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(129)= 143.0000000000000
-  SEA1DM_V%Qmu_sea1d(130)= 110.0000000000000
-  SEA1DM_V%Qmu_sea1d(131)= 80.0000000000000
-  SEA1DM_V%Qmu_sea1d(132)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(133)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(134)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(135)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(136)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(137)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(138)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(139)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(140)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(141)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(142)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(143)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(144)= 50.0000000000000
-  SEA1DM_V%Qmu_sea1d(145)= 100.0000000000000
-  SEA1DM_V%Qmu_sea1d(146)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(147)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(148)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(149)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(150)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(151)= 150.0000000000000
-  SEA1DM_V%Qmu_sea1d(152)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(153)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(154)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(155)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(156)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(157)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(158)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(159)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(160)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(161)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(162)= 300.0000000000000
-  SEA1DM_V%Qmu_sea1d(163)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(1)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(2)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(3)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(4)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(5)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(6)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(7)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(8)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(9)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(10)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(11)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(12)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(13)= 84.6000000000000
+  SEA1DM_V_Qmu_sea1d(14)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(15)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(16)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(17)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(18)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(19)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(20)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(21)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(22)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(23)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(24)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(25)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(26)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(27)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(28)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(29)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(30)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(31)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(32)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(33)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(34)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(35)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(36)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(37)= 0.0000000000000
+  SEA1DM_V_Qmu_sea1d(38)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(39)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(40)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(41)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(42)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(43)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(44)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(45)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(46)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(47)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(48)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(49)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(50)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(51)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(52)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(53)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(54)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(55)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(56)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(57)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(58)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(59)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(60)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(61)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(62)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(63)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(64)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(65)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(66)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(67)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(68)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(69)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(70)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(71)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(72)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(73)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(74)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(75)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(76)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(77)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(78)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(79)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(80)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(81)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(82)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(83)= 312.0000000000000
+  SEA1DM_V_Qmu_sea1d(84)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(85)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(86)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(87)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(88)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(89)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(90)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(91)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(92)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(93)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(94)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(95)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(96)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(97)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(98)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(99)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(100)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(101)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(102)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(103)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(104)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(105)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(106)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(107)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(108)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(109)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(110)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(111)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(112)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(113)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(114)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(115)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(116)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(117)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(118)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(119)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(120)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(121)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(122)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(123)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(124)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(125)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(126)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(127)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(128)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(129)= 143.0000000000000
+  SEA1DM_V_Qmu_sea1d(130)= 110.0000000000000
+  SEA1DM_V_Qmu_sea1d(131)= 80.0000000000000
+  SEA1DM_V_Qmu_sea1d(132)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(133)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(134)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(135)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(136)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(137)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(138)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(139)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(140)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(141)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(142)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(143)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(144)= 50.0000000000000
+  SEA1DM_V_Qmu_sea1d(145)= 100.0000000000000
+  SEA1DM_V_Qmu_sea1d(146)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(147)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(148)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(149)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(150)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(151)= 150.0000000000000
+  SEA1DM_V_Qmu_sea1d(152)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(153)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(154)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(155)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(156)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(157)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(158)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(159)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(160)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(161)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(162)= 300.0000000000000
+  SEA1DM_V_Qmu_sea1d(163)= 300.0000000000000
 
 ! strip the crust and replace it by mantle
   if (SUPPRESS_CRUSTAL_MESH .or. USE_EXTERNAL_CRUSTAL_MODEL) then
     do i=NR_SEA1D-12,NR_SEA1D
-      SEA1DM_V%density_sea1d(i) = SEA1DM_V%density_sea1d(NR_SEA1D-13)
-      SEA1DM_V%vp_sea1d(i) = SEA1DM_V%vp_sea1d(NR_SEA1D-13)
-      SEA1DM_V%vs_sea1d(i) = SEA1DM_V%vs_sea1d(NR_SEA1D-13)
-      SEA1DM_V%Qkappa_sea1d(i) = SEA1DM_V%Qkappa_sea1d(NR_SEA1D-13)
-      SEA1DM_V%Qmu_sea1d(i) = SEA1DM_V%Qmu_sea1d(NR_SEA1D-13)
+      SEA1DM_V_density_sea1d(i) = SEA1DM_V_density_sea1d(NR_SEA1D-13)
+      SEA1DM_V_vp_sea1d(i) = SEA1DM_V_vp_sea1d(NR_SEA1D-13)
+      SEA1DM_V_vs_sea1d(i) = SEA1DM_V_vs_sea1d(NR_SEA1D-13)
+      SEA1DM_V_Qkappa_sea1d(i) = SEA1DM_V_Qkappa_sea1d(NR_SEA1D-13)
+      SEA1DM_V_Qmu_sea1d(i) = SEA1DM_V_Qmu_sea1d(NR_SEA1D-13)
     enddo
   endif
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/save_arrays_solver.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/save_arrays_solver.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/save_arrays_solver.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -27,7 +27,6 @@
 
   subroutine save_arrays_solver(myrank,nspec,nglob,idoubling,ibool, &
                     iregion_code,xstore,ystore,zstore, &
-                    is_on_a_slice_edge, &
                     NSPEC2D_TOP,NSPEC2D_BOTTOM)
 
   use constants
@@ -70,9 +69,6 @@
   ! arrays with the mesh in double precision
   double precision,dimension(NGLLX,NGLLY,NGLLZ,nspec) :: xstore,ystore,zstore
 
-  ! this for non blocking MPI
-  logical, dimension(nspec) :: is_on_a_slice_edge
-
   ! boundary parameters locator
   integer :: NSPEC2D_TOP,NSPEC2D_BOTTOM
 
@@ -110,7 +106,7 @@
   write(27) rhostore
   write(27) kappavstore
 
-  if(HETEROGEN_3D_MANTLE) then
+  if(HETEROGEN_3D_MANTLE .and. iregion_code == IREGION_CRUST_MANTLE) then
      open(unit=29,file=prname(1:len_trim(prname))//'dvp.bin', &
           status='unknown',form='unformatted',action='write',iostat=ier)
      if( ier /= 0 ) call exit_mpi(myrank,'error opening dvp.bin file')
@@ -122,7 +118,10 @@
   ! other terms needed in the solid regions only
   if(iregion_code /= IREGION_OUTER_CORE) then
 
-    if(.not. (ANISOTROPIC_3D_MANTLE .and. iregion_code == IREGION_CRUST_MANTLE)) write(27) muvstore
+    ! note: muvstore needed for Q_mu shear attenuation in inner core
+    if(.not. (ANISOTROPIC_3D_MANTLE .and. iregion_code == IREGION_CRUST_MANTLE)) then
+      write(27) muvstore
+    endif
 
     !   save anisotropy in the mantle only
     if(TRANSVERSE_ISOTROPY) then
@@ -267,8 +266,9 @@
   write(27) rmassz
 
   write(27) ibool
+
   write(27) idoubling
-  write(27) is_on_a_slice_edge
+
   write(27) ispec_is_tiso
 
   close(27)
@@ -530,3 +530,65 @@
 
   end subroutine save_MPI_arrays
 
+
+!
+!-------------------------------------------------------------------------------------------------
+!
+
+  subroutine save_arrays_solver_boundary()
+
+! saves arrays for boundaries such as MOHO, 400 and 670 discontinuities
+
+  use meshfem3d_par,only: &
+    myrank
+
+  use meshfem3D_models_par,only: &
+    SAVE_BOUNDARY_MESH,HONOR_1D_SPHERICAL_MOHO,SUPPRESS_CRUSTAL_MESH
+
+  use create_regions_mesh_par2, only: &
+    NSPEC2D_MOHO, NSPEC2D_400, NSPEC2D_670, &
+    ibelm_moho_top,ibelm_moho_bot,ibelm_400_top,ibelm_400_bot, &
+    ibelm_670_top,ibelm_670_bot,normal_moho,normal_400,normal_670, &
+    ispec2D_moho_top,ispec2D_moho_bot,ispec2D_400_top,ispec2D_400_bot, &
+    ispec2D_670_top,ispec2D_670_bot, &
+    prname
+
+  implicit none
+
+  ! local parameters
+  integer :: ier
+
+  ! first check the number of surface elements are the same for Moho, 400, 670
+  if (.not. SUPPRESS_CRUSTAL_MESH .and. HONOR_1D_SPHERICAL_MOHO) then
+    if (ispec2D_moho_top /= NSPEC2D_MOHO .or. ispec2D_moho_bot /= NSPEC2D_MOHO) &
+           call exit_mpi(myrank, 'Not the same number of Moho surface elements')
+  endif
+  if (ispec2D_400_top /= NSPEC2D_400 .or. ispec2D_400_bot /= NSPEC2D_400) &
+           call exit_mpi(myrank,'Not the same number of 400 surface elements')
+  if (ispec2D_670_top /= NSPEC2D_670 .or. ispec2D_670_bot /= NSPEC2D_670) &
+           call exit_mpi(myrank,'Not the same number of 670 surface elements')
+
+  ! writing surface topology databases
+  open(unit=27,file=prname(1:len_trim(prname))//'boundary_disc.bin', &
+       status='unknown',form='unformatted',iostat=ier)
+  if( ier /= 0 ) call exit_mpi(myrank,'error opening boundary_disc.bin file')
+
+  write(27) NSPEC2D_MOHO, NSPEC2D_400, NSPEC2D_670
+
+  write(27) ibelm_moho_top
+  write(27) ibelm_moho_bot
+
+  write(27) ibelm_400_top
+  write(27) ibelm_400_bot
+
+  write(27) ibelm_670_top
+  write(27) ibelm_670_bot
+
+  write(27) normal_moho
+  write(27) normal_400
+  write(27) normal_670
+
+  close(27)
+
+  end subroutine save_arrays_solver_boundary
+

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_MPI_interfaces.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_MPI_interfaces.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_MPI_interfaces.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -102,6 +102,8 @@
     NGLOB1D_RADIAL,NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NCHUNKS, &
     OUTPUT_FILES
 
+  use meshfem3D_par,only: ibool,is_on_a_slice_edge
+
   use create_MPI_interfaces_par
   use MPI_crust_mantle_par
   implicit none
@@ -117,9 +119,9 @@
   real(kind=CUSTOM_REAL),dimension(:),allocatable :: test_flag
   integer,dimension(:),allocatable :: dummy_i
   integer :: i,ier
-  ! debug
+  ! debug file output
   character(len=150) :: filename
-  logical,parameter :: DEBUG_INTERFACES = .false.
+  logical,parameter :: DEBUG = .false.
 
   ! sets up MPI interfaces
   ! crust mantle region
@@ -157,8 +159,7 @@
                             test_flag,my_neighbours,nibool_neighbours,ibool_neighbours, &
                             num_interfaces_crust_mantle,max_nibool_interfaces_crust_mantle, &
                             max_nibool,MAX_NEIGHBOURS, &
-                            ibool_crust_mantle,&
-                            is_on_a_slice_edge_crust_mantle, &
+                            ibool,is_on_a_slice_edge, &
                             IREGION_CRUST_MANTLE,.false.,dummy_i,INCLUDE_CENTRAL_CUBE, &
                             xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle,NPROCTOT)
 
@@ -193,7 +194,7 @@
   endif
 
   ! debug: outputs MPI interface
-  if( DEBUG_INTERFACES ) then
+  if( DEBUG ) then
     do i=1,num_interfaces_crust_mantle
       write(filename,'(a,i6.6,a,i2.2)') trim(OUTPUT_FILES)//'/MPI_points_crust_mantle_proc',myrank, &
                       '_',my_neighbours_crust_mantle(i)
@@ -211,15 +212,6 @@
                               my_neighbours_crust_mantle,nibool_interfaces_crust_mantle, &
                               ibool_interfaces_crust_mantle)
 
-  ! allocates MPI buffers
-  ! crust mantle
-  allocate(buffer_send_vector_crust_mantle(NDIM,max_nibool_interfaces_crust_mantle,num_interfaces_crust_mantle), &
-          buffer_recv_vector_crust_mantle(NDIM,max_nibool_interfaces_crust_mantle,num_interfaces_crust_mantle), &
-          request_send_vector_crust_mantle(num_interfaces_crust_mantle), &
-          request_recv_vector_crust_mantle(num_interfaces_crust_mantle), &
-          stat=ier)
-  if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_crust_mantle etc.')
-
   ! checks with assembly of test fields
   call test_MPI_cm()
 
@@ -238,6 +230,8 @@
     NGLOB1D_RADIAL,NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NCHUNKS, &
     OUTPUT_FILES
 
+  use meshfem3D_par,only: ibool,is_on_a_slice_edge
+
   use create_MPI_interfaces_par
   use MPI_outer_core_par
   implicit none
@@ -253,9 +247,9 @@
   real(kind=CUSTOM_REAL),dimension(:),allocatable :: test_flag
   integer,dimension(:),allocatable :: dummy_i
   integer :: i,ier
-  ! debug
+  ! debug file output
   character(len=150) :: filename
-  logical,parameter :: DEBUG_INTERFACES = .false.
+  logical,parameter :: DEBUG = .false.
 
   ! sets up MPI interfaces
   ! outer core region
@@ -295,8 +289,7 @@
                             test_flag,my_neighbours,nibool_neighbours,ibool_neighbours, &
                             num_interfaces_outer_core,max_nibool_interfaces_outer_core, &
                             max_nibool,MAX_NEIGHBOURS, &
-                            ibool_outer_core,&
-                            is_on_a_slice_edge_outer_core, &
+                            ibool,is_on_a_slice_edge, &
                             IREGION_OUTER_CORE,.false.,dummy_i,INCLUDE_CENTRAL_CUBE, &
                             xstore_outer_core,ystore_outer_core,zstore_outer_core,NPROCTOT)
 
@@ -331,7 +324,7 @@
   endif
 
   ! debug: outputs MPI interface
-  if( DEBUG_INTERFACES ) then
+  if( DEBUG ) then
     do i=1,num_interfaces_outer_core
       write(filename,'(a,i6.6,a,i2.2)') trim(OUTPUT_FILES)//'/MPI_points_outer_core_proc',myrank, &
                       '_',my_neighbours_outer_core(i)
@@ -349,15 +342,6 @@
                               my_neighbours_outer_core,nibool_interfaces_outer_core, &
                               ibool_interfaces_outer_core)
 
-  ! allocates MPI buffers
-  ! outer core
-  allocate(buffer_send_scalar_outer_core(max_nibool_interfaces_outer_core,num_interfaces_outer_core), &
-          buffer_recv_scalar_outer_core(max_nibool_interfaces_outer_core,num_interfaces_outer_core), &
-          request_send_scalar_outer_core(num_interfaces_outer_core), &
-          request_recv_scalar_outer_core(num_interfaces_outer_core), &
-          stat=ier)
-  if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_outer_core etc.')
-
   ! checks with assembly of test fields
   call test_MPI_oc()
 
@@ -376,6 +360,8 @@
     NGLOB1D_RADIAL,NGLOB2DMAX_XMIN_XMAX,NGLOB2DMAX_YMIN_YMAX,NCHUNKS, &
     OUTPUT_FILES,IFLAG_IN_FICTITIOUS_CUBE,NGLLX,NGLLY,NGLLZ,NSPEC2D_BOTTOM
 
+  use meshfem3D_par,only: ibool,idoubling,is_on_a_slice_edge
+
   use create_MPI_interfaces_par
   use MPI_inner_core_par
   implicit none
@@ -391,9 +377,9 @@
   real(kind=CUSTOM_REAL),dimension(:),allocatable :: test_flag
   integer :: i,j,k,ispec,iglob,ier
   integer :: ndim_assemble
-  ! debug
+  ! debug file output
   character(len=150) :: filename
-  logical,parameter :: DEBUG_INTERFACES = .false.
+  logical,parameter :: DEBUG = .false.
 
   ! sets up MPI interfaces
   ! inner core
@@ -407,12 +393,12 @@
   test_flag(:) = 0.0
   do ispec=1,NSPEC_INNER_CORE
     ! suppress fictitious elements in central cube
-    if(idoubling_inner_core(ispec) == IFLAG_IN_FICTITIOUS_CUBE) cycle
+    if(idoubling(ispec) == IFLAG_IN_FICTITIOUS_CUBE) cycle
     ! sets flags
     do k = 1,NGLLZ
       do j = 1,NGLLY
         do i = 1,NGLLX
-          iglob = ibool_inner_core(i,j,k,ispec)
+          iglob = ibool(i,j,k,ispec)
           test_flag(iglob) = myrank + 1.0
         enddo
       enddo
@@ -435,12 +421,12 @@
             NGLOB2DMAX_XMIN_XMAX(IREGION_INNER_CORE),NGLOB2DMAX_YMIN_YMAX(IREGION_INNER_CORE),NGLOB2DMAX_XY,NCHUNKS)
 
   ! debug: idoubling inner core
-  if( DEBUG_INTERFACES ) then
+  if( DEBUG ) then
     write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_idoubling_inner_core_proc',myrank
     call write_VTK_data_elem_i(NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
                             xstore_inner_core,ystore_inner_core,zstore_inner_core, &
-                            ibool_inner_core, &
-                            idoubling_inner_core,filename)
+                            ibool, &
+                            idoubling,filename)
     call sync_all()
   endif
 
@@ -456,8 +442,8 @@
     call assemble_MPI_central_cube_block(ichunk,nb_msgs_theor_in_cube, sender_from_slices_to_cube, &
                  npoin2D_cube_from_slices, buffer_all_cube_from_slices, &
                  buffer_slices, buffer_slices2, ibool_central_cube, &
-                 receiver_cube_from_slices, ibool_inner_core, &
-                 idoubling_inner_core, NSPEC_INNER_CORE, &
+                 receiver_cube_from_slices, ibool, &
+                 idoubling, NSPEC_INNER_CORE, &
                  ibelm_bottom_inner_core, NSPEC2D_BOTTOM(IREGION_INNER_CORE), &
                  NGLOB_INNER_CORE, &
                  test_flag,ndim_assemble, &
@@ -477,9 +463,8 @@
   !                          test_flag,my_neighbours,nibool_neighbours,ibool_neighbours, &
   !                          num_interfaces_inner_core,max_nibool_interfaces_inner_core, &
   !                          max_nibool,MAX_NEIGHBOURS, &
-  !                          ibool_inner_core,&
-  !                          is_on_a_slice_edge_inner_core, &
-  !                          IREGION_INNER_CORE,.false.,idoubling_inner_core,INCLUDE_CENTRAL_CUBE, &
+  !                          ibool,is_on_a_slice_edge, &
+  !                          IREGION_INNER_CORE,.false.,idoubling,INCLUDE_CENTRAL_CUBE, &
   !                          xstore_inner_core,ystore_inner_core,zstore_inner_core,NPROCTOT)
   !  endif
   !  call sync_all()
@@ -491,9 +476,8 @@
                         test_flag,my_neighbours,nibool_neighbours,ibool_neighbours, &
                         num_interfaces_inner_core,max_nibool_interfaces_inner_core, &
                         max_nibool,MAX_NEIGHBOURS, &
-                        ibool_inner_core,&
-                        is_on_a_slice_edge_inner_core, &
-                        IREGION_INNER_CORE,.false.,idoubling_inner_core,INCLUDE_CENTRAL_CUBE, &
+                        ibool,is_on_a_slice_edge, &
+                        IREGION_INNER_CORE,.false.,idoubling,INCLUDE_CENTRAL_CUBE, &
                         xstore_inner_core,ystore_inner_core,zstore_inner_core,NPROCTOT)
 
   deallocate(test_flag)
@@ -526,7 +510,7 @@
   endif
 
   ! debug: saves MPI interfaces
-  if( DEBUG_INTERFACES ) then
+  if( DEBUG ) then
     do i=1,num_interfaces_inner_core
       write(filename,'(a,i6.6,a,i2.2)') trim(OUTPUT_FILES)//'/MPI_points_inner_core_proc',myrank, &
                       '_',my_neighbours_inner_core(i)
@@ -544,15 +528,6 @@
                               my_neighbours_inner_core,nibool_interfaces_inner_core, &
                               ibool_interfaces_inner_core)
 
-  ! allocates MPI buffers
-  ! inner core
-  allocate(buffer_send_vector_inner_core(NDIM,max_nibool_interfaces_inner_core,num_interfaces_inner_core), &
-          buffer_recv_vector_inner_core(NDIM,max_nibool_interfaces_inner_core,num_interfaces_inner_core), &
-          request_send_vector_inner_core(num_interfaces_inner_core), &
-          request_recv_vector_inner_core(num_interfaces_inner_core), &
-          stat=ier)
-  if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_inner_core etc.')
-
   ! checks with assembly of test fields
   call test_MPI_ic()
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_color_perm.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_color_perm.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_color_perm.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -33,6 +33,8 @@
     myrank,IMAIN,USE_MESH_COLORING_GPU,SAVE_MESH_FILES, &
     IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE
 
+  use meshfem3D_par,only: ibool,is_on_a_slice_edge
+
   use MPI_crust_mantle_par
   use MPI_outer_core_par
   use MPI_inner_core_par
@@ -62,9 +64,6 @@
     ! mesh coloring
     if( USE_MESH_COLORING_GPU ) then
 
-      !daniel: safety stop...
-      call exit_mpi(myrank,'MESH COLORING not fully implemented yet, please recompile...')
-
       ! user output
       if(myrank == 0) write(IMAIN,*) '  coloring crust mantle... '
 
@@ -78,8 +77,8 @@
       if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary perm crust mantle array')
       perm(:) = 0
 
-      call setup_color(myrank,nspec,nglob,ibool_crust_mantle,perm, &
-                      idomain,is_on_a_slice_edge_crust_mantle, &
+      call setup_color(myrank,nspec,nglob,ibool,perm, &
+                      idomain,is_on_a_slice_edge, &
                       num_phase_ispec_crust_mantle,phase_ispec_inner_crust_mantle, &
                       SAVE_MESH_FILES)
 
@@ -94,7 +93,7 @@
       if(myrank == 0) then
         write(IMAIN,*) '     mesh permutation:'
       endif
-      call setup_permutation(myrank,nspec,nglob,ibool_crust_mantle, &
+      call setup_permutation(myrank,nspec,nglob,ibool, &
                             idomain,perm, &
                             num_colors_outer_crust_mantle,num_colors_inner_crust_mantle, &
                             num_elem_colors_crust_mantle, &
@@ -130,8 +129,8 @@
       if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary perm outer_core array')
       perm(:) = 0
 
-      call setup_color(myrank,nspec,nglob,ibool_outer_core,perm, &
-                      idomain,is_on_a_slice_edge_outer_core, &
+      call setup_color(myrank,nspec,nglob,ibool,perm, &
+                      idomain,is_on_a_slice_edge, &
                       num_phase_ispec_outer_core,phase_ispec_inner_outer_core, &
                       SAVE_MESH_FILES)
 
@@ -146,7 +145,7 @@
       if(myrank == 0) then
         write(IMAIN,*) '     mesh permutation:'
       endif
-      call setup_permutation(myrank,nspec,nglob,ibool_outer_core, &
+      call setup_permutation(myrank,nspec,nglob,ibool, &
                             idomain,perm, &
                             num_colors_outer_outer_core,num_colors_inner_outer_core, &
                             num_elem_colors_outer_core, &
@@ -182,8 +181,8 @@
       if( ier /= 0 ) call exit_mpi(myrank,'error allocating temporary perm inner_core array')
       perm(:) = 0
 
-      call setup_color(myrank,nspec,nglob,ibool_inner_core,perm, &
-                      idomain,is_on_a_slice_edge_inner_core, &
+      call setup_color(myrank,nspec,nglob,ibool,perm, &
+                      idomain,is_on_a_slice_edge, &
                       num_phase_ispec_inner_core,phase_ispec_inner_inner_core, &
                       SAVE_MESH_FILES)
 
@@ -201,7 +200,7 @@
       if(myrank == 0) then
         write(IMAIN,*) '     mesh permutation:'
       endif
-      call setup_permutation(myrank,nspec,nglob,ibool_inner_core, &
+      call setup_permutation(myrank,nspec,nglob,ibool, &
                             idomain,perm, &
                             num_colors_outer_inner_core,num_colors_inner_inner_core, &
                             num_elem_colors_inner_core, &
@@ -229,20 +228,23 @@
                             SAVE_MESH_FILES)
 
 ! sets up mesh coloring
+
   use meshfem3D_par,only: &
     LOCAL_PATH,MAX_NUMBER_OF_COLORS,IMAIN,NGLLX,NGLLY,NGLLZ,IFLAG_IN_FICTITIOUS_CUBE, &
     IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE
 
+  use meshfem3D_par,only: &
+    idoubling
+
   use MPI_crust_mantle_par,only: &
     num_colors_outer_crust_mantle,num_colors_inner_crust_mantle,num_elem_colors_crust_mantle, &
-    xstore => xstore_crust_mantle,ystore => ystore_crust_mantle,zstore => zstore_crust_mantle
+    xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle
 
   use MPI_outer_core_par,only: &
     num_colors_outer_outer_core,num_colors_inner_outer_core,num_elem_colors_outer_core
 
   use MPI_inner_core_par,only: &
-    num_colors_outer_inner_core,num_colors_inner_inner_core,num_elem_colors_inner_core, &
-    idoubling_inner_core
+    num_colors_outer_inner_core,num_colors_inner_inner_core,num_elem_colors_inner_core
 
   implicit none
 
@@ -278,10 +280,13 @@
 
   character(len=2),dimension(3) :: str_domain = (/ "cm", "oc", "ic" /)
   character(len=256) :: filename
-
-  logical, parameter :: DEBUG = .true.
   character(len=150) :: prname
 
+  ! debug file output
+  logical, parameter :: DEBUG = .false.
+  ! debug coloring : creates dummy mesh coloring, separating only inner/outer elements into colors
+  logical, parameter :: DEBUG_COLOR = .false.
+
   !!!! David Michea: detection of the edges, coloring and permutation separately
 
   ! implement mesh coloring for GPUs if needed, to create subsets of disconnected elements
@@ -308,7 +313,7 @@
     ! initializes
     ispec_is_d(:) = .true.
     ! excludes ficticious elements from coloring
-    where(idoubling_inner_core == IFLAG_IN_FICTITIOUS_CUBE) ispec_is_d = .false.
+    where(idoubling == IFLAG_IN_FICTITIOUS_CUBE) ispec_is_d = .false.
     ! checks
     if( count(ispec_is_d) == 0 ) then
       stop 'error no inner core elements'
@@ -327,11 +332,11 @@
                             myrank)
 
   ! debug: file output
-  if( SAVE_MESH_FILES .and. DEBUG .and. idomain == 1 ) then
+  if( SAVE_MESH_FILES .and. DEBUG .and. idomain == IREGION_CRUST_MANTLE ) then
     call create_name_database(prname,myrank,idomain,LOCAL_PATH)
     filename = prname(1:len_trim(prname))//'color_'//str_domain(idomain)
     call write_VTK_data_elem_i(nspec,nglob, &
-                              xstore,ystore,zstore,ibool, &
+                              xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle,ibool, &
                               color,filename)
   endif
   deallocate(color)
@@ -377,7 +382,7 @@
 
 
   ! debug: no mesh coloring, only creates dummy coloring arrays
-  if( DEBUG ) then
+  if( DEBUG_COLOR ) then
     nb_colors_outer_elements = 0
     nb_colors_inner_elements = 0
     ispec_counter = 0
@@ -429,7 +434,7 @@
 
     if( nspec_outer > 0 ) num_of_elems_in_this_color(1) = nspec_outer
     if( nspec_inner > 0 ) num_of_elems_in_this_color(2) = nspec_inner
-  endif ! debug
+  endif ! debug_color
 
   ! debug: saves mesh coloring numbers into files
   if( DEBUG ) then
@@ -548,8 +553,8 @@
     call create_name_database(prname,myrank,idomain,LOCAL_PATH)
     filename = prname(1:len_trim(prname))//'perm_'//str_domain(idomain)
     call write_VTK_data_elem_i(nspec,nglob, &
-                        xstore,ystore,zstore,ibool, &
-                        perm,filename)
+                              xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle,ibool, &
+                              perm,filename)
   endif
 
   deallocate(ispec_is_d)
@@ -568,19 +573,37 @@
                               num_phase_ispec_d,phase_ispec_inner_d, &
                               SAVE_MESH_FILES)
 
+  use meshfem3D_models_par,only: &
+    TRANSVERSE_ISOTROPY,HETEROGEN_3D_MANTLE,ANISOTROPIC_3D_MANTLE, &
+    ANISOTROPIC_INNER_CORE,ATTENUATION,ATTENUATION_3D,SAVE_BOUNDARY_MESH
+
   use meshfem3D_par,only: &
-    CUSTOM_REAL,LOCAL_PATH,NGLLX,NGLLY,NGLLZ,IMAIN, &
-    IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE
+    ABSORBING_CONDITIONS, &
+    CUSTOM_REAL,LOCAL_PATH,NGLLX,NGLLY,NGLLZ,N_SLS,IMAIN, &
+    IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE, &
+    NCHUNKS,NSPEC2D_TOP,NSPEC2D_BOTTOM, &
+    xstore,ystore,zstore,idoubling
 
-  use MPI_crust_mantle_par,only: &
-    NSPEC_CRUST_MANTLE,ibool_crust_mantle,is_on_a_slice_edge_crust_mantle, &
-    xstore => xstore_crust_mantle,ystore => ystore_crust_mantle,zstore => zstore_crust_mantle
+  use create_regions_mesh_par2,only: &
+    xixstore,xiystore,xizstore,etaxstore,etaystore,etazstore, &
+    gammaxstore,gammaystore,gammazstore, &
+    rhostore,dvpstore,kappavstore,kappahstore,muvstore,muhstore,eta_anisostore, &
+    c11store,c12store,c13store,c14store,c15store,c16store,c22store, &
+    c23store,c24store,c25store,c26store,c33store,c34store,c35store, &
+    c36store,c44store,c45store,c46store,c55store,c56store,c66store, &
+    ibelm_xmin,ibelm_xmax,ibelm_ymin,ibelm_ymax,ibelm_bottom,ibelm_top, &
+    rho_vp,rho_vs, &
+    nspec2D_xmin,nspec2D_xmax,nspec2D_ymin,nspec2D_ymax, &
+    ispec_is_tiso,tau_e_store,Qmu_store, &
+    NSPEC2D_MOHO, NSPEC2D_400, NSPEC2D_670, &
+    ibelm_moho_top,ibelm_moho_bot,ibelm_400_top,ibelm_400_bot, &
+    ibelm_670_top,ibelm_670_bot
 
-  use MPI_outer_core_par,only: &
-    NSPEC_OUTER_CORE,ibool_outer_core,is_on_a_slice_edge_outer_core
+  use MPI_crust_mantle_par,only: NSPEC_CRUST_MANTLE, &
+    xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle
 
-  use MPI_inner_core_par,only: &
-    NSPEC_INNER_CORE,ibool_inner_core,is_on_a_slice_edge_inner_core
+  use MPI_outer_core_par,only: NSPEC_OUTER_CORE
+  use MPI_inner_core_par,only: NSPEC_INNER_CORE
 
   implicit none
 
@@ -599,20 +622,23 @@
 
   ! local parameters
   ! added for sorting
+  double precision, dimension(:,:,:,:), allocatable :: temp_array_dble,temp_array_dble1
+  double precision, dimension(:,:,:,:,:), allocatable :: temp_array_dble_sls,temp_array_dble_sls1
+  real(kind=CUSTOM_REAL), dimension(:,:,:,:), allocatable :: temp_array_real
   integer, dimension(:,:,:,:), allocatable :: temp_array_int
-!  real(kind=CUSTOM_REAL), dimension(:,:,:,:), allocatable :: temp_array_real
+  integer, dimension(:), allocatable :: temp_array_int_1D
+  integer, dimension(:), allocatable :: temp_perm_global
   logical, dimension(:), allocatable :: temp_array_logical_1D
-
-  integer, dimension(:), allocatable :: temp_perm_global
   logical, dimension(:), allocatable :: mask_global
 
   integer :: icolor,icounter,ispec,ielem,ier,i
-  integer :: new_ispec
-!  integer :: iface,old_ispec
+  integer :: iface,old_ispec,new_ispec
+
   character(len=256) :: filename
   character(len=150) :: prname
 
-  logical,parameter :: DEBUG = .true.
+  ! debug file output
+  logical,parameter :: DEBUG = .false.
 
   ! sorts array according to permutation
   allocate(temp_perm_global(nspec),stat=ier)
@@ -654,23 +680,32 @@
     enddo
   enddo
 
-  ! checks
+  ! handles fictitious cube elements for inner core
+  ! which contains ficticious elements not counted for
+  if( idomain == IREGION_INNER_CORE ) then
+    ! fills up permutation with ficticious numbering
+    do ispec = 1,nspec
+      if( temp_perm_global(ispec) == 0 ) then
+        icounter = icounter + 1
+        temp_perm_global(ispec) = icounter
+      endif
+    enddo
+  endif
+
+  ! checks counter
   if( icounter /= nspec ) then
     print*,'error temp perm: ',icounter,nspec
     stop 'error temporary global permutation incomplete'
   endif
+  ! checks values
+  if(minval(temp_perm_global) /= 1) call exit_MPI(myrank, 'minval(temp_perm_global) should be 1')
+  if(maxval(temp_perm_global) /= nspec) call exit_MPI(myrank, 'maxval(temp_perm_global) should be nspec')
 
-  ! checks perm entries
-  if( idomain /= IREGION_INNER_CORE ) then
-    ! exclude inner core: contains ficticious elements not counted for
-    if(minval(temp_perm_global) /= 1) call exit_MPI(myrank, 'minval(temp_perm_global) should be 1')
-    if(maxval(temp_perm_global) /= nspec) call exit_MPI(myrank, 'maxval(temp_perm_global) should be nspec')
-  endif
-
   ! checks if every element was uniquely set
   allocate(mask_global(nspec),stat=ier)
   if( ier /= 0 ) stop 'error allocating temporary mask_global'
   mask_global(:) = .false.
+
   icounter = 0 ! counts permutations
   do ispec = 1, nspec
     new_ispec = temp_perm_global(ispec)
@@ -704,8 +739,8 @@
     call create_name_database(prname,myrank,idomain,LOCAL_PATH)
     filename = prname(1:len_trim(prname))//'perm_global'
     call write_VTK_data_elem_i(nspec,nglob, &
-                        xstore,ystore,zstore,ibool, &
-                        temp_perm_global,filename)
+                              xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle,ibool, &
+                              temp_perm_global,filename)
   endif
 
   ! store as new permutation
@@ -713,61 +748,223 @@
   deallocate(temp_perm_global)
 
   ! permutes all required mesh arrays according to new ordering
+
+  ! permutation of ibool
+  allocate(temp_array_int(NGLLX,NGLLY,NGLLZ,nspec))
+  call permute_elements_integer(ibool,temp_array_int,perm,nspec)
+  deallocate(temp_array_int)
+
+  ! element idoubling flags
+  allocate(temp_array_int_1D(nspec))
+  call permute_elements_integer1D(idoubling,temp_array_int_1D,perm,nspec)
+  deallocate(temp_array_int_1D)
+
+  ! element domain flags
+  allocate(temp_array_logical_1D(nspec))
+  call permute_elements_logical1D(ispec_is_tiso,temp_array_logical_1D,perm,nspec)
+  deallocate(temp_array_logical_1D)
+
+  ! mesh arrays
+  ! double precision
+  allocate(temp_array_dble(NGLLX,NGLLY,NGLLZ,nspec))
+  call permute_elements_dble(xstore,temp_array_dble,perm,nspec)
+  call permute_elements_dble(ystore,temp_array_dble,perm,nspec)
+  call permute_elements_dble(zstore,temp_array_dble,perm,nspec)
+  deallocate(temp_array_dble)
+  ! custom precision
+  allocate(temp_array_real(NGLLX,NGLLY,NGLLZ,nspec))
+  call permute_elements_real(xixstore,temp_array_real,perm,nspec)
+  call permute_elements_real(xiystore,temp_array_real,perm,nspec)
+  call permute_elements_real(xizstore,temp_array_real,perm,nspec)
+  call permute_elements_real(etaxstore,temp_array_real,perm,nspec)
+  call permute_elements_real(etaystore,temp_array_real,perm,nspec)
+  call permute_elements_real(etazstore,temp_array_real,perm,nspec)
+  call permute_elements_real(gammaxstore,temp_array_real,perm,nspec)
+  call permute_elements_real(gammaystore,temp_array_real,perm,nspec)
+  call permute_elements_real(gammazstore,temp_array_real,perm,nspec)
+  ! material parameters
+  call permute_elements_real(rhostore,temp_array_real,perm,nspec)
+  call permute_elements_real(kappavstore,temp_array_real,perm,nspec)
+  deallocate(temp_array_real)
+
+  ! attenuation arrays
+  if (ATTENUATION) then
+    if (ATTENUATION_3D) then
+      allocate(temp_array_dble(NGLLX,NGLLY,NGLLZ,nspec))
+      allocate(temp_array_dble_sls(N_SLS,NGLLX,NGLLY,NGLLZ,nspec))
+      call permute_elements_dble(Qmu_store,temp_array_dble,perm,nspec)
+      call permute_elements_dble_sls(tau_e_store,temp_array_dble_sls,perm,nspec)
+      deallocate(temp_array_dble,temp_array_dble_sls)
+    else
+      allocate(temp_array_dble1(1,1,1,nspec))
+      allocate(temp_array_dble_sls1(N_SLS,1,1,1,nspec))
+      call permute_elements_dble1(Qmu_store,temp_array_dble1,perm,nspec)
+      call permute_elements_dble_sls1(tau_e_store,temp_array_dble_sls1,perm,nspec)
+      deallocate(temp_array_dble1,temp_array_dble_sls1)
+    endif
+  endif
+
+  ! boundary surfaces
+  ! note: only arrays pointing to ispec will have to be permutated since value of ispec will be different
+  !
+  ! xmin
+  do iface = 1,nspec2D_xmin
+      old_ispec = ibelm_xmin(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_xmin(iface) = new_ispec
+  enddo
+  ! xmax
+  do iface = 1,nspec2D_xmax
+      old_ispec = ibelm_xmax(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_xmax(iface) = new_ispec
+  enddo
+  ! ymin
+  do iface = 1,nspec2D_ymin
+      old_ispec = ibelm_ymin(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_ymin(iface) = new_ispec
+  enddo
+  ! ymax
+  do iface = 1,nspec2D_ymax
+      old_ispec = ibelm_ymax(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_ymax(iface) = new_ispec
+  enddo
+  ! bottom
+  do iface = 1,NSPEC2D_BOTTOM(idomain)
+      old_ispec = ibelm_bottom(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_bottom(iface) = new_ispec
+  enddo
+  ! top
+  do iface = 1,NSPEC2D_TOP(idomain)
+      old_ispec = ibelm_top(iface)
+      new_ispec = perm(old_ispec)
+      ibelm_top(iface) = new_ispec
+  enddo
+
+
   select case( idomain )
   case( IREGION_CRUST_MANTLE )
     ! region
     nspec = NSPEC_CRUST_MANTLE
 
-    ! permutation of ibool
-    allocate(temp_array_int(NGLLX,NGLLY,NGLLZ,nspec))
-    call permute_elements_integer(ibool_crust_mantle,temp_array_int,perm,nspec)
-    deallocate(temp_array_int)
+    allocate(temp_array_real(NGLLX,NGLLY,NGLLZ,nspec))
 
-    ! element domain flags
-    allocate(temp_array_logical_1D(nspec))
-    call permute_elements_logical1D(is_on_a_slice_edge_crust_mantle,temp_array_logical_1D,perm,nspec)
-    deallocate(temp_array_logical_1D)
+    if(ANISOTROPIC_3D_MANTLE) then
+      call permute_elements_real(c11store,temp_array_real,perm,nspec)
+      call permute_elements_real(c11store,temp_array_real,perm,nspec)
+      call permute_elements_real(c12store,temp_array_real,perm,nspec)
+      call permute_elements_real(c13store,temp_array_real,perm,nspec)
+      call permute_elements_real(c14store,temp_array_real,perm,nspec)
+      call permute_elements_real(c15store,temp_array_real,perm,nspec)
+      call permute_elements_real(c16store,temp_array_real,perm,nspec)
+      call permute_elements_real(c22store,temp_array_real,perm,nspec)
+      call permute_elements_real(c23store,temp_array_real,perm,nspec)
+      call permute_elements_real(c24store,temp_array_real,perm,nspec)
+      call permute_elements_real(c25store,temp_array_real,perm,nspec)
+      call permute_elements_real(c26store,temp_array_real,perm,nspec)
+      call permute_elements_real(c33store,temp_array_real,perm,nspec)
+      call permute_elements_real(c34store,temp_array_real,perm,nspec)
+      call permute_elements_real(c35store,temp_array_real,perm,nspec)
+      call permute_elements_real(c36store,temp_array_real,perm,nspec)
+      call permute_elements_real(c44store,temp_array_real,perm,nspec)
+      call permute_elements_real(c45store,temp_array_real,perm,nspec)
+      call permute_elements_real(c46store,temp_array_real,perm,nspec)
+      call permute_elements_real(c55store,temp_array_real,perm,nspec)
+      call permute_elements_real(c56store,temp_array_real,perm,nspec)
+      call permute_elements_real(c66store,temp_array_real,perm,nspec)
+    else
+      call permute_elements_real(muvstore,temp_array_real,perm,nspec)
 
-    ! mesh arrays
+      if(TRANSVERSE_ISOTROPY) then
+        call permute_elements_real(kappahstore,temp_array_real,perm,nspec)
+        call permute_elements_real(muhstore,temp_array_real,perm,nspec)
+        call permute_elements_real(eta_anisostore,temp_array_real,perm,nspec)
+      endif
+    endif
 
-    ! material parameters
-    ! crust/mantle arrays
-    ! outer core arrays
-    ! inner core arrays
+    if(HETEROGEN_3D_MANTLE) then
+      call permute_elements_real(dvpstore,temp_array_real,perm,nspec)
+    endif
 
-    ! boundary surface
-    ! free surface
-    ! coupling surface
-    ! moho surface
+    if(ABSORBING_CONDITIONS .and. NCHUNKS /= 6 ) then
+      call permute_elements_real(rho_vp,temp_array_real,perm,nspec)
+      call permute_elements_real(rho_vs,temp_array_real,perm,nspec)
+    endif
 
+    deallocate(temp_array_real)
+
+    ! discontinuities boundary surface
+    if( SAVE_BOUNDARY_MESH ) then
+      ! moho
+      do iface = 1,nspec2D_MOHO
+        ! top
+        old_ispec = ibelm_moho_top(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_moho_top(iface) = new_ispec
+        ! bottom
+        old_ispec = ibelm_moho_bot(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_moho_bot(iface) = new_ispec
+      enddo
+      ! 400
+      do iface = 1,nspec2D_400
+        ! top
+        old_ispec = ibelm_400_top(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_400_top(iface) = new_ispec
+        ! bottom
+        old_ispec = ibelm_400_bot(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_400_bot(iface) = new_ispec
+      enddo
+      ! 670
+      do iface = 1,nspec2D_670
+        ! top
+        old_ispec = ibelm_670_top(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_670_top(iface) = new_ispec
+        ! bottom
+        old_ispec = ibelm_670_bot(iface)
+        new_ispec = perm(old_ispec)
+        ibelm_670_bot(iface) = new_ispec
+      enddo
+    endif
+
   case( IREGION_OUTER_CORE )
     ! region
     nspec = NSPEC_OUTER_CORE
 
-    ! permutation of ibool
-    allocate(temp_array_int(NGLLX,NGLLY,NGLLZ,nspec))
-    call permute_elements_integer(ibool_outer_core,temp_array_int,perm,nspec)
-    deallocate(temp_array_int)
+    if(ABSORBING_CONDITIONS .and. NCHUNKS /= 6 ) then
+      allocate(temp_array_real(NGLLX,NGLLY,NGLLZ,nspec))
 
-    ! element domain flags
-    allocate(temp_array_logical_1D(nspec))
-    call permute_elements_logical1D(is_on_a_slice_edge_outer_core,temp_array_logical_1D,perm,nspec)
-    deallocate(temp_array_logical_1D)
+      call permute_elements_real(rho_vp,temp_array_real,perm,nspec)
 
+      deallocate(temp_array_real)
+    endif
+
   case( IREGION_INNER_CORE )
     ! region
     nspec = NSPEC_INNER_CORE
 
-    ! permutation of ibool
-    allocate(temp_array_int(NGLLX,NGLLY,NGLLZ,nspec))
-    call permute_elements_integer(ibool_inner_core,temp_array_int,perm,nspec)
-    deallocate(temp_array_int)
+    allocate(temp_array_real(NGLLX,NGLLY,NGLLZ,nspec))
 
-    ! element domain flags
-    allocate(temp_array_logical_1D(nspec))
-    call permute_elements_logical1D(is_on_a_slice_edge_inner_core,temp_array_logical_1D,perm,nspec)
-    deallocate(temp_array_logical_1D)
+    ! note: muvstore needed for attenuation also for anisotropic inner core
+    call permute_elements_real(muvstore,temp_array_real,perm,nspec)
 
+    !  anisotropy in the inner core only
+    if(ANISOTROPIC_INNER_CORE) then
+      call permute_elements_real(c11store,temp_array_real,perm,nspec)
+      call permute_elements_real(c33store,temp_array_real,perm,nspec)
+      call permute_elements_real(c12store,temp_array_real,perm,nspec)
+      call permute_elements_real(c13store,temp_array_real,perm,nspec)
+      call permute_elements_real(c44store,temp_array_real,perm,nspec)
+    endif
+
+    deallocate(temp_array_real)
+
   case default
     stop 'error idomain in setup_permutation'
   end select

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_inner_outer.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_inner_outer.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/meshfem3D/setup_inner_outer.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -32,6 +32,8 @@
     myrank,OUTPUT_FILES,IMAIN, &
     IREGION_CRUST_MANTLE,IREGION_OUTER_CORE,IREGION_INNER_CORE
 
+  use meshfem3D_par,only: ibool,is_on_a_slice_edge
+
   use MPI_crust_mantle_par
   use MPI_outer_core_par
   use MPI_inner_core_par
@@ -43,9 +45,9 @@
   ! local parameters
   real :: percentage_edge
   integer :: ier,ispec,iinner,iouter
-  ! debug
+  ! debug file output
   character(len=150) :: filename
-  logical,parameter :: DEBUG_INTERFACES = .false.
+  logical,parameter :: DEBUG = .false.
 
   ! stores inner / outer elements
   !
@@ -54,7 +56,7 @@
   select case( iregion_code )
   case( IREGION_CRUST_MANTLE )
     ! crust_mantle
-    nspec_outer_crust_mantle = count( is_on_a_slice_edge_crust_mantle )
+    nspec_outer_crust_mantle = count( is_on_a_slice_edge )
     nspec_inner_crust_mantle = NSPEC_CRUST_MANTLE - nspec_outer_crust_mantle
 
     num_phase_ispec_crust_mantle = max(nspec_inner_crust_mantle,nspec_outer_crust_mantle)
@@ -66,7 +68,7 @@
     iinner = 0
     iouter = 0
     do ispec=1,NSPEC_CRUST_MANTLE
-      if( is_on_a_slice_edge_crust_mantle(ispec) ) then
+      if( is_on_a_slice_edge(ispec) ) then
         ! outer element
         iouter = iouter + 1
         phase_ispec_inner_crust_mantle(iouter,1) = ispec
@@ -89,17 +91,17 @@
     endif
 
     ! debug: saves element flags
-    if( DEBUG_INTERFACES ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_innerouter_crust_mantle_proc',myrank
       call write_VTK_data_elem_l(NSPEC_CRUST_MANTLE,NGLOB_CRUST_MANTLE, &
                                 xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle, &
-                                ibool_crust_mantle, &
-                                is_on_a_slice_edge_crust_mantle,filename)
+                                ibool, &
+                                is_on_a_slice_edge,filename)
     endif
 
   case( IREGION_OUTER_CORE )
     ! outer_core
-    nspec_outer_outer_core = count( is_on_a_slice_edge_outer_core )
+    nspec_outer_outer_core = count( is_on_a_slice_edge )
     nspec_inner_outer_core = NSPEC_OUTER_CORE - nspec_outer_outer_core
 
     num_phase_ispec_outer_core = max(nspec_inner_outer_core,nspec_outer_outer_core)
@@ -111,7 +113,7 @@
     iinner = 0
     iouter = 0
     do ispec=1,NSPEC_OUTER_CORE
-      if( is_on_a_slice_edge_outer_core(ispec) ) then
+      if( is_on_a_slice_edge(ispec) ) then
         ! outer element
         iouter = iouter + 1
         phase_ispec_inner_outer_core(iouter,1) = ispec
@@ -131,17 +133,17 @@
     endif
 
     ! debug: saves element flags
-    if( DEBUG_INTERFACES ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_innerouter_outer_core_proc',myrank
       call write_VTK_data_elem_l(NSPEC_OUTER_CORE,NGLOB_OUTER_CORE, &
                                 xstore_outer_core,ystore_outer_core,zstore_outer_core, &
-                                ibool_outer_core, &
-                                is_on_a_slice_edge_outer_core,filename)
+                                ibool, &
+                                is_on_a_slice_edge,filename)
     endif
 
   case( IREGION_INNER_CORE )
     ! inner_core
-    nspec_outer_inner_core = count( is_on_a_slice_edge_inner_core )
+    nspec_outer_inner_core = count( is_on_a_slice_edge )
     nspec_inner_inner_core = NSPEC_INNER_CORE - nspec_outer_inner_core
 
     num_phase_ispec_inner_core = max(nspec_inner_inner_core,nspec_outer_inner_core)
@@ -153,7 +155,7 @@
     iinner = 0
     iouter = 0
     do ispec=1,NSPEC_INNER_CORE
-      if( is_on_a_slice_edge_inner_core(ispec) ) then
+      if( is_on_a_slice_edge(ispec) ) then
         ! outer element
         iouter = iouter + 1
         phase_ispec_inner_inner_core(iouter,1) = ispec
@@ -173,12 +175,12 @@
     endif
 
     ! debug: saves element flags
-    if( DEBUG_INTERFACES ) then
+    if( DEBUG ) then
       write(filename,'(a,i6.6)') trim(OUTPUT_FILES)//'/MPI_innerouter_inner_core_proc',myrank
       call write_VTK_data_elem_l(NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
                                 xstore_inner_core,ystore_inner_core,zstore_inner_core, &
-                                ibool_inner_core, &
-                                is_on_a_slice_edge_inner_core,filename)
+                                ibool, &
+                                is_on_a_slice_edge,filename)
     endif
 
   end select

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/get_model_parameters.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/get_model_parameters.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/get_model_parameters.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -385,7 +385,7 @@
     CRUSTAL = .true.
     ISOTROPIC_3D_MANTLE = .true.
     ONE_CRUST = .true.
-    REFERENCE_1D_MODEL = REFERENCE_MODEL_1DREF
+    REFERENCE_1D_MODEL = GLL_REFERENCE_1D_MODEL
     THREE_D_MODEL = THREE_D_MODEL_GLL
     TRANSVERSE_ISOTROPY = .true.
     ! note: after call to this routines read_compute_parameters() we will set

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/save_header_file.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/save_header_file.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/shared/save_header_file.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -471,6 +471,7 @@
   write(IOUT,*) 'integer, parameter :: NSPEC2D_670 = ',NSPEC2D_670
   write(IOUT,*) 'integer, parameter :: NSPEC2D_CMB = ',NSPEC2D_CMB
   write(IOUT,*) 'integer, parameter :: NSPEC2D_ICB = ',NSPEC2D_ICB
+  write(IOUT,*)
 
   ! deville routines only implemented for NGLLX = NGLLY = NGLLZ = 5
   if( NGLLX == 5 .and. NGLLY == 5 .and. NGLLZ == 5 ) then
@@ -505,6 +506,7 @@
   else
     write(IOUT,*) 'logical, parameter :: COMPUTE_AND_STORE_STRAIN = .false.'
   endif
+  write(IOUT,*)
 
   if (MOVIE_VOLUME) then
     write(IOUT,*) 'integer, parameter :: NSPEC_CRUST_MANTLE_3DMOVIE = NSPEC_CRUST_MANTLE'

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/assemble_MPI_vector.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/assemble_MPI_vector.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/assemble_MPI_vector.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -259,7 +259,7 @@
 
   ! local parameters
 
-  integer iinterface
+  integer :: iinterface
 
 ! here we have to assemble all the contributions between partitions using MPI
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_element.F90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_element.F90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_element.F90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -87,7 +87,6 @@
   ! memory variables for attenuation
   ! memory variables R_ij are stored at the local rather than global level
   ! to allow for optimization of cache access by compiler
-!  real(kind=CUSTOM_REAL), dimension(5,N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_memory
   real(kind=CUSTOM_REAL), dimension(N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_xx,R_yy,R_xy,R_xz,R_yz
 
   real(kind=CUSTOM_REAL),dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE) :: epsilon_trace_over_3
@@ -470,7 +469,6 @@
   ! memory variables for attenuation
   ! memory variables R_ij are stored at the local rather than global level
   ! to allow for optimization of cache access by compiler
-!  real(kind=CUSTOM_REAL), dimension(5,N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_memory
   real(kind=CUSTOM_REAL), dimension(N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_xx,R_yy,R_xy,R_xz,R_yz
 
   real(kind=CUSTOM_REAL),dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE) :: epsilon_trace_over_3
@@ -1065,7 +1063,6 @@
   ! memory variables for attenuation
   ! memory variables R_ij are stored at the local rather than global level
   ! to allow for optimization of cache access by compiler
-!  real(kind=CUSTOM_REAL), dimension(5,N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_memory
   real(kind=CUSTOM_REAL), dimension(N_SLS,NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE_ATTENUAT) :: R_xx,R_yy,R_xy,R_xz,R_yz
 
   real(kind=CUSTOM_REAL),dimension(NGLLX,NGLLY,NGLLZ,NSPEC_CRUST_MANTLE) :: epsilon_trace_over_3

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_forces_crust_mantle.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_forces_crust_mantle.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/compute_forces_crust_mantle.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -72,7 +72,7 @@
   integer :: NSPEC,NGLOB,NSPEC_ATT
 
   ! time step
-  real(kind=CUSTOM_REAL) deltat
+  real(kind=CUSTOM_REAL) :: deltat
 
   ! displacement, velocity and acceleration
   real(kind=CUSTOM_REAL), dimension(NDIM,NGLOB) :: displ_crust_mantle
@@ -429,20 +429,24 @@
 
           else
 
-        ! do not use transverse isotropy except if element is between d220 and Moho
+          ! do not use transverse isotropy except if element is between d220 and Moho
 !            if(.not. (TRANSVERSE_ISOTROPY_VAL .and. (idoubling(ispec)==IFLAG_220_80 .or. idoubling(ispec)==IFLAG_80_MOHO))) then
+
             if( .not. ispec_is_tiso(ispec) ) then
-        ! layer with no transverse isotropy, use kappav and muv
+
+              ! isotropic element
+
+              ! layer with no transverse isotropy, use kappav and muv
               kappal = kappavstore(i,j,k,ispec)
               mul = muvstore(i,j,k,ispec)
 
-        ! use unrelaxed parameters if attenuation
+              ! use unrelaxed parameters if attenuation
               if(ATTENUATION_VAL) mul = mul * one_minus_sum_beta_use
 
               lambdalplus2mul = kappal + FOUR_THIRDS * mul
               lambdal = lambdalplus2mul - 2.*mul
 
-        ! compute stress sigma
+              ! compute stress sigma
 
               sigma_xx = lambdalplus2mul*duxdxl + lambdal*duydyl_plus_duzdzl
               sigma_yy = lambdalplus2mul*duydyl + lambdal*duxdxl_plus_duzdzl
@@ -454,15 +458,17 @@
 
             else
 
-        ! use Kappa and mu from transversely isotropic model
+              ! transverse isotropic element
+
+              ! use Kappa and mu from transversely isotropic model
               kappavl = kappavstore(i,j,k,ispec)
               muvl = muvstore(i,j,k,ispec)
 
               kappahl = kappahstore(i,j,k,ispec)
               muhl = muhstore(i,j,k,ispec)
 
-        ! use unrelaxed parameters if attenuation
-        ! eta does not need to be shifted since it is a ratio
+              ! use unrelaxed parameters if attenuation
+              ! eta does not need to be shifted since it is a ratio
               if(ATTENUATION_VAL) then
                 muvl = muvl * one_minus_sum_beta_use
                 muhl = muhl * one_minus_sum_beta_use
@@ -476,8 +482,8 @@
 
               eta_aniso = eta_anisostore(i,j,k,ispec)  !!! that is  F / (A - 2 L)
 
-        ! use mesh coordinates to get theta and phi
-        ! ystore and zstore contain theta and phi
+              ! use mesh coordinates to get theta and phi
+              ! ystore and zstore contain theta and phi
 
               iglob = ibool(i,j,k,ispec)
               theta = ystore(iglob)
@@ -514,7 +520,7 @@
               etaminone = eta_aniso - 1.
               twoetaminone = 2. * eta_aniso - 1.
 
-        ! precompute some products to reduce the CPU time
+              ! precompute some products to reduce the CPU time
 
               two_eta_aniso = 2.*eta_aniso
               four_eta_aniso = 4.*eta_aniso
@@ -530,7 +536,7 @@
               four_rhovsvsq = 4.*rhovsvsq
               four_rhovshsq = 4.*rhovshsq
 
-        ! the 21 anisotropic coefficients computed using Mathematica
+              ! the 21 anisotropic coefficients computed using Mathematica
 
              c11 = rhovphsq*sinphifour + 2.*cosphisq*sinphisq* &
                (rhovphsq*costhetasq + (eta_aniso*rhovphsq + two_rhovsvsq - two_eta_aniso*rhovsvsq)* &
@@ -637,7 +643,7 @@
               rhovpvsq*cosphisq*sinphisq*sinthetafour - &
               (eta_aniso*(rhovphsq - two_rhovsvsq)*sintwophisq*sinthetafour)/2.
 
-        ! general expression of stress tensor for full Cijkl with 21 coefficients
+             ! general expression of stress tensor for full Cijkl with 21 coefficients
 
              sigma_xx = c11*duxdxl + c16*duxdyl_plus_duydxl + c12*duydyl + &
                        c15*duzdxl_plus_duxdzl + c14*duzdyl_plus_duydzl + c13*duzdzl
@@ -661,7 +667,7 @@
 
           endif   ! end of test whether isotropic or anisotropic element
 
-        ! subtract memory variables if attenuation
+          ! subtract memory variables if attenuation
           if(ATTENUATION_VAL .and. ( USE_ATTENUATION_MIMIC .eqv. .false. ) ) then
              do i_SLS = 1,N_SLS
                 R_xx_val = R_xx(i_SLS,i,j,k,ispec)
@@ -675,16 +681,16 @@
              enddo
           endif
 
-        ! define symmetric components of sigma for gravity
+          ! define symmetric components of sigma for gravity
           sigma_yx = sigma_xy
           sigma_zx = sigma_xz
           sigma_zy = sigma_yz
 
-        ! compute non-symmetric terms for gravity
+          ! compute non-symmetric terms for gravity
           if(GRAVITY_VAL) then
 
-        ! use mesh coordinates to get theta and phi
-        ! x y and z contain r theta and phi
+            ! use mesh coordinates to get theta and phi
+            ! x y and z contain r theta and phi
 
             iglob = ibool(i,j,k,ispec)
             radius = dble(xstore(iglob))
@@ -696,21 +702,21 @@
             cos_phi = dcos(dble(phi))
             sin_phi = dsin(dble(phi))
 
-        ! get g, rho and dg/dr=dg
-        ! spherical components of the gravitational acceleration
-        ! for efficiency replace with lookup table every 100 m in radial direction
+            ! get g, rho and dg/dr=dg
+            ! spherical components of the gravitational acceleration
+            ! for efficiency replace with lookup table every 100 m in radial direction
             int_radius = nint(radius * R_EARTH_KM * 10.d0)
             minus_g = minus_gravity_table(int_radius)
             minus_dg = minus_deriv_gravity_table(int_radius)
             rho = density_table(int_radius)
 
-        ! Cartesian components of the gravitational acceleration
+            ! Cartesian components of the gravitational acceleration
             gxl = minus_g*sin_theta*cos_phi
             gyl = minus_g*sin_theta*sin_phi
             gzl = minus_g*cos_theta
 
-        ! Cartesian components of gradient of gravitational acceleration
-        ! obtained from spherical components
+            ! Cartesian components of gradient of gravitational acceleration
+            ! obtained from spherical components
 
             minus_g_over_radius = minus_g / radius
             minus_dg_plus_g_over_radius = minus_dg - minus_g_over_radius
@@ -729,15 +735,15 @@
 
             iglob = ibool(i,j,k,ispec)
 
-        ! distinguish between single and double precision for reals
+            ! distinguish between single and double precision for reals
             if(CUSTOM_REAL == SIZE_REAL) then
 
-        ! get displacement and multiply by density to compute G tensor
+              ! get displacement and multiply by density to compute G tensor
               sx_l = rho * dble(displ_crust_mantle(1,iglob))
               sy_l = rho * dble(displ_crust_mantle(2,iglob))
               sz_l = rho * dble(displ_crust_mantle(3,iglob))
 
-        ! compute G tensor from s . g and add to sigma (not symmetric)
+              ! compute G tensor from s . g and add to sigma (not symmetric)
               sigma_xx = sigma_xx + sngl(sy_l*gyl + sz_l*gzl)
               sigma_yy = sigma_yy + sngl(sx_l*gxl + sz_l*gzl)
               sigma_zz = sigma_zz + sngl(sx_l*gxl + sy_l*gyl)
@@ -751,7 +757,7 @@
               sigma_yz = sigma_yz - sngl(sy_l * gzl)
               sigma_zy = sigma_zy - sngl(sz_l * gyl)
 
-        ! precompute vector
+              ! precompute vector
               factor = dble(jacobianl) * wgll_cube(i,j,k)
               rho_s_H(1,i,j,k) = sngl(factor * (sx_l * Hxxl + sy_l * Hxyl + sz_l * Hxzl))
               rho_s_H(2,i,j,k) = sngl(factor * (sx_l * Hxyl + sy_l * Hyyl + sz_l * Hyzl))
@@ -759,12 +765,12 @@
 
             else
 
-        ! get displacement and multiply by density to compute G tensor
+              ! get displacement and multiply by density to compute G tensor
               sx_l = rho * displ_crust_mantle(1,iglob)
               sy_l = rho * displ_crust_mantle(2,iglob)
               sz_l = rho * displ_crust_mantle(3,iglob)
 
-        ! compute G tensor from s . g and add to sigma (not symmetric)
+              ! compute G tensor from s . g and add to sigma (not symmetric)
               sigma_xx = sigma_xx + sy_l*gyl + sz_l*gzl
               sigma_yy = sigma_yy + sx_l*gxl + sz_l*gzl
               sigma_zz = sigma_zz + sx_l*gxl + sy_l*gyl
@@ -778,7 +784,7 @@
               sigma_yz = sigma_yz - sy_l * gzl
               sigma_zy = sigma_zy - sz_l * gyl
 
-        ! precompute vector
+              ! precompute vector
               factor = jacobianl * wgll_cube(i,j,k)
               rho_s_H(1,i,j,k) = factor * (sx_l * Hxxl + sy_l * Hxyl + sz_l * Hxzl)
               rho_s_H(2,i,j,k) = factor * (sx_l * Hxyl + sy_l * Hyyl + sz_l * Hyzl)
@@ -788,7 +794,7 @@
 
           endif  ! end of section with gravity terms
 
-        ! form dot product with test vector, non-symmetric form
+          ! form dot product with test vector, non-symmetric form
           tempx1(i,j,k) = jacobianl * (sigma_xx*xixl + sigma_yx*xiyl + sigma_zx*xizl)
           tempy1(i,j,k) = jacobianl * (sigma_xy*xixl + sigma_yy*xiyl + sigma_zy*xizl)
           tempz1(i,j,k) = jacobianl * (sigma_xz*xixl + sigma_yz*xiyl + sigma_zz*xizl)
@@ -856,7 +862,7 @@
       enddo ! NGLLY
     enddo ! NGLLZ
 
-! sum contributions from each element to the global mesh and add gravity terms
+    ! sum contributions from each element to the global mesh and add gravity terms
     do k=1,NGLLZ
       do j=1,NGLLY
         do i=1,NGLLX
@@ -931,7 +937,7 @@
       enddo
     endif
 
-! save deviatoric strain for Runge-Kutta scheme
+    ! save deviatoric strain for Runge-Kutta scheme
     if(COMPUTE_AND_STORE_STRAIN) then
       !epsilondev(:,:,:,:,ispec) = epsilondev_loc(:,:,:,:)
       do k=1,NGLLZ

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/prepare_timerun.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/prepare_timerun.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/prepare_timerun.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -717,31 +717,32 @@
   if( ier /= 0 ) call exit_MPI(myrank,'error allocating factor_common inner_core array')
 
   ! CRUST_MANTLE ATTENUATION
-  call create_name_database(prnamel, myrank, IREGION_CRUST_MANTLE, LOCAL_PATH)
-
   ! initializes
   omsb_crust_mantle_dble = 0.d0
   factor_common_crust_mantle_dble = 0.d0
   factor_scale_crust_mantle_dble = 0.d0
   tau_sigma_dble = 0.d0
 
+  ! reads in attenuation values
+  call create_name_database(prnamel, myrank, IREGION_CRUST_MANTLE, LOCAL_PATH)
   call get_attenuation_model_3D_or_1D(myrank, prnamel, omsb_crust_mantle_dble, &
            factor_common_crust_mantle_dble,factor_scale_crust_mantle_dble,tau_sigma_dble, &
            ATT1,ATT2,ATT3,ATT4)
 
   ! INNER_CORE ATTENUATION
-  call create_name_database(prnamel, myrank, IREGION_INNER_CORE, LOCAL_PATH)
-
   ! initializes
   omsb_inner_core_dble = 0.d0
   factor_common_inner_core_dble = 0.d0
   factor_scale_inner_core_dble = 0.d0
   tau_sigma_dble = 0.d0
 
+  ! reads in attenuation values
+  call create_name_database(prnamel, myrank, IREGION_INNER_CORE, LOCAL_PATH)
   call get_attenuation_model_3D_or_1D(myrank, prnamel, omsb_inner_core_dble, &
            factor_common_inner_core_dble,factor_scale_inner_core_dble,tau_sigma_dble, &
            ATT1,ATT2,ATT3,ATT5)
 
+  ! converts to custom real arrays
   if(CUSTOM_REAL == SIZE_REAL) then
     factor_scale_crust_mantle       = sngl(factor_scale_crust_mantle_dble)
     one_minus_sum_beta_crust_mantle = sngl(omsb_crust_mantle_dble)
@@ -1155,6 +1156,7 @@
                                   NSPEC_CRUST_MANTLE_STRAIN_ONLY,NGLOB_CRUST_MANTLE_OCEANS, &
                                   NSPEC_OUTER_CORE,NGLOB_OUTER_CORE, &
                                   NSPEC_INNER_CORE,NGLOB_INNER_CORE, &
+                                  NSPEC_INNER_CORE_STRAIN_ONLY, &
                                   SIMULATION_TYPE,NOISE_TOMOGRAPHY, &
                                   SAVE_FORWARD,ABSORBING_CONDITIONS, &
                                   OCEANS_VAL,GRAVITY_VAL,ROTATION_VAL, &
@@ -1165,7 +1167,6 @@
                                   SAVE_BOUNDARY_MESH, &
                                   USE_MESH_COLORING_GPU, &
                                   ANISOTROPIC_KL,APPROXIMATE_HESS_KL)
-  call sync_all()
 
   ! prepares rotation arrays
   if( ROTATION_VAL ) then
@@ -1178,7 +1179,6 @@
                                   b_A_array_rotation,b_B_array_rotation, &
                                   NSPEC_OUTER_CORE_ROTATION)
   endif
-  call sync_all()
 
   ! prepares arrays related to gravity
   ! note: GPU will use only single-precision (or double precision) for all calculations
@@ -1218,7 +1218,6 @@
             cr_minus_gravity_table,cr_minus_deriv_gravity_table, &
             cr_density_table)
   deallocate(cr_wgll_cube)
-  call sync_all()
 
   ! prepares attenuation arrays
   if( ATTENUATION_VAL ) then
@@ -1236,7 +1235,6 @@
                                         alphaval,betaval,gammaval, &
                                         b_alphaval,b_betaval,b_gammaval)
   endif
-  call sync_all()
 
 
   ! prepares attenuation arrays
@@ -1257,7 +1255,6 @@
                                     eps_trace_over_3_inner_core, &
                                     b_eps_trace_over_3_inner_core)
   endif
-  call sync_all()
 
   ! prepares absorbing arrays
   if(NCHUNKS_VAL /= 6 .and. ABSORBING_CONDITIONS) then
@@ -1293,7 +1290,6 @@
                                     vp_outer_core)
 
   endif
-  call sync_all()
 
   ! prepares MPI interfaces
   if(myrank == 0 ) write(IMAIN,*) "  loading mpi interfaces"
@@ -1329,78 +1325,81 @@
   if(myrank == 0 ) write(IMAIN,*) "  loading crust/mantle region"
 
   call prepare_crust_mantle_device(Mesh_pointer, &
-       xix_crust_mantle,xiy_crust_mantle,xiz_crust_mantle, &
-       etax_crust_mantle,etay_crust_mantle,etaz_crust_mantle, &
-       gammax_crust_mantle,gammay_crust_mantle,gammaz_crust_mantle, &
-       rhostore_crust_mantle, &
-       kappavstore_crust_mantle,muvstore_crust_mantle, &
-       kappahstore_crust_mantle,muhstore_crust_mantle, &
-       eta_anisostore_crust_mantle, &
-       rmassx_crust_mantle, &
-       rmassy_crust_mantle, &
-       rmassz_crust_mantle, &
-       normal_top_crust_mantle, &
-       ibelm_top_crust_mantle, &
-       ibelm_bottom_crust_mantle, &
-       ibool_crust_mantle, &
-       xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle, &
-       ispec_is_tiso_crust_mantle, &
-       c11store_crust_mantle,c12store_crust_mantle,c13store_crust_mantle, &
-       c14store_crust_mantle,c15store_crust_mantle,c16store_crust_mantle, &
-       c22store_crust_mantle,c23store_crust_mantle,c24store_crust_mantle, &
-       c25store_crust_mantle,c26store_crust_mantle,c33store_crust_mantle, &
-       c34store_crust_mantle,c35store_crust_mantle,c36store_crust_mantle, &
-       c44store_crust_mantle,c45store_crust_mantle,c46store_crust_mantle, &
-       c55store_crust_mantle,c56store_crust_mantle,c66store_crust_mantle, &
-       num_phase_ispec_crust_mantle,phase_ispec_inner_crust_mantle, &
-       nspec_outer_crust_mantle,nspec_inner_crust_mantle, &
-       NSPEC2D_TOP(IREGION_CRUST_MANTLE), &
-       NSPEC2D_BOTTOM(IREGION_CRUST_MANTLE), &
-       NCHUNKS_VAL)
-  call sync_all()
+                                 xix_crust_mantle,xiy_crust_mantle,xiz_crust_mantle, &
+                                 etax_crust_mantle,etay_crust_mantle,etaz_crust_mantle, &
+                                 gammax_crust_mantle,gammay_crust_mantle,gammaz_crust_mantle, &
+                                 rhostore_crust_mantle, &
+                                 kappavstore_crust_mantle,muvstore_crust_mantle, &
+                                 kappahstore_crust_mantle,muhstore_crust_mantle, &
+                                 eta_anisostore_crust_mantle, &
+                                 rmassx_crust_mantle, &
+                                 rmassy_crust_mantle, &
+                                 rmassz_crust_mantle, &
+                                 normal_top_crust_mantle, &
+                                 ibelm_top_crust_mantle, &
+                                 ibelm_bottom_crust_mantle, &
+                                 ibool_crust_mantle, &
+                                 xstore_crust_mantle,ystore_crust_mantle,zstore_crust_mantle, &
+                                 ispec_is_tiso_crust_mantle, &
+                                 c11store_crust_mantle,c12store_crust_mantle,c13store_crust_mantle, &
+                                 c14store_crust_mantle,c15store_crust_mantle,c16store_crust_mantle, &
+                                 c22store_crust_mantle,c23store_crust_mantle,c24store_crust_mantle, &
+                                 c25store_crust_mantle,c26store_crust_mantle,c33store_crust_mantle, &
+                                 c34store_crust_mantle,c35store_crust_mantle,c36store_crust_mantle, &
+                                 c44store_crust_mantle,c45store_crust_mantle,c46store_crust_mantle, &
+                                 c55store_crust_mantle,c56store_crust_mantle,c66store_crust_mantle, &
+                                 num_phase_ispec_crust_mantle,phase_ispec_inner_crust_mantle, &
+                                 nspec_outer_crust_mantle,nspec_inner_crust_mantle, &
+                                 NSPEC2D_TOP(IREGION_CRUST_MANTLE), &
+                                 NSPEC2D_BOTTOM(IREGION_CRUST_MANTLE), &
+                                 NCHUNKS_VAL, &
+                                 num_colors_outer_crust_mantle,num_colors_inner_crust_mantle, &
+                                 num_elem_colors_crust_mantle)
 
 
   ! outer core region
   if(myrank == 0 ) write(IMAIN,*) "  loading outer core region"
   call prepare_outer_core_device(Mesh_pointer, &
-                                  xix_outer_core,xiy_outer_core,xiz_outer_core, &
-                                  etax_outer_core,etay_outer_core,etaz_outer_core, &
-                                  gammax_outer_core,gammay_outer_core,gammaz_outer_core, &
-                                  rhostore_outer_core,kappavstore_outer_core, &
-                                  rmass_outer_core, &
-                                  normal_top_outer_core, &
-                                  normal_bottom_outer_core, &
-                                  jacobian2D_top_outer_core, &
-                                  jacobian2D_bottom_outer_core, &
-                                  ibelm_top_outer_core, &
-                                  ibelm_bottom_outer_core, &
-                                  ibool_outer_core, &
-                                  xstore_outer_core,ystore_outer_core,zstore_outer_core, &
-                                  num_phase_ispec_outer_core,phase_ispec_inner_outer_core, &
-                                  nspec_outer_outer_core,nspec_inner_outer_core, &
-                                  NSPEC2D_TOP(IREGION_OUTER_CORE), &
-                                  NSPEC2D_BOTTOM(IREGION_OUTER_CORE))
-  call sync_all()
+                                xix_outer_core,xiy_outer_core,xiz_outer_core, &
+                                etax_outer_core,etay_outer_core,etaz_outer_core, &
+                                gammax_outer_core,gammay_outer_core,gammaz_outer_core, &
+                                rhostore_outer_core,kappavstore_outer_core, &
+                                rmass_outer_core, &
+                                normal_top_outer_core, &
+                                normal_bottom_outer_core, &
+                                jacobian2D_top_outer_core, &
+                                jacobian2D_bottom_outer_core, &
+                                ibelm_top_outer_core, &
+                                ibelm_bottom_outer_core, &
+                                ibool_outer_core, &
+                                xstore_outer_core,ystore_outer_core,zstore_outer_core, &
+                                num_phase_ispec_outer_core,phase_ispec_inner_outer_core, &
+                                nspec_outer_outer_core,nspec_inner_outer_core, &
+                                NSPEC2D_TOP(IREGION_OUTER_CORE), &
+                                NSPEC2D_BOTTOM(IREGION_OUTER_CORE), &
+                                num_colors_outer_outer_core,num_colors_inner_outer_core, &
+                                num_elem_colors_outer_core)
 
 
   ! inner core region
   if(myrank == 0 ) write(IMAIN,*) "  loading inner core region"
   call prepare_inner_core_device(Mesh_pointer, &
-                                  xix_inner_core,xiy_inner_core,xiz_inner_core, &
-                                  etax_inner_core,etay_inner_core,etaz_inner_core, &
-                                  gammax_inner_core,gammay_inner_core,gammaz_inner_core, &
-                                  rhostore_inner_core,kappavstore_inner_core,muvstore_inner_core, &
-                                  rmass_inner_core, &
-                                  ibelm_top_inner_core, &
-                                  ibool_inner_core, &
-                                  xstore_inner_core,ystore_inner_core,zstore_inner_core, &
-                                  c11store_inner_core,c12store_inner_core,c13store_inner_core, &
-                                  c33store_inner_core,c44store_inner_core, &
-                                  idoubling_inner_core, &
-                                  num_phase_ispec_inner_core,phase_ispec_inner_inner_core, &
-                                  nspec_outer_inner_core,nspec_inner_inner_core, &
-                                  NSPEC2D_TOP(IREGION_INNER_CORE))
-  call sync_all()
+                                xix_inner_core,xiy_inner_core,xiz_inner_core, &
+                                etax_inner_core,etay_inner_core,etaz_inner_core, &
+                                gammax_inner_core,gammay_inner_core,gammaz_inner_core, &
+                                rhostore_inner_core,kappavstore_inner_core,muvstore_inner_core, &
+                                rmass_inner_core, &
+                                ibelm_top_inner_core, &
+                                ibool_inner_core, &
+                                xstore_inner_core,ystore_inner_core,zstore_inner_core, &
+                                c11store_inner_core,c12store_inner_core,c13store_inner_core, &
+                                c33store_inner_core,c44store_inner_core, &
+                                idoubling_inner_core, &
+                                num_phase_ispec_inner_core,phase_ispec_inner_inner_core, &
+                                nspec_outer_inner_core,nspec_inner_inner_core, &
+                                NSPEC2D_TOP(IREGION_INNER_CORE), &
+                                num_colors_outer_inner_core,num_colors_inner_inner_core, &
+                                num_elem_colors_inner_core)
 
   ! transfer forward and backward fields to device with initial values
   if(myrank == 0 ) write(IMAIN,*) "  transfering initial wavefield"

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_arrays_solver.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_arrays_solver.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_arrays_solver.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -59,14 +59,12 @@
     xix,xiy,xiz,etax,etay,etaz,gammax,gammay,gammaz
 
   ! material properties
-  real(kind=CUSTOM_REAL) rhostore(NGLLX,NGLLY,NGLLZ,nspec_iso)
-  real(kind=CUSTOM_REAL) kappavstore(NGLLX,NGLLY,NGLLZ,nspec_iso)
-  real(kind=CUSTOM_REAL) muvstore(NGLLX,NGLLY,NGLLZ,nspec_iso)
+  real(kind=CUSTOM_REAL),dimension(NGLLX,NGLLY,NGLLZ,nspec_iso) :: &
+    rhostore,kappavstore,muvstore
 
   ! additional arrays for anisotropy stored only where needed to save memory
-  real(kind=CUSTOM_REAL) kappahstore(NGLLX,NGLLY,NGLLZ,nspec_tiso)
-  real(kind=CUSTOM_REAL) muhstore(NGLLX,NGLLY,NGLLZ,nspec_tiso)
-  real(kind=CUSTOM_REAL) eta_anisostore(NGLLX,NGLLY,NGLLZ,nspec_tiso)
+  real(kind=CUSTOM_REAL),dimension(NGLLX,NGLLY,NGLLZ,nspec_tiso) :: &
+    kappahstore,muhstore,eta_anisostore
 
   ! additional arrays for full anisotropy
   real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,nspec_ani) :: &
@@ -85,14 +83,12 @@
   real(kind=CUSTOM_REAL), dimension(NGLOB_CRUST_MANTLE_OCEANS) :: rmass_ocean_load
 
   ! flags to know if we should read Vs and anisotropy arrays
-  logical :: READ_KAPPA_MU,READ_TISO, &
-    ABSORBING_CONDITIONS
+  logical :: READ_KAPPA_MU,READ_TISO,ABSORBING_CONDITIONS
 
   character(len=150) :: LOCAL_PATH
 
   ! local parameters
   integer :: ier
-  logical,dimension(nspec) :: dummy_l
   ! processor identification
   character(len=150) :: prname
 
@@ -203,8 +199,6 @@
 
   read(IIN) idoubling
 
-  read(IIN) dummy_l ! is_on_a_slice_edge
-
   read(IIN) ispec_is_tiso
 
   close(IIN)

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_mesh_databases.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_mesh_databases.f90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/read_mesh_databases.f90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -100,21 +100,22 @@
   integer :: ier
 
   ! crust and mantle
+
   if(ANISOTROPIC_3D_MANTLE_VAL) then
     READ_KAPPA_MU = .false.
     READ_TISO = .false.
-    nspec_iso = 1
-    nspec_tiso = 1
+    nspec_iso = NSPECMAX_ISO_MANTLE ! 1
+    nspec_tiso = NSPECMAX_TISO_MANTLE ! 1
     nspec_ani = NSPEC_CRUST_MANTLE
   else
+    READ_KAPPA_MU = .true.
     nspec_iso = NSPEC_CRUST_MANTLE
     if(TRANSVERSE_ISOTROPY_VAL) then
       nspec_tiso = NSPECMAX_TISO_MANTLE
     else
       nspec_tiso = 1
     endif
-    nspec_ani = 1
-    READ_KAPPA_MU = .true.
+    nspec_ani = NSPECMAX_ANISO_MANTLE ! 1
     READ_TISO = .true.
   endif
 
@@ -285,7 +286,7 @@
 
   ! inner core (no anisotropy)
   ! rmass_ocean_load is not used in this routine because it is meaningless in the inner core
-  READ_KAPPA_MU = .true.
+  READ_KAPPA_MU = .true. ! (muvstore needed for attenuation)
   READ_TISO = .false.
   nspec_iso = NSPEC_INNER_CORE
   nspec_tiso = 1
@@ -557,63 +558,62 @@
   call MPI_BCAST(iproc_eta_slice,NPROCTOT_VAL,MPI_INTEGER,0,MPI_COMM_WORLD,ier)
 
   ! output a topology map of slices - fix 20x by nproc
-  if (myrank == 0 .and. NCHUNKS_VAL == 6 .and. NPROCTOT_VAL < 1000 ) then
-    write(IMAIN,*) 'Spatial distribution of the slices'
-    do iproc_xi = NPROC_XI_VAL-1, 0, -1
-      write(IMAIN,'(20x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_AB
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+  if (myrank == 0 ) then
+    if( NCHUNKS_VAL == 6 .and. NPROCTOT_VAL < 1000 ) then
+      write(IMAIN,*) 'Spatial distribution of the slices'
+      do iproc_xi = NPROC_XI_VAL-1, 0, -1
+        write(IMAIN,'(20x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_AB
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(1x)',advance='yes')
       enddo
-      write(IMAIN,'(1x)',advance='yes')
-    enddo
-    write(IMAIN, *) ' '
-    do iproc_xi = NPROC_XI_VAL-1, 0, -1
-      write(IMAIN,'(1x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_BC
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+      write(IMAIN, *) ' '
+      do iproc_xi = NPROC_XI_VAL-1, 0, -1
+        write(IMAIN,'(1x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_BC
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(3x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_AC
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(3x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_BC_ANTIPODE
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(1x)',advance='yes')
       enddo
-      write(IMAIN,'(3x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_AC
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+      write(IMAIN, *) ' '
+      do iproc_xi = NPROC_XI_VAL-1, 0, -1
+        write(IMAIN,'(20x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_AB_ANTIPODE
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(1x)',advance='yes')
       enddo
-      write(IMAIN,'(3x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_BC_ANTIPODE
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+      write(IMAIN, *) ' '
+      do iproc_xi = NPROC_XI_VAL-1, 0, -1
+        write(IMAIN,'(20x)',advance='no')
+        do iproc_eta = NPROC_ETA_VAL -1, 0, -1
+          ichunk = CHUNK_AC_ANTIPODE
+          write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
+        enddo
+        write(IMAIN,'(1x)',advance='yes')
       enddo
-      write(IMAIN,'(1x)',advance='yes')
-    enddo
-    write(IMAIN, *) ' '
-    do iproc_xi = NPROC_XI_VAL-1, 0, -1
-      write(IMAIN,'(20x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_AB_ANTIPODE
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
-      enddo
-      write(IMAIN,'(1x)',advance='yes')
-    enddo
-    write(IMAIN, *) ' '
-    do iproc_xi = NPROC_XI_VAL-1, 0, -1
-      write(IMAIN,'(20x)',advance='no')
-      do iproc_eta = NPROC_ETA_VAL -1, 0, -1
-        ichunk = CHUNK_AC_ANTIPODE
-        write(IMAIN,'(i5)',advance='no') addressing(ichunk,iproc_xi,iproc_eta)
-      enddo
-      write(IMAIN,'(1x)',advance='yes')
-    enddo
-    write(IMAIN, *) ' '
+      write(IMAIN, *) ' '
+    endif
   endif
 
   ! determine chunk number and local slice coordinates using addressing
   ! (needed for stacey conditions)
   ichunk = ichunk_slice(myrank)
 
-  !iproc_xi = iproc_xi_slice(myrank)
-  !iproc_eta = iproc_eta_slice(myrank)
-
   end subroutine read_mesh_databases_addressing
 
 
@@ -644,6 +644,7 @@
           request_recv_vector_crust_mantle(num_interfaces_crust_mantle), &
           stat=ier)
   if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_crust_mantle etc.')
+
   if( SIMULATION_TYPE == 3 ) then
     allocate(b_buffer_send_vector_crust_mantle(NDIM,max_nibool_interfaces_crust_mantle,num_interfaces_crust_mantle), &
             b_buffer_recv_vector_crust_mantle(NDIM,max_nibool_interfaces_crust_mantle,num_interfaces_crust_mantle), &
@@ -662,6 +663,7 @@
           request_recv_scalar_outer_core(num_interfaces_outer_core), &
           stat=ier)
   if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_outer_core etc.')
+
   if( SIMULATION_TYPE == 3 ) then
     allocate(b_buffer_send_scalar_outer_core(max_nibool_interfaces_outer_core,num_interfaces_outer_core), &
             b_buffer_recv_scalar_outer_core(max_nibool_interfaces_outer_core,num_interfaces_outer_core), &
@@ -680,6 +682,7 @@
           request_recv_vector_inner_core(num_interfaces_inner_core), &
           stat=ier)
   if( ier /= 0 ) call exit_mpi(myrank,'error allocating array buffer_send_vector_inner_core etc.')
+
   if( SIMULATION_TYPE == 3 ) then
     allocate(b_buffer_send_vector_inner_core(NDIM,max_nibool_interfaces_inner_core,num_interfaces_inner_core), &
             b_buffer_recv_vector_inner_core(NDIM,max_nibool_interfaces_inner_core,num_interfaces_inner_core), &
@@ -997,8 +1000,6 @@
   else
     nabs_xmin_cm = 1
   endif
-  !daniel: not sure why dimensions are (..,..,..,..,8)  ?
-  !allocate(absorb_xmin_crust_mantle5(NDIM,NGLLY,NGLLZ,nabs_xmin_cm,8),stat=ier)
   allocate(absorb_xmin_crust_mantle(NDIM,NGLLY,NGLLZ,nabs_xmin_cm),stat=ier)
   if( ier /= 0 ) call exit_MPI(myrank,'error allocating absorb xmin')
 
@@ -1008,8 +1009,6 @@
   else
     nabs_xmax_cm = 1
   endif
-  !daniel: not sure why dimensions are (..,..,..,..,8)
-  !allocate(absorb_xmax_crust_mantle5(NDIM,NGLLY,NGLLZ,nabs_xmax_cm,8),stat=ier)
   allocate(absorb_xmax_crust_mantle(NDIM,NGLLY,NGLLZ,nabs_xmax_cm),stat=ier)
   if( ier /= 0 ) call exit_MPI(myrank,'error allocating absorb xmax')
 
@@ -1019,8 +1018,6 @@
   else
     nabs_ymin_cm = 1
   endif
-  !daniel: not sure why dimensions are (..,..,..,..,8)
-  !allocate(absorb_ymin_crust_mantle5(NDIM,NGLLX,NGLLZ,nabs_ymin_cm,8),stat=ier)
   allocate(absorb_ymin_crust_mantle(NDIM,NGLLX,NGLLZ,nabs_ymin_cm),stat=ier)
   if( ier /= 0 ) call exit_MPI(myrank,'error allocating absorb ymin')
 
@@ -1030,8 +1027,6 @@
   else
     nabs_ymax_cm = 1
   endif
-  !daniel: not sure why dimensions are (..,..,..,..,8)
-  !allocate(absorb_ymax_crust_mantle5(NDIM,NGLLX,NGLLZ,nabs_ymax_cm,8),stat=ier)
   allocate(absorb_ymax_crust_mantle(NDIM,NGLLX,NGLLZ,nabs_ymax_cm),stat=ier)
   if( ier /= 0 ) call exit_MPI(myrank,'error allocating absorb ymax')
 

Modified: seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/specfem3D_par.F90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/specfem3D_par.F90	2012-08-11 02:22:07 UTC (rev 20565)
+++ seismo/3D/SPECFEM3D_GLOBE/branches/SPECFEM3D_GLOBE_SUNFLOWER/src/specfem3D/specfem3D_par.F90	2012-08-13 00:58:02 UTC (rev 20566)
@@ -495,9 +495,13 @@
   real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_INNER_CORE) :: &
     xix_inner_core,xiy_inner_core,xiz_inner_core,&
     etax_inner_core,etay_inner_core,etaz_inner_core, &
-    gammax_inner_core,gammay_inner_core,gammaz_inner_core, &
-    rhostore_inner_core, kappavstore_inner_core,muvstore_inner_core
+    gammax_inner_core,gammay_inner_core,gammaz_inner_core
 
+  ! material parameters
+  ! (note: muvstore also needed for attenuation in case of anisotropic inner core)
+  real(kind=CUSTOM_REAL), dimension(NGLLX,NGLLY,NGLLZ,NSPEC_INNER_CORE) :: &
+    rhostore_inner_core,kappavstore_inner_core,muvstore_inner_core
+
   real(kind=CUSTOM_REAL), dimension(NGLOB_INNER_CORE) :: &
     xstore_inner_core,ystore_inner_core,zstore_inner_core
 



More information about the CIG-COMMITS mailing list