- •Численные методы
- •Содержание
- •Введение
- •1. Вычисление определенных интегралов Справочная информация
- •Формула средних прямоугольников
- •Формула трапеций
- •Формула Симпсона (j.Gregory(Грегори)1668,Th.Simpson1743)
- •Пример решения в среде Matlab
- •Контрольные задания
- •2. Решение нелинейных уравнений Справочная информация
- •Метод простых итераций Метод основывается на приведении исходного уравнения к форме
- •Относительная разница между значениями приближения корня на третьей и четвёртой итерациях составляет
- •Метод хорд
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •3. Решение систем линейных алгебраических уравнений Справочная информация
- •Метод Гаусса с выбором главного элемента
- •Метод простых итераций
- •О выборе метода решения систем уравнений
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •4. Интерполяция таблично заданных функций Справочная информация
- •Кусочно-линейная интерполяция
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •5. Аппроксимация таблично заданных функций Справочная информация
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •6. Решение задачи коши для обыкновенных дифференциальных уравнений 1-го порядка Справочная информация
- •Усовершенствованный метод Эйлера
- •Оценка погрешностей методов
- •Программное обеспечение
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •7. Решение задачи коши для нормальных систем обыкновенных дифференциальных уравнений и уравнений высших порядков Справочная информация
- •Метод Эйлера
- •Усовершенствованный метод Эйлера
- •Оценка погрешностей методов
- •Пример решения на пэвм в среде Matlab
- •Контрольные задания
- •Приложение. Основы работы в среде matlab Интерфейс среды
- •Переменные и константы
- •Арифметические операторы
- •Операторы отношения
- •Логические операторы
- •Элементарные функции
- •Простейшие способы ввода–вывода информации
- •Векторы и матрицы
- •Оператор двоеточие «:»
- •Оператор разветвления if
- •Операторы циклов
- •Вывод информации в файл
- •Форматный вывод информации
- •Ввод данных из файла
- •Построение графиков
- •Сообщения об ошибках и исправление ошибок
- •Список литературы
Пример решения на пэвм в среде Matlab
x |
y |
0.00 |
1.40 |
0.16 |
2.07 |
0.31 |
2.81 |
0.47 |
3.03 |
0.63 |
3.62 |
0.79 |
3.54 |
0.94 |
3.58 |
1.10 |
3.39 |
1.26 |
2.91 |
1.41 |
2.02 |
1.57 |
1.44 |
1.73 |
0.57 |
1.89 |
0.19 |
2.04 |
–0.36 |
2.20 |
–0.35 |
2.36 |
–0.47 |
2.51 |
–0.45 |
2.67 |
–0.33 |
2.83 |
–0.41 |
2.98 |
0.08 |
.
Для этого найти вектор коэффициентов
минимизирующий сумму квадратов отклонений Fзначений аппроксимирующей функции от ординат узлов таблично заданной.
Поставленную задачу в среде Matlab’а можно решить с помощью встроенных функцийinlineиlsqcurvefit.
Функция inlineпозволяет описать аппроксимирующую функцию в символьном виде. У неё три параметра: формула для вычисления функции, имя вектора коэффициентов и имя вектора значений аргумента. Обращение к ней имеет вид:
fr= inline('формула','С','x')
Расчет коэффициентов аппроксимирующей функции методом наименьших квадратов и остаточной суммы квадратов невязок производится с помощью встроенной функции lsqcurvefit. Она имеет четыре параметра: имя функции, заданное в символьном виде, вектор её коэффициентов, вектор значений абсцисс и вектор значений ординат таблично заданной функции. Функцияlsqcurvefitвозвращает вектор коэффициентов аппроксимирующей функции и сумму квадратов невязок.
Для построения графика аппроксимирующей функции вектор значений её аргумента можно задать в диапазоне от 0.0 до 3.0 с шагом 0.01. Для этих значений следует вычислить вектор значений аппроксимирующей функции и обратиться к функции plot.
Текст содержимого m-файла, выполняющего указанные выше операции, приведен ниже.
x=[0.0 0.16 0.31 0.47 0.63 0.79 0.94 1.10
1.26 1.41 1.57 1.73 1.89 2.04 2.20 2.36
2.51 2.67 2.83 2.98];
y=[1.40 2.07 2.81 3.03 3.62 3.54 3.58 3.39
2.91 2.02 1.44 0.57 0.19 -0.36 -0.35 -0.47 -0.45 -0.33 -0.41 0.08];
С=[1,1,1,1]; ←задание начальных значений коэффициентов
fr=inline('С(1)/(x-1)+С(2)*sin(x)+С(3)*sin(2*x)
+С(4)*sin(3*x)','С','x')
[g,F]=lsqcurvefit(fr,С,x,y)
x1=0:0.01:3.14159;
y1=g(1)/(x1-1)+g(2)*sin(x1)+g(3)*sin(2*x1)
+g(4)*sin(3*x1);
plot(x,y,'b S',x1,y1,'r-')
Результат решения задачи будет выведено в командное окно в виде числовой информации:
g =
0.0102 1.8589 2.2127 0.5951
F =
3.2346
и в графическое окно в виде рисунка (см. рис.4) с графиком аппрок-
Рис.4.
симирующей функции и последовательности точек, отображающей исходную таблично заданную функцию.
По результатам этого расчёта можно утверждать, что аппроксимирующая функция
описывает исходную таблично заданную функцию с минимально возможной суммой квадратов невязок 3.23. При норме таблично заданной функции это соответствует относительной погрешности аппроксимации.
Контрольные задания
Аппроксимировать экспериментальные данные, приведённые на графиках в количестве 20-ти точек (см. рис.5–14), функцией вида
.
Для её построения выбрать три функции из четырёх i(x) (i = 1,2,3,4), заданных в таблице 1. Выбор функций осуществить из условия наилучшей аппроксимации. Обосновать свой выбор лучшего варианта. График аппроксимирующей функции и экспериментальные точки вывести на экран монитора. Записать в отчёт полученную формулу аппроксимирующей функции y.
1-3. Диаграмма испытаний на растяжение цилиндрического образца из нержавеющей стали 1Х18Н9Т. |
4-6. Диаграмма избыточного давления в цилиндре четырехтактного двигателя в зависимости от угла поворота его вала. |
Рис.6.
Рис.5.
7-9. Степень обогащённости газовой смеси карбюратора в зависимости от перепада давления на его диффузоре. |
10-12. Уровень шума работы двигателя Д.3–28/АТ в зависимости от числа оборотов вращения его вала. |
Рис.7.
Рис.8.
13-15. Зависимость мощности карбюраторного двигателя 11Ф–615 от числа оборотов вращения его вала. |
16-18. Вертикальное смещение передней части кузова автомобиля при переезде стандартной неровности при V = 50 км/час. |
Рис.10.
Рис.9.
19-21. Зависимость амплитуды вертикальных колебаний передней части кузова автомобиля при переезде стандартной неровности от скорости его движения. |
22-24. Упругая характеристика независимой подвески McConnell передних колес легкового автомобиля 405 Station Wagon (Peugeot, 1933). |
Рис.11. Рис.12.
25-27. Перегрузка передней части кузова автомобиля в зависимости от частоты возбуждающей силы на подвеске передних колес. |
28-30. Жёсткостная характеристика амортизатора подвески автомобиля Scorpio 2.9i V6–24V GHIA (Ford, 1963). |
Рис.13.
Рис.14.
Таблица 1. Варианты функций 1(x), 2(x), 3(x) и 4(x), составляющих аппроксимирующую функцию.
Варианты 1–3 (Рис.6, ε0= 0.2) | |
1 | |
2 | |
3 | |
Варианты 4–6 (Рис.7, φ0= 30о) | |
4 | |
5 | |
6 | |
Варианты 7–9 (Рис.8, p0= 4 КПа) | |
7 | |
8 | |
9 | |
Варианты 10–12 (Рис.9, n0= 200 об/мин) | |
10 | |
11 | |
12 | |
Варианты 13–15 (Рис.10, n0= 800 об/мин) | |
13 | |
14 | |
15 | |
Варианты 16–17 (Рис.11, t0= 1.2 сек) | |
16 | |
17 | |
18 |
Варианты 19–21 (Рис.12, V0= 20 км/час) | |
19 | |
20 | |
21 | |
Варианты 22–24 (Рис.13, z0= 5 см) | |
22 | |
23 | |
24 | |
Варианты 25–27 (Рис.14, ω0= 10 Гц) | |
25 | |
26 | |
27 | |
Варианты 28–30 (Рис.15, V0= 0.2 м/сек) | |
28 | |
29 | |
30 |