how to solve this equation?

2 次查看(过去 30 天)
(1+cost)(tcost-sint)=2K(sint^2), where k is a constant

采纳的回答

Mohammad Abouali
Mohammad Abouali 2015-9-6
编辑:Mohammad Abouali 2015-9-6
well a quick look at the equation, t=0 is always the solution regardless of the value of K.
However, if you want to solve these numerically you can choose an approach like below:
K=2;
fun=@(t) (1+cos(t)).*(t.*cos(t)-sin(t))-2*K*(sin(t).^2);
% or the following. Not sure which one you want.
% fun=@(t) (1+cos(t)).*(t.*cos(t)-sin(t))-2*K*(sin(t.^2));
Options=optimset(@fsolve);
Options.TolFun=1e-10;
[x,fval,exitflag,output] = fsolve(fun,1,Options)
x =
1.4560e-04
fval =
-8.4804e-08
exitflag =
1
output =
iterations: 12
funcCount: 26
algorithm: 'trust-region-dogleg'
firstorderopt: 9.8791e-11
message: 'Equation solved.
fsolve completed because the vector of function values is near zero
as measured by the selected valu...'
  2 个评论
Ankit agrawal
Ankit agrawal 2015-9-6
many thanks for the solution ...can i plot this equation in a graph....in the domain(1, pi/2)
Mohammad Abouali
Mohammad Abouali 2015-9-6
编辑:Mohammad Abouali 2015-9-6
Sure you can.
K=2;
fun1=@(t) (1+cos(t)).*(t.*cos(t)-sin(t));
fun2=@(t) 2*K*(sin(t.^2));
ezplot(fun1,[1,pi])
hold on
h=ezplot(fun2,[1,pi]);
set(h,'Color','r')
legend('(1+cost)(tcost-sint)','2K(sint^2)')
where fun is your function defined in previous code.
BTW, if you are interested in the solution between the [1,pi] you can use fminbnd function as follow:
fminbnd(fun,1,pi)
ans =
1.2915
fminbnd(fun,1.3,pi)
ans =
2.7949

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Computations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by