Некоторые варианты решения системы уравнений

2010-02-13

Решение online

На странице “Решение системы линейных уравнений“ вы можете решить систему до 10 уравнений online.

Решение системы линейных алгебраических уравнений в OpenOffice.org

Из линейной алгебры нам известно, что для системы линейных уравнений A*x=b решением1 есть x=A-1*b, если детерминант матрицы A не равен нулю. Здесь A-1 – обратная матрица коэффициентов СЛАУ.

Решим систему из двух уравнений.

В ячейках (A1:B2) вводим данные.
Детерминант матрицы: MDETERM(A1:B2)

Затем получаем обратную мартицу A-1:
={MINVERSE(A1:B2)}

Умножаем полученную обратную матрицу на столбик з правою частью систем уравнений:
={MMULT(A4:B5;C1:C2)}

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

Пример решения системы линейных уравнений в Scilab

Scilab — мощный открытый пакет прикладных математических программ (система компьютерной математики) для инженерных и научных расчётов.

Система позволяет

  • решать задачи линейной алгебры;
  • решать нелинейные уравнения и системы;
  • решать задачи оптимизации;
  • дифференцировать и интегрировать;
  • решать обыкновенные дифференциальные уравнения и системы.
  • обрабатывать экспериментальные данные (интерполяция и аппроксимация, метод наименьших квадратов);
  • создавать различные виды графиков и поверхностей.

Более подробно с пакетом можно ознакомится на домашней странице Scilab или в википедии

Пример

Решим систему из двух уравнений вида A*x=b

Задаем матрицу коэффициентов: -->A=[1,2;3,4] A = 1. 2. 3. 4. Задаем вектор свободных коэффициентов: -->b=[2;1] b = 2. 1.

Определяем детерминант матрицы: -->det(A) ans = - 2 Так как определитель матрицы отличен от нуля, решение СЛАУ существует.

Решение СЛАУ методом обратной матрицы -->x=A\b x = - 3. 2.5 Запись A\b соответствует математической операции A-1b. Записи x=A\b эквивалентна запись x=inv(A)*b

Эту систему уравнений также можно решить с помощью специальной функции linsolve (эта функция решает уравнение вида Ax+b=0, поэтому поменяем знак вектора b) x=linsolve(A,-b) x = - 3. 2.5 и получили ответ: x0= -3; x1= 2.5;

Проверяем A*x-b ans = 1.0D-14 * 0.2220446 0.3552714 результирующий вектор близок к нулю, то есть система решена верно.
Существуют и другие способы решения системы линейных уравнений в среде Scilab.

Пример решения системы линейных уравнений в среде программирования R

R — язык программирования для статистической обработки данных и работы с графикой, а также свободная программная среда вычислений с открытым исходным кодом.

Пример

Решаем систему Ax=b (из двух уравнений)

A <- array(c(1,3,2,4), dim=c(2,2)) > A [,1] [,2] [1,] 1 2 [2,] 3 4 > b<-c(2,1) > b [1] 2 1 > x<-solve(A,b) > x [1] -3.0 2.5 и получили ответ: x1= -3; x2= 2.5;

Проверка: > A %*% x [,1] [1,] 2 [2,] 1

Определитель матрицы: > det(A) [1] -2

Решение системы линейных уравнений Ax=b в Euler Math Toolbox

Домашняя страница Euler Math Toolbox. В пакет интегрирована система компьютерной алгебры Maxima. Система напоминает Matlab, но имеет собственный стиль, и немного иной синтаксис.
Домашняя страница автора René Grothmann

Пример

This is Euler Math Toolbox, Version 5.8. >A:=[1,2;3,4] 1 2 3 4 >b:=[2;1] 2 1 >x:=A\b -3 2.5 Получили ответ: x0= -3; x1= 2.5;

Определитель матрицы: >det(A) -2

Проверка: умножим A на x (операция умножения обозначается точкой ".") >A.x 2 1

Решить указанную систему можно также с помощью следующего выражения (inv(A) - обратная матрица) >x:=inv(A).b -3 2.5

1 Этот способ решения называется — решение СЛАУ методом обратной матрицы



метки: , , ,

Последнее обновление: 09/03/2010; #40

категория: ,