Slatec.pm (PDL-2.074) | : | Slatec.pm (PDL-2.075) | ||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
our %EXPORT_TAGS = (Func=>\@EXPORT_OK); | our %EXPORT_TAGS = (Func=>\@EXPORT_OK); | |||
use PDL::Core; | use PDL::Core; | |||
use PDL::Exporter; | use PDL::Exporter; | |||
use DynaLoader; | use DynaLoader; | |||
our @ISA = ( 'PDL::Exporter','DynaLoader' ); | our @ISA = ( 'PDL::Exporter','DynaLoader' ); | |||
push @PDL::Core::PP, __PACKAGE__; | push @PDL::Core::PP, __PACKAGE__; | |||
bootstrap PDL::Slatec ; | bootstrap PDL::Slatec ; | |||
#line 6 "slatec.pd" | #line 5 "slatec.pd" | |||
use strict; | use strict; | |||
use warnings; | use warnings; | |||
=head1 NAME | =head1 NAME | |||
PDL::Slatec - PDL interface to the slatec numerical programming library | PDL::Slatec - PDL interface to the slatec numerical programming library | |||
=head1 SYNOPSIS | =head1 SYNOPSIS | |||
use PDL::Slatec; | use PDL::Slatec; | |||
skipping to change at line 89 | skipping to change at line 90 | |||
L</chfd>; L</chfe>; L</chia>; L</chid>. | L</chfd>; L</chfe>; L</chia>; L</chid>. | |||
=item * | =item * | |||
If desired, you can check the monotonicity of your | If desired, you can check the monotonicity of your | |||
data using L</chcm>. | data using L</chcm>. | |||
=back | =back | |||
=cut | =cut | |||
#line 97 "Slatec.pm" | #line 98 "Slatec.pm" | |||
=head1 FUNCTIONS | =head1 FUNCTIONS | |||
=cut | =cut | |||
#line 92 "slatec.pd" | #line 91 "slatec.pd" | |||
=head2 eigsys | =head2 eigsys | |||
=for ref | =for ref | |||
Eigenvalues and eigenvectors of a real positive definite symmetric matrix. | Eigenvalues and eigenvectors of a real positive definite symmetric matrix. | |||
=for usage | =for usage | |||
($eigvals,$eigvecs) = eigsys($mat) | ($eigvals,$eigvecs) = eigsys($mat) | |||
skipping to change at line 127 | skipping to change at line 129 | |||
($inv) = matinv($mat) | ($inv) = matinv($mat) | |||
=head2 polyfit | =head2 polyfit | |||
Convenience wrapper routine about the C<polfit> C<slatec> function. | Convenience wrapper routine about the C<polfit> C<slatec> function. | |||
Separates supplied arguments and return values. | Separates supplied arguments and return values. | |||
=for ref | =for ref | |||
Fit discrete data in a least squares sense by polynomials | Fit discrete data in a least squares sense by polynomials | |||
in one variable. Handles threading correctly--one can pass in a 2D PDL (as C<$y >) | in one variable. Handles broadcasting correctly--one can pass in a 2D PDL (as C <$y>) | |||
and it will pass back a 2D PDL, the rows of which are the polynomial regression | and it will pass back a 2D PDL, the rows of which are the polynomial regression | |||
results (in C<$r> corresponding to the rows of $y. | results (in C<$r> corresponding to the rows of $y. | |||
=for usage | =for usage | |||
($ndeg, $r, $ierr, $c, $coeffs, $rms) = polyfit($x, $y, $w, $maxdeg, [$eps]); | ($ndeg, $r, $ierr, $c, $coeffs, $rms) = polyfit($x, $y, $w, $maxdeg, [$eps]); | |||
$coeffs = polyfit($x,$y,$w,$maxdeg,[$eps]); | $coeffs = polyfit($x,$y,$w,$maxdeg,[$eps]); | |||
where on input: | where on input: | |||
skipping to change at line 162 | skipping to change at line 164 | |||
C<$coeffs> is the polynomial coefficients of the best fit polynomial. | C<$coeffs> is the polynomial coefficients of the best fit polynomial. | |||
C<$rms> is the rms error of the fit. | C<$rms> is the rms error of the fit. | |||
In scalar context, only $coeffs is returned. | In scalar context, only $coeffs is returned. | |||
Historically, C<$eps> was modified in-place to be a return value of the | Historically, C<$eps> was modified in-place to be a return value of the | |||
rms error. This usage is deprecated, and C<$eps> is an optional parameter now. | rms error. This usage is deprecated, and C<$eps> is an optional parameter now. | |||
It is still modified if present. | It is still modified if present. | |||
C<$c> is a working array accessible to Slatec - you can feed it to several | C<$c> is a working array accessible to Slatec - you can feed it to several | |||
other Slatec routines to get nice things out. It does not thread | other Slatec routines to get nice things out. It does not broadcast | |||
correctly and should probably be fixed by someone. If you are | correctly and should probably be fixed by someone. If you are | |||
reading this, that someone might be you. | reading this, that someone might be you. | |||
=for bad | =for bad | |||
This version of polyfit handles bad values correctly. Bad values in | This version of polyfit handles bad values correctly. Bad values in | |||
$y are ignored for the fit and give computed values on the fitted | $y are ignored for the fit and give computed values on the fitted | |||
curve in the return. Bad values in $x or $w are ignored for the fit and | curve in the return. Bad values in $x or $w are ignored for the fit and | |||
result in bad elements in the output. | result in bad elements in the output. | |||
skipping to change at line 229 | skipping to change at line 231 | |||
=for usage | =for usage | |||
$determinant = detslatec $matrix; | $determinant = detslatec $matrix; | |||
=for sig | =for sig | |||
Signature: detslatec(mat(n,m); [o] det()) | Signature: detslatec(mat(n,m); [o] det()) | |||
C<detslatec> computes the determinant of an invertible matrix and barfs if | C<detslatec> computes the determinant of an invertible matrix and barfs if | |||
the matrix argument provided is non-invertible. The matrix threads as usual. | the matrix argument provided is non-invertible. The matrix broadcasts as usual. | |||
This routine was previously known as C<det> which clashes now with | This routine was previously known as C<det> which clashes now with | |||
L<det|PDL::MatrixOps/det> which is provided by L<PDL::MatrixOps>. | L<det|PDL::MatrixOps/det> which is provided by L<PDL::MatrixOps>. | |||
=head2 fft | =head2 fft | |||
=for ref | =for ref | |||
Fast Fourier Transform | Fast Fourier Transform | |||
skipping to change at line 268 | skipping to change at line 270 | |||
print $v_in, $vout | print $v_in, $vout | |||
[1 0 1 0] [1 0 1 0] | [1 0 1 0] [1 0 1 0] | |||
C<PDL::Slatec::rfft> is a convenience wrapper for L</ezfftb>, | C<PDL::Slatec::rfft> is a convenience wrapper for L</ezfftb>, | |||
and performs a reverse Fast Fourier Transform. The input is the same | and performs a reverse Fast Fourier Transform. The input is the same | |||
as the output of L</PDL::Slatec::fft>, and the output | as the output of L</PDL::Slatec::fft>, and the output | |||
of C<rfft> is a data vector, similar to what is input into | of C<rfft> is a data vector, similar to what is input into | |||
L</PDL::Slatec::fft>. | L</PDL::Slatec::fft>. | |||
=cut | =cut | |||
#line 284 "Slatec.pm" | #line 286 "Slatec.pm" | |||
#line 424 "slatec.pd" | #line 423 "slatec.pd" | |||
use PDL::Core; | use PDL::Core; | |||
use PDL::Basic; | use PDL::Basic; | |||
use PDL::Primitive; | use PDL::Primitive; | |||
use PDL::Ufunc; | use PDL::Ufunc; | |||
use strict; | use strict; | |||
# Note: handles only real symmetric positive-definite. | # Note: handles only real symmetric positive-definite. | |||
*eigsys = \&PDL::eigsys; | *eigsys = \&PDL::eigsys; | |||
skipping to change at line 438 | skipping to change at line 440 | |||
} | } | |||
# Run the slatec function | # Run the slatec function | |||
pvalue($_[0], $_[2], $yfit, $yp, $_[3]); | pvalue($_[0], $_[2], $yfit, $yp, $_[3]); | |||
# Returns | # Returns | |||
return ($yfit, $yp); | return ($yfit, $yp); | |||
} | } | |||
#line 458 "Slatec.pm" | #line 461 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 svdc | =head2 svdc | |||
=for sig | =for sig | |||
Signature: (x(n,p);[o]s(p);[o]e(p);[o]u(n,p);[o]v(p,p);[o]work(n);longlong job ();longlong [o]info()) | Signature: (x(n,p);[o]s(p);[o]e(p);[o]u(n,p);[o]v(p,p);[o]work(n);longlong job ();longlong [o]info()) | |||
=for ref | =for ref | |||
singular value decomposition of a matrix | singular value decomposition of a matrix | |||
=for bad | =for bad | |||
svdc does not process bad values. | svdc 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 482 "Slatec.pm" | #line 486 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*svdc = \&PDL::svdc; | *svdc = \&PDL::svdc; | |||
#line 488 "Slatec.pm" | #line 493 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 poco | =head2 poco | |||
=for sig | =for sig | |||
Signature: (a(n,n);rcond();[o]z(n);longlong [o]info()) | Signature: (a(n,n);rcond();[o]z(n);longlong [o]info()) | |||
Factor a real symmetric positive definite matrix | Factor a real symmetric positive definite matrix | |||
and estimate the condition number of the matrix. | and estimate the condition number of the matrix. | |||
=for bad | =for bad | |||
poco does not process bad values. | poco 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 511 "Slatec.pm" | #line 517 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*poco = \&PDL::poco; | *poco = \&PDL::poco; | |||
#line 517 "Slatec.pm" | #line 524 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 geco | =head2 geco | |||
=for sig | =for sig | |||
Signature: (a(n,n);longlong [o]ipvt(n);[o]rcond();[o]z(n)) | Signature: (a(n,n);longlong [o]ipvt(n);[o]rcond();[o]z(n)) | |||
Factor a matrix using Gaussian elimination and estimate | Factor a matrix using Gaussian elimination and estimate | |||
the condition number of the matrix. | the condition number of the matrix. | |||
=for bad | =for bad | |||
geco does not process bad values. | geco 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 540 "Slatec.pm" | #line 548 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*geco = \&PDL::geco; | *geco = \&PDL::geco; | |||
#line 546 "Slatec.pm" | #line 555 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 gefa | =head2 gefa | |||
=for sig | =for sig | |||
Signature: (a(n,n);longlong [o]ipvt(n);longlong [o]info()) | Signature: (a(n,n);longlong [o]ipvt(n);longlong [o]info()) | |||
=for ref | =for ref | |||
Factor a matrix using Gaussian elimination. | Factor a matrix using Gaussian elimination. | |||
=for bad | =for bad | |||
gefa does not process bad values. | gefa 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 570 "Slatec.pm" | #line 580 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*gefa = \&PDL::gefa; | *gefa = \&PDL::gefa; | |||
#line 576 "Slatec.pm" | #line 587 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 podi | =head2 podi | |||
=for sig | =for sig | |||
Signature: (a(n,n);[o]det(two=2);longlong job()) | Signature: (a(n,n);[o]det(two=2);longlong job()) | |||
Compute the determinant and inverse of a certain real | Compute the determinant and inverse of a certain real | |||
symmetric positive definite matrix using the factors | symmetric positive definite matrix using the factors | |||
computed by L</poco>. | computed by L</poco>. | |||
=for bad | =for bad | |||
podi does not process bad values. | podi 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 600 "Slatec.pm" | #line 612 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*podi = \&PDL::podi; | *podi = \&PDL::podi; | |||
#line 606 "Slatec.pm" | #line 619 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 gedi | =head2 gedi | |||
=for sig | =for sig | |||
Signature: (a(n,n);longlong [o]ipvt(n);[o]det(two=2);[o]work(n);longlong job() ) | Signature: (a(n,n);longlong [o]ipvt(n);[o]det(two=2);[o]work(n);longlong job() ) | |||
Compute the determinant and inverse of a matrix using the | Compute the determinant and inverse of a matrix using the | |||
factors computed by L</geco> or L</gefa>. | factors computed by L</geco> or L</gefa>. | |||
=for bad | =for bad | |||
gedi does not process bad values. | gedi 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 629 "Slatec.pm" | #line 643 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*gedi = \&PDL::gedi; | *gedi = \&PDL::gedi; | |||
#line 635 "Slatec.pm" | #line 650 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 gesl | =head2 gesl | |||
=for sig | =for sig | |||
Signature: (a(lda,n);longlong ipvt(n);b(n);longlong job()) | Signature: (a(lda,n);longlong ipvt(n);b(n);longlong job()) | |||
Solve the real system C<A*X=B> or C<TRANS(A)*X=B> using the | Solve the real system C<A*X=B> or C<TRANS(A)*X=B> using the | |||
factors computed by L</geco> or L</gefa>. | factors computed by L</geco> or L</gefa>. | |||
=for bad | =for bad | |||
gesl does not process bad values. | gesl 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 658 "Slatec.pm" | #line 674 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*gesl = \&PDL::gesl; | *gesl = \&PDL::gesl; | |||
#line 664 "Slatec.pm" | #line 681 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 rs | =head2 rs | |||
=for sig | =for sig | |||
Signature: (a(n,n);[o]w(n);longlong matz();[o]z(n,n);[t]fvone(n);[t]fvtwo(n);l onglong [o]ierr()) | Signature: (a(n,n);[o]w(n);longlong matz();[o]z(n,n);[t]fvone(n);[t]fvtwo(n);l onglong [o]ierr()) | |||
This subroutine calls the recommended sequence of | This subroutine calls the recommended sequence of | |||
subroutines from the eigensystem subroutine package (EISPACK) | subroutines from the eigensystem subroutine package (EISPACK) | |||
to find the eigenvalues and eigenvectors (if desired) | to find the eigenvalues and eigenvectors (if desired) | |||
of a REAL SYMMETRIC matrix. | of a REAL SYMMETRIC matrix. | |||
=for bad | =for bad | |||
rs does not process bad values. | rs 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 689 "Slatec.pm" | #line 707 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*rs = \&PDL::rs; | *rs = \&PDL::rs; | |||
#line 695 "Slatec.pm" | #line 714 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 ezffti | =head2 ezffti | |||
=for sig | =for sig | |||
Signature: (longlong n();[o]wsave(foo)) | Signature: (longlong n();[o]wsave(foo)) | |||
Subroutine ezffti initializes the work array C<wsave()> | Subroutine ezffti initializes the work array C<wsave()> | |||
which is used in both L</ezfftf> and | which is used in both L</ezfftf> and | |||
L</ezfftb>. | L</ezfftb>. | |||
The prime factorization | The prime factorization | |||
of C<n> together with a tabulation of the trigonometric functions | of C<n> together with a tabulation of the trigonometric functions | |||
are computed and stored in C<wsave()>. | are computed and stored in C<wsave()>. | |||
=for bad | =for bad | |||
ezffti does not process bad values. | ezffti 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 722 "Slatec.pm" | #line 742 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*ezffti = \&PDL::ezffti; | *ezffti = \&PDL::ezffti; | |||
#line 728 "Slatec.pm" | #line 749 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 ezfftf | =head2 ezfftf | |||
=for sig | =for sig | |||
Signature: (r(n);[o]azero();[o]a(n);[o]b(n);wsave(foo)) | Signature: (r(n);[o]azero();[o]a(n);[o]b(n);wsave(foo)) | |||
=for ref | =for ref | |||
=for bad | =for bad | |||
ezfftf does not process bad values. | ezfftf 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 752 "Slatec.pm" | #line 774 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*ezfftf = \&PDL::ezfftf; | *ezfftf = \&PDL::ezfftf; | |||
#line 758 "Slatec.pm" | #line 781 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 ezfftb | =head2 ezfftb | |||
=for sig | =for sig | |||
Signature: ([o]r(n);azero();a(n);b(n);wsave(foo)) | Signature: ([o]r(n);azero();a(n);b(n);wsave(foo)) | |||
=for ref | =for ref | |||
=for bad | =for bad | |||
ezfftb does not process bad values. | ezfftb 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 782 "Slatec.pm" | #line 806 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*ezfftb = \&PDL::ezfftb; | *ezfftb = \&PDL::ezfftb; | |||
#line 788 "Slatec.pm" | #line 813 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 pcoef | =head2 pcoef | |||
=for sig | =for sig | |||
Signature: (longlong l();c();[o]tc(bar);a(foo)) | Signature: (longlong l();c();[o]tc(bar);a(foo)) | |||
Convert the C<polfit> coefficients to Taylor series form. | Convert the C<polfit> coefficients to Taylor series form. | |||
C<c> and C<a()> must be of the same type. | C<c> and C<a()> must be of the same type. | |||
=for bad | =for bad | |||
pcoef does not process bad values. | pcoef 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 811 "Slatec.pm" | #line 837 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*pcoef = \&PDL::pcoef; | *pcoef = \&PDL::pcoef; | |||
#line 817 "Slatec.pm" | #line 844 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 pvalue | =head2 pvalue | |||
=for sig | =for sig | |||
Signature: (longlong l();x();[o]yfit();[o]yp(nder);a(foo)) | Signature: (longlong l();x();[o]yfit();[o]yp(nder);a(foo)) | |||
Use the coefficients generated by C<polfit> to evaluate the | Use the coefficients generated by C<polfit> to evaluate the | |||
polynomial fit of degree C<l>, along with the first C<nder> of | polynomial fit of degree C<l>, along with the first C<nder> of | |||
its derivatives, at a specified point. C<x> and C<a> must be of the | its derivatives, at a specified point. C<x> and C<a> must be of the | |||
same type. | same type. | |||
=for bad | =for bad | |||
pvalue does not process bad values. | pvalue 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 842 "Slatec.pm" | #line 870 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*pvalue = \&PDL::pvalue; | *pvalue = \&PDL::pvalue; | |||
#line 848 "Slatec.pm" | #line 877 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chim | =head2 chim | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);[o]d(n);longlong [o]ierr()) | Signature: (x(n);f(n);[o]d(n);longlong [o]ierr()) | |||
=for ref | =for ref | |||
Calculate the derivatives of (x,f(x)) using cubic Hermite interpolation. | Calculate the derivatives of (x,f(x)) using cubic Hermite interpolation. | |||
skipping to change at line 801 | skipping to change at line 816 | |||
-3 if C<$x> is not strictly increasing. | -3 if C<$x> is not strictly increasing. | |||
=back | =back | |||
=for bad | =for bad | |||
chim does not process bad values. | chim 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 910 "Slatec.pm" | #line 940 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chim = \&PDL::chim; | *chim = \&PDL::chim; | |||
#line 916 "Slatec.pm" | #line 947 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chic | =head2 chic | |||
=for sig | =for sig | |||
Signature: (longlong ic(two=2);vc(two=2);mflag();x(n);f(n);[o]d(n);wk(nwk);lon glong [o]ierr()) | Signature: (longlong ic(two=2);vc(two=2);mflag();x(n);f(n);[o]d(n);wk(nwk);lon glong [o]ierr()) | |||
=for ref | =for ref | |||
Calculate the derivatives of (x,f(x)) using cubic Hermite interpolation. | Calculate the derivatives of (x,f(x)) using cubic Hermite interpolation. | |||
skipping to change at line 936 | skipping to change at line 952 | |||
-7 if C<nwk E<lt> 2*(n-1)>. | -7 if C<nwk E<lt> 2*(n-1)>. | |||
=back | =back | |||
=for bad | =for bad | |||
chic does not process bad values. | chic 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 1054 "Slatec.pm" | #line 1086 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chic = \&PDL::chic; | *chic = \&PDL::chic; | |||
#line 1060 "Slatec.pm" | #line 1093 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chsp | =head2 chsp | |||
=for sig | =for sig | |||
Signature: (longlong ic(two=2);vc(two=2);x(n);f(n);[o]d(n);wk(nwk);longlong [o ]ierr()) | Signature: (longlong ic(two=2);vc(two=2);x(n);f(n);[o]d(n);wk(nwk);longlong [o ]ierr()) | |||
=for ref | =for ref | |||
Calculate the derivatives of (x,f(x)) using cubic spline interpolation. | Calculate the derivatives of (x,f(x)) using cubic spline interpolation. | |||
skipping to change at line 1048 | skipping to change at line 1065 | |||
for the interior derivative values. | for the interior derivative values. | |||
=back | =back | |||
=for bad | =for bad | |||
chsp does not process bad values. | chsp 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 1175 "Slatec.pm" | #line 1209 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chsp = \&PDL::chsp; | *chsp = \&PDL::chsp; | |||
#line 1181 "Slatec.pm" | #line 1216 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chfd | =head2 chfd | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong check();xe(ne);[o]fe(ne);[o]de(ne);longlon g [o]ierr()) | Signature: (x(n);f(n);d(n);longlong check();xe(ne);[o]fe(ne);[o]de(ne);longlon g [o]ierr()) | |||
=for ref | =for ref | |||
Interpolate function and derivative values. | Interpolate function and derivative values. | |||
skipping to change at line 1110 | skipping to change at line 1128 | |||
which should never happen. | which should never happen. | |||
=back | =back | |||
=for bad | =for bad | |||
chfd does not process bad values. | chfd 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 1246 "Slatec.pm" | #line 1282 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chfd = \&PDL::chfd; | *chfd = \&PDL::chfd; | |||
#line 1252 "Slatec.pm" | #line 1289 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chfe | =head2 chfe | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong check();xe(ne);[o]fe(ne);longlong [o]ierr( )) | Signature: (x(n);f(n);d(n);longlong check();xe(ne);[o]fe(ne);longlong [o]ierr( )) | |||
=for ref | =for ref | |||
Interpolate function values. | Interpolate function values. | |||
skipping to change at line 1167 | skipping to change at line 1186 | |||
-4 if C<nelem($xe) E<lt> 1>. | -4 if C<nelem($xe) E<lt> 1>. | |||
=back | =back | |||
=for bad | =for bad | |||
chfe does not process bad values. | chfe 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 1312 "Slatec.pm" | #line 1350 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chfe = \&PDL::chfe; | *chfe = \&PDL::chfe; | |||
#line 1318 "Slatec.pm" | #line 1357 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chia | =head2 chia | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong check();la();lb();[o]ans();longlong [o]ier r()) | Signature: (x(n);f(n);d(n);longlong check();la();lb();[o]ans();longlong [o]ier r()) | |||
=for ref | =for ref | |||
Integrate (x,f(x)) over arbitrary limits. | Integrate (x,f(x)) over arbitrary limits. | |||
skipping to change at line 1237 | skipping to change at line 1257 | |||
which should never happen. | which should never happen. | |||
=back | =back | |||
=for bad | =for bad | |||
chia does not process bad values. | chia 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 1391 "Slatec.pm" | #line 1431 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chia = \&PDL::chia; | *chia = \&PDL::chia; | |||
#line 1397 "Slatec.pm" | #line 1438 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chid | =head2 chid | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong check();longlong ia();longlong ib();[o]ans ();longlong [o]ierr()) | Signature: (x(n);f(n);d(n);longlong check();longlong ia();longlong ib();[o]ans ();longlong [o]ierr()) | |||
=for ref | =for ref | |||
Integrate (x,f(x)) between data points. | Integrate (x,f(x)) between data points. | |||
skipping to change at line 1295 | skipping to change at line 1316 | |||
-4 if C<$ia> or C<$ib> is out of range. | -4 if C<$ia> or C<$ib> is out of range. | |||
=back | =back | |||
=for bad | =for bad | |||
chid does not process bad values. | chid 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 1458 "Slatec.pm" | #line 1500 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chid = \&PDL::chid; | *chid = \&PDL::chid; | |||
#line 1464 "Slatec.pm" | #line 1507 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chcm | =head2 chcm | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong check();longlong [o]ismon(n);longlong [o]i err()) | Signature: (x(n);f(n);d(n);longlong check();longlong [o]ismon(n);longlong [o]i err()) | |||
=for ref | =for ref | |||
Check the given piecewise cubic Hermite function for monotonicity. | Check the given piecewise cubic Hermite function for monotonicity. | |||
skipping to change at line 1381 | skipping to change at line 1403 | |||
-3 if C<$x> is not strictly increasing. | -3 if C<$x> is not strictly increasing. | |||
=back | =back | |||
=for bad | =for bad | |||
chcm does not process bad values. | chcm 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 1553 "Slatec.pm" | #line 1597 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chcm = \&PDL::chcm; | *chcm = \&PDL::chcm; | |||
#line 1559 "Slatec.pm" | #line 1604 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 chbs | =head2 chbs | |||
=for sig | =for sig | |||
Signature: (x(n);f(n);d(n);longlong knotyp();longlong nknots();t(tsize);[o]bco ef(bsize);longlong [o]ndim();longlong [o]kord();longlong [o]ierr()) | Signature: (x(n);f(n);d(n);longlong knotyp();longlong nknots();t(tsize);[o]bco ef(bsize);longlong [o]ndim();longlong [o]kord();longlong [o]ierr()) | |||
=for ref | =for ref | |||
Piecewise Cubic Hermite function to B-Spline converter. | Piecewise Cubic Hermite function to B-Spline converter. | |||
skipping to change at line 1474 | skipping to change at line 1497 | |||
-5 if C<knotyp E<lt> 0> and C<nknots != 2*n + 4>. | -5 if C<knotyp E<lt> 0> and C<nknots != 2*n + 4>. | |||
=back | =back | |||
=for bad | =for bad | |||
chbs does not process bad values. | chbs 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 1655 "Slatec.pm" | #line 1701 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*chbs = \&PDL::chbs; | *chbs = \&PDL::chbs; | |||
#line 1661 "Slatec.pm" | #line 1708 "Slatec.pm" | |||
#line 1059 "../../blib/lib/PDL/PP.pm" | #line 1058 "../../blib/lib/PDL/PP.pm" | |||
=head2 polfit | =head2 polfit | |||
=for sig | =for sig | |||
Signature: (x(n); y(n); w(n); longlong maxdeg(); longlong [o]ndeg(); [o]eps(); [o]r(n); longlong [o]ierr(); [o]a(foo); [o]coeffs(bar);[t]xtmp(n);[t]ytmp(n);[t ]wtmp(n);[t]rtmp(n)) | Signature: (x(n); y(n); w(n); longlong maxdeg(); longlong [o]ndeg(); [o]eps(); [o]r(n); longlong [o]ierr(); [o]a(foo); [o]coeffs(bar);[t]xtmp(n);[t]ytmp(n);[t ]wtmp(n);[t]rtmp(n)) | |||
Fit discrete data in a least squares sense by polynomials | Fit discrete data in a least squares sense by polynomials | |||
in one variable. C<x()>, C<y()> and C<w()> must be of the same type. | in one variable. C<x()>, C<y()> and C<w()> must be of the same type. | |||
This version handles bad values appropriately | This version handles bad values appropriately | |||
=for bad | =for bad | |||
polfit processes bad values. | polfit 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 1685 "Slatec.pm" | #line 1733 "Slatec.pm" | |||
#line 1060 "../../blib/lib/PDL/PP.pm" | ||||
#line 1061 "../../blib/lib/PDL/PP.pm" | ||||
*polfit = \&PDL::polfit; | *polfit = \&PDL::polfit; | |||
#line 1691 "Slatec.pm" | #line 1740 "Slatec.pm" | |||
#line 1605 "slatec.pd" | #line 1604 "slatec.pd" | |||
=head1 AUTHOR | =head1 AUTHOR | |||
Copyright (C) 1997 Tuomas J. Lukka. | Copyright (C) 1997 Tuomas J. Lukka. | |||
Copyright (C) 2000 Tim Jenness, Doug Burke. | Copyright (C) 2000 Tim Jenness, Doug Burke. | |||
All rights reserved. There is no warranty. You are allowed | All rights reserved. There is no warranty. You are allowed | |||
to redistribute this software / documentation under certain | to redistribute this software / documentation under certain | |||
conditions. For details, see the file COPYING in the PDL | conditions. For details, see the file COPYING in the PDL | |||
distribution. If this file is separated from the PDL distribution, | distribution. If this file is separated from the PDL distribution, | |||
the copyright notice should be included in the file. | the copyright notice should be included in the file. | |||
=cut | =cut | |||
#line 1708 "Slatec.pm" | #line 1758 "Slatec.pm" | |||
# Exit with OK status | # Exit with OK status | |||
1; | 1; | |||
End of changes. 103 change blocks. | ||||
103 lines changed or deleted | 128 lines changed or added |