|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Решение систем линейных алгебраических уравненийПример компактных групповых вычислений системы MATLAB – решение систем линейных уравнений. Решить квадратную систему линейных алгебраических уравнений Решение: В матричном виде система имеет вид Ах =b, где A =, b =, х = – матрица из коэффициентов при незвестных и вектор-столбцы, составленные соответственно из свободных членов и из неизвестных. Если │ A │ = det(A) ≠0, то применяя оператор обратного деления матриц < \ >, получим: >> А=[1 3 0;-2 -2 5;1 0 -5] А = 1 3 0 -2 -2 5 1 0 -5 >> b=[-2;10;-9] b = -2 -9 >> d=det(a) d = -5 >> x=А\b x = -1 Отметим, что за операторами ввода A, b, c не следует символ <; >. Благодаря этому легко осуществить контроль правильности ввода A, b, c. Решение x1=1, x2=-1, x3=2 легко проверить его подстановкой в систему уравнений: >> disp(A*x) -2.0000 10.0000 -9.0000 В результате получен вектор-столбец свободных членов. Система решена верно. Найдем обратную матрицу, а затем решение системы с помощью обратной матрицы: >> A1=inv(A) A1 = -2.0000 -3.0000 -3.0000 1.0000 1.0000 1.0000 -0.4000 -0.6000 -0.8000 >> A1*b ans = 1.0000 -1.0000 2.0000 Отметим, что такой способ требует больше времени и памяти, к тому же он может дать большую погрешность решения. Поэтому для решения систем следует применять знак < \ >. Решить квадратную систему линейных алгебраических уравнений Решение: >> a=[1 3 0;-2 -2 5;1 0 5] a = 1 3 0 -2 -2 5 1 0 5 >> b=[-2 10 -9] b = -2 10 -9 >> disp(det(a)) >> disp(inv(a)) -0.2857 -0.4286 0.4286 0.4286 0.1429 -0.1429 0.0571 0.0857 0.1143 >> x=a\b' x = -7.5714 1.8571 -0.2857 Заметим, что в последнем операторе произведено обратное деление на вектор-столбец b', поскольку вектор из свободных членов b введен как вектор-строка. Получили приближенное решение системы. Точное решение системы и точная обратная матрица имеют вид: >> format rat >> x=a\b' x = -53/7 13/7 -2/7 >> disp(inv(a)) -2/7 -3/7 3/7 3/7 1/7 -1/7 2/35 3/35 4/35
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |