Help on trigonometric operations using syms variable.

5 visualizaciones (últimos 30 días)
iamShreyans
iamShreyans el 7 de Sept. de 2019
Comentada: Walter Roberson el 7 de Sept. de 2019
I'm performing trigonometric operations on a syms variable 't4'.
The input is:
sind(t4-90)
The output that I'm getting is 'sin(pi*(t4-90)/180)'. How do I get it displayed in terms of 'cos' instead? I wish to get the answer in a simplified form.
Thanks!

Respuesta aceptada

John D'Errico
John D'Errico el 7 de Sept. de 2019
Editada: John D'Errico el 7 de Sept. de 2019
You probably need to use rewrite.
syms t4
S = sind(t4-90)
S =
sin((pi*(t4 - 90))/180)
rewrite(expand(S),'sincos')
ans =
-cos((pi*t4)/180)
I did need to expand the extrpession to get rewrite to work.
rewrite(expand(S),'cos')
would also have worked.
rewrite was introduced in R2012a, so most people should have it.
  2 comentarios
iamShreyans
iamShreyans el 7 de Sept. de 2019
Editada: iamShreyans el 7 de Sept. de 2019
Thanks a lot for the help John! The 'sind(t4-90)' is actually a term of a matrix that I'm generating using a loop function and there are more such terms inside the matrix. I would be happy to know if there is a way to apply the expand function to all terms of a matrix at once. Also is can the output be obtained in the cosd/sind functions? I don't wish to see the pi/180 term to make my output more readable.
Walter Roberson
Walter Roberson el 7 de Sept. de 2019
expand(YourMatrix) does work on all entries in the matrix.
It is not possible to see the output in terms of sind and cosd without going to a bunch of bother writing MuPad procedures. In r2019a and later there are functions that make it a lot easier do mapping transformation that would be able to narrow down to sin and cos terms and extract and manipulate their arguments, but very shortly after you substituted the sind and cosd equivalents, matlab would see that those were function calls and would evaluate them which would promptly rewrite back to sin and cos.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by