РУБРИКИ |
Аппроксимация функций |
РЕКЛАМА |
|
Аппроксимация функцийАппроксимация функцийАппроксимация функций. Из курса математики известны 3 способа задания функциональных зависимостей: 1) аналитический 2) графический 3) табличный Табличный способ обычно возникает в результате эксперемента. Недостаток табличного задания функции заключается в том, что найдутся значения переменных которые неопределены таблицей. Для отыскания таких значений определяют приближающуюся к заданной функцию, называемой аппроксмирующей, а действие замены аппроксимацией. Аппроксимация заключается в том, что используя имеющуюся информацию по f(x) можно рассмотреть другую функцию ?(ч) близкую в некотором смысле к f(x), позволяющую выполнить над ней соответствующие операции и получить оценку погрешность такой замены. ?(х)- аппроксимирующая функция. Интерполяция (частный случай аппроксимации) Если для табличной функции y=f(x), имеющей значение x0 f(x0) требуется построить аппроксимирующюю функцию ((x) совпадающую в узлах с xi c заданной, то такой способ называется интерполяцией При интерполяции, заданная функция f(x) очень часто аппроксимируется с помощью многочлена, имеющего общий вид ((x)=pn(x)=anxn+an-1xn-1+…+a0 В данном многочлене необходимо найти коэффициенты an ,an-1, …a0 , так как задачей является интерполирование, то определение коэффициентов необходимо выполнить из условия равенства: Pn(xi)=yi i=0,1,…n Для определения коэффициентов применяют интерполяционные многочлены специального вида, к ним относится и полином Лагранжа Ln(x). [pic] i(j В точках отличных от узлов интерполяции полином Лагранжа в общем случае не совпадает с заданной функцией . Задание С помощью интерполяционного полинома Лагранжа вычислить значение функции y в точке xc, узлы интерполяции расположены равномерно с шагом (х=4,1 начиная с точки х0=1,3 даны значения функции y={-6.56,-3.77,- 1.84,0.1,2.29,4.31,5.86,8.82,11.33,11.27}. ГСА для данного метода CLS DIM Y(9) DATA -6.56,-3.77,-1.84,0.1,2.29,4.31,5.86,8.82,11.33,11.27 X0 = 1.3: H = 4.1: N = 10: XC = 10 FOR I = 0 TO N - 1 1 X(I) = X0 + H * I READ Y(I) PRINT Y(I); X(I) NEXT I S1 = 0: S2 = 0: S3 = 0: S4 = 0 FOR I = 0 TO N - 1 2 S1 = S1 + X(I) ^ 2 S2 = S2 + X(I) S3 = S3 + X(I) * Y(I) S4 = S4 + Y(I) NEXT I D = S1 * N - S2 ^ 2 D1 = S3 * N - S4 * S2 D0 = S1 * S4 - S3 * S2 A1 = D1 / D: A0 = D0 / D YC = A1 * XC + A0 PRINT "A0="; A0, "A1="; A1, "YC="; YC FOR X = 0 TO 50 STEP 10 Y = A1 * X + A0 PRINT X, Y NEXT X END XC= 10 Х Y 1.3 -6.56 5.4 -3.77 9.5 -1.84 13.6 .1 17.7 2.29 21.8 4.31 25.9 5.86 30 8.82 34.1 11.33 38.2 11.27 S=-1.594203 АППРОКСИМАЦИЯ ФУНКЦИЕЙ. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ. В инженерной деятельности часто возникает необходимость описать в виде функциональной зависимости связь между величинами, заданными таблично или в виде набора точек с координатами (xi,yi), i=0,1,2,...n, где n - общее количество точек. Как правило, эти табличные данные получены экспериментально и имеют погрешности. При аппроксимации желательно получить относительно простую функциональную зависимость (например, полином), которая позволила бы "сгладить" экспериментальные погрешности, получить промежуточные и экстраполяционные значения функций, изначально не содержащиеся в исходной табличной информации. Графическая интерпретация аппроксимации. Эта функциональная (аналитическая) зависимость должна с достаточной точностью соответствовать исходной табличной зависимости. Критерием точности или достаточно "хорошего" приближения могут служить несколько условий. Обозначим через fi значение, вычисленное из функциональной зависимости для x=xi и сопоставляемое с yi. Одно из условий согласования можно записать как S = [pic](fi-yi) > min , т.е. сумма отклонений табличных и функциональных значений для одинаковых x=xi должна быть минимальной (метод средних). Отклонения могут иметь разные знаки, поэтому достаточная точность в ряде случаев не достигается. Использование критерия S = [pic]|fi-yi| > min , также не приемлемо, т.к. абсолютное значение не имеет производной в точке минимума. Учитывая вышеизложенное, используют критерий наименьших квадратов, т.е. определяют такую функциональную зависимость, при которой S = (fi-yi)2 , (1) обращается в минимум. В качестве функциональной зависимости рассмотрим многочлен f(x)=C0 + C1X + C2X2+...+CMXM. (2) Формула (1) примет вид S = [pic]( C0 + C1Xi + C2Xi2+...+CMXiM - Yi ) 2 Условия минимума S можно записать, приравнивая нулю частные производные S по независимым переменным С0,С1,...СМ : SC0 = 2 ( C0 + C1[pic]Xi + C2[pic]Xi2+...+CM[pic]XiM - Yi ) = 0 , SC1 = 2 ( C0 + C1[pic]Xi + C2[pic]Xi2+...+CM[pic]XiM - yi ) Xi = 0 , ............................................................................ ..................... (3) SCM = 2 ( C0 + C1[pic]Xi + C2[pic]Xi2+...+CM[pic]XiM - Yi ) XiM = 0 , Тогда из (3) можно получить систему нормальных уравнений C0 [pic] (N+1) + C1[pic] Xi + C2[pic]Xi2 +...+ CM [pic]XiM = [pic]Yi , C0[pic]Xi + C1[pic]Xi2 + C2[pic]Xi3 +...+ CM[pic]XiM+1 = [pic]Yi Xi , ............................................................................ ........................... (4) C0[pic]XiM + C1[pic]XiM+1 + C2[pic]XiM+2 +...+ CM[pic]Xi2M =[pic] Yi XiM . Для определения коэффициентов Сi и, следовательно, искомой зависимости (2) необходимо вычислить суммы и решить систему уравнений (4). Матрица системы (4) называется матрицей Грама и является симметричной и положительно определенной. Эти полезные свойства используются при ее решении. | |(N+1) |[pic]Xi |[pic]Xi2 |.|[pic]XiM |[pic]Yi | | | | | | |.| | | | | | | | |.| | | | | |Xi |[pic]Xi2 |[pic]Xi3 |.|[pic]XiM+1|[pic]Yi Xi| | | | | | |.| | | | | | | | |.| | | | | |... |... |... |.|... |... | | | | | | |.| | | | | | | | |.| | | | | |XiM |[pic]XiM+1|[pic]XiM+2|.|[pic]Xi2M |[pic]Yi | | | | | | |.| |XiM | | | | | | |.| | | | Нетрудно видеть, что для формирования расширенной матрицы (4а) достаточно вычислить только элементы первой строки и двух последних столбцов, остальные элементы не являются "оригинальными" и заполняются с помощью циклического присвоения. Задание Найти коэффициенты прямой и определить значение функции y{-6.56,-3.77, -1.84,0.1,2.29,4.31,5.56,8.82,11.33,11.27}, x0=1.3 h=4.1, и определить интеграл заданной функции. Программа ¦CLS ¦XC = 10: X0 = 1.3: H = 4.1: N = 10 ¦DIM Y(9): DIM X(9) ¦DATA -6.56,-3.77,-1.84,0.1,2.29,4.31,5.86,8.82,11.33,11.27 ¦FOR I = 0 TO N - 1 ¦X = X0 + H * I: ¦X(I) = X ¦READ Y(I) ¦PRINT X(I), Y(I) ¦NEXT I ¦S1 = 0: S2 = 0: S3 = 0: S4 = 0 ¦I = 0 ¦10 S1 = S1 + X(I) ^ 2: ¦S2 = S2 + X(I): ¦S3 = S3 + X(I) * Y(I): ¦S4 = S4 + Y(I) ¦I = I + 1 ¦IF I <= N - 1 THEN 10 ¦D = S1 * N - S2 ^ 2: ¦D1 = S3 * N - S2 * S4: ¦D0 = S1 * S4 - S2 * S3 ¦A1 = D1 / D: ¦A0 = D0 / D ¦Y = A1 * XC + A0 ¦PRINT TAB(2); "КОЭФФИЦИЕНТ ПРЯМОЙ В ТОЧКЕ A0="; A0, ¦PRINT TAB(2); "КОЭФФИЦИЕНТ ПРЯМОЙ В ТОЧКЕ A1="; A1, ¦PRINT TAB(2); "ЗНАЧЕНИЕ ФУНКЦИИ В ТОЧКЕ XC Y="; Y ¦FOR X = 10 TO 50 STEP 10 ¦Y = A1 * X + AO ¦PRINT X, Y ¦NEXT X ¦FOR I = 1 TO N - 1 ¦S = S + Y(I): NEXT I ¦D = H / 2 * (Y(0) + Y(N - 1) + 2 * S) ¦PRINT "ЗНАЧЕНИЕ ИНТЕГРАЛА ПО МЕТОДУ ТРАПЕЦИИ D="; D Ответы Х Y 1.3 -6.56 5.4 -3.77 9.5 -1.84 13.6 .1 17.7 2.29 21.8 4.31 25.9 5.86 30 8.82 34.1 11.33 38.2 11.27 КОЭФФИЦИЕНТ ПРЯМОЙ В ТОЧКЕ A0=-6.709182 КОЭФФИЦИЕНТ ПРЯМОЙ В ТОЧКЕ A1= .5007687 ЗНАЧЕНИЕ ФУНКЦИИ В ТОЧКЕ XC Y=-1.701495 10 5.007687 20 10.01537 ЗНАЧЕНИЕ ИНТЕГРАЛА ПО МЕТОДУ ТРАПЕЦИИ D= 166.9725 ----------------------- [pic] ?(х) i ( n i ( n i = j Конец Вывод S, xc i = i +1 S = S + yi*P j = j+1 [pic] j = 0 P = 1 i = 0 S = 0 i = i+1 xi = x0 + h*i Ввод yi j ( n I=0 Ввод х0, h, xc, n Начало да нет нет да d = h/2*(y0 +yn+2S) i = i+1 S=S+yi i = 0 S = 0 i ( n-1 да Yc=a1xc+a0 a1=d1/d, a0= d0/d d0=S1S4-S2S3 S4=S4+yi S3=S3+xiyi S2=S2 +xi i ( m-1 Конец Вывод xca0, a1,d,y d1=S3m-S2S4 d = S1m –S22 i = i+1 S1=S1*xi2 i = 0 S1 = 0, S2=0, S3=0, S4=0 i = i+1 xi = x0 + h*i Ввод yi i ( m-1 I=0 Ввод х0, h, xc, m Начало да нет нет да ГСА Программы аппроксимации и вычисления интеграла методом трапеции. |
|
© 2007 |
|