Файл: Mathematica для математиков. Часть Реализация основных понятий математического анализа.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 25.10.2023

Просмотров: 904

Скачиваний: 18

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

27
Следующая команда выполняется, но достаточно долго
????????????????[????????????????????????????????????[????????????[????], {????, −????, ????}], {????, −????, ????}] (* не делайте так *) потому, что интеграл вычисляется символьно при каждом значении x. Чтобы интеграл вычислялся сразу (один раз) следует использовать функцию
Evaluate.
????????????????[????????????????????????????????[????????????????????????????????????[????????????[????], {????, −????, ????}]], {????, −????, ????}](* след. рис. слева *)
То же замечание касается такого примера (следующий рисунок справа).
????????????????[????????????????????????????????[
????
????
(????????????[????????] − ????. ????) ⅆ???? ⅆ????
????
????
], {????, −????, ????}, ???????????????? → ????????????????]
В этом примере без использования функции Evaluate на некоторых системах код выполняется так долго, что возможно вам придется прервать вычисления командой Alt-. (точка) или Alt-, (запятая).
Определенные интегралы, зависящие от параметра, можно дифференцировать по этому параметру. Например,
????????????????????????????????????[????[????], {????, ????, ????}]
????[????] ⅆ????
????
0
????[%, ????]
????[????]
Общая формула дифференцирования интеграла, зависящего от параметра, может быть получена следующей командой
????????????????????[????, ????, ????]
????????????????????????????????????[????[????, ????], {????, ????[????], ????[????]}]
????[????, ????] ⅆ????
????[????]
????[????]
????[%, ????]
????
(0,1)
[????, ????] ⅆ????
????[????]
????[????]
+ ????[????[????], ????]????

[????] − ????[????[????], ????]????

[????]
В одной команде можно комбинировать вычисление определенного и неопределенного интегралов.
????????????????????????????????????[(???? + ????)
????
, {????, ????, ????}, ????]
1 6
???? (2 + 3???? + 2????
2
)
Для вычисления повторных интегралов добавьте больше аргументов в команду
Integrate
. Например, команда
Integrate[f,{x,xmin,xmax},{y,ymin,ymax}]

28 вычисляет повторный интеграл вида
 


max min max min
,
x
x
y
y
y
d
y
x
f
x
d
. Первым указывается интервал изменения той переменной, интегрирование по которой выполняется в последнюю очередь!
????????????????????????????????????[???? ????, {????, ????, ????}, {????, ????, ????}]
????
4 8
или
???? ???? ⅆ???? ⅆ????
????
0
????
0
????
4 8
Функцию Integrate можно использовать для вычисления интегралов по области. Для этого можно использовать повторный интеграл предварительно
«обнулив» функцию вне области. Вот пример интегрирования функции
 
2 2
1
,
y
x
y
x
f



по области единичного круга.
????????????????????????????????????[????????[????
????
+ ????
????
< 1, ???? − (????
????
+ ????
????
), ????], {????, −????, ????}, {????, −????, ????}]
????
2
Ниже показан график «обрезанной» функции
 
y
x
f
,
????????????????????????[????????[????
????
+ ????
????
< 1, ???? − (????
????
+ ????
????
), ????], {????, −????, ????}, {????, −????, ????},
???????????????? → {????????, ????????}]
Тот же интеграл можно вычислить по – другому
????????????????????????????????????[(???? − (????
????
+ ????
????
))????????????????????[????
????
+ ????
????
< 1], {????, −????, ????}, {????, −????, ????}]
????
2
Функция Boole[expr] возвращает единицу, если expr принимает значение
True и 0 – если False.
Область может задаваться логической комбинацией неравенств
????????????????????????????????????????[−???? < ???? < 1 && ???? < ???????????? ???????? && ???? > −????,
{????, −????, ????}, {????, −????, ????}, ???????????????????????????????????????????? → ????????????????????????????????????]
????????????????????????????????????[(???? + ????)????????????????????[−???? < ???? < 1 && ???? < ???????????? ???????? && ???? > −????],
{????, −????, ????}, {????, −????, ????}]
4 − ????
2????


29
Область может иметь любую размерность. В следующем примере мы вычисляем объем 3D области, ограниченной полусферой единичного радиуса.
????????????????????????????????????[????????????????????[???? ≤ ???? ≤ ???? && ????
????
+ ????
????
+ ????
????
≤ ????],
{????, −∞, ∞}, {????, −∞, ∞}, {????, −∞, ∞}]
????????????????????????????????????????????????[???? ≤ ???? ≤ ???? && ????
????
+ ????
????
+ ????
????
≤ ????,
{????, −????, ????}, {????, −????, ????}, {????, ????, ????}, ???????????????? → ????????????????, ???????????????????????????????????? → {????, ????, ????. ????}]
2????
3
Вот пример вычисления объема конуса.
????????????????????????????????????[(????
????
+ ????
????
)????????????????????[???? ≤ ???? ≤ ???? && ????
????
+ ????
????
≤ ????
????
],
{????, −∞, ∞}, {????, −∞, ∞}, {????, −∞, ∞}]
????????????????????????????????????????????????[???? ≤ ???? ≤ ???? && ????
????
+ ????
????
≤ ????
????
,
{????, −????, ????}, {????, −????, ????}, {????, ????, ????}, ???????????????? → ????????????????]
????
10
Пример. Вычислить интеграл







3 1
z
y
x
z
d
y
d
x
d
I
распространенный на тетраэдр, ограниченный плоскостями
0
,
0
,
0



z
y
x
и
1



z
y
x
. Вначале построим область интегрирования
????????????????????????????????????????????????[???? > 0 && ???? > 0 && ???? > 0 && ???? + ???? + ???? ≤ ????,
????, ????, ???? , ????, ????, ???? , ????, ????, ???? , ???????????????????????????????????????? → ????????, ???????????????? → ????????????????,
???????????????????????????????????? → ????????????????????????????[????. ????], ???????????????????? → ????????????????????, ???????????????????????????????????????? → {????, ????, ????}]

30
Теперь вычисляем интеграл
????????????????????????????????????[
????
???? + ???? + ???? + ????
????
????????????????????[???? > 0 && ???? > 0 && ???? > 0 && ???? + ???? + ???? ≤ ????],
{????, ????, ????}, {????, ????, ????}, {????, ????, ????}]
1 16
(−5 + 8Log[2])

Пример. Найдем значение интеграла


z
d
y
d
x
d
y
I
2
по области, являющейся общей частью двух шаров
2 2
2 2
R
z
y
x



и
y
R
z
y
x
2 2
2 2



