I've just started learning matlab and I am trying to solve this differential equation

1 visualizzazione (ultimi 30 giorni)
I am new to MATLAB and I was trying to solve this differential equation and got the end result
syms y(x)
dy=diff(y);
ode= diff(y,x,2)+3*y==0;
cond1= y(0)==1;
cond2= dy(0)==0;
ysol(x)= dsolve(ode,cond1,cond2)
ysol(x) =
cos(3^(1/2)*x)
now if I want to solve y(1)=? in terms of y(1)=0.99 not cos(3^(1/2)) with 1 deg input argument. how should I do that? Thank you!

Risposta accettata

Torsten
Torsten il 20 Ago 2018
Add the line
ysol(1)
at the end of your code.
  3 Commenti
Torsten
Torsten il 20 Ago 2018
Modificato: Torsten il 20 Ago 2018
cos(sqrt(3)) is not 0.99.
Or do you mean 1 deg instead of 1 rad as input argument ?
Use double(ysol(1)) or double(ysol(pi/180)) depending on whether you mean 1 rad or 1 deg.
Ankit Gupta
Ankit Gupta il 20 Ago 2018
Modificato: Ankit Gupta il 20 Ago 2018
I beg your pardon, sir! I mean 1 deg input argument. Thank You sir!

Accedi per commentare.

Più risposte (1)

Dimitris Kalogiros
Dimitris Kalogiros il 20 Ago 2018
you can access the value of y(1) by writting .... y(1)
syms y(x)
%dy=diff(y)
ode= diff(y,x,2)+3*y==0
cond1= y(0)==1
cond2= dy(0)==0
ysol(x)= dsolve(ode,cond1,cond2)
%--------------------------------
% just displaying value of y(1)
disp( ysol(1) )

Community Treasure Hunt

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

Start Hunting!

Translated by