Professional Documents
Culture Documents
27 de agosto de 2012
Se aproxima la situacin real del ro por un modelo simplificado que permite un mejor manejo a la hora de realizar el planteamiento por mtodo de diferencias finitas como se muestra a continuacin. Se implementar un algoritmo directo que resuelva el problema presentado en los casos I y II para una discretizacin de tamao arbitrario (h=k para simplificar la discretizacin) mediante un mtodo directo.
El problema se resuelve a travs de la ecuacin de Laplace, donde es el potencial de velocidades en todo el espacio
1.1 Metodologa Se utilizar los conceptos estudiados en clase para aplicar el mtodo de diferencias finitas. El problema ser resuelto mediante el software matemtico Matlab R2010a.
2.1 Discretizar regin con grilla regular de paso h en direcciones x e y 2.2 Escribir ecuaciones de diferencias para cada punto de la grilla 2.3 Se obtiene un sistema lineal de ecuaciones = 2.4 El sistema se resuelve numricamente: Mtodo directo, por ej.: Gauss Mtodo iterativo
2.1 Discretizacin: Se discretizar el ro en varios puntos separados por espacios h en los ejes x e y respectivamente, de manera de analizar cada punto. El sistema de referencia que se utiliza fija el punto (1,1) en la esquina inferior izquierda del ro, donde la primera coordenada (i) corresponde al movimiento horizontal y la segunda (j) al vertical.
2.2 Ecuaciones de diferencias: Interior y lados +1, + 1, 4, + ,+1 + ,1 = 0 , (13) 22, + 1,1 41, + 1,+1 = 0 , 2 4 2,2 + 1,1 4,1 + +1,1 = 0 , 5 7 21, + ,1 4, + ,+1 = 0 , 8 , 10 12 2,1 + 1, 4, + +1, = 0 , 9
3 3 3 3
2.2 Ecuaciones de diferencias: Esquinas Esquina 1: 22,1 + 21,2 41,1 = 0 Esquina 2: 22, + 21,1 41, = 0 Esquina 3:2,2 + 21,1 4,1 = 0 Esquina 4: 21, + 2,1 4, = 0 Esquina 5: 231, + 23,1 43, = 0
7 7 7 3 3 3
2.2 Ecuaciones de diferencias: Condiciones de borde A: 21, + ,1 4, + ,+1 = 2 10 B: 22, + 1,1 41, + 1,+1 = 2 10 C: , = 10 D: , = 100 E: , = 0
Luego como cada punto (incgnita) tiene una ecuacin asociada, el problema se convierte en resolver un sistema lineal de ecuaciones:
Donde = = , . Luego el problema se simplifica solamente en determinar la matriz A y el vector b, donde la solucin final sera = 1 .
Funcin df(h,c); Primero se obtienen los valores de los parmetros h y el caso que se quiere estudiar c, que para el caso 1 de estudio es 0 y uno para el caso 2. Luego se calcula la cantidad de puntos para poder construir la matriz A.
tab=zeros(N,2); k=1; for j=1:m1 for i=1:n1+1 tab(k,1)=i; tab(k,2)=j; k=k+1; end end for j=m1+1:m1+m2+1 for i=1:n2+1 tab(k,1)=i; tab(k,2)=j; k=k+1; end end
%A1
%A2
Se construye una tabla de conversin para almacenar los puntos de la grilla. Luego se construyen las matrices A1 y A2.
A=sparse(N,N); b=sparse(N,1); [i,j]=getIJ(k,tab); A(k,k)=-4; %diagonal elseif i==n2+1 %lado 6 A(k,k)=-1; b(k,1)=-100; A(k,getK(i-1,j,tab))=1; A(k,getK(i+1,j,tab))=1; A(k,getK(i,j+1,tab))=1; A(k,getK(i,j-1,tab))=1;
Se crean la matriz A y el vector b y se rellenan dependiendo de las condiciones de borde. Aqu se muestra el caso de la condicin de borde del tipo Dirichlet en el lado 6 y adems de un punto cualquiera que no corresponde al borde del ro .
U=A\b; u=zeros(n2+1,m1+m2+1)*NaN; for k=1:N [i,j]=getIJ(k,tab); u(i,j)=U(k); end u=u'; u=u-min(min(u));
Se resuelve el sistema de ecuaciones, se ordena la solucin como matriz pasando al sistema de 2 ndices.
ex=0:h:6; ey=0:h:7;
pcolor(ex,ey,u); colormap('hot'); colorbar(); title('Potencial de Velocidades 2D'); xlabel('x [m]'); ylabel('y [m]'); zlabel('Potencial de Velocidades');
Se generan los grficos pedidos siguiendo la misma lgica: Potencial de velocidades 2D y 3D Campo de velocidades utilizando flechas Magnitud de la velocidad en cada punto El diagrama de flechas de la velocidad
Dentro del cdigo se utilizaron las funciones getK(i,j,conv) y getIJ(k,conv) que sirven para cambiar de 1 a 2 ndices y viceversa segn el vector conv que fue creado con ese propsito. Estas funciones corresponden a las encontradas en U-cursos.
Se recomienda ingresar el cdigo en la forma: [A,b,u,tab,t]=df2(h,c) De esta manera adems de generar los grficos, se mostrarn las matrices de inters y el tiempo que transcurre en la ejecucin del programa.
df(1,0)
df(0.5,0)
df(0.1,1)
df(0.5,1)
Caso 1 Caso 2
Es posible implementar con total satisfaccin el mtodo de diferencias finitas a travs de MATLAB. El uso de este software facilita la interaccin del usuario con la programacin a travs de su sencillo lenguaje y es posible lograr grandes resultados en unas pocas lneas. Las dificultades presentadas radican esencialmente en la buena disposicin del sistema de coordenadas y la metdica implementacin de las condiciones de borde adecuadas para cada punto.
Las aplicaciones de esta herramienta tiene una gran aplicacin en todos los aspectos de la Ingeniera (Hidrodinmica, Elctrica, Mecnica, Qumica, Matemtica, etc.) y no solo en Computacin.
La aproximacin discreta para ecuaciones diferenciales de aspecto continuo es aceptable dentro del contexto de resolucin y luego visualizacin grfica de su solucin. La visualizacin grafica de un conjunto de datos nos proporciona mayor facilidad para el entendimiento de correlaciones y/o comportamientos de la solucin de manera mas rpida y fcil.