Matlab - matlab

   
Vista:

matlab

Publicado por alberto (1 intervención) el 27/11/2008 18:50:34
hola
soy un estudiante de ingenieria química y estoy buscando alguien para que me de clases o me ayude con matlab, tengo un sistema de varias ecuaciones diferenciales que van relacionadas unas con las otras y no tengo ni idea de como resoverlas.
soy de barcelona, espero que alguien me pueda ayudar
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:matlab

Publicado por Ramiro (2 intervenciones) el 01/12/2008 00:15:01
Alberto:
Dependiendo de como sea el sistema que quieres resolver, te recomiendo que uses:
1) Si es lineal, en las magnitudes buscadas, x, y , z,, etc y en sus derivadas dx/dt, dy/dt, dz/dt, etc. Usa la instrucción dsolve de matlab, más o menos en estos términos
>> S=dsolve('Dx=7*x+6*y-10*exp(3*t)','Dy=2*x+6*y-5*exp(3*t)')

S =

x: [1x1 sym]
y: [1x1 sym]

>> S.x

ans =

3/7*C1*exp(3*t)+4/7*C1*exp(10*t)+6/7*C2*exp(10*t)-6/7*C2*exp(3*t)+10/7*exp(3*t)

>> S.y

ans =

2/7*C1*exp(10*t)-2/7*C1*exp(3*t)+4/7*C2*exp(3*t)+3/7*C2*exp(10*t)+5/7*exp(3*t)

Nota que esta respuesta es simbólica y que por lo tanto puede tener problemas, ya que por regla general los métodos simbólicos tienen menos alcance que los numéricos.
2) Usa cualquiera de los métodos numéricos ode23, ode45,...
Toma como ejemplo la ecuación de Van der Pol o la de Lotka Volterra.
Par ver los ejemplos, una vez en matlab, escribe demos en el "command window" y después sigue la secuencia matlab->numerics->Numerical integration of diferential equations; dando dos clicks consecutivos en este último aparecerá el demo de la ecuación de Lotka-Volterra síguelo tal cual se presenta y tomalo como patrón para resolver el problema que desees resolver haciendo las modificaciones necesarias en la instrucción:
>>[t,y] = ode23('lotka',[t0 tfinal],y0);
redefiniendo tu sistema en un archivo función similar al que se muestra llamano a la función lotka
>> type lotka

function yp = lotka(t,y)
%LOTKA Lotka-Volterra predator-prey model.

% Copyright 1984-2002 The MathWorks, Inc.
% $Revision: 5.7 $ $Date: 2002/04/08 20:04:46 $

yp = diag([1 - .01*y(2), -1 + .02*y(1)])*y;
Espero que te apun te sirva.
Saludos para esa tierra de grandes escritores a los que admiro y que últimamente están obteniendo sus bien merecidos reconocimientos:
Hablo de Juan Marsé y de Juan Goytisolo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar