"Fossies" - the Fresh Open Source Software Archive

Member "PDL-2.080/GENERATED/PDL/GSLSF/GAMMA.pm" (28 May 2022, 11174 Bytes) of package /linux/misc/PDL-2.080.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Perl source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "GAMMA.pm" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 2.079_vs_2.080.

A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.


    1 #
    2 # GENERATED WITH PDL::PP! Don't modify!
    3 #
    4 package PDL::GSLSF::GAMMA;
    5 
    6 our @EXPORT_OK = qw(gsl_sf_lngamma gsl_sf_gamma gsl_sf_gammastar gsl_sf_gammainv gsl_sf_lngamma_complex gsl_sf_taylorcoeff gsl_sf_fact gsl_sf_doublefact gsl_sf_lnfact gsl_sf_lndoublefact gsl_sf_lnchoose gsl_sf_choose gsl_sf_lnpoch gsl_sf_poch gsl_sf_pochrel gsl_sf_gamma_inc_Q gsl_sf_gamma_inc_P gsl_sf_lnbeta gsl_sf_beta );
    7 our %EXPORT_TAGS = (Func=>\@EXPORT_OK);
    8 
    9 use PDL::Core;
   10 use PDL::Exporter;
   11 use DynaLoader;
   12 
   13 
   14    
   15    our @ISA = ( 'PDL::Exporter','DynaLoader' );
   16    push @PDL::Core::PP, __PACKAGE__;
   17    bootstrap PDL::GSLSF::GAMMA ;
   18 
   19 
   20 
   21 
   22 
   23 
   24 #line 4 "gsl_sf_gamma.pd"
   25 
   26 use strict;
   27 use warnings;
   28 
   29 =head1 NAME
   30 
   31 PDL::GSLSF::GAMMA - PDL interface to GSL Special Functions
   32 
   33 =head1 DESCRIPTION
   34 
   35 This is an interface to the Special Function package present in the GNU Scientific Library. 
   36 
   37 =cut
   38 #line 39 "GAMMA.pm"
   39 
   40 
   41 
   42 
   43 
   44 
   45 =head1 FUNCTIONS
   46 
   47 =cut
   48 
   49 
   50 
   51 
   52 #line 948 "../../../../blib/lib/PDL/PP.pm"
   53 
   54 
   55 
   56 =head2 gsl_sf_lngamma
   57 
   58 =for sig
   59 
   60   Signature: (double x(); double [o]y(); double [o]s(); double [o]e())
   61 
   62 =for ref
   63 
   64 Log[Gamma(x)], x not a negative integer Uses real Lanczos method. Determines the sign of Gamma[x] as well as Log[|Gamma[x]|] for x < 0. So Gamma[x] = sgn * Exp[result_lg].
   65 
   66 =for bad
   67 
   68 gsl_sf_lngamma does not process bad values.
   69 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
   70 
   71 
   72 =cut
   73 #line 74 "GAMMA.pm"
   74 
   75 
   76 
   77 #line 950 "../../../../blib/lib/PDL/PP.pm"
   78 
   79 *gsl_sf_lngamma = \&PDL::gsl_sf_lngamma;
   80 #line 81 "GAMMA.pm"
   81 
   82 
   83 
   84 #line 948 "../../../../blib/lib/PDL/PP.pm"
   85 
   86 
   87 
   88 =head2 gsl_sf_gamma
   89 
   90 =for sig
   91 
   92   Signature: (double x(); double [o]y(); double [o]e())
   93 
   94 =for ref
   95 
   96 Gamma(x), x not a negative integer
   97 
   98 =for bad
   99 
  100 gsl_sf_gamma does not process bad values.
  101 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  102 
  103 
  104 =cut
  105 #line 106 "GAMMA.pm"
  106 
  107 
  108 
  109 #line 950 "../../../../blib/lib/PDL/PP.pm"
  110 
  111 *gsl_sf_gamma = \&PDL::gsl_sf_gamma;
  112 #line 113 "GAMMA.pm"
  113 
  114 
  115 
  116 #line 948 "../../../../blib/lib/PDL/PP.pm"
  117 
  118 
  119 
  120 =head2 gsl_sf_gammastar
  121 
  122 =for sig
  123 
  124   Signature: (double x(); double [o]y(); double [o]e())
  125 
  126 =for ref
  127 
  128 Regulated Gamma Function, x > 0 Gamma^*(x) = Gamma(x)/(Sqrt[2Pi] x^(x-1/2) exp(-x)) = (1 + 1/(12x) + ...),  x->Inf
  129 
  130 =for bad
  131 
  132 gsl_sf_gammastar does not process bad values.
  133 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  134 
  135 
  136 =cut
  137 #line 138 "GAMMA.pm"
  138 
  139 
  140 
  141 #line 950 "../../../../blib/lib/PDL/PP.pm"
  142 
  143 *gsl_sf_gammastar = \&PDL::gsl_sf_gammastar;
  144 #line 145 "GAMMA.pm"
  145 
  146 
  147 
  148 #line 948 "../../../../blib/lib/PDL/PP.pm"
  149 
  150 
  151 
  152 =head2 gsl_sf_gammainv
  153 
  154 =for sig
  155 
  156   Signature: (double x(); double [o]y(); double [o]e())
  157 
  158 =for ref
  159 
  160 1/Gamma(x)
  161 
  162 =for bad
  163 
  164 gsl_sf_gammainv does not process bad values.
  165 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  166 
  167 
  168 =cut
  169 #line 170 "GAMMA.pm"
  170 
  171 
  172 
  173 #line 950 "../../../../blib/lib/PDL/PP.pm"
  174 
  175 *gsl_sf_gammainv = \&PDL::gsl_sf_gammainv;
  176 #line 177 "GAMMA.pm"
  177 
  178 
  179 
  180 #line 948 "../../../../blib/lib/PDL/PP.pm"
  181 
  182 
  183 
  184 =head2 gsl_sf_lngamma_complex
  185 
  186 =for sig
  187 
  188   Signature: (double zr(); double zi(); double [o]x(); double [o]y(); double [o]xe(); double [o]ye())
  189 
  190 =for ref
  191 
  192 Log[Gamma(z)] for z complex, z not a negative integer. Calculates: lnr = log|Gamma(z)|, arg = arg(Gamma(z))  in (-Pi, Pi]
  193 
  194 =for bad
  195 
  196 gsl_sf_lngamma_complex does not process bad values.
  197 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  198 
  199 
  200 =cut
  201 #line 202 "GAMMA.pm"
  202 
  203 
  204 
  205 #line 950 "../../../../blib/lib/PDL/PP.pm"
  206 
  207 *gsl_sf_lngamma_complex = \&PDL::gsl_sf_lngamma_complex;
  208 #line 209 "GAMMA.pm"
  209 
  210 
  211 
  212 #line 948 "../../../../blib/lib/PDL/PP.pm"
  213 
  214 
  215 
  216 =head2 gsl_sf_taylorcoeff
  217 
  218 =for sig
  219 
  220   Signature: (double x(); double [o]y(); double [o]e(); int n)
  221 
  222 =for ref
  223 
  224 x^n / n!
  225 
  226 =for bad
  227 
  228 gsl_sf_taylorcoeff does not process bad values.
  229 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  230 
  231 
  232 =cut
  233 #line 234 "GAMMA.pm"
  234 
  235 
  236 
  237 #line 950 "../../../../blib/lib/PDL/PP.pm"
  238 
  239 *gsl_sf_taylorcoeff = \&PDL::gsl_sf_taylorcoeff;
  240 #line 241 "GAMMA.pm"
  241 
  242 
  243 
  244 #line 948 "../../../../blib/lib/PDL/PP.pm"
  245 
  246 
  247 
  248 =head2 gsl_sf_fact
  249 
  250 =for sig
  251 
  252   Signature: (x(); double [o]y(); double [o]e())
  253 
  254 =for ref
  255 
  256 n!
  257 
  258 =for bad
  259 
  260 gsl_sf_fact does not process bad values.
  261 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  262 
  263 
  264 =cut
  265 #line 266 "GAMMA.pm"
  266 
  267 
  268 
  269 #line 950 "../../../../blib/lib/PDL/PP.pm"
  270 
  271 *gsl_sf_fact = \&PDL::gsl_sf_fact;
  272 #line 273 "GAMMA.pm"
  273 
  274 
  275 
  276 #line 948 "../../../../blib/lib/PDL/PP.pm"
  277 
  278 
  279 
  280 =head2 gsl_sf_doublefact
  281 
  282 =for sig
  283 
  284   Signature: (x(); double [o]y(); double [o]e())
  285 
  286 =for ref
  287 
  288 n!! = n(n-2)(n-4)
  289 
  290 =for bad
  291 
  292 gsl_sf_doublefact does not process bad values.
  293 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  294 
  295 
  296 =cut
  297 #line 298 "GAMMA.pm"
  298 
  299 
  300 
  301 #line 950 "../../../../blib/lib/PDL/PP.pm"
  302 
  303 *gsl_sf_doublefact = \&PDL::gsl_sf_doublefact;
  304 #line 305 "GAMMA.pm"
  305 
  306 
  307 
  308 #line 948 "../../../../blib/lib/PDL/PP.pm"
  309 
  310 
  311 
  312 =head2 gsl_sf_lnfact
  313 
  314 =for sig
  315 
  316   Signature: (x(); double [o]y(); double [o]e())
  317 
  318 =for ref
  319 
  320 ln n!
  321 
  322 =for bad
  323 
  324 gsl_sf_lnfact does not process bad values.
  325 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  326 
  327 
  328 =cut
  329 #line 330 "GAMMA.pm"
  330 
  331 
  332 
  333 #line 950 "../../../../blib/lib/PDL/PP.pm"
  334 
  335 *gsl_sf_lnfact = \&PDL::gsl_sf_lnfact;
  336 #line 337 "GAMMA.pm"
  337 
  338 
  339 
  340 #line 948 "../../../../blib/lib/PDL/PP.pm"
  341 
  342 
  343 
  344 =head2 gsl_sf_lndoublefact
  345 
  346 =for sig
  347 
  348   Signature: (x(); double [o]y(); double [o]e())
  349 
  350 =for ref
  351 
  352 ln n!!
  353 
  354 =for bad
  355 
  356 gsl_sf_lndoublefact does not process bad values.
  357 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  358 
  359 
  360 =cut
  361 #line 362 "GAMMA.pm"
  362 
  363 
  364 
  365 #line 950 "../../../../blib/lib/PDL/PP.pm"
  366 
  367 *gsl_sf_lndoublefact = \&PDL::gsl_sf_lndoublefact;
  368 #line 369 "GAMMA.pm"
  369 
  370 
  371 
  372 #line 948 "../../../../blib/lib/PDL/PP.pm"
  373 
  374 
  375 
  376 =head2 gsl_sf_lnchoose
  377 
  378 =for sig
  379 
  380   Signature: (n(); m(); double [o]y(); double [o]e())
  381 
  382 =for ref
  383 
  384 log(n choose m)
  385 
  386 =for bad
  387 
  388 gsl_sf_lnchoose does not process bad values.
  389 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  390 
  391 
  392 =cut
  393 #line 394 "GAMMA.pm"
  394 
  395 
  396 
  397 #line 950 "../../../../blib/lib/PDL/PP.pm"
  398 
  399 *gsl_sf_lnchoose = \&PDL::gsl_sf_lnchoose;
  400 #line 401 "GAMMA.pm"
  401 
  402 
  403 
  404 #line 948 "../../../../blib/lib/PDL/PP.pm"
  405 
  406 
  407 
  408 =head2 gsl_sf_choose
  409 
  410 =for sig
  411 
  412   Signature: (n(); m(); double [o]y(); double [o]e())
  413 
  414 =for ref
  415 
  416 n choose m
  417 
  418 =for bad
  419 
  420 gsl_sf_choose does not process bad values.
  421 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  422 
  423 
  424 =cut
  425 #line 426 "GAMMA.pm"
  426 
  427 
  428 
  429 #line 950 "../../../../blib/lib/PDL/PP.pm"
  430 
  431 *gsl_sf_choose = \&PDL::gsl_sf_choose;
  432 #line 433 "GAMMA.pm"
  433 
  434 
  435 
  436 #line 948 "../../../../blib/lib/PDL/PP.pm"
  437 
  438 
  439 
  440 =head2 gsl_sf_lnpoch
  441 
  442 =for sig
  443 
  444   Signature: (double x(); double [o]y(); double [o]s(); double [o]e(); double a)
  445 
  446 =for ref
  447 
  448 Logarithm of Pochammer (Apell) symbol, with sign information. result = log( |(a)_x| ), sgn    = sgn( (a)_x ) where (a)_x := Gamma[a + x]/Gamma[a]
  449 
  450 =for bad
  451 
  452 gsl_sf_lnpoch does not process bad values.
  453 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  454 
  455 
  456 =cut
  457 #line 458 "GAMMA.pm"
  458 
  459 
  460 
  461 #line 950 "../../../../blib/lib/PDL/PP.pm"
  462 
  463 *gsl_sf_lnpoch = \&PDL::gsl_sf_lnpoch;
  464 #line 465 "GAMMA.pm"
  465 
  466 
  467 
  468 #line 948 "../../../../blib/lib/PDL/PP.pm"
  469 
  470 
  471 
  472 =head2 gsl_sf_poch
  473 
  474 =for sig
  475 
  476   Signature: (double x(); double [o]y(); double [o]e(); double a)
  477 
  478 =for ref
  479 
  480 Pochammer (Apell) symbol (a)_x := Gamma[a + x]/Gamma[x]
  481 
  482 =for bad
  483 
  484 gsl_sf_poch does not process bad values.
  485 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  486 
  487 
  488 =cut
  489 #line 490 "GAMMA.pm"
  490 
  491 
  492 
  493 #line 950 "../../../../blib/lib/PDL/PP.pm"
  494 
  495 *gsl_sf_poch = \&PDL::gsl_sf_poch;
  496 #line 497 "GAMMA.pm"
  497 
  498 
  499 
  500 #line 948 "../../../../blib/lib/PDL/PP.pm"
  501 
  502 
  503 
  504 =head2 gsl_sf_pochrel
  505 
  506 =for sig
  507 
  508   Signature: (double x(); double [o]y(); double [o]e(); double a)
  509 
  510 =for ref
  511 
  512 Relative Pochammer (Apell) symbol ((a,x) - 1)/x where (a,x) = (a)_x := Gamma[a + x]/Gamma[a]
  513 
  514 =for bad
  515 
  516 gsl_sf_pochrel does not process bad values.
  517 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  518 
  519 
  520 =cut
  521 #line 522 "GAMMA.pm"
  522 
  523 
  524 
  525 #line 950 "../../../../blib/lib/PDL/PP.pm"
  526 
  527 *gsl_sf_pochrel = \&PDL::gsl_sf_pochrel;
  528 #line 529 "GAMMA.pm"
  529 
  530 
  531 
  532 #line 948 "../../../../blib/lib/PDL/PP.pm"
  533 
  534 
  535 
  536 =head2 gsl_sf_gamma_inc_Q
  537 
  538 =for sig
  539 
  540   Signature: (double x(); double [o]y(); double [o]e(); double a)
  541 
  542 =for ref
  543 
  544 Normalized Incomplete Gamma Function Q(a,x) = 1/Gamma(a) Integral[ t^(a-1) e^(-t), {t,x,Infinity} ]
  545 
  546 =for bad
  547 
  548 gsl_sf_gamma_inc_Q does not process bad values.
  549 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  550 
  551 
  552 =cut
  553 #line 554 "GAMMA.pm"
  554 
  555 
  556 
  557 #line 950 "../../../../blib/lib/PDL/PP.pm"
  558 
  559 *gsl_sf_gamma_inc_Q = \&PDL::gsl_sf_gamma_inc_Q;
  560 #line 561 "GAMMA.pm"
  561 
  562 
  563 
  564 #line 948 "../../../../blib/lib/PDL/PP.pm"
  565 
  566 
  567 
  568 =head2 gsl_sf_gamma_inc_P
  569 
  570 =for sig
  571 
  572   Signature: (double x(); double [o]y(); double [o]e(); double a)
  573 
  574 =for ref
  575 
  576 Complementary Normalized Incomplete Gamma Function P(a,x) = 1/Gamma(a) Integral[ t^(a-1) e^(-t), {t,0,x} ]
  577 
  578 =for bad
  579 
  580 gsl_sf_gamma_inc_P does not process bad values.
  581 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  582 
  583 
  584 =cut
  585 #line 586 "GAMMA.pm"
  586 
  587 
  588 
  589 #line 950 "../../../../blib/lib/PDL/PP.pm"
  590 
  591 *gsl_sf_gamma_inc_P = \&PDL::gsl_sf_gamma_inc_P;
  592 #line 593 "GAMMA.pm"
  593 
  594 
  595 
  596 #line 948 "../../../../blib/lib/PDL/PP.pm"
  597 
  598 
  599 
  600 =head2 gsl_sf_lnbeta
  601 
  602 =for sig
  603 
  604   Signature: (double a(); double b(); double [o]y(); double [o]e())
  605 
  606 =for ref
  607 
  608 Logarithm of Beta Function Log[B(a,b)]
  609 
  610 =for bad
  611 
  612 gsl_sf_lnbeta does not process bad values.
  613 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  614 
  615 
  616 =cut
  617 #line 618 "GAMMA.pm"
  618 
  619 
  620 
  621 #line 950 "../../../../blib/lib/PDL/PP.pm"
  622 
  623 *gsl_sf_lnbeta = \&PDL::gsl_sf_lnbeta;
  624 #line 625 "GAMMA.pm"
  625 
  626 
  627 
  628 #line 948 "../../../../blib/lib/PDL/PP.pm"
  629 
  630 
  631 
  632 =head2 gsl_sf_beta
  633 
  634 =for sig
  635 
  636   Signature: (double a(); double b();double [o]y(); double [o]e())
  637 
  638 =for ref
  639 
  640 Beta Function B(a,b)
  641 
  642 =for bad
  643 
  644 gsl_sf_beta does not process bad values.
  645 It will set the bad-value flag of all output ndarrays if the flag is set for any of the input ndarrays.
  646 
  647 
  648 =cut
  649 #line 650 "GAMMA.pm"
  650 
  651 
  652 
  653 #line 950 "../../../../blib/lib/PDL/PP.pm"
  654 
  655 *gsl_sf_beta = \&PDL::gsl_sf_beta;
  656 #line 657 "GAMMA.pm"
  657 
  658 
  659 
  660 
  661 
  662 #line 270 "gsl_sf_gamma.pd"
  663 
  664 =head1 AUTHOR
  665 
  666 This file copyright (C) 1999 Christian Pellegrin <chri@infis.univ.trieste.it>
  667 All rights reserved. There
  668 is no warranty. You are allowed to redistribute this software /
  669 documentation under certain conditions. For details, see the file
  670 COPYING in the PDL distribution. If this file is separated from the
  671 PDL distribution, the copyright notice should be included in the file.
  672 
  673 The GSL SF modules were written by G. Jungman.
  674 
  675 =cut
  676 #line 677 "GAMMA.pm"
  677 
  678 
  679 
  680 
  681 # Exit with OK status
  682 
  683 1;