analytical solution of ODEs

2 visualizaciones (últimos 30 días)
Ronald Aono
Ronald Aono el 26 de Nov. de 2019
Comentada: Ronald Aono el 26 de Nov. de 2019
%calculating the analytical solution for d^2T/dr^2 + 1/r dT/dr = 0
syms r
r = linspace(0.005,0.1,10);
dT = dsolve('1*D2r+((1/r(i))*Dr) =1','r(0.005)=200','r(0.1)=80')
plot(r,dT)
keep getting this error
Error using plot
Data must be numeric, datetime, duration or an array convertible to double.
Error in FD_6a (line 31)
plot(r,dT)

Respuestas (1)

Bjorn Gustavsson
Bjorn Gustavsson el 26 de Nov. de 2019
This should be done thisly:
syms r
syms T(r)
dTdr = diff(T)
d2Tdr2 = diff(T,2)
T = dsolve(1*d2T+((1/r)*dT) ==1,T(0.005)==200,T(0.1)==80)
Tfun = matlabFunction(T)
r_doble = linspace(0.005,0.1,321);
plot(r_double,Tfun(r_double))
HTH
  1 comentario
Ronald Aono
Ronald Aono el 26 de Nov. de 2019
still getting the folowing error
Undefined function or variable 'd2T'.
Error in FD_6a (line 30)
T = dsolve(1*d2T+((1/r)*dT) ==1,T(0.005)==200,T(0.1)==80 )

Iniciar sesión para comentar.

Categorías

Más información sobre Numbers and Precision en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by