- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Решение:
- •Задание 1
- •Задание 2
- •Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Задание 1
- •Задание 2
- •Задание 1
- •6. Найти точное решение краевой задачи:
34
вычисленного по этой формуле приближенного значения интеграла
для случая, когда |
f (x) = |
|
1 |
|
, a = 0, b =1. |
|
|
|
|
|
|||||||||||||||||
1 |
+ x |
|
|
|
|
|
|||||||||||||||||||||
|
Решение: |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
Запишем формулу Гаусса с 3-мя узлами. При n=3 формула |
||||||||||||||||||||||||||
Гаусса на [−1,1] |
|
имеет |
3 узла ξ1 = − |
3 , ξ2 = 0 |
, |
ξ3 = |
3 |
, и три |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 , γ 2 |
= 8 . |
5 |
|
|
5 |
|
||||
коэффициента γ1 = γ 3 |
= |
|
|
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
|
|
|
9 |
равны |
|
|
|
|
|
Узлы формулы Гаусса на [a;b] =[0;1] |
|
|
|
|
||||||||||||||||||||||
x1 |
= |
|
a + b |
|
+ |
|
b − a |
ξ1 = |
1 |
− |
1 3 , |
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|||||||||||
|
2 |
|
|
2 |
|
|
|
|
2 |
5 |
|
|
|
|
|
|
|
|
|||||||||
x2 |
= |
|
a + b |
|
+ |
b − a |
|
ξ2 = |
1 |
, |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
2 |
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
x3 |
= |
a + b |
|
+ |
b − a |
|
ξ3 = |
1 |
+ |
1 |
3 |
. |
|
|
|
|
|
|
|
|
|||||||
|
|
2 |
|
|
|
|
|
|
|
|
|||||||||||||||||
|
2 |
|
|
2 |
|
|
|
|
2 |
5 |
|
|
|
|
|
|
|
|
|
Коэффициенты формулы Гаусса на [a;b] =[0;1] равны
c1 |
= γ1 b − a |
= |
|
5 |
, c2 = γ 2 b − a |
= 4 |
, c3 = γ3 b − a = |
|
|
5 |
. |
|
|
|
||||||||||
18 |
|
|
|
|
||||||||||||||||||||
|
2 |
|
|
|
2 |
|
9 |
|
|
|
|
|
2 |
|
|
18 |
|
|
|
|
||||
|
Формула Гаусса в нашем случае примет вид |
|
||||||||||||||||||||||
|
|
|
|
|
b |
|
|
|
3 |
|
f ( xi ) = |
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
ò f ( x)dx » Q |
= åci |
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
a |
|
|
|
|
i=1 |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
æ |
|
|
|
|
|
ö |
|
|
|
|
|
|
|
æ |
|
|
ö |
|
|
|
|
|
|
5 |
1 |
- 1 3 |
|
4 f |
æ 1 |
ö |
|
5 |
1 + 1 3 |
|||||||||
|
|
|
|
|
= |
f ç |
|
÷ + |
+ |
f ç |
÷. |
|||||||||||||
|
|
|
|
|
|
|
ç |
÷ |
|
|
|
|||||||||||||
|
|
|
|
|
18 |
ç |
2 2 5 |
|
÷ |
9 |
|
18 |
ç |
2 2 5 |
÷ |
|||||||||
|
|
|
|
|
è |
|
ø |
è 2 |
ø |
|
è |
ø |
При вычислении по этой формуле получается приближенное значение интеграла Q. Найдем оценку его абсолютной погрешности
|
|
|
|
|
b f ( x)dx - |
3 c f ( x ) |
|
£ |
(b -a)7 (3!)4 M |
6 |
, |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
ò |
å i i |
|
|
( )3 |
|
|
|
|
|
||||||
|
|
|
|
|
a |
i =1 |
|
|
7 6! |
|
|
|
|
|
|
|
|
на |
||
где M 6 - мажорантная оценка модуля производной |
|
f (6) ( x) |
||||||||||||||||||
[a;b] =[0;1] ( |
|
f (6) (x) |
|
≤ M 6 ). |
|
|
|
|
|
|
|
|
|
|
|
|
720 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
Найдем M 6 . Для этого найдем производную f (6) (x) = |
|
. На |
||||||||||||||||||
(1 |
7 |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
720 |
|
|
+ x) |
|
|||
|
f (6) ( x) |
|
= |
|
|
|
|
|||||||||||||
[a;b] =[0;1], очевидно, выполняется: |
|
|
≤ 720 . Отсюда |
M 6 |
||||||||||||||||
|
|
7 |
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
(1 |
+ x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
=720.
Вычислим оценку погрешности приближенного значения интеграла:
b f (x)dx - |
3 |
c f ( x ) |
|
£ |
(3!)4 |
720 » 0,00036 |
. |
|
|
||||||||
|
|
|
||||||
ò |
å i |
i |
|
7(6! )3 |
|
|||
i 1 |
|
|
|
|
||||
a |
= |
|
|
|
|
|
|
|
4. Составить алгоритм вычисления приближенного значения
интеграла |
b |
методом Монте-Карло (первая схема) с |
I = ò f (x)dx |
a
35
погрешностью, не превышающей заданного положительного числа ε с вероятностью 0,997. Записать алгоритм на алгоритмическом языке.
Решение:
Исходными данными для алгоритма являются значения a, b, ε
ифункция f (x) . Первая алгоритмическая схема метода
Монте-Карло состоит в последовательном вычислении значений
Qn = (b - a) n
условие
n
å f (λi ) при n =1,2,3, до тех пор, пока не будет выполнено
i=1
|
1 |
|
æ |
1 |
n |
|
Ln = 3(b - a) |
|
ç |
å f 2 |
(λi ) |
||
n -1 |
|
|||||
|
ç n |
i=1 |
|
|||
|
|
|
è |
|
|
- |
é |
1 |
n |
f (λ )ù |
2 |
ö |
£ ε |
|
λ |
|
å |
|
÷ |
. Здесь |
− значения |
||||||
|
ê |
|
i ú |
|
÷ |
|
i |
|||
|
ën i=1 |
û |
|
ø |
|
|
|
|
случайной величины λ (равномерно распределенной на [a;b]), получаемые с помощью датчика случайных чисел. Последнее вычисленное значение Qn даст нам искомое приближенное значение интеграла.
В этих формулах содержатся суммы, число членов которых растет с ростом n. Чтобы избавиться от лишних вычислений, мы
|
|
|
(b - a) |
n |
|
|
|
|
|
|
n |
|
|||
будем вычислять величины Qn = |
å f (λi ) |
|
и |
Pn = |
1 å f 2 |
(λi ) по |
|||||||||
|
|
||||||||||||||
рекуррентным формулам: |
|
|
n |
|
i=1 |
|
|
|
|
|
|
n i=1 |
|
||
f (λn ) |
|
|
|
|
|
|
|
f 2 |
(λn ) |
|
|
||||
æ |
1 ö |
|
|
|
æ |
|
1 ö |
|
|
|
|||||
Qn = Qn 1ç1- |
÷ + (b - a) |
|
|
, |
Pn = Pn 1 |
ç1 |
- |
÷ |
+ |
|
|
|
. |
|
|
n |
|
|
|
|
|
||||||||||
|
|
n |
|
|
|||||||||||
− è |
n ø |
|
|
|
− |
è |
|
n ø |
|
|
|
|
|
По этим формулам будут вычисляться значения этих величин в цикле при n = 2,3,4, Для того чтобы по этим формулам можно
было |
начать |
счет, |
до |
начала |
цикла |
необходимо |
вычислить |
||||||||||||||||||
Q1 = (b − a) f (λ1) , P1 = f 2 (λ1 ) . Вычислив |
|
|
Qn и |
Pn , величину |
Ln |
удобно |
|||||||||||||||||||
выразить через них: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
L = 3(b - a) |
1 |
æ |
|
|
æ Q |
ö2 |
ö |
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
ç P |
- ç |
|
n |
|
÷ |
|
÷ |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
n |
|
|
|
|
ç |
n |
|
è b - a ø |
|
÷ . |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
n -1è |
|
|
|
ø |
|
|
|
|
|
|
|||||||
|
Поскольку на каждом шаге цикла нужно только одно значение |
||||||||||||||||||||||||
каждой из величин |
Qn , |
Pn и |
|
|
Ln , мы введем три простые |
||||||||||||||||||||
переменные без индексов: Q, P, L, которые в цикле будут |
|||||||||||||||||||||||||
принимать соответствующие значения: |
|
|
1, |
|
|
|
1 , |
1 ; |
2 |
, |
2 , |
2 ; |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Q |
|
|
P |
L |
Q |
|
P |
L |
||||
Q3 , |
P3 , L3 |
и так далее. На каждом n-м шаге цикла эти величины |
|||||||||||||||||||||||
будут вычисляться по формулам: |
|
|
|
|
|
|
|
|
|
|
|
|
f 2 (λn ) |
|
|
|
|
||||||||
|
|
æ |
|
1 |
ö |
|
f (λn ) |
|
|
|
|
|
|
æ |
|
|
1 ö |
|
|
|
|
||||
|
|
Q := Qç1 |
- |
|
÷ + (b - a) |
|
|
, |
P := Pç1 |
- |
|
÷ + |
|
, |
|
|
|
||||||||
|
|
n |
|
n |
|
|
|
|
|
||||||||||||||||
|
|
|
|
n |
|
|
|
||||||||||||||||||
|
|
è |
|
ø |
|
|
|
|
|
|
|
|
è |
|
|
n ø |
|
|
|
|
36
L := 3(b -a) |
|
1 |
|
æ |
æ Q |
ö2 |
ö |
|
||
|
|
|
|
çP -ç |
|
÷ |
÷ |
|
||
|
|
n -1 |
|
|||||||
|
|
|
ç |
èb -a ø |
÷. |
|||||
|
|
|
|
|
è |
|
|
|
ø |
|
До начала цикла Q := (b − a) |
f (λ1) , P := f 2 (λ1 ) . На каждом n-м шаге |
|||||||||
цикла проверяется условие |
L ≤ ε . |
Если |
используется цикл с |
предусловием, то надо еще до цикла задать также начальное значение величины L. Это может быть любое большое число, например L =1010 , чтобы условие окончания цикла не выполнилось случайно до выполнения первого шага.
Поскольку значение используется после вычисления два раза, мы введем переменную fr , воспринимающую это значение. Это необходимо сделать, поскольку при повторном обращении к датчику случайных чисел мы получим уже другое случайное значение, а нам нужно, чтобы случайные значения функции в формулах для P и Q были одинаковыми.
Будем считать, что у нас есть датчик значений случайной величины, равномерно распределенной на [0;1]. Обозначим через ξ очередное случайное значение, выдаваемое этим датчиком. Тогда будет представлять собой значение случайной величины, равномерно распределенной на [a;b]. Именно это значение мы будем использовать в качестве аргумента при вычислении случайных значений подынтегральной функции.
Запишем получившийся алгоритм на алгоритмическом языке: алг Метод Монте-Карло (первая схема) (арг вещ a, b, ε , рез
вещ Q)
нач вещ P, L, fr; цел n
fr := f (a + (b − a)ξ ) | Вычисление первого
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| случайного значения функции |
|||
Q := (b −a) fr ; P := fr 2 ; | Задание начальных значений |
||||||||||||||||||
L :=1010 ; n :=1 |
|
|
|
|
|
|
|
|
|
|
|
|
| параметров. |
|||||
нц пока |
|
L>ε |
|
|
|
| Начало цикла метода Монте-Карло. |
||||||||||||
n := n +1; |
|
|
|
|
|
| Изменение значения параметра n. |
||||||||||||
fr := f (a + (b − a)ξ ) |
| Вычисление очередного |
|||||||||||||||||
Q := Qæ1- 1 |
ö |
|
|
|
|
|
|
|
fr |
|
| случайного значения функции |
|||||||
+ (b - a) |
|
|
|
|
||||||||||||||
÷ |
|
|
|
|
|
|
||||||||||||
ç |
|
n |
|
|
|
|
|
|
|
n |
|
|
|
|
||||
è |
|
ø |
|
|
fr 2 |
|
|
|
|
|
|
|||||||
æ |
|
1 |
ö |
|
|
|
|
|
|
|
|
|
|
|||||
P := Pç1 |
- |
|
÷ |
+ |
|
|
|
|
|
|
|
|
|
|
|
|
||
n |
|
n |
|
|
|
|
|
|
|
|
||||||||
è |
|
ø |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
L := 3(b -a) |
|
|
|
1 |
|
|
æ |
æ |
|
Q ö2 |
ö |
|||||||
|
|
|
|
|
|
|
çP -ç |
|
|
÷ |
÷ |
|||||||
|
|
n -1 |
|
|
||||||||||||||
|
|
|
|
|
ç |
|
|
èb -a ø |
÷ |
|||||||||
|
|
|
|
|
|
|
|
|
|
è |
|
|
|
|
|
|
ø |
37
кц | Конец цикла метода Монте-Карло.
Кон
5. Составить алгоритм вычисления приближенного значения
интеграла |
b |
(0 ≤ f ( x) ≤ ymax ) |
методом Монте-Карло (вторая |
I = ò f (x)dx |
|||
|
a |
|
n. Записать алгоритм на |
схема), |
Qn , для |
заданного |
алгоритмическом языке.
Решение:
Исходными данными для алгоритма являются значения a, b, n,
ymax и функция |
f (x) . Приближенные значения интеграла |
|||||||
вычисляются по |
формуле: Qn = ymax (b − a) |
m(n) |
. Здесь n – |
число |
||||
|
||||||||
|
|
|
|
|
n |
|
|
|
испытаний (бросаний случайной точки M (λ, μ), равномерно |
||||||||
распределенной в прямоугольнике |
{( x, y) |
|
a ≤ x ≤ b, 0 ≤ y ≤ ymax } ), |
ymax |
− |
|||
|
||||||||
мажорантная оценка функции f (x) |
на [a,b] ( f ( x) ≤ ymax ) , |
m(n) |
− |
количество попаданий случайной точки M (λ, μ) в криволинейную трапецию, ограниченную сверху графиком функции при n испытаниях. Условие попадания точки M (λ, μ) в трапецию: μ ≤ f (λ) .
Будем считать, что у нас есть датчик значений случайной величины, равномерно распределенной на [0;1]. Обозначим через ξ очередное случайное значение, выдаваемое этим датчиком. Тогда a + (b − a)ξ будет представлять собой значение случайной
величины, равномерно распределенной на [a;b], а ymaxξ − значение случайной величины, равномерно распределенной на [0, ymax ]. А точка M (a + (b − a)ξ , ymaxξ ) − значение случайной точки, равномерно
распределенной в прямоугольнике {( x, y) a ≤ x ≤ b, 0 ≤ y ≤ ymax } . Запишем алгоритм вычисления Qn на алгоритмическом языке.
алг Метод Монте-Карло (вторая схема) (арг вещ a, b, ymax , цел n,
рез вещ Q )
нач вещ λ, μ, цел i, m
m := 0 | Задание начального значения числа попаданий нц для i от 1 до n | Начало цикла подсчета числа
| попаданий
λ := a + (b − a)ξ | Вычисление случайного значения
|абсциссы
μ:= ymaxξ | Вычисление случайного значения
| ординаты. Значения ξ в этой строчке | и в предыдущей должна быть разными.