Читайте также: |
|
1. Для заданной функции y(x) методом наименьших квадратов для степенного базиса получить линейную F1(x) = a0 + a1x и квадратичную F2(x) = a0 + a1x + a2x2 аппроксимирующие функции:
- составить и решить систему нормальных уравнений;
- определить параметры аппроксимирующих функций;
- вычислить значения аппроксимирующих функций в узлах аппроксимации;
- построить график заданной функции (множество точек) и графики функций линейной и квадратичной аппроксимации;
- оценить качество аппроксимации.
2. Найти два корня уравнения F2(x) = 0 с заданной точностью Е:
- отделить корни;
- проверить (аналитически) условия сходимости применяемых методов решения уравнений. В случае необходимости привести уравнение к виду, обеспечивающему сходимость процесса приближения к корню;
- выбрать начальное приближение;
- записать рекуррентную формулу для уточнения корня;
- оценить погрешность.
3. Вычислит dx при разбиении отрезка интегрирования на
n1 = 10 и n2 = 20 подынтервалов, x1, x2 - корни уравнения:
- оценить погрешность.
4. Определить точку экстремума функции F2(x) методами одномерной оптимизации (с точностью Е):
- проверить условие унимодальности и выбрать начальный отрезок оптимизации;
- записать условие окончания поиска минимума (максимума) функции.
Задание 1. Функция y = y(x) задана таблицей.
Таблица 1
I | ||||||
xi | ||||||
y(x) | 1.386 | 0.406 | -0.939 | -1.286 | -0.266 |
Запишем параметры линейной аппроксимации:
x = = 4.285 y = = 0.043
a0 = y – a1x = 1.170952
a1 = = -0.2241571
Искомая линейная аппроксимирующая функция:
F1(x) =-0.2241571х+1.170952
Составим и решим систему нормальных уравнений для определения параметров многочлена второй степени F2(x) = a0 + a1x + a2x2
(n+1)a0 + (Σxi)a1 + (Σxi2)a2 = Σ yi
(Σxi )a0 + (Σxi2)a1 + (Σx3)a2 = Σ xi yi
(Σxi2)a0 + (Σxi3)a1 + (Σxi4)a2 = Σ xi2 yi.
Система нормальных уравнений:
6 а0 30 а1 + 220 а2 = 0.301
30 а0 + 220 а1 - 1800 а2 = -14.186
220 а0 - 1800 а1 + 15664 а2 = -130.668
Решение системы нормальных уравнений:
а2 = 2.545535Е-02 а1 = -0.4787107 а0 = 1.510357
Искомая аппроксимирующая функция:
F2(x) = 2.545535E-02 x2 – 0.4787107 x 1.510357
Значения аппроксимирующих функций F1{x} и F2{x} в узлах аппроксимации приведены в таблице 3:
X | ||||||
F1{x} | 1.170952 | 0.722638 | 0.274323 | -0.1739 | - 0.6223 | -1.0706 |
F2{x} | 1.51035 | 0.65475 | 2.799E-03 | -0.4455 | -0.6901 | -0.7312 |
Таблица3
Графики функций линейной и квадратичной аппроксимации показаны на рисунке
Оценим качество аппроксимации:
ρ = sqr(1/(n+1)* ∑ (Fm(xi) – y(xi))2)
Для линейной функции: р1=0.5999658
Для квадратичной функции: р2=0.5435526
p2<p1, значит аппроксимация квадратичной функции более качкственная.
Задание 2. Решение уравнения F2(x) с точностью Е = 10-4 . Для отделения корней уравнения F2(x)
составим таблицу знаков функции F2(x).
Таблица 4
X | -1 | ||||||||
Sign F2(x) | + | + | + | - | - | - | - | - | + |
На отрезках [3 5] и [12 15] функция F2(x) меняет знаки, т.е. существует, по крайней мере, по одному корню.
Производная F2'(x) = 0.051x-0.4787107,
F2"(x) = 0.051 > 0, следовательно, производная F2'(x) - монотонно возрастающая функция.
Составим таблицу знаков функции Аэ(ч) на выбранных отрезках:
X | 3 | 5 | 13 | 15 |
Sign F2’(x) | -0.32571 | -0.2237 | 0.18423 | 0.2863 |
На отрезке [3;5] функция F2(x) монотонно убывает, причем F2'(x) сохраняет знак, отрезок [3;5] содержит корень.
На отрезке [13;15] функция F2(x) монотонно возрастает, причем F2'(x) сохраняет знак, отрезок [13;15] содержит корень.
Уточним корни методом Итераций. Воспользуемся предложенной методикой получения функции.
F2(x) – дифференцируемая и имеет разные знаки на отрезках [3;5] и [13;15].
F2’(3)<0, F2’(5)<0, F2’(x)=0
F2’(13)>0, F2’(15)>0, F2’(x)=0
Интегрирующая функция (x) = *F2(x) + x обеспечивает выполнение условий сходимости | (x)|<1
Правила выбора параметра:
-1/r < <0, если F2’(x) > 0
0 < <1/r, если F2’(x), 0,
r = max (|F2’(a)|,|F2’(b)|).
На отрезке [3;5] r = max (0.32;0.22), следовательно, r = 0.32.
Т.к. F2’ < 0, 0 < <1/0.32, пусть = - 2/
На отрезке [13; 15] r = max (0.18;0.28), следовательно, r = 0.28
Т.к. F2’(x)>0, -1/0.28 < < 0, пусть = - 2
На отрезке [3;5] =2 x0=4
На отрезке [13;15] =-2 x0=15
Условия окончания поиска корня:
|Xn – Xn+1| < E
F2’(Xm) – F2(Xm+1) < E
Оценка погрешности корня:
|x*-xn| <= m*q/(1-q); q=max | ‘(x)|; m= |x0 - (x0)|.
На отрезке [3;5]:q=1.5963,
(x)=x; (4) = 3.98624
M=0.01376.
На отрезке [13;15]: ‘(x)=0.106349x, q=1.5952,
(14) = 13.5772; m=0.4227.
Результаты решения уравнений F2(x):
На отрезке [3;5] x = 4.0101372
На отрезке [13;15] x = 14.795575
Задание 3. Интеграл F2(x)dx вычислить, полагая n = 10 и n = 20 методами Симпсона, трапеций и средних прямоугольников.
Формула метода средних прямоугольников:
∫ F2(x)dx = h Σ F2(α + kh),k-степень используемого полинома, k=2
где α = а + , h = xi+1 – xi =
Формула метода трапеций:
∫ F2(x)dx = (F2(a) + F2(b) + 2 Σ F2 (α + ih),
где h = xi+1 – xi = ,
Формула метода Симпсона:
∫ F2(x)dx = [(F2(a) + F2(b) + 4 (F2(x1) + F2(x3) + … + F2(x2n-1)) + 2(F2(x2) + F2(x4) + … + F2(x2n-2)) ],
где h = xi+1 – xi = ,
Результаты занесем в таблицу.
n | Метод средних прямоугольников | Метод трапеций | Метод Симпсона |
I = -5.349468 | I = -5.269625 | I = -5.322854 | |
I = -5.329504 | I = -5.309546 | I = -5.322853 |
Оценка погрешности по правилу Рунге: R =|Ih-Ih/2|/(2^k-1)
Для методов средних прямоугольников и трапеций k = 2,
Rср.пр . = 6.6546E-03 Rтрап . = 1.3307E-02
Для метода Симпсона k = 4, Rс = 1E-09
Задание 4. Для нахождения точки экстремума применим методы дихотомии и золотого сечения. Проверка унимодальности необходима для использования указанных методов оптимизации.
f(x) = F2(x)
F2(x) = 2.545536E-02*x^2 – 0.474787107*x*1.510357
F’’(x) = 0.509, f’’(x) > 0, следовательно,
F2(x) – унимодальная схема и имеет локальный минимум. «Золотое сечение осуществляется двумя точками:
X1 = a+(3- 5)/2*(b – a) = a+k1(b-a),
X2 = a+(- 1)/2*(b-a)=a+k2(b-a),
Где x1 – вторая точка золотого сечения отрезка [a;x2],
X2 – первая точка золотого сечения отрезка [x1;b].
X*=(an + bn)/2.
Взяв в качестве натурального отрезка [0; 2] и точность =0.0001, получим:
Xm = 1.999959, f(xm) = fm = 0.6547724
Текст программы:
DECLARE SUB GOLD (N!, AI!, BI!, DE!, A!(), XM!, FXM!)
DECLARE SUB DIHOTOM (N!, AI!, BI!, DE!, A!(), XM!, FXM!)
DECLARE SUB SIMP (N!, X1!, X2!, A!(), I!)
DECLARE SUB TRAP (N!, X1!, X2!, A!(), I!)
DECLARE SUB PRJAM (N!, X1!, X2!, A!(), I!)
DECLARE SUB NJUTON (DE!, X!, A!(), N!)
DECLARE SUB GAUSS (K!, G!(), B!(), A!())
DECLARE SUB GRAM (I!, K!, G!(), X!(), Y!(), B!())
DECLARE SUB ITER (DE!, L!, X!, A!(), N!)
CLS
DATA 5
READ I
DATA 2
READ K
DIM X(I), Y(I), B(K), A(K)
DIM G(K, K)
DATA 0,2,4,6,8,10
FOR N = 0 TO I
READ X(N)
NEXT N
DATA 1,1.386,.406,-.939,-1.286,-.266
CLS
FOR N = 0 TO I
READ Y(N)
NEXT N
PRINT "Матрица Граммма"
CALL GRAM(I, K, G(), X(), Y(), B())
FOR L = 0 TO K
FOR M = 0 TO K
PRINT "G"; L; ","; M; "="; G(L, M); " ";
NEXT M
PRINT "B"; L; "="; B(L)
NEXT L
PRINT "Решение системы уравнений"
CALL GAUSS(K, G(), B(), A())
FOR N = 0 TO K
PRINT "A"; N; "="; A(N)
NEXT N
PRINT "Значение апроксимирующей функции"
DIM YA(I)
FOR N = 0 TO I
FOR L = 0 TO K
YA(N) = YA(N) + A(L) * X(N) ^ L
NEXT L
PRINT "YA("; X(N); ")="; YA(N)
R = R + ((YA(N) - Y(N)) ^ 2)
NEXT N
RO = SQR(((1 / (I + 1)) * R))
PRINT "Погрешность апроксимации"
PRINT RO
PRINT "Значения F(X) F'(X)"
FOR N = -10 TO 10 STEP 2
FF = A(2) * N * N + A(1) * N + A(0)
FFF = A(2) * 2 * N + A(1)
PRINT N; " "; FF; " "; FFF
NEXT
X = 4
DE =.015
CALL NJUTON(DE, X, A(), N)
PRINT "Корни методом Ньютона"
PRINT "N="; N; " X="; X;
X1 = X
X = 14
DE =.02
CALL NJUTON(DE, X, A(), N)
PRINT " N="; N; " X="; X
X2 = X
PRINT "Корни методом итераций"
X = 4
L =.5
DE =.0001
CALL ITER(DE, L, X, A(), N)
PRINT "N="; N; " X="; X;
X = 14
L = -.5
CALL ITER(DE, L, X, A(), N)
PRINT " N="; N; " X="; X
PRINT "Интеграл методом прямоугольников"
N = 10
CALL PRJAM(N, X1, X2, A(), I)
PRINT "N="; N; " I="; I;
I1 = I
N = 20
CALL PRJAM(N, X1, X2, A(), I)
R = ABS(I1 - I) / 3
PRINT " N="; N; " I="; I; " R="; R
PRINT "Интеграл методом трапеций"
N = 10
CALL TRAP(N, X1, X2, A(), I)
I1 = I
PRINT "N="; N; " I="; I;
N = 20
CALL TRAP(N, X1, X2, A(), I)
R = ABS(I1 - I) / 3
PRINT " N="; N; " I="; I; " R="; R
PRINT "Интеграл методом симпсона"
N = 10
CALL SIMP(N, X1, X2, A(), I)
I1 = I
PRINT "N="; N; " I="; I;
N = 20
CALL SIMP(N, X1, X2, A(), I)
R = ABS(I1 - I) / 15
PRINT " N="; N; " I="; I; " R="; R
PRINT "Экстремум методом дитохомии"
AI = -10
BI = 10
CALL DIHOTOM(N, AI, BI, DE, A(), XM, FXM)
PRINT "N="; N; "XM="; XM; "FXM="; FXM
PRINT "Экстремум методом золотого сечения"
AI = -10
BI = 10
CALL GOLD(N, AI, BI, DE, A(), XM, FXM)
PRINT "N="; N; "XM="; XM; "FXM="; FXM
Тексты подпрограмм:
SUB DIHOTOM (N, AI, BI, DE, A(), XM, FXM)
H = DE / 2
N = 0
DO
X1 = (AI + BI - H) / 2
X2 = (AI + BI + H) / 2
FX1 = A(2) * X1 * X1 + A(1) * X1 + A(0)
FX2 = A(2) * X2 * X2 + A(1) * X2 + A(0)
IF FX1 > FX2 THEN AI = X1
IF FX1 <= FX2 THEN BI = X2
N = N + 1
D = ABS(BI - AI)
LOOP UNTIL D < DE
XM = (AI + BI) / 2
FXM = A(2) * XM * XM + A(1) * XM + A(0)
END SUB
SUB GAUSS (K, G(), B(), A())
REM Вспомогательная матрица
DIM S(K, (K + 1))
FOR L = 0 TO K
FOR M = 0 TO K
S(L, M) = G(L, M)
NEXT M
S(L, (K + 1)) = B(L)
NEXT L
REM Прямой ход
FOR L = 0 TO K - 1
FOR M = L + 1 TO K
FOR J = L + 1 TO K + 1
S(M, J) = S(M, J) - S(L, J) * (S(M, L) / S(L, L))
NEXT J
NEXT M
NEXT L
A(K) = S(K, K + 1) / S(K, K)
REM Обратный ход
FOR M = K - 1 TO 0 STEP -1
A(M) = S(M, K + 1)
FOR J = K TO M + 1 STEP -1
A(M) = A(M) - S(M, J) * A(J)
NEXT J
A(M) = A(M) / S(M, M)
NEXT M
END SUB
SUB GOLD (N, AI, BI, DE, A(), XM, FXM)
N = 0
DO
X1 = (BI - AI) *.382 + AI
X2 = (BI - AI) *.618 + AI
FX1 = A(2) * X1 * X1 + A(1) * X1 + A(0)
FX2 = A(2) * X2 * X2 + A(1) * X2 + A(0)
IF FX1 > FX2 THEN AI = X1
IF FX1 <= FX2 THEN BI = X2
N = N + 1
D = ABS(BI - AI)
LOOP UNTIL D < DE
XM = (AI + BI) / 2
FXM = A(2) * XM * XM + A(1) * XM + A(0)
END SUB
SUB GRAM (I, K, G(), X(), Y(), B())
REM MATRIX
FOR L = 0 TO K
FOR M = 0 TO K
FOR N = 0 TO I
G(L, M) = G(L, M) + (X(N) ^ (L + M))
NEXT N
G(0, 0) = I + 1
NEXT M
FOR N = 0 TO I
B(L) = B(L) + Y(N) * X(N) ^ L
NEXT N
NEXT L
END SUB
SUB ITER (DE, L, X, A(), N)
N = 0
DO
XN = X + L * (A(2) * X * X + A(1) * X + A(0))
D = ABS(X - XN)
FX0 = A(2) * X * X + A(1) * X + A(0)
FXN = A(2) * XN * XN + A(1) * XN + A(0)
DF = ABS(FX0 - FXN)
IF DF > D THEN D = DF
X = XN
N = N + 1
LOOP UNTIL D < DE
END SUB
SUB NJUTON (DE, X, A(), N)
N = 0
DO
XN = X - (A(2) * X * X + A(1) * X + A(0)) / (A(2) * 2 * X + A(1))
REM PRINT XN
D = ABS(X - XN)
X = XN
N = N + 1
LOOP UNTIL D < DE
END SUB
SUB PRJAM (N, X1, X2, A(), I)
H = ABS(X2 - X1) / N
I = 0
FOR K = 0 TO (N - 1)
X = X1 + K * H + H / 2
I = I + (A(2) * (X) * (X) + A(1) * (X) + A(0)) * H
NEXT
END SUB
SUB SIMP (N, X1, X2, A(), I)
I = 0
H = (X2 - X1) / (2 * N)
I = A(2) * X1 * X1 + A(1) * X1 + A(0)
I = I + A(2) * X2 * X2 + A(1) * X2 + A(0)
C = 4
X = X1
FOR K = 1 TO (2 * N - 1)
X = X + H
I = I + (A(2) * X * X + A(1) * X + A(0)) * C
C = 6 - C
NEXT
I = I * H / 3
END SUB
SUB TRAP (N, X1, X2, A(), I)
I = 0
H = ABS(X2 - X1) / N
FOR K = 1 TO (N - 1)
X = X1 + K * H
I = I + A(2) * X * X + A(1) * X + A(0)
NEXT
FA = A(2) * X1 * X1 + A(1) * X1 + A(0)
FB = A(2) * X2 * X2 + A(1) * X2 + A(0)
I = (I * 2 + FA + FB) / 2 * H
END SUB
Введение.
В Северо-западном районе, заселенном древними славянскими племенами, получили развитие торговля и ремесла, в Санкт-Петербурге сосредоточились международная торговля, промышленность и квалифицированные кадры, а окраинное положение района способствовало развитию хозяйства. Все эти причины сыграли определенную роль в формировании современного образа района.
Район занимает одно из ведущих мест по уровню экономического развития, по масштабам и разнообразию промышленного производства, научно-исследовательской и проектно-конструкторской продукции, подготовке высококвалифицированных специалистов народного хозяйства, темпам формирования рыночных отношений, масштабам участия в мирохозяйственных связях России.
Площадь Северо-Западного района составляет 1,15% территории России. Район граничит с Финляндией, Латвией, Литвой, Эстонией и Белоруссией и имеет выход в Балтийское море.
Численность населения района на 01.01.2000 г составляла 7,9 млн. чел. - 5,4% от всего населения РФ. Доля городского населения почти - 87%. Естественный прирост населения, на уровне 2000 г был кризисным - резко отрицательным (-8 человек на 1000 жителей), достигавшим максимальных отрицательных величин в Псковской и Новгородской областях (-11,4 и -9,5 чел. на 1000 жителей).
В 2000 году в районе наблюдалась положительная миграция населения (коэффициент +7 на 1000 жителей), выразившаяся также в превышении численности прибывших в район над численностью выбывших на величину около 35 тыс. чел. (в 1996 г. до 42 тыс. чел.). Абсолютная численность населения района сокращается и по прогнозу на 2010 г составит 7,2 млн. чел.
Дата добавления: 2014-12-18; просмотров: 84 | Поможем написать вашу работу | Нарушение авторских прав |