Введем команду Сервис, Подбор параметра – открывается одноименное окно диалога (рис. 6.15).

Введем в строку “Установить в ячейке” адрес ячейки, содержащей формулу В11, в строку “Значение” введем значение “0”, а в строку “Изменяя значение ячейки” введем адрес ячейки содержащий значение Х -

С11 с абсолютным адресом. Щелкнем по кнопке ОК. В ячейке В11 отобразится значение точности поиска решения, а в ячейке С11- значение корня. Для сравнимости результатов на Листинге 6.16 результаты помещены в столбцах E и F. Результат решения зависит от начального значения корня. Сравните результаты в строках 11 и 12. Функция Подбор параметра позволяет найти только один корень уравнения. Для получения значения второго корня необходимо изменить начальное значение. То есть предварительно надо исследовать функцию, например, графическим методом и отделить корни уравнения. В строке 13 приведен результат поиска второго корня.

Порядок решения уравнения с использованием

функции Поиск решения


Введем в ячейку В17 формулу 3*С11^2+2*C11-15. В ячейку С17 введем начальное значение х=-1. Результат приведен на листинге 6.16 в столбцах В и С.

Введем команду Сервис, Поиск решения – открывается одноименное окно диалога (рис. 6.16).

Введем в строку “Установить целевую ячейку” адрес ячейки, содержащей формулу В17, установим переключатель Значение и в строку вода “значению” введем значение “0”, а в строку “Изменяя ячейки” введем адрес ячейки содержащий значение Х - С17 с абсолютным адресом. Щелкнем по кнопке Выполнить. Открывается окно “Результаты поиска решения” (рис. 6.17). Для получения результата щелкните по кнопке ОК. В ячейке В17 отобразится значение точности поиска решения, а в ячейке С17- значение корня. Для сравнимости результатов на Листинге 6.16 результаты помещены в столбцах E и F. Результат решения не зависит от выбранного начального значения корня. Сравните результаты в строках 17 и 18. Однако Функция Поиск решения, также как и функция Подбор параметра позволяет найти только один корень уравнения. Для получения значения второго корня необходимо изменить начальное значение. В строке 19 приведен результат поиска второго корня.

НЕ нашли? Не то? Что вы ищете?

Второй корень можно найти при любом начальном значении Х, если установить ограничения на его значение. Щелкните по кнопке Добавить в окне диалога Поиск решения (рис. 6.16). Открывается окно диалога “Добавление ограничения” (рис. 6.18). Выберите в списке “Ссылка на ячейку” адрес ячейки, содержащей значение х, например, D20, в среднем списке - знак отношения, а в списке “Ограничения” введите значение ограничения, например, “0” и щелкните по кнопке ОК. Результат будет записан в окне “Ограничения” окна диалога Поиск решения (рис.6.16). Пример решения приведен в строке 20 Листинга 6.16.

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

Пример 6.8. Задача о “пожарном ведре”. Дана заготовка из жести в виде круга диаметром R=0,75 м. Требуется выкроить из него конусообразное ведро таким образом, чтобы объем ведра был наибольший.

Разработаем математическую модель:

Объем пожарного ведра Q=1/3hSосн, Sосн= pr2,

где r – радиус основания конуса, h – высота ведра, h=корень(R2-r2)

Радиус основания зависит от угла вырезки a. Длина окружности основания ведра l=(2p-a)R или l=2pr, отсюда

r=(2p-a)R/ (2p),

Q=1/3*Корень(R2-((2p-a)R/ (2p))^2)*p*(2p-a)R/ (2p

Листинг 6.17. Оптимизация

Задача о пожарном ведре 

Q=1/3*Корень(R2-(2p-a)R/ (2p))*p*(2p-a)R/ (2p))2 

Исходные данные:

R=

0,75

Угол альфа

Целевая функция

1,84

0,046875

Объем ведра Q должен максимизироваться, поэтому выражение (6.21) называют целевой функцией. Оптимизируемым параметром является угол a. Ограничение в данном выражении одно: угол a должен быть больше 0, но меньше


2p. Решение приведено на Листинге 6.17. Окно диалога приведено на рис. 6.20.

Контрольные вопросы

1.  В чем отличие алгебраического уравнения от трансцендентного?

2.  Что называется корнем уравнения?

3.  Что такое отделение корня? Для какой цели оно производится?

4.  Что такое уточнение значения корня, какими методами оно осуществляется?

5.  Поясните, в чем заключается метод простых итераций?

6.  Поясните принцип использования метода касательных для уточнения значения корня.

7.  Что такое рекуррентная формула, как она получается?

8.  Какие команды Excel могут использоваться для решения линейных и нелинейных уравнений?

9.  Поясните порядок решения уравнения с помощью команды Подбор решения?

10.  Поясните порядок решения уравнений с помощью команды Поиск решения?

6.7. Решение дифференциальных

уравнений первого порядка с

начальными условиями

Постановка задачи

Пусть некоторый процесс описывается дифференциальным уравнением первой степени.

(6.22)

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

Задачи такого типа возникают обычно для уравнений с производными по времени. Для решения задач Коши могут использоваться разные методы: метод рядов Тейлора, метод Эйлера, модифицированный метод Эйлера и метод Рунге-Кутта. Эти методы отличаются сложностью используемых выражений, скоростью сходимости и точностью получаемых результатов.

Рассмотрим два метода: метод Эйлера и метод Рунге-Кутта.

Метод Эйлера

В методе Эйлера значение функции на следующем шаге вычисляется в соответствии с выражением:

u(x+h)=u(x) +h*u’(x) (6.23)

Пример 6.6. Найти решение дифференциального уравнения:

при x>0 (6.24)

при х=0,2 с начальным условием u(0)=0.

Решение:

Приведем выражение (6.24) к виду выражения (6.22):

(6.25)

тогда согласно 6.23

(6.26)

Теперь для получения результата достаточно сгенерировать ряд значений аргумента х с некоторым шагом и протабулировать правую часть выражения (6.25) на отрезке от 0 до 0,2.

Для примера (6.24) известно аналитическое выражение для вычисления значения функции в произвольной точке:

, (6.27)

поэтому можно вычислить относительную погрешность вычисления по формуле

D=(u(x)a-u(x))/u(x)a , (6.28)

где u(x)a – значение функции, вычисленное по аналитической формуле.

Листинг 6.18. Решение дифференциального уравнения

методом Эйлера

A

B

С

D

5

x

y

Аналитика

Погрешность

6

0

0,0000

0,0000

#ДЕЛ/0!

7

0,01

0,0000

0,0000

1

8

0,02

0,0001

0,0002

0,49664

9

0,03

0,0003

0,0004

0,32885

...

...

24

0,18

0,0144

0,0152

0,04918

25

0,19

0,0160

0,0168

0,04624

26

0,2

0,0177

0,0186

0,04359

Порядок работы:

- внесите в ячейки А6 и В6 (Листинг 6.18) начальные значения аргумента и функции;

- сгенерируйте в столбце А ряд значений аргумента от 0 до 0,2 с шагом 0,01;

- запишите в ячейку В7 правую часть формулы (6.26) со ссылками на адреса ячеек: B6+(A7-A6)*(A6-B6)/КОРЕНЬ(1+A6^2);

- запишите в ячейку C6 правую часть формулы (6.27) со ссылками на адреса ячеек: 0,5*(A6-LN(A6+КОРЕНЬ(1+A6^2))/(A6+КОРЕНЬ(1+A6^2)));

- запишите в ячейку D6 правую часть формулы (6.28) со ссылками на адреса ячеек: (C6-B6)/C6;

- скопируйте формулу из ячеек В7, С6, D6 в нижележащие ячейки.

Результаты:

Методом Эйлера : u(0,2)= 0,0177

По аналитической зависимости: u(0,2)= 0,0186

Погрешность около 4 процентов D =0,04359

Метод Рунге-Кутта

Одним из наиболее распространенный методов решения дифференциального уравнения вида у'=f(x, y) на заданном отрезке [Xнач, Хкон] с начальными условиями является метод Рунге-Кутта. При решении данного уравнения точное значение y заменяют его приближенным значением:

Y i+1 =Y i +(К1+2К2+2К3 +К4 )/6, (6.29)

где значения коэффициентов на i-том шаге вычисляются по формулам:

К1 =h*f(xi, yi )

K2 =h*f(xi +0.5h, yi +0.5K1)

K3 =h*f(xi +0.5h, yi +0.5K2 ) (6.30)

K4 =h*f(xi+h, yi +K3 )

Здесь хi+1 =xi +h.

Значение шага при переходе к следующей точке можно изменять. Правильность выбора шага проверяется по формуле

Т=|(К2 - К 3)/(К1 - К2 )|, (6.31)

величина Т не должна превышать нескольких сотых.

Для проверки точности необходимо сделать второй проход с шагом h/2. Если разница между Yi+1 и Yi на k+1  и k проходах будет меньше требуемой точности, то процесс вычисления прекращается. Значение точности выбирают в интервале от 0.001 до 0.00001.

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

Yk - Y(xi )= |Yk+1 - Yk |/15,   (6.32)

где Y(xi ) - значение точного решения уравнения.

Для решения задачи необходимо вычислить значения коэффициентов К1 – К4 при начальных условиях, выбрать начальный шаг и вычислить значения Xi  и Yi . Затем увеличить значение х и повторить процедуру вычисления.

Пример 6.9. Решить дифференциальное уравнение первого порядка

dY/dx=2(x2+Y) методом Рунге-Кутта при 0<=x<=1, Y(0)=1, шаг h=0.1.

Для этой задачи имеется аналитическое выражение

Y=1.5е2х – х2 – х – 0

Листинг 6.19. Решение дифференциального уравнения методом Рунге-Кутта

A

B

C

D

E

F

G

I

1

Исходные данные 

2

h=

0,1

Xn=

0,00000

Y(0)=

1,00000

 Контроль выбора шага

3

Xn=

Yn=

K1=

K2=

K3=

K4=

Yn+1=

4

0,00

1,0000

1,0000

5

0,10

1,2221

0,2

0,2205

0,2225

0,2465

1,2221

0,10

6

0,20

1,4977

0,2464

0,2735

0,2762

0,3076

1,4977

0,10

7

0,30

1,8431

0,3075

0,3428

0,3463

0,3868

1,8431

0,10

8

0,40

2,27829

0,3866

0,4318

0,4363

0,4879

2,2783

0,10

9

0,50

2,8274

0,4877

0,5449

0,5507

0,6158

2,8274

0,10

10

0,60

3,5201

0,6155

0,6875

0,6947

0,7764

3,5201

0,10

11

0,70

4,3927

0,7760

0,8661

0,8751

0,9771

4,3927

0,10

12

0,80

5,4894

0,9765

1,0887

1,0999

1,2265

5,4894

0,10

13

0,90

6,8643

1,2259

1,3650

1,3789

1,5357

6,8643

0,10

14

1,00

8,5834

1,5348

1,7069

1,7245

1,9177

8,5834

0,10

Порядок работы

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11