Maxima – 100- Funzioni speciali – 6

Continuo da qui, copio dal Reference Manual, PDF scaricabile da qui, sono a p.301.

Continuo con le funzioni gamma e fattoriali

beta_incomplete (a, b, z)
The basic definition of the incomplete beta function is

        z
       /
       [         b - 1  a - 1
       I  (1 - t)      t      dt
       ]
       /
        0

This definition is possible for realpart(a) > 0 and realpart(b) > 0 and abs(z) < 1. For other values the incomplete beta function can be defined through a generalized hypergeometric function:

      gamma(a) hypergeometric_generalized([a, 1 - b], [a + 1], z) z

(See functions.wolfram.com for a complete definition of the incomplete beta function. O la solita Wiki).

For negative integers a = −n and positive integers b = m with m <= n the incomplete beta function is defined through

                            m - 1           k
                            ====  (1 - m)  z
                      n - 1 \            k
                     z       >    -----------
                            /     k! (n - k)
                            ====
                            k = 0

Maxima uses this definition to simplify beta_incomplete for a a negative integer.

For a a positive integer, beta_incomplete simplifies for any argument b and z and for b a positive integer for any argument a and z, with the exception of a a negative integer.

For z = 0 and realpart(a) > 0, beta_incomplete has the specific value zero. For z=1 and realpart(b) > 0, beta_incomplete simplifies to the beta function beta(a,b).

Maxima evaluates beta_incomplete numerically for real and complex values in float or bigfloat precision. For the numerical evaluation an expansion of the incomplete beta function in continued fractions is used.

When the option variable beta_expand is true, Maxima expands expressions like beta_incomplete(a+n,b,z) and beta_incomplete(a-n,b,z) where n is a positive integer.

Maxima knows the derivatives of beta_incomplete with respect to the variables a, b and z and the integral with respect to the variable z.

Simplification for a a positive integer:

(%i1) beta_incomplete(2,b,z);
                                       b
                            1 - (1 - z)  (b z + 1)
(%o1)                       ----------------------
                                  b (b + 1)

Simplification for b a positive integer:

(%i2) beta_incomplete(a,2,z);
                                               a
                              (a (1 - z) + 1) z
(%o2)                         ------------------
                                  a (a + 1)

Simplification for a and b a positive integer:

(%i3) beta_incomplete(3,2,z);
                                               3
                              (3 (1 - z) + 1) z
(%o3)                         ------------------
                                      12

a is a negative integer and b <= (−a), Maxima simplifies:

(%i4) beta_incomplete(-3,1,z);
                                       1
(%o4)                               - ----
                                         3
                                      3 z

For the specific values z = 0 and z = 1, Maxima simplifies:

(%i5) assume(a>0,b>0)$

(%i6) beta_incomplete(a,b,0);
(%o6)                                  0
(%i7) beta_incomplete(a,b,1);
(%o7)                             beta(a, b)

Numerical evaluation in float or bigfloat precision:

(%i8) beta_incomplete(0.25,0.50,0.9);
(%o8)                          4.594959440269333
(%i9) fpprec:25$

(%i10) beta_incomplete(0.25,0.50,0.9b0);
(%o10)                   4.594959440269324086971216b0

For abs(z) > 1 beta_incomplete returns a complex result:

(%i11) beta_incomplete(0.25,0.50,1.7);
(%o11)              5.244115108584249 - 1.45518047787844 %i

Results for more general complex arguments:

(%i12) beta_incomplete(0.25+%i,1.0+%i,1.7+%i);
(%o12)             2.726960675662533 - 0.3831175704269183 %i
(%i13) beta_incomplete(1/2,5/4*%i,2.8+%i);
(%o13)             13.04649635168716 %i - 5.802067956269994

Expansion, when beta_expand is true:

(%i14) beta_incomplete(a+1,b,z),beta_expand:true;
                                                       b  a
                   a beta_incomplete(a, b, z)   (1 - z)  z
(%o14)             -------------------------- - -----------
                             b + a                 b + a
(%i15) beta_incomplete(a-1,b,z),beta_expand:true;
                                                            b  a - 1
          beta_incomplete(a, b, z) ((- b) - a + 1)   (1 - z)  z
(%o15)    ---------------------------------------- - ---------------
                           1 - a                          1 - a

Derivative and integral for beta_incomplete:

(%i1) beta_expand:true;
(%o1)                                true
(%i2) diff(beta_incomplete(a, b, z), z);
                                     b - 1  a - 1
(%o2)                         (1 - z)      z
(%i3) integrate(beta_incomplete(a, b, z), z);
             b  a
      (1 - z)  z                                 a beta_incomplete(a, b, z)
(%o3) ----------- + beta_incomplete(a, b, z) z - --------------------------
         b + a                                             b + a
(%i4) factor(diff(%, z));
(%o4)                      beta_incomplete(a, b, z)

continua 😐

Posta un commento o usa questo indirizzo per il trackback.

Trackback

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

%d blogger hanno fatto clic su Mi Piace per questo: