Bessel function scaling + limited range?

Dmitri A. Sergatskov dasergatskov at gmail.com
Mon Feb 4 16:38:40 CST 2008


FWIW:

gsl's version of besselk function seams to work:

#include <stdio.h>
#include <stdlib.h>
#include <gsl/gsl_sf_bessel.h>

#define NPT (20)

int
main(void)
{
  int nmin;
  int nmax;
  int idx;
  double x;
  double result[NPT+1];

  nmin = 15;
  nmax = nmin+NPT;

  x = 0.6;

  gsl_sf_bessel_Kn_scaled_array (nmin, nmax, x, result);

  for(idx=0; idx<NPT; idx++) {
    printf("result %li = %g \n", nmin+idx, result[idx]);
  }
  return 0;

[]$ gcc testgsl.c -lgsl -lgslcblas -lm
[]$ ./a.out
result 15 = 5.49978e+18
result 16 = 2.75107e+20
result 17 = 1.46779e+22
result 18 = 8.3202e+23
result 19 = 4.99359e+25
result 20 = 3.16344e+27
result 21 = 2.10946e+29
result 22 = 1.47694e+31
result 23 = 1.0833e+33
result 24 = 8.30676e+34
result 25 = 6.64649e+36
result 26 = 5.53957e+38
result 27 = 4.80163e+40
result 28 = 4.32202e+42
result 29 = 4.03437e+44
result 30 = 3.90032e+46
result 31 = 3.90072e+48
result 32 = 4.03114e+50
result 33 = 4.30027e+52
result 34 = 4.7307e+54

Sincerely,

Dmitri.
--


More information about the Bug-octave mailing list