книги / Моделирование функционирования изделий и технологических процессов в системах компьютерной математики
..pdf
|
|
|
|
h(x) = e− P0 x sin(P x) |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
с помощью функции genfit. |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
0 |
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
0.47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
2 |
|
|
|
0.395 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
0.011 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
4 |
|
|
|
−0.182 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
X := |
5 |
|
Y := |
−0.079 |
|
|
|
|
|
|
|
|
|
||||
|
Pg := |
3 |
|
|
|
|
|
|
|
|
|||||||
|
6 |
|
|
|
−0.064 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
7 |
|
|
|
0.02 |
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
|
|
|
0.038 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
e− P0 x sin(P1 x) |
|
|||||||
|
9 |
|
|
|
0.004 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
−0.003 |
|
|
F(x , P) := |
|
−x e |
− P0 x |
sin(P1 |
x) |
|
|||
|
10 |
|
|
|
|
|
|
|
|
||||||||
Pls := genfit(X , Y , Pg , F) |
|
|
|
|
|
x e |
− P0 x |
cos(P1 |
x) |
|
|||||||
|
|
|
|
|
|
|
|
||||||||||
Pls = |
|
0.448 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.997 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
h(x) := F(x , Pls)0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
0.6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
h(x) |
0.2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
2 |
4 |
6 |
8 |
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
x , X |
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 32. Применение нелинейной регрессии общего вида |
|
Для аппроксимации полиномом порядка k используются функции:
– regress(X,Y,k). Аргументы функции – векторы исходных данных X, Y и степень полинома k. Функция возвращает коэффициенты полинома степени k;
71
– interp(regress(X,Y,k),X,Y,x). Аргументы функции – коэффи-
циенты полинома (результат работы функции regress), векторы исходных данных X и Y и непрерывный аргумент x. Возвращает непрерывную функцию аргумента x, соответствующую искомой полиномиальной зависимости с минимальной среднеквадратической погрешностью.
Совместное применение функций regress и interp представлено на рис. 33. Кроме того, функция interp применяется при других видах аппроксимации, при этом первый аргумент – функция, возвращающая значения параметров определяемой функциональной зависимости.
k := 5 |
( |
|
|
|
|
) |
a |
|
|
|
|
|
0 |
, A |
1 |
|
|||
z := regress A |
|
|
, k |
|
|
||||
h(x) := |
interp(z , A |
0 |
, A |
1 |
, x) |
|
|||
|
|
0.8 |
|
|
|
|
|
|
|
h(x) |
|
0.6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A 1 |
0.4 |
|
|
|
|
|
|
|
|
|
|
0.2 |
|
|
|
|
|
|
|
|
|
0 |
0 |
0.5 |
1 |
1.5 |
2 |
2.5 |
3 |
|
|
|
|
|
x , A 0 |
|
|
|
Рис. 33. Применение функции аппроксимации полиномом заданной степени
Специальные формы аппроксимирующих функций:
– expfit(X, Y, VG) – возвращает вектор, содержащий коэффициенты (а, b и с) аппроксимирующей функции вида h(x) = aebx + c
для точек, координаты которых хранятся в векторах X и Y, вектор VG содержит первое приближение к решению (рис. 34);
72
– lgsfit(X, Y, VG) – то же, но для выражения h(x) = |
a |
; |
1+ be− cx |
– logfit(X, Y) – то же, но для выражения h(x) = aln(x + b) + с (начального приближения не требуется);
–medfit(X, Y) – то же, но для выражения h(x) = a + bх (начального приближения не требуется);
–pwrfit(X, Y, VG) – то же, но для выражения h(x) = axb + c;
–sinfit(X, Y, VG) – то же, но длявыраженияh(x) = asin(x + b) + c. В указанных функциях VG – вектор, содержащий начальные
приближения для искомых параметров (если таковые нужны), причём решение может существенно зависеть от указанных начальных приближений.
|
|
0.1 |
|
VG := |
|
0.1 |
|
|
|
||
|
|
0.1 |
|
|
|
|
z := expfit |
( |
A |
0 |
, A |
1 |
) |
|
|
|||
|
|
|
|
, VG |
|
|
|||||
|
|
0.976 |
|
|
|
|
|
|
|||
|
|
−0.831 |
|
|
|
б |
|
|
|||
z = |
|
|
|
|
|
|
|||||
|
9.48 × 10 |
− 3 |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|||||
h(x) := |
z |
ez1 x |
+ z |
|
|
|
|
||||
|
|
0 |
|
|
|
|
2 |
|
|
|
|
|
|
0.8 |
|
|
|
|
|
|
|
||
h(x) |
|
0.6 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
A 1 |
0.4 |
|
|
|
|
|
|
|
|||
|
|
0.2 |
|
|
|
|
|
|
|
||
|
|
|
|
0 |
0 |
0.5 |
1 |
1.5 |
2 |
2.5 |
3 |
|
|
|
|
|
|
|
x , A 0 |
|
|
Рис. 34. Применение функции expfit для решения задачи аппроксимации
73
5.4.Примеры решения задач аппроксимации
иинтерполяции
Приведём примеры решения задач с помощью рассмотренных функций:
1. Источник тока исследовали путём подключения к нему различных резисторов; измерялись сила тока и напряжение на клеммах источника. Получен следующий ряд значений:
I, A |
0,06 |
0,11 |
0,125 |
0,16 |
0,22 |
0,23 |
0,27 |
0,29 |
0,375 |
U, В |
4,8 |
4,95 |
4,4 |
4,1 |
4,0 |
3,3 |
3,6 |
3,2 |
3 |
Построить зависимость U(I) на основе интерполяции сплайнами второй степени, найти напряжение при I = 0,1; 0,2; 0,3 А.
Решение задачи в MathCAD представлено на рис. 35.
|
|
0.06 |
4.8 |
|
|
|
|
0.11 |
4.95 |
|
|
|
|
|
|
||
|
|
0.125 |
4.4 |
|
|
|
|
0.16 |
4.1 |
|
|
|
|
|
|
||
A := |
|
0.22 |
4.0 |
|
|
|
|
|
|
|
|
|
|
0.23 |
3.3 |
|
|
|
|
0.27 |
3.6 |
|
|
|
|
|
|
|
|
|
|
0.29 |
3.2 |
|
|
|
|
0.375 |
3.0 |
|
|
|
|
|
|
||
S := pspline(A 0 |
, A 1 |
) |
|||
U(I) := |
interp(S , A 0 , A |
1 , I) |
|
5.5 |
|
|
|
5 |
|
|
U(I) |
4.5 |
|
|
|
|
|
|
A 1 |
4 |
|
|
3.5 |
|
|
|
|
|
|
|
|
3 |
|
|
|
2.5 |
0.2 0.25 |
0.3 0.35 |
|
0.05 0.1 0.15 |
||
|
I , A 0 |
|
U(0.1) = 5.209 U(0.2) = 4.69 U(0.3) = 2.949
Рис. 35. Решение задачи интерполяции
74
2. Зависимость усилия прессования F (усилия на пуансоне) при операции глубокой вытяжки (штамповки) от перемещения пуансона h представлена ниже:
h, м |
0 |
0,08 |
0,016 0,024 0,032 |
0,04 |
0,048 0,056 0,064 0,072 |
0,08 |
|||||
F, кН |
0 |
1 |
2 |
16 |
44 |
47 |
55 |
69 |
77 |
85 |
98 |
Аппроксимировать эту зависимость.
Решение задачи в MathCAD представлено на рис. 36 и рис. 37. На рис. 36 показана аппроксимация с помощью линейной функции, на рис. 37 зависимость аппроксимирована полиномом третьей степени.
Для обоих вариантов аппроксимации вычислена сумма квадратов Е отклонения аппроксимирующих кривых от табличных значений в узловых точках. Как видно, сумма квадратов погрешностей при аппроксимации полиномом значительно меньше, чем эта сумма при аппроксимации линейной функцией. Таким образом можно сравнивать различные варианты решения между собой.
Также следует обратить внимание на то, что для построения полинома вместо функции linfit могла быть использована функция regress.
3. Зависимость силы резания Р от параметров процесса имеет вид
P = αVtβ ,
где V – скорость резания, V = 200 м/мин; t – глубина резания.
Были получены следующие экспериментальные результаты измерения силы резания в зависимости от глубины:
P, Н |
700 |
800 |
1450 |
880 |
1270 |
1400 |
1000 |
1050 |
600 |
500 |
t, мм |
1 |
1,2 |
3 |
1,5 |
2,2 |
2,5 |
2 |
1,6 |
0,8 |
0,5 |
Определить показатель степени β и коэффициент α, построить зависимость P(t).
Воспользуемся функцией genfit. Числа α и β – элементы вектора coeff, h – непрерывный аргумент аппроксимирующей функцииFR.
Решение представлено на рис. 38.
75
Е:=
Е= 572.1
Рис. 36. Аппроксимация линейной функцией
76
Е:=
Е= 12.186
Рис. 37. Аппроксимация полиномом
Контрольные вопросы и задания
1.Что такое интерполяция и аппроксимация? Чем различаются процедуры интерполяции и аппроксимации?
2.Как можно сравнить различные аппроксимирующие функции и выбрать наилучшую из них?
3.Для чего предназначены функции pspline, cspline и linterp? Что входит в число их аргументов?
77
|
1 |
|
|
700 |
|
|
|
|
|
|
1.2 |
|
|
800 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
3 |
|
|
1450 |
|
|
|
|
|
|
1.5 |
|
|
880 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
2.2 |
|
|
1270 |
|
V := 200 |
|
||
t := |
2.5 |
|
P := |
1400 |
|
|
|||
|
|
|
|
|
10 |
|
|||
|
2 |
|
|
1000 |
|
||||
Pg := |
10 |
|
|||||||
|
1.6 |
|
|
1050 |
|
|
|
||
|
|
|
|
|
|
|
|||
|
0.8 |
|
|
500 |
|
|
|
|
|
|
0.5 |
|
|
600 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
coeff0 V h |
coeff1 |
|
|||
|
|
|
|
|
|||
F(h , coeff) := |
|
V h |
coeff1 |
|
|
||
|
|
|
|
|
|
||
|
|
coeff0 V h |
coeff1 |
ln(h) |
|
||
|
|
|
|
|
Pls := genfit(t , P , Pg , F) |
|
3.579 |
|
|
Pls = |
0.661 |
|
FR(h) := F(h , Pls)0 |
|
|
|
|
|
|
1600
1400
1200
P
FR(h)1000
800 |
|
|
|
|
|
600 |
|
|
|
|
|
4000.5 |
1 |
1.5 |
2 |
2.5 |
3 |
|
|
|
t , h |
|
|
Рис. 38. Аппроксимация зависимости силы резания от режимов резания
78
4.С помощью каких функций можно выполнить аппроксимацию в форме линейной зависимости? Опишите технику использования этих функций.
5.Что такое функция genfit и какие объекты входят в состав её аргументов? Опишите технологию использования этой функции при решении задач аппроксимации.
6.Что такое функция linfit и какие объекты входят в состав её аргументов? Опишите технологию использования этой функции при решении задач аппроксимации.
7.Чем отличается глобальная интерполяция от локальной интерполяции? Каким образом вычисляются параметры интерполирующих функций при глобальной и локальной интерполяциях?
8.Для чего требуется функция interp при решении задач интерполяции и какие объекты входят в состав её аргументов?
9.Какая функция применяется при аппроксимации данных
ввиде полинома заданной степени? Какие объекты входят в состав её аргументов?
10.Совместно с какими функциями применяется функция interp при решении задач аппроксимации?
11.Перечислите известные вам специальные функции решения задач аппроксимации и объекты, которые входят в число их аргументов. В чём состоит преимущество использования таких функций перед применением функции нелинейной регрессии общего ви-
да genfit?
12.Давление насыщенного водяного пара в зависимости от температуры изменяется следующим образом:
t, °C |
|
–5 |
0 |
|
5 |
|
10 |
15 |
|
20 |
|
25 |
p 10–2, Пa |
|
3,96 |
6,02 |
|
8,61 |
|
12,1 |
16,8 |
|
23 |
|
31,3 |
Аппроксимировать зависимость и найти давление при t = 6; |
||||||||||||
7; 18 °С. |
|
|
|
|
|
|
|
|
|
|
|
|
13. В |
лабораторной |
работе |
проверялся |
закон |
Стефана– |
Больцмана R(T) = σT4 (здесь R – мощность излучения; Т – абсолютная температура). Потребляемая лампой накаливания мощность Р
79
(следовательно, и излучаемая мощность R, так как P = RS) измерялась амперметром и вольтметром, а температура нити t – оптическим пирометром. Излучающая площадь нитей накаливания S равна 1 см2. При разных токах получено следующее:
t, °C |
700 |
900 |
1100 |
1200 |
1300 |
1500 |
1600 |
P, Вт |
11 |
23 |
47 |
61 |
82 |
120 |
170 |
Аппроксимировать зависимость R(T) и найти мощность при t = 800 °C и 1000 °С.
14. При нагревании плотность жидкости изменяется по закону:
ρ = |
ρ0 |
, |
1+ βΔt |
где ρ0 – исходная плотность жидкости; β – коэффициент объёмного расширения; t – разность температур. При нагревании керосина получены следующие данные:
t, К |
10 |
20 |
30 |
50 |
60 |
70 |
80 |
100 |
ρ, кг/м3 |
792 |
785 |
775 |
760 |
755 |
750 |
740 |
730 |
Пользуясь представленными данными, найти ρ0, β керосина. 15. Решить задачу интерполяции следующих данных:
X |
0,05 |
0,08 |
0,11 |
0,14 |
0,17 |
Y |
2,5 |
3,7 |
3,9 |
3,1 |
3,6 |
80