Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

gas / doc / OP1

.TXT
Скачиваний:
16
Добавлен:
15.06.2014
Размер:
16.92 Кб
Скачать
ЉЋЊЏ‹…Љ‘ “—…ЃЌЋ-‹ЂЃЋђЂ’ЋђЌ›• ЏЋ„ЏђЋѓђЂЊЊ

„‹џ –€”ђЋ‚ЋѓЋ ЊЋ„…‹€ђЋ‚ЂЌ€џ

‘€‘’…Њ› „€‘Љђ…’€‡Ђ–€€

Ќ…Џђ…ђ›‚Ќ›• ‘ЋЋЃ™…Ќ€‰ ЏЋ ‚ђ…Њ…Ќ€


‘ Ћ „ … ђ † Ђ Ќ € …
-------------------

1. ЋЎйЁҐ ᢥ¤Ґ­Ёп
2. ”г­ЄжЁ®­ «м­®Ґ ­ §­ зҐ­ЁҐ Є®¬Ї«ҐЄб 
3. ЋЇЁб ­ЁҐ ЇаЁ¬Ґ­Ґ­Ёп Є®¬Ї«ҐЄб 
4. ‚室­лҐ Ё ўл室­лҐ ¤ ­­лҐ
5. ‘ЇЁб®Є Ї®¤Їа®Ја ¬¬ Є®¬Ї«ҐЄб 
1. Function GAUSS
2. Procedure GF
3. Procedure GKLF
4. Procedure FLF
5. Procedure DIS
6. Procedure IDF
7. Procedure GRA


1. ЋЎйЁҐ ᢥ¤Ґ­Ёп.

‚ ¤ ­­®¬ ⥪б⥠ЇаЁў®¤Ёвбп ®ЇЁб ­ЁҐ Є®¬Ї«ҐЄб  г祡­®-« Ў®а в®а­ле Ї®¤Їа®-
Ја ¬¬ "–Ёда®ў®Ґ ¬®¤Ґ«Ёа®ў ­ЁҐ бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ ­ҐЇаҐалў­ле б®®ЎйҐ­Ё© Ї®
ўаҐ¬Ґ­Ё".Љ®¬Ї«ҐЄб б®бв®Ёв Ё§ Ї®¤Їа®Ја ¬¬, ­ ЇЁб ­­ле ­   «Ј®аЁ¬ЁзҐбЄ®¬ п§лЄҐ
"Turbo Pascal 7.0" Ё Ї®¬ҐйҐ­­ле ў ¬®¤г«м GNK.


2. ”г­ЄжЁ®­ «м­®Ґ ­ §­ зҐ­ЁҐ Є®¬Ї«ҐЄб .

Љ®¬Ї«ҐЄб Ї®¤Їа®Ја ¬¬ ЇаҐ¤­ §­ зҐ­ ¤«п ¬®¤Ґ«Ёа®ў ­Ёп бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
­ҐЇаҐалў­ле б®®ЎйҐ­Ё© Ї® ўаҐ¬Ґ­Ё Їг⥬ ЇаҐ¤бв ў«Ґ­Ёп бд®а¬Ёа®ў ­­®© дг­ЄжЁЁ
"­ҐЇаҐалў­®Ј®  аЈг¬Ґ­в " ў ўЁ¤Ґ аҐиҐвз в®© дг­ЄжЁЁ ¤ЁбЄаҐв­®Ј®  аЈг¬Ґ­в  ў
ᮮ⢥вбвўЁЁ б ⥮६®© Љ®вҐ«м­ЁЄ®ў , Ё ҐҐ Ї®б«Ґ¤го饣® ў®ббв ­®ў«Ґ­Ёп
Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в. ‚®§¬®¦­® Ја дЁзҐбЄ®Ґ ЇаҐ¤бв ў«Ґ­ЁҐ дг­ЄжЁ©
­  Є ¦¤®¬ нв ЇҐ ¬®¤Ґ«Ёа®ў ­Ёп.


3. ЋЇЁб ­ЁҐ ЇаЁ¬Ґ­Ґ­Ёп Є®¬Ї«ҐЄб .

„«п ЁбЇ®«м§®ў ­Ёп Є®¬Ї«ҐЄб  ў ‚ иҐ© Їа®Ја ¬¬Ґ ­Ґ®Ўе®¤Ё¬® б ¬л¬ ЇҐаўл¬
®ЇҐа в®а®¬ Їа®Ја ¬¬л Ї®бв ўЁвм USES gnk.ЏаЁ §в®¬ ­Ґ®Ўе®¤Ё¬® ­ «ЁзЁҐ д ©« 
gnk.tpu ў ⥪г饬 Є в «®ЈҐ Ё«Ё ў Є в «®ЈҐ,гЄ § ­­®¬ ў ¬Ґ­о
Options|Directories...|Unit directories.„«п ­®а¬ «м­®© а Ў®вл Їа®жҐ¤гал
Ї®бв஥­Ёп Ја дЁЄ®ў GRA ­Ґ®Ўе®¤Ё¬® ­ «ЁзЁҐ д ©«  egavga.bgi ў
Є в «®ЈҐ D:/TP/BGI.
"ЌҐЇаҐалў­ п" дг­ЄжЁп Ё¬ЁвЁагҐвбп ¬­®¦Ґбвў®¬ §­ зҐ­Ё© б«гз ©­®© дг­ЄжЁЁ,
ЈҐ­ҐаЁагҐ¬л¬ Їа®жҐ¤га®© GF Ё«Ё ¬­®¦Ґбвў®¬ §­ зҐ­Ё© Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ,
ЈҐ­ҐаЁагҐ¬л¬ Їа®жҐ¤га®© GKLF.‘ЈҐ­ҐаЁа㥬 п дг­ЄжЁп ¬®¦Ґв Ўлвм "бЈ« ¦Ґ­ "
Їа®жҐ¤га®© FLF.Џа®жҐ¤га  DIS ®ЇаҐ¤Ґ«пҐв §­ зҐ­Ёп дг­ЄжЁЁ ў ®ЇвЁ¬ «м­ле
®вбзҐв е,в.Ґ. Ё¬ЁвЁагҐв Їа®жҐбб ¤ЁбЄаҐвЁ§ жЁЁ "­ҐЇаҐалў­®©" дг­ЄжЁЁ Ї®
ўаҐ¬Ґ­Ё Ё ЇаҐ¤бв ў«пҐв ҐҐ ў ўЁ¤Ґ ¬­®¦Ґбвў  §­ зҐ­Ё© аҐиҐвз в®© дг­ЄжЁЁ
¤ЁбЄаҐв­®Ј®  аЈг¬Ґ­в .‚®ббв ­®ў«Ґ­ЁҐ "­ҐЇаҐалў­®©" дг­ЄжЁЁ Ї® ¤ЁбЄаҐв­л¬
®вбзҐв ¬ аҐиҐвз в®© дг­ЄжЁЁ Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в Ё¬ЁвЁагҐвбп
Їа®жҐ¤га®© IDF,Є®в®а п Ї®§ў®«пҐв ЇаҐ¤бв ўЁвм ў Ја дЁзҐбЄ®¬ ўЁ¤Ґ Їа®жҐбб
б㬬Ёа®ў ­Ёп дг­ЄжЁ© ®вбзҐв .„«п ­ Ј«п¤­®бвЁ ¬®¦­® Ї®бва®Ёвм Ја дЁЄЁ
Ёб室­®©,бЈ« ¦Ґ­®©,аҐиҐвз в®© Ё ў®ббв ­®ў«Ґ­­®© дг­ЄжЁ© ў¬Ґб⥠б дг­ЄжЁп¬Ё
®иЁЎ®Є бЈ« ¦Ёў ­Ёп Ё ў®ббв ­®ў«Ґ­Ёп б Ї®¬®ймо Їа®жҐ¤гал GRA.


4. ‚室­лҐ Ё ўл室­лҐ ¤ ­­лҐ.

4.1 ‚室­лҐ ўҐ«ЁзЁ­л

‚ Є зҐб⢥ ўе®¤­ле Ї а ¬Ґва®ў жЁда®ў®© ¬®¤Ґ«Ё бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
­ҐЇаҐалў­ле б®®ЎйҐ­Ё© Ї® ўаҐ¬Ґ­Ё ЁбЇ®«м§говбп б«Ґ¤гойЁҐ ўҐ«ЁзЁ­л:
T - ЇҐаЁ®¤ дг­ЄжЁЁ;
N - зЁб«® ўбҐе ®вбзҐв®ў  аЈг¬Ґ­в  ­  Ё­вҐаў «Ґ ®ЇаҐ¤Ґ«Ґ­Ёп дг­ЄжЁЁ;
M - зЁб«® Їа®¬Ґ¦гв®з­ле ®вбзҐв®ў  аЈг¬Ґ­в  ¬Ґ¦¤г б®бҐ¤­Ё¬Ё ¤ЁбЄаҐв­л¬Ё
®вбзҐв ¬Ё;
W - з бв®в  ўлб襩 Ј а¬®­ЁЄЁ бЇҐЄва  дг­ЄжЁЁ (бЁЈ­ « );
K1,K2 - Є«озЁ Їа®жҐ¤гал GF,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬ ЈҐ­Ґа жЁЁ дг­ЄжЁЁ;
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐ­Ґа жЁЁ Є®нддЁжЁҐ­в®ў ”гамҐ;
Ma - ¬ вҐ¬ вЁзҐбЄ®Ґ ®¦Ё¤ ­ЁҐ  ¬Ї«Ёвг¤ Ј а¬®­ЁЄ ап¤  ”гамҐ;
Sa - б।­ҐҐ Єў ¤а вЁз­®Ґ ®вЄ«®­Ґ­ЁҐ  ¬Ї«Ёвг¤ Ј а¬®­ЁЄ ап¤  ”гамҐ;
Mp - ¬ вҐ¬ вЁзҐбЄ®Ґ ®¦Ё¤ ­ЁҐ д §®ўле б¤ўЁЈ®ў Ј а¬®­ЁЄ ап¤  ”гамҐ;
Sp - б।­ҐҐ Єў ¤а вЁз­®Ґ ®вЄ«®­Ґ­ЁҐ д §®ўле б¤ўЁЈ®ў Ј а¬®­ЁЄ ап¤  ”гамҐ;
K3 - Є«оз Їа®жҐ¤гал IDF,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ЈҐ­Ґа жЁЁ дг­ЄжЁЁ;
K,E - Є«озЁ Їа®жҐ¤гал GRA,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬л ўлў®¤  Ја дЁЄ®ў дг­ЄжЁ©.

4.2 ‚л室­лҐ ўҐ«ЁзЁ­л

X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
G - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N,ᮤҐа¦ йЁ© §­ зҐ­Ёп
®зҐаҐ¤­®© б㬬Ёа㥬®© Ј а¬®­ЁЄЁ ап¤  ”гамҐ;
FO - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N,ᮤҐа¦ йЁ© §­ зҐ­Ёп
®зҐаҐ¤­®© б㬬Ёа㥬®© дг­ЄжЁЁ ®вбзҐв  ап¤  Љ®вҐ«м­ЁЄ®ў ;
Yo - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈҐ­ҐаЁа®ў ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;
Y - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈ« ¦Ґ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;
Xdis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в®ў аҐиҐвз в®© дг­ЄжЁЁ;
Ydis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
аҐиҐвз в®© дг­ЄжЁЁ;
Yif - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
ў®ббв ­®ў«Ґ­­®© дг­ЄжЁЁ Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в.


5. ‘ЇЁб®Є Їа®жҐ¤га Є®¬Ї«ҐЄб 

1. FUNCTION GAUSS

Ќ §­ зҐ­ЁҐ
ѓҐ­Ґа жЁп ЇбҐў¤®б«гз ©­ле зЁбҐ« б ­®а¬ «м­л¬ (Ј гбб®ўл¬) а бЇаҐ¤Ґ«Ґ­ЁҐ¬.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
”г­ЄжЁп ЈҐ­ҐаЁагҐв ўҐйҐб⢥­­®Ґ ЇбҐў¤®б«гз ©­®Ґ зЁб«® б ­®а¬ «м­л¬
а бЇаҐ¤Ґ«Ґ­ЁҐ¬ б ¬ вҐ¬ вЁзҐбЄЁ¬ ®¦Ё¤ ­ЁҐ¬ M Ё б।­ҐЄў ¤а вЁзҐбЄЁ¬
®вЄ«®­Ґ­ЁҐ¬ S.

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
M - ¬ вҐ¬ вЁзҐбЄ®Ґ ®¦Ё¤ ­ЁҐ б«гз ©­®© ўҐ«ЁзЁ­л;
S - б।­ҐҐ Єў ¤а вЁз­®Ґ ®вЄ«®­Ґ­ЁҐ б«гз ©­®© ўҐ«ЁзЁ­л.

’ҐЄбв дг­ЄжЁЁ

FUNCTION GAUSS(M,S:real):real;
VAR
a,b,c,d:real;
BEGIN
repeat
a:=2*random-1;
b:=2*random-1;
c:=sqr(a)+sqr(b)
until c<1;
d:=sqrt((-2)*ln(c)/c);
GAUSS:=M+S*a*d
END;


2.PROCEDURE GF

Ќ §­ зҐ­ЁҐ
ѓҐ­Ґа жЁп ­ҐЇаҐалў­®© дг­ЄжЁЁ.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
Џа®жҐ¤га  ЈҐ­ҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго "­ҐЇаҐалў­го б«гз ©­го" дг­ЄжЁо Y
Їг⥬ б㬬Ёа®ў ­Ёп Є®­Ґз­®Ј® зЁб«  Ј а¬®­ЁЄ,  ¬Ї«Ёвг¤л Ё д §®ўлҐ гЈ«л
¤«п Є ¦¤®© Ё§ Є®в®але § ¤ овбп  ўв®¬ вЁзҐбЄЁ («ЁЎ® § Є®­®¬Ґа­®,«ЁЎ®
б«гз ©­®).‚лзЁб«Ґ­ЁҐ §­ зҐ­Ё© дг­ЄжЁЁ ®ЇаҐ¤Ґ«пҐвбп а冷¬ ”гамҐ.

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
K1 - Є«оз,®ЇаҐ¤Ґ«пойЁ© бЇ®б®Ў ®ЇаҐ¤Ґ«Ґ­Ёп  ¬Ї«Ёвг¤ Ё д §®ўле гЈ«®ў
Ј а¬®­ЁЄ:
K1=0 - б Ї®¬®ймо Ї а ¬Ґва®ў B1 Ё B2;
K1<>0 - б Ї®¬®ймо ¤ взЁЄ  ­®а¬ «м­®а бЇаҐ¤Ґ«Ґ­­ле зЁбҐ« Ё Ї а ¬Ґва®ў
Ma,Sa,Mp,Sp;
K2 - Є«оз,®ЇаҐ¤Ґ«пойЁ© ­Ґ®е®¤Ё¬®бвм Ја дЁЄ®Ј® ўлў®¤  Їа®жҐбб  ЈҐ­Ґа жЁЁ
дг­ЄжЁЁ:
K=0 - Ја дЁЄЁ дг­ЄжЁ© ­Ґ ўлў®¤пвбп;
K<>0 - Ја дЁЄЁ дг­ЄжЁ© ўлў®¤пвбп;
T - ЇҐаЁ®¤ дг­ЄжЁЁ;
W - з бв®в  ўлб襩 Ј а¬®­ЁЄЁ бЇҐЄва  дг­ЄжЁЁ (бЁЈ­ « );
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐ­Ґа жЁЁ Є®нддЁжЁҐ­в®ў ”гамҐ;
Ma - ¬ вҐ¬ вЁзҐбЄ®Ґ ®¦Ё¤ ­ЁҐ  ¬Ї«Ёвг¤ Ј а¬®­ЁЄ ап¤  ”гамҐ;
Sa - б।­ҐҐ Єў ¤а вЁз­®Ґ ®вЄ«®­Ґ­ЁҐ  ¬Ї«Ёвг¤ Ј а¬®­ЁЄ ап¤  ”гамҐ;
Mp - ¬ вҐ¬ вЁзҐбЄ®Ґ ®¦Ё¤ ­ЁҐ д §®ўле б¤ўЁЈ®ў Ј а¬®­ЁЄ ап¤  ”гамҐ;
Sp - б।­ҐҐ Єў ¤а вЁз­®Ґ ®вЄ«®­Ґ­ЁҐ д §®ўле б¤ўЁЈ®ў Ј а¬®­ЁЄ ап¤  ”гамҐ;
X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
G - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N,ᮤҐа¦ йЁ© §­ зҐ­Ёп
®зҐаҐ¤­®© б㬬Ёа㥬®© Ј а¬®­ЁЄЁ ап¤  ”гамҐ;
Y - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈ« ¦Ґ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;

’ҐЄбв Їа®жҐ¤гал

PROCEDURE GF(K1,K2:word;T,W,B1,B2,Ma,Sa,Mp,Sp:real;var X,Y,G:array of real);
CONST
S1='ђҐ§г«мвЁагой п дг­ЄжЁп.';
S2='‘㬬Ёа㥬 п Ј а¬®­ЁЄ .';
VAR
Gd,Gm:integer;
i,j,Xo,Yo:word;
a,p,wj,dx,dT,dF:real;
BEGIN
if K2<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
dx:=T/High(X);
X[0]:=0;for i:=1 to High(X) do X[i]:=X[i-1]+dx;
for i:=0 to High(X) do Y[i]:=0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
if K1=0
then begin a:=B1/j;p:=B2/j end
else begin a:=Gauss(Ma,Sa);p:=Gauss(Mp,Sp) end;
for i:=0 to High(X) do
begin
G[i]:=a*cos(wj*X[i]-p);
Y[i]:=Y[i]+G[i]
end;
if K2<>0 then ShowGra(1,0,X,Y,X,G,S1,S2,'');
inc(j);wj:=2*Pi*j/T
end;
if K2<>0 then CloseGraph
END;


3.PROCEDURE GKLF

Ќ §­ зҐ­ЁҐ
ѓҐ­Ґа жЁп Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
Џа®жҐ¤га  ЈҐ­ҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго Єгб®з­®-«Ё­Ґ©­го дг­ЄжЁо Yo.„«п нв®Ј®
Ї® д®а¬г«Ґ y=k*x+b ўлзЁб«пҐвбп §­ зҐ­Ёп «Ё­Ґ©­ле гз бвЄ®ў дг­ЄжЁЁ ­ 
Ё­вҐаў «Ґ ®в Ax[1] ¤® Ax[1]+T б и Ј®¬ T/(N-1).„«п ®ЇаҐ¤Ґ«Ґ­Ёп Є®нддЁжЁҐ­в®ў
k Ё b «Ё­Ґ©­ле гз бвЄ®ў ЁбЇ®«м§говбп Є®®а¤Ё­ вл Na в®зЄҐЄ ЇҐаҐЈЁЎ 
(ў ¬ ббЁўҐ Ax) Ё §­ зҐ­Ёп дг­ЄжЁЁ ў нвЁе в®зЄ е (ў ¬ ббЁўҐ Ay).

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
T - ЇҐаЁ®¤ дг­ЄжЁЁ;
Ax - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­­®© Na,ᮤҐа¦ йЁ© Є®®а¤Ё­ вл
в®зЄҐЄ ЇҐаҐЈЁЎ ;
Ay - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­­®© Na,ᮤҐа¦ йЁ© §­ зҐ­Ёп
дг­ЄжЁЁ ў в®зЄ е ЇҐаҐЈЁЎ ;
X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
Yo - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈҐ­ҐаЁа®ў ­­®© Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ.

‹®Є «м­лҐ ЇҐаҐ¬Ґ­­лҐ
i - ­®¬Ґа ®зҐаҐ¤­®Ј® ®вбзҐв ;
j - ­®¬Ґа ®зҐаҐ¤­®© в®зЄЁ ЇҐаҐЈЁЎ  Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ;
k - Є®нддЁжЁҐ­в ­ Є«®­  ®зҐаҐ¤­®Ј® гз бвЄ  Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ;
b - Ї®бв®п­­л© Є®нддЁжЁҐ­в ®зҐаҐ¤­®Ј® гз бвЄ  Єгб®з­®-«Ё­Ґ©­®© дг­ЄжЁЁ;
dx - Ё­вҐаў « ¬Ґ¦¤г б®бҐ¤­Ё¬Ё ®вбзҐв ¬Ё  аЈг¬Ґ­в .

’ҐЄбв Їа®жҐ¤гал

PROCEDURE GKLF(T:real;var Ax,Ay,X,Yo:array of real);
VAR
i,j:word;
k,b,dx:real;
BEGIN
dx:=T/High(X);
X[0]:=Ax[0];
Yo[0]:=Ay[0];
j:=0;
for i:=1 to High(X) do
begin
X[i]:=X[i-1]+dx;
if (j<High(Ax)) and (X[i]>=Ax[j+1]) then inc(j);
if j<High(Ax)
then k:=(Ay[j+1]-Ay[j])/(Ax[j+1]-Ax[j])
else k:=(Ay[0]-Ay[j])/(Ax[0]+T-Ax[j]);
b:=Ay[j]-k*Ax[j];
Yo[i]:=k*X[i]+b
end
END;


4.PROCEDURE FLF

Ќ §­ зҐ­ЁҐ
"‘Ј« ¦Ёў ­ЁҐ" ­ҐЇаҐалў­®© ЇҐаЁ®¤ЁзҐбЄ®© дг­ЄжЁЁ.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
‘ Ї®¬®ймо ЇаאַЈ® ЇаҐ®Ўа §®ў ­Ёп ”гамҐ Ї® Ё­д®а¬ жЁЁ ®Ў Ёб室­®©
ЇҐаЁ®¤ЁзҐбЄ®© дг­ЄжЁЁ ®ЇаҐ¤Ґ«повбп ”гамҐ-Є®нддЁжЁҐ­вл ¤«п ¬­®¦Ґбвў 
Ј а¬®­ЁЄ,®Ја ­ЁзҐ­­®Ј® з бв®в®© ­ҐЄ®в®а®© "ўлб襩" Ј а¬®­ЁЄЁ.
„ «ҐҐ б Ї®¬®ймо ап¤  ”гамҐ (®Ўа в­®Ј® ЇаҐ®Ўа §®ў ­Ёп) ®ЇаҐ¤Ґ«повбп
§­ зҐ­Ёп бЈ« ¦Ґ­­®© ­ҐЇаҐалў­®© дг­ЄжЁЁ Їг⥬ б㬬Ёа®ў ­Ёп §­ зҐ­Ё©
ўбҐе Ј а¬®­ЁЄ "®Ја ­ЁзҐ­­®Ј®" бЇҐЄва  бЈ« ¦Ґ­­®© дг­ЄжЁЁ.

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
W - з бв®в  б१  дг­ЄжЁЁ (з бв®в  "ўлб襩" Ј а¬®­ЁЄЁ);
T - ЇҐаЁ®¤ дг­ЄжЁЁ;
X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
Yo - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈҐ­ҐаЁа®ў ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;
Y - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈ« ¦Ґ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;

’ҐЄбв Їа®жҐ¤гал

PROCEDURE FLF(W,T:real;var X,Yo,Y:array of real);
VAR
i,j:word;
a0,a,b,wj,dx:real;
BEGIN
dx:=T/High(X);
a0:=0;for i:=0 to High(X) do a0:=a0+Yo[i]*dx;a0:=a0/T;
for i:=0 to High(X) do Y[i]:=a0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
a:=0;b:=0;
for i:=0 to High(X) do
begin
a:=a+Yo[i]*cos(wj*X[i])*dx;
b:=b+Yo[i]*sin(wj*X[i])*dx
end;
a:=2*a/T;b:=2*b/T;
for i:=0 to High(X) do
Y[i]:=Y[i]+a*cos(wj*X[i])+b*sin(wj*X[i]);
inc(j);wj:=2*Pi*j/T
end
END;


5.PROCEDURE DIS

Ќ §­ зҐ­ЁҐ
„ЁбЄаҐвЁ§ жЁп ­ҐЇаҐалў­®© дг­ЄжЁЁ.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
Џ®¤Їа®Ја ¬¬  ®бгйҐбвў«пҐв а ў­®¬Ґа­го (ўаҐ¬Ґ­­го) ¤ЁбЄаҐвЁ§ жЁо ­ҐЇаҐалў­®©
дг­ЄжЁЁ Їг⥬ ўлЎ®а  Ё§ ¬ ббЁў   аЈг¬Ґ­в®ў Ё §­ зҐ­Ё© нв®© дг­ЄжЁЁ
 аЈг¬Ґ­в®ў Ё §­ зҐ­Ё© ¤«п аҐиҐвз в®© дг­ЄжЁЁ.„«п нв®Ј® ўлзЁб«повбп ­®¬Ґа 
¤ЁбЄаҐв­ле ®вбзҐв®ў Ї® д®а¬г«Ґ :
j:=i+(M+1) ,Ј¤Ґ
j - ­®¬Ґа ®зҐаҐ¤­®Ј® ¤ЁбЄаҐв­®Ј® ®вбзҐв ;
i - ­®¬Ґа ЇаҐ¤л¤г饣® ¤ЁбЄаҐв­®Ј® ®вбзҐв ;
M - зЁб«® Їа®¬Ґ¦гв®з­ле ®вбзҐв®ў  аЈг¬Ґ­в  ¬Ґ¦¤г б®бҐ¤­Ё¬Ё
¤ЁбЄаҐв­л¬Ё ®вбзҐв ¬Ё.

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
M - зЁб«® Їа®¬Ґ¦гв®з­ле ®вбзҐв®ў  аЈг¬Ґ­в  ¬Ґ¦¤г б®бҐ¤­Ё¬Ё ¤ЁбЄаҐв­л¬Ё
®вбзҐв ¬Ё;
N - зЁб«® ўбҐе ®вбзҐв®ў  аЈг¬Ґ­в  ­  Ё­вҐаў «Ґ ®ЇаҐ¤Ґ«Ґ­Ёп дг­ЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐв­ле ®вбзҐв®ў  аЈг¬Ґ­в  ­  Ё­вҐаў «Ґ ®ЇаҐ¤Ґ«Ґ­Ёп дг­ЄжЁЁ;
X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
Y - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
бЈ« ¦Ґ­­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ;
Xdis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  ў ¤ЁбЄаҐв­ле ®вбзҐв е дг­ЄжЁЁ;
Ydis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
дг­ЄжЁЁ ў ¤ЁбЄаҐв­ле ®вбзҐв е;

’ҐЄбв Їа®жҐ¤гал

PROCEDURE DIS(M,N,Ndis:word;var X,Y,Xdis,Ydis:array of real);
VAR
i,j:word;
BEGIN
j:=0;
for i:=0 to Ndis-1 do
begin
Xdis[i]:=X[j];
Ydis[i]:=Y[j];
j:=j+M+1;if j>N-1 then j:=N-1
end
END;


6.PROCEDURE IDF

Ќ §­ зҐ­ЁҐ
‚®ббв ­®ў«Ґ­ЁҐ дг­ЄжЁЁ Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
Џ®¤Їа®Ја ¬¬  ®бгйҐбвў«пҐв ў®ббв ­®ў«Ґ­ЁҐ Ёб室­®© "­ҐЇаҐалў­®©" дг­ЄжЁЁ
Ї® §­ зҐ­Ёп¬ аҐиҐвз в®© дг­ЄжЁЁ Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в.
ЋзҐаҐ¤­лҐ §­ зҐ­Ёп ў®ббв ­ ў«Ёў Ґ¬®© дг­ЄжЁЁ ўлзЁб«повбп а冷¬
Љ®вҐ«м­ЁЄ®ў  :
Yif[i] = Yif[i]+Ydis[j]*sin(alfa)/alfa, Ј¤Ґ alfa:=Wif*(X[i]-Xdis[j]).
ЏаЁ §­ зҐ­Ёпе гЈ«  alfa ¬Ґ­миҐ Ї®а®Ј®ў®Ј®:
Yif[i] = Yif[i]+Ydis[j]
ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
K3 - Є«оз,®ЇаҐ¤Ґ«пойЁ© ­Ґ®е®¤Ё¬®бвм ўлў®¤  Ја дЁЄ®ў дг­ЄжЁ©:
K3=0 - Ја дЁЄЁ дг­ЄжЁ© ­Ґ ўлў®¤пвбп;
K3<>0 - Ја дЁЄЁ дг­ЄжЁ© ўлў®¤пвбп;
N - зЁб«® ўбҐе ®вбзҐв®ў  аЈг¬Ґ­в  ­  Ё­вҐаў «Ґ ®ЇаҐ¤Ґ«Ґ­Ёп дг­ЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐв­ле ®вбзҐв®ў  аЈг¬Ґ­в  ­  Ё­вҐаў «Ґ ®ЇаҐ¤Ґ«Ґ­Ёп дг­ЄжЁЁ;
Wif - "з бв®в  б१ " Ё¤Ґ «м­®Ј® дЁ«мва  ­Ё§ЄЁе з бв®в;
Xdis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  ў ¤ЁбЄаҐв­ле ®вбзҐв е дг­ЄжЁЁ;
Ydis - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© Ndis, ᮤҐа¦ йЁ© §­ зҐ­Ёп
дг­ЄжЁЁ ў ¤ЁбЄаҐв­ле ®вбзҐв е;
X - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
 аЈг¬Ґ­в  дг­ЄжЁЁ;
Yif - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N, ᮤҐа¦ йЁ© §­ зҐ­Ёп
ў®ббв ­®ў«Ґ­­®© дг­ЄжЁЁ Ё¤Ґ «м­л¬ дЁ«мв஬ ­Ё§ЄЁе з бв®в;
FO - ўҐйҐб⢥­­л© ®¤­®¬Ґа­л© ¬ ббЁў ¤«Ё­®© N,ᮤҐа¦ йЁ© §­ зҐ­Ёп
®зҐаҐ¤­®© б㬬Ёа㥬®© дг­ЄжЁЁ ®вбзҐв  ап¤  Љ®вҐ«м­ЁЄ®ў ;

’ҐЄбв Їа®жҐ¤гал

