exponenta event banner

интервал

Определенные и неопределенные интегралы

Описание

пример

F = int(expr) вычисляет неопределенный интеграл expr. int использует переменную интегрирования по умолчанию, определенную symvar(expr,1). Если expr является константой, тогда переменная интегрирования по умолчанию x.

пример

F = int(expr,var) вычисляет неопределенный интеграл expr относительно символьной скалярной переменной var.

пример

F = int(expr,a,b) вычисляет определенный интеграл expr от a кому b. int использует переменную интегрирования по умолчанию, определенную symvar(expr,1). Если expr является константой, тогда переменная интегрирования по умолчанию x.

int(expr,[a b]) эквивалентно int(expr,a,b).

пример

F = int(expr,var,a,b) вычисляет определенный интеграл expr относительно символьной скалярной переменной var от a кому b.

int(expr,var,[a b]) эквивалентно int(expr,var,a,b).

пример

F = int(___,Name,Value) задает дополнительные параметры с использованием одного или нескольких Name,Value аргументы пары. Например, 'IgnoreAnalyticConstraints',true указывает, что int применяет дополнительные упрощения к интегралу.

Примеры

свернуть все

Определите одномерное выражение.

syms x
expr = -2*x/(1+x^2)^2;

Найдите неопределенный интеграл одномерного выражения.

F = int(expr)
F = 

1x2+11/(x^2 + 1)

Определение многомерной функции с переменными x и z.

syms x z
f(x,z) = x/(1+z^2);

Найти неопределенные интегралы многомерного выражения относительно переменных x и z.

Fx = int(f,x)
Fx(x, z) = 

x22z2+1x^2/(2*(z^2 + 1))

Fz = int(f,z)
Fz(x, z) = xatan(z)x*atan(z)

Если переменная интеграции не указана, то int использует первую переменную, возвращенную symvar в качестве интеграционной переменной.

var = symvar(f,1)
var = xx
F = int(f)
F(x, z) = 

x22z2+1x^2/(2*(z^2 + 1))

Интеграция символьного выражения из 0 кому 1.

syms x
expr = x*log(1+x);
F = int(expr,[0 1])
F = 

14sym(1/4)

Интегрировать другое выражение из sin(t) кому 1.

syms t
F = int(2*x,[sin(t) 1])
F = cos(t)2cos(t)^2

Когда int не может вычислить значение определенного интеграла, численно аппроксимировать интеграл с помощью vpa.

syms x
f = cos(x)/sqrt(1 + x^2);
Fint = int(f,x,[0 10])
Fint = 

010cos(x)x2+1dxint(cos(x)/sqrt(x^2 + 1), x, 0, 10)

Fvpa = vpa(Fint)
Fvpa = 0.37570628299079723478493405557162vpa('0.37570628299079723478493405557162')

Для непосредственной аппроксимации интегралов используйте vpaintegral вместо vpa. vpaintegral функция работает быстрее и обеспечивает контроль допусков интеграции.

Fvpaint = vpaintegral(f,x,[0 10])
Fvpaint = 0.375706vpa('0.375706')

Определите символьную матрицу, содержащую четыре выражения в качестве ее элементов.

syms a x t z
M = [exp(t) exp(a*t); sin(t) cos(t)]
M = 

(eteatsin(t)cos(t))[exp(t), exp(a*t); sin(t), cos(t)]

Найдите неопределенные интегралы матрицы по элементам.

F = int(M,t)
F = 

(eteata-cos(t)sin(t))[exp(t), exp(a*t)/a; -cos(t), sin(t)]

Определите символическую функцию и вычислите ее неопределенный интеграл.

syms f(x)
f(x) = acos(cos(x));
F = int(f,x)
F(x) = 

xacos(cos(x))-x22sign(sin(x))x*acos(cos(x)) - x^2/(2*sign(sin(x)))

По умолчанию int использует строгие математические правила. Эти правила не позволяют int переписать acos(cos(x)) как x.

Если требуется простое практическое решение, установите 'IgnoreAnalyticConstraints' кому true.

F = int(f,x,'IgnoreAnalyticConstraints',true)
F(x) = 

x22x^2/2

Определите символьное выражение xt и вычислите его неопределенный интеграл относительно переменной x.

syms x t
F = int(x^t,x)
F = 

