ITERATIVE SOLUTION OF ONE UNKNOWN VALUE IN AN EQUATION
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
John D'Errico
2023-11-2
编辑:John D'Errico
2023-11-2
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 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!