Assign letters as matrices; inputs

3 次查看(过去 30 天)
I try to write a function that takes as its input argument a scalar integer and returns Q, a 2n-by-2n matrix. Q consists of four n-by-n submatrices. The elements of the submatrix in the top left corner are all 1s, the elements of the submatrix at the top right are 2s, the elements in the bottom left are 3s, and the elements in the bottom right are 4s. My main problem is that I do not know how to assign 's' in the matrix. Any help will be appreciated
function Q = quadrants( n )
M=zeros(2*n)
s = sym('s')
for i=1:n
for j=1:n
M(i,j)=s
end
end
for i=1:3
for j=(n+1): end
M(i,j)=2*s
end
end
for i=(n+1):2*n
for j=1:n
M(i,j)=3*s
end
end
for i=(n+1):2*n
for j=(n+1):2*n
end
end
end
  3 个评论
dpb
dpb 2015-11-10
Why not move this to Answer so OP can accept it?
Guillaume
Guillaume 2015-11-10
Possibly because the OP question is about symbolic variables.

请先登录,再进行评论。

回答(1 个)

Joachim Schlosser
Joachim Schlosser 2015-11-10
You need to create the matrix as a symbolic matrix:
M=sym('s',[n,n])

类别

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