36869

Решение нелинейных уравнений и систем

Лабораторная работа

Математика и математический анализ

Всякое алгебраическое уравнение относительно x можно записать в виде 0xn1xn−1 n−1xn = 0 где 0 0 n 1 и i коэффициенты алгебраического уравнения n–й степени. Решение алгебраического уравнения в Scilb состоит из двух этапов. Примеры символьных операций с полиномами p1=poly[1 2]’x’’c’ p1 = 1 2x p2=poly[3 7 2]’x’’c’ p2 = 2 3 7x 2x p1p2 Сложение ns = 2 2 5x 2x p1p2 Вычитание ns = 2 4 9x 2x p1p2 Умножение ns = 2 3 3 13x 16x 4x p1 p2 Деление ns = 1 3 x p1^2 Возведение в...

Русский

2013-09-23

120.5 KB

9 чел.

Лабораторная работа № 7

Решение нелинейных уравнений и систем

Любое уравнение P(x) = 0, где P(x) - это многочлен, отличный от нулевого, называется алгебраическим уравнением или полиномом.

Всякое алгебраическое уравнение относительно x можно записать в виде a0xn+a1xn−1+· · ·+an−1x+an = 0,

где a0 <> 0, n > 1 и ai - коэффициенты алгебраического уравнения n–й степени.

Решение алгебраического уравнения в Scilab состоит из двух этапов.

1. Необходимо задать полином P(x) с помощью функции poly.

2. Найти его корни, применив функцию roots.