PROCEDURE IDF(K3,N,Ndis,:word;Wif:real;var Xdis,Ydis,X,Yif,FO:array of real);
VAR
i,j,Xo,Yo:word;
alfa,dT,dF:real;
Gd,Gm:integer;
CONST
S1='ђҐ§г«мвЁагой п дг­ЄжЁп.';
S2='‘㬬Ёа㥬 п дг­ЄжЁп ®вбзҐв .';
por=1e-10;
BEGIN
if K3<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
for i:=0 to N-1 do Yif[i]:=0;
for j:=0 to Ndis-1 do
begin
for i:=0 to N-1 do
begin
alfa:=Wif*(X[i]-Xdis[j]);
if abs(alfa)<por
then FO[i]:=Ydis[j]
else FO[i]:=Ydis[j]*sin(alfa)/alfa;
Yif[i]:=Yif[i]+FO[i]
end;
if K3<>0 then ShowGra(1,0,X,Yif,X,FO,S1,S2,'');
end;
if K3<>0 then CloseGraph
END;


7.PROCEDURE GRA

Ќ §­ зҐ­ЁҐ
ѓа дЁзҐбЄ®Ґ ®в®Ўа ¦Ґ­Ёп Ја дЁЄ®ў дг­ЄжЁ©.

Њ вҐ¬ вЁзҐбЄ®Ґ ®ЇЁб ­ЁҐ
Џа®жҐ¤га  гбв ­ ў«Ёў Ґв Ја дЁзҐбЄЁ© ०Ё¬ а Ў®вл Ё б Ї®¬®ймо
Їа®жҐ¤гал ShowGra ўлў®¤Ёв ­  ¤ЁбЇ«Ґ© Ја дЁЄЁ дг­ЄжЁ©.ЏҐаҐ¤
§ ўҐа襭ЁҐ¬ бў®Ґ© а Ў®вл Їа®жҐ¤га  § Єалў Ґв Ја дЁзҐбЄЁ© ०Ё¬.

ѓ«®Ў «м­лҐ ЇҐаҐ¬Ґ­­лҐ
K - Є«оз,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ўлў®¤  Ја дЁЄ®ў дг­ЄжЁ©:
K=1 - F1 Ё F2 ўлў®¤пвбп Є Є "­ҐЇаҐалў­лҐ" дг­ЄжЁЁ;
K=2 - дг­ЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"­ҐЇаҐалў­ п",F2-"аҐиҐвз в п";
K=3 - дг­ЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"­ҐЇаҐалў­ п",F2-"Єў ­в®ў ­­ п";
K=4 - F1 Ё F2 ўлў®¤пвбп Є Є "аҐиҐвз влҐ" дг­ЄжЁЁ;
K=5 - дг­ЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"­ҐЇаҐалў­ п",F2-"Єў ­в®ў ­­ п";
K=6 - F1 Ё F2 ўлў®¤пвбп Є Є "Єў ­в®ў ­­лҐ" дг­ЄжЁЁ;
E - Є«оз,®ЇаҐ¤Ґ«пойЁ© ­Ґ®Ў¤Ё¬®бвм ўлў®¤  Ја дЁЄ  а §­®бвЁ дг­ЄжЁ© F2-F1
(в®«мЄ® ў ०Ё¬ е K=1,K=3,K=6):
E=0 - Ја дЁЄ а §­®бвЁ дг­ЄжЁ© F2-F1 ­Ґ ўлў®¤Ёвбп;
E<>0 - Ја дЁЄ а §­®бвЁ дг­ЄжЁ© F2-F1 ўлў®¤Ёвбп;
T1 - ¬ ббЁў  аЈг¬Ґ­в®ў дг­ЄжЁЁ F1;
F1 - ¬ ббЁў §­ зҐ­Ё© ЇҐаў®© дг­ЄжЁЁ;
S1 - ­ §ў ­ЁҐ ЇҐаў®© дг­ЄжЁЁ;
T2 - ¬ ббЁў  аЈг¬Ґ­в®ў дг­ЄжЁЁ F2;
F2 - ¬ ббЁў §­ зҐ­Ё© ўв®а®© дг­ЄжЁЁ;
S2 - ­ §ў ­ЁҐ ўв®а®© дг­ЄжЁЁ;
S3 - ­ §ў ­ЁҐ а §­®бвЁ дг­ЄжЁ© F2-F1;

’ҐЄбв Їа®жҐ¤гал

TYPE S_60 =string[60];
PROCEDURE GRA(K,E:byte;var T1,F1,T2,F2:array of real;S1,S2,S3:S_60);
VAR
Xo,Yo:word;
dT,dF:real;
Gd,Gm:integer;
BEGIN
Gd:=0;InitGraph(Gd,Gm,F_bgi);
ShowGra(K,E,T1,F1,T2,F2,S1,S2,S3);
CloseGraph
END.
Соседние файлы в папке doc