HOla Marcos.
La funcion dsolve() de matlab no puede resolver tu PVI que me haz enviado a mi correo.
tU PVI tiene este forma.
>> DT='DT=5-T^4-T';
CI='T(0)=298';
T2=dsolve(DT,CI)
Warning: Explicit solution could not be found.
> In dsolve at 102
T2 =
[ empty sym ]
Como ves, los comanos de solve de matlab no puedo resolverlo, por lo tanto he utilizado la funcion ode45 de MATLAB que esta basada en El MÉtodo de Runge Kutta de 4to orden
%===============================================
function [t,T]=sistemasdsolve2
opciones=odeset('RelTol',1e-2,'AbsTol',1e-2);
[t,T]=ode45(@ecua45,[0 10],298,opciones);
figure(gcf)
plot(t,T,'-')
grid
function DT=ecua45(t,T)
DT=(1/(3000*0.001*900))*(3000-(0.8)*(5*67*10^(-8))*(0.25)*(T^4-298^4)-30*0.25*(T-298));
%=====================================================
guardalo con el nombre e sistmasdsovle2.m
y ejecutalo en la ventana de comandos de matlab de la siguiente forma.
>> >> [t,T]=sistemasdsolve2
t =
0
0.2500
0.5000
0.7500
1.0000
1.2500
1.5000
1.7500
2.0000
2.2500
2.5000
2.7500
3.0000
3.2500
3.5000
3.7500
4.0000
4.2500
4.5000
4.7500
5.0000
5.2500
5.5000
5.7500
6.0000
6.2500
6.5000
6.7500
7.0000
7.2500
7.5000
7.7500
8.0000
8.2500
8.5000
8.7500
9.0000
9.2500
9.5000
9.7500
10.0000
T =
298.0000
298.2768
298.5515
298.8243
299.0951
299.3639
299.6307
299.8956
300.1585
300.4195
300.6785
300.9357
301.1909
301.4442
301.6956
301.9452
302.1929
302.4387
302.6826
302.9248
303.1651
303.4035
303.6402
303.8750
304.1081
304.3394
304.5689
304.7967
305.0227
305.2469
305.4695
305.6903
305.9093
306.1267
306.3424
306.5565
306.7688
306.9795
307.1885
307.3959
307.6017
Ahora si no quieres los valores de t y de T, entonces ejecutas de esta manera.
>> [t,T]=sistemasdsolve2;
es decir le pones punto Y coma al final.
En ambas formas de ejecutar el programa, te saldrá una grafica en el primer plano.
Saludos.
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR EN MATLAB
[email protected]