How to write code for moments?

4 次查看(过去 30 天)
How to write code for moments i.e 0th order(M00),1st order (M10,M01), i wrote it by using for loop
for i=0:1:1
for j=0:1:1
for k=1:1:row
for l=1:1:col
M(i,j)=M(i,j)+(k^i*l^j*I2(k,l));
end
end
end
end
but it gives error ??? Attempted to access M(0,0); index must be a positive integer or logical. is there any other way of writing code for Moments???

采纳的回答

the cyclist
the cyclist 2013-3-20
编辑:the cyclist 2013-3-20
MATLAB arrays are 1-based and not 0-based.
One solution is to just bump each index i and j by one for array storage purposes:
for i=0:1:1
for j=0:1:1
for k=1:1:row
for l=1:1:col
M(i+1,j+1)=M(i+1,j+1)+(k^i*l^j*I2(k,l));
end
end
end
end
Notice that my only change to your code was to replace M(i,j) with M(i+1,j+1).

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by