problem with plotting differential equation
Afficher commentaires plus anciens
i have differential equation y'+y*cos(t)=sin(t)*cos(t)+4. how i can solve this equation. i used p=dsolve('Dy+y*cos(t)=sin(t)*cos(t)+4','y(0)=0') i receive p =
exp(-sin(t))*int((exp(sin(x))*(sin(2*x) + 8))/2, x == 0..t, IgnoreAnalyticConstraints)
then i used
plot(p) i receive Error using plot Conversion to double from sym is not possible.
when i use ezpolot(p,[-1,1])
i receive Error using ezplot (line 163) exp(-sin(t))*int((exp(sin(x))*(sin(2*x) + 8))/2, x == 0..t, IgnoreAnalyticConstraints) cannot be plotted in the xy-plane.
Error in sym/ezplot (line 76) h = ezplot(fhandle(f),varargin{:});
how i plot graph for differential equation
1 commentaire
Alberto
le 9 Avr 2014
Some integrals can`t be solved but numerically. Try ode45 instead.
Réponses (1)
Mischa Kim
le 9 Avr 2014
Modifié(e) : Mischa Kim
le 9 Avr 2014
Goran, use something like
function myODE()
tspan = 0:0.1:10;
IC = 1;
[t,y] = ode45(@ODEfun,tspan,IC);
plot(t,y,'r')
xlabel('t')
ylabel('y')
grid
end
function dY = ODEfun(t,y)
dY = -y*cos(t) + sin(t)*cos(t) + 4;
end
Catégories
En savoir plus sur Partial Differential Equation Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!