Средства MathCad для решения систем линейных уравнений



В пакете MathCad системы линейных уравнений (СЛУ) решаются аналогично системам нелинейных уравнений, то есть с использованием вычислительного блока Given и функции Find или Minerr.

        

Однако в том случае, когда система линейных уравнений невырожденная, то есть ее определитель отличен от нуля, более изящным (хотя и не самым эффективным с точки зрения вычислительной математики) является матричный способ решения. Для этого в начале задается матрица коэффициентов системы и вектор свободных членов, а решение находится путем умножения столбца свободных членов b на матрицу, обратную a.

                               

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

         

Средства MathCad для приближенного описания функций

На практике часто возникает задача замены последовательности данных, полученных в ходе эксперимента, приближенной функцией, которую можно использовать в дальнейших расчетах. Такая функция называется аппроксимирующей. Для этой цели в MathCad имеются встроенные функции двух видов: позволяющие увидеть аналитическую зависимость, то есть возвращающие набор аппроксимирующих коэффициентов и не позволяющие увидеть аналитическую зависимость, а позволяющие получить только значения функции в промежуточных точках.

Если аппроксимирующая кривая должна проходить через все экспериментальные точки, то операция получения промежуточных точек и расчетной функции называется интерполяцией. В MathCad имеется несколько функций интерполяции, различающихся способом «соединения» точек (прямой линией или различными кривыми).

Пусть значения функции, полученные в ходе эксперимента, представлены в виде:

X 1.2 1.4 1.6 1.8 2.0
y(x) -0.085 -0.462 0.128 3.546 2.654

Выполним линейную интерполяцию данных (экспериментальные точки соединяются отрезками прямой) с использованием функции linterp(x, y, t), где x – вектор значений аргументов, y – вектор значений функции и t – текущее значение аргумента, при котором вычисляется значение функции.

                           

Теперь, используя те же экспериментальные данные, применим кубическую сплайн-интерполяцию, при которой экспериментальные точки соединяются отрезками кубических полиномов. Для этого одновременно используются две функции: interp(s,x,y,t) и cspline(x,y), где x – вектор значений аргументов, y – вектор значений функции, s – вектор вторых производных, создаваемый функцией cspline, t – аргумент интерполирующей функции.

Следующий пример иллюстрирует интерполяцию таблично заданной функции по методу Лагранжа.

              

Если аппроксимирующая кривая, заменяющая исходную функцию, не обязательно должна проходить через все экспериментальные точки, а служит усреднением исходных данных, то операция получения промежуточных точек и расчетной функции называется регрессией. В приведенном ниже примере рассмотрено использование функции linfit(x,y,f), где x, y - соответственно вектора значений аргументов и функции, а f – символьный вектор коэффициентов аппроксимации методом наименьших квадратов. Использование этой функции позволяет определить невязку (среднеквадратическую погрешность) приближения исходных точек к аппроксимирующей функции ( ). Степень аппроксимирующего многочлена задается при описании символьного вектора f. Вектор s – является вектором коэффициентов аппроксимирующей функции, что позволяет получить приближенное выражение таблично заданной функции. В примере представлена аппроксимация таблично заданной функции многочленом 1-й и 2-й степени.  

             Линейная аппроксимация                Квадратичная аппроксимация                Графики функций   Оценка погрешности - среднеквадратическое отклонение      

 

 


Дата добавления: 2018-05-12; просмотров: 464; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!