anchor.diff:      nu = 10._dp**nu
   
     end subroutine dust_sample_emit_frequency
  -
  -  subroutine dust_sample_emit_frequency_eta_nu(d,jnu_var_id,jnu_var_frac,nu)
  -
  -    implicit none
  -
  -    type(dust),intent(in)          :: d
  -    integer,intent(in)             :: jnu_var_id
  -    real(dp),intent(in)            :: jnu_var_frac
  -    real(dp),intent(out)           :: nu
  -
  -    real(dp) :: nu1,nu2,xi
  -
  -    call random(xi)
  -
  -    nu1 = sample_pdf(d%e_nu(jnu_var_id),xi)
  -    nu2 = sample_pdf(d%e_nu(jnu_var_id+1),xi)
  -
  -    nu = log10(nu1) + jnu_var_frac * (log10(nu2) - log10(nu1))
  -    nu = 10._dp**nu
  -
  -  end subroutine dust_sample_emit_frequency_eta_nu
   
     subroutine dust_scatter_peeloff(d,nu,a,s,a_req)
       implicit none
  
positive.code: 
      ! Allocate emissivity PDF
      allocate(d%j_nu(d%n_jnu))
      allocate(d%e_nu(d%n_jnu))
  
      do i=1,d%n_jnu
         call set_pdf(d%j_nu(i),emiss_nu,emiss_jnu(i,:),log=.true.)
  
negative.code:   public :: dust_scatter_peeloff
    public :: dust_sample_emit_probability
    public :: dust_sample_emit_frequency
    public :: dust_jnu_var_pos_frac
  
    type dust
  