How can I change a MATLAB function with a variable? (They are symbolic equations.)
Assume that I have an equation of "A*sin(phi)+B*cos(phi)". I want to replace "sin(phi)" by "2*x/(1+x^2)" , and "cos(phi)" should by replaced by "2*x/(1+x^2)" ? (Notice that x=tan (phi/2) , therefore sin(phi)=2*x/(1+x^2), and cos(phi)=2*x/(1+x^2) ) .
The final symboic equation should look :
"A*2*x/(1+x^2) + B*2*x/(1+x^2)"
syms A B phi x
equation_current=A*sin(phi)+B*cos(phi)
% ??? Some unknown operations ???
equation_new=A*2*x/(1+x^2) + B*2*x/(1+x^2)

 Akzeptierte Antwort

Mischa Kim
Mischa Kim am 10 Jan. 2021
Bearbeitet: Mischa Kim am 10 Jan. 2021

1 Stimme

Ercan, here you go, for the first term:
syms phi x A B
eq = A*sin(phi) + B*cos(phi)
eq = subs(eq,sin(phi),2*x/(1+x^2))

1 Kommentar

ercan duzgun
ercan duzgun am 10 Jan. 2021
Dear Mischa Kim,
Thank you very much. It works. I wasn't aware of this command. Thank you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by