Skip to content
Snippets Groups Projects
Commit d10814a5 authored by Liam M. Healy's avatar Liam M. Healy
Browse files

Compute maximum order for Mathieu array functions correctly

The maximum order for Mathieu array functions is the sum of the
minimum order and the size, less 1.  The -1 was missing but is
necessary because the orders given are inclusive; without it, random
memory faults occur.
parent 43c2dff4
No related branches found
No related tags found
No related merge requests found
;; Mathieu functions
;; Liam Healy 2009-02-16 16:30:59EST mathieu.lisp
;; Time-stamp: <2010-07-07 14:24:56EDT mathieu.lisp>
;; Time-stamp: <2010-07-15 10:35:18EDT mathieu.lisp>
;;
;; Copyright 2009 Liam M. Healy
;; Copyright 2009, 2010 Liam M. Healy
;; Distributed under the terms of the GNU General Public License
;;
;; This program is free software: you can redistribute it and/or modify
......@@ -58,14 +58,14 @@
(make-mathieu (+ minimum-order (vdf-size size-or-array)) q))
&aux (size (vdf-size size-or-array)) (result-array (vdf size)))
"gsl_sf_mathieu_a_array"
((minimum-order :int) ((+ minimum-order size) :int) (q :double)
((minimum-order :int) ((+ minimum-order size -1) :int) (q :double)
((mpointer workspace) :pointer) ((foreign-pointer result-array) :pointer))
:gsl-version (1 9)
:outputs (result-array)
:return (result-array)
:documentation ; FDL
"Compute a series of Mathieu characteristic values a_n(q) for n from
minimum-order to minimum-order + size inclusive, where size
minimum-order to minimum-order + size - 1 inclusive, where size
is either the numerical value supplied in size-or-array, or the
the length of the vector supplied there.")
......@@ -77,14 +77,14 @@
(make-mathieu (+ minimum-order (vdf-size size-or-array)) q))
&aux (size (vdf-size size-or-array)) (result-array (vdf size)))
"gsl_sf_mathieu_b_array"
((minimum-order :int) ((+ minimum-order size) :int) (q :double)
((minimum-order :int) ((+ minimum-order size -1) :int) (q :double)
((mpointer workspace) :pointer) ((foreign-pointer result-array) :pointer))
:gsl-version (1 9)
:outputs (result-array)
:return (result-array)
:documentation ; FDL
"Compute a series of Mathieu characteristic values b_n(q) for n from
minimum-order to minimum-order + size inclusive, where size
minimum-order to minimum-order + size - 1 inclusive, where size
is either the numerical value supplied in size-or-array, or the
the length of the vector supplied there.")
......@@ -114,7 +114,7 @@
(make-mathieu (+ minimum-order (vdf-size size-or-array)) q))
&aux (size (vdf-size size-or-array)) (result-array (vdf size)))
"gsl_sf_mathieu_ce_array"
((minimum-order :int) ((+ minimum-order size) :int)
((minimum-order :int) ((+ minimum-order size -1) :int)
(q :double) (x :double)
((mpointer workspace) :pointer) ((foreign-pointer result-array) :pointer))
:gsl-version (1 9)
......@@ -122,7 +122,7 @@
:return (result-array)
:documentation ; FDL
"Compute a series of the angular Mathieu function ce_n(q) for n from
minimum-order to minimum-order + size inclusive, where size
minimum-order to minimum-order + size - 1 inclusive, where size
is either the numerical value supplied in size-or-array, or the
the length of the vector supplied there.")
......@@ -134,7 +134,7 @@
(make-mathieu (+ minimum-order (vdf-size size-or-array)) q))
&aux (size (vdf-size size-or-array)) (result-array (vdf size)))
"gsl_sf_mathieu_se_array"
((minimum-order :int) ((+ minimum-order size) :int)
((minimum-order :int) ((+ minimum-order size -1) :int)
(q :double) (x :double)
((mpointer workspace) :pointer) ((foreign-pointer result-array) :pointer))
:gsl-version (1 9)
......@@ -142,7 +142,7 @@
:return (result-array)
:documentation ; FDL
"Compute a series of the angular Mathieu function se_n(q) for n from
minimum-order to minimum-order + size inclusive, where size
minimum-order to minimum-order + size - 1 inclusive, where size
is either the numerical value supplied in size-or-array, or the
the length of the vector supplied there.")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment