"Вычисления, визуализация и программирование в среде MATLAB 5.x" - читать интересную книгу автора (Мартынов Н. Н., Иванов А. П.)╬с· ёэшЄ№ ЁрсюЄє ¤Єющ ЇєэъЎшш ьюцэю, Єюы№ъю шёїюф шч ёяюёюср, ъръшь ёшёЄхьр MATLAB їЁрэшЄ ¤ыхьхэЄ√ ьрёёштют т ярь Єш ъюья№■ЄхЁр. ╬эр їЁрэшЄ шї т эхяЁхЁ√тэющ юсырёЄш ярь Єш єяюЁ фюўхээю яю ёЄюысЎрь: ёэрўрыр Ёрёяюырур■Єё ¤ыхьхэЄ√ яхЁтюую ёЄюысЎр, тёыхф чр эшьш Ёрёяюыюцхэ√ ¤ыхьхэЄ√ тЄюЁюую ёЄюысЎр ш Є. ф. ╧юьшью ёюсёЄтхээю фрээ√ї (¤ыхьхэЄют ьрёёштр) т ярь Єш ъюья№■ЄхЁр їЁрэшЄё Єръцх єяЁрты ■∙р шэЇюЁьрЎш : Єшя ьрёёштр (эряЁшьхЁ, double), ЁрчьхЁэюёЄ№ ш ЁрчьхЁ√ ьрёёштр ш фЁєур ёыєцхсэр шэЇюЁьрЎш . ▌Єющ шэЇюЁьрЎшш фюёЄрЄюўэю фы юяЁхфхыхэш уЁрэшЎ ёЄюысЎют. ╬Єё■фр ёыхфєхЄ, ўЄю фы яхЁхЇюЁьшЁютрэш ьрЄЁшЎ√ ЇєэъЎшхщ reshape фюёЄрЄюўэю шчьхэшЄ№ Єюы№ъю ёыєцхсэє■ шэЇюЁьрЎш■ ш эх ЄЁюурЄ№ ёюсёЄтхээю фрээ√х.
╧юьхэ Є№ ьхёЄрьш ёЄЁюъш ьрЄЁшЎ√ ё хх ёЄюысЎрьш ьюцэю юяхЁрЎшхщ ЄЁрэёяюэшЁютрэш , ъюЄюЁр юсючэрўрхЄё чэръюь ' (ряюёЄЁюЇ). ═ряЁшьхЁ, └ =[ 1 1 1; 2 2 2; 3 3 3]; ┬ = └' MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 29 ┬ = 1 2 3 1 2 3 12 3 ─ы ътрфЁрЄэ√ї ьрЄЁшЎ (ўшёыю ёЄЁюъ Ёртэю ўшёыє ёЄюысЎют) ¤Єр юяхЁрЎш шьххЄ эруы фэє■ ухюьхЄЁшўхёъє■ шэЄхЁяЁхЄрЎш■: эр ётюшї ьхёЄрї юёЄр■Єё ¤ыхьхэЄ√ уыртэющ фшруюэрыш ътрфЁрЄэющ ьрЄЁшЎ√, р юёЄры№э√х юЄЁрцр■Єё ёшььхЄЁшўэю юЄэюёшЄхы№эю ¤Єющ фшруюэрыш. ┬хъЄюЁ-ёЄЁюъш юяхЁрЎшхщ ЄЁрэёяюэшЁютрэш яЁхюсЁрчют√тр■Єё т тхъЄюЁ-ёЄюысЎ√, ш эрюсюЁюЄ: v = [ 1; 2; 3]; u = v' ; ш = 1 2 3 ┬ ЁрёёьюЄЁхээюь яЁшьхЁх тхъЄюЁ-ёЄюысхЎ v юяхЁрЎшхщ ЄЁрэёяюэшЁютрэш с√ы яЁхюсЁрчютрэ т тхъЄюЁ-ёЄЁюъє ш. ╠эюуюьхЁэ√х ўшёыют√х ьрёёшт√ ╠эюуюьхЁэ√ьш эрч√тр■Єё ьрёёшт√ ё ЁрчьхЁэюёЄ№■ сюы№°х фтєї. ─ы шэфхъёрЎшш ¤ыхьхэЄют Єръшї ьрёёштют ЄЁхсєхЄё ЄЁш шыш сюыхх шэфхъёр, єърч√тр■∙шх эр яюыюцхэшх т√сшЁрхьюую ¤ыхьхэЄр тфюы№ эхёъюы№ъшї эряЁртыхэшщ єяюЁ фюўхэш . ─рфшь эруы фэє■ шыы■ёЄЁрЎш■ ьэюуюьхЁэ√ї ьрёёштют эр яЁшьхЁх ьрёёштр ЄЁхї шчьхЁхэшщ (ЁрчьхЁэюёЄ№ Ёртэр ЄЁхь). ─юяєёЄшь, ўЄю хцхфэхтэю т Єхўхэшх ьхё Ўр яЁютюф Єё шчьхЁхэш юфэшї ш Єхї цх тхышўшэ, яЁшўхь чэрўхэш ¤Єшї тхышўшэ чр юфшэ фхэ№ ётюф Єё т яЁ ьюєуюы№эє■ ЄрсышЎє. ╥юуфр т ъюэЎх ьхё Ўр шьх■Єё 30 фтєьхЁэ√ї ЄрсышЎ. ╩ръ єяюЁ фюўшЄ№ тё■ ¤Єє ёютюъєяэюёЄ№ юя√Єэ√ї фрээ√ї? ─ы ¤Єюую ьюцэю ЁрёяюыюцшЄ№ ¤Єш ьрЄЁшЎ√ тфюы№ эхъюЄюЁюую эряЁртыхэш ш яЁюэєьхЁютрЄ№ шї. ▌Єю сєфхЄ єцх ЄЁхЄ№х эряЁртыхэшх єяюЁ фюўхэш фрээ√ї, Єръ ъръ тфюы№ яхЁтюую эряЁртыхэш (єёыютэю - тхЁЄшъры№эюую) єяюЁ фюўштр■Єё ёЄЁюъш, тфюы№ тЄюЁюую (уюЁшчюэЄры№эюую) - ёЄюысЎ√. ┬ Ёхчєы№ЄрЄх ЄЁхЄшщ шэфхъё фы фюёЄєяр ъ юЄфхы№эюьє ¤ыхьхэЄє фрээ√ї сєфхЄ Ёртхэ эюьхЁє ЄрсышЎ√ тфюы№ эряЁртыхэш фэхщ ьхё Ўр. ╧юыєўшт°р ё ёютюъєяэюёЄ№ єяюЁ фюўхээ√ї фрээ√ї шыы■ёЄЁшЁєхЄё Ёшё. 1.16. ┼ёыш ёючфрЄ№ ЄЁхїьхЁэ√щ ьрёёшт └1, ёюфхЁцр∙шщ єяюЁ фюўхээ√х єърчрээ√ь юсЁрчюь фрээ√х, Єю ъ шэфштшфєры№эюьє фрээюьє ьюцэю юсЁр∙рЄ№ё ё яюью∙№■ ЄЁхї шэфхъёют. ▌ыхьхэЄ └1 (1,2,2) эрїюфшЄё т яхЁтющ ёЄЁюъх, тЄюЁюь ёЄюысЎх ш тю тЄюЁющ ьрЄЁшЎх. ╚ч Ёшёєэър тшфэю, ўЄю ¤ЄюЄ ¤ыхьхэЄ Ёртхэ 3. 30 ├ыртр 1. ╫шёыют√х ьрёёшт√ т ёшёЄхьх MATLAB 3 4 3. 5 8 9. 2 5 1 .... 6 ╠рЄЁшЎр шчьхЁхэшщ чр 30-щ фхэ№ ╠рЄЁшЎр шчьхЁхэшщ чр 2-щ фхэ№ ╠рЄЁшЎр шчьхЁхэшщ чр 1-щ фхэ№ ╨шёєэюъ 1.1 6 ╥хяхЁ№ шчєўшь ёяюёюс√ ёючфрэш Єръшї ьрёёштют. ╧хЁт√щ ёяюёюс - ¤Єю яЁ ьюх яЁюяшё√трэшх тёхї хую ¤ыхьхэЄют: └1(1,1,2) =2; └1(2,1,2)=3;... └1(1,2,2) =3; └1(2,2,2)=1;... └1 (1,1, 30)=7; └1(2,1,30)=4;... Al(l,2,30)=7; A1 (2, 2, 30) =4;... ╟фхё№ фы ьэюуюъЁрЄэюую єтхышўхэш ¤ЇЇхъЄштэюёЄш ЎхыхёююсЁрчэю яхЁт√ь яЁюяшёрЄ№ ёрь√щ яЁрт√щ эшцэшщ ¤ыхьхэЄ 30-щ ьрЄЁшЎ√, Єръ ъръ ёшёЄхьр MAT-LAB ёЁрчє яюыєўшЄ шэЇюЁьрЎш■ юс шёЄшээюь ЁрчьхЁх ёючфртрхьюую ЄЁхїьхЁэюую ьрёёштр. ─Ёєушь ёяюёюсюь єтхышўхэш ¤ЇЇхъЄштэюёЄш (с√ёЄЁюфхщёЄтш ), ъръ ш т Ёрэхх ЁрёёьюЄЁхээ√ї ёыєўр ї тхъЄюЁют ш ьрЄЁшЎ, ты хЄё ёючфрэшх ьрёёштр эєцэюую ЁрчьхЁр т√чютюь ЇєэъЎшщ ones шыш zeros, ъюЄюЁ√х ЄхяхЁ№ фюыцэ√ яюыєўшЄ№ ЄЁш тїюфэ√ї рЁуєьхэЄр: ones( M, N, L ) шыш zeros( M, N, L ) уфх L - ¤Єю ЁрчьхЁ ЄЁхїьхЁэюую ьрёёштр тфюы№ ЄЁхЄ№хую шчьхЁхэш . ╤ючфрээ√х єърчрээ√ьш ЇєэъЎш ьш ЄЁхїьхЁэ√х ьрёёшт√ ёюфхЁцрЄ т ърўхёЄтх ¤ыхьхэЄют ышсю хфшэшЎ√, ышсю эєыш. ─рыхх эєцэю юёє∙хёЄтшЄ№ яЁюяшё√трэшх шэфштшфєры№э√ї ¤ыхьхэЄют яЁртшы№э√ьш чэрўхэш ьш. ╧ЁюЎхёё сєфхЄ ¤ЇЇхъЄштэ√ь, Єръ ъръ эх яюЄЁхсєхЄё яхЁхёЄЁющър ёЄЁєъЄєЁ√ ьрёёштр ё ърцф√ь эют√ь яЁшётрштрэшхь. ╥хяхЁ№ яЁхфяюыюцшь, ўЄю т ЄЁхїьхЁэюь ьрёёштх └2 ёюсЁрэ√ фрээ√х шчьхЁхэшщ чр фЁєующ ьхё Ў уюфр. ╩ръ ёюсЁрЄ№ тюхфшэю фрээ√х ЄЁхїьхЁэ√ї ьрёёштют └1 ш └2 ? ─юёЄрЄюўэю юўхтшфэ√ь Ёх°хэшхь сєфхЄ шї уЁєяяшЁютър тфюы№ ўхЄтхЁЄюую MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 31 шчьхЁхэш - шчьхЁхэш тфюы№ ьхё Ўхт. ╥хїэшўхёъш Єрър уЁєяяшЁютър ты хЄё ъюэърЄхэрЎшхщ. ╬фэръю яЁшьхэшЄ№ юяхЁрЎш■ ъюэърЄхэрЎшш, ъюЄюЁр юсючэрўрхЄё ътрфЁрЄэ√ьш ёъюсърьш, эхтючьюцэю, яюёъюы№ъє хх ЁрчфхышЄхыш т тшфх чря Єющ (яЁюсхыр) ш Єюўъш ё чря Єющ фюяєёър■Є ъюэърЄхэрЎш■ Єюы№ъю тфюы№ фтєї яхЁт√ї шчьхЁхэшщ. ═рь цх ёхщўрё эєцэю юёє∙хёЄтшЄ№ ъюэърЄхэрЎш■ ЄЁхїьхЁэ√ї ьрёёштют тфюы№ ўхЄтхЁЄюую шчьхЁхэш . ═р яюью∙№ яЁшїюфшЄ тЄюЁющ шч шчтхёЄэ√ї ёяюёюсют т√яюыэхэш ъюэърЄхэрЎшш - ё яюью∙№■ ЇєэъЎшш cat. ▌Єр ЇєэъЎш эх шьххЄ эшъръшї юуЁрэшўхэшщ ш т фрээюь ъюэъЁхЄэюь яЁшьхЁх т√ч√трхЄё т ёыхфє■∙хь тшфх: └ = cat( 4, Al, A2 ) уфх ўшёыю 4 чрфрхЄ эюьхЁ шчьхЁхэш , тфюы№ ъюЄюЁюую юёє∙хёЄты хЄё ъюэърЄхэрЎш . ▀ёэю, ўЄю хёыш яюЄЁхсєхЄё уЁєяяшЁютър фрээ√ї, яюыєўхээ√ї чр Ёрчэ√х уюф√, Єю ьюцэю юёє∙хёЄтшЄ№ ъюэърЄхэрЎш■ тфюы№ я Єюую эряЁртыхэш ш яюыєўшЄё я ЄшьхЁэ√щ ьрёёшт (ьрёёшт ЁрчьхЁэюёЄш 5). ╧Ёюшыы■ёЄЁшЁєхь тёх ёърчрээюх яЁю ьэюуюьхЁэ√х ьрёёшт√ эр ёыхфє■∙хь яЁюёЄюь яЁшьхЁх. ╤эрўрыр ёючфрфшь ЄЁхїьхЁэ√щ ьрёёшт р: р = ones( 2, 3, 2 ); р( 1, 2, 2 ) = 7 р(:,:,1) = 1 1 1 1 1 1 р(:,:,2) = 1 7 1 1 1 1 ёюёЄю ∙шщ шч фтєї ьрЄЁшЎ ЁрчьхЁюь 2x3, ёуЁєяяшЁютрээ√ї т ЄЁхЄ№хь эряЁртыхэшш (шчьхЁхэшш). ╧Ёш яюърчх тїюф ∙шї т ¤ЄюЄ ЄЁхїьхЁэ√щ ьрёёшт ьрЄЁшЎ MATLAB шёяюы№чєхЄ фы юсючэрўхэш яхЁтющ шч эшї т√Ёрцхэшх р (:, :, 1), р фы юсючэрўхэш тЄюЁющ ьрЄЁшЎ√ - т√Ёрцхэшх р (:, :, 2). ╥ръшх юсючэрўхэш эх ьюуєЄ с√Є№ ёхщўрё фю ъюэЎр яюэ Є√, Єръ ъръ ь√ х∙х эшўхую эх Ёрёёърч√трыш ю яЁшьхэхэшш юяхЁрЎшш фтюхЄюўшх (юяхЁрЎш чрфрэш фшрярчюэр чэрўхэшщ) яЁш шэфхъёрЎшш ьрёёштют. ╠√ яюфЁюсэю юёЄрэютшьё эр ¤Єюь тюяЁюёх эшцх т фрээющ уыртх яюёюсш , р ёхщўрё Єюы№ъю ёърцхь, ўЄю юяхЁрЎш : чрфрхЄ тхё№ тючьюцэ√щ фшрярчюэ шэфхъёют фы фрээюую шчьхЁхэш . ─рыхх яю Єющ цх ёїхьх ёючфрфшь ЄЁхїьхЁэ√щ ьрёёшт ▄: b = ones( 2, 3, 2 ); ▄( 1, 1, 1 ) = 8 ▄(:,:,1) = 8 1 1 111 32 ├ыртр 1. ╫шёыют√х ьрёёшт√ т ёшёЄхьх MATLAB 1 1 1 1 1 1 ═ръюэхЎ, ёуЁєяяшЁєхь ¤Єш фтр ЄЁхїьхЁэ√ї ьрёёштр тфюы№ ўхЄтхЁЄюую шчьхЁхэш , р Ёхчєы№ЄрЄ яЁшётюшь ьрёёштє ё. ╥рър юяхЁрЎш уЁєяяшЁютъш тючьюцэр, яюёъюы№ъє ЄЁхїьхЁэ√х ьрёёшт√ р ш b шьх■Є юфшэръют√х ЁрчьхЁ√. ┬ яЁюЄштэюь ёыєўрх тючэшъыр с√ ю°шсър. ─ы т√яюыэхэш уЁєяяшЁютъш (ъюэърЄхэрЎшш) тюёяюы№чєхьё ЇєэъЎшхщ cat: ё = cat( 4, a, b ); ─ы яюыєўхээюую ьрёёштр ё т√чют ЇєэъЎшш ndims ( ё ) тхЁэхЄ ўшёыю 4, ўЄю ючэрўрхЄ, ўЄю ё ты хЄё ьрёёштюь ЁрчьхЁэюёЄш 4. ╨рчьхЁ ьрёёштр ё тфюы№ ърцфющ шч хую ўхЄ√Ёхї ЁрчьхЁэюёЄхщ ьюцэю єчэрЄ№ т√чютюь ЇєэъЎшш size. ▌Єр ЇєэъЎш тючтЁр∙рхЄ тхъЄюЁ-ёЄЁюъє шч ўхЄ√Ёхї ¤ыхьхэЄют. ╧хЁт√щ шч ¤Єшї ¤ыхьхэЄют Ёртхэ ЁрчьхЁє ьрёёштр тфюы№ яхЁтюую шчьхЁхэш , тЄюЁющ ¤ыхьхэЄ фрхЄ ЁрчьхЁ тфюы№ тЄюЁюую шчьхЁхэш ш Є. ф.: v = size ( ё ) v = |
|
|