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

% $Revision: 1.11 $ $Date: 1997/11/21 23:30:13 $
if nargin < 2
error('Requires at least 2 inputs.') elseif nargin == 2 if prod(size(M))==1
siz = [M M]; else
siz = M; end else
siz = [M N]; end
if length(A)==1
% This produces the same answer as ┬ = A(ones (siz)); % but uses less memory. ┬ = ...
204
├ыртр с. ╧ЁюуЁрььшЁютрэшх ЇєэъЎшщ эр ╠- ч√ъх
reshape(A(ones(I,siz (1)),ones(l,prod(siz(2:end)))),siz); elseif ndims(A)==2 & length(siz)==2
[m,n] = size(A);
mind = (l:m)';
nind = (1:n) ' ;
mind = mind(:,ones (1,siz (1)));
nind = nind(:,ones (l,siz(2)));
┬ = A(mind,nind); else
Asiz = size(A);
Asiz = [Asiz ones(1,length(siz)-length(Asiz))];
siz = [siz ones (1,length(Asiz)-length(siz))];
for i=length(Asiz):-l:1 ind = (l:Asiz(i))'; subsfi} = ind(:,ones(1,siz(i) ));
end
┬ = A(subs{:}); end
╥хъёЄ ЇєэъЎшш repmat тхё№ьр яюыхчхэ фы  шчєўхэш . ┬ю-яхЁт√ї, чфхё№ яюърчрэ ¤ЇЇхъЄштэ√щ рыуюЁшЄь Ёх°хэш  чрфрўш ю яютЄюЁхэшш (ЁхяышърЎшш) чрфрээющ ьрЄЁшЎ√ └ т тхЁЄшъры№эюь эряЁртыхэшш ╠ Ёрч ш т уюЁшчюэЄры№эюь эряЁртыхэшш N Ёрч. ┬юЄ яЁшьхЁ ЁрсюЄ√ ЇєэъЎшш repmat (ёь. Ёшё. 6.11).
ДI MAT "I AC 1 ├*яь
жHIM
D т? & ╫рщ ! to ] ╪ tcj j W
╗ A=[l 2; 3 4] B=repmat(A,2, 3)
B =
1 2 1 2 1 2
3 4 3 4 3 4
1 2 1 2 1 2
3 4 3 4 3 4
л1
╨шёєэюъ 6.11
─ы  Ёх°хэш  ¤Єющ чрфрўш чфхё№ ръЄштэю шёяюы№чє■Єё  т√ёюъю¤ЇЇхъЄштэ√х юяхЁрЎшш ╠- ч√ър, Єръшх, ъръ ьэюцхёЄтхээр  шэфхъёрЎш  ш шэфхъёрЎш  ьрЄЁшЎрьш. ▌ЄюЄ ёыюцэ√щ фы  яхЁтшўэюую шчєўхэш  тюяЁюё с√ы эрьш яюфЁюсэю ЁрёёьюЄЁхэ т уы. 1. ┼ёыш ёхщўрё юэ є трё яю-яЁхцэхьє т√ч√трхЄ эхъюЄюЁ√х чрЄЁєфэхэш  т яюэшьрэшш, Єю тхЁэшЄхё№ ъ ьрЄхЁшрыє уы. 1 фы  яютЄюЁэюую шчєўхэш .
MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 205
┬ю-тЄюЁ√ї, фрээ√щ яЁшьхЁ яюърч√трхЄ, ўЄю тхё№ьр чэрўшЄхы№э√щ яЁюЎхэЄ юЄ юс∙хую юс·хьр ъюфр чрэшьр■Є ьэюуюўшёыхээ√х яЁютхЁъш тїюфэ√ї ярЁрьхЄЁют ш т√їюфэ√ї чэрўхэшщ.
┬-ЄЁхЄ№шї, тшфэю, ўЄю юўхэ№ сюы№°юх чэрўхэшх єфхы хЄё  фюъєьхэЄшЁютрэш■ ъюфр. ▌Єю трцэю ъръ фы  ёЄюЁюээшї яюы№чютрЄхыхщ ЇєэъЎшш, Єръ ш фы  ёрьшї ЁрчЁрсюЄўшъют, яюёъюы№ъє яюьюурхЄ шь т яЁюЎхёёх ЁрчЁрсюЄъш ш юЄырфъш рыуюЁшЄьр ш фхЄрыхщ ъюфшЁютъш.
╧ЁръЄшўхёъшх ёютхЄ√ яю ЁрчЁрсюЄъх ш юЄырфъх ╠-ЇєэъЎшщ
╨рчЁрсрЄ√тр  ЇєэъЎш■, т√ т яхЁтє■ юўхЁхф№ ЁрчЁрсрЄ√трхЄх рыуюЁшЄь Ёх°хэш  эхъюЄюЁющ чрфрўш, яюёых ўхую яхЁхтюфшЄх хую эр ЇюЁьры№э√щ  ч√ъ ъюфшЁютрэш , ъюЄюЁ√ь ш  ты хЄё  ╠- ч√ъ. ═хёьюЄЁ  эр фютюы№эю т√ёюъє■ эруы фэюёЄ№ ╠- ч√ър (юЄёєЄёЄтє■Є эшчъюєЁютэхт√х ъюэёЄЁєъЎшш, сышчъшх ъ ьр°шээ√ь ъюьрэфрь), тёх Ёртэю ¤Єю ЇюЁьры№э√щ  ч√ъ. ╧ю яЁю°хёЄтшш тЁхьхэш фхЄрыш ЁрчЁрсюЄюъ чрсєфєЄё  ш фы  ьюфшЇшърЎшш ЇєэъЎшш яЁшфхЄё  тёх тёяюьшэрЄ№ ёэютр.
╫Єюс√ єяЁюёЄшЄ№ яЁюЎхёё фры№эхщ°хщ ьюфшЇшърЎшш ЇєэъЎшш, р Єръцх хх юЄырфъш эр ёЄрфшш, ъюуфр х∙х эх єфрыюё№ фюсшЄ№ё  яЁртшы№эющ ЁрсюЄ√, т ЄхъёЄ ЇєэъЎшш тёЄрты ■Є ъюььхэЄрЁшш. ╬с·хь Єръшї ъюььхэЄрЁшхт ьюцхЄ с√Є№ тхё№ьр сюы№°шь, ўЄю ь√ т√°х эрсы■фрыш эр яЁшьхЁх °ЄрЄэющ ЇєэъЎшш RepMat.
═ряюьэшь х∙х Ёрч, ўЄю ъюььхэЄрЁшш ьюуєЄ чрэшьрЄ№ юЄфхы№э√х ёЄЁюъш, эрўшэр■∙шхё  ё ёшьтюыр %, яюёых ъюЄюЁюую ёыхфєхЄ ЄхъёЄ ъюььхэЄрЁш . ╥ръцх ъюььхэЄрЁшш ьюцэю ЁрёяюырурЄ№ т ъюэЎх ы■сющ ёЄЁюъш ъюфр, яюёъюы№ъє шэЄхЁяЁхЄрЄюЁ ╠- ч√ър, тёЄЁхЄшт чэръ %, ёўшЄрхЄ тёх ёшьтюы√ яюёых эхую яЁюёЄю ъюььхэЄрЁшхь (р эх ъюьрэфрьш, яюфыхцр∙шьш яхЁхтюфє т ьр°шээє■ ЇюЁьє ш шёяюыэхэш■).
╬ёюсє■ Ёюы№ т ёшёЄхьх MATLAB шьх■Є ъюььхэЄрЁшш, Ёрёяюырур■∙шхё  т ёьхцэюь эрсюЁх ёЄЁюъ ёЁрчє чр чруюыютъюь юяЁхфхыхэш  ЇєэъЎшш. ┬хё№ ¤ЄюЄ эрсюЁ ёЄЁюъ т√тюфшЄё  т ъюьрэфэюх юъэю ёшёЄхь√ MATLAB яЁш шёяюыэхэшш ъюьрэф√
help шь _╠-ЇєэъЎшш
╧юёъюы№ъє Єръє■ ъюьрэфє т яхЁтє■ юўхЁхф№ сєфєЄ яЁшьхэ Є№ яюы№чютрЄхыш ЇєэъЎшш (р эх ЁрчЁрсюЄўшъш), Єю цхырЄхы№эю ЁрёяюыюцшЄ№ т ¤Єшї ъюььхэЄрЁш ї юяшёрЄхы№эє■ шэЇюЁьрЎш■ ш ётхфхэш  ю яЁртшы№эюь т√чютх ¤Єющ ЇєэъЎшш.
╥хяхЁ№ яюфЁюсэю юёЄрэютшьё  эр тюяЁюёх юс юЄырфъх ╠-ЇєэъЎшщ, Єю хёЄ№ эр яЁшхьрї, ё яюью∙№■ ъюЄюЁ√ї ьюцэю т√ тшЄ№ ьхёЄюЁрёяюыюцхэшх ю°шсюъ ш шї яЁшўшэє. ╤шёЄхьр MATLAB юёє∙хёЄты хЄ ёхЁ№хчэє■ яюью∙№ т ¤Єюь яЁюЎхёёх. ┬ ўрёЄэюёЄш, яЁш тючэшъэютхэшш ю°шсъш т яЁюЎхёёх т√яюыэхэш  ╠-ЇєэъЎшш т ъюьрэфэюх юъэю т√тюфшЄё  яЁшсышчшЄхы№эюх фшруэюёЄшўхёъюх ёююс∙хэшх
206
├ыртр 6. ╧ЁюуЁрььшЁютрэшх ЇєэъЎшщ эр ╠- ч√ъх
з! Х