Определение полиномов в Scilab осуществляет функция poly(a, "x ["fl"]), где a - это число или матрица чисел, x - символьная переменная, fl - необязательная символьная переменная, определяющая способ задания полинома. Символьная переменная fl может принимать только два значения – «roots» или «coeff» (соответственно «r» или «c»).

Если fl=c, то будет сформирован полином с коэффициентами, хранящимися в параметре a.

Если же fl=r, то значения параметра a воспринимаются функцией как корни, для которых необходимо рассчитать коэффициенты соответствующего полинома.

По умолчанию fl=r.

Следующий пример отражает создание полинома p, имеющего в качестве корня тройку, и полинома f с коэффициентом 3.

Листинг 7.1. Полиномы первой степени

-->p=poly(3,’x’,’r’);

-->f=poly(3,’x’,’c’);

-->p

p =

- 3 + x

-->f

f =

3

Далее приведены примеры создания более сложных полиномов.

Листинг 7.2. Использование функции poly

-->//Полином с корнями 1, 0 и 2

-->poly([1 0 2],’x’)

ans =

2 3

2x - 3x + x

-->//Полином с коэффициентами 1, 0 и 2

-->poly([1 0 2],’x’,’c’)

ans =

2

1 + 2x

Рассмотрим примеры символьных операций с полиномами:

Листинг 7.3. Примеры символьных операций с полиномами

-->p1=poly([-1 2],’x’,’c’)

p1 =

- 1 + 2x

-->p2=poly([3 -7 2],’x’,’c’)

p2 =

2

3 - 7x + 2x

-->p1+p2 //Сложение

ans =

2

2 - 5x + 2x

-->p1-p2 //Вычитание

ans =

2

4 + 9x - 2x

-->p1*p2 //Умножение

ans =

2 3

- 3 + 13x - 16x + 4x

-->p1/p2 //Деление

ans =

1

-----

- 3 + x

-->p1^2 //Возведение в степень

ans =

2

1 - 4x + 4x

-->p2^(-1) //Возведение в отрицательную степень

ans =

1

-----------

2

3 - 7x + 2x

Функция roots(p) предназначена для решения алгебраического уравнения.

Здесь p - это полином, созданный функцией poly и представляющий собой левую часть уравнения P(x) = 0.

Решим несколько алгебраических уравнений.

Задача 7.1. Найти корни полинома 2x4 − 8x3 + 8x2 − 1 = 0.

Для решения этой задачи необходимо задать полином p. Сделаем это при помощи функции poly, предварительно определив вектор коэффициентов V . В уравнении отсутствует переменная x в первой степени, это означает, что соответствующий коэффициент равен нулю:

Листинг 7.4. Формирование полинома

-->V=[-1 0 8 -8 2];

-->p=poly(V,’x’,’c’)

p =

1 + 8x2 - 8x 3+ 2x4

Теперь найдем корни полинома:

Листинг 7.5. Использование функции roots

-->X=roots(p)

X =

! 0.4588039 !

! - 0.3065630 !

! 1.5411961 !

! 2.306563 !

Графическое решение задачи позволяет убедиться, что корни найдены верно.

Пересечение графиков функций F(x)= 1 + 8x2 - 8x 3+ 2x4 и g(x)=0

Задача 7.2. Найти корни полинома x3 + 0.4x2 + 0.6x − 1 = 0.

Листинг 7.6. Решение задачи 7.2

-->roots(poly([-1 0.6 0.4 1],’x’,’c’))

ans =

! 0.7153636 !

! - 0.5576818 + 1.0425361i !

! - 0.5576818 - 1.0425361i !

Нетрудно заметить, что полином имеет один действительный и два комплексных корня.

Задача 7.3. Найти решение уравнения y(x) = 0, если y(x) = x4 − 18x2 + 6.

Листинг 7.7. Решение задачи 7.3

-->x=poly(0,’x’);

-->y=x^4-18*x^2+.6;

-->roots(y)

ans =

! 0.1827438 !

! - 0.1827438 !

! - 4.2387032 !

! 4.2387032 !

Приведите графическое решение данного уравнения.

Трансцендентные уравнения

Уравнение f(x) = 0, в котором неизвестное входит в аргумент трансцендентных функций, называется трансцендентным уравнением.

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

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

Численное решение нелинейного уравнения проводят в два этапа.

  1.  В начале отделяют корни уравнения, т.е. находят достаточно тесные промежутки, в которых содержится только один корень. Эти промежутки называют интервалами изоляции корня, определить их можно, изобразив график функции f(x) или любым другим методом.
  2.  На втором этапе проводят уточнение отделенных корней, или, иначе говоря, находят корни с заданной точностью.

Для решения трансцендентных уравнений в Scilab применяют функцию

fsolve(x0,f)

где x0 - начальное приближение, f - функция, описывающая левую часть уравнения y(x) = 0.

Рассмотрим применение этой функции на примерах.

Задача 7.4. Найти решение уравнения

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

Корень данного уравнения лежит в интервале [0; 1].

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

Листинг 7.8. Решение задачи 7.4

-->deff(’[y]=f1(x)’,’y1=((x-1)^2)^(1/3),y2=(x^2)^(1/3),y=y1-y2’)

-->fsolve(0,f1)

ans = 0.5

Задача 7.5. Найти корни уравнения f(x) = ex/5 − 2(x − 1)2.

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

Последовательно вызывая функцию fsolve с различными начальными приближениями, получим все решения заданного уравнения:

Листинг 7.9. Решение задачи 7.5

-->deff(’[y]=f(x)’,’y=exp(x)/5-2*(x-1)^2’)

-->x(1)=fsolve(0,f);x(2)=fsolve(2,f);x(3)=fsolve(5,f);

-->x

x = ! 0.5778406 !

! 1.7638701 !

! 5.1476865 !

Кроме того, начальные приближения можно задать в виде вектора, и тогда функцию можно вызвать один раз:

Листинг 7.10. Решение задачи 7.5 (альтернативный способ)

-->fsolve([0;2;5],f)

ans = ! 0.5778406 !

! 1.7638701 !

! 5.1476865 !

Задача 7.6. Вычислить корни уравнения sin(x) − 0.4x = 0 в диапазоне [−5π; 5π].

Решение задачи представлено в листинге 7.11.

Листинг 7.11. Решение задачи 7.6

-->deff(’[y]=fff(x)’,’y=-0.4+sin(x)’)

-->V=[-5*%pi:%pi:5*%pi]; X=fsolve(V,fff);

-->X //Множество решений

X = !-16.11948 -12.154854 -9.8362948 -5.8716685 -3.5531095

0.4115168 2.7300758 6.6947022 9.0132611 12.977887 15.296446!

Задача 7.7. Найти решение уравнения y(x) = 0, если y(x) = x5 − x3 + 1.

Решить самостоятельно.


 

А также другие работы, которые могут Вас заинтересовать

23968. Римская литература, влияние греческой 22 KB
  Римская литература влияние греческой Первая традиционная литература. Этрусков свергли = республика – сумрачные века Усиливается влияние сельского элемента замедляется развитие письменности литература была только деловая не было развитой мифологической системы. Литература развивается быстрее и более интенсивно. Римская литература с самого начала уже эллинистична.
23969. Рим. Три специфические особенности римской литературы 11.86 KB
  Три специфические особенности римской литературы. а Первой отличительной чертой литературы в сравнении с греческой является то что это литература гораздо более поздняя и потому гораздо более зрелая. Рим мог воспользоваться уже готовыми результатами векового развития греческой литературы усвоить их достаточно быстро и основательно и создавать на этой основе уже свою собственную гораздо более зрелую и развитую литературу. С самого начала развития римской литературы чувствуется сильное греческое влияние.
23970. Римская литература, периодизация 21.5 KB
  – расцвет комедии длится до начала деятельности Цицерона. III Классический Золотой век а время Цицерона – расцвет прозы 8143 гг. б время Августа – расцвет поэзии 43 г.
23971. Римский фольклор 21 KB
  песни: свадебные застольные погребальные фесценнины – песни шуточного содержания связанные с обрядами плодородия.
23972. Римская комедия. Плавт 35.5 KB
  Писал паллиаты – комедии на греческий сюжет. Комедии греческого плаща. Брал сюжеты из греческой новоаттической комедии действие в греческих городах персонажи с греческими именами но использует римские реалии. Выбирает комедии которые будут интересны римлянам.
23973. Архаический период римской литературы. Первые авторы 23 KB
  Трагедии Впервые ввел драму на римский сюжет – претекстата. Ромул мифологический сюжет Кластидит исторический сюжет Больше всего прославился в комедии.
23974. Комедии Теренция 32.5 KB
  Комедии Теренция Публий Теренций Афр 195159 гг. Попал в Рим в качестве раба сенатора Теренция Лукана который входил в кружок Сципиона Младшего. Гуманизм Теренция спас его комедии от исчезновения. СВЕКРОВЬ Как видно из дидаскалии и из двух прологов комедия была поставлена при жизни Теренция трижды.
23976. Общая характеристика культуры эллинизма 26 KB
  Особенности искусства: влияние Востока интерес к быту и к частному человеку космополитизм Влияние востока на уровне религии: культ богини Тихэ случая культ Исиды сближается с Деметрой культ Осириса культ Кибелы В то же время в Грецию проникает иудаизм интерес к пышности роскоши изысканности – коринфский ордер. интерес к огромным сооружениям. Фаросский маяк Колосс Родосский огромные корабли интерес к дороговизне украшений симпатии к обожествлению правителей среди ораторов стиль азионизм – туманность речи. Интерес...