Bessel-function-calling-conventions.html 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <html lang="en">
  2. <head>
  3. <title>Bessel function calling conventions - avram - a virtual machine code interpreter</title>
  4. <meta http-equiv="Content-Type" content="text/html">
  5. <meta name="description" content="avram - a virtual machine code interpreter">
  6. <meta name="generator" content="makeinfo 4.13">
  7. <link title="Top" rel="start" href="index.html#Top">
  8. <link rel="up" href="bes.html#bes" title="bes">
  9. <link rel="prev" href="bes.html#bes" title="bes">
  10. <link rel="next" href="Bessel-function-errors.html#Bessel-function-errors" title="Bessel function errors">
  11. <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
  12. <meta http-equiv="Content-Style-Type" content="text/css">
  13. <style type="text/css"><!--
  14. pre.display { font-family:inherit }
  15. pre.format { font-family:inherit }
  16. pre.smalldisplay { font-family:inherit; font-size:smaller }
  17. pre.smallformat { font-family:inherit; font-size:smaller }
  18. pre.smallexample { font-size:smaller }
  19. pre.smalllisp { font-size:smaller }
  20. span.sc { font-variant:small-caps }
  21. span.roman { font-family:serif; font-weight:normal; }
  22. span.sansserif { font-family:sans-serif; font-weight:normal; }
  23. --></style>
  24. </head>
  25. <body>
  26. <div class="node">
  27. <a name="Bessel-function-calling-conventions"></a>
  28. <p>
  29. Next:&nbsp;<a rel="next" accesskey="n" href="Bessel-function-errors.html#Bessel-function-errors">Bessel function errors</a>,
  30. Previous:&nbsp;<a rel="previous" accesskey="p" href="bes.html#bes">bes</a>,
  31. Up:&nbsp;<a rel="up" accesskey="u" href="bes.html#bes">bes</a>
  32. <hr>
  33. </div>
  34. <h4 class="subsection">D.1.1 Bessel function calling conventions</h4>
  35. <p><a name="index-bessel-functions-709"></a>The virtual code interface simplifies the gsl C language API by
  36. excluding the facilities for error estimates, omitting certain array
  37. valued functions, and subsuming sets of related functions
  38. within common ones where possible.
  39. <p>The functions with names in the following group take an argument of
  40. the form <code>(n,x)</code>, where <code>n</code> identifies the member of the
  41. function family, and <code>x</code> is the argument to the function.
  42. <ul>
  43. <li><code>J</code>
  44. regular cylindrical Bessel functions
  45. <li><code>Y</code>
  46. irregular cylindrical Bessel functions
  47. <li><code>I</code>
  48. regular modified cylindrical Bessel functions
  49. <li><code>K</code>
  50. irregular modified cylindrical Bessel functions
  51. </ul>
  52. <p>For these functions, <code>n</code> can be either a natural number encoded
  53. as in <a href="Representation-of-Numeric-and-Textual-Data.html#Representation-of-Numeric-and-Textual-Data">Representation of Numeric and Textual Data</a>, or a floating
  54. point number encoded as in <a href="math.html#math">math</a>. The latter case specifies
  55. functions of a fractional order. The relevant gsl function is called
  56. based on the value and type of the parameter.
  57. <p>Two further related families of functions follow the same calling
  58. convention.
  59. <ul>
  60. <li><code>Isc</code>
  61. scaled regular modified cylindrical Bessel functions
  62. <li><code>Ksc</code>
  63. scaled irregular modified cylindrical Bessel functions
  64. </ul>
  65. <p class="noindent">The foregoing functions are related to those above by an exponential scale
  66. factor as documented in the gsl reference manual.
  67. <p>Functions with names in the following group also take an argument of
  68. the form <code>(n,x)</code>, but are not defined for fractional orders and
  69. so require a natural number for <code>n</code>.
  70. <ul>
  71. <li><code>j</code>
  72. regular spherical Bessel functions
  73. <li><code>y</code>
  74. irregular spherical Bessel functions
  75. <li><code>isc</code>
  76. regular modified spherical Bessel functions
  77. <li><code>ksc</code>
  78. irregular modified spherical Bessel functions
  79. </ul>
  80. <p>The functions in the remaining group follow idiosyncratic calling
  81. conventions.
  82. <ul>
  83. <li><code>zJ0</code>, <code>zJ1</code>
  84. These take a natural number <code>n</code> and return the <code>n</code>th root of
  85. the regular cylindrical Bessel functions of order 0 or 1,
  86. respectively.
  87. <li><code>zJnu</code>
  88. This takes a pair <code>(nu,n)</code> where <code>nu</code> is the (fractional)
  89. order of a regular cylindrical Bessel function, <code>n</code> is a natural
  90. number. It returns the <code>n</code>th zero of the function.
  91. <li><code>lnKnu</code>
  92. This takes a pair of floating point numbers <code>(nu,x)</code> where
  93. <code>nu</code> is the (fractional) order of an irregular modified
  94. cylindrical Bessel and <code>x</code> is the argument to the function,
  95. and it returns the natural log of the function.
  96. </ul>
  97. </body></html>