Биографии Характеристики Анализ

Решаване на уравнения чрез проста итерация в excel. Прецизиране на корените на уравнението

Пример 3.1 . Намерете решение на система от линейни алгебрични уравнения(3.1) по метода на Якоби.

Итеративни методиможе да се използва за дадена система, защото условието "преобладаване на диагоналните коефициенти",което осигурява конвергенцията на тези методи.

Схемата за проектиране на метода на Якоби е показана на фигура (3.1).

Донесете системата (3.1). към нормален изглед:

, (3.2)

или в матрична форма

, (3.3)



Фиг.3.1.

За определяне на броя повторения, необходими за постигане на дадена точност д,и приблизителното решение на системата е полезно в колоната зИнсталирай Условен формат. Резултатът от такова форматиране е видим на фигура 3.1. Колонни клетки H,чиито стойности отговарят на условие (3.4) са защриховани.

(3.4)

Анализирайки резултатите, ние приемаме четвъртата итерация като приблизително решение на оригиналната система с дадена точност e=0.1,

тези. х 1=10216; х 2= 2,0225, х 3= 0,9912

Промяна на стойността дв клетка H5възможно е да се получи ново приблизително решение на оригиналната система с нова точност.

Анализирайте конвергенцията на итеративния процес, като начертаете промените във всеки компонент на решението на SLAE в зависимост от номера на итерацията.

За да направите това, изберете блок от клетки A10:D20и използване Съветник за диаграми, изграждат графики, които отразяват конвергенцията на итеративния процес, фиг.3.2.

Системата от линейни алгебрични уравнения се решава по подобен начин по метода на Зайдел.


Лабораторна работа №4

Тема. Числени методи за решаване на линейни обикновени диференциални уравненияс гранични условия. Метод на крайните разлики

Упражнение.Решете проблема с граничните стойности чрез метода на крайните разлики чрез конструиране на две приближения (две итерации) със стъпка h и стъпка h/2.

Анализирайте резултатите. Вариантите на задачите са дадени в Приложение 4.

Работен ред

1. Изградете ръчноапроксимация с крайна разлика на граничната задача (SLAE с крайна разлика) със стъпка ч , даден вариант.

2. Използвайки метода на крайните разлики, оформете in превъзходенсистема от линейни алгебрични уравнения с крайни разлики за стъпката ч сегментна разбивка . Запишете този SLAE в работния лист на книгата. превъзходен. Схемата за проектиране е показана на фигура 4.1.

3. Решете получената SLAE по метода на почистване.

4. Проверете коректността на решението на SLAE с помощта на добавката Excel Намерете решение.

5. Намалете стъпката на решетката 2 пъти и решете проблема отново. Представете резултатите графично.

6. Сравнете резултатите си. Направете заключение за необходимостта от продължаване или прекратяване на акаунта.

Използване на решение на гранична задача електронни таблици Microsoft Excel.

Пример 4.1.Използване на метода на крайните разлики за намиране на решение на проблема с гранични стойности , y(1)=1, y’(2)=0,5на сегмента със стъпка h=0.2 и със стъпка h=0.1. Сравнете резултатите и направете заключение за необходимостта от продължаване или прекратяване на акаунта.

Изчислителната схема за стъпка h=0.2 е показана на фиг.4.1.

Полученото решение (мрежова функция) Y {1.000, 1.245, 1.474, 1.673, 1.829, 1.930}, х (1; 1.2; 1.4; 1.6; 1.8; 2) в колона L и B може да се приеме като първа итерация (първо приближение) първоначален проблем.



За намиране втора итерациянаправете решетката два пъти по-дебела (n=10, крачка h=0,1) и повторете горния алгоритъм.

Това може да стане на същия или на друг лист от книгата. превъзходен. Решението (второ приближение) е показано на фигура 4.2.

Сравнете получените приблизителни решения. За по-голяма яснота можете да построите графики на тези две апроксимации (две мрежови функции), Фиг.4.3.

Процедурата за конструиране на графики на приближени решения на гранична задача

1. Постройте графика за решаване на задачата за разностна решетка със стъпка h=0,2 (n=5).

2. Активирайте вече изградената диаграма и изберете командата меню Chart\Add Data

3. В прозореца Нови даннивъвеждане на данни x i, y iза диференциална мрежа със стъпка h/2 (n=10).

4. В прозореца Специална вложкапоставете отметки в полетата:

Ø нови редове,

Както се вижда от представените данни, две приблизителни решения на граничната задача (две мрежови функции) се различават едно от друго с не повече от 5%. Затова приемаме втората итерация като приблизително решение на първоначалния проблем, т.е.

Y{1, 1.124, 1.246, 1.364, 1.478, 1.584, 1.683, 1.772, 1.849, 1.914, 1.964}


Лаборатория #5

Приблизително числени методи

РЕШЕНИЕ НА НЕЛИНЕЙНО УРАВНЕНИЕ с едно неизвестно.

Уравнение с едно неизвестно може да бъде написано в канонична форма

Решението на уравнението е да се намерят корените, т.е. стойности на x, които превръщат уравнението в идентичност. В зависимост от това кои функции са включени в уравнението се делят два големи класа уравнения - алгебрични и трансцендентални. Функцията се нарича алгебрична, ако, за да се получи стойността на функцията от дадена стойност x необходимост от извършване на аритметични операции и степенуване. Трансценденталните функции включват експоненциални, логаритмични, тригонометрични преки и обратни и т.н.

Можете да намерите точните стойности на корените само в изключителни случаи. Като правило се използват методи за приблизително изчисляване на корени с дадена степен на точност E. Това означава, че ако се установи, че желаният корен се намира вътре в интервала , където a е лявата граница, а b е дясната граница на интервалът и дължината на интервала (b-a)<= E, то за приближенное значение корня можно принять любое число, находящееся внутри этого интервала.

Процесът на намиране на приблизителни стойности на корените е разделен на два етапа: 1) отделяне на корените и 2) прецизиране на корените до дадена степен на точност. Нека разгледаме тези етапи по-подробно.

1.1 Разделяне на корените.

Всеки корен на уравнение се счита за отделен на сегмент, ако изследваното уравнение няма други корени на този сегмент.

Разделянето на корените означава разделяне на целия диапазон от допустими стойности на x на сегменти, всеки от които съдържа само един корен. Тази операция може да се извърши по два начина - графичен и табличен.

Ако функцията f (x) е такава, че е лесно да се изгради качествена графика на нейната промяна, тогава според тази графика грубо се намират две числа, между които се намира една точка на пресичане на функцията с оста x. Понякога, за да се улесни конструкцията, е препоръчително да се представи оригиналното канонично уравнение във формата f 1 (x) = f 2 (x), след което да се начертаят графиките на тези функции и абсцисите на пресечната точка на графиките служат като корени на това уравнение.

При наличието на компютър най-често се среща табличният метод за разделяне на корените. Състои се в таблично представяне на функцията f(x) при промяна на x от определена стойност на x първоначална към стойност на x крайна със стъпка dx. Задачата е да се намерят в тази таблица такива две съседни x стойности, за които функцията има различни знаци. Да предположим, че са намерени такива две стойности a и b=a+dx, т.е. f(a)*f(b)<0. Тогда согласно теореме Больцано-Коши внутри отрезка , если функция f(x) непрерывна, существует точка с, в которой f(c)=0. EXCEL позволяет легко реализовать оба способа отделения корней. Рассмотрим их на примере.

Пример 1.1.

Необходимо е да се отделят корените на уравнението

За да направите това, трябва да таблицирате функцията f (X) \u003d exp (X) - 10 * X, написана съгласно правилата на EXCEL, и да изградите нейната графика, когато X се промени от някакво X начало до X край със стъпка dX . Нека тези стойности първо са както следва: X начало = 0, X край = 5, dX = 0,5. Ако в тези граници на промяна в X не успеем да отделим единичен корен, тогава ще е необходимо да зададем нови начални и крайни стойности на x и, може би, да променим стъпката.

За изграждане на таблица е препоръчително да използвате специална подпрограма TABLE. За да направите това, на нов работен лист в клетка B1 въведете текста: ОТДЕЛ КОРЕНИ. След това в клетка A2 въведете текста: x, а в клетка B2, съседна на нея, въведете текста: f (x). След това оставяме клетка A3 празна, но в клетка B3 въвеждаме формулата на изследваната функция според правилата на EXCEL, а именно

След това попълнете числовата серия от промени X в редове A4:A14 от 0 до 5 със стъпка 0,5.

Изберете блока от клетки A3:B14. Сега нека дадем командата на менюто Таблица с данни. Резултатите от табулирането ще бъдат поставени в клетъчен блок B4:B14. За да ги направите по-визуални, трябва да форматирате блок B4:B14, така че отрицателните числа да са оцветени в червено. В този случай е лесно да се намерят две съседни стойности на X, за които стойностите на функцията имат различни знаци. Те трябва да се приемат като краища на интервала за отделяне на корените. В нашия случай има два такива интервала, както се вижда от таблицата - и [3.5;4].

След това трябва да начертаем нашата функция, като изберем блок A4:B14 и извикаме Главен магистър. В резултат на това на екрана получаваме диаграма на изменението на f (X), от която се виждат следните интервали за разделяне на корените и .

Ако сега промените числените стойности на x в блок A4: A14, тогава стойностите на функцията в клетки B4: B14 и графиката ще се променят автоматично.


1.2 Прецизиране на корените: итерационен метод.

За да прецизирате корена с помощта на итерационния метод, трябва да се посочи следното:

Самият метод може да бъде разделен на два етапа:
а) преход от каноничната форма на запис на уравнението f(X)=0 към итеративната форма X = g(X),
б) изчислителна итеративна процедура за актуализиране на корена.

Можете да преминете от каноничната форма на уравнението към итеративната по различни начини, важно е само в този случай достатъчно условие за сходимост на метода: çg’(X)ç<1 на , т.е. модулът на първата производна на итерационната функция трябва да бъде по-малък от 1 на интервала. Освен това, колкото по-малък е този модул, толкова по-голяма е степента на конвергенция.

Изчислителната процедура на метода е както следва. Избираме първоначалното приближение, обикновено равно на X 0 = (a+b)/2. След това изчисляваме X 1 =g(X 0) и D= X 1 - X 0 . Ако модул D<= E, то X 1 является корнем уравнения. В противном случае переходим ко второй итерации: вычисляем Х 2 =g(X 1) и новое значение D=X 2 - X 1 . Опять проводим проверку на точность и при необходимости продолжаем итерации. Если g(X) выбрано правильно и удовлетворяет достаточному условию сходимости, то эта итерирующая процедура сойдется к корню. Следует отметить, что от знака g’(X) зависит характер сходимости: за g’(X)>0 конвергенцията ще бъде монотонна, т.е. с увеличаване на повторенията, D ще се приближи до E монотонно (без промяна на знака), докато за g'(X)<0 сходимость будет колебательной , т.е. D ще се приближи до E по модул, променяйки знака при всяка итерация.

Помислете за прилагането на метода на итерация в EXCEL, като използвате пример.

Пример 1.2

Нека прецизираме чрез итерация стойността на корените, разделени в Пример 2.1. Така че нека f(X)= exp(X) - 10*X, за първи корен a=0 и b=0,5. Нека E=0,00001. Как да изберем итерируема функция? Например, така че g(X)=0,1*exp(X). На интервала çg’(X)ç<1 и достаточное условие сходимости выполняется. Кроме того, эта производная >1 на интервала и характерът на конвергенцията ще бъде монотонен.

Нека програмираме метода на итерация за този пример на същия работен лист, където направихме коренното разделяне. В клетка A22 въведете числото равно на 0. В клетка B22 напишете формулата =0,1*EXP(A22), а в клетка C22 формулата =A22-B22. Така ред 22 съдържа данните за първата итерация. За да получим данни за втората итерация в ред 23, ние копираме съдържанието на клетка B22 в клетка A23, записвайки формулата =B22 в A23. След това трябва да копирате формулите от клетки B22 и C22 в клетки B23 и C23. За да получите данни от всички други итерации, изберете клетки A23, B23, C23 и копирайте съдържанието им в блок A24:C32. След това трябва да анализирате промяната D \u003d X - g (X) в колона C, намерете D<0,00001 по модулю и выбрать соответствующее ему значение Х из столбца А. Это и есть приближенное значение корня.


