Как решить систему линейных уравнений в mathcad
• lsolve(M, v) — возвращает решение x для линейной системы уравнений M·x = v с использованием LU -разложения.
• M — матрица из действительных или комплексных значений. Если матрица квадратная, она должна быть несингулярной.
• v — действительный или комплексный вектор или матрица, имеющая такое же число строк, как и M .
Дополнительные сведения
• Матрица называется сингулярной, если ее определитель равен 0. Она близка к сингулярной, если имеет большое число обусловленности. Эти условия затрудняют вычисление обратной матрицы, используемой для решения задачи. В этих случаях функция lsolve может завершить вычисления с ошибкой или вернуть неправдоподобные результаты. Для матриц, близких к сингулярным, могут потребоваться другие разложения.
• В функции lsolve используется алгоритм, описанный в книге Press, W. H., et. al., Numerical Recipes in C: The Art of Scientific Computing (Численные методы на языке C: искусство научных расчетов), second ed., Cambridge University Press, Cambridge, 1992 . Для LU -разложения используются библиотеки BLAS/LAPACK от Intel.
• Чтобы узнать, имеет ли система уникальное решение, нужно проверить, выполняется ли условие: rank(M) = cols(M) , т. е. являются ли все столбцы матрицы M линейно независимыми.
• Для решения такого типа системы можно воспользоваться непосредственно обращением матрицы, но функция lsolve работает быстрее и в некоторых случаях дает более высокую точность. Чтобы решить линейную систему уравнений в естественной записи, может потребоваться использование блока решения.
• В случае несовместимой системы уравнений функция lsolve возвращает решение системы уравнений методом наименьших квадратов, получаемое также из geninv(M)·v .
Урок 22. Линейные уравнения в Mathcad
В этом уроке мы рассмотрим применение векторов и матриц, а именно решение систем линейных уравнений. Пример Есть система трех линейных уравнений с тремя неизвестными: Традиционный метод решения таких систем – последовательное исключение переменных. Например, мы можем сложить (1) и (3), затем (2) и (3): Из уравнения (5): Затем, используя (4): Наконец, из (1): Итак, получили: Линейные уравнения можно решить с помощью векторов и матриц. Запишем левую часть уравнений (1), (2) и (3) как произведение матрицы коэффициентовA на вектор решенийX: Убедитесь, что элементы матрицы A совпадают с коэффициентами системы уравнений. Правую часть запишем как вектор решений: Краткая запись системы уравнений: Тогда решение можно найти: Такую запись можно применять к сколь угодно большим системам, будь там три, сорок или десять тысяч уравнений. Запомните, что решение есть произведение обратной матрицы коэффициентов и вектора результатов, при этом важна их последовательность. Такой метод решения не самый эффективный, но он хорош для решения многих задач. Расчет цепи постоянного тока Цепь состоит из резисторов и источников ЭДС. Необходимо определить токи во всех ветвях цепи: Примем значения сопротивлений и ЭДС: Запишем уравнения для контуров I, II и III, исходя из второго правила Кирхгофа: Для узлов a, b и c запишем уравнения по первому правилу Кирхгофа: Запишем матрицу A, содержащую коэффициенты при токах, а в вектор b – правые части уравнений: Решение системы уравнений: Решение X можно найти по-другому – с помощью функции lsolve(A,B): Линейные уравнения С линейными уравнениями обычно не возникает проблем, но есть несколько вещей, о которых следует знать. Продемонстрируем их на системе двух уравнений: Можно записать как: Решение – точка (0,1), и здесь проблем не возникло: Это обычный случай. Интересно вычислить определитель матрицы коэффициентов: Он не равен нулю. Теперь поменяем второе уравнение системы и попробуем найти решение: Система имеет бесконечное множество решений: Определитель матрицы коэффициентов: Он равен нулю. При попытке решить систему Mathcad скажет, что матрица является сингулярной. Здесь два уравнения идентичны, но результат будет тот же, если одно из уравнений кратно другому. Такие уравнения называются линейно зависимыми. В третьем варианте изменим константу во втором уравнении: Здесь нет решений: две прямые параллельны: Как Вы догадывались, определитель снова равен нулю: Поведение большего числа уравнений аналогично. Таким образом, если определитель равен нулю, возникает проблема, которую часто сложно распознать. При записи большой системы уравнений легко ошибиться и, например, дважды записать одно уравнение. Если в коэффициентах присутствует погрешность округления, Mathcad может принять эти два уравнения за разные. Ответ будет получен, но результат будет неверным. Резюме
- Система линейных уравнений обычно имеет своим решением столько переменных, сколько самих уравнений.
- Небольшие системы линейных уравнений могут быть решены последовательным исключением переменных.
- Для больших систем уравнений нужна краткая запись. Мы использовали векторы и матрицы. Левая часть уравнений является произведением матрицы коэффициентов A на вектор решений x, правая часть – это вектор решений b. Решение: .
- С помощью матриц и векторов мы решили задачу цепи постоянного тока.
- Решение не будет найдено, если матрица коэффициентов сингулярна.
Как решить систему линейных уравнений в mathcad
Упражнение 3.Решить систему линейных уравнений методом Гаусса.
Упражнение 4.Решить систему нелинейных уравнений используя функцию Given Find.
Начальные приближения принять за ноль.
№ варианта | Система уравнений |
Упражнение 5.Решить систему линейных уравнений используя функцию Given Find.
Решение систем линейных уравнений в приложениях Mathcad и Excel
Рассмотрим решение систем линейных уравнений в приложении Mathcadматричным методом. Сначала записываются коэффициенты системы в матрицу A. Далее задается вектор B и записывается формула для определения корней
X := A – 1 × B.
Корни вычисляются после набора выражения: X =
В приложении Excelтакже можно использовать матричный метод. Пусть имеется система линейных уравнений третьего порядка. Первоначально необходимо ввести элементы матрицы А, например, в ячейки А1:С3. Затем − вектор В, например, в ячейки Е1:Е3.
Далее следует выделить диапазон ячеек для вычисления корней, например G1:G3, и в строке формул набрать:
=МУМНОЖ(МОБР(A1:C3);E1:E3)
После ее набора нажать не одну клавишу ввода, а вместе три клавиши: + + . В ячейках G1:G3 появятся вычисленные корни системы линейных уравнений.
Решение систем нелинейных уравнений в приложении Mathcad
Системы нелинейных уравнений могут иметь разнообразный вид. Рассмотрим способ решения системы нелинейных уравнений на примере. Пусть имеется система:
В приложении Mathcad надо записать начальные приближения корней и систему уравнений в блоке given:
x1 := 1 x2 := 1
Given
5x1 × x2 + 0.2x2 = – 6
– 6x1 + 4x1×x2 = 0.8
При записи системы используется не знак равенства, а знак логического равенства =, который имеется на панели Булево.Затем вводится встроенная функция: r := find(x1, x2).
Чтобы получить значения корней, надо записать:r =
МАТЕМАТИЧЕСКИЕ МОДЕЛИ И ОПТИМИЗАЦИЯ ПРОЦЕССОВ
Модель одномерного объекта
Пусть в результате проведения эксперимента получена табличная зависимость значений выходного параметра процесса y от значений входного параметра x(рис. 21.1).
Объект |
xy
Рис. 10.1. Одномерный объект
Требуется получить эмпирическую формулу, описывающую зависимость yотx. Решение такой задачи состоит из двух этапов.
На первом этапе выбирается общий вид формулы, исходя из теоретических представлений о характере изучаемого процесса. Это может быть, например, полином m-степени:
y = a0 + a1 × x + a2 × x 2 +…+ am × x m .
Формула может содержать тригонометрические, экспоненциальные, логарифмические функции и т. п.
На втором этапе определяются значения параметров a0, a1, …, am эмпирической формулы f(x, a0, a1, a2, …, am), которые обеспечивали бы соответствие этой формулы экспериментальным данным.
В соответствии с методом наименьших квадратов параметры a0, a1, …, am выбираются так, чтобы была минимальной сумма квадратов:
Чтобы найти нужные параметры, следует взять частные производные от правой части по a0, a1, …, am и приравнять их к нулю. Полученную систему уравнений можно решить одним из известных методов.
Пример. Пусть требуется определить параметры a0, a1, a2 полинома второй степени:
y = a0 + a1×x + a2×x 2 .
Надо взять частные производные от выражения
и приравнять их к нулю:
Решив эту систему линейных урвнений можно определить искомые величины a0, a1, a2.
Рассмотрим алгоритм метода наименьших квадратов для вычисления коэффициентов полинома второй степени:
1. Ввод количества опытов n, значений x1, x2, …, xn, y1, y2, …, yn.
2. Определение коэффициентов системы линейных уравнений:
a1,2 = a1,3 = a2,3 = a3,3 =
b1 = , b2 = b3 =
3. Решение системы A × Z = B, где A – матрица коэффициентов, B – вектор свободных членов системы, Z – вектор, в котором определяются корни z1 = a0, z2 = a1, z3 = a2.
4. Вывод искомых коэффициентов a0, a1, a2.
5. Определение и вывод разностей d1, d2, …, dn.
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций.
Папиллярные узоры пальцев рук — маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни.
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим.
24. Решение систем линейных уравнений в MathCad
Здесь kij и li — какие-то числовые константы, называемые, соответственно, коэффициентами и свободными членами уравнений, а xj — переменные. Такие уравнения обычно записывают также с помощью матриц: KX + L = 0
Здесь K — матрица (kij), составленная из коэффициентов при переменных величинах, где i — номер строки матрицы, а j — номер столбца. X и L — это, соответственно, векторы, составленные из переменных и свободных членов. Собственно, при решении СЛУ с помощью MathCAD мы будем записывать СЛУ именно в таком виде, потому что решение СЛУ в MathCAD реализовано именно с помощью матричных методов.
Для решения СЛУ можно использовать функцию lsolve. У нее есть два параметра: первый — это матрица коэффициентов уравнений, а второй — вектор свободных членов. То есть для получения результата нам нужно написать: lsolve(K_, L_) =
Ну, а после знака равенства MathCAD нам уже нарисует результат.
25. Блочный метод решения уравнений и систем в MathCad
Для решения системы этим методом необходимо выполнить следующее:
a) задать начальное приближение для всех неизвестных, входящих в систему уравнений;
б) задать ключевое слово Given, которое указывает, что далее следует система уравнений;
в) ввести уравнения и неравенства в любом порядке (использовать кнопку логического равенства на панели знаков логических операций для набора знака «=» в уравнении);
г) ввести любое выражение,которое включает функцию Find.
Решающим блоком называется часть документа, расположенная междуключевыми словами Given и Find.
После набора решающего блока Mathcad возвращает точное решение уравненияили системы уравнений.
Обратиться к функции Find можно несколькими способами:
Find(x1, x2,…) = — корень или корни уравнения вычисляются и выводятся в окно документа.
x := Find(x1, x2,…) – формируется переменная или вектор, содержащий вычисленные значения корней.
Линейная интерполяция данных в MathCad.
Линейная интерполяция осуществляется с помощью встроенной функции linterp, имеющей следующий общий вид:
linterp(VX,VY,x),
VX, VY – векторы координат узловых точек;
x – значение аргумента, для которого будет получено интерполяционное значение функции y.
27. Сплайновая интерполяция данных в MathCad
В MathCAD для проведения кубической сплайн-интерполяции предлагается три встроенные функции (VX, VY – вектора узловых точек):
cspline(VX, VY) – возвращает вектор вторых производных (VK) при приближении в опорных точках к кубическому полиному;
pspline(VX, VY) – возвращает вектор вторых производных (VK) при приближении в опорных точках к параболической кривой;
lspline(VX, VY) – возвращает вектор вторых производных (VK) при приближении в опорных точках к прямой.
Интерполирующая функция строится с помощью стандартной функции interp, имеющей следующий общий вид:
interp(VK,VX, VY,x),
VK – вектор вторых производных сплайна в опорных точках;
x – произвольная точка, в которой вычисляется значение интерполирующей функции.
Последовательность кубической сплайн-интерполяции такова:
— создаются вектора VX и VY, содержащие координаты точек, через которые нужно провести кубический сплайн;
— вычисляется вектор VK с использованием одной из перечисленных функций;
— вычисляется множество произвольных значений интерполирующей функции в нужном количестве точек с помощью стандартной функции interp.
Нахождение решений системы линейных уравнений в MathCad. Цель работы:нахождение решений системы линейных уравнений в программе MathCad
Цель работы:нахождение решений системы линейных уравнений в программе MathCad .
Указания к выполнению лабораторной работы:
I Найти решение системы линейных уравнений с использованием функции soln.
1 Запустить программу MathCad.
2 Создать матрицу А из коэффициентов при неизвестных.
3 Создать вектор b из свободных членов.
4 Обратиться к встроенной программе решения линейных уравнений soln и записать soln1:=А -1 ×b.
5 Получить решение линейного уравнения у векторному виде
IIНайти решение системы линейных уравнений с использованием так званого «блоку решений».
1 Задать начальные значения переменным, которые есть в уравнении.
2 Ввести ключевое слово given (дано), с которого начинается блок решений.
3 Записать уравнение, используя знак логического равенства между правой и левой частью уравнения из панели управления Evaluation (Выражения).
4 Ввести ключевое слово find (найти), которым заканчивается блок решений.
IIIНайти решение вышеприведенной системы уравнений с использованием функции lsolve.
1Создать матрицу А из коэффициентов при неизвестных.
2 Создать вектор b из свободных членов.
4 Обратиться к встроенной программе решения линейных уравнений lsolve и записать lsolve(А,b).
5 Получить результат решения линейного уравнения в векторном виде
IVНайти приближенное решение с использованием функции minerr(x1,…).
1 Задать приближение последовательно для значений переменной х1, х2,… хn.
2 Ввести ключевое слово given (дано), с которого начинается блок решений.
3 Записать систему уравнений, используя знак логического равенства между правой и левой частями каждого уравнения.
4 Обратиться к функции minerr( x1,x2. ). Значения неизвестных будут найдены.
Таблица 3.1 – Варианты заданий к лабораторной работе № 3
№ варианта | Коэффициенты при неизвестных | Свободные члени | ||
a11 а21 а31 а41 | а12 а22 а23 а24 | а13 а23 а33 а34 | а14 а24 а34 а44 | в1 в2 в3 в4 |
0,12 | -0,43 | 0,14 | 0,64 | -0,17 |
-0,07 | 0,34 | -0,72 | 0,32 | 0,62 |
1,18 | -0,08 | -0,25 | 0,43 | 1,12 |
1,17 | 0,53 | -0,84 | -0,53 | 1,15 |
0,12 | -0,43 | 0,14 | 0,64 | -0,17 |
-0,07 | 0,34 | -0,72 | 0,32 | 0,62 |
1,18 | -0,08 | -0,25 | 0,43 | 1,12 |
1,17 | 0,53 | -0,84 | -0,53 | 1,15 |
3,7 | 5,6 | 9,5 | ||
3,36 | 31,1 | 1,5 | ||
7,93 | 4,2 | 6,3 | 4,4 | |
42,7 | 3,7 | 6,2 | ||
1,3 | 1,6 | 2,2 | ||
4,4 | 6,7 | 2,5 | ||
2,8 | 0,73 | 67,8 | ||
3,4 | ||||
5,3 | 1,6 | 5,5 | 3,3 | |
4,1 | 6,4 | 3,9 | ||
2,1 | 3,3 | 2,04 | 4,9 | |
3,1 | ||||
0,2 | ||||
8,3 | 5,3 | |||
2,6 | 6,1 | 4,1 | ||
0,93 | 3,8 | |||
34,7 | ||||
3,6 | ||||
3,4 | 4,2 | |||
44,7 | ||||
5,1 | 0,2 | |||
3,4 | 5,34 | |||
2,7 | 6,7 | |||
3,3 | ||||
2,5 | 1,3 | |||
5,2 | 0,78 | |||
6,11 | 4,2 | |||
6,78 | 3,76 | |||
2,3 | ||||
3,4 | 2,5 | |||
0,2 | ||||
1,25 | ||||
3,3 | 8,2 | |||
1,2 | ||||
1,3 | ||||
5,9 | ||||
6,6 | ||||
3,3 | 2,1 | |||
4,8 | ||||
0,4 | ||||
0,2 | ||||
1,3 | 1,5 | 2,22 | 3,2 | |
3,4 | 5,55 | 1,3 | ||
3,3 | 2,2 | 6,77 | ||
4,9 | 3,6 | 6,88 | ||
0,4 | ||||
0,3 | ||||
3,3 | 7,6 | 5,5 | ||
5,4 | ||||
9,2 | ||||
3,2 | ||||
0,44 | ||||
0,67 | ||||
3,35 | 5,3 | |||
4,22 | 6,7 | 3,5 | ||
2,8 | 3,8 | 2,9 | ||
2,34 | 3,44 | |||
5,23 | ||||
13,4 | 6,33 | 5,1 | 2,11 | 3,33 |
4,66 | 6,1 | 3,33 | 5,44 | 0,11 |
2,22 | 2,55 | 6,33 | 4,44 | |
2,98 | 3,78 | 6,11 | 3,33 |
Пример
I Найти решение системы уравнений с использованием функции soln
1 Создать матрицу А
3 Создать вектор b
3 Найти решение системы, используя функцию soln
4 Результат решения
II Найти решение вышеприведенной системы уравнений с использованием так званого «блоку решений»
1 Задать начальные значения переменным, которые присутствуют в уравнении
2 Ввести ключевое слово given (дано), с которого начинается блок решений.
3 Записать уравнение, используя знак логического равенства между правой и левой частями уравнения из панели управления Evaluation (Выражения).
4 Ввести ключевое слово find (найти), которым заканчивается блок решений.
5 Результат решения
IIIНайти решение вышеприведенной системы уравнений с использованием функции lsolve.
1 Создать матрицу А
2 Создать вектор b
3 Найти решение системы, используя функцию lsolve:
IVНайти решение вышеприведенной системы уравнений с использованием функции minerr (x,у,z).
1 Задать начальные условия для неизвестных, например, x=1,у=1,z=1.
2 Ввести ключевое слово given (дано), с которого начинается блок решений.
3 Записать уравнения, используя знак логического равенства между правой и левой частью уравнения из панели.
4 Обратиться к функции minerr (x,у,z). Решение системы уравнений будет найдено.
5. Охорзин В.А. Оптимизация экономических систем. Примеры и алгоритмы в среде Mathcad: Учеб. пособие. М.: Финансы и статистика, 2005. – 144 с.
6. Охорзин В.А. Прикладная математика в системе Mathcad: Учеб. пособие. Спб.: Издательство «Лань», 2008. – 352 с.
7. Плис А. И., Сливина Н. А. МАТНСАD: математический практикум для экономистов и инженеров: Учеб. пособие. — М.: Финансы и статистика, 1999. — 656 с.
8. Черняк А.А., Новиков В.А., Мельников О.И., Кузнецов А.В. Математика для экономистов на базе Mathcad. – СПб.: БХВ-Петербург, 2003. – 496 с.
Похожие публикации:
- Как оплатить через wechat
- Как открыть archicad в autocad
- Как открыть файл max в archicad
- Как перевести mathcad 15 на русский
Решение систем линейных уравнений
Введите коэффициенты при неизвестных в поля. Если Ваше уравнение имеет меньшее количество неизвестных, то оставьте пустыми поля при переменных, не входящих в ваше уравнение. Можно использовать дроби ( 13/31 ).
Выводить десятичную дробь ,
Эта страничка поможет решить Системы Линейных Алгебраических Уравнений (СЛАУ) методом Гаусса, матричным методом или методом Крамера, исследовать их на совместность (теорема Кронекера-Капелли), определить количество решений, найти общее, частное и базисные решения.
- Оставляйте лишние ячейки пустыми для ввода неквадратных матриц.
- Элементы матриц — десятичные (конечные и периодические) дроби: 1/3 , 3.14 , -1.3(56) , or 1.2e-4 ; либо арифметические выражения: 2/3+3*(10-4) , (1+x)/y^2 , 2^0.5 (= 2 ) , 2^(1/3) , 2^n , sin(phi) , cos(3.142rad) , a_1 , or (root of x^5-x-1 near 1.2) .
десятичные (конечные и периодические) дроби:
математические выражения:
специальные символы:
- pi , e , i — математические константы
- k , n — целые
- I или E — единичная матрица
- X , Y — матричные символы
- Philip Petrov (https://cphpvb.net) for Bulgarian translation
- Manuel Rial Costa for Galego translation
- Shio Kun for Chinese translation
- Petar Sokoloski for Macedonian translation
- Duy Thúc Trần for Vietnamese translation
- Rıfkı Kürşat Vuruşan for Turkish translation
- Ousama Malouf and Yaseen Ibrahim for Arabic translation
- Marcel Artz — improving of the German translation
- Marc Gisbert Juàrez — fixing the translation into Catalan