More efficient way of this code?

1 次查看(过去 30 天)
Lets say that i have a function : y=fun(x,z) that do the following calculations :
ex1:
fun([0 45 90],2) , y=[0 45 90 0 45 90]
ex2:
fun([0 45 90],3) , y=[0 45 90 0 45 90 0 45 90]
My code is the following :
Initialx=x;
for ii = 2:z
x=[x Initialx];
end
Is there a more efficient way to do it ? a vectorized or gennerally another way to impliment it?

采纳的回答

Andrei Bobrov
Andrei Bobrov 2014-5-17
编辑:Andrei Bobrov 2014-5-18
fun1 = @(v,n)repmat(v,1,n)

更多回答(1 个)

Image Analyst
Image Analyst 2014-5-18
% Setup/initialize.
x = [0 45 90]
z = 3 % or 2 or whatever you want.
% Now get your y output:
y = repmat(x, [1,z])

类别

Help CenterFile Exchange 中查找有关 Modeling 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by