'solve' Command - Only shows one value

1 visualización (últimos 30 días)
Cristian
Cristian el 18 de Nov. de 2012
Hi,
In another pc where I test this line:
double(solve('1=2.*sin(m)'))
Return values are 0.5236 and 2.6180. However, in my computer only returns the 0.5236 value. How I show the second value?
Thank you.
  4 comentarios
bym
bym el 18 de Nov. de 2012
the documentation says the string can not contain an equals sign. Here are my results (R2008b)
solve('1-2*sin(x)')
ans =
pi/6
(5*pi)/6
Walter Roberson
Walter Roberson el 18 de Nov. de 2012
The equals sign can appear in modern MATLAB.

Iniciar sesión para comentar.

Respuestas (2)

Walter Roberson
Walter Roberson el 18 de Nov. de 2012
MATLAB 7.0 used Maple for its Symbolic Mathematics Toolbox. Maple only bothers to find a single value in this situation. When Maple is asked to find AllSolutions, it says they are
(1/6)*Pi + (2/3)*Pi*_B1 + 2*Pi*_Z1
The way to read this is that _B1 can be 0 or 1, and _Z1 is any integer (positive or negative). So solutions are at
[...], -11*Pi/6, -7*Pi/6, Pi/6, 5*Pi/6, 13*Pi/6, 17*Pi/6, [...]

bym
bym el 18 de Nov. de 2012
try this (without using string input)
syms t
>> double(solve(1-2.*sin(t)))
ans =
0.5236
2.6180
  5 comentarios
Walter Roberson
Walter Roberson el 18 de Nov. de 2012
Which MATLAB version are you using?
Cristian
Cristian el 18 de Nov. de 2012
Version 7.0

Iniciar sesión para comentar.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by