Вначале построим область интегрирования
???? = ????;
???????????? = {???????????????????????????????????????? → ????????, ???????????????????????????????????? → ????????????????????????????[????. ????], ???????????????? → ????????????????,
???????????????????????????????????? → ????????????};
???????????? = ????????????????????????????????????????????????[????
????
+ ????
????
+ ????
????
≤ ????
????
,
{????, −????, ????}, {????, −????, ????}, {????, −????, ????}, ##]& @@ ????????????;
???????????? = ????????????????????????????????????????????????[????
????
+ ????
????
+ ????
????
≤ ????????????,
{????, −????, ????}, {????, ????, ????????}, {????, −????, ????}, ????????????????????????????????[????????????]];
???????????? = ????????????????????????????????????????????????[????
????
+ ????
????
+ ????
????
≤ ????
????
&& ????
????
+ ????
????
+ ????
????
≤ ???? ???? ????,
????, −????, ???? , ????, ????, ???? , ????, −????, ???? , ???????????????????????????????????????? → ????????, ???????????????????????????????????? → ????????????????,
???????????????????????????????????????????????????? → {#????&, #????&}, ???????????????? → {????, ????, ????}];
????????????????[????????????, ????????????, ????????????, ???????????????????????????????????????? → {????, −????, ????}, ???????????????????? → ????????????????????,
???????????????????????????????????? → {????????, ????????, ????????}]
Обратите внимание на два способа применения списка опций opt. Теперь вычисляем интеграл
????????????????????????????????????[????
????
????????????????????[????
????
+ ????
????
+ ????
????
≤ ????
????
&& ????
????
+ ????
????
+ ????
????
≤ ????????????],
{????, −∞, ∞}, {????, −∞, ∞}, {????, −∞, ∞}, ???????????????????????????????????????????? ⧴ ???? > 0]
59????
480

Пример. Вычислим интеграл






V
z
d
y
d
x
d
z
y
x
I
2
по области V, являющейся общей частью параболоида
z
a
y
x
2 2
2


и шара
2 2
2 2
3a
z
y
x



Вначале представим область интегрирования
???? = ????;
????????????????????????????????????????????????[????
????
+ ????
????
≤ ???? ???? ???? && ????
????
+ ????
????
+ ????
????
≤ ????????
????
,
????, −????, ???? , ????, −????, ???? , ????, ????, ???? , ???????????????????????????????????????? → ????????????, ???????????????????? → ????????????????????,
???????????????????????????????????????? → {????, ????, ????}, ???????????????? → {????, ????, ????}, ???????????????????????????????????? → {????, ????, ????}]


31
Теперь вычисляем интеграл.
????????????????????????????????????[ ???? + ???? + ????
????
????????????????????[????
????
+ ????
????
≤ ???? ???? ???? && ????
????
+ ????
????
+ ????
????
≤ ????????
????
],
{????, −∞, ∞}, {????, −∞, ∞}, {????, −∞, ∞}]
1 30
(−97 + 108 3)????

Пример. Вычислим интеграл


0 2
2 2
2 0
,
,
2 2
2 2
2 2
















R
z
y
x
z
y
x
z
y
x
z
d
y
d
x
d
z
y
x
Вначале представим область интегрирования
???? = ????;
????????????????????????????????????????????????[???? ≥ ????&&???? ≥ ????&&???? ≥ ????&&????
????
+ ????
????
+ ????
????
≤ ????
????
,
????, ????, ???? , ????, ????, ???? , ????, ????, ???? , ???????????????????????????????????????? → ????????, ???????????????? → ????????????????,
???????????????????????????????????????? → {????, ????, ????}, ???????????????????? → ????????????????????]
Теперь вычисляем интеграл.
????????????????????[????, ????, ????, ????];
????????????????????[{$???????????????????????????????????????????? = ???? > ???? && ???? > ???? && ???? > 0 && ???? > 0},
????????????????????????????????????[
????????????
????
????
????
????
+ ????
????
????
????
+ ????
????
????
????

???????????????????? ???? ≥ ???? && ???? ≥ ???? && ???? ≥ ???? && ????
????
+ ????
????
+ ????
????
≤ ????
????
,
{????, −∞, ∞}, {????, −∞, ∞}, {????, −∞, ∞}]]
(???????? + ???????? + ????????)????
5 15(???? + ????)(???? + ????)(???? + ????)
Обратите внимание на способ наложения условий на параметры. Вместо использования опции Assumptions мы использовали переменную
$Assumptions
, область действия которой ограничили блоком.

Для вычисления объема 4 – х мерного шара единичного радиуса можно выполнить команду
????????????????????????????????????[????????????????????[????????????[???? ????
????
, {????, ????}] < 1],
{????[????], −????, ????}, {????[????], −????, ????}, {????[????], −????, ????}, {????[????], −????, ????}]
????
2 2

32
При вычислении интегралов по области иногда также следует указывать условия/предположения, накладываемые на параметры. Например, при вычислении объема n – мерного шара радиуса
1   2   3   4   5   6   7   8   9   ...   19

r следует использовать условие/предположение относительно параметра 0r???? = ????;(* размерность пространства *)????????????????????????????????????[????????????????????[????????????[???? ???? ????, {????, ????}] < ????????],????????????????????[????????????????????????????????, ????????????????????[{????[????], −∞, ∞}, {????, ????}]], ???????????????????????????????????????????? → ???? > 0] 8????2????5 15Проверьте формулу для n=2 и n=3. Функцию Integrate можно применять к спискам выражений. В результате будет получен список интегралов. ????????????????????????????????????[{????, ????????, ????????, ????????}, ????]{????2 2,????3 3,????4 4,????5 5} ????????????????????????????????????[{????, ????????, ????????, ????????}, {????, ????, ????}]1 2,1 3,1 4,1 5???????????????????????????????????? ???????????????????????????????????????????????????????????????????????????? , ???? //????????????????????????????????????????????????2????3????2????????4????3????4????Функция Integrate умеет вычислять интегралы от комплексных функций вещественного аргумента. В частности для функций вида     tvtutfiимеем    tdtvtdtutdtfi. При этом нет необходимости в выделении вещественной и мнимой частей функции. Например, ????[????_] = (???? − ⅈ)????;????[????_] = ????????????????????????????????????????????????????[????????[????[????]]];????[????_] = ????????????????????????????????????????????????????[????????[????[????]]]???????? = ∫ ????[????] ⅆ???????????? = ∫ ????[????] ⅆ???? + ⅈ∫ ????[????] ⅆ????????????????????????????????????[???????? − ????????] 1 4(−ⅈ + ????)4−3????2 2+????4 4+ ⅈ(???? − ????3) 1/4 Функция ComplexExpand[????????????????] выполняет разложение выражения expr в предположении, что все переменные вещественные. Как можно было ожидать, первообразные, полученные разными путями, отличаются только константой.

33
Аналогично можно вычислять определенные интегралы.
????[????] ⅆ????
????
????
−2 − 6ⅈ или
????[????] ⅆ????
????
????
+ ???? ????[????] ⅆ????
????
????
−2 − 6ⅈ
Оба способа приводят к одинаковому результату.
Функция Integrate умеет вычислять интегралы по ломаным в комплексной плоскости.
Для этого используется форма
Integrate[????[????], {????, ????
1
, ????
2
, … , ????
????
}], где
i
z
представляют комплексные числа (точки комплексной плоскости) и интегрирование выполняется по отрезкам от точки
i
z
до точки
1

i
z
. Например,
????????????????????????????????????[
????
????
, {????, ???? + ????, −???? + ????, −???? − ????, ???? − ????, ???? + ????}]
2ⅈ????
Тот же результат можно получить, суммируя интегралы по отрезкам.
???????? = {????????????????????????????????????[
????
????
, {????, ???? + ????, −???? + ????}], ????????????????????????????????????[
????
????
, {????, −???? + ????, −???? − ????}],
????????????????????????????????????[
????
????
, {????, −???? − ????, ???? − ????}], ????????????????????????????????????[
????
????
, {????, ???? − ????, ???? + ????}]}
ⅈ????
2
,
ⅈ????
2
,
ⅈ????
2
,
ⅈ????
2
????????????????????[????????]
2 ⅈ ????
Функция Total[list] возвращает сумму элементов списка list.
Вот еще пример интегрирования функции по ломаной в комплексной плоскости.
????????????????????????????????????[
????
???? + ????/????
, {????, ????, ⅇ
ⅈ????
????
, ⅇ
????ⅈ????
????
, −????, ⅇ

????ⅈ????
????
, ⅇ

ⅈ????
????
, ????}]//????????????????????????????????????????????????
2ⅈ????
Можно нарисовать контур интегрирования, например, так
???????? = {????????[#], ????????[#]}&/@????????????[
????????ⅈ
????
????????????????????[????, ????]]
{{1,0}, {
1 2
,
3 2
}, {−
1 2
,
3 2
}, {−1,0}, {−
1 2
, −
3 2
}, {
1 2
, −
3 2
}, {1,0}}
????????????????????????????????@????????????????@(????????)


34
Функцию Integrate можно использовать для вычисления интегралов по кривым в комплексной плоскости. Если функция
 
z
f
определена на контуре C комплексной плоскости, который имеет параметрическое уравнение
 
b
t
a
t
z
z



,
, то имеет место формула
???? ???? d????
????
= ????⁡(????⁡(????))????′(????) ⅆ????
????
????
Вычислим интеграл функции
 
2
/
1 1


z
z
f
по единичной окружности. Ее параметрическое уравнение имеет вид
 

2 0
,



t
e
t
z
t
i
. Тогда
????[????_] =
????
???? + ????/????
;
????[????_] = ????????????[ⅈ ????];
????[????_] = ????[????[????]]????′[????]
ⅈⅇ
ⅈ????
1 2 + ⅇ
ⅈ????
????????????????????????????????????[????[????], {????, ????, ????????}]
2 ⅈ ????
3
.3.2 Численное интегрирование
Когда Mathematica не может взять определенный интеграл, она возвращает команду обратно точно также, как и при вычислении неопределенного интеграла
????????????[???????? ????????????[????]] ⅆ????
????
????
Cos[10 Cos[????]] ⅆ????
1 0
Вы можете использовать функцию N для численного интегрирования
????[ ????????????[???????? ????????????[????]] ⅆ????
????
????
]
-0.301928 или
????[ ????????????[???????? ????????????[????]] ⅆ????
????
????
, ????????]
-0.30192779721155889037
Если вы знаете, что хотите интегрировать численно, то вы можете использовать функцию NIntegrate. Это не разрешает Mathematica пробовать вычислять интеграл в символьном виде
????????????????????????????????????????[????????????[???????? ????????????[????]], {????, ????, ????}]
-0.301928

35
Вы можете подумать, что неопределенный интеграл не может быть получен численно, потому что ответом является функция, а не число. Но это не так.
Построим, например, график функции
 


t
d
t
x
F
x


0
cos
10
cos
, являющейся первообразной функции


x
cos
10
cos
????[????_]: = ????????????????????????????????????????[????????????[???????? ????????????[????]], {????, ????, ????}];
????????????????[????[????], {????, −????????, ????????}]
Важным моментом в приведенном коде является отложенное присваивание при создании функции F[x]. Функция Plot при построении графика сначала выбирает значение переменной x из заданного интервала и подставляет ее в аргумент функции F[x]. Поскольку присваивание отложенное, то вычисление интеграла происходит численно при этом значении x и получается точка графика. Затем переменной x функция Plot назначает другое значение и вычисление интеграла происходит при этом новом значении. Каждый раз интеграл вычисляется численно при новом значении верхнего предела x. Затем из полученного множества точек функция Plot строит график.
Для построения графика первообразной можно поступить по – другому.
Аналогично тому, как в Mathematica приближаются числа, вы можете приблизить функцию F(x) другой функцией. Для этого нужно вычислить значение F(x) в некотором наборе точек и построить интерполяционную функцию. Эту последовательность действий выполняет функция NDSolve, которая в общем случае численно решает дифференциальное уравнение. В следующем примере мы построим график первообразной функции


x
cos
10
cos в интервале от -10 до 10.
???????? = ????????????????????????????[{????′[????] == ????????????[???????? ????????????[????]], ????[????] == ????}, ????[????], {????, −????????, ????????}]
{{????[????] → InterpolatingFunction[{{−6.28319,6.28319}}, " <> "][????]}}
????????????????[????[????]/. ????????, {????, −????????, ????????}](* предыдущий график *)
Здесь функция
NDSolve построила приближенное решение дифференциального уравнения
 


x
x
y
cos
10
cos
'

с начальным условием
 
0 0

y
в виде интерполяционной функции InterpolatingFunction.
О функции NDSolve мы будем говорить подробно в следующей главе. Вы можете использовать последний пример в качестве шаблона. Замените
Cos[10
Cos[x]] вашей функцией, а интервал от -10 до 10 на такой, где вы хотите получить результат.
Основное назначение функции NIntegrate состоит в приближенном вычислении определенных интегралов – однократных, повторных или
(много)кратных.
Ее можно использовать для вычисления интегралов по конечному отрезку вещественной оси.