ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.05.2019
Просмотров: 524
Скачиваний: 1
Л ек ц и я 7 и 8
2.6. Р аб о та с М -ф а й л а м и
2.6.1. Р аб о та с р ед а к то р о м М -ф ай л о в
Е сли в п роц ессе р аб о т ы п р и ход и тся вводить м ного к о м ан д и часто их м енять, то
р аб о т а с М а1ЬаЬ из ко м ан д н о й стр о ки явл яется не очень р ац и он альн ой . В этом сл у ча е са
мым у д обн ы м сп о со б о м вы п олн ен и я ко м ан д является и сп ользован и е М -ф а й л о в , в кото
р ы х м ож но н абирать к о м ан д ы , вы п о л н ять их все ср азу или частям и , сохран ять в ф айле и
и сп о л ьзо вать в д ал ьн ей ш ем . Д ля р аботы с т ак и м и ф айлам и п р ед н азн ачен редак тор М -
ф а й л о в , с п ом ощ ью которого м ож но со зд авать свои со б ствен н ы е ф у н кц ии и вы зы вать их,
в то м ч и сл е и из ком ан дн ой строки.
Д ля созд ан и я н ового М -ф ай л а необходим о в м еню РНе вы брать к ом ан д у № т е , в
п одм ен ю которой сл ед у е т вы б рать п у н к т М-Ше. П ри этом откроется о к н о р ед а к то р а М -
ф ай лов сл ед у ю щ его ви да
В д ан н о м р ед а к то р е м ож н о о тк р ы ть о дн оврем ен н о для р ед а к ти р о ван и я несколько
ф айлов, переклю чен и е м еж д у ними о су щ еств ля ется с п ом ощ ью заклад ок в ниж ней части
о к н а р ед а к то р а н ад стр о к о й состоян и я. До сохран ен и я М -ф ай л а ем у ав то м ати ч еск и п р и
с в аи в а ется имя 11пй11е<1 с п оряд ковы м номером. С ох р а н е н и е М -ф ай л а о су щ еств ляется ко
м ан д о й 8 а у е А з из м еню РПе, п ри этом п ояви тся ди ал о го во е окно зап и си ф ай ла, где м ож
но и зм ен и ть им я М -ф ай ла. С л е д у е т уче сть, что им я ф ай л а зад ается т о л ьк о л ати н ски м и
б у к в ам и и ци ф рам и , а так ж е д о п у ск ае тся и сп ользовать си м вол п о д ч ер к и ван и я - т е ж е т р е
б о ван и я, что и к им енам п ерем ен н ы х. Р усск и е буквы , ти р е, а та к ж е п робел в им ени М -
ф ай л а не д о п у ск аю тся. К о м ан д а 8 а у е п е р езап и с ы в ает со д ер ж и м о е ран ее созд ан н ого ф ай ла
п осле его ред акти р о ван и я, при п ер во й зап и си вновь созд ан н ого ф ай л а д ей стви е ком анды
8 а у е ан ал о ги ч н о дей ст ви ю ко м ан д ы 8 а у е Аз.
П у сть необход им о н ап и сать п р о гр ам м у р асч ета и построен и я граф и ков д в у х ф у н к
ций в одном граф и ческом окне. О ткроем новы й М -ф ай л и н аберем след ую щ и е ком анды
х = [0 :0 .1 :7 ];
1=ехр(-х);
зиЬр1о1(1,2,1)
р1о1(х,1)
§ = з т ( х ) ;
зиЬр1о{(1,2,2)
р!о1(х,§)
2
Д ля у д о б с тва вво д и м ы е стр о к и н ум ерую тся в левой части о к н а р ед актора. С о х р а
ним это т ф айл п о д им енем « г а в с Ь е Н .т » в каталоге \уогк, как это оп и сан о вы ш е. Д ля за п у с
ка на вы п о л н ен и е всех к о м ан д этого ф ай л а в меню 1)с1нщ следует вы брать к о м ан д у К ип,
л и бо н аж ать к л ави ш у Р5, л и б о н а панели инструм ентов н аж ать на кн оп ку в ви де л и с т а с
н ап р авл ен н о й вн и з стрелкой сп р а в а о т него. В резу л ьтате п о яви тся граф и ч еское окн о с
д ву м я граф и кам и . Е сли, н ап ри м ер, вм есто с и н у са н у ж н о построи ть ан ал о ги ч н ы й граф и к
к о си н уса, т о нуж но п росто вн ести со о тветству ю щ ие и зм енения в пятую стр о к у и за п у
стить все ком ан ды снова.
В е с ь м а у д о б н о й в озм ож н остью , п редоставляем ой р едактором М -ф ай лов, является
в ы п олн ен и е ча сти см еж н ы х ком анд. Е сли наж ать л еву ю кн оп ку м ы ш и и вы дели ть в р е
дак т о р е М -ф ай л о в п ервы е четы ре стр о к и , а затем в м еню Т ех1 вы брать ко м ан д у Еуа1иа(е
8е1есйоп, л и б о наж ать к л ав и ш у Р9, т о б у д у т вы п олн ен ы т о л ьк о вы деленны е ко м ан д ы и
п остроен то л ь к о о д и н граф и к, со о тве тству ю щ и й этим ком андам . В состав содерж и м ого
М -ф а й л а м ож но ввести ко м м ен тар и й так и м ж е образом , как и в ком андное окно.
О тк р ы ти е су щ еств у ю щ его М -ф ай л а п рои зводи тся при пом ощ и п у н кта О р еп м еню
РПе о к н а л и б о р аб о ч ей сред ы , л и бо р ед а к то р а М -ф айлов. П ри этом о тк р ы ва ется тек у щ и й
к атал о г М аИ.аЬ, к о то р ы й м ож н о и зм енить. О ткр ы ть ф айл в редакторе м ож но так ж е ко
м ан д о й ес!И из ком ан дн ой стр о ки програм м ы , указав в кач естве а р гу м ен та им я файла,
н ап р и м ер
» е б й газсйеП
Если данную команду задать без аргумента, то она приведет к созданию нового М-файла.
П о м ере в во д а т е к с т а р ед а к то р -о т ла д чи к М -ф ай л о в вы п о л н яет его си н так си ч еск у ю
п роверку. П р и этом и сп о л ьзу ю тся сл ед у ю щ и е цветовы е в ы д елени я :
•
к л ю ч евы е сл о в а я з ы к а п рограм м и рован и я - си н и й ц вет (н ап ри м ер, слово
/и п с Н о п в ф ай л ах -ф у н к ц и ях );
• о п ер ато р ы , кон стан ты и перем ен н ы е - ч е р н ы й цвет;
• к о м м ен та р и и после зн а к а % - зел ен ы й цвет;
• си м в о л ьн ы е перем ен н ы е (в ап остроф ах) - зе л е н ы й цвет;
• си н так си ч еск и е о ш и б к и - красн ы й цвет.
Б л аго д ар я так и м цветовы м вы делениям вероятн ость си н так си ч еск и х о ш и б о к резко
сни ж ается.
2 .6.2. Т ип ы М -ф ай л о в
М -ф ай л ы в МаГЬаЬ б ы в а ю т д в у х типов: ф ай л -п р о гр ам м а (З с п р ! М-Гйез), со д е р ж а
щ ая п о сл ед о вател ьно сть ком анд, и ф ай л -ф у н к ц и я (Рипсб оп М -Р й ез), в к отором о п и сы в а
ется ф у н кц ия, оп р ед ел яем ая пользователем .
В ы ш еп р и в ед ен н ы й п ри м ер является и ллю страц и ей ф )айла-программы . О н не и м еет
с п и ск а входн ы х п арам етров, а п ерем ен н ы е, объ явлен н ы е в этом ф)айле, явл яю т ся гл об аль
ны ми: они м огут и сп о л ьзо ваться в д р у ги х ф ай л -п р о гр ам м ах и в ком ан дах, вы п о л н яем ы х
из ком ан дн ой стр о к и , а т а к ж е м о гу т и зм ен яться в лю б о й м о м ен т сессии и в л ю б ом месте.
З а п у с к к о м ан д М -ф ай л а н а вы п олн ен и е о сущ еств ля ется д ву м я способам и : а) из р е
д а к т о р а М -ф ай лов, как р а ссм о тр ен о вы ш е; б) из ком ан д н о й строки или д р у г о й ф айл-
п рограм м ы , при этом в качестве ком анды исп ользуется имя М -ф ай ла. Н ап ри м ер, для з а
п у ска в ы ш еп р и вед е н н о го М -ф а й л а д о ст ато чн о в ком ан дн ой стр о к е набрать
»
газсйеП
П ри этом п р о гр ам м а с н ач ал а и щ ет п ерем ен н ую с так и м им ен ем , если о н а есть - в ы в о д и т
ся ее зн ачен и е. Е сли перем ен н ая не най ден а, то и щ ется встр о е н н а я ф у н кц ия с та к и м и м е
нем. Е сл и и о н а не н а й д е н а - н ачи н ае тся п оиск М -ф а й л а с так и м н азванием . П о и ск н ачи
нается с тек у щ его каталога, а затем продолж ается в каталогах, у стан о вл ен н ы х в пути по
3
и с к а (Ра1Ь). Н ай д е н н ы й М -ф ай л б у д е т вы полнен, в противном сл у ч а е б у д е т д ан о сообщ е
ние о его о тсу тстви и .
В ы бор тек у щ его катал о га рассм отрен о бы ло вы ш е. У стан о вка пути п о и ск а осу
щ ествляется с п о м о щ ью ко м ан д ы 8 е( Ра (И из м еню РПе, п ри этом откры вается о д н о и м ен
ное окно, в котором ото б р аж аю тся устан овлен н ы е пути поиска. Для д обавлен и я каталога
сл ед у ет н аж ать кн о п ку АПН Ро1Пег и в п ояви вш ем ся о к н е вы брать нуж н ы й каталог. Д о б ав
лен и е катал о га со всем и его п од каталогам и о сущ ествляется п ри наж ати и на кн оп ку АПН
м'НЬ 8иЫо1Пег8. В о б о и х сл у ча ях в окн е 8 с ( Р а (Ь появляется д о б а вл яем ы й путь поиска.
Очередность вы полнения п оиска осущ ествляется в соответствии с приведенным в окне
8с( Р а (К Д ля изм енения очередности поиска в левой части окн а имею тся следую щ ие кнопки:
•
М оуе (о Т о р - п о м ести ть ввер х сп и ска;
•
М оуе Ир - п о м ести ть ввер х н а о д н у позицию ;
•
К еш о у е - у д ал и ть из спи ска;
•
М оуе 1)ои п - п ер ем ести ть вниз н а о дн у позицию ;
•
М оуе (о ВоК оп - п ом ести ть вниз списка.
П осле вн есен и я и зм ен ен и й сл ед у е т сохранить и н ф о р м ац и ю о п утях п о и ск а кн оп
кой 8ауе. П р и п ом ощ и к н о п к и ВеГаиК м ож но в осстан ови ть стан д ар тн ы е у стан овк и, а
кн о п к а Кеуег1 п р е д н а зн а ч е н а д л я во зв р ата к сохраненны м .
Ф ай л ы -п р о гр ам м ы яв л я ю т ся последовательностью ко м ан д и не и м ею т входн ы х и
вы ходн ы х аргум ентов. Д ля п р о гр ам м и р о ван и я со б ствен н ы х п р и л о ж ени й в Ма1ПаЬ целе
сообразн о со ста вл ять ф ай л -ф у н к ц и и , которы е п р о и зв о д ят н еобход им ы е дей стви я с вход
ны м и ар гу м ен там и и в о зв р а щ а ю т р е зу л ь т а т в вы ходн ы х аргум ентах.
Н ап ри м ер, п у сть в р а с ч е т а х часто исп ользуется ф у н кц ия следую щ его вида
Т о гд а и м еет см ы сл н ап и сать ф ай л-ф ун кц и ю , а затем вы зы вать ее везде, где т р е б у
ется вы числить эту ф у н кц ию . Д ля этого откроем редактор М -ф ай л о в и создадим новы й М -
ф айл следую щ его в и д а
ГипсИоп Г = ш у й ш (х )
Г = ехр(-х)*8яП ((хл2 + 1 )/(х л4 + 0 .1));
С л о во /и п с Н о п в п ер в о й стр о ке определяет, что д ан н ы й ф ай л с о д е р ж и т ф айл-
ф ун кц ию . П ервая ст р о к а яв л я ется за го ло вк о м ф ункц и и , в ко то р о й р азм ещ ается и м я ф у н к
ции и сп и ски входн ы х и вы х о д н ы х аргум ентов. В д ан н о м прим ере им я ф ун кц ии т у/ип,
о д и н входн ой а р гу м е н т х и о д и н в ы ход н ой ар гу м ен т / П о сл е заго л о в к а сл ед у ет тело
ф у н к ц и и , в д ан н о м п ри м ере о н о со с т о и т из одн ой строки , где и в ы ч исл яется ее значение.
Т р еб о в ан и я к и м ен и ф у н к ц и и т а к и е ж е, как и к и м ени перем енной.
С о х р а н и м д а н н ы й ф ай л к о м ан д о й 8 ау е или 8 ау е А з и з м еню РПе, в п ояви вш ем ся
д и алоговом окн е п ояви тся п р ед л агаем о е п рограм м ой имя ф айла, т ак о е ж е, как и имя
ф у н кц ии . П о д этим им енем и с л е д у е т сохран и ть файл. П осле этого д ан н у ю ф ун кц ию
м ож но и сп ользовать та к ж е, к а к и л ю б у ю встроенн ую , нап ри м ер
» у=ш уГип(1.3)
У =
Ф а й л -ф у н к ц и я яв л я ется сам остоятельн ы м п рограм м н ы м м од улем , ко то р ы й о б щ а
ется с др у ги м и м од у л ям и че р ез свои входны е и вы ходн ы е п арам етры . В связи с этим все
перем ен н ы е, со д е р ж ащ и еся в те л е ф у н кц ии , явл яю тся л о к ал ьн ы м и , т.е. д ей с т в у ю т только
0.2600
4
в пределах т е л а ф у н кц ии . И н о гд а по у сл о ви ю зад ачи ц елесообразн о использовать в теле
ф у н к ц и и глоб альн ы е перем ен н ы е, д л я этого исп о л ьзу ется ко м ан д а §1оЬа1, н априм ер
» §1оЬа1 х 1 , х2
В состав ф ункций можно вклю чать и подф ункции. О ни объявляю тся и записы ваю тся в
теле основны х ф ункций и им ею т идентичную им конструкцию . П одф ункции оп ределены и
дей ствую т локально, т.е. в пределах М -ф айла, определяю щ его основную функцию . И споль
зовать подф ункции в ком андном реж и м е работы л и бо в других М -ф айлах нельзя.
Е сл и ф у н кц ия и м еет н еско л ько входн ы х аргум ен тов , т о они р азм ещ аю тся в сп и ске
через зап яту ю , нап ри м ер
йдпсИоп $ = ш уйтп(х,у,
2
)
Т акж е и м еет м есто и сп ол ьзо ван и я ф ай л -ф у н кц и й с н еско л ьки м и вы ходн ы м и ар г у
м ентам и, о н и н азы в аю тся векто р -ф у н кц и ям и . В этом сл у ча е вы ходн ы е аргум ен ты за п и с ы
ваю тся через зап яту ю , а весь это т с п и с о к закл ю чае тся в квад р а тн ы е скобки, нап ри м ер
й т с б о п [Г1,12,13] = т у й т ( х )
Н акон ец , им еется возм ож н ость созд ания ф ай л -ф у н к ц и й без вы ходн ы х аргум ен тов,
в этом сл у ч а е ф ай л -ф у н к ц и я не б у д е т в о зв р ащ а ть н и к ак и х зн ач ен и й , н априм ер
йдпсбоп т у 1 и п (х ) и л и йлпсбоп [] = т у й т ( х )
2 .6.3. О тл ад к а М -ф ай л о в
О сн овн ы м п рием ом о тл ад к и М -ф ай л о в явл я ется у с т а н о в к а в их тексте то ч е к пре
р ы ван и я (Ь ге а к р о т !). О н и устан а в ли в аю тс я и сб р а сы ваю тся с п ом ощ ью кнопки 8е1/С1еаг
В геакропН С б р о с всех то ч е к п р ер ы ван и я о су щ еств ля ется к н оп кой С1саг АН Вгеакрош !.
Р ассм о тр и м п р о гр ам м у в ы ч ислен ия п ерем енной з в цикле с целью п о л у чен и я р яд а
н ату р ал ь н ы х чисел
з=0
Рог 1=1:5
3=8+1
епб
С н а ч а л а зап и ш ем п р о гр ам м у н а ди ск , а затем устан ови м против вы раж ен и я ,у=.5+/
т о ч к у п р ер ы ван и я, о н а об о зн а чаетс я красн ы м круж ком сл е в а о т вы раж ения. У стан о вку
о су щ еств и м к н о п ко й 8с(/С 1еаг В геакрош Р Зап устим п р ограм м у па вы п олн ен и е кн оп кой
К ип , п р о гр ам м а б у д е т вы п о л н ен а д о то ч к и п реры ван и я, после чего о стан о ви тся с вы вод ом
п ервого зн ач ен и я п ер ем ен н о й я, а м аркер ввода б у д е т иметь в и д « К » » . Зеленая стр ел к а в
левой ча сти с тр о к и п о каж ет м есто, где п р о и зо ш л а о стан о вк а п рограм м ы . Н аж ати е кн о п ки
К ип, к оторая в д ан н ы й м о м ен т и зм ен и т сво е н азвание на С о п б п и е , п р и вед ет к в ы п о л н е
нию сл ед у ю щ его ш ага програм м ы , и т.д.
П осле зав ер ш е н и я о тлад ки п рограм м ы то ч ки преры ван и я уд ал яю тся ком ан дой
С1еаг АП Вгеакрош !.
2.7. Р аб о та со ср ед ствам и гра ф и к и Ма1ЬаЬ
2 .7.1. П о стр о ени е граф и ков ф у н к ц и й одной п ерем ен н ой
М а1ЬаЬ п озво л яет строить д и агр ам м ы , гистограм м ы и граф и ки ф ун кц ий , которы е
явл яю тся наглядн ы м ср ед ство м п р ед ставл ен и я векторн ы х и м атр и чн ы х данны х. И з этой
группы граф и ков р ассм отри м п остроен и е граф иков ф ункций.
5
П остроение граф и ков ф ункций одной перем енной м ож но осущ ествлять в линейном,
логариф м ическом и п олулогариф м ическом масш табах. П ричем в одном графическом окне
м ож но разм естить граф и ки нескольких функций, д аж е определенны х н а разны х отрезках.
П о стр о ени е гр а ф и к о в ф у н к ц и й о д н о й п ерем ен н ой в л и н ей н ом м асш таб е о су щ еств
л яется к ом ан дой р Ш , н ап р и м ер
» х = [0:0.005:1]
» у = е х р (-х ).* з т (1 0 * х )
» р1о1(х,у)
В р езу л ьтат е б у д е т построен сл ед у ю щ и й гр аф и к
В од н и х к о о р д и н атн ы х о с я х м ож но п острои ть л ю б о е коли чество ф ун кц ий , при
этом ф у н кц ии не об язател ьн о д олж н ы бы ть о п ределен ы н а одном и том ж е отрезке. В
этом сл у ч а е М аП .аЬ в ы б и р а е т м акси м а льн ы й отрезок, со д е р ж ащ и й остальны е.
И н о гд а т р еб у ется с р ав н и ть поведени е д в у х ф ун кц ий , зн ач ен и я которы х сильно от
л и ч аю тся д р у г о т д р у га. П о стр о е н и е их в о д н и х к о о р д и н ата х п р и в о д и т к том у, что граф и к
ф у н к ц и и с м ал ы м и зн ач ен и ям и п рак ти ч еск и сл и вается с о сь ю абсцисс. Д ля та к и х си ту а
ций п р ед у см о тр ен а ф у н к ц и я р1о(уу, которая в ы в о д и т гра ф и к и в окн о с д ву м я вер ти к а ль
н ы м и о сям и , и м ею щ и м и п о д х о д ящ и й м асш таб - о д н а ось слева, а вто р ая справа. П ри этом
ц в ет гр а ф и к а с о в п ад ает с цветом со о тветству ю щ ей ем у оси ординат.
Д ля п о стр о ен и я граф и ков в л о гари ф м и ческом и п ол у л о гар и ф м и ч еско м м асш табах
с л у ж а т сл ед у ю щ и е ф у н к ц и и :
•
1о%1о§- ло гар и ф м и ческ и й м асш таб по обеим осям ;
•
зетИо&с - л о гар и ф м и ческ и й м асш таб т о л ь к о по о си абсцисс;
•
$ е т й о $ у - л о гар и ф м и ческ и й м асш таб т о л ь к о по о си ординат.
А р гу м ен ты д а н н ы х ф у н к ц и й зад аю тся в виде п ар ы векторов зн ач ен и й аб с ц и сс и
о р д и н а т т а к ж е, как и д л я ф у н кц ии р1о1.
2.7 .2 . П о стр о е н и е граф и ков ф у н к ц и и д в у х п ерем ен н ы х
Д л я п о стр о ен и я гр а ф и к а ф у н кц ий д в у х п ер ем ен н ы х н еобход им о вы полнить д в а
п р ед ва р и т ел ьн ы х дей стви я:
1.
Р азб ить п лоскость, об р азу ем у ю д вум я п ер ем ен н ы м и -ар гу м ен та м и , п рям оуголь
ной сеткой.