error in solving system of nonlinear equations
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
I am trying to solve four nonlinear equation simultaneously on matlab. But I am getitng the "Comma separated list expansion has cell syntax for an array that is not a cell".
The screenshot of error is attached.
My code is given below.
syms x y z T
x1=1;
x2=1;
x3=1;
x4=1;
y1=1;
y2=1;
y3=1;
y4=1;
z1=1;
z2=1;
z3=1;
z4=1;
c=1;
t1=1;
t21=1;
t31=1;
t41=1;
eq1 = ((x1 - x)^2 + (y1 - y)^2 + (z1 - z)^2 )^1/2 - (c * t1) + (c * T)==0;
eq2 = ((x2 - x)^2 + (y2 - y)^2 + (z2 - z)^2 )^1/2 - (c * t21) - (c*t1) + (c*T)==0;
eq3 = ((x3 - x)^2 + (y3 - y)^2 + (z3 - z)^2 )^1/2 - (c * t31) - (c*t1) + (c*T)==0;
eq4 = ((x4 - x)^2 + (y4 - y)^2 + (z4 - z)^2 )^1/2 - (c * t41) - (c*t1) + (c*T)==0;
sol = solve(eq1, eq2, eq3, eq4);
xSol = sol.x
ySol = sol.y
zSol = sol.z
TSol = sol.T
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/309879/image.png)
2 Commenti
Rik
il 4 Giu 2020
What release are you using? When I run this code I don't get this error.
Did you notice the warning above the error? There is no explicit solution, so when you try to extract it that doesn't really make sense.
Risposte (1)
madhan ravi
il 4 Giu 2020
Modificato: madhan ravi
il 4 Giu 2020
sol = solve([eq1, eq2, eq3, eq4],[x,y,z,T]); %proper way to use solve
3 Commenti
Rik
il 4 Giu 2020
Are you sure there should be an explicit solution? What would you expect your output to be if you wanted to solve sin(x)==2?
Vedere anche
Categorie
Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!