bugGNU Scientific Library - Bugs: bug #47402, Mathieu functions

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #47402: Mathieu functions

Submitted by:  Patrick Alken <psa>
Submitted on:  Sun 13 Mar 2016 07:56:35 PM UTC  
 
Category: NoneSeverity: 3 - Normal
Operating System: Status: None
Assigned to: NoneOpen/Closed: Open
Release: 

Sun 13 Mar 2016 07:56:35 PM UTC, original submission:

from kisilv =at= maths =dot= leeds =dot= ac =dot= uk

Dear All,

I want to raise some issues with the implementation of Mathieu
functions in GSL.

1. Documentation says that every function in gsl_sf_mathieu.h returns
int, however functions like

double gsl_sf_mathieu_ce (int N, double Q, double X)

return double.

2. In many cases Fourier coefficients are of interest to user, and
they are indeed available to a user through

int gsl_sf_mathieu_a_coeff(int order, double qq, double aa, double coeff[]);
int gsl_sf_mathieu_b_coeff(int order, double qq, double aa, double coeff[]);

However, the documentations does not tell this to users.

3. In most cases a user is interested in many values of Mathieu
functions for the same value of the parameter q. In a typical
example, for every point of a 100x100 grid we need 5-10 different
Mathieu function values with a same q. If evaluated from GSL, that
will make hundred fousand identical calls to the above functions for
Fourier coefficients.

In SciLab
(http://forge.scilab.org/index.php/p/mathieu/source/tree/master/)
there is a possibility to recycle those Fourier coefficients once they
have been computed. GSL performance will significantly increase if it
will have a similar feature (may be using workspace?)

4. In many applications Mathieu functions are useless if you are not
able to calculate values of their derivatives as well. For this
reason, evaluation of derivatives of Mathieu functions is implemented
in other packages (SciLab mentioned above, SciPy, etc.)

In fact, evaluation of derivatives does not require much work within
the library code: if the Mathieu function is evaluated by summing up
the terms Ancos(nx), then the derivative is given by the sum of terms
Anncos(n*x). However, there is no an easy and accurate way to find
the derivative if only the value of functions are returned to a user.

I hope this comments may help (but please let me know if you require
actual patches rather than suggestions).

Best wishes,
Vladimir

Patrick Alken <psa>
Project Administrator

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by psa (Submitted the item)
  •  

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    No Changes Have Been Made to This Item

    Back to the top


    Powered by Savane 3.1-cleanup1