LEGENDRE.pm (PDL-2.077) | : | LEGENDRE.pm (PDL-2.078) | ||
---|---|---|---|---|
skipping to change at line 159 | skipping to change at line 159 | |||
=for usage | =for usage | |||
$Plm = gsl_sf_legendre_array($x,'P',4,-1); | $Plm = gsl_sf_legendre_array($x,'P',4,-1); | |||
The calculation is done for degree 0 <= l <= lmax and order 0 <= m <= l on the r ange abs(x)<=1. | The calculation is done for degree 0 <= l <= lmax and order 0 <= m <= l on the r ange abs(x)<=1. | |||
The parameter norm should be: | The parameter norm should be: | |||
=over 3 | =over 3 | |||
=item 'P' for unnormalized associated Legendre polynomials P_l^m(x), | ||||
=item 'S' for Schmidt semi-normalized associated Legendre polynomials S_l^m(x), | =item 'S' for Schmidt semi-normalized associated Legendre polynomials S_l^m(x), | |||
=item 'Y' for spherical harmonic associated Legendre polynomials Y_l^m(x), or | =item 'Y' for spherical harmonic associated Legendre polynomials Y_l^m(x), or | |||
=item 'N' for fully normalized associated Legendre polynomials N_l^m(x). | =item 'N' for fully normalized associated Legendre polynomials N_l^m(x). | |||
=item 'P' (or any other) for unnormalized associated Legendre polynomials P_l^m( | ||||
x), | ||||
=back | =back | |||
lmax is the maximum degree l. | lmax is the maximum degree l. | |||
csphase should be (-1) to INCLUDE the Condon-Shortley phase factor (-1)^m, or (+ 1) to EXCLUDE it. | csphase should be (-1) to INCLUDE the Condon-Shortley phase factor (-1)^m, or (+ 1) to EXCLUDE it. | |||
See L</gsl_sf_legendre_array_index> to get the value of C<l> and C<m> in the ret urned vector. | See L</gsl_sf_legendre_array_index> to get the value of C<l> and C<m> in the ret urned vector. | |||
=for bad | =for bad | |||
gsl_sf_legendre_array processes bad values. | gsl_sf_legendre_array processes bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 229 "LEGENDRE.pm" | #line 228 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_legendre_array = \&PDL::gsl_sf_legendre_array; | *gsl_sf_legendre_array = \&PDL::gsl_sf_legendre_array; | |||
#line 236 "LEGENDRE.pm" | #line 235 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_legendre_array_index | =head2 gsl_sf_legendre_array_index | |||
=for sig | =for sig | |||
Signature: (int [o]l(n); int [o]m(n); int lmax) | Signature: (int [o]l(n); int [o]m(n); int lmax) | |||
=for ref | =for ref | |||
skipping to change at line 210 | skipping to change at line 210 | |||
($l,$m) = gsl_sf_legendre_array_index($lmax); | ($l,$m) = gsl_sf_legendre_array_index($lmax); | |||
Note that this function is called differently than the corresponding GSL functio n, to make it more useful for PDL: here you just input the maximum l (lmax) that was used in C<gsl_sf_legendre_array> and it calculates all l and m values. | Note that this function is called differently than the corresponding GSL functio n, to make it more useful for PDL: here you just input the maximum l (lmax) that was used in C<gsl_sf_legendre_array> and it calculates all l and m values. | |||
=for bad | =for bad | |||
gsl_sf_legendre_array_index does not process bad values. | gsl_sf_legendre_array_index does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 266 "LEGENDRE.pm" | #line 265 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_legendre_array_index = \&PDL::gsl_sf_legendre_array_index; | *gsl_sf_legendre_array_index = \&PDL::gsl_sf_legendre_array_index; | |||
#line 273 "LEGENDRE.pm" | #line 272 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_legendre_sphPlm | =head2 gsl_sf_legendre_sphPlm | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); int l; int m) | Signature: (double x(); double [o]y(); double [o]e(); int l; int m) | |||
=for ref | =for ref | |||
P_lm(x), normalized properly for use in spherical harmonics | P_lm(x), normalized properly for use in spherical harmonics | |||
=for bad | =for bad | |||
gsl_sf_legendre_sphPlm does not process bad values. | gsl_sf_legendre_sphPlm does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 298 "LEGENDRE.pm" | #line 297 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_legendre_sphPlm = \&PDL::gsl_sf_legendre_sphPlm; | *gsl_sf_legendre_sphPlm = \&PDL::gsl_sf_legendre_sphPlm; | |||
#line 305 "LEGENDRE.pm" | #line 304 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_half | =head2 gsl_sf_conicalP_half | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); double lambda) | Signature: (double x(); double [o]y(); double [o]e(); double lambda) | |||
=for ref | =for ref | |||
Irregular Spherical Conical Function P^{1/2}_{-1/2 + I lambda}(x) | Irregular Spherical Conical Function P^{1/2}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_half does not process bad values. | gsl_sf_conicalP_half does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 330 "LEGENDRE.pm" | #line 329 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_half = \&PDL::gsl_sf_conicalP_half; | *gsl_sf_conicalP_half = \&PDL::gsl_sf_conicalP_half; | |||
#line 337 "LEGENDRE.pm" | #line 336 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_mhalf | =head2 gsl_sf_conicalP_mhalf | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); double lambda) | Signature: (double x(); double [o]y(); double [o]e(); double lambda) | |||
=for ref | =for ref | |||
Regular Spherical Conical Function P^{-1/2}_{-1/2 + I lambda}(x) | Regular Spherical Conical Function P^{-1/2}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_mhalf does not process bad values. | gsl_sf_conicalP_mhalf does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 362 "LEGENDRE.pm" | #line 361 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_mhalf = \&PDL::gsl_sf_conicalP_mhalf; | *gsl_sf_conicalP_mhalf = \&PDL::gsl_sf_conicalP_mhalf; | |||
#line 369 "LEGENDRE.pm" | #line 368 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_0 | =head2 gsl_sf_conicalP_0 | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); double lambda) | Signature: (double x(); double [o]y(); double [o]e(); double lambda) | |||
=for ref | =for ref | |||
Conical Function P^{0}_{-1/2 + I lambda}(x) | Conical Function P^{0}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_0 does not process bad values. | gsl_sf_conicalP_0 does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 394 "LEGENDRE.pm" | #line 393 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_0 = \&PDL::gsl_sf_conicalP_0; | *gsl_sf_conicalP_0 = \&PDL::gsl_sf_conicalP_0; | |||
#line 401 "LEGENDRE.pm" | #line 400 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_1 | =head2 gsl_sf_conicalP_1 | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); double lambda) | Signature: (double x(); double [o]y(); double [o]e(); double lambda) | |||
=for ref | =for ref | |||
Conical Function P^{1}_{-1/2 + I lambda}(x) | Conical Function P^{1}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_1 does not process bad values. | gsl_sf_conicalP_1 does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 426 "LEGENDRE.pm" | #line 425 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_1 = \&PDL::gsl_sf_conicalP_1; | *gsl_sf_conicalP_1 = \&PDL::gsl_sf_conicalP_1; | |||
#line 433 "LEGENDRE.pm" | #line 432 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_sph_reg | =head2 gsl_sf_conicalP_sph_reg | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); int l; double lambda) | Signature: (double x(); double [o]y(); double [o]e(); int l; double lambda) | |||
=for ref | =for ref | |||
Regular Spherical Conical Function P^{-1/2-l}_{-1/2 + I lambda}(x) | Regular Spherical Conical Function P^{-1/2-l}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_sph_reg does not process bad values. | gsl_sf_conicalP_sph_reg does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 458 "LEGENDRE.pm" | #line 457 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_sph_reg = \&PDL::gsl_sf_conicalP_sph_reg; | *gsl_sf_conicalP_sph_reg = \&PDL::gsl_sf_conicalP_sph_reg; | |||
#line 465 "LEGENDRE.pm" | #line 464 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_conicalP_cyl_reg_e | =head2 gsl_sf_conicalP_cyl_reg_e | |||
=for sig | =for sig | |||
Signature: (double x(); double [o]y(); double [o]e(); int m; double lambda) | Signature: (double x(); double [o]y(); double [o]e(); int m; double lambda) | |||
=for ref | =for ref | |||
Regular Cylindrical Conical Function P^{-m}_{-1/2 + I lambda}(x) | Regular Cylindrical Conical Function P^{-m}_{-1/2 + I lambda}(x) | |||
=for bad | =for bad | |||
gsl_sf_conicalP_cyl_reg_e does not process bad values. | gsl_sf_conicalP_cyl_reg_e does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 490 "LEGENDRE.pm" | #line 489 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_conicalP_cyl_reg_e = \&PDL::gsl_sf_conicalP_cyl_reg_e; | *gsl_sf_conicalP_cyl_reg_e = \&PDL::gsl_sf_conicalP_cyl_reg_e; | |||
#line 497 "LEGENDRE.pm" | #line 496 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_legendre_H3d | =head2 gsl_sf_legendre_H3d | |||
=for sig | =for sig | |||
Signature: (double [o]y(); double [o]e(); int l; double lambda; double eta) | Signature: (double [o]y(); double [o]e(); int l; double lambda; double eta) | |||
=for ref | =for ref | |||
lth radial eigenfunction of the Laplacian on the 3-dimensional hyperbolic space. | lth radial eigenfunction of the Laplacian on the 3-dimensional hyperbolic space. | |||
=for bad | =for bad | |||
gsl_sf_legendre_H3d does not process bad values. | gsl_sf_legendre_H3d does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 522 "LEGENDRE.pm" | #line 521 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_legendre_H3d = \&PDL::gsl_sf_legendre_H3d; | *gsl_sf_legendre_H3d = \&PDL::gsl_sf_legendre_H3d; | |||
#line 529 "LEGENDRE.pm" | #line 528 "LEGENDRE.pm" | |||
#line 1058 "../../../../blib/lib/PDL/PP.pm" | #line 1058 "../../../../blib/lib/PDL/PP.pm" | |||
=head2 gsl_sf_legendre_H3d_array | =head2 gsl_sf_legendre_H3d_array | |||
=for sig | =for sig | |||
Signature: (double [o]y(num); int l=>num; double lambda; double eta) | Signature: (double [o]y(num); int l=>num; double lambda; double eta) | |||
=for ref | =for ref | |||
Array of H3d(ell), for l from 0 to n-1. | Array of H3d(ell), for l from 0 to n-1. | |||
=for bad | =for bad | |||
gsl_sf_legendre_H3d_array does not process bad values. | gsl_sf_legendre_H3d_array does not process bad values. | |||
It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays. | |||
=cut | =cut | |||
#line 554 "LEGENDRE.pm" | #line 553 "LEGENDRE.pm" | |||
#line 1060 "../../../../blib/lib/PDL/PP.pm" | #line 1060 "../../../../blib/lib/PDL/PP.pm" | |||
*gsl_sf_legendre_H3d_array = \&PDL::gsl_sf_legendre_H3d_array; | *gsl_sf_legendre_H3d_array = \&PDL::gsl_sf_legendre_H3d_array; | |||
#line 561 "LEGENDRE.pm" | #line 560 "LEGENDRE.pm" | |||
#line 344 "gsl_sf_legendre.pd" | #line 302 "gsl_sf_legendre.pd" | |||
=head1 AUTHOR | =head1 AUTHOR | |||
This file copyright (C) 1999 Christian Pellegrin <chri@infis.univ.trieste.it> | This file copyright (C) 1999 Christian Pellegrin <chri@infis.univ.trieste.it> | |||
All rights reserved. There | All rights reserved. There | |||
is no warranty. You are allowed to redistribute this software / | is no warranty. You are allowed to redistribute this software / | |||
documentation under certain conditions. For details, see the file | documentation under certain conditions. For details, see the file | |||
COPYING in the PDL distribution. If this file is separated from the | COPYING in the PDL distribution. If this file is separated from the | |||
PDL distribution, the copyright notice should be included in the file. | PDL distribution, the copyright notice should be included in the file. | |||
The GSL SF modules were written by G. Jungman. | The GSL SF modules were written by G. Jungman. | |||
=cut | =cut | |||
#line 582 "LEGENDRE.pm" | #line 581 "LEGENDRE.pm" | |||
# Exit with OK status | # Exit with OK status | |||
1; | 1; | |||
End of changes. 26 change blocks. | ||||
26 lines changed or deleted | 27 lines changed or added |