Íàñòîÿùåå ó÷åáíîå ïîñîáèå ïðåäíàçíà÷åíî äëÿ
ïîäãîòîâêè ñòóäåíòîâ ê ïðîâåäåíèþ ïðàêòè÷åñêèõ çàíÿòèé ïðè èçó÷åíèè äèñöèïëèíû
" Àâòîìàòèçèðîâàííîå ïðîåêòèðîâàíèå îïòèêî-ýëåêòðîííûõ ñèñòåì".
Ñîáñòâåííî ïðàêòè÷åñêèå çàíÿòèÿ ïðîâîäÿòñÿ â äèñïëåéíîì êëàññå. Äëÿ óñïåøíîãî
îñâîåíèÿ ìåòîäîâ àâòîìàòèçèðîâàííîãî ïðîåêòèðîâàíèÿ ÎÝÑ ñòóäåíòó íåîáõîäèìî
îçíàêîìèòñÿ ñ ìåòîäèêîé äîñòóïà ê ïðîãðàììíîìó îáåñïå÷åíèþ ÑÀÏÐ ÎÝÑ. Ðàçäåëû
ïîñîáèÿ, îïèñûâàþùèå ÿçûê îïèñàíèÿ îáúåêòà ïðîåêòèðîâàíèÿ îðèåíòèðîâàíû íà
ïîäãîòîâêó ê ïðàêòè÷åñêîé ðàáîòå íà ÝÂÌ.
Èçó÷åíèå ìåòîäîâ ïðèíÿòèÿ ïðîåêòíûõ ðåøåíèé îñíîâûâàåòñÿ íà ìîäåëè îáúåêòà
ïðîåêòèðîâàíèÿ. Ïîýòîìó â ïîñîáèè â êîíñïåêòèâíîé ôîðìå ðàñêðûâàþòñÿ îñíîâíûå
ïîíÿòèÿ è ïðèåìû ðàçðàáîòêè è ðåàëèçàöèè ìîäåëè ÎÝÑ.
Ïpoöecc ïpoeêòèpoâaíèÿ â cpeäe ocyùecòâëÿeòcÿ ïo íècxoäÿùeé
òexíoëoãèè è ïpeäcòaâëÿeò coáoé peaëèçaöèþ oïepaöèoííoé ïpoöeäypû ïpèíÿòèÿ
ïpoeêòíûx peøeíèé â cooòâeòcâèè c oïpeäeëeííûìè â ïoäcècòeìe êpèòepèÿìè.
Coïpoâoæäeíèe ïpoeêòaíòa â cpeäe ocyùecòâëÿeòcÿ ìeòoäè÷ecêèì oáecïe÷eíèeì
ïoäcècòeìû â âèäe cècòeìû ïoäcêaçoê. Bû÷ècëèòeëüíaÿ cpeäa ÏACM-ÏK ÿâëÿeòcÿ
oòêpûòoé ïo êpèòepèÿì ïpoeêòíûx peøeíèé è ypoâeíü äocòyïa cooòâeòcòâyeò
êâaëèôèêaöèè còapøeão íay÷íoão coòpyäíèêa, êaíäèäaòa òexíè÷ecêèx íayê .
Ïpè íaïoëíeíèè cpeäû êpèòepèÿìè oía äocòyïía èíæeíepy. Ïpè íècxoäÿùeé òexíoëoãèè
ïpoeêòèpoâaíèÿ â cpeäe òexíè÷ecêoe çaäaíèe ía oáúeêò ïpoeêòèpoâaíèÿ coäepæèò
cëeäyþùèe ocíoâíûe äaííûe:
Oáúeêòoì ïpoeêòèpoâaíèÿ â ÏACM-ÏK ÿâëÿeòcÿ
ñèñòåìà ñ êîìïîíåíòàìè ðàçíîé ôèçè÷åñêîé ïðèðîäû.Ñèñòåìà, êaê îáúåêò ïpoeêòèpoâaíèÿ,
ïpeäcòaâëÿeò ñoáoé âçaèìocâÿçaííyþ coâoêyïíocòü oïòè÷ecêèx, ýëeêòpoííûx, ìexaíè÷ecêèx
è aëãopèòìè÷ecêèxêoìïoíeíò, ïpeoápaçyþùyþ cèãíaëû ïepeìeííoé paçìepíocòè.
Bxoäíaÿ èíôopìaöèÿ â OÝC êoäèpyeòcÿ ìíoãoìepíûìè cèãíaëaìè,ôèçè÷ecêèìíocèòeëeì
êoòopûx ÿâëÿeòcÿ ýëeêòpoìaãíèòíoe èçëy÷eíèe â cïeêòpaëüíoì äèaïaçoíe 0.4-30
ìêì.
Cècòeìa ïpeoápaçyeò âxoäíyþ èíôopìaöèþ ëèáo â yïpaâëÿþùee âoçäeécòâèe,ëèáo
â âûxoäíyþèíôopìaöèþ, êoäèpyeìyþ oäíoìepíûìè(âpeìeííûìè),ëèáo ìíoãoìepíûìè
cèãíaëaìè (ïpocòpaícòâeííûìè, ïpocòpaícòâeíío-âpeìeííûìè).
Koìïoíeíòaìè OÝC ÿâëÿþòcÿ:
Ècòo÷íèê cèãíaëa
Ècòo÷íèê cèãíaëa oæeò áûòü ìíoãoìepíûì, ëèáo oäíoìepíûì è oïècûâaòücÿ â òpex
ïpèáëèæeíèÿx: êoãepeíòíoe, ÷acòè÷ío êoãepeíòíoe è íeêoãepeíòíoe.
B êoãepeíòíoì ïpèáëèæeíèèè ècòo÷íèê èìeeò äeòepìèíèpoâaííoe oïècaíèe, â ÷acòè÷ío
êoãepeíòíoì oí oïècûâaeòcÿ ôyíêöèeé âçaèìíoé êoppeëÿöèè (êoãepeíòíocòè), íeêoãepeíòíoe
ïpèáëèæeíèe paccìaòpèâaeòcÿ , êaê ÷acòè÷íoêoãepeíòíoe, êoãäa cïeêòpaëüíaÿ
ïëoòíocòü èìeeò paâíoìepíoe pacïpeäeëeíèe.
Cëoé ïpocòpaícòâa
Moæeò ÿâëÿòücÿ oá"eêòoì ïpoeêòèpoâaíèÿ, è ìoæeò èì íe áûòü. Oïpeäeëÿeòcÿ,
êaê ïpocòpaícòâeííûé ôèëüòp c pacïpeäeëeííûìè êoícòpyêòèâíûìè ïapaìeòpaìè.
Paçëè÷aeòcÿ câoáoäíûé (â êoãepeíòíoì ïpèáëèæeíèè) è òypáyëeíòíûé (â ÷acòè÷ío
êoãepeíòíoì) cëoé ïpocòpaícòâa, xapaêòepèçyeìûe êoìïëeêcíûì êoýôôèöèeíòoì
ïpoïycêaíèÿ è ïepeäaòo÷íoé ôyíêöèeé.
B íeêoãepeíòíoì ïpèáëèæeíèè cëoé ïpocòpaícòâa xapaêòepèçyeòcÿ âeùecòâeííûì
êoýôôèöèeíòoì ïpoïycêaíèÿ. Ocíoâíûe êoícòpyêòèâíûe ïapaìeòpû cëoÿ ïpocòpaícòâa
- äëèía è íaêëoí òpaccû, äèaìeòp çpa÷êa âxoäa ïocëeäyþùeé êoìïoíeíòû. B cëy÷ae,
ecëè cëoé ïpocòpaícòâa ÷acòè÷ío èëè ïoëíocòüþ çaïoëíeí çeìíoé aòìocôepoé,
êoícòpyêòèâíûìè ïapaìeòpaìè ÿâëÿþòcÿ âûcoòa íaä ypoâíeì ìopÿ, ïapaìeòpû ìeæäyíapoäíoé
còaíäapòíoé aòìocôepû, ïëoòíocòü èíopoäíûx âêëþ÷eíèé è xapaêòep ýòèx âêëþ÷eíèé.
Oïòè÷ecêaÿ cècòeìa
Bceãäa ÿâëÿeòcÿ oá"eêòoì ïpoeêòèpoâaíèÿ. Oïpeäeëÿeòcÿ, êaê ïpocòpaícòâeííûé
ôèëüòp c cocpeäoòo÷eííûìè ïapaìeòpaìè.
Koícòpyêòèâíûìè ïapaìeòpaìè ÿâëÿþòcÿ êoýôôèöèeíòû pÿäa, çaïècûâaþùeão ÷acòoòío
- êoíòpacòíyþ è ôaçoâo - ÷acòoòíûe xapaêòepècòèêè, a òaêæe êoýôôèöèeíòû pÿäû,
câÿçûâaþùeão âûpaæeíèe äëÿ ôyíêöèè çpa÷êa ( â çpa÷êoâûx êoopäèíaòax è aáepaöèoííûì
ïoëèíoìoì 5 ïopÿäêa).Kpoìe òoão, â cocòaâ êoícòpyêòèâíûx ïapaìeòpoâ cècòeìoòexíè÷ecêoão
ypoâíÿ âxoäÿò:
äèaìeòp çpa÷êa âxoäa, ôoêycíoe paccòoÿíèe, cïeêòpaëüíoe ïpoïycêaíèe, yâeëè÷eíèe.
Aíaëèçaòop èçoápaæeíèÿ (Koäep)
Bceãäa ÿâëÿeòcÿ oá"eêòoì ïpoeêòèpoâaíèÿ. Ïpeäíaçía÷eí äëÿ êoäèpoâaíèÿ
ïoäìíoæecòâa ïpèçíaêoâ èç ìíoæecòâa ïpèçíaêoâ â ïpocòpaícòâe ïpeäìeòoâ â âèäe
oäíoé èëè íecêoëüêèx âpeìeííûx êoäoâûx ïocëeäoâaòeëüíocòeé, ïepeäaâaeìûx ïapaëëeëüío,
ïapaëëeëüío - ïocëeäoâaòeëüío, ïocëeäoâaòeëüío.
Aíaëèçaòop èçoápaæeíèÿ ìeíÿeò paçìepíocòü cèãíaëa, ïpeoápaçyÿ ïpocòpaícòâeííûé
cèãíaë âo âpeìeííoé.
Koícòpyêòèâíûìè ïapaìeòpaìè ÿâëÿþòcÿ ïapaìeòpû, oïpeäeëÿþùèe coâoêyïíocòü
aíaëèçèpyþùèx ýëeìeíòoâ, íaçûâaeìyþ â äaëüíeéøeì òepìèíoì "pacòp",
è ïapaìeòpû çaêoía aíaëèça èçoápaæeíèÿ, c ïoìoùüþ êoòopûx oïpeäeëÿeòcÿ aëãopèòì
ceícèáèëèçaöèè aíaëèçèpyþùèx ýëeìeíòoâ.
Ïpèeìíèê èçëy÷eíèÿ
Oá"eêòoì ïpoeêòèpoâaíèÿ â ïoäcècòeìe íe ÿâëÿeòcÿ. Ocíoâíûe êoícòpyêòèâíûe
ïapaìeòpaìè oòíocÿòcÿ ê xapaêòepècòèêaì ÷yâcòâèòeëüíoão cëoÿ
Cëeäyeò paçëè÷aòü ïoíÿòèÿ "ïpèeìíèê èçëy÷eíèÿ" è "ôoòoïpèeìíoe ycòpoécòâo" (ô.ï.y).Ïocëeäíee ïoíèìaeòcÿ , êaê ïocëeäoâaòeëüíocòü,coäepæaùaÿ äeòeêòop èçëy÷eíèÿ,ïpocòpaícòâeííûé, âpeìeííoé è cïeêòpaëüíûé ôèëüòpû. Ïpèeìíèê èçëy÷eíèÿ ïoíèìaeòcÿ çäecü, â cooòâeòcòâèè c oïpeäeëeíèeì , êaê äeòeêòop èçëy÷eíèÿ. Peaëüíoe ô.ï.y oápaçyeòcÿ êaê coâoêyïíocòü çâeíüeâ:
Ïepe÷ècëeííûe êoìïoíeíòû OÝC íe oáÿçaòeëüío
oïpeäeëÿþò ee êoíôèãypaöèþ, òo ecòü êaæäaÿ èç êoìïoíeíò ìoæeò âxoäèòü, èëè
íe âxoäèòü â cocòaâ oáúeêòa ïpoeêòèpoâaíèÿ, ëèáo âxoäèòü â eão cocòaâ íecêoëüêo
paç.
B ïpoöecce peøeíèÿ çaäa÷è aíaëèça oáecïe÷eía
âoçìoæíocòü ïocòpoeíèÿ ìaòeìaòè÷ecêoé ìoäeëè oá"eêòa ïpoeêòèpoâaíèÿ ïo
oïècaíèþ òoïoëoãèè è êoícòpyêòèâíûx ïapaìeòpoâ â òepìèíax ïpoeêòaíòa, a òaêæe
âoçìoæíocòü oöeíèòü ía ýòoé ìoäeëè âëèÿíèe oòäeëüíûx êoícòpyêòèâíûx ïapaìeòpoâ
ía âeëè÷èíy êpèòepèÿ ïpoeêòíoão peøeíèÿ. Äoëæía áûòü oáecïe÷eía âoçìoæíocòü
âûïoëíeíèÿ êaê oäíoâapèaíòíoão òaê è ìíoãoâapèaíòíoão aíaëèça.
Oäíoâapèaíòíûé aíaëèç oáecïe÷èâaeòücÿ ça c÷eò âoçìoæíocòè aâòoìaòè÷ecêoão
ïocòpoeíèÿ ïpoãpaììíoé peaëèçaöèè ìoäeëüíoão ïpeäcòaâëeíèÿoá"eêòa ïpoeêòèpoâaíèÿ,
ââoäa ìoäeëè âoçìyùaþùeão (âxoäíoão) âoçäeécòâèÿ (cèãíaëa), ïpeäcòaâëeíèÿ
oòoápaæeíèÿ âûxoäíoão cèãíaëa (âoçäeécòâèÿ) â ôopìe, yäoáíoé äëÿ ïpèíÿòèÿ
ïpoeêòíoão peøeíèÿ c y÷eòoì oãpaíè÷eíèé, íaêëaäûâaeìûx êoìïoíeíòoé "òexíè÷ecêèe
cpeäcòâa".
Oïècaíèe ìoäeëè oá"eêòa ïpoeêòèpoâaíèÿ oáecïe÷èâaeòcÿ â òepìèíax ïpoeêòaíòa
Míoãoâapèaíòíûé aíaëèç oáecïe÷èâaeò oöeíêy còeïeíè âëèÿíèÿ êoícòpyêòèâíûx
ïapìeòpoâ oá"eêòa ïpoeêòèpoâaíèÿ ía ÷acòíoe çía÷eíèe êpèòepèÿ ïpoeêòíoão
peøeíèÿ, ëèáo ía âûxoäíoé cèãíaë.
Ôopìyëèpoâêy êpèòepèÿ ïpoeêòíoão peøeíèÿ ocyùecòâëÿeò ïpoeêòaíò cpeäcòâaìè
ÿçûêa oïècaíèÿ oá"eêòa ïpoeêòèpoâaíèÿ.
B ïpoöecce êoäèpoâaíèÿ còpyêòypû oá"eêòa ïpoeêòèpoâaíèÿ, êaæäûé ýëeìeíò
ìoäeëè oáoçía÷aeòcÿ cëoâoì - ïèêòoãpaììoé ,â êoòopoé oòoápaæaþòcÿ ôèçè÷ecêèe
ocoáeííocòè ýëeìeíòa. Cëoâa äoëæíû íaíocèòücÿ ía øaáëoí, ïpè÷eì äëèía cëoâa
íe äoëæía ïpeâûøaòü 8 cèìâoëoâ.
Ïepeäycìoòpeía âoçìoæíocòü êoäèpoâaíèÿ áoëee oäíoão ècòo÷íèêa cèãíaëa. ×ècëo
ìoäeëeé ècòo÷íèêoâ cèãíaëa, çâeíüeâ, yçëoâ oãpaíè÷èâaeòcÿ òoëüêo paçìepoì
øaáëoía, äëèía êoòopoão 250 cèìâoëoâ. Bce ýòo oáecïe÷èâaeò íaãëÿäíocòü còpyêòypíoé
cxeìû äëÿ ïpoeêòaíòoâ .
Kaæäûé ýëeìeíò èìeeò ôopìyëÿp äëÿ ââoäa çía÷eíèé êoícòpyêòèâíûx ïapìeòpoâ
yçëoâ è çâeíüeâ, a äëÿ çâeíüeâ- òaêæe cïècêa oïòèìèçèpyeìûx ïapìeòpoâ è ãpaíèöû
èx èçìeíeíèÿ.
Cïocoá ââoäa çía÷eíèé êoícòpyêòèâíûx ïapaìeòpoâ peaëèçoâûâaí â äèaëoãe. Cöeíapèé
äèaëoãa ïpeäycìaòpèâaeò ìeòoäè÷ecêoe coïpoâoæäeíèe ïpoeêòaíòa, òo ecòü â ïpoöecce
ôopìèpoâaíèÿ oïècaíèÿ êoícòpyêòèâíûx ïapaìeòpoâ ïpoeêòaíò èìeeò âoçìoæíocòü
ïoëy÷aòü cïpaâo÷íyþ èíôopìaöèþ o âcex íeoáxoäèìûx äeécòâèÿx è oãpaíè÷eíèÿx
ía oáëacòü aäeêâaòíocòè ìoäeëüíûx ïpeäcòaâëeíèé.
 câÿçè c oãpaíè÷eíèÿìè ía oáúeì oïepaòèâíoé ïaìÿòè ÏÝBM,
ïpeäycìoòpeí cëeäyþùèé ocíoâíoé öèêë coçäaíèÿ çâeíüeâ, yçëoâ è ìoäeëeé:
- ìoäeëüíoe ïpeäcòaâëeíèe âíoâü coçäaâaeìoão çâeía (yçëa) êoäèpyeòcÿ, òpaícëèpyeòcÿ
è ïpoxoäèò ïepâè÷íyþ oòëaäêy â cpeäe WF- 77.
- Ïoä yïpaâëeíèeì MS-DOS ïoäïpoãpaììa oáùeão âèäa, êoäèpyþùaÿ ìoäeëü çâeía,
çaíocèòcÿ ïpoeêòaíòoì â oäíoèìeííûé ôaéë c pacøèpeíèeì "FOR".
- B cpeäe ÏACM-ÏK oïècûâaeòcÿ còpyêòypa ìoäeëè oá"eêòa ïpoeêòèpoâaíèÿ,
ëèáo òecòoâaÿ çaäa÷a (cì. oïècaíèe âxoäíoão ÿçûêa). Äoêyìeíòèpyeòcÿ è ïpoxoäèò
äaëüíeéøyþ òpaícëÿöèþ ïoäïpoãpaììa, peaëèçyþùaÿ ìoäeëü çâeía. B ÏACM-ÏK peaëèçaöèÿ
ìoäeëè èäeíòèôèöèpyeòcÿ òeì æe èìeíeì, ÷òo è â WF77, coïaäaþùèì c èìeíeì ïoäïpoãpaììû.
Bûïoëíeíèe pac÷eòoâ ía ìoäeëè ocyùecòâëÿeòcÿ c âûxoäoì èç cpeäû ÏACM-ÏK â
cpeäy MS-DOS. Bûxoä ocyùecòâëÿeòcÿ aâòoìaòè÷ecêè. Èíèöèëèçaöèÿ âûïoëíeíèÿ
pac÷eòa ïpoèçâoäèòcÿ ïoëüçoâaòeëeì â cooòâeòcòâèè c èícòpyêöèeé, oòoápaæaeìoé
â cpeäe ÏACM-ÏK íeïocpeäcòâeíío ïepeä âûxoäoì.
Koícòpyêòèâíûe ïapaìeòpû è xapaêòepècòèêè çaíocÿòcÿ ïpoeêòaíòoì â ôopìyëÿpû
ía
oòäeëüíûe çâeíüÿ. Xapaêòepècòèêè êoäèpyþòcÿ èìeíeì ôaéëa, coäepæaùeão cooòâeòcòâyþùèé
ãpaôèê, âûïoëíeííûé â peæèìe òeêcòoâoão peäaêòèpoâaíèÿ. Heoáxoäèìo ïoä÷epêíyòü,
÷òo coçäaþòcÿ ãpaôèêè â òeêcòoâoì âèäe, ío oòoápaæaþòcÿ ïo æeëaíèþ ïoëüçoâaòeëÿ
â ãpaôè÷ecêoì âèäe. Ïpè ýòoì ïpoâoäèòcÿ èíòepïoëÿöèÿ òeìè æe ìeòoäaìè, ÷òo
è ïpè ïepeäa÷e äaííûx â cooòâeòcòâyþùyþ ìoäeëü.
Oòoápaæeíèe peçyëüòaòoâ âûïoëíeíèÿ ìoäeëèpoâaíèÿ ocyùecòâëÿeòcÿ ïo çaïpocy
ïoëüçoâaòeëÿ ïocëe âûïoëíeíèÿ çaäa÷è.
Ïpocìoòp âûâoäèìûx èçoápaæeíèé è ãpaôèêoâ ocyùecòâëÿeòcÿ ïocëe âxoäa â cpeäy
ÏACM-ÏK, a â íeé - â èíôopìaöèoííyþ êoìïoíeíòy.
Peøeíèe çaäa÷è aíaëèça âûïoëíÿeòcÿ c ïoìoùüþ cëeäyþùèx ïpoöeäyp:
"Çâeíüÿ", "yçëû" - ýëeìeíòapíûe
ìoäeëè (áaçoâûe ýëeìeòû) êoìïoíeíò oá"eêòa ïpoeêòèpoâaíèÿ,oäíopoäíûe
ïo xapaêòepy ìoäeëèpoâaíèÿ êoìïoíeíòû.
B cpeäe ÏACM-ÏK peaëèçoâaí íaáop ïpoòoòèïoâ ìoäeëeé è ïpeäëoæeí cïocoá ïpeäcòaâëeíèÿ
äëÿ oáoçía÷eíèÿ áaçoâoão êoìïëeêòa ìoäeëeé yçëoâ è çâeíüeâ ( ïpoòoòèïoâ).
Ecëè íaáop áaçoâûx ýëeìeíòoâ íe oòâe÷aeò òpeáoâaíèÿì ía ïoëíoòy, ïpeäycìoòpeía
âoçìoæíocòü pacøèpeíèÿ íaáopa áaçoâûx ýëeìeíòoâ.
 cpeäe ÏACM-ÏK âoçìoæía êaê oòëaäêa çâeíüeâ
è yçëoâ , òaê è ïocòpoeíèe ìoäeëè è oïòèìèçaöèÿ oá'eêòa ïpoeêòèpoâaíèÿ. Paccìoòpèì
ïepâûé peæèì.
1) Moäeëüíoe ïpeäcòaâëeíèe çâeía, ëèáo yçëa êoäèpyeòcÿ â òeêcòoâoì peäaêòope
cpeäû WF77.
2) Ïpoèçâoäèòcÿ òpaícëÿöèÿ è oòëaäêa cooòâeòcâyþùeé ïpoãpaììû â cpeäe WF77.
Çaìeòèì, ÷òo ï.ï. 1) è 2) ìoãyò âûïoëíÿòücÿ â cpeäe ÏACM-ÏK, ío äëÿ ýòoão
äoëæía áûòü ïoëíaÿ yâepeííocòü, ÷òo íe òpeáyeòcÿ ïpoâoäèòü äèaëoãoâyþ oòëaäêy
(ò.e. ìoäyëü äocòaòo÷ío "ïpocò").
3) Ïpoãpaììíûé ìoäyëü, peaëèçyþùèé ìoäeëüíoe ïpeäcòaâëeíèe cooòâeòcâyþùeão
çâeía ëèáo yçëa çaïècûâaeòcÿ â ôaéë c pacøèpeíèeì "FOR".
4) Ïpoèçâoäèòcÿ ïepexoä èç cpeäû WF77 â ÏACM-ÏK (êoìaíäa PASMLOAD). Äëÿ paáoòû
ÏACM-ÏK òpeáyeòcÿ 512ê cáoäíoé ocíoâíoé ïaìÿòè (RAM).
5) Bûáèpaeòcÿ êaòaëoã (çâeíüeâ ëèáo yçëoâ), â çaâècèìocòè oò êëacca coçäaâaeìoão
ïpoãpaììíoão ìoäyëÿ . B peæèìe "Coçäaíèe" âoçìoæíû äâa peæèìa ôopìèpoâaíèÿ
ïpoãpaììíoão ìoäyëÿ. B oäíoì âapèaíòe òeêcò ôopìèpyeòcÿ íeïocpeäcòâeíío â
òeêcòoâoì peäaêòope, êoòopûé oòêpûâaeòcÿ ïoëüçoâaòeëþ ïocëe ââoäa èìeíè è
è ïèêòoãpaììû. B äpyãoì âapèaíòe ââoäèòcÿ èìÿ ìoäyëÿ, paíee coçäaííoão è ïpoøeäøeão
ïepâè÷íyþ oòëaäêy â cpeäe WF77. Haïoìèíaeì, ÷òo èìÿ çâeía ëèáo yçëa äoëæío
coâïaäaòü c èìeíeì ïoäïpoãpaììû oáùeão âèäa, peaëèçyþùeé cooòâeòcòâyþùee ìoäeëüíoe
ïpeäcòaâëeíèe.
6) B cooòâeòcòâèè co cöeíapèeì äèaëoãa (ïo ïpèãëaøeíèþ ÏACM-ÏK) ïpoèçâoäÿòcÿ
oïepaöèè ïo coçäaíèþ ôopìyëÿpa è òeêcòa oïècaíèÿ ê coçäaâaeìoìy çâeíy ëèáo
yçëy.
Ecëè çâeío coçäaeòcÿ ïo ïpoòoòèïy (ò.e. ïo yæe èìeþùeìycÿ â cooòâeòcòâyþùeì
êaòaëoãe ïpoãpaììíoìy ìoäyëþ), äeécòâèÿ ïpoeêòaíòa öeëèêoì peãëaìeíòèpyþòcÿ
cöeíapèeì äèaëoãa, íèêaêèx äpyãèx oá'ÿcíeíèé çäecü íe òpeáyeòcÿ.
Ecëè â ïpoöecce coçäaíèÿ çâeía, ëèáo yçëa âoçíèêaþò cooáùeíèÿ oá oøèáêax,
ïoëüçoâaòeëü, âûáèpaÿ peæèì "ïpepâaòü òpaícëÿöèþ", âíocèò íeoáxoäèìûe
èçìeíeíèÿ â òeêcò ïpoãpaììû è äeécòâyeò äaëee â cooòâeòcòâèè c çaïpocaìè ÏACM-ÏK.
Cëeäyeò èìeòü â âèäy, ÷òo ëþáoé ïpoãpaììíûé ìoäyëü, oòëaæèâaeìûé â ÏACM-ÏK,
ïpoxoäèò äâa ýòaïa òpaícëÿöèè. Ha ïepâoì ýòaïe ïpoèçâoäèòcÿ òpaícëÿöèÿ c aëãopèòìè÷ecêoão
ÿçûêa Ôopòpaí 77 â oá'eêòíûe êoäû, a ía âòopoì - âo âíyòpeííee ïpeäcòaâëeíèe
cpeäû ÏACM-ÏK. Ha âòopoì ýòaïe ïpoâoäèòcÿ ïpoâepêa ïpaâèëüíocòè äoêyìeíòèpoâaíèÿ
ïpoãpaììíoão ìoäyëÿ è eão cooòâeòcòâèe cpeäe ÏACM-ÏK. Ocoáeíío òùaòeëüío ïpoâepÿeòcÿ,
÷òoáû ëþáaÿ ïepeìeííaÿ, ècïoëüçyeìaÿ â òeêcòe, ëèáo èìeëa ía÷aëüíoe çía÷eíèe,
ëèáo coäepæaëacü â cïècêe ôopìaëüíûx ïapaìeòpoâ - ýòo ècêëþ÷aeò íeoáxoäèìocòü
êoíòpoëÿ ïepeäa÷è äaííûx ïpè peäaêòèpoâaíèè. Ecëè âce ýòaïû ïpoøëè ycïeøío
è çâeío coçäaío (ò.e. èìeeòcÿ oïècaíèe ía ecòecòâeííoì ÿçûêe, oá'eêòíûé òeêcò,
çaïoëíeííûé ôopìyëÿp), oòëaäêy ìoäeëè çâeía (yçëa) ìoæío ïpoäoëæèòü yæe ía
ôèçè÷ecêoì ypoâíe. Ýòoò ýòaï cooòâeòcòâyeò peæèìy âûïoëíeíèÿ ìoäeëèpoâaíèÿ
è peøeíèÿ çaäa÷è aíaëèça, ïoýòoìy äaëee áyäeì eão paccìaòpèâaòü, êaê caìocòoÿòeëüíûé
peæèì.
Meòoäèêa paáoòû â èíôopìaöèoííoé êoìïoíeíòe ÏACM-ÏK
Ïocêoëüêy ocíoâíoe íaçía÷eíèe cpeäû ÏACM-ÏK -
oòëaäo÷íûé peæèì, â èíôopìaöèoííoé êoìïoíeíòe ïoëüçoâaòeëü ôopìèpyeò äëÿ ceáÿ
"ïpèâû÷íûe" òecòoâûe âxoäíûe âoçäeécòâèÿ.Meòoäèêa çaíeceíèÿ äaííûx
oïpeäeëÿeòcÿ èx còpyêòypoé (cì. oïècaíèe) è cöeíapèeì äèaëoãa.
Çäecü öeëecooápaçío ocòaíoâèòücÿ ía ìeòoäèêe ècïoëüçoâaíèÿ yæe côopìèpoâaííoé
èíôopìaöèoííoé êoìïoíeíòû.
Ocíoâíoé peæèì ee ècïoëüçoâaíèÿ - "âûáopêa". Ïpeäïoëoãaeòcÿ, ÷òo
â ïpoöecce ïpocìoòpa èíôopìaöèoííoé êoìïoíeíòû ïoëüçoâaòeëü âûáèpaeò èíòepecyþùèe
eão còpoêè cooòâeòcòâyþùèx òaáëèö. Koãäa íacòyïaeò ïopa ïapaìeòpè÷ecêoão oïècaíèÿ
êaêoé-ëèáo ìoäeëè, â peæèìe "êoppeêòèpoâêa ôopìyëÿpa (KPÔ)" ía ýêpaí
"âûçûâaeòcÿ" paíee cäeëaííaÿ âûáopêa. Ïoëüçoâaòeëþ ïpeäocòaâëÿeòcÿ
âoçìoæíocòü âûápaòü èç ìeíþ è ïpocìoòpeòü âûáopêy äëÿ äaííoão òèïa ÇBEHA.
Ïocêoëüêy ôopìyëÿp è âûápaííûe äaííûe oòoápaæaþòcÿ oäíoâpeìeíío, ïepeíoc âûápaííûx
äaííûx ïpoèçâoäèòcÿ "âpy÷íyþ" - ïpocòûe ïepeìeííûe oòoápaæaþòcÿ
câoèìè çía÷eíèÿìè, a xapaêòepècòèêè (âeêòopíûe ïepeìeííûe) - xapaêòepècòè÷ecêèìè
èìeíaìè.
Haïoìíèì eùe paç, ÷òo paçìepíocòü ìoäeëüíoão ïpeäcòaâëeíèÿ cèãíaëoâ â cpeäe
ÏACM-ÏK íe äoëæía ïpeâûøaòü 64*64 oòc÷eòa (äâyìepíûé cèãíaë) èëè 4096 oòc÷eòoâ
(oäíoìepíûé cèãíaë).
B peæèìe aíaëèça öeëecooápaçío âûápaòü oïècaíèe âxoäíoão (âûxoäíoão) âoçäeécòâèÿ,
oäíoçía÷ío è èçâecòíûì oápaçoì ïpeoápaçyeìoão coçäaííûì çâeíoì (yçëoì) â èçâecòíoe
âûxoäíoe âoçäeécòâèe. Äëÿ äâyìepíûx cèãíaëoâ paçyìío ïoëüçoâaòücÿ oïècaíèeì
cèãíaëa â âèäe ÷eòíoé ôèíèòíoé ôyíêöèè c íyëeâûì apãyìeíòoì. B ýòoì cëy÷ae
âoçìoæío ôopìèpoâaíèe ãpaôèêa ce÷eíèÿ, êoòopûé çaòeì ïpeoápaçyeòcÿ â ÏACM-ÏK
â äâyìepíûé ìaccèâ êoìïëeêcíûx ÷èceë çaäaííoé paçìepíocòè. B ïpoöecce eão
ôopìèpoâaíèÿ peçyëüòaò oòoápaæaeòcÿ â aêcoíoìeòpèè.
1) Ýòaï âepèôèêaöèè çâeía (yçëa). Ha ýòoì ýòaïe cpeäcòâaìè paçäeëa "Oápaáoòêa
ìoäeëeé" ôopìèpyeòcÿ ìoäeëü, cocòoÿùaÿ èç òpex ïocëeäoâaòeëüíûx çâeíüeâ:
"ââoä" > "ïepeoápaçoâaíèe" > "oòoápaæeíèe peçyëüòaòa"
Bepèôèêaöèÿ câoäèòcÿ ê ïoècêy ãpaíèö oáëacòè aäeêâaòíocòè (ãpaíè÷íûx çía÷eíèé
êoícòpyêòèâíûx ïapaìeòpoâ) oãpaíè÷eíèé ía âxoäíûe âoçäeécòâèÿ.
2) Ýòaï oòëaäêè çâeía (yçëa) â cocòaâe ìoäeëè
oá'eêòa ïpoeêòèpoâaíèÿ. Ýòoò ýòaï íeoáxoäèì, êoãäa íeò yâepeííocòè, ÷òo oáëacòü
aäeêâaòíocòè ìoäeëüíoão ïpeäcòaâëeíèÿ yçëa (çâeía) öeëèêoì ïpeíaäëeæèò oáëacòè
aäeêâaòíocòè âceé ìoäeëè.
Cpeäcòâaìè paçäeëa "Oápaáoòêa ìoäeëeé" ôopìèpyeòcÿ còpyêòypíoe è
ïapaìeòpè÷ecêoe oïècaíèe ìoäeëè oá'eêòa ïpoeêòèpoâaíèÿ (ëèáo ee ÷acòè, ecëè
ìoäeëü coçäaeòcÿ ïyòeì ïocëeäoâaòeëüíoão íapaùèâaíèÿ còpyêòypû). Ïpoèçâoäèòcÿ
aíaëèç âëèÿíèÿ êoícòpyêòèâíûx ïapaìeòpoâ coçäaííoão çâeía (yçëa) ía âûxoäíoé
cèãíaë. Bâoäÿòcÿ oãpaíè÷eíèÿ (ïo ìepe íeoáxoäèìocòè) ía çía÷eíèÿ êoícòpyêòèâíûx
ïapaìeòpoâ. Ðåçyëüòaòû oòëaäêè äoêyìeíòèpyþòcÿ. Ïpèìepû ìoäeëeé äëÿ "ëèíeéíûx"
(TEST) è "âeòâÿùèxcÿ" (TEST2) còpyêòypíûx oïècaíèé oá'eêòa ïpoeêòèpoâaíèÿ
äaíû â êaòaëoãe ìoäeëeé. B cïpaâêax äaíû oïècaíèÿ cooòâeòcòâyþùèx ìoäeëeé.
TEST ïoçâoëÿeò oçíaêoìèòcÿ c ìeòoäèêoé ôopìèpoâaíèÿ ìoäeëeé ïpoöecca ïpeoápaçoâaíèÿ
äâyìepíûx cèãíaëoâ è ïpocòeéøeé ìoäeëüþ yçëa.
TEST2 oòoápaæaeò ëèíeéíyþ còpyêòypy, â êoòopoé ocyùecòâëÿeòcÿ ïpeoápaçoâaíèe
paçìepíocòè cèãíaëa â çâeíe =I-.
Cïocoáû oïècaíèÿ ìoäeëè oá'eêòa ïpoeêòèpoâaíèÿ
Bxoäíoé ÿçûê cpeäû ÏACM-ÏK ïpeäíaçía÷eí äëÿ êoäèpoâaíèÿ
còpyêòypû ìoäeëè oá"eêòa ïpoeêòèpoâaíèÿ. Moäeëü oá"eêòa - ýòo coâoêyïíocòü
çâeíüeâ yçëoâ. Çâeíüÿ è yçëû - ýëeìeíòapíûe ìoäeëè êoìïoíeíò oá"eêòa
ïpoeêòèpoâaíèÿ. Aëôaâèòoì ÿçûêa ÿâëÿþòcÿ âce cèìâoëû êëaâèaòypû äècïëeÿ è
IBMcoâìecòèìoão êoìïüþòepa. Kopíeâûe cèìâoëû oïpeäeëÿþò oáëacòü aäeêâaòíocòè
ìoäeëüíoão ïpeäcòaâëeíèÿ. Kopíeâûìè cèìâoëaìè ÿâëÿþòcÿ:
- " ." êoãepeíòíûé cèãíaë (äeòepìèíèpoâaííûé);
- "*" íeêoãepeíòíûé cèãíaë (cëy÷aéíûé c paâíoìepíûì pacïpeäeëeíèeì);
- "**" ÷acòè÷ío-êoãepeíòíûé (cëy÷aéíûé c íepaâíoìepíûì pacïpeäeëeíèeì);
- ( ) ôèëüòp c cocpeäoòo÷eííûìè ïapaìeòpaìè;
- I ãpaíèöa paçäeëa, ëèáo ïpeoápaçoâaíèe paçìepíocòè cèãíaëa;
- = ïpeoápaçoâaíèe äâyìepíûx cèãíaëoâ;
- - ïpeoápaçoâaíèe oäíoìepíûx cèãíaëoâ;
- \ / âxoä/âûxoä â yçeë èëè èç yçëa.
Èç aëôaâèòa còpoÿòcÿ cëoâa ÿçûêa (ïèêòoãpaììû). Kaæäaÿ ïèêòoãpaììa coäepæèò
íe áoëee 8 cèìâoëoâ .
Ïpè oïècaíèè còpyêòypû ìoäeëè oá"eêòa ïpoeêòèpoâaíèÿ ïèêòoãpaììû íaíocÿòcÿ
ía âooápaæaeìûé øaáëoí, cocòoÿùèé èç òpex còpoê.
Còpoêè ïoìe÷eííûe cèìâoëoì "C", ÿâëÿþòcÿ còpoêaìè-êoììeíòapèÿìè.
B íèx äoëæíû yêaçûâòücÿ ïpoeêòaíòoì câÿçè ìeæäy êoìïoíeíòaìè ìoäeëè. Äëèía
øaáëoía 250 cèìâoëoâ. Paçäeëèòeëeì ïèêòoãpaìì ÿâëÿeòcÿ cèìâoë ">".
Äëÿ íaãëÿäíocòè còpyêòypû äoïycêaeòcÿ âcòaâëÿòü ïpoáeëû ìeæäy ïèêòoãpaììaìè
è cèìâoëaìè ">".
Beòâè oïècûâaþò ïpoxoæäeíèe cèãíaëa cëeâa íaïpaâo. Äo òo÷êè ïepece÷eíèÿ "O"
cèãíaëû pacïpocòpaíÿþòcÿ "ïapaëëeëüío" ïo äâyì âeòâÿì. Ecëè oäía
èç âeòâeé íe coäepæèò íè oäíoão çâeía, òo cèãíaë â íeé oòcyòcòâyeò. Ïèêòoãpaììa
"O" oáoçía÷aeò yçeë. B yçëe ïo âûáopy ìoæío ìoäeëèpoâaòü:
- cëoæeíèe èëè yìíoæeíèe cèãíaëoâ, âxoäÿùèx â yçeë c äaëüíeéøèì ïpoxoæäeíèeì
ïo oäíoé èëè äâyì âeòâÿì;
- cpaâíeíèe cèãíaëoâ ïo aìïëèòyäe, êâaäpaòy aìïëèòyäû, cpeäíeìy çía÷eíèþ è
ïepexoä ê âepxíeé èëè íèæíeé âeòâè ïo ycëoâèþ;
- äeëeíèe cèãíaëa èç êaêoé-ëèáo âeòâè, cyììû èëè ïpoèçâeäeíèÿ cèãíaëoâ â çaäaííoì
oòíoøeíèè.
Ïapaìeòpè÷eêoe oïècaíèe oá"eêòa ïpoeêòèpoâaíèÿ ïpoèçâoäèòcÿ oòäeëüío
oò còpyêòypíoão. Kaæäoé ìoäeëè çâeía èëè yçëa âceãäa còaâèòcÿ â cooòâeòcòâèe:
- ïèêòoãpaììa,
- èìÿ,
- ïpoãpaììa ìoäeëèpyþùaÿ çâeío èëè yçeë,
- ôopìyëÿp,
- cïpaâêa.
Ôopìyëÿp ïpeäíaçía÷eí äëÿ ââoäa êoícòpyêòèâíûx ïapaìeòpoâ.
Äëÿ áaçoâoão íaáopa çâeíüeâ paçpaáoòaí cëeäyþùèé cïocoá ïpeäcòaâëeíèÿ:
.= ècòo÷íèê êoãepeíòíoão ìíoãoìepíoão cèãíaëa;
*= ècòo÷íèê íeêoãepeíòíoão ìíoãoìepíoão cèãíaëa;
=*= íeêoãepeíòíûé cëoé ïpocòpaícòâa;
=((*))= íeêoãepeíòíûé ïpocòpaícòâeííûé ôèëüòp;
=(*)= íeêoãepeíòíaÿ oïòè÷ecêaÿ cècòeìa;
=(*')= íeêoãepeíòíaÿ oïòè÷ecêaÿ cècòeìa (ìoäèôèöèpoâaííaÿ);
=I- aíaëèçaòop èçoápaæeíèÿ;
-I- ïpèeìíèê ëy÷ècòoé ýíepãèè;
=I= ïpèeìíèê ëy÷ècòoé ýíepãèè (ìoäèôèöèpoâaííûé).
Oäíoìepíûe çâeíüÿ ýëeêòpoííoão òpaêòa èìeþò cëeäyþùèe oáoçía÷eíèÿ: -(Ó)- ycèëèòeëüíoe
çâeío, -(Ó.)-, -(Ó*)-, -(Ó**) - cooòâeòcâeíío êoãepeíòíoe, íeêoãepeíòíoe,
÷acòè÷íoêoãepeíòíoe çâeíüÿ. Oòcyòcòâèe cêoáoê yêaçûâaeò ía aíaëèç ÷yâcòâèòeëüíocòè
-Ó-. Äaëee ýòè ìoäèôèêaöèè ïepe÷ècëÿòücÿ íe áyäyò.
-(A)- aïepèoäè÷ecêoe çâeío;
-(K)- êoëeáaòeëüíoe çâeío;
-(Ä)- äèôôepeíöèpyþùee çâeío ïepâoão poäa;
-(ÄÄ)- äèôôepeíöèpyþùee çâeío âòopoão poäa;
-(Ç)- çaäepæèâaþùee çâeío;
-(È)- èíòeãpèpyþùee çâeío,
-(W)- ëèíeéíoe çâeío oáùeão âèäa.
Oïècaííûe íèæe ïèêòoãpaììû ècïoëüçyþòcÿ äëÿ âûâoäa peçyëüòaòoâ:
=I âûâoä ïoëÿ;
-I âûâoä ãpaôèêa.
Oïècaííûe íèæe ïèêòoãpaììû ècïoëüçyþòcÿ äëÿ ââoäa èëè âûâoäa ïpoìeæyòo÷íûx
peçyëüòaòoâ:
=[X] oêío äëÿ âûâoäa oòc÷eòa çía÷eíèÿ cèãíaëa;
[0]= oêío äëÿ ââoäa oòc÷eòa çía÷eíèÿ cèãíaëa;
=[E] oêío äëÿ âûâoäa äâyìepíoão cèãíaëa;
[E]= oêío äëÿ ââoäa äâyìepíoão cèãíaëa.
B áaçoâûé íaáop ìoäeëeé yçëoâ âêëþ÷eí oäèí yçeë - oïòèìèçaòop. Ýòoò yçeë ÿâëÿeòcÿ
ïocëeäíèì ýëeìeíòoì â oïècaíèè còpyêòypû ìoäeëè è ïocëe íeão íe ìoãyò ïpècyòcòâoâaòü
íèêaêèe yçëû èëè çâeíüÿ.
B ïoäcècòeìe ÏACM-ÏK ïpècyòcòâyeò cïpaâo÷íaÿ èíôopìaöèÿ ïo áaçoâûì çâeíüÿì.
Ecëè ïpoeêòaíòa íe yäoâëeòâopÿeò áaçoâûé íaáop ìoäeëeé çâeíüeâ è yçëoâ, òo
c ïoìoùüþ ìeòaÿçûêa, ïpoeêòaíò ìoæeò paçâèâaòü áaçoâûé íaáop ìoäeëeé. Áaçoâûe
ìoäeëè âocïpèíèìaþòcÿ êaê ïpoòoòèïû. Moäeëü íoâoão çâeía ôopìèpyeòcÿ ïyòeì
oáoçía÷eíèÿ çâeía yíèêaëüíoé ïèêòoãpaììoé è êoäèpoâaíèe eão ía aëãopèòìè÷ecêoì
ÿçûêe ÔOPTPAH-77. Ïpoãpaììa äoëæía áûòü oôopìëeía, êaê ïoäïpoãpaììa oáùeão
âèäa.
SUBROUTINE "èìÿ" ( < cïècoê ôopìaëüíûx ïapaìeòpoâ >)
...
...
...
RETURN
END
Cïècoê ôopìaëüíûx ïapaìeòpoâ còpoèòcÿ â cëeäyþùeì ïopÿäêe: SUBROUTINE "èìÿ"
(E,N,< INTEGER >,< REAL >,< CHARACTER >)
ãäe:
E - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N;
N - paçìepíocòü ìaccèâa E;
<INTEGER> - cïècoê öeëûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe) ïepeìeííûe);
<REAL> - cïècoê âeùecòâeííûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe)
ïepeìeííûe, èäeíòèôèêaòopû êoòopûx íe ìoãyò ía÷èíaòücÿ c áyêâû "C";
<CHARACTER> - cïècoê òeêcòoâûx (xoëëepèòoâûx) ïapaìeòpoâ (òèï CHARACTER
â ÔOPTPAHe), èäeíòèôèêaòopû êoòopûx äoëæíû ía÷èíaòücÿ c áyêâû "C".
Ïocëe çaãoëoâêa oáÿçaòeëüío ïepe÷ècëeíèe êoììeíòapèeâ c oïècaíèeì âcex ôopìaëüíû
x ïapaìeòpoâ, yêaçaííûx â çaãoëoâêe â cëeäyþùeì ïopÿäêe:
C TEKCT , ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÇBEHA
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙ.ÏEPEMEHHOÉ/OÄHA CTPOKA/>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ /OÄHA CTPOKA/>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÏEP.TÈÏA CHARACTER/OÄHA CTPOKA/>
...
Ïepâûe äâa ïapaìeòpa â cïècêe ôopìaëüíûx íe oïècûâaþòcÿ â êoììeíòapèÿx !
He äoïycêaeòÿ ââoä äaííûx èía÷e, êaê ÷epeç oïepaòop READ, a òaêæe ïepeäa÷a
oòc÷eòoâ cèãíaëa E ÷epeç COMMON oáëacòè, ýòo ìoæío cäeëaòü c ïoìoùþ oêoí.
Ôopìyëÿp äëÿ ìoäeëè çâeía còpoèòcÿ aâòoìaòè÷ecêè ía ocíoâe êoììeíòapèeâ.
Èíòepôeéc äoïyckaeò cëeäyþùèé oáoáùeííûé âèä yçëa:
E1(q),E2(q) - âxoäíûe cèãíaëû â ïepâoé è âòopoé âeòâè cooòâeòcòâeíío,
E1'(q),E2'(q) - âûxoäíûe cèãíaëû,
L[ ] - oïepaòop ïpeoápaçoâaíèÿ, a,b,...z - ïapaìeòpû, oïpeäeëÿþùèe ycëoâèÿ
ïpeoápaçoâaíèÿ.
Ecëè âûxoäíoé cèãíaë oòcyòcòâyeò, ïpoãpaììa, peaëèçyþùaÿ yçeë äoëæía oáecïe÷èâaòü
âû÷ècëeíèe çía÷eíèé öeëeâoé ôyíêöèè äëÿ ïocëeäyþùeé oïòèìèçaöèè.
Ïpoãpaììa äoëæía áûòü oôopìëeía, êaê ïoäïpoãpaììa oáùeão âèäa.
SUBROUTINE "èìÿ" ( < cïècoê ôopìaëüíûx ïapaìeòpoâ >)
COMMON /TARGET/ TARGET
C TARGET - âû÷ècëeííoe çía÷eíèe öeëeâoé ôyíêöèè, ecëè
C ècïoëüçyeòcÿ oïòèìèçaòop
...
...
...
RETURN
END
Cïècoê ôopìaëüíûx ïapaìeòpoâ còpoèòcÿ â cëeäyþùeì ïopÿäêe:
SUBROUTINE "èìÿ" (E1,E2,N,<INTEGER>,<REAL>,<CHARACTER>)
ãäe:
E1 - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N,
E2 - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N,
N - paçìepíocòü ìaccèâoâ E1, E2,
<INTEGER> - cïècoê öeëûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe) ïepeìeííûe),
<REAL> - cïècoê âeùecòâeííûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe)
ïepeìeííûe, èäeíòèôèêaòopû êoòopûx íe ìoãyò ía÷èíaòücÿ c áyêâû "C".
CHARACTER> - cïècoê òeêcòoâûx (xoëëepèòoâûx) ïapaìeòpoâ (òèï CHARACTER
â ÔOPTPAHe), èäeíòèôèêaòopû êoòopûx äoëæíû ía÷èíaòücÿ c áyêâû "C".
Ïocëe çaãoëoâêa oáÿçaòeëüío ïepe÷ècëeíèe êoììeíòapèeâ c oïècaíèeì âcex ôopìaëüíûx
ïapaìeòpoâ, yêaçaííûx â çaãoëoâêe â cëeäyþùeì ïopÿäêe:
C TEKCT , ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÓÇËA
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙ.ÏEPEMEHHOÉ/OÄHA CTPOKA/>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ /OÄHA CTPOKA/>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÏEP.TÈÏA CHARACTER/OÄHA CTPOKA/>
...
Ïepâûe òpè ïapaìeòpa â cïècêe ôopìaëüíûx ïapaìeòpoâ â êoììeíòapèÿx íe oïècûâaþòcÿ!
He äoïycêaeòcÿ ââoä oòc÷eòoâ cèãíaëoâ èía÷e, ÷eì ÷epeç E1, E2 òo ecòü íe äoïycêaeòcÿ
ècïoëüçoâaíèe oïepaòopoâ DATA, READ, è èì ïoäoáíûx ïo cïocoáy çaäaíèÿ çía÷eíèé
ïepeìeííûx. E1, E2 íeäoïycòèìo ïoìeùaòü â COMMON oáëacòè.
Ôopìyëÿp äëÿ ìoäeëè yçëa còpoèòcÿ aâòoìaòè÷ecêè ía ocíoâe êoììeíòapèeâ.
Ôopìèpoâaíèe MOÄEËÈ ÇBEHA ïo ïpoãpaììe ïoëüçoâaòeëÿ
Kaê oòìe÷eío âûøe, ìoäeëü íoâoão çâeía, âêëþ÷aeìoão
â cpeäy, äoïycêaeòcÿ peaëèçoâaòü ía aëãopèòìè÷ecêoì ÿçûêe ÔOPTPAH-77. Èíòepôeéc
äoïycêaeò cëeäyþùèé oáoáùeííûé âèä ìoäeëè:
Å'(q) = L a,b,…z{E(q)}
E(q) - âxoäíoé cèãíaë,
E'(q) - âûxoäíoé cèãíaë,
L{} - oïepaòop ïpeoápaçoâaíèÿ, a,b,...z - êoícòpyêòèâíûe ïapaìeòpû.
Ecëè âûxoäíoé cèãíaë oòcyòcòâyeò, â ïpoãpaììe, peaëèçyþùeé ìoäeëü äoëæeí ïpeäycìaòpèâaòücÿ
âûâoä êaêèx-ëèáo äaííûx ía 6 ôaéë. Ecëè oòcyòcòâyeò âxoäíoé cèãíaë, òo â ïpoãpaììe,
peaëèçyþùeé ìoäeëü, íeoáxoäèìo ïpeäycìoòpeòü ëèáo ãeíepaöèþ,ëèáo ââoä çía÷eíèé
cèãíaëa â ðaâíooòcòoÿùèx òo÷êax c ôaéëa c íoìepoì, áoëüøèì 10.
Ïpoãpaììa äoëæía áûòü oôopìëeía, êaê ïoäïpoãpaììa oáùeão âèäa. SUBROUTINE
"èìÿ" ( < cïècoê ôopìaëüíûx ïapaìeòpoâ >) ...
...
...
RETURN
END
Cïècoê ôopìaëüíûx ïapaìeòpoâ còpoèòcÿ â cëeäyþùeì ïopÿäêe: SUBROUTINE "èìÿ"
(E,N,< REAL >,< INTEGER >,<
CHARACTER >)
ãäe:
E - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N;
N - paçìepíocòü ìaccèâa E;
< REAL > - cïècoê âeùecòâeííûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe)
ïepeìeííûe), èäeíòèôèêaòopû êoòopûx íe ìoãyò ía÷èíaòücÿ c áyêâû "C";
<INTEGER > - cïècoê öeëûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe) ïepeìeííûe);
<CHARACTER> - cïècoê òeêcòoâûx (xoëëepèòoâûx) ïapaìeòpoâ (òèï CHARACTER
â ÔOPTPAHe), èäeíòèôèêaòopû êoòopûx äoëæíû ía÷èíaòücÿ c áyêâû "C".
Ïocëe çaãoëoâêa oáÿçaòeëüío ïepe÷ècëeíèe êoììeíòapèeâ c oïècaíèeì âcex ôopìaëüíûx
ïapaìeòpoâ, yêaçaííûx â çaãoëoâêe â cëeäyþùeì ïopÿäêe:
C TEKCT, ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÇBEHA /OÄHA CTPOKA/
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙ. ÏEPEMEHHOÉ/OÄHA CTPOKA/>
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ /OÄHA CTPOKA/>
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE CÈMB. ÏEPEMEHHOÉ /OÄHA CTPOKA/>
ÏEPBÛE ÄBA ÏAPAMETPA B CÏÈCKE ÔOPMAËÜHÛX HE OÏÈCÛBAÞTCß B KOMMEHTAPÈßX !!
Tèïû ïepeìeííûx, âûíeceííûx â cïècêe ôopìaëüíûx ïapaìeòpoâ äoëæíû oïpeäeëÿòücÿ
òoëüêo ÏO ÓMOË×AHÈÞ.
He äoïycêaeòÿ ââoä äaííûx èía÷e, êaê ÷epeç oïepaòop READ, a òaêæe ïepeäa÷a
oòc÷eòoâ cèãíaëa E ÷epeç COMMON oáëacòè.
Kpaòêèé ïepe÷eíü òpeáoâaíèé ê ïpoãpaììíoé peaëèçaöèè ìoäeëè çâeía:
1) ÄOÏÓCKAETCß HAËÈ×ÈE ÏPOÁEËOB B KËÞ×EBÛX CËOBAX, OÄHAKO HE PEKOMEHÄÓETCß
PAÇÁÈBATÜ KËÞ×EBÛE CËOBA C ÏOMOÙÜÞ CTPOKÈ ÏPOÄOËÆEHÈß, TAK KAK B ÝTOÌ CËÓ×AE
HE ÃAPAHTÈPÓETCß, ×TO KËÞ×EBOE CËOBO BOCÏPÈMETCß ÏPABÈËÜHO.
2) PAÇÄEË OPÈEHTÈPOBAH ÄËß OÁPAÁOTKÈ OÄHOÉ ÏOÄÏPOÃPAMMÛ, CËEÄOBATEËÜHO ÈCXOÄHÛÉ
ÔAÉË ÄOËÆEH COÄEPÆATÜ TOËÜKO OÄHÓ ÏOÄÏPOÃPAMMÓ.
3) ÄOÏÓCKAETCß OÁPAÁOTKA ÔAÉËA È C HECKOËÜKÈMÈ ÏOÄÏPOÃPAMMAMÈ, HO TOÃÄA ÏEPBAß
ÏOÄÏPOÃPAMMA - OÁÙEÃO BÈÄA, A OCTAËÜHÛE - ÏOÄÏPOÃPAMMÛ-ÔÓHKÖÈÈ.
4) ÏPÈ OÏÈCAHÈÈ ÔOPMAËÜHÛX ÏAPAMETPOB ÏEPBÛE ÄBA ÏAPAMETPA ÏPOÏÓCKAÞTCß, TO
ECTÜ OHÈ HE ÄOËÆHÛ ÈMETÜ KOMMEHTAPÈEB.
5) ÇAÃOËOBOK ÏPOÃPAMMÛ ÄOËÆEH ÈMETÜ CËEÄYÞÙÈÉ BÈÄ:
SUBROUTINE <ÈMß>(ÏAPAMETP 1,...,ÏAPAMETP N)
C ÈHÔOPMAÖÈOHHÛÉ TEKCT O ÏOÄÏPOÃPAMME
C ÏAPAMETP 3 - <TEKCT> ,OÄHA CTPOKA
.
.
.
C ÏAPAMETP N - <TEKCT> ,OÄHA CTPOKA
ÄAËEE CËEÄÓET TEKCT ÏOÄÏPOÃPAMMÛ, ÏPÈ×EM ÏEPBÛM OÏEPATOP HE MOÆET ÁÛTÜ OÏEPATOPOM
KOMMEHTAPÈß.
Ïepeìeííûe òèïa CHARACTER oïècûâþò ôaéëû â áaçe äaííûx, còpyêòypû êoòopûx
ìoãyò áûòü cëeäyþùèìè:
- Ãpaôèêè ôyíêöèé, ïocòpoeííûe â ocÿx Y,X, êîòîðûå ïpeoápaçyþòcÿ â ìaccèâ
âeùecòâeííûx ÷èceë, ecëè ïoëüçoâaòeëü âocïoëüçyeòcÿ ïoäïpoãpaììoé WGRAF(DIMA,CDIMA,ND)
ãäe: DIMA(ND) - ìaccèâ âeùecòâeííûx oòc÷eòoâ ôyíêêöèè â ND paâíocòoÿùèx òo÷êax,
êoòopaÿ oïècûâaeòcÿ ãpaôèêoì, xpaíÿùèìcÿ â áaçe äaííûx ïoä èìeíeì CDIMA. CDIMA(23,71)-
ìaccèâ òeêcòoâûx ïepeìeííûx, êoòopûé oïècûâaeòcÿ â ïoäïpoãpaììe, peaëèçyþùeé
ìoäeëü çâeía èëè yçëa êaê: CHARACTER*1 CDIMA(23,71) è, êpoìe òoão, yêaçûâaeòcÿ
â cïècêe ôopìaëüíûx ïapaìeòpoâ. Ecëè ND<=70, òo ìaccèâ DIMA coäepæèò oòc÷eòû,
âûápaí íûe c øaãoì, paâíûì øaãy ía ocè X ãpaôèêa. Ecëè ND> 70, òo ìaccèâ
DIMA coäepæèò oòc÷eòû, âûápaííûe c èíòepïoëÿöèeé. B ýòoì cëy÷ae íeoáxoäèìo
çaíecòè ãpaôèê, ècïoëüçyÿ âce ïoëe (ò.e. â 70 òo÷êax). Maccèâ DIMA áyäeò "pacøèpeí"
äo ND oòc÷eòoâ.
- Ãpaôèêè ôyíêöèé ïoïapío ïpeoápaçyþòcÿ â äâyìepíûé ìaccèâ êoìïëeêcíûx ÷èceë
H(N,N). C ïoìoùüþ äâyx ãpaôèêoâ AMP(X) è FAZA(X) áyäyùèé ïoëüçoâaòeëü paçpaáaòûâaeìoão
çâeía èëè yçëa oïèøeò ïoëoâèíy ce÷eíèÿ ôyíêöèé H(X,Y) ïpè Y = 0 ò.e. H(X,0),
ecëè ãpaôèê H(X,Y) oáëaäaeò öeíòpaëüíoé cèììeòpèeé. B ìaccèâe DIMH(N,N) ïocëe
oápaùeíèÿ ê ïoäïpoãpaììe WGRAF2(DIMH,CDIMA,CDIMF) oápaçyþòcÿ êoìïëeêcíûe oòc÷eòû
DIMH(I,J) = CDIMA(K) * EXP(CDIMF(K)) ìaccèâ DIMH oïècûâaeòcÿ êaê êoìïëeêcíûé.
Ïepâûé cïocoá ïpeoápaçoâaíèÿ ÷aùe âceão ècïoëüçyeòcÿ äëÿ opãaíèçaöèè ââoäa
cïeêòpaëüíûx xapaêòepècòèê, a âòopoé - äëÿ äâyìepíûx ïepèoäè÷ecêèx ôyíêöèé,
ëèáo èìïyëücíûx oòêëèêoâ, oáëaäaþùèx öeíòpaëüíoé cèììeòpèeé.
Taêèì oápaçoì, ïoëüçoâaòeëþ pacøèpÿeìoé êoìïoíeíòû ÏACÓÏ è ÏACM-ÏK ïpè peaëèçaöèè
ìoäeëè çâeía íeoáxoäèìo còpoèòü ïoäïpoãpaììy oáùeão âèäa â cëeäyþùeì ôopìaòe:
SUBROUTINE "èìÿ" (E,N,< REAL >,< INTEGER >,< CHARACTER
>)
C TEKCT , ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÇBEHA
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙECTBEHHOÉ ÏEPEMEHHOÉ>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÏEPEMEHHOÉ TÈÏA CHARACTER>
ÏEPBÛE ÄBA ÏAPAMETPA B CÏÈCKE ÔOPMAËÜHÛX HE OÏÈCÛBAÞTCß B KOMMEHTAPÈßX !!!
COMPLEX E(N,N) (ëèáo E(N))
CHARACTER*1 CNAME1(23,71),CNAME2(23,71) .....
DIMENSION NAME1(70),NAME2(70) ...
CALL WGRAF1(NAME1,CNAME1)
CALL WGRAF1(NAME2,CNAME2)
.......
< òeëo ïpoöeäypû >
RETURN
END
Bòopoé âapèaíò:
SUBROUTINE "èìÿ" (E,N,< REAL >,< INTEGER >,< CHARACTER
>)
C TEKCT , ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÇBEHA
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙECTBEHHOÉ ÏEPEMEHHOÉ>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÏEPEMEHHOÉ TÈÏA CHARACTER>
...
ÏEPBÛE ÄBA ÏAPAMETPA B CÏÈCKE ÔOPMAËÜHÛX HE OÏÈCÛBAÞTCß B KOMMEHTAPÈßX !
COMPLEX E(N,N) (ëèáo E(N)), H(N,N)
CHARACTER*1 CNAME1(23,71),CNAME2(23,71) .....
DIMENSION NAME1(70),NAME2(70) ...
CALL WGRAF2(H,CNAME1,CNAME2)
< òeëo ïpoöeäypû >
RETURN
END
Ôopìèpoâaíèe ÓÇËOB MOÄEËÈ ïo ïpoãpaììe
ïoëüçoâaòeëÿ
Hoâûé yçeë, âêëþ÷aeìûé â ÏACM-ÏK, äoïycêaeòcÿ
peaëèçoâaòü ía aëãopèòìè÷ecêoì ÿçûêe ÔOPTPAH-77. Ìîäåëü óçëà ðåàëèçóåòñÿ ñîâîêóïíîñòüþ
îïåðàòîðîâ è îïåðàíäîâ:
E1(q),E2(q) - âxoäíûe cèãíaëû â ïepâoé è âòopoé âeòâè cooòâeòcòâeíío, E1'(q),E2'(q)
- âûxoäíûe cèãíaëû,
L[ ] - oïepaòop ïpeoápaçoâaíèÿ,
a,b,...z - ïapaìeòpû, oïpeäeëÿþùèe ycëoâèÿ ïpeoápaçoâaíèÿ.
Ecëè âûxoäíoé cèãíaë oòcyòcòâyeò, ïpoãpaììa, peaëèçyþùaÿ yçeë äoëæía oáecïe÷èâaòü
âû÷ècëeíèe çía÷eíèé öeëeâoé ôyíêöèè äëÿ ïocëeäyþùeé îïòèìèçaöèè.
Ïpoãpaììa äoëæía áûòü oôopìëeía,êaê ïoäïpoãpaììa oáùeão âèäa.
SUBROUTINE "èìÿ" ( < cïècoê ôopìaëüíûx ïapaìeòpoâ >)
...
...
...
RETURN
END
Cïècoê ôopìaëüíûx ïapaìeòpoâ còpoèòcÿ â cëeäyþùeì ïopÿäêe:
SUBROUTINE "èìÿ" (E1,E2,N,<REAL>,<INTEGER>,<CHARACTER>)
ãäe:
E1 - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N;
E2 - êoìïëeêcíûé ìaccèâ paçìepíocòè N èëè N*N;
N - paçìepíocòü ìaccèâoâ E1,E2;
< REAL > - cïècoê âeùecòâeííûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe)
ïepeìeííûe), èäeíòèôèêaòopû êoòopûx íe
ìoãyò ía÷èíaòücÿ c áyêâû "C";
< INTEGER > - cïècoê öeëûx ïapaìeòpoâ (òoëüêo cêaëÿpíûe (ïpocòûe) ïepeìeííûe);
<CHARACTER> - cïècoê òeêcòoâûx (xoëëepèòoâûx) ïapaìeòpoâ (òèï CHARACTER
â ÔOPTPAHe), èäeíòèôèêaòopû
êoòopûx äoëæíû ía÷èíaòücÿ c áyêâû "C".
Tèïû ïepeìeííûx, yaçaííûx â çaãoëoâêe äoëæíû oïpeäeëÿòcÿ òoëüêo ïo yìoë÷aíèþ.
Heäoïycòèìo èx oáúÿâëeíèe èía÷e, êaê oïepaòopoì CHARACTER.
Ïocëe çaãoëoâêa oáÿçaòeëüío ïepe÷ècëeíèe êoììeíòapèeâ c oïècaíèeì âcex ôopìaëüíûx
ïapaìeòpoâ, yêaçaííûx â çaãoëoâêe â cëeäyþùeì ïopÿäêe:
C TEKCT , ÃOBOPßÙÈÉ O HAÇHA×EHÈÈ ÓÇËA/OÄHA CTPOKA/
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE BEÙECTBEHHOÉ ÏEPEMEHHOÉ>
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÖEËOÉ ÏEPEMEHHOÉ >
...
C "ÈÄEHTÈÔÈKATOP"-<OÏÈCAHÈE ÏEPEMEHHOÉ TÈÏA CHARACTER>
...
ÏEPBÛE TPÈ ÏAPAMETPA B CÏÈCKE ÔOPMAËÜHÛX HE OÏÈCÛBAÞTCß B KOMMEHTAPÈßX: (E1,E2,N
, ...
He äoïycêaeòcÿ ââoä oòc÷eòoâ cèãíaëoâ èía÷e, ÷eì ÷epeç E1,E2 òo ecòü íe äoïycêaeòcÿ
ècïoëüçoâaíèe oïepaòopoâ DATA, READ, è èì ïoäoáíûx ïo cïocoáy çaäaíèÿ çía÷eíèé
ïepeìeííûx,a òaêæe oïepaòopoâ áecôopìaòíoão ââoäa/âûâoäa (òèïa NAMELIST, è
èì ïoäoáíûx) äëÿ ââoäa oòc÷eòoâ cèãíaëa.E1,E2 íeäoïycòèìo ïoìeùaòü â COMMON
oáëacòè. Kpaòêèé ïepe÷eíü òpeáoâaíèé ê ïpoãpaììíoé peaëèçaöèè ìoäeëè çâeía:
1) ÄOÏÓCKAETCß HAËÈ×ÈE ÏPOÁEËOB B KËÞ×EBÛX CËOBAX, OÄHAKO HE PEKOMEHÄÓETCß
PAÇÁÈBATÜ
KËÞ×EBÛE CËOBA C ÏOMOÙÜÞ CTPOKÈ ÏPOÄOËÆEHÈß, TAK KAK B ÝTO CËÓ×AE HE ÃAPAHTÈPÓETCß,
×TO
KËÞ×EBOE CËOBO BOCÏPÈMETCß ÏPABÈËÜHO.
2) PAÇÄEË OPÈEHTÈPOBAH ÄËß OÁPAÁOTKÈ OÄHOÉ ÏOÄÏPOÃPAMMÛ, CËEÄOBATEËÜHO ÈCXOÄHÛÉ
ÔAÉË
ÄOËÆEH COÄEPÆATÜ TOËÜKO OÄHÓ ÏOÄÏPOÃPAMMÓ.
3) ÄOÏÓCKAETCß OÁPAÁOTKA ÔAÉËA È C HECKOËÜKÈMÈ ÏOÄÏPOÃPAMMAMÈ, HO TOÃÄA ÏEPBAß
ÏOÄÏPOÃPAMMA - OÁÙEÃO BÈÄA , A OCTAËÜHÛE - ÏOÄÏPOÃPAMMÛ-ÔÓHKÖÈÈ.
4) ÏPÈ OÏÈCAHÈÈ ÔOPMAËÜHÛX ÏAPAMETPOB ÏEPBÛE ÄBA ÏAPAMETPA ÏPOÏÓCKAÞTCß, TO
ECTÜ OHÈ HE
ÄOËÆHÛ ÈMETÜ KOMMEHTAPÈEB.
5) ÇAÃOËOBOK ÏPOÃPAMMÛ ÄOËÆEH ÈMETÜ CËEÄYÞÙÈÉ BÈÄ:
SUBROUTINE <ÈMß>(ÏAPAMETP 1,...,ÏAPAMETP N) C ÈHÔOPMAÖÈOHHÛÉ TEKCT O
ÏOÄÏPOÃPAMME C ÏAPAMETP 3 - <TEKCT> ,OÄHA CTPOKA
.
.
.
C ÏAPAMETP N - <TEKCT> ,OÄHA CTPOKA
ÄAËEE CËEÄÓET TEKCT ÏOÄÏPOÃPAMMÛ, ÏPÈ×EM ÏEPBÛÉ OÏEPATOP HE MOÆET ÁÛTÜ OÏEPATOPOM
KOMMEHTAPÈß.
Ïopÿäoê paáoòû â cpeäe ÏACM ïpè ee pacøèpeíèè
1. Ïocëe âxoäa â òeêcòoâûé peäaêòop êoäèpyeòcÿ
ïoäïpoãpaììa ïoëüçoâaòeëÿ â âèäe:
SUBROUTINE <ÈMß> (E1,E2,N.......) CHAÇHA×EHÈE ÏOÄÏPOÃPAMMÛ
C"ÈMß"- OÏÈCAHÈE ÏAPAMETPA<oäía còpoêa>
C <cía÷aëa oïècûâaþòcÿâeùecòâeííûe,çaòeì - öeëûe, çaòeì - öeëûe,çaòeì CHARACTER>
2. Ïoäïpoãpaììa ïepeäaeòcÿía òpaícëÿöèþíaæaòèeì cooòâeòcòâyþùeé ôóíêöèîíàëüíîé
êëaâèøè.
3. B cëy÷ae ycïeøíoéòpaícëÿöèèè ecëèïapaìeòpûïpoêoììeíòèpoâaíû, ïopoæäaeòcÿôopìyëÿp
íoâoão çâeía èçaïoìèíaþòcÿ ècxoäíûé è oá'eêòíûå ìoäyëè, peaëèçyþùèe MOÄEËÜ
ÇBEHA
4.Åcëè ïapaìeòpû ïpoêoììeíòèpoâaíû, èx cïècoê cocòaâëeíâ cooòâeòcòâèè c âûøeyêaçaííûìè
òpeáoâaíèÿìè, ío âòeêcòe ïpoãpaììû èìeþòcÿ ïepeìeííûe, çía÷eíèÿ êoòopûx íe
oïpeäeëeíû, òpaícëÿöèÿ ïpepûâaeòcÿ è ïoëüçoâaòeëþïpeäëaãaeòcÿïpèíÿòü peøeíèe
o ïpoäoëæeíèèòpaícëÿöèè, ëèáo o ïpeêpaùeíèè ee.
5. Peæèì ÏPOÄOËÆÈTÜ TPAHCËßÖÈÞ íeoáxoäèìo ècïoëüçoâaòü, ecëè ìeíÿëcÿ cïècoê
ôopìaëüíûx ïapaìeòpoâ èëè êoììeíòapèè ê ôopìaëüíûì ïapaìeòpaì.
6. Peèì ÏPEPBATÜ TPAHCËßÖÈÞ âûáèpaeòcÿ, ecëè âûÿâëÿeòcÿ èäeíòèôèêaòop ïepeìeíoé,
çía÷eíèe êoòopoé íe oïpeäeëeío è íe oïècaío â cïècêe ôopìaëüíûx ïapaìeòpoâ.
Ñîçäàíèå ìîäåëåé çâåíüåâ è óçëîâ ïî
àíàëèòè÷åñêîìó îïèñàíèþ.
Äàííûé ðåæèì ïðåäóñìîòðåí äëÿ îïèñàíèÿ îïåðàòîðà
ïðåîáðàçîâàíèÿ ñèãíàëîâ â âèäå àíàëèòè÷åñêîãî âûðàæåíèÿ.
Âûðàæåíèå ïðåîáðàçóåòñÿ â ïîäïðîãðàììó îáùåãî âèäà íà ëãîðèòìè÷åñêîì ÿçûêå
FORTRAN-77. Ïðè ïåðåäà÷å ïîñòðîåííîé ïîäïðîãðàììû íà äàëüíåéøóþ îáðàáîòêó
â ñðåäå ÏÀÑÌ ïðîèçâîäèòñÿ åå òðàíñëÿöèÿ è ñòðîèòñÿ ôîðìóëÿð íà ñîçäàâàåìîå
çâåíî èëè óçåë. Òåêñò ïîñòðîåííîé ïðîãðàììû äîñòóïåí ïîëüçîâàòåëþ â ðåæèìå
êîððåêòèðîâêè è ìîæåò áûòü ïîäâåãíóò èçìåíåíèÿì ïî æåëàíèþ ïðîåêòàíòà.
Äëÿ îáåñïå÷åíèÿ ðàáîòû ïîëüçîâàòåëÿ ïðåäóñìîòðåí âõîäíîé ÿçûê, ïîñòðîåííûé
íàä ñëåäóþùèìè ìíîæåñòâàìè:
Ìíîæåñòâî îïåðàòîðîâ
* - :I:(<âûðàæåíèå>,<ïåðåìåííàÿ1>,...<ïåðåìåííàÿ n>) - âû÷è-
ñëåíèå îïðåäåëåííîãî èíòåãðàëà îò <âûðàæåíèÿ>. *)
- :F:(<âûðàæåíèå>) - âû÷èñëåíèå ïðÿìîãî ïðåîáðïçîâàíèÿ Ôóðüå îò <âûðàæåíèÿ>.
- :_F:(<âûðàæåíèå>) - âû÷èñëåíèå îáðàòíîãî ïðåîáðàçîâàíèÿ Ôóðüå îò <âûðàæåíèÿ>.
** - :D:(<âûðàæåíèå>) - âû÷èñëåíèå ïðîèçâîäíîé îò <âûðàæå-
íèÿ>. **)
** - :S:(<âûðàæåíèå1>,<âûðàæåíèå2>) - âû÷èñëåíèå èíòåãðàëà
ñâåðòêè îò <âûðàæåíèå1>,<âûðàæåíèå2>. **)
- + - îïåðàòîð ñëîæåíèÿ.
- - - îïåðàòîð âû÷èòàíèÿ.
- * - îïåðàòîð óìíîæåíèÿ.
- / - îïåðàòîð äåëåíèÿ.
- ** - îïåðàòîð âîçâåäåíèÿ â ñòåïåíü.
Ïðèìå÷àíèÿ:
*) Êîëè÷åñòâî ïåðåìåííûõ èíòåãðèðîâàíèÿ â äàííîé ðåàëèçàöèè íå áîëåå 5.
**) Â äàííîé ðåàëèçàöèè îïåðàòîð íå ïîääåðæèâàåòñÿ.
Ìíîæåñòâî âûðàæåíèé.
Ìíîæåñòâî âûðàæåíèé.
Âûðàæåíèÿ - ñòðîêîâàÿ ñîâîêóïíîñòü îïåðàíäîâ è îïåðàòîðîâ. Îïåðàòîðû ðàññìîòðåíû
âûøå, à â êà÷åñòâå îïåðàíäîâ
ìîãóò âûñòóïàòü:
- ïåðåìåííûå, èäåíòèôèöèðóåìûå áóêâàìè ëàòèíñêîãî àëôàâèòà è öèôðàìè, ÷èñëîì
íå áîëåå 6, ïðè÷åì 1-é ñèìâîë -
îáÿçÿòåëüíî áóêâà!
- âûðàæåíèÿ.
- îïåðàòîðû.
Èåðàðõèÿ îïåðàöèé â âûðàæåíèè òðàäèöèîííà:
-> îïåðàòîð[:I:,:_F:,:F:,:D:,:S: <èìåþò ðàâíûé ïðèîðèòåò>],
-> îïåðàòîð[**,*,/,-,+]
Èåðàðõèþ îïåðàòîðîâ ìîæíî èçìåíèòü ñ ïîìîùüþ ñêîáîê. Èåðàðõèÿ ñêîáîò òàê æå
òðàäèöèîííà - íàèáîëüøèé ïðèîðèòåò ó
âíóòðåííèõ ñêîáîê.
Ìíîæåñòâî ïðîñòûõ ïåðåìåííûõ.
Ìíîæåñòâî ïðîñòûõ ïåðåìåííûõ.
Ïðîñòûå ïåðåìåííûå èìåþò òîò æå ñìûñë, ÷òî è â ìàòåìàòèêå. Íåòðàäèöèîííîé
îñîáåííîñòüþ ÿâëÿåòñÿ äåëåíèå ïðîñòûõ
ïåðåìåííûõ íà äâà ïîäìíîæåñòâà:
- ïåðåìåííûå, äëÿ îáîçíà÷åíèÿ ïðîñòðàíñòâåííûõ è âðåìåííûõ êîîðäèíàò.
- ïåðåìåííûå, äëÿ îáîçíà÷åíèÿ êîîðäèíàò â ÷àñòîòíîé îáëàñòè. Ïîñëåäíèå èìåþò
èäåíòèôèêàòîðû, ó êîòîðûõ ïåðâûé
ñèìâîë "#". Íàïðèìåð, åñëè Ò - òåêóùåå âðåìÿ [c], òî #Ò - ÷àñòîòà
[Ãö].
Ìíîæåñòâî ôóíêöèé.
Ìíîæåñòâî ôóíêöèé.
Ôóíêöèè ïîäðàçäåëÿþòñÿ íà âñòðîåííûå è ôóíêöèè ïîëüçîâàòåëÿ. Âñòðîåííûå ôóíêöèè
âêëþ÷àþò â ñâîå ìíîæåñòâî:
- ïîäìíîæåñòâî ýëåìåíòàðíûõ ôóíêöèé,
- ïîäìíîæåñòâî ñïåöèàëüíûõ ôóíêöèé.
Ïîäìíîæåñòâî ýëåìåíòàðíûõ ôóíêöèé âêëþ÷àåò â ñåáÿ:
SIN(X) - sin(x);
COS(X) - cos(x);
x
EXP(X) - E ;
ALOG(X) - Ln(X);
TAN(X) - Tg(X);
INT(X) - ENTIER(X) - öåëàÿ ÷àñòü îò X;
IFIX(X) - áëèæàéøåå öåëîå;
IDINT(X) - ENTIER(X) - öåëàÿ ÷àñòü îò X, X êîìïëåêñíîå;
HFIX(x) - âûäåëåíèå öåëîãî îò Õ;
REAL(X) - âåùåñòâåííàÿ ÷àñòü êîìïëåêñíîãî Õ;
I IXI, åñëè X2=0; SNGL(X1,X2) - <
I-IXI, åñëè Õ2<0;
CMPLX(X1,X2) - ïðåîáðàçîâàíèå ê êîìïëåêñíîìó ÷èñëó; ÀÂS(Õ) - IXI ìîäóëü Õ;
CABS(X) - ìîäóëü êîìïëåêñíîãî ÷èñëà;
AIMAG(X) - ìíèìàÿ ÷àñòü êîìïëåêñíîãî ÷èñëà Õ;
*
CONJG(X) - X êîìïëåêñíîå ñîïðÿæåíèå ñ Õ;
SQRT(X) - êâàäðàòíûé êîðåíü îò Õ;
ALOG(X) - Lg(X);
ASIN(X) - arcsin(x);
ACOS(X) - arccos(x);
ATAN(X) - arctg(x);
ATAN2(A,B) - arctg(a/b);
SINH(X) - SH(X);
TANH(X) - TH(X);
GAMMA(X) - ãàììà-ôóíêöèÿ;
ERF - èíòåãðàë Ëàïëàñà;
ERFC(X) - ôóíêöèÿ âåðîÿòíîñòè;
Ñïåöèàëüíûå ôóíêöèè - ýòî ôóíêöèè, èñïîëüçóåìûå â ðàäèîýëåêòðîíèêå è îïòîýëåêòðîíèêå.
RECT(X) - RECT(X);
RECT(X,Y) - RECT(X,Y);
CIRC(X) - CIRC(X);
SINC(X) - SIN(X)/X;
Âñå îñòàëüíûå ôóíêöèè, òî åñòü ïåðåìåííûå âèäà F(X,.....), èíòåðïðåòèðóþòñÿ
êàê òàáóëèðîâàííûå â ðàâíîîòñòîÿùèõ òî÷êàõ ñ ïîñòîÿííûì øàãîì íà îáëàñòè îïðåäåëåíèÿ.
Ôóíêöèÿ ñ÷èòàåòñÿ çàäàííîé, åñëè îïðåäåëåí åå âèä è îáëàñòü îïðåäåëåíèÿ. Îáëàñòü
îïðåäåëåíèÿ çàïèñûâàåòñÿ â òîé æå ñòðîêå, ÷òî è âûðàæåíèå è îòäåëÿåòñÿ îò
íåãî òî÷êîé ñ çàïÿòîé, íàïðèìåð:
U~(T)=U(T)*SIN(A); TL < T < TH;
çäåñü U(T) - ïðåîáðàçóåìàÿ ôóíêöèÿ;
U~(T) - ðåçóëüòàò ïðåîáðàçîâàíèÿ;
À - ïàðàìåòð;
 çàïèñè TL < T < TH çíàêè "<" ïðèìåíåíû äëÿ óäîáñòâà îáðàáîòêè.
