anchor.diff:      call check_okay% assert(ierr==0)
   
       diff = 0.0_dp
  -    call conductivity_set_controls(cond_handle,which_ee_scattering=icond_sy06)    
  +    call conductivity_set_controls(cond_handle,which_ee_scattering=icond_pcy)    
       Tcs = 1.0e9_dp
  -    Z = [ 2, 26 ]
  -    N = [ 2, 30 ]
  +    Z = [ 26, 2 ]
  +    N = [ 30, 2 ]
       A = real(Z+N,dp)
       chem_ids = [ (get_nuclide_index_from_ZN(Z(k),N(k)),k=1,2) ]
       name = [ (nuclib% name(chem_ids(j)), j=1,2) ]
  -    do j = 1,2
  -        name(j)(1:1) = StrUpCase(name(j)(1:1))
  -    end do
  +    name(1:2)(1:1) = [ (StrUpCase(name(j)(1:1)), j=1,2) ]
  +    Z1 = real(Z(1),dp); Z2 = real(Z(2),dp); A1 = real(A(1),dp); A2 = real(A(2),dp)
   
  -    composition: do k = 1, 11
  -        X(1) = 0.1_dp*real(k-1,dp)
  +    X1 = linspace(NX,Xmin,Xmax)
  +    lgrho = linspace(Nrho,lgrho_min,lgrho_max)
  +    lgT = linspace(NT,lgT_min,lgT_max)
  +    
  +    composition: do k = 1, NX
  +        X(1) = X1(k)
           X(2) = 1.0_dp -X(1)
           Y = X/A
           call compute_composition_moments(2,chem_ids,Y,ionic,Xsum, &
  
positive.code:                 mu_e = res(i_mu_e)
                  call get_thermal_conductivity(cond_handle,rho,T, &
                  &   chi,Gamma,eta,mu_e,ionic,Tcs(neutron_1S0),kappa)
                  call eval_PPP_electron_table(rho,T,sqrt(ionic% Z2),K_e,ierr)
                  diff(i,j,k) = (K_e - kappa% electron_total)/kappa% electron_total
                  write (output_unit, '(2f6.2,6es11.3,f7.3)') &
                      & lgrho,lgT, &
                      & Gamma,mu_e*mev_to_ergs/boltzmann/T, &
                      & kappa%ee,kappa%ei,kappa%electron_total, K_e, diff(i,j,k)
              end do density
          end do temperature
          
          write(output_unit,'(a,f7.3)') 'rms(|diff|) = ',norm2(diff(:,:,k))/sqrt(real(13*5,dp))
          loc = maxloc(abs(diff(:,:,k)))
          write(output_unit,'(a,f7.3,2(a,f6.2))') 'max(|diff|) = ',maxval(abs(diff(:,:,k))), &
          &   ' at lg(rho) = ',real(loc(1)-1,dp)/3.0_dp + 5.0_dp, &
          &   '; lg(T) = ',real(loc(2)-1,dp)*0.5_dp + 7.0_dp
          loc = minloc(abs(diff(:,:,k)))
          write(output_unit,'(a,f7.3,2(a,f6.2))') 'min(|diff|) = ',minval(abs(diff(:,:,k))), &
          &   ' at lg(rho) = ',real(loc(1)-1,dp)/3.0_dp + 5.0_dp, &
          &   '; lg(T) = ',real(loc(2)-1,dp)*0.5_dp + 7.0_dp
          
      end do composition
  
      write(output_unit,'(/,a)') 'overall differences'
      write(output_unit,'(a,f7.3)') 'rms(|diff|) = ',norm2(diff)/sqrt(real(13*5*11,dp))
      locz = maxloc(abs(diff))
      write(output_unit,'(a,f7.3,3(a,f6.2))') 'max(|diff|) = ',maxval(abs(diff)), &
      &   ' at lg(rho) = ',real(locz(1)-1,dp)/3.0_dp + 5.0_dp, &
      &   '; lg(T) = ',real(locz(2)-1,dp)*0.5_dp + 7.0_dp, &
      &   '; X(He) = ',0.1_dp*real(locz(3)-1,dp)
      locz = minloc(abs(diff))
      write(output_unit,'(a,f7.3,3(a,f6.2))') 'min(|diff|) = ',minval(abs(diff)), &
      &   ' at lg(rho) = ',real(locz(1)-1,dp)/3.0_dp + 5.0_dp, &
      &   '; lg(T) = ',real(locz(2)-1,dp)*0.5_dp + 7.0_dp, &
      &   '; X(He) = ',0.1_dp*real(locz(3)-1,dp)
      
      call clear_composition(ionic)
      call conductivity_shutdown
      call dStar_eos_shutdown
      call nucchem_shutdown
      
  end program test_P3_tab
  
negative.code:     use dStar_eos_lib
      use conductivity_lib
      use PPP_electron
      
      implicit none
      integer, parameter :: NX=11,Nrho=13,NT=5
      real(dp), parameter :: Xmin=0.0_dp, Xmax = 1.0_dp
      real(dp), parameter :: lgrho_min=5.0_dp, lgrho_max = 9.0_dp
      real(dp), parameter :: lgT_min=7.0_dp, lgT_max = 9.0_dp
      integer :: eos_handle,cond_handle,ierr,i,j,k
      integer :: Z(2), N(2)
      real(dp) :: A(2), X(2)
  