Лаб1Апр2008 (Теория к лабам 19 страниц по БВМиС. 46 страниц теория дальнейших лекций), страница 5
Описание файла
Файл "Лаб1Апр2008 " внутри архива находится в папке "Теория к лабам 19 страниц по БВМиС. 46 страниц теория дальнейших лекций". Документ из архива "Теория к лабам 19 страниц по БВМиС. 46 страниц теория дальнейших лекций", который расположен в категории "". Всё это находится в предмете "бортовые вычислительные машины и системы (бвмис)" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "бвмис" в общих файлах.
Онлайн просмотр документа "Лаб1Апр2008 "
Текст 5 страницы из документа "Лаб1Апр2008 "
Номер варианта индивидуального задания для каждого студента определяется с помощью таблицы псевдослучайных 2-х разрядных целых десятичных чисел, приведенной с Приложении N 4.
Для всех вариантов заданий относительная погрешность представления входных переменных δ=0,01.
Таблица 3
Первая цифра задания | Операции | Метод масшта-бирования | ||
| | | ||
1 | + | / | * | 1 |
2 | * | / | + | 1 |
3 | + | / | - | 2 |
4 | - | / | + | 3 |
5 | * | / | - | 1 |
6 | - | / | * | 2 |
7 | / | + | * | 3 |
8 | / | * | + | 1 |
9 | / | - | * | 2 |
0 | / | + | - | 3 |
Таблица 4
Вторая цифра задания | Диапазоны изменения входных переменных | |||
X | Y | W | Z | |
1 | 2,8-5,7 | 0,3-0,62 | 1,8-3,7 | 0,25-0,49 |
2 | 3,6-7,2 | 0,25-0,53 | 2,9-5,8 | 0,34-0,67 |
3 | 1,7-3,5 | 0,2-0,43 | 3,6-7,3 | 0,26-0,53 |
4 | 3,5-7,3 | 0,25-0,53 | 1,8-3,5 | 0,23-0,47 |
5 | 2,5-5,6 | 0,3-0,62 | 3,7-7,4 | 0,28-0,56 |
6 | 1,7-3,4 | 0,2-0,43 | 2,8-5,7 | 0,31-0,63 |
7 | 3,0-6,1 | 0,4-0,73 | 2,4-4,8 | 0,36-0,72 |
8 | 2,8-5,7 | 0,31-0,62 | 2,1-4,3 | 0,32-0,64 |
9 | 2,5-4,8 | 0,25-0,54 | 1,4-2,7 | 0,33-0,67 |
0 | 3,1-6,3 | 0,23-0,47 | 3,8-7,6 | 0,28-0,59 |
Порядок выполнения задачи:
а) По номеру варианта индивидуального задания с помощью таблиц 3 и 4 определить:
- арифметическое выражение F;
- заданный метод масштабирования;
- диапазоны изменения входных переменных.
б) Выбрать масштабы входных величин Mx,My,Mz,Mw;
в) Вычислить масштаб результата Mf в соответствие с правилами преобразования масштабов.
9. Контрольные вопросы.
1. Что такое масштабирование алгоритмов, в связи с чем оно возникает?
2. Что такое рациональные масштабы?
3. Как определяется максимально возможное значение масштаба?
4. Как определяется минимально возможное значение масштаба?
5. Что такое «условие корректности изображений» при выборе масштабов?
6. Правила преобразования масштаба при выполнении арифметических операций.
7. Классификация методов масштабирования, их сравнение.
8. Метод постоянных масштабов, область его применения.
9. Метод ступенчатого масштабирования, область его применения.
10. Метод переменных масштабов, область его применения.
Приложение 1
Метод постоянных масштабов (программа CONSTA).
program consta;
var
x:real;
l,m,k:integer;
AM,BM,X1M,X2M,Y1M,Y2M,W1M,W2M,Z1M,Z2M,D1M,D2M,E1M,E2M,G1M,G2M,H1M,H2M,F1M,F2M:REAL;
SF,SF1,F1,F2,F1P,F2P,EF1,EF2,EF:REAL;
const
a=2.4;b=0.65;x1=50.0;x2=248.0;y1=5.0;y2=24.8;
w1=50;w2=248;z1=2.0;z2=9.8;
sa=0.4;sb=1.5;sd=0.002;se=0.0012;
{$I func.pas}
begin
k:=15;
AM:=A*SA;
BM:=B*SB;
X1M:=X1*SD;
X2M:=X2*SD;
Y1M:=Y1*SD;
Y2M:=Y2*SD;
W1M:=W1*SE;
W2M:=W2*SE;
Z1M:=Z1*SE;
Z2M:=Z2*SE;
D1M:=SUF(k,X1M,Y2M);
D2M:=SUF(k,X2M,Y1M);
E1M:=ADF(k,W1M,Z1M);
E2M:=ADF(k,W2M,Z2M);
G1M:=FMU(k,D1M,AM);
G2M:=FMU(k,D2M,AM);
H1M:=DIF(k,E1M,BM);
H2M:=DIF(k,E2M,BM);
F1M:=ADF(k,G1M,H1M);
F2M:=ADF(k,G2M,H2M);
wri(am,bm);wri(x1m,x2m);
wri(y1m,y2m);wri(w1m,w2m);
wri(z1m,z2m);wri(d1m,d2m);
wri(e1m,e2m);wri(g1m,g2m);
wri(h1m,h2m);wri(f1m,f2m);
SF:=SD*SA;
SF1:=SE/SB;
f1:=f1m/sf;
F2:=F2M/SF;
F1P:=(X1-Y2)*A+(W1+Z1)/B;
F2P:=(X2-Y1)*A+(W2+Z2)/B;
EF1:=ABS((F1-F1P)/F1P);
EF2:=ABS((F2-F2P)/F2P);
writ(SF,SF1);
writ(F1,F2);
writ(F1P,F2P);
writ(EF1,EF2);
ef:=0.5*(ef1+ef2);
writeln('K=',k:3,' EF=',ef:17:10);
end.
0.960000 0.975000
0.100000 0.496000
0.010000 0.049600
0.060000 0.297600
0.002400 0.011760
0.050385 0.485992
0.062378 0.309326
0.048340 0.466522
0.063965 0.317261
0.112305 0.783783
8.0000E-0004 8.0000E-0004
1.4038E+0002 9.7973E+0002
1.4048E+0002 9.7982E+0002
7.0573E-0004 8.8472E-0005
K= 15 EF= 0.0003970997
Метод постоянных масштабов (программа CONSTA).
Получение зависимости погрешности вычислений
от длины разрядной сетки.
program consta;
var
X,Y,W,Z,alpha:real;
N,k,i:integer;
AM,BM,XM,YM,WM,ZM,DM,EM,GM,HM,FM:REAL;
SF,SF1,F,FP,ESUM,ESI,ES1,ES2,ESM:REAL;
const
a=2.4;b=0.65;
x1=50.0;x2=248.0;y1=5.0;y2=24.8;w1=50.0;w2=248.0;z1=2.0;z2=9.8;
sa=0.4;sb=1.5;sd=0.002;se=0.0012;
{$I func.pas}
begin
N:=20;
AM:=A*SA;
BM:=B*SB;
SF:=SD*SA;
SF1:=SE/SB;
for k:=9 to 29 do
begin
Randomize;
ES1:=1;
ES2:=-1;
ESM:=0;
ESUM:=0;
for i:=0 to N do
begin
X:=x1+(Random(10000)/10000)*(x2-x1);
Y:=y1+(Random(10000)/10000)*(y2-y1);
Z:=z1+(Random(10000)/10000)*(z2-z1);
W:=w1+(Random(10000)/10000)*(w2-w1);
XM:=X*SD;
YM:=Y*SD;
WM:=W*SE;
ZM:=Z*SE;
DM:=SUF(k,XM,YM);
EM:=ADF(k,WM,ZM);
GM:=FMU(k,DM,AM);
HM:=DIF(k,EM,BM);
FM:=ADF(k,GM,HM);
F:=FM/SF;
FP:=(X-Y)*A+(W+Z)/B;
ESI:=ABS((F-FP)/FP);
if ESI if ESI>ES2 then ES2:=ESI; ESUM:=ESUM+ESI; end; ESM:=ESUM/N; writeln('K=',k:3,' ES1=',ES1:13,' ES2=',ES2:13,' ESM=',ESM:13); end; end. K= 9 ES1= 1.7996E-0003 ES2= 1.8676E-0002 ESM= 1.0158E-0002 K= 10 ES1= 1.3008E-0003 ES2= 9.3786E-0003 ESM= 5.0640E-0003 K= 11 ES1= 4.7371E-0004 ES2= 5.1810E-0003 ESM= 2.5533E-0003 K= 12 ES1= 4.4273E-0004 ES2= 2.5356E-0003 ESM= 1.1720E-0003 K= 13 ES1= 2.6958E-0004 ES2= 1.1583E-0003 ESM= 6.1177E-0004 K= 14 ES1= 1.3554E-0004 ES2= 7.1982E-0004 ESM= 3.1592E-0004 K= 15 ES1= 6.5079E-0005 ES2= 2.1544E-0004 ESM= 1.3746E-0004 K= 16 ES1= 1.6041E-0005 ES2= 1.3085E-0004 ESM= 7.0816E-0005 K= 17 ES1= 1.3690E-0005 ES2= 6.5265E-0005 ESM= 3.9253E-0005 K= 18 ES1= 2.9835E-0006 ES2= 4.8869E-0005 ESM= 2.1265E-0005 K= 19 ES1= 2.3862E-0006 ES2= 2.4274E-0005 ESM= 1.1116E-0005 K= 20 ES1= 1.0789E-0006 ES2= 1.6075E-0005 ESM= 5.9271E-0006 K= 21 ES1= 9.3700E-0007 ES2= 7.8771E-0006 ESM= 3.0105E-0006 K= 22 ES1= 4.7077E-0007 ES2= 2.7531E-0006 ESM= 1.2485E-0006 K= 23 ES1= 6.1916E-0008 ES2= 1.2159E-0006 ESM= 6.2961E-0007 K= 24 ES1= 1.2184E-0007 ES2= 8.3259E-0007 ESM= 3.3582E-0007 K= 25 ES1= 2.2992E-0008 ES2= 3.1923E-0007 ESM= 1.5490E-0007 K= 26 ES1= 2.1999E-0008 ES2= 1.3997E-0007 ESM= 7.0951E-0008 K= 27 ES1= 2.0017E-0008 ES2= 6.3028E-0008 ESM= 3.6999E-0008 K= 28 ES1= 7.5545E-0009 ES2= 3.3102E-0008 ESM= 1.9422E-0008 K= 29 ES1= 2.4572E-0009 ES2= 1.6003E-0008 ESM= 9.5226E-0009 Приложение 2 Метод ступенчатого масштабирования (программа STEP). program step; var x:real; l,m,k:integer; AM,BM,X1M,X2M,Y1M,Y2M,W1M,W2M,Z1M,Z2M,D1M,D2M,E1M,E2M,G1M,G2M,H1M,H2M,F1M,F2M:REAL; SF,SF1,F1,F2,F1P,F2P,EF1,EF2,EF:REAL; const a=2.4;b=0.65;x1=50.0;x2=248.0;y1=5.0;y2=24.8; w1=50.0;w2=248.0;z1=2.0;z2=9.8; sa=0.4;sb=1.5;sd=0.004;se=0.003; sk1=0.8;sk2=0.6; {$I func.pas} begin k:=15; AM:=A*SA; BM:=B*SB; X1M:=X1*SD; X2M:=X2*SD; Y1M:=Y1*SD; Y2M:=Y2*SD; W1M:=W1*SE; W2M:=W2*SE; Z1M:=Z1*SE; Z2M:=Z2*SE; D1M:=SUF(k,X1M,Y2M); D2M:=SUF(k,X2M,Y1M); E1M:=ADF(k,W1M,Z1M); E2M:=ADF(k,W2M,Z2M); G1M:=FMU(k,FMU(k,D1M,AM),SK2); G2M:=FMU(k,FMU(k,D2M,AM),SK2); H1M:=FMU(k,FMU(k,DIF(k,E1M,BM),SK1),SK2); H2M:=FMU(k,FMU(k,DIF(k,E2M,BM),SK1),SK2); F1M:=ADF(k,G1M,H1M); F2M:=ADF(k,G2M,H2M); wri(am,bm);wri(x1m,x2m); wri(y1m,y2m);wri(w1m,w2m); wri(z1m,z2m);wri(d1m,d2m); wri(e1m,e2m);wri(g1m,g2m); wri(h1m,h2m);wri(f1m,f2m); SF:=SD*SA*SK2; SF1:=SE/SB*SK1*SK2; F1:=F1M/SF; F2:=F2M/SF; F1P:=(X1-Y2)*A+(W1+Z1)/B; F2P:=(X2-Y1)*A+(W2+Z2)/B; EF1:=ABS((F1-F1P)/F1P); EF2:=ABS((F2-F2P)/F2P); writ(SF,SF1); writ(F1,F2); writ(F1P,F2P); writ(EF1,EF2); ef:=0.5*(ef1+ef2); writeln('K=',k:3,' EF=',ef:17:10); end.