Azzera filtri
Azzera filtri

how to solve this equation?

2 visualizzazioni (ultimi 30 giorni)
Ankit agrawal
Ankit agrawal il 6 Set 2015
(1+cost)(tcost-sint)=2K(sint^2), where k is a constant

Risposta accettata

Mohammad Abouali
Mohammad Abouali il 6 Set 2015
Modificato: Mohammad Abouali il 6 Set 2015
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 Commenti
Ankit agrawal
Ankit agrawal il 6 Set 2015
many thanks for the solution ...can i plot this equation in a graph....in the domain(1, pi/2)
Mohammad Abouali
Mohammad Abouali il 6 Set 2015
Modificato: Mohammad Abouali il 6 Set 2015
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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Systems of Nonlinear Equations in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by