### Home

Welcome

This site provides source code for Fortran computer programs

that calculate accurate values for Mathieu functions and both

prolate and oblate spheroidal wave functions over extremely

wide parameter ranges. The program matfcn delivers values

for both angular and/or radial (i.e., modified) Mathieu functions

of integer order. The program profcn calculates values for angular

and/or radial prolate spheroidal wave functions. Oblfcn calculates

corresponding values for oblate angular and radial functions.

Matfcn performs calculations in double precision (real*8)

arithmetic. Both profcn and oblfcn utilize quadruple precision

(real*16) arithmetic to calculate accurate values over the widest

possible parameter ranges. [64-bit Fortran compilers may offer

the equivalent of quadruple precision (132-bit arithmetic on a PC)

with double precision speed by using two 64-bit words.] Comment

statements at the beginning of each program provide detailed

instructions on how to use them. Also provided are sample input

files (matfcn.dat, profcn.dat, and oblfcn.dat, respectively) and the

corresponding output files giving the computed radial (fort.20)

and angular function (fort.30) values. For convenience, the site

provides subroutine versions of matfcn, profcn and oblfcn.

This site provides pdf files of the three articles published in the

Quarterly of Applied Mathematics that are the basis for matfcn and

profcn. It also provides a brief pdf file describing oblfcn and the

methods used to calculate the oblate functions.

I have been working on algorithms for spheroidal wave functions for

over 40 years. I began work on algorithms for Mathieu functions of

integer order in 2004. The Office of Naval Research has generously

supported my effort since I began my career at the Naval Research

Laboratory in 1968.

The programs profcn and matfcn utilize traditional expressions

to calculate the functions together with new approaches that provide

accurate values when the traditional expressions fail. These new

approaches were developed beginning in about 2000 in joint efforts

with Jeffrey Boisvert of the Naval Undersea Warfare Center in

Newport, Rhode Island.

I recently developed the program oblfcn starting with profcn as its

nucleus. Oblfcn uses traditional expressions together with new

approaches similar to those used for profcn that significantly extend

the parameter ranges for which accurate function values can be

obtained.

You can contact me via the email account set up for this purpose if

you have any questions or comments. If you discover a bug in any

of the programs, please let me know so I can correct the code.

Arnie Lee Van Buren