Why Does eig() Not Throw an Error for Non-Square, Symbolic Input?

Example:
M = [sym(zeros(2));sym('m',[2 2])];
M(1,1) = 1
M = 
eig(M)
ans = 
But filling in the top partition of M does yield the expected result:
M(1:2,1:2) = sym('n',[2 2])
M = 
eig(M)
Error using sym/eig (line 51)
Matrix must be square.
Bug?

 Accepted Answer

This bug has been fixed and the updates will be available in the future release.

2 Comments

Fixed in 2022a
M = [sym(zeros(2));sym('m',[2 2])];
M(1,1) = 1
M = 
eig(M)
Error using sym/eig
Matrix must be square.

Sign in to comment.

More Answers (0)

Products

Release

R2021a

Asked:

on 19 May 2021

Commented:

on 25 May 2022

Community Treasure Hunt

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

Start Hunting!