{log(x) if  t=-1xt+1t+1 if  t-1piecewise(t == -1, log(x), t ~= -1, x^(t + 1)/(t + 1))

По умолчанию int возвращает общие результаты для всех значений другого символьного параметра t. В этом примере: int возвращает два интегральных результата для случая t = -1 и t≠-1.

Для игнорирования особых случаев значений параметров установите 'IgnoreSpecialCases' кому true. С помощью этой опции int игнорирует частный случай t = -1 и возвращает решение для t≠-1.

F = int(x^t,x,'IgnoreSpecialCases',true)
F = 

xt+1t+1x^(t + 1)/(t + 1)

Определите символическую функцию f (x) = 1/( x-1), которая имеет полюс при x = 1.

syms x
f(x) = 1/(x-1)
f(x) = 

1x-11/(x - 1)

Вычислите определенный интеграл этой функции от x = 0 до x = 2. Поскольку интервал интегрирования включает полюс, результат не определен.

F = int(f,[0 2])
F = NaNsym(NaN)

Однако главное значение Коши интеграла существует. Чтобы вычислить главное значение Коши интеграла, задайте 'PrincipalValue' кому true.

F = int(f,[0 2],'PrincipalValue',true)
F = 0sym(0)

Найдите интеграл ∫x ex dx.

Определите интеграл, не оценивая его, установив 'Hold' опция для true.

syms x g(y)
F = int(x*exp(x),'Hold',true)
F = 

xexdxint(x*exp(x), x, 'Hold = TRUE', true)

Можно применить интеграцию по деталям к F с помощью integrateByParts функция. Использовать exp(x) в качестве дифференциала, подлежащего интеграции.

G = integrateByParts(F,exp(x))
G = 

xex-exdxx*exp(x) - int(exp(x), x, 'Hold = TRUE', true)

Оценка интеграла в G, используйте release для игнорирования функции 'Hold' вариант.

Gcalc = release(G)
Gcalc = xex-exx*exp(x) - exp(x)

Сравнение результата с результатом интеграции, возвращенным int без установки 'Hold' вариант.

Fcalc = int(x*exp(x))
Fcalc = exx-1exp(x)*(x - 1)

Если int невозможно вычислить замкнутую форму интеграла, то он возвращает неразрешенный интеграл.

syms f(x)
f(x) = sin(sinh(x));
F = int(f,x)
F(x) = 

sin(sinh(x))dxint(sin(sinh(x)), x)

Функцию интегрирования f (x) можно аппроксимировать как многочлены, используя расширение Тейлора. Обратитьсяtaylor для расширения функции интегрирования f (x) в виде многочленов вокруг x = 0. Вычислите интеграл аппроксимированных многочленов.

fTaylor = taylor(f,x,'ExpansionPoint',0,'Order',10)
fTaylor(x) = 

x95670-x790-x515+xx^9/5670 - x^7/90 - x^5/15 + x

Fapprox = int(fTaylor,x)
Fapprox(x) = 

x1056700-x8720-x690+x22x^10/56700 - x^8/720 - x^6/90 + x^2/2

Входные аргументы

свернуть все

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

Интегральная переменная, заданная как символьная переменная. Если эта переменная не указана, int использует переменную по умолчанию, определенную symvar(expr,1). Если expr является константой, то переменная по умолчанию x.

Нижняя граница, заданная как число, символическое число, переменная, выражение или функция (включая выражения и функции с бесконечностями).

Верхняя граница, заданная как число, символическое число, переменная, выражение или функция (включая выражения и функции с бесконечностями).

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'IgnoreAnalyticConstraints',true указывает, что int применяет чисто алгебраические упрощения к интеграду.

Индикатор для применения чисто алгебраических упрощений к интегралу, указанный как true или false. Если значение равно true, применить чисто алгебраические упрощения к интегралу. Эта опция может обеспечить более простые результаты для выражений, для которых прямое использование интегратора возвращает сложные результаты. В некоторых случаях это также позволяет int для вычисления интегралов, которые невозможно вычислить иначе.

Использование этой опции может привести к ошибочным результатам. Эта опция применяет удобные математические идентичности, но результаты не всегда сохраняются для всех значений переменных.

Индикатор игнорирования особых случаев, указанный как true или false. Это игнорирует случаи, которые требуют, чтобы один или несколько параметров были элементами сравнительно малого множества, такого как фиксированное конечное множество или множество целых чисел.

Индикатор возврата основного значения, указанный как true или false. Если значение равно true, вычислить главное значение Коши интеграла. В живом сценарии основное значение Коши для неоцениваемого интеграла отображается как символ.

Индикатор для невысокой интеграции, указанный как true или false. Если значение равно true, int возвращает интегралы без их оценки.

Совет

  • В отличие от дифференциации, символическая интеграция является более сложной задачей. Если int невозможно вычислить интеграл выражения, проверьте по следующим причинам:

    • Противопроизводное не существует в закрытой форме.

    • Противопроизводное существует, но int не может найти его.

    Если int невозможно вычислить замкнутую форму интеграла, он возвращает неразрешенный интеграл.

    Попробуйте аппроксимировать такие интегралы одним из следующих способов:

    • Для неопределенных интегралов используйте расширения рядов. Этот метод используется для аппроксимации интеграла вокруг определенного значения переменной.

    • Для определенных интегралов используйте числовые аппроксимации.

  • Для неопределенных интегралов, int не возвращает константу интегрирования в результат. Результаты интегрирования математически эквивалентных выражений могут быть различными. Например, syms x; int((x+1)^2) прибыль (x+1)^3/3, пока syms x; int(x^2+2*x+1) прибыль (x*(x^2+3*x+3))/3, который отличается от первого результата на 1/3.

  • Для неопределенных интегралов, int неявно предполагает, что переменная интеграции var реально. Для определенных интегралов, int ограничивает переменную интегрирования var к указанному интервалу интеграции. Если одна или обе границы интеграции a и b не числовые, int предполагает, что a <= b если явно не указано иное.

Алгоритмы

При использовании IgnoreAnalyticConstraints, int применяет следующие правила:

  • log (a) + log ( b) = log (a· b) для всех значений a и b. В частности, следующее равенство справедливо для всех значений a, b и c:

      (a· b) c = ac· bc.

  • log (ab ) = log (a) для всех значений a и b. В частности, следующее равенство справедливо для всех значений a, b и c:

      (ab)  c = ab· c.

  • Если f и g являются стандартными математическими функциями и f (g (x )) = x для всех малых положительных чисел, то f (g (x )) = x считается действительным для всех комплексных значений x. В частности:

    • log (ex ) = x

    • asin (sin (x )) = x, acos (cos (x )) = x, atan ( tan (x)) = x

    • asinh (sinh (x )) = x, acosh (cosh (x )) = x, atanh (tanh  (x)) = x

    • Wk (x·  ex) = x для всех индексов ветви k функции Ламберта W.

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