"Вычисления, визуализация и программирование в среде MATLAB 5.x" - читать интересную книгу автора (Мартынов Н. Н., Иванов А. П.)

-1 -2
╨шёєэюъ 2.22
╤ яюью∙№■ ЇєэъЎшш surf яюыєўр■Єё  їюЄ  ш шёъєёёЄтхээю ЁрёъЁр°хээ√х, эю тхё№ьр эруы фэ√х шчюсЁрцхэш . ┼ёыш цх ь√ їюЄшь фюсшЄ№ё  сюыхх хёЄхёЄтхээ√ї ш юс·хъЄштэ√ї ёяюёюсют юъЁр°штрэш  яютхЁїэюёЄхщ, Єю ёыхфєхЄ шёяюы№чютрЄ№ ЇєэъЎш■ surf 1.
╘єэъЎш  surfl т юЄышўшх юЄ ЇєэъЎшш surf эх яЁшьхэ хЄ шёъєёёЄтхээ√ї яЁшхьют чръЁрёъш яютхЁїэюёЄш ЄЁхїьхЁэ√ї уЁрЇшъют. ╙яЁю∙хээю уютюЁ  (фхЄры№э√х Ёрч· ёэхэш  ЄЁхсє■Є юЄфхы№эющ ъэшуш), ¤Єр ЇєэъЎш  ёЁрчє цх шёяюы№чєхЄ яюэ Єшх юётх∙хэш  яютхЁїэюёЄш уЁрЇшър. ╧ю єьюыўрэш■ юэр шёяюы№чєхЄ тёЄЁюхээє■ чрётхЄъє уЁрЇшър ёю ёЄюЁюэ√ эхъюЄюЁющ ухюьхЄЁшўхёъющ Єюўъш яЁюёЄЁрэёЄтр. ┬ Ёхчєы№ЄрЄх Єюўъш яютхЁїэюёЄш уЁрЇшър, юсЁр∙хээ√х т ёЄюЁюэє шёЄюўэшър ётхЄр (єёыютэю сюыхх  Ёъшх), шчюсЁрцр■Єё  ъЁрёэ√ь ЎтхЄюь, р Єюўъш, эрїюф ∙шхё  лт Єхэш╗, - Єхьэю-ёшэшь.
┼ёыш фрыхх ЄЁръЄютрЄ№ яютхЁїэюёЄ№ уЁрЇшър ъръ ьрЄхЁшры№эє■ яютхЁїэюёЄ№ ё юяЁхфхыхээ√ьш Їшчшўхёъшьш ётющёЄтрьш яю юЄЁрцхэш■ ётхЄр, Єю эєцэю чрфрЄ№ ¤Єш ётющёЄтр  тэю. ╥ръ ъръ Ёрчэ√х ьрЄхЁшры√ яю-Ёрчэюьє юЄЁрцр■Є ярфр■∙шх ыєўш, Єю ьюцэю яюфюсЁрЄ№ эхъюЄюЁ√щ ьрЄхЁшры, ўЄюс√ яюыєўшЄ№ эршыєў°хх (ё Єюўъш чЁхэш  яюы№чютрЄхы ) шчюсЁрцхэшх. ┬ ўрёЄэюёЄш, ьюцэю яЁшьхэшЄ№ ЇєэъЎш■
colormap( copper )
ё яюью∙№■ ъюЄюЁющ фы  шчюсЁрцхэш  уЁрЇшър т√сшЁрхЄё  эрсюЁ ЎтхЄют (яю-рэуышщёъш - colormap), ъюЄюЁ√щ їрЁръЄхЁхэ фы  ётхЄр, юЄЁрцр■∙хуюё  юЄ ьхфэющ яютхЁїэюёЄш (ьхф№ яю-рэуышщёъш - copper). ╧юёых ¤Єюую яЁшьхэхэшх ЇєэъЎшш
surfl( X, Y, Z )
яЁштюфшЄ ъ яюыєўхэш■ ЁхрышёЄшўхёъш т√уы ф ∙хую ш юўхэ№ эруы фэюую уЁрЇшър (ёь. Ёшё. 2.23).
72
├ыртр 2. ┬шчєрышчрЎш  Ёхчєы№ЄрЄют т√ўшёыхэшщ
i Figure No. 1 ═╚ 13!
File Edit Window Help.;. ,

0.5-
0, 1 1 2
-1 -2
╨шёєэюъ 2.23
╠юцэю ё Єръюую уЁрЇшър єсЁрЄ№ ўхЁэ√х ышэшш, шчюсЁрцр■∙шх ЁхсЁр, р Єръцх фюсшЄ№ё  х∙х сюыхх яыртэюую яхЁхїюфр юётх∙хэш  яютхЁїэюёЄш, хёыш т√яюыэшЄ№ ъюьрэфє
shading interp
ючэрўр■∙є■, ўЄю ЄхяхЁ№ ЎтхЄ (юётх∙хээюёЄ№) сєфхЄ ьхэ Є№ё  фрцх тэєЄЁш юЄфхы№э√ї уЁрэхщ ( ўххъ). ┬ шЄюух сєфхЄ яюыєўрЄ№ё  ёютёхь єц Ёхры№эюх шчюсЁрцхэшх эхъюЄюЁюую ЄЁхїьхЁэюую ьрЄхЁшры№эюую юс·хъЄр (ёь. Ёшё. 2.24).
Х╗ Figure No.1
File Edit Window Help
0.5-
-1 -2
╨шёєэюъ 2.24
╥хь эх ьхэхх ёшёЄхьр MATLAB эр ¤Єюь эх юёЄрэртыштрхЄё : ёє∙хёЄтєхЄ тючьюцэюёЄ№ х∙х Єюўэхх яЁю тшЄ№ юЄфхы№э√х єўрёЄъш яютхЁїэюёЄш уЁрЇшър, тъы■ўшт фюяюыэшЄхы№э√х шёЄюўэшъш юётх∙хэш , ъюЄюЁ√х Ёхрышчє■Єё  т тшфх уЁрЇшўхёъшї юс·хъЄют Єшяр light. ╤тхЄ юЄ Єръшї шёЄюўэшъют ёьх°штрхЄё 
MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 73
ё Ёрёёх ээ√ь Їюэют√ь юётх∙хэшхь (AmbientLight), ЎтхЄ ш ёшыр ъюЄюЁюую тёЄЁюхэ√ т тшфх їрЁръЄхЁшёЄшъ т юс·хъЄ√ axes (ётющёЄтю AmbientLightColor) ш surface (ётющёЄтю AmbientStrength). ┬ ёыхфє■∙хь яЁшьхЁх:
hS = surf1( X, Y, Z );
set(hS,'FaceLighting','phong','FaceColor','interp');
set(hS,'AmbientStrength1,0.5);
light('Position',[1 0 0],'Style','infinite');
чрфр■Єё  ётющёЄтр яютхЁїэюёЄш (ётющёЄтр уЁрЇшўхёъюую юс·хъЄр Єшяр surface), ъюЄюЁ√х тыш ■Є эр Ёхчєы№ЄшЁє■∙хх шчюсЁрцхэшх яЁш шёяюы№чютрэшш фюяюыэшЄхы№эюую шёЄюўэшър ётхЄр. ╧юёых ўхую ёючфрхЄё  Єръющ шёЄюўэшъ т яючшЎшш, юяЁхфхы хьющ хую ётющёЄтюь Position, шёяєёър■∙шщ ярЁрыыхы№э√х ыєўш (Style=inf inite, Єю хёЄ№ схёъюэхўэю єфрыхээ√щ шёЄюўэшъ).
╠юцэю Єръцх чрфрЄ№ ЎтхЄ фюяюыэшЄхы№эюую шёЄюўэшър яюфётхЄъш яютхЁїэюёЄш уЁрЇшър (ётющёЄтю Color юс·хъЄр light). ╫Єюс√ ёфхырЄ№ шёЄюўэшъ сюыхх ёшы№э√ь, эєцэю яЁюфєсышЁютрЄ№ хую эхёъюы№ъю Ёрч, ёючфртр  тёх эют√х шёЄюўэшъш т Єюь цх ьхёЄх ш ё Єхьш цх ётющёЄтрьш. ╧Ёш ¤Єюь юяшёрЄхыш ърцфюую тэют№ ёючфртрхьюую шёЄюўэшър ётхЄр эєцэю чряюьшэрЄ№ т ёююЄтхЄёЄтє■∙шї яхЁхьхээ√ї. ╥юуфр тяюёыхфёЄтшш ьюцэю ё яюью∙№■ ЇєэъЎшш set шчьхэ Є№ шї ётющёЄтр ш ёєььрЁэє■ ёшыє ётхЄр (фы  лт√ъы■ўхэш ╗ ъюэъЁхЄэюую шёЄюўэшър эєцэю чрфрЄ№ хую ётющёЄтю Color Ёртэ√ь black), фюсштр ё№ цхырхьюую тэх°эхую тшфр уЁрЇшър. ┬ ¤Єюь чръы■ўрхЄё  юуЁюьэюх яЁхшьє∙хёЄтю ЁрсюЄ√ ё ёшёЄхьющ MAT-LAB т шэЄхЁръЄштэюь Ёхцшьх. ╠юцэю эх ёях°р юЎхэшЄ№ фюёЄшуэєЄ√щ Ёхчєы№ЄрЄ ш, хёыш ўЄю-Єю эх эЁртшЄё , т√яюыэшЄ№ юЄфхы№э√х ўрёЄш ЁрсюЄ√ (р эх тё■ ЁрсюЄє) чрэютю.
─юяюыэшЄхы№э√х фхЄрыш юЇюЁьыхэш  ЄЁхїьхЁэ√ї уЁрЇшъют
╠эюушх яЁшхь√ юЇюЁьыхэш  ЄЁхїьхЁэ√ї уЁрЇшъют ёютярфр■Є ё Єхьш, ўЄю с√ыш ЁрёёьюЄЁхэ√ яЁш шчєўхэшш яыюёъшї уЁрЇшъют ЇєэъЎшщ юфэюую яхЁхьхээюую. ┬ ўрёЄэюёЄш, фы  ьрё°ЄрсшЁютрэш  єфюсэю шёяюы№чютрЄ№ ЇєэъЎш■ axis, ъюЄюЁр  т ЄЁхїьхЁэюь ёыєўрх яЁшэшьрхЄ єцх ЄЁш ярЁ√ ёъры Ёэ√ї рЁуєьхэЄют:
axis( [ xmin, xmax, ymin, ymax, zmin, zmax ] )
╧ю-яЁхцэхьє ьюцэю шёяюы№чютрЄ№ ЇєэъЎшш text, xlabel, ylabel, zlabel, title, р Єръцх ьюцэю эрэюёшЄ№ юЄьхЄъш эр юё ї ъююЁфшэрЄ ё яюью∙№■ ЇєэъЎшш set. ╠юцэю Єръцх ё яюью∙№■ ЇєэъЎшш subplot ЁрчьхёЄшЄ№ т юфэюь уЁрЇшўхёъюь юъэх эхёъюы№ъю ЄЁхїьхЁэ√ї уЁрЇшъют.
74
├ыртр 2. ┬шчєрышчрЎш  Ёхчєы№ЄрЄют т√ўшёыхэшш
╩ эют√ь ьхЄюфрь фюяюыэшЄхы№эюую юЇюЁьыхэш  ЄЁхїьхЁэ√ї уЁрЇшъют ьюцэю юЄэхёЄш тючьюцэюёЄ№ т√ч√трЄ№ ЇєэъЎш■ mesh ё ёєЇЇшъёрьш z ш ё (meshz ш meshc), р ЇєэъЎш■ surf - ё ёєЇЇшъёюь ё (surfё). ╚ёяюы№чютрэшх ёєЇЇшъёр z яЁштюфшЄ ъ яюёЄЁюхэш■ уЁрЇшър ё я№хфхёЄрыюь. ═ряЁшьхЁ, ЇЁруьхэЄ ъюфр
[X,Y] = meshgrid( -2:0.1:2);
Z = X .* хїЁ( -╒.╦2 - ╙.╦2 ); meshz( X, Y, Z )
ёЄЁюшЄ ёыхфє■∙шщ уЁрЇшъ (ёь. Ёшё 2.25):
i Figure No. 1
-2 v.
╨шёєэюъ 2.25
╘єэъЎшш ё ёєЇЇшъёюь ё яюьшью ёюсёЄтхээю ЄЁхїьхЁэюую уЁрЇшър ёЄЁю Є х∙х ш Єръ эрч√трхь√х ышэшш єЁютэ . ═ряЁшьхЁ, ЇЁруьхэЄ
[X,Y,Z] =peaks(30); surfc(X,Y,Z);