gammainc

Неполная гамма функция

Описание

пример

Y = gammainc(X,A) возвращает более низкую неполную гамма функцию, выполненную в элементах X и A. Оба X и A должно быть действительным, и A mustBeNonnegative.

пример

Y = gammainc(X,A,type) возвращает более низкую или верхнюю неполную гамма функцию. Выбор для type 'lower' (значение по умолчанию) и 'upper'.

пример

Y = gammainc(X,A,scale) масштабирует получившуюся более низкую или верхнюю неполную гамма функцию, чтобы избежать потери значимости, чтобы обнулить или потеря точности. Выбор для scale 'scaledlower' и 'scaledupper'.

Примеры

свернуть все

Вычислите более низкую неполную гамма функцию для a = 0.5, 1, 1.5, и 2 в интервале 0x10. Цикл по значениям a, выполните функцию в каждом и присвойте каждый результат столбцу Y.

A = [0.5 1 1.5 2];
X = 0:0.05:10;
Y = zeros(201,4);
for i = 1:4
    Y(:,i) = gammainc(X,A(i));
end

Постройте все функции на том же рисунке.

plot(X,Y)
grid on
legend('$a = 0.5$','$a = 1$','$a = 1.5$','$a = 2$','interpreter','latex')
title('Lower incomplete gamma function for $a = 0.5, 1, 1.5,$ and $2$','interpreter','latex')
xlabel('$x$','interpreter','latex')
ylabel('$P(x,a)$','interpreter','latex')

Figure contains an axes. The axes with title Lower incomplete gamma function for $a = 0.5, 1, 1.5,$ and $2$ contains 4 objects of type line. These objects represent $a = 0.5$, $a = 1$, $a = 1.5$, $a = 2$.

Вычислите верхнюю неполную гамма функцию для a = 0.5, 1, 1.5, и 2 в интервале 0x10. Цикл по значениям a, выполните функцию в каждом и присвойте каждый результат столбцу Y.

A = [0.5 1 1.5 2];
X = 0:0.05:10;
Y = zeros(201,4);
for i = 1:4
    Y(:,i) = gammainc(X,A(i),'upper');
end

Постройте все функции на том же рисунке.

plot(X,Y)
grid on
legend('$a = 0.5$','$a = 1$','$a = 1.5$','$a = 2$','interpreter','latex');
title('Upper incomplete gamma function for $a = 0.5, 1, 1.5,$ and $2$','interpreter','latex')
xlabel('$x$','interpreter','latex')
ylabel('$Q(x,a)$','interpreter','latex')

Figure contains an axes. The axes with title Upper incomplete gamma function for $a = 0.5, 1, 1.5,$ and $2$ contains 4 objects of type line. These objects represent $a = 0.5$, $a = 1$, $a = 1.5$, $a = 2$.

Вычислите немасштабированное ниже, неполная гамма функционирует и сравнивает его с масштабированной функцией.

Вычислите немасштабированное ниже неполная гамма функция для a=1 в интервале 0x2. Постройте функцию.

a = 1;
x = 0:0.001:2;
Y = gammainc(x,a);
plot(x,Y);
xlabel('$x$','interpreter','latex');
ylabel('$P(x,1)$','interpreter','latex')
hold on

Затем вычислите масштабированное ниже неполная гамма функция. Постройте функцию на том же графике. Масштабированная функция имеет различное асимптотическое поведение около 0, который избегает потери значимости когда x близко к 0.

Ys = gammainc(x,a,'scaledlower');
plot(x,Ys,'--');
legend('unscaled','scaled')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent unscaled, scaled.

Входные параметры

свернуть все

Входной массив, заданный как скалярный, векторный, матричный или многомерный массив. Элементы X mustBeReal. X и A должен быть одного размера, или иначе один из них должен быть скаляром.

Типы данных: single | double

Входной массив, заданный как скалярный, векторный, матричный или многомерный массив. Элементы A должно быть действительным и неотрицательным. X и A должен быть одного размера, или иначе один из них должен быть скаляром.

Типы данных: single | double

Тип неполной гаммы функционирует в виде 'lower' или 'upper'. Если type 'lower', затем gammainc возвращает более низкую неполную гамма функцию. Если type 'upper', затем gammainc возвращает верхнюю неполную гамма функцию.

Масштабирование опции в виде 'scaledlower' или 'scaledupper'. Если scale 'scaledlower' или 'scaledupper', затем gammainc масштабирует более низкую или верхнюю неполную гамма функцию на коэффициент Γ(a+1)ex/xa, где Γ(a) gamma функция. Это масштабирование уравновешивает асимптотическое поведение функции около 0, который избегает потери значимости с маленькими аргументами.

Ограничения

  • Когда x отрицателен, неполная гамма функция может быть неточной для abs (x)> a +1.

Больше о

свернуть все

Неполная гамма функция

Более низкая неполная гамма функция P и верхняя неполная гамма функция Q заданы

P(x,a)=1Γ(a)0xta1etdt,Q(x,a)=1Γ(a)xta1etdt.

Гамма функция Γ(a) задан

Γ(a)=0ta1etdt.

MATLAB® использует нормированное определение неполной гамма функции, где P(x,a)+Q(x,a)=1.

Масштабированная более низкая и верхняя неполная гамма функция задана

Ps(x,a)=Γ(a+1)Γ(a)exxa0xta1etdt,Qs(x,a)=Γ(a+1)Γ(a)exxaxta1etdt.

Некоторые свойства более низкой неполной гамма функции:

  • limxP(x,a)=1дляa0

  • limx,a0P(x,a)=1

Советы

  • Когда верхняя неполная гамма функция близко к 0, задавая 'upper' опция, чтобы вычислить функцию более точна, чем вычитание более низкой неполной гамма функции от 1.

Ссылки

[1] Olver, F. W. J. А. Б. Олд Даалхуис, Д. В. Лозир, Б. И. Шнейдер, Р. Ф. Бойсверт, К. В. Кларк, Б. Р. Миллер, и Б. В. Сондерс, редакторы, Глава 8. Неполная Гамма и Связанные Функции, Цифровая библиотека NIST Математических функций, Релиза 1.0.22, 15 марта 2018.

Расширенные возможности

Смотрите также

| | |

Представлено до R2006a