Íà ñàìîì äåëå èñïîëüçóþòñÿ çíàêè "<=".
À - íå ÿâëÿåòñÿ ïåðåìåííîé, ïîñêîëüêó íåò îáëàñòè åå îïðåäåëåíèÿ è îíà íå
âñòðå÷àåòñÿ â ëåâîé ÷àñòè âûðàæåíèÿ. Êñòàòè, åñëè ïåðåìåííàÿ åñòü â ëåâîé
÷àñòè âûðàæåíèÿ, òî íà íåå ìîæíî íå çàïèñûâàòü îáëàñòü îïðåäåëåíèÿ. Äëÿ òàêèõ
ïåðåìåííûõ îíà óñòàíàâëèâàåòñÿ àâòîìàòè÷åñêè. Íèæíÿÿ ãðàíèöà ïîëó÷àåòñÿ ïðèñîåäèíåíèåì
ê èìåíè ïåðåìåííîé áóêâû "L", à âåðõíÿÿ - áóêâû "H".
Ïðèâåäåì ïðèìåðû íåïðàâèëüíîé çàïèñè âûðàæåíèé:
1) U~(T)=U(T)*SIN(A)*COS(X); TL < T < TH;
XL < X < XH;
U(T) - îïðåäåëåíà êàê ôóíêöèÿ îäíîé ïåðåìåííîé.
Ïðèâåäåì ïðèìåðû ðåçóëüòàòîâ ðàáîòû ïîäñèñòåìû:
1) Èñòî÷íèê îäíîìåðíîãî ñèãíàëà, çàäàâàåìûé ôîðìóëîé: w(s)=sin(s)*:i:(cos(s,a),s)
SUBROUTINE GRO1(E1,N,SL,SH,AL,AH)
C - w(s)=sin(s)*:i:(cos(s,a),s)
C SL -
C SH -
C AL -
C AH -
COMPLEX E1(N),EVSP1(64),EVSP2(64)
COMPLEX ETMP02
DIMENSION VSP(64)
DIMENSION VSP1( 64)
DIMENSION VSP2( 64,64)
DS=ABS(SL-SH)/N
DA=ABS(AL-AH)/N
S=SL
DO 1 I1=1,N
RTMP00=SIN(S)
A=AL
DO 2 I2=1,N
E1=COS(A,RTMP01)
VSP2(I1,I2)=RTMP01
2 A=A+DA
1 S=S+DS
S=SL
DO 3 I1=1,N
VSP(I1)=VSP2(I1,I2)
2 S=S+DS
CALL QSF(DS,VSP,VSP,N)
VSP0()=VSP(N)
S=SL
DO 4 I1=1,N
EVSP1(I1)= VSP1(I1)
4 S=S+DS
S=SL
DO 5 I1=1,N
ETMP02=RTMP00*EVSP1(I1)
E1(I1)=ETMP02
5 S=S+DS
RETURN
END
2) Ïðåîáðàçîâàòåëü îäíîìåðíîãî ñèãíàëà, çàäàâàåìûé ôîðìóëîé: w(s)=w(s)*sin(s)*:i:(cos(s,a),s)+:f:(w(s))
SUBROUTINE GRO2(E1,N,SL,SH,AL,AH)
C - w(s)=w(s)*sin(s)*:i:(cos(s,a),s)+:f:(w(s))
C SL -
C SH -
C AL -
C AH -
COMPLEX E1(N),EVSP1(64),EVSP2(64)
COMPLEX ETMP03
DIMENSION M(3),INV(4096),SVSP(4096)
COMPLEX ETMP04
DIMENSION VSP(64)
DIMENSION VSP1( 64)
DIMENSION VSP2( 64,64)
DS=ABS(SL-SH)/N
DA=ABS(AL-AH)/N
S=SL
DO 1 I1=1,N
RTMP00=SIN(S)
RTMP01=E1(I1)*RTMP00
A=AL
DO 2 I2=1,N
E1=COS(A,RTMP02)
VSP2(I1,I2)=RTMP02
2 A=A+DA
1 S=S+DS
S=SL
DO 3 I1=1,N
VSP(I1)=VSP2(I1,I2)
2 S=S+DS
CALL QSF(DS,VSP,VSP,N)
VSP0()=VSP(N)
S=SL
DO 4 I1=1,N
EVSP1(I1)= VSP1(I1)
4 S=S+DS
S=SL
DO 5 I1=1,N
ETMP03=RTMP01*EVSP1(I1)
EVSP2(I1)=E1(I1)
5 S=S+DS
M(1)=ALOG(N*1.0)/ALOG(2.0)-1
M(2)=0
M(3)=0
CALL HARM(EVSP2,M,INV,SVSP,1,IFERR)
CALL PER1(EVSP2,N)
S=SL
DO 6 I1=1,N
ETMP04=ETMP03+EVSP2(I1)
E1(I1)=ETMP04
6 S=S+DS
RETURN
END
Ïðèìå÷àíèå: òàê êàê êîìïèëÿòîð ÿçûêà FORTRAN âñå äàííûå ïîäïðîãðàìì ðàçìåùàåò
â ñòåêå, à ðàçìåð ñòåêà äëÿ äàííîãî êëàññà ìàøèí ñîñòàâëÿåò 64 Êáàéò, òî ïðè
áîëüøîì êîëè÷åñòâå ïîäïðîãðàìì ñòåê áóäåò ïåðåïîëíÿòüñÿ ñ âûäà÷åé ñîîáùåíèÿ:
" Ðàçìåð èíèöèàëèçèðîâàííûõ äàííûõ ïðåâûøàåò 64Ê "
Äëÿ òîãî, ÷òîáû èçáàâèòüñÿ îò ïîäîáíîé îøèáêè, ñèñòåìà ïðåäîñòàâëÿåò ïîëüçîâàòåëþ
âîçìîæíîñòü ðàçìåùåíèÿ äàííûõ îïèñàííûõ â ïîäïðîãðàììå â îñíîâíîé ïðîãðàììå.
Äëÿ ýòîãî â îñíîâíîé ïðîãðàììå çàðåçåðâèðîâàía ÑOMMON- îáëàñòü:
TMP - äëÿ êîìïëåêñíûõ ìàññèâîâ. Åìêîñòü îáëàñòè ñîñòàâëÿåò 144 êáàéò.
Äëÿ ïðèìåðà 2, çàäà÷à ðåøàåòñÿ ñëåäóþùèì îáðàçîì:
SUBROUTINE GRO2(E1,N,SL,SH,AL,AH)
C - w(s)=w(s)*sin(s)*:i:(cos(s,a),s)+:f:(w(s))
C SL -
C SH -
C AL -
C AH -
COMPLEX E1(N),EVSP1(64),EVSP2(64)
COMPLEX ETMP03
DIMENSION M(3),INV(4096),SVSP(4096)
COMPLEX ETMP04
DIMENSION VSP(64)
DIMENSION VSP1( 64)
DIMENSION VSP2( 64,64)
ÑOMMON /TMP/ EVSP1,EVSP2,VSP,VSP1,VSP2
...
...
Çàìå÷àíèå: Òàê êàê ðàçìåð ÑÎMMON-îáëàñòè îãðàíè÷åí, ïîëüçîâàòåëþ íåîáõîäèìî
ñëåäèòü çà òåì, ÷òîáû ðàçìåð ïîìåùàåìûõ òóäà ìàññèâîâ íå ïðåâûøàë ýòó îáëàñòü.
 ïðîòèâíîì ñëó÷àå ðåçóëüòàòû âàïîëíåíèÿ ìîäåëè áóäóò íåïðåäñêàçóåìû.
Ñïðàâêà: öåëîå ÷èñëî ñîñòàâëÿåò 2 áàéòà, âåùåñòâåííîå ÷èñëî - 4 áàéòà,
êîìïëåêñíîå ÷èñëî - 8 áàéò;