ITERATIVE SOLUTION OF ONE UNKNOWN VALUE IN AN EQUATION
1 view (last 30 days)
Show older comments
Please I need an iput on how to solve the value of t in the following equation x = cos(t) - y*sin(t).
%% Solution for t
x = 0.9991/1.02;
y = 2.1838/1.2544;
0 Comments
Accepted Answer
John D'Errico
on 2 Nov 2023
Edited: John D'Errico
on 2 Nov 2023
Hint: try solving for t.
syms x y t
tsol = solve(x == cos(t) - y*sin(t),t)
So there are two solutions. Much of the time, a fully real solution will not exist. That will depend on the values of x and y.
subs(tsol,[x,y],[0.9991/1.02,2.1838/1.2544])
vpa(ans)
You can ignore the imaginary part of that, since it is essentially a VPA zero.
Alternatively, you could just use fzero.
txyfun = @(t,x,y) cos(t) - y*sin(t) - x;
x = 0.9991/1.02;
y = 2.1838/1.2544;
tfun = @(t) txyfun(t,x,y);
First, PLOT IT. Does a solution exist?
fplot(tfun)
yline(0)
So it would appear there are infinitely many solutions. fzero can find one of them. I don't even need to give it a brack around a root in this case.
[tval,fval,exitflag] = fzero(tfun,0)
0 Comments
More Answers (0)
See Also
Categories
Find more on Calculus in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!