За по-голяма яснота можете да изградите диаграма за итерационния метод. Избиране на блок A22:C32 и използване Съветник за диаграми, получаваме три графики на промените в X, g (X) и D в зависимост от броя повторения, за които стъпка 3 от 5изберете формат 2 и нататък стъпка 4 от 5За да конструирате диаграмата, трябва да зададете нулеви колони за етикети на оста X. Сега монотонният характер на конвергенцията D е ясно видим.

За да прецизирате втория корен на това уравнение върху интервала, трябва да изберете друга итерационна функция, така че нейната първа производна да е по-малка от единица по абсолютна стойност. Изберете g(X)= LN(X)+LN(10). В клетка A22 ще въведем ново X0 = 3.75, а в клетка B22 - нова формула =LN(A22)+LN(10). Нека копираме формулата от B22 в блок B23:B32 и незабавно да получим нови данни и преустроена диаграма. Нека определим приблизителната стойност на втория корен.

1.3 Прецизиране на корените: метод на Нютон.

За прецизиране на корена по метода на Нютон трябва да се даде следното:

1) уравнението f(X) = 0 и f(X) трябва да бъде дадено под формата на формула,

2) числата a - лявата граница и b - дясната граница на интервала, вътре в който се намира един корен,

3) числото E е дадената точност на получаване на корена,

4) функцията f(X) трябва да е два пъти диференцируема и трябва да са известни формулите f’(X) и f”(X).

Методът се състои в итеративни изчисления на последователността

X i+1 = X i - f(X i)/f’(X i), където i=0,1,2, ...,

изхождайки от началното приближение Х 0, принадлежащо на интервала и удовлетворяващо условието f(X 0)*f”(X 0)>0. Достатъчни условия за конвергенцияМетодът се състои в това, че първата и втората производни на изследваната функция трябва да запазят своя знак на интервала. Като първоначално приближение обикновено се избира или a, или b, в зависимост от това кой от тях съответства на формулата за избор на X 0.

Методът на Нютон позволява проста геометрична интерпретация. Ако през точка с координати (X i ;f(X i)) се прекара допирателна към кривата f(X) тогава абсцисата на пресечната точка на тази допирателна с оста 0X е следващото приближение на корена Х i+1.

Методът на Нютон може да се разглежда като някаква модификация на итерационния метод, който дава най-добрата итерационна функция g(X) на всяка итерационна стъпка. Нека извършим следните трансформации с оригиналното канонично уравнение f(X)=0. Нека умножим лявата и дясната му част по някакво ненулево число l. След това добавяме отляво и отдясно по X. Тогава ще имаме

X \u003d g (X) \u003d X + l * f (X).

Диференцирайки g(X), получаваме g'(X) = 1 + l*f'(X). От достатъчно условие за сходимост на итерационния метод çg’(X)ç<1. Потребуем, чтобы на i-том шаге итерации сходимость была самой быстрой, т.е. çg’(X i)ç =0. Тогда l=-1/ f’(X i) и мы пришли к методу Ньютона.

Изчислителната процедура на метода е както следва. Избираме първоначалното приближение X 0 , обикновено равно на a или b. След това изчислете X 1 = X 0 - f(X 0)/f’(X 0) и D= X 1 - X 0 . Ако модул D<= E, то X 1 является корнем уравнения. В противном случае переходим ко второй итерации: вычисляем Х 2 и новое значение D=X 2 - X 1 . Опять проводим проверку на точность и при необходимости продолжаем итерации. Если X 0 выбрано правильно, а функция удовлетворяет достаточному условию сходимости, то эта итерирующая процедура быстро сойдется к корню.

Пример 1.3.

Нека прецизираме стойността на корена, отделен в пример 1.1 по метода на Нютон. Така че нека f(X)= exp(X) - 10*X, за първи корен a=0 и b=0,5. Нека E=0,00001. Формулите за първата и втората производни на f(X) са както следва

f’(X) = exp(X) - 10 и f”(X) = exp(X).

Очевидно е, че X 0 = a = 0, защото f(0)*f”(0) = 1 >0.

За да получим данни за втората итерация в ред 43, копираме съдържанието на клетка D42 в клетка A43, като записваме формулата =D42 в A43. След това трябва да копирате формулите на клетки B42, C42, D42, E42 в клетки B43, C43, D43, E43. За да получите данните от всички останали итерации, е необходимо да изберете клетките в ред 43 и да копирате съдържанието им в блок A44:E47. След това трябва да анализирате промяната в D в колона E, да намерите D<0,00001 по модулю и выбрать соответствующее ему значение Х из столбца А. Это и есть приближенное значение корня. При правильно введенных формулах метод Ньютона сходится за 3 или 4 итерации. Поэтому строить диаграмму для этого метода нет необходимости.

1.4. Усъвършенстване на корените: методът на бисекция (разделяне на сегмента наполовина).

За прецизиране на корена чрез метода на разполовяване трябва да се даде следното:

1) уравнението f(X) = 0 и f(X) трябва да бъде дадено под формата на формула,

2) числата a - лявата граница и b - дясната граница на интервала, вътре в който се намира един корен,

3) числото E - дадената точност на получаване на корена.

Спомнете си, че функцията f(X) има различни знаци в краищата на интервала. Изчислителната процедура на метода е, че при всяка итерационна стъпка на интервала се избира междинна точка c, така че да е средата на интервала, т.е. c=(a+b)/2. Тогава интервалът ще бъде разделен от тази точка на два равни сегмента и , чиито дължини са равни на (b-a)/2. От получените два сегмента избираме този, в краищата на който функцията f(X) приема стойности с противоположни знаци. Нека го обозначим отново като . Това завършва първата итерация. След това отново разделяме новия сегмент наполовина и извършваме втората и следващите итерации. Процесът на разделяне на сегмента наполовина се извършва, докато на някоя K-та стъпка новополученият сегмент стане по-малък или равен на стойността на точност E. Стойността на стъпката K може лесно да се изчисли от формулата

