Iniciar sesiónCrear cuenta

Matlab - Gota de champu.Ecuaciones diferenciales

Vista:

Gota de champu.Ecuaciones diferenciales

Publicado por JuanMix (1 intervención) el 09/03/2010 23:55:59
Buenas noches,
Tengo que realizar un scritp que me calcule la caida de una gota de champu... no se utilizar las ecuaciones diferenciales y hize poco...

Les pongo el enunciado en ingles que es como lo tengo y lo que fui capaz de hacer, espero que puedan ayudarme..

In a memorable TV commercial that aired several years ago, a small bead was placed inside a transparent bottle of Prell® shampoo, and allowed to drop ever so slowly through the thick green liquid. The commercial was visually striking because the descent of the bead was so smooth, so gradual, almost hypnotic.
The bead dropping through the shampoo is an example of a body moving through a resistive medium. To take another example, we are all aware of air resistance—you can feel it by sticking your hand out the window of a moving car. Let’s think a bit more carefully about the physics of the shampoo problem.
The motion of the bead is governed by Newton’s law F = ma. If v(t) denotes the bead’s velocity (measured positive downward, for convenience), then Newton’s law becomes

where m is the mass of the bead, g is the acceleration due to gravity, and b is a measure of the viscosity, or frictional resistance, provided by the shampoo. Here, the drag force
–bv is taken to be proportional to velocity, as found experimentally for small objects moving slowly through a highly viscous medium.
1.
Using the Matlab plot the graph v(t) for a few different choices of m and b. The bead is assumed to be released at rest: v(0)=0
2.
The velocity appears to approach a limiting value (known as the terminal velocity). Find a formula for the terminal velocity and compare its value to the result of the simulations.
3.
Find the time required for the bead to reach 50% of the terminal velocity. Does this time increase or decrease as you increase the viscosity b?

m*dv/dt= -bv+mg

ECUACION SIR

function dydt= ecuacionSIR (t,V);
%function dydt= ecuacionSIR (t,y);
%teniendo en cuenta que hay dos ecuaciones:
%es un vector fila, y hay que dárselo en vector columna

global b m g
dydt=(-b*V+m*g)/m;
dydt=dydt';
return

Script

clc;
close all;
clear all;

global b m g

m=1; %masa en kilos
g=9.8; %m/s2
h=0.01; %paso temporal

V(1)=0; %vel inicial

%valor exacto
[t,V_ex]=ode45('ecuacionSIR',[0,200],V(1));

t2=0:h:200;
V=zeros(size(t2));
ndata=length(t2);
for j=1:ndata-1;
V(j+1)=V(j)-((-b*V(j)+m*g)/m)*h;
end

plot(t2,V,'g-')
hold on
plot(t,V_ex,'r')

Muchas gracias por todo
Valora esta pregunta
0
Otras secciones de LWP con contenido de Matlab

RE:Gota de champu.Ecuaciones diferenciales

Publicado por Dave (934 intervenciones) el 10/03/2010 16:43:20
Hola Juan,

Muy interesante el problema que les planteo el profesor, este tipo de ejercicios se resuelve mediante ecuaciones diferenciales con condiciones iniciales, para su solución debes aplicar metodos numericos, el metodo mas simple es el de Euler.
Espero que sea de alguna ayuda.

Saludos
Dave

Por alguna consulta:
correa.dave30@gmail.com
Valora esta respuesta
0