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

How to solve a system of equations symbolically? (MATLAB R2011a)

Asked by Dan on 30 Nov 2012

This is what I'm trying to do:

    syms x1 x2 x3 X1 X2 X3 t
    S = solve('x1 = 3*t*X1+X2', 'x2 = 2*t^2*X2', 'x3 = 5*t*X3')
    S = [S.X1 S.X2 S.X3]

I get a reference to non-existent field error though.

It's solving for x1, x2, and x3, but need to solve for X1, X2, and X3 in terms of x1, x2, x3 and t.

Please help! Thanks!




1 Answer

Answer by Azzi Abdelmalek on 30 Nov 2012
Edited by Azzi Abdelmalek on 30 Nov 2012
    syms x1 x2 x3 X1 X2 X3 t
    S = solve(x1==3*t*X1+X2, x2==2*t^2*X2, x3==5*t*X3,X1,X2,X3)
    S = [S.X1 S.X2 S.X3]


Walter Roberson on 30 Nov 2012

R2011a did not support using == in symbolic expressions. I think it was R2011b that first supported that.

S = solve('x1=3*t*X1+X2', 'x2=2*t^2*X2', 'x3=5*t*X3','X1','X2','X3')
Azzi Abdelmalek on 30 Nov 2012

Then no need to use syms

Walter Roberson on 1 Dec 2012

Yes, correct. If everything is quoted, syms is not needed.

Azzi Abdelmalek

Contact us