(б-а)/2 к<=E,

където a и b са началните стойности на лявата и дясната граница на интервала.

Методът на разполовяване се събира за всякакви непрекъснати функции, включително недиференцируеми.

Пример 1.4.

Нека прецизираме стойността на корена, отделен в пример 1.1 чрез метода на разполовяване. Така че нека f(X)= exp(X) - 10*X, за първи корен a=0 и b=0,5. Нека E=0,00001.


Нека програмираме метода на разполовяване за този пример на същия работен лист, където направихме разделянето на корена. В клетки A52 и B52 трябва да въведете числовите стойности на a и b, в клетка C52 - формулата \u003d (A52 + B52) / 2. След това в клетка D52 въведете формулата =EXP(A52)-10*A52, в клетка E52 - формула =EXP(C52)-10*C52, в клетка F52 - формула =D52*E52 и накрая в клетка G52, напишете формулата =B52-A52. На ред 52 генерирахме първата итерация. При втората итерация стойностите в клетки A53 и B53 зависят от знака на числото в клетка F52. Ако F52>0, тогава стойността на A53 е равна на C52. В противен случай трябва да е равно на A52. В клетка B53 е обратното: ако F52<0, то значение В53 равно С52, иначе В52.

Вградената функция на EXCEL, която се нарича IF, ще помогне за разрешаването на тази трудност. Нека направим текущата клетка A53. В лентата с формули, до зелената отметка, щракнете върху бутона с изображението f(x). Така наречен Функция Master. В диалоговия прозорец, който се показва, изберете в полето Категории Функциикатегория главоблъсканица, и в полето Име на функцията- име IF. На втората стъпка от диалоговия прозорец попълнете трите свободни полета, както следва: в полето Булев_изразвъведете “F52>0” (разбира се, без кавички!), в полето стойност_ако_истинавъведете C52 и в полето стойност_ако_лъжа- A52. Да щракнем върху бутона завършек. Това е всичко.

Същото трябва да се направи с клетка B53. само булев изразще бъде „F52<0”, стойност_ако_истинаще бъде C52 и стойност_ако_лъжасъответно B52.

След това трябва да копирате формулите в клетъчния блок C52:G52 в блока C53:G53. След това втората итерация ще бъде извършена в ред 53. За да получите следващите итерации, е достатъчно да копирате формулите от ред 53 в блок A53:E53 в блок A54:E68. След това, както обикновено, трябва да намерите ред в колона E, където стойността на D ще бъде по-малка от E. Тогава числото в колона C в този ред е приблизителната стойност на корена.

Можете да начертаете промените в стойностите в колони A, B и C от първата итерация до последната итерация. За да направите това, изберете блок от клетки A52:C68. Вижте пример 1.2 за допълнителни инструкции.

Нека уточним стойността на корена, отделен в пример 1.1. Така че нека f(X)= exp(X) - 10*X. Нека намерим корен, лежащ на интервала . Нека оставим клетка A70 празна. В клетка B70 напишете формулата =EXP(A70)-10*A70. Изберете команда от менюто Обслужване- Избор на параметри. Ще се отвори диалогов прозорец Избор на параметри, в който в полето Поставете в клетканапишете B70, в полето Значениевъведете 0 (нула) в полето Смяна на клеткатада кажем А70. Щракнете върху бутона OK и ще се появи нов диалог, показващ резултата от операцията. В прозореца Състояние на решениетоще се покаже намерената стойност. Сега, ако щракнете върху бутона OK, намерената коренна стойност ще бъде въведена в клетка A70, а стойността на функцията ще бъде въведена в клетка B70.

За да се намери друг корен, лежащ на интервала, е необходимо да се промени първоначалното приближение, което в нашата таблица е в клетка A70. Нека напишем в тази клетка една от границите на интервала, например 4, и отново извършете процедурата за избор на параметър. Съдържанието на клетки A70 и B70 ще се промени, сега координатите на по-големия корен ще се появят в тези клетки.

2. СИСТЕМИ ОТ ЛИНЕЙНИ АЛГЕБРИЧНИ УРАВНЕНИЯ

Най-общо системата от линейни алгебрични уравнения се записва по следния начин: a 11 x 1 +a 12 x 2 +... +a 1n x n = b 1

a 21 x 1 +a 22 x 2 +... +a 2n x n = b 2

......................

a n1 x n +a n2 x 2 +... +a nn x n = b n

Записваме набора от коефициенти на тази система под формата на квадратна матрица Аот нлинии и нколони

a 11 a 12 ... a 1n

a 21 a 22 ... a 2n

a n1 a n2 ... a nn

Използвайки матрично смятане, оригиналната система от уравнения може да бъде написана като

A * X \u003d B,

където х- колонен вектор с неизвестни размери н, а AT- вектор-колона от свободни членове, също измерение н.

Тази система се нарича ставаако има поне едно решение и определениако има едно единствено решение. Ако всички свободни членове са равни на нула, тогава системата се извиква хомогенен.

Необходимо и достатъчно условие за съществуването на уникално решение на системата е условието DET=0, където DET е детерминантата на матрицата НО. На практика, когато се изчислява на компютър, не винаги е възможно да се получи точното равенство на DET на нула. Когато DET е близо до нула, се казва, че системите са лошо кондиционирани. Когато се решават на компютър, малки грешки в изходните данни могат да доведат до значителни грешки в решението. Условието DET~0 е необходимо, за да бъде системата некондиционирана, но не е достатъчно. Следователно, когато се решава система на компютър, е необходимо да се оцени грешката, свързана с ограничението на битовата мрежа на компютъра.

Има две величини, характеризиращи степента на отклонение на полученото решение от точното. Позволявам Hkе истинското решение на системата, Xc- решението, получено по един или друг метод на компютър, след това грешката на решението:
E \u003d Xk - Xc. Втората стойност е несъответствието, равно на R = B - A*Xc. В практическите изчисления точността се контролира с помощта на остатъци, въпреки че това не е напълно правилно.

2.1. матричен метод.

EXCEL дава възможност да се реши система от линейни алгебрични уравнения по матричен метод, т.е.

X \u003d A -1 * B.

По този начин алгоритъмът за решаване на системата чрез матричния метод може да бъде представен като следната последователност от изчислителни процедури:

1) вземете матрица А -1, обратната на матрицата НО;

2) вземете решението на системата по формулата Xc \u003d A -1 * B;

3) изчислете нов вектор от свободни членове Sun \u003d A * Xs;

4) изчисляване на остатъка R=B-Bc;

5) вземете решението на системата по формулата dXc \u003d A -1 * R;

6) сравнете всички векторни компоненти dXcмодул с дадена грешка E: ако всички са по-малки от E, тогава изчисленията се завършват, в противен случай се повтарят изчисленията от т. 2, където Xc = Xc + dXc.

Помислете за матричния метод за решаване на системата с помощта на EXCEL, като използвате пример.

Пример 2.1.

Решете система от уравнения

20.9x1 + 1.2x2 + 2.1x3 + 0.9x4 = 21.7

1,2x1 +21,2x2 + 1,5x3 + 2,5x4 = 27,46

2.1x1 + 1.5x2 +19.8x3 + 1.3x4 = 28.76

0,9x1 + 2,5x2 + 1,3x3 +32,1x4 = 49,72

EXCEL има следните вградени функции, които изпълняват матрични изчисления:

а) MOBR - инверсия на матрицата,

б) MULTIP - умножение на две матрици,

в) МОПРЕД - изчисляване на матричната детерминанта.

Когато използвате тези функции, е важно да подредите правилно и компактно блоковете от клетки в работния лист, които съответстват на изходните и работните матрици и вектори на колони. Отворете нов работен лист, като щракнете върху раздела по ваш избор. Вземете под матрицата НОблок от клетки A3:D6. За яснота го поставяме в черна рамка. За да направите това, изберете блок A3:D6, дайте командата от менюто Формат – Клеткии в диалоговия прозорец, който се отваря, изберете раздела Кадър. Ще се отвори нов диалог, в който кликваме върху полето Рамка - контури изберете в полето Стил на рамкатанай-дебелата ширина на линията. Потвърдете решението си, като щракнете върху бутона OK. Сега изберете блока A8:D11 за матрицата А -1и също го затворете в черна рамка, като следвате стъпките, подобни на матричния блок НО. След това изберете блокове от клетки за колонни вектори (очертавайки ги с черна рамка): блок F8:F11 - за вектор AT, блок H8:H11 - под вектора Xs A -1 *B, блок H3:H6 - под вектора слънцев резултат на умножението A*Xs, като за по-голяма яснота избираме допълнителен блок F3:F6, където копираме компонентите на вектора Xsот блок H8:H11. И накрая, ще въведем знака за умножение * в клетки E4 и E9 и знака за равенство = в клетки G4 и G9, след което, избирайки колони E и G на свой ред, ще дадем командата от менюто Формат – Колона – Побиране на ширина. Така подготвихме работен лист за решаване на нашия проблем.

Нека въведем началните данни: числата на матрицата НОв клетките на блока A3:D6 и числата на вектора на свободните членове AT- в клетките на блок F8:F11.


Стартираме алгоритъма с обръщане на матрицата НО. За да направите това, изберете блок A8:D11, където трябва да бъде поставен резултатът от операцията. Този блок ще стане черен, с изключение на клетка A8. Да щракнем върху бутона f xна панела Стандартенчрез обаждане Помощници за функции. Ще се отвори диалогов прозорец, в който от полето Характерна категорияизберете ред Мат. и тригонометрия, и от полето Име на функцията- линия MOBR. Нека преминем към втората стъпка от диалоговия прозорец, като щракнете върху бутона Стъпка>. Тук в полето масивтрябва да въведете A3: D6 от клавиатурата, което съответства на блока от клетки, заети от матрицата НО. Като щракнете върху бутона завършек, можете да видите, че в блок A8:D11 е попълнена само клетка A8. За да завърши операцията по повикване, EXCEL изисква още две стъпки. Първо трябва да активирате лентата с формули, като щракнете върху нея (където и да е в реда!) - тогава курсорът на мишката ще приеме формата I. Проверката на правилността на вашите действия ще бъде появата на четири бутона вляво от формулата лента, включително със зелена отметка. След това натиснете клавиша "Ctrl" на клавиатурата, след това без да го пускате - клавиша "Shift" и без да го пускате - клавиша "Enter", т.е. в резултат на това и трите клавиша трябва да бъдат натиснати едновременно! Сега целият блок A8:D11 ще бъде изпълнен с числа и можете да изберете блока H8:H11, за да започнете операцията за умножение A -1 *B.

При избран този блок обадете се отново Съветник за функциии в полето Име на функцията- изберете функцията MULTIP. Като щракнете върху бутона Стъпка>, нека преминем към втората стъпка от диалоговия прозорец, където в полето Масив1въведете адрес А8:D11, а в полето Масив2- адрес F8:F11. Да щракнем върху бутона завършеки установете, че в блок H8:H11 е запълнена само клетка H8. Активирайте лентата с формули (трябва да се появи зелена отметка!) И, като използвате метода, описан по-горе, натиснете едновременно трите клавиша "Ctrl"-"Shift"-"Enter". Резултатът от умножението ще се появи в блок H8:H11.

За да проверим точността на полученото решение на системата, извършваме изчислителната операция Sun=A*Hs. За целта ще копираме само числовите стойности (а не формулите!) на клетките от блока H8:H11 в клетките F3:F6. Това трябва да стане по следния начин. Изберете блок H8:H11. Дайте командата на менюто редактиране- копие. Изберете блок F3:F6. Дайте командата на менюто редактиране- Специална вложка. Ще се отвори диалогов прозорец, в който в полето Поставететрябва да бъде избран режим Стойности. Потвърдете решението си, като щракнете върху бутона OK.

След тази операция блоковете A3:D6 и F3:F6 се попълват с числа. Да започнем с умножението на матрицата. НОна вектор Xs. За да направите това, изберете блока H3: H6, обадете се Функция Masterи, процедирайки по същия начин, както при изчислението Xc \u003d A -1 * B, получи слънце. Както може да се види от таблицата, числените стойности на векторите ATи слънцесъвпадат, което показва добра точност на изчисленията, т.е. остатъкът в нашия пример е нула.

