Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

converting an array of n symbolic variables to a cell array with n elements

Asked by Leo Simon on 12 Jan 2013

Hi

Could somebody tell me a way to convert the symbolic array [ x, y , z ] to the 3 element cell array Cell, where Cell{1} = x, Cell{2} = y, etc? You would think it should be possible to do this with mat2cell, but this converts [ x, y, z ] to the a single element cell variable, i.e., Y = cell2mat([x,y,z]) returns T{1} = [ x,y,z].

Thanks!

0 Comments

Leo Simon

Products

No products are associated with this question.

2 Answers

Answer by Walter Roberson on 12 Jan 2013
Accepted answer

num2cell() rather than mat2cell()

1 Comment

Leo Simon on 12 Jan 2013

Thanks, can't believe I didn't try this.

Walter Roberson
Answer by Azzi Abdelmalek on 12 Jan 2013
Edited by Azzi Abdelmalek on 12 Jan 2013
syms x y z
a=[x y z]
for k=1:numel(a)
A{k}=a(k)
end

2 Comments

Leo Simon on 12 Jan 2013

Thanks Azzi, was trying to do it without a loop, I hate loops on principle

José-Luis on 12 Jan 2013

Loops are not always evil. They can make for clearer code and are sometimes faster than the vectorized alternative.

Azzi Abdelmalek

Contact us