Потвърждаваме добрата условност на матрицата НОизчисляване на неговата детерминанта. За да направите това, нека направим клетка D13 активна. Като се използва Помощници за функцииизвикване на функцията MOPRED. В полето за масив въведете адреса на блока A3:D6. Като щракнете върху бутона завършек, получаваме в клетка D13 числовата стойност на детерминантата на матрицата НО. Както се вижда, тя е много по-голяма от нула, което показва добра условност на матрицата.

2.2. Метод на приблизителните изчисления.

Един от най-често срещаните итеративни методи за решаване на системи от линейни алгебрични уравнения, който се характеризира с простота и лекота на програмиране, е методът на приближените изчисления или методът на Якоби.

Нека системата бъде решена

a 11 x 1 + a 12 x 2 + a 13 x 3 = b 1

a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2

a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3

Да предположим, че диагоналните елементи a 11, a 22, a 33 са различни от нула. В противен случай можете да пренаредите уравненията. Изразяваме променливите съответно от първото, второто и третото уравнения. Тогава

x 1 = / a 11

x 2 \u003d / a 22

x 3 = / a 33

Нека зададем началните приближения на неизвестните

Замествайки ги в дясната страна на трансформираната система, получаваме ново първо приближение

Намиране на корените на уравнения

Графичният начин за намиране на корените е да се начертае функцията f (x) върху сегмента. Пресечната точка на графиката на функцията с абсцисната ос дава приблизителна стойност на корена на уравнението.

Приблизителните стойности на корените, намерени по този начин, позволяват да се отделят сегменти, на които, ако е необходимо, е възможно да се прецизират корените.

При намиране на корените чрез изчисление за непрекъснати функции f(x) се използват следните съображения:

- ако функцията има различни знаци в краищата на сегмента, тогава между точките a и b на оста x има нечетен брой корени;

- ако функцията има еднакви знаци в краищата на интервала, то между a и b има четен брой корени или изобщо няма;

- ако в краищата на отсечката функцията има различни знаци и или първата производна, или втората производна не променя знаците на тази отсечка, тогава уравнението има един корен в отсечката.

Намерете всички реални корени на уравнението x 5 –4x–2=0 върху отсечката [–2,2]. Нека създадем електронна таблица.


маса 1

Таблица 2 показва резултатите от изчислението.

таблица 2

По същия начин се намира решение на интервалите [-2,-1], [-1,0].


Уточняване на корените на уравнението

Използване на режим "Търсене на решения".

За уравнението, дадено по-горе, всички корени на уравнението x 5 –4x–2=0 трябва да бъдат изяснени с грешка от E = 0,001.

За да изясним корените в интервала [-2,-1], ще съставим електронна таблица.

Таблица 3



Стартираме режима "Търсене на решение" в менюто "Инструменти". Изпълнение на команди на режима. Режимът на показване ще покаже намерените корени. По същия начин прецизираме корените на други интервали.

Прецизиране на корените на уравнението

Използване на режим "Итерации".

Методът на проста итерация има два режима „Ръчно“ и „Автоматично“. За да стартирате режима "Итерации" в менюто "Инструменти", отворете раздела "Параметри". Следват командите на режима. В раздела Изчисления можете да изберете автоматичен или ръчен режим.


Решаване на системи от уравнения

Решаването на системи от уравнения в Excel се извършва по метода на обратните матрици. Решете системата от уравнения:

Нека създадем електронна таблица.

Таблица 4

А б ° С д д
Решение на системата от уравнения.
брадва=b
Първоначална матрица А Дясна страна b
-8
-3
-2 -2
Обратна матрица (1/A) Вектор на решението x=(1/A)/b
=MOBR(A6:C8) =MOBR(A6:C8) =MOBR(A6:C8) =МНОГО(A11:C13;E6:E8)
=MOBR(A6:C8) =MOBR(A6:C8) =MOBR(A6:C8) =МНОГО(A11:C13;E6:E8)
=MOBR(A6:C8) =MOBR(A6:C8) =MOBR(A6:C8) =МНОГО(A11:C13;E6:E8)

Функцията MIN връща масив от стойности, който се вмъква в цяла колона от клетки наведнъж.

Таблица 5 представя резултатите от изчислението.

Таблица 5

А б ° С д д
Решение на системата от уравнения.
брадва=b
Първоначална матрица А Дясна страна b
-8
-3
-2 -2
Обратна матрица (1/A) Вектор на решението x=(1/A)/b
-0,149 0,054 -0,230
0,054 0,162 -0,189
-0,122 0,135 -0,824

Списък на използваните литературни източници

1. Турчак Л.И. Основи на числените методи: учеб. помощ за университети / ред. В.В. Шченников.–М.: Наука, 1987.–320с.

2. Бънди Б. Методи за оптимизация. Въвеждащ курс.–М.: Радио и комуникация, 1988.–128с.

3. Евсеев A.M., Николаева L.S. Математическо моделиране на химически равновесия.–М.: Изд-во Моск. ун-та, 1988.–192с.

4. Безденежных А.А. Инженерни методи за съставяне на уравнения на скоростта на реакцията и изчисляване на кинетични константи.–L.: Chemistry, 1973.–256p.

5. Степанова Н.Ф., Ерликина М.Е., Филипов Г.Г. Методи на линейната алгебра във физическата химия.–М.: Изд-во Моск. ун-та, 1976.–359с.

6. Бахвалов Н.С. и др.Числени методи в задачи и упражнения: учеб. ръководство за университети / Бахвалов Н.С., Лапин А.В., Чижонков Е.В. - М.: Висше. училище., 2000.-190с. - (Висша математика / Садовничий В.А.)

7. Приложение на изчислителната математика в химическата и физичната кинетика, изд. Л.С. Полак, М.: Наука, 1969, 279 с.

8. Алгоритмизация на изчисленията в химичната технология Б.А. Жидков, А.Г. Купър

9. Изчислителни методи за инженер-химици. Х. Розенброк, С. История

10. Орвис В.Д. Excel за учени, инженери и студенти. - Киев: Джуниър, 1999.

11. Ю.Ю. Тарасевич Числени методи в Mathcade - Астрахански държавен педагогически университет: Астрахан, 2000 г.

Дадена система налгебрични уравнения с ннеизвестен:

Тази система може да бъде написана в матрична форма:
,

;;.

където А - квадратна матрица на коефициента, х - колонен вектор от неизвестни, б - колонен вектор от свободни термини.

Числените методи за решаване на системи от линейни уравнения се делят на директни и итеративни. Първите използват крайни съотношения за изчисляване на неизвестни. Пример е методът на Гаус. Последните се основават на последователни приближения. Примери за това са методът на простата итерация и методът на Seidel.

  1. Метод на Гаус

Методът се основава на привеждане на матрицата на системата до триъгълна форма. Това се постига чрез последователно елиминиране на неизвестните от уравненията на системата. Първо, използвайки първото уравнение, елиминираме х 1 от всички следващи уравнения. След това, с помощта на второто уравнение, х 2 от следващите и т.н. Този процес се нарича напредване на метода на Гаус и продължава до лявата страна на последния нто уравнение, само един член с неизвестно хн. В резултат на директното движение системата приема формата:

(2)

Обратният ход на метода на Гаус се състои в последователно изчисляване на необходимите неизвестни, като се започне от х ни край х 1 .

  1. Метод на проста итерация и метод на Seidel

Решаването на системи от линейни уравнения с помощта на итеративни методи се свежда до следното. Задава се първоначалното приближение на вектора на неизвестните, което обикновено е нулевият вектор:

.

След това се организира цикличен изчислителен процес, всеки цикъл от който е една итерация. В резултат на всяка итерация се получава нова стойност на вектора на неизвестните. Итеративният процес завършва, ако за всеки азти компонент на вектора на неизвестните, условието

(3)

където к- номер на итерация,  - определена точност.

Недостатъкът на итеративните методи е строгото условие за сходимост. За сходимостта на метода е необходимо и достатъчно в матрицата А абсолютните стойности на всички диагонални елементи са по-големи от сумата на модулите на всички други елементи в съответния ред:

(4)

Ако условието за конвергенция е изпълнено, тогава итеративен процес може да бъде организиран чрез запис на система (1) в намалена форма. В този случай членовете на главния диагонал се нормализират и остават вляво от знака за равенство, докато останалите се прехвърлят в дясната страна. За простия итерационен метод редуцираната система от уравнения има формата:

(5)

Разликата между метода на Seidel и метода на простата итерация е, че при изчисляване на следващото приближение на вектора на неизвестните се използват вече прецизирани стойности на същата стъпка на итерация. Това гарантира по-бърза конвергенция на метода на Seidel. Дадената система от уравнения има вида:

(6)

3.4. Внедряване в Excel

Като пример, разгледайте системата от уравнения:

Тази система удовлетворява условието за сходимост и може да бъде решена както с директни, така и с итеративни методи. Последователността на действията (фиг. 7):

    Направете заглавие в ред 1 „Числени методи за решаване на системи от линейни уравнения“.

    В областта D3:H6 въведете началните данни, както е показано на фигурата.

    Въведете в клетка F8 заглавния текст "Метод на Гаус" (централно подравняване).

    Копирайте оригиналните данни E4:H6 в област B10:E12. Това са изходните данни за директния ход на метода на Гаус. Нека означим съответните редове A1, A2 и A3.

    Подгответе място за първото преминаване, като маркирате в областта G10:G12 имената на линиите B1, B2 и B3.

    Въведете формулата "=B10/$B$10" в клетка H10. Копирайте тази формула в клетки I10:K10. Това е нормализирането към коефициента 11.

    Въведете формулата "=B11-H10*$B$11" в клетка H11. Копирайте тази формула в клетки I11:K11.

    Въведете формулата "=B12-H10*$B$12" в клетка H12. Копирайте тази формула в клетки I12:K12.

    Подгответе място за второто преминаване, като маркирате в областта A14:A16 имената на линиите C1, C2 и C3.

    Въведете формулата "=H10" в клетка B14. Копирайте тази формула в клетки C14:E14.

    Въведете формулата "=H11/$I$11" в клетка B15. Копирайте тази формула в клетки C15:E15.

12. Въведете формулата "=H12-B15*$I$12" в клетка B16. Копирайте тази формула в клетки C16:E16.

13. Подгответе място за третото преминаване, като маркирате в областта G14:G16 имената на линиите D1, D2 и D3.

14. Въведете формулата "=B14" в клетка H14. Копирайте тази формула в клетки I14:K14.

15. Въведете формулата "=B15" в клетка H15. Копирайте тази формула в клетки I15:K15.

16. Въведете формулата "=B16/$D$16" в клетка H16. Копирайте тази формула в клетки I16:K16.

17. Подгответе място за обратното движение на метода на Гаус, като въведете съответните текстове "x3=", "x2=" и "x1=" в клетки B18, E18 и H18.

18. Въведете формулата "=K16" в клетка C18. Вземете стойността на променлива х 3.

19. Въведете формулата "=K15-J15*K16" в клетка F18. Вземете стойността на променлива х 2.

20. Въведете формулата "=K10-I10*F18-J10*C18" в клетка I18. Вземете стойността на променлива х 1.

21. Въведете в клетка F21 заглавния текст "Метод на проста итерация" (централно подравняване).

22. Въведете в клетка J21 текста "e =" (дясно подравняване).

23. Въведете стойността на точност e (0,0001) в клетка K21.

24. Задайте имената на променливите в областта A23:A25.

25. В областта B23:B25 задайте началните стойности на променливите (нули).

26. Въведете формулата "=($H$4-$F$4*B24-$G$4*B25)/$E$4" в клетка C23. Вземете стойността на променлива х 1 на първата итерация.

27. Въведете формулата "=($H$5-$E$5*B23-$G$5*B25)/$F$5" в клетка C24. Вземете стойността на променлива х 2 на първата итерация.

28. Въведете формулата "=($H$6-$E$6*B23-$F$6*B24)/$G$6" в клетка C25. Вземете стойността на променлива х 3 на първата итерация.

29. Въведете в клетка C26 формулата "=IF(ABS(C23-B23)>$K$21;" "; IF(ABS(C24-B24)>$K$21;" ";IF(ABS(C25-B25) > $К$21;" "; ""корени")))".

30. Изберете диапазона C23:C26 и го копирайте нагоре в колона K, като използвате техниката на плъзгане. Когато съобщението „roots“ се появи в ред 26, съответната колона ще съдържа приблизителни стойности на променливите х 1,х 2, х 3, които са решение на система от уравнения със зададена точност.

31. В областта A27:K42 изградете диаграма, показваща процеса на приближаване на стойностите на променливите х 1,х 2,х 3 към решението на системата. Диаграмата се изгражда в режим "Графика", където номерът на итерацията се нанася по абсцисата.

32. Въведете в клетка F43 заглавния текст "Метод на Seidel" (централно подравняване).

33. Въведете в клетка J43 текста "e =" (дясно подравняване).

34. Въведете в клетка K43 стойността на точност e (0,0001).

35. Обозначете в областта A45: A47 имената на променливите.

36. В областта B45:B47 задайте началните стойности на променливите (нули).

37. Въведете формулата "=($H$4-$F$4*B46-$G$4*B47)/$E$4" в клетка C45. Вземете стойността на променлива х 1 на първата итерация.

38. Въведете формулата "=($H$5-$E$5*C45-$G$5*B47)/$F$5" в клетка C46. Вземете стойността на променлива х 2 на първата итерация.

39. Въведете формулата "=($H$6-$E$6*C45-$F$6*C46)/$G$6" в клетка C47. Вземете стойността на променлива х 3 при първата итерация.

40. Въведете в клетка C48 формулата "=IF(AB5(C45-B45)>$K$43;" "; IF(ABS(C46-B46)>$K$43;" ";IF(ABS(C47-B47) > $K$43;" ";"корени")))".

41. Изберете диапазона C45:C48 и го копирайте нагоре в колона K, като използвате техниката на плъзгане. Когато съобщението „roots“ се появи в ред 26, съответната колона ще съдържа приблизителни стойности на променливите х 1,х 2,х 3, които са решение на системата от уравнения със зададена точност. Може да се види, че методът на Seidel се сближава по-бързо от метода на простата итерация, тоест определената точност се постига тук с по-малко итерации.

42. В областта A49:K62 изградете диаграма, показваща процеса на приближаване на стойностите на променливите x1, x2, x3 до решението на системата. Диаграмата се изгражда в режим "Графика", където номерът на итерацията се нанася по абсцисата.

Excel разполага с широк набор от инструменти за решаване на различни типове уравнения с помощта на различни методи.

Нека да разгледаме някои примери за решения.

Решаване на уравнения по метода на избор на параметри на Excel

Инструментът за търсене на параметри се използва в ситуация, в която резултатът е известен, но аргументите са неизвестни. Excel избира стойности, докато изчислението не даде желаната обща сума.

Път до командата: "Данни" - "Работа с данни" - "Анализ какво ако" - "Избор на параметри".

Помислете например за решението на квадратното уравнение x 2 + 3x + 2 = 0. Редът за намиране на корена с помощта на Excel:


Програмата използва цикличен процес за избор на параметър. За да промените броя на повторенията и грешката, трябва да отидете в опциите на Excel. В раздела "Формули" задайте максималния брой повторения, относителната грешка. Поставете отметка в квадратчето „разрешаване на итеративни изчисления“.



Как да решим система от уравнения по матричен метод в Excel

Дадена е системата от уравнения:


Получават се корени на уравнението.

Решаване на система от уравнения по метода на Крамер в Excel

Нека вземем системата от уравнения от предишния пример:

За да ги решим по метода на Крамер, ние изчисляваме детерминантите на матриците, получени чрез замяна на една колона в матрица A с колона-матрица B.

За изчисляване на детерминантите използваме функцията MOPRED. Аргументът е диапазон със съответната матрица.

Изчисляваме и детерминантата на матрица A (масив - диапазон на матрица A).

Детерминантата на системата е по-голяма от 0 - решението може да се намери с помощта на формулата на Крамер (D x / |A|).

За изчисляване на X 1: \u003d U2 / $ U $ 1, където U2 - D1. За да изчислите X 2: =U3/$U$1. и т.н. Получаваме корените на уравненията:

Решаване на системи уравнения по метода на Гаус в Excel

Например, нека вземем най-простата система от уравнения:

3a + 2c - 5c = -1
2a - c - 3c = 13
a + 2b - c \u003d 9

Записваме коефициентите в матрица A. Свободните членове - в матрица B.

За по-голяма яснота подчертаваме безплатните членове чрез попълване. Ако първата клетка на матрицата A е 0, трябва да размените редовете, така че да има стойност, различна от 0.

Примери за решаване на уравнения чрез итерация в Excel

Изчисленията в работната книга трябва да бъдат настроени, както следва:


Това става в раздела "Формули" в "Опции на Excel". Нека намерим корена на уравнението x - x 3 + 1 = 0 (a = 1, b = 2) чрез итерация, използвайки циклични препратки. Формула:

X n+1 \u003d X n - F (X n) / M, n \u003d 0, 1, 2, ....

M е максималната стойност на производната по модул. За да намерим M, нека направим изчисленията:

f' (1) = -2 * f' (2) = -11.

Получената стойност е по-малка от 0. Следователно функцията ще бъде с обратен знак: f (x) \u003d -x + x 3 - 1. M \u003d 11.

В клетка A3 въведете стойността: a = 1. Точност - три знака след десетичната запетая. За да изчислите текущата стойност на x в съседната клетка (B3), въведете формулата: =IF(B3=0;A3;B3-(-B3+POWER(B3;3)-1/11)).

В клетка C3 контролираме стойността на f (x): използвайки формулата =B3-POWER(B3;3)+1.

Коренът на уравнението е 1,179. В клетка A3 въведете стойност 2. Получаваме същия резултат:

В даден интервал има само един корен.