Monday, October 30, 2017

20ma Clase Métodos Numéricos

b)
 >> F=@(V) 8 + V(1) - 2*V(2).^2 + V(2).*V(3) - V(1).*V(2).*V(3) - V(1).^2.*V(3).^3+V(1).*2;
>> DF=@(V) JACOB_APROX(F,V)';
>> pc=NR_MULTI(DF,[1;-1;1],10);
>> DF(pc)

ans =

   -4.1589
   -0.1374
   -5.9782

>> pc=NR_MULTI(DF,[1;-1;1],20);
>> DF(pc)

ans =

    8.8966
    0.1357
   -8.9916

>> pc=NR_MULTI(DF,[1;-1;1],30);
>> DF(pc)

ans =

  1.0e-005 *

    0.1262
    0.1362
    0.1197


(RESPUESTA)
>> pc

pc =

    0.1743
    0.3859
    1.8696

>> 



otro parcial: ej 2 t 1

armar A=[exp.... modelo del problema]
X=[...]';
Y=[...]';


cf= pinv(A)*Y;
Yx=@ (X) cf(1)*exp(....)

 es una de dos ecuaciones y dos incognitas

>>H=@(V) [integra (Yx,V(1),V(2)
<<sol=NR_multi(H,[0................................4;0.45],10]
 

Tuesday, October 24, 2017

19ta Clase Métodos Numéricos

Ejercicios

1)
Descargar de eva.uca.edu.ar en el tema 3: fun.m (ponerla en la carpeta de MATLAB)
Tratar de resolver fun(X)=0
(hallar X/fun(X)=0 +- 10^-12)

  1. Con bisección (sugerencia ver que fun(-2)>0 y fun(0)>0)
  2. ¿Cuanto tarda?
  3. ¿Se puede usar N-R?

2)
Buscar alguna solucion de

 |    2Z-XY^2=2XZ-3X^2
<|    XY^3-2ZY=X^2-1
 |    4Z^2X=Y^4*cos(2Z-3X)

1)
  1. Elapsed time is 129.414639 seconds.
>> sol_ap=0;
>> i=0;
>> while (abs(fun(sol_ap))>10^-12)
i=i+1;
sol_ap=biseca(@fun,-2,0,i);
end
>> fun(sol_ap)

ans =

 1.6920e-013

>> i

i =

    39

>> sol_ap

sol_ap =

  -1.9625
b)
No se puede usar la técnica de Newton y Raphson por ser imposible calcular la derivada. Basta con ver el codigo.

2)
IMG_3011(1).jpg

>> H=@(V) [2*V(3)-V(1).*V(2).^2-2*V(1)*V(3)+3*V(1).^2;V(1)*V(2)^3-2*V(3)*V(2)-V(1)^2+1;4*V(3)^2*V(1)-V(2)^4*cos(2*V(3)-3*V(1))];
Cualquiera que cargue H en matlab se dará cuenta lo facil que es cometer un error, confundir V(1) con V(2) o lo que sea.

Cargar DH sería un trabajo eterno.


Si uno se da la maña y lo hace deberia obtener:

>> sol=N_R(H,DH,[1;1;1],12)

    1.000
1.7321
1.5000


Ventajas y desventajas de N-R

Cuando converge suele hacerlo rápido
Se generaliza facil a varias variables
Puede usarse para hallar ceros aunque no haya cambio de signo
No siempre converge
No siempre es cómodo hallar DH






















Método de la secante
Sin título.png
______________________________________________________________________________
function x=secante(h,x0,x1,N)
x=x1;
xant=x0;
for k=1:N
temp=x-h(x).*(xant-x)./(h(xant)-h(x));
xant=x;
x=temp;
end
______________________________________________________________________________

>> sol=secante(@fun,-2,-1.9,8)

sol =

  NaN

>>
Cuando le doy demaciados pasos, puedo tener este problema. Es porque encontró la solución exacta y luego dividió por 0.



Para aproximar DH podemos pensar cada uno de sus terminos como por (H(X+e)-H(X-e))/2e con e muy chico.
______________________________________________________________________________

Paréntesis:

Nargin: cantidad de variables definidas en la entrada, recibidas realmente.
Por ejemplo la funcion JACOBS_APROX acepta tres terminos, si yo omito el último número, Nargin vale 2, si lo completo vale 3.

Nargout: cantidad de terminos de salida.
______________________________________________________________________________

>> F=@(X) exp(X^2)-2*X^5+X+1;
>> JACOB_APROX(F,2)

ans =

  59.3926

>> df=@(X) exp(X.^2).*2.*X-10.*X.^4+1;
>> df(2)

ans =

  59.3926

>>

Comprobado que da lo mismo (muy similar)

>> DH=@(X) JACOB_APROX(H,X);
>> sol=N_R(H,DH,[1;2;1],12)

sol =

    1.0000
    1.7321
    1.5000

>>


Para simplificar estos dos pasos anteriores en uno solo, creamos NR multi:

>> sol=NR_MULTI(H,[1;2;1],12)

sol =

    1.0000
    1.7321
    1.5000

>>
______________________________________________________________________________

function sol=NR_MULTI(H,x0,n,epsi)
if nargin==3
    epsi=sqrt(eps(1+norm(x0)));
end
sol=x0;
for k=1:n
    sol=sol-inv(JACOB_APROX(H,sol,epsi))*H(sol);
end
______________________________________________________________________________

Monday, October 23, 2017

18va Clase Métodos Numéricos

Metodo bisección vimos en clase anterior.

Ahora estudiaremos el método de Newton - Raphson:

H(x)=0 (?

Ecuacion no lineal. No es facil o resulta imposible despejar x

IDEA: plantearemos una solucion lineal que se parezca a H.


Si X1 es una “solución aproximada” (o si X1 esta cerca de la solución)

Sin título.png
Hallo Xn/H(Xn)=0
Busco L=H cerca de Xn lineal
Hallo Xn+1 : L(Xn+1)=0=H(Xn+1)

La propuesta: Si hitero un par de veces y H(Xn) se parece a 0, uso este metodo. De lo contrario busco la solucion en otra zona o cambio de metodo.


Se generaliza a varias variables:

L: DH(Xn) * (X-Xn) + H(Xn)=0

Ejemplo:

X^3=3X+1

h(X)=X^3 -3X-1=0

Bisección:

h(0) =-1 <0
h(2)=1>0

m=0+2/2=1
h(1)=-3

Hitero luego:

h(1)<0
h(2)>0

m2=1+2/2=1.5
h(1.5)=...(es menor a 0..) <0

Hitero:

h(1.5)<0
h(2)>0

m3=1.5+2/2=1.75

h(m3) todavia da negativo

Hitero:

h(1.75)<0
h(2)>0

m4=1.875
h(m4)=

Etc etc



Con N-R

X1=1 (punto de partida)

Xn+1=Xn-(DH(Xn))^(-1)*H(Xn)



>> Xap=2;
>> H=@(X) X.^3 -3*X-1;
>> DH=@(X) 3*X.^2-3;
>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8889

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8795

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

Asintótico en 1.8794

a)
Verificar que para h(X)=x^3-3x-1 con N=5 se obtienen Xap=1.8794
b)
Buscar soluciones de exp(x)=x+5 a partir de X1=2
c) Buscar soluciones de X^4=10X^2+cos(X) a partir de algun x1 adecuado.

a)

>> Xap=2;
>> H=@(X) X.^3 -3*X-1;
>> DH=@(X) 3*X.^2-3;
>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8889

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8795

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

>> Xap=Xap-(DH(Xap)^(-1)*H(Xap))

Xap =

    1.8794

Asintótico en 1.8794

b)

>> H=@(X) exp(X) - X - 5;
>> DH=@ (X) exp(X)-1;
>> X1=2;
>> Xap=N_R(H,DH,X1,10)

Xap =

    1.9368

>>

c)
>> H=@(X) X.^4-10*X.^2+cos(X);
>> DH=@(X) 4*X.^3-20*X-sin(X);
>> X1=1;
>> Xap=N_R(H,DH,X1,10)

Xap =

    0.3101

>> Xap=N_R(H,DH,X1,20)

Xap =

    0.3101

>> H(Xap)

ans =

    0









>> Xap=N_R(H,DH,4,20)

Xap =

    3.1779

>> H(Xap)

ans =

-5.3291e-015


d)

>> H=@ (V) [V(1)*V(2)+2*V(1).^2-2*V(2).^2-2+V(1); cos(V(2)+1)-V(1)^2+V(2)^2];
>> DH=@ (V) [V(2)+4*V(1)+1 V(1)-4*V(2); -2*V(1) -sin(V(2)+1)+2*V(2)];
>> Xap=N_R(H,DH,[1;-1],10)

Xap =

    1.4142
  -1.0000

>>






Monday, October 9, 2017

15ta Clase Métodos Numéricos

>> F=@(X) sin(X.^2)

F =

    @(X)sin(X.^2)

>> inte1=inte_exp(F,2,3,20,2)
??? Undefined function or method 'inte_exp' for input arguments of type
'function_handle'.

>> inte1=inte_aprox(F,2,3,20,2)

inte1 =

   -0.0312

>> inte2=inte_aprox(F,2,3,15,3)

inte2 =

   -0.0312

>>

Friday, October 6, 2017

1er Parcial 2017

Ejercicio 1:
Pedía demostrar si un flujo U(x,y) que te daban completo, era o no posible, y después sacar la función corriente.

Ejercicio 2:
Pedía calcular la fuerza requerida para mantener un cono en posición al entrentarlo de punta contra un chorro de agua libre que recien salía de un caño.

Te daban la velocidad del agua y el area del chorro antes de chocar contra el cono. Había que considerar que el area cambiaba de forma pero no de magnitud, en la zona del impacto. Como consecuencia la velocidad era tambien la misma, y habia que aclarar que eso se daba porque se consideraba un flujo incompresible.

Ejercicio 3:
Te daban un sistema donde se usaba un tubo muy delgado para medir la presión manometrica dentro de un recipiente. El fluido subía 15cm, y te decia que parte de esos 15cm eran por efectos de capilaridad. La pregunta era que porcentaje, es decir Hcapilaridad/15cm. habia que haber anotado la formula de asenso por capilaridad, como menciono en 10 Consejos sobre Mecánica de Fluidos, despues de cursarla 3 veces .

Ejercicio 4:
Daban una compuerta circular sumergida, que tenía un eje en el centro. Al no aplicarse la fuerza resultante en el centro se generaba un torque y pedía calcular la fuerza necesaria para contrarrestarlo si esta se aplicaba en el extremo inferior de la compuerta.

Ejercicio 5: 
Era un problema de compuerta cilíndrica sumergida, en el que se pedía estudiar el torque para deducir la fuerza necesaria para mantenerla cerrada si la misma se aplicaba en un punto que nos daban en un dibujo esquematico.

INDEX: MECÁNICA DE FLUIDOS


10 Consejos sobre Mecánica de Fluidos, despues de cursarla 3 veces


Mientras cursaba y recursaba MEC Ambiental, y estaba cada vez más seguro de que tenía que dejar la carrera, cursaba Mecánica de Fluidos con Miralles y Contento.

En 2017 cambié de Ingeniería Ambiental a Ingeniería Industrial, perdí basicamente 2 años y empecé de 0 en 3er año de la mencionada carrera.

Ahora, en el segundo cuatrimestre 2017 acabo de rendir la materia, y estos son mis consejos despues de haberme tomado en serio el estudio de esta materia y entendido (creo) los temas.

1 - Tomar apuntes detallados, buscando destacar las ecuaciones que se sugieren importantes por los profesores, es importante que sean visibles para identificarlas facilmente al repasar.
2 - Hacer todos los ejercicios de las prácticas de Contento siguiendo la practica al día, primero sin mirar los resueltos.
3 - Darle importancia especial a la parte de cinemática de Miralles, definiciones teóricas como "flujo posible" a veces parecen obvias y no importantes y despues aparecen en el parcial, prestar atencion a definiciones, especialmente si involucran formulas.
4 - Una semana antes del parcial, agarrar los ejercicios resueltos y hacer un resumen de todas las formulas teóricas que aparecen y que usa para resolver ejercicios. Luego complementar con las formulas que hayas destacado en la clase teórica.
5 - Leer la explicación del Teorema de Reynolds del Sengel & Cimbala y prestar atencion a los casos especiales. Casi siempre el volumen de control se define fijo y la intimidante integral doble integral triple es una suma simple.
6 - SIEMPRE TOMAN EJERCICIOS DE ADIMENCIONALES EN LOS PARCIALES DONDE ENTRA jaja. En este caso te hacen un favor, es el tema más mecánico que tiene la materia, si bien intimida un poco por ser un concepto nuevo, no es nada del otro mundo cuando lo entendés. Es basicamente un proceso.
7 - No hay un número infinito de tipos de ejercicio. Hacer un apunte del procedimiento de los distintos tipos de ejercicio, en detalle primero y paso a paso, para entender bien el proceso, y luego resumirlo a los pasos realmente relevantes que usarías en el examen, para que se entienda el procedimiento de resolución propuesto.
8 - Esperan que los ejercicios sean resueltos en un formato como el siguiente:
Formulas teóricas que vas a usar para resolver, y si considerás necesario, una breve justificación o explicación de porque usas esa formula.
Resolución ordenada con números acompañados por unidades siempre
Resultado final claro al final del ejercicio.
La evaluación se basa primero y principal en la comprensión teórica de lo que el problema pedía y como aplicar los conocimientos adquiridos para resolverlo, es decir que entendés el problema y aplicás correctamente la teoría, usando la formula correcta de la manera correcta dado el problema.
Si eso está bien el problema tiene un 4 digamos. El resultado numérico y los procedimientos prolijos por ejemplo usando unidades cuando reemplazamos la ecuación por números es importante para subir puntos.
Siempre se piden prácticamente 3/4 de los problemas bien resueltos.
Lo mejor que podés hacer por vos mismo ese día es saber cada formula y cada tipo de ejercicio para que cuando llegue la hoja de la verdad sepas identificar que es lo que hay que hacer en cada uno para plantearlos teóricamente, y que resolver el parcial sea cuestion de no haber dejado nada afuera de tus resumenes y haber entendido bien la teoría.
9 - La teoría se aprende en dos pasos: 1) Leer el libro sobre los temas que tenés dudas teóricas: De donde sale cada cosa, donde se aplica, etc. 2) Discutir el tema con compañeros para entenderlo proactivamente con todos los sentidos y no solo con la vista y el neocortex. Ver videos en youtube cuando estudiar del libro se vuelve imposible.
10 - Las clases duras y largas como esta no son humanamente bancables. Necesitas usar técnicas para que tu cerebro, que está hecho para mantener la atención 25 minutos, aguante una clase de 6 horas.
Mi recomendación es tomar mate. Y caramelos para regular el azucar en sangre cuando sientas que ni el mate te levanta. El café me resulta contraproducente, es un pico muy corto para un valle hasta peor que si no hubiera tomado nada cuando el nivel de azucar baja, a las pocas horas. No es ningun secreto  a esta altura la verdad. GRACIAS CEIUCA si fueron uds por gestionar los dispensers de agua.



Contexto: Porqué recursé 3 veces.

En 2015 comencé a trabajar en FILA Argentina como representante de ventas mientras estudiaba. Era una buena opción, me permitía trabajar a la mañana y estudiar a la noche.
Sin embargo, para hacer corta una larga historia, el primer trimestre de 2015 los parciales fueron fáciles, (en mi humilde opinion) y pasé Fisicoquímica y Termodinámica sin saber lo suficiente para encarar el final de ninguna manera.
En base a eso, dí los finales de las otras tres materias que curse ese cuatrimestre y deje esos finales para febrero, pero lo importante es que asumí que el resto de la carrera podría estar tranquilo ocupándome de mi cartera de clientes y atendiendo lo mínimo indispensable a la facultad.
Ese cuatrimestre recursé la materia central de Ingeniería Ambiental, Muestreo Evaluación y Control Ambiental. Cuando me enteré de la noticia desistí de mi intento de recuperar Mecánica de Fluidos. Según el reglamento vigente en 2015, recursar MEC Ambiental es básicamente repetir el año en la UCA.
El año siguiente volví a tomar algunas materias que podía adelantar, 2 en el primer cuatrimestre y 3 en el segundo si no me equivoco. Volví a recursar MEC Ambiental, básicamente porque si bien me era interesante no podía aguantar esas clases.
En resumen mientras mi carrera era un desastre, en mi trabajo desarrollé clientes nuevos como Cúspide del grupo Clarín, Librería Helios y Tejanú  en Zona Norte y más.
Vi una oportunidad y empecé una marca de mochilas y cartucheras (chivo jeje) astuccio.com.ar que le vendí a mis clientes con éxito, y empecé a dedicarle más trabajo y tiempo a eso, que me apasiona por lo mucho que me enseña todos los días del mundo, y evité sentarme a estudiar los mapas de palabras clave de MEC Ambiental.

Mientras cursaba y recursaba MEC Ambiental, y estaba cada vez más seguro de que tenía que dejar la carrera, cursaba Mecánica de Fluidos


Tuesday, October 3, 2017

14ma Clase Métodos Numéricos

Dados los siguientes datos:
X=-4:0.5:5;
Y=[0.1;0.2;0.3;0.6;1.3;2.5;3.8;3.6;2.5;1.6;1.1;0.8;0.6;0.5;0.4;0.3;0.3;0.2;0.2];

a)
Graficar los puntos

>> X=-4:0.5:5;
>> Y=[0.1;0.2;0.3;0.6;1.3;2.5;3.8;3.6;2.5;1.6;1.1;0.8;0.6;0.5;0.4;0.3;0.3;0.2;0.2];
>> plot(X,Y,'*')
>>
f1.png










b) Hallar a,b,c,p y q/ F(X)=(A*e^(-X^2)/2 + bx + C ) / px^2+qx+1=Y

>> A=[exp(-X.^2) X X.^0 -Y.*X.^2 -Y.*X];
>> a=pinv(A)*Y

a =

    0.5146
    0.3656
    2.0646
    0.5010
    0.9714

>> F=@(X) (a(1)*exp(-X.^2 /2) + a(2)*X + a(3))./(a(4)*X.^2 + a(5)*X + 1);
>> norm(Y-F(X))/norm(Y)

ans =

    0.0274

>> plot(X,Y,'*',X,F(X));
f2.png







c) comparar en el grafico el polinomio de grado 10 y hallar p(x) =a1x^10 + a2*X^9 + …
>> p=polyfit(X,Y,10);
>> Fp=@(X)polyval(p,X);
>> plot(X,Y,'*',X,Fp(X));
>> norm(Y-Fp(X))/norm(Y)

ans =

    0.0644

>>

d) Estimar los valores de y para X=-3.3 X=-3.8 X=4.9 X=-7 X=8 usando F(X) y p(X)

>> F(-3.3)

ans =

    0.2646

>> Fp(-3.3)

ans =

    0.3420

>> F(-3.8)

ans =

    0.1487

>> Fp(-3.8)

ans =

  -0.1387

>> F(4.9)

ans =

    0.2168

>> Fp(4.9)

ans =

  -0.0364

>> F(-7)

ans =

  -0.0264

>> Fp(-7)

ans =

 7.5590e+003

>> F(8)

ans =

    0.1222

>> Fp(8)

ans =

 6.3579e+003

>>


APUNTE:
Planteemos una resolución de cocientes donde numerador y denominador son polinomios

Armamos una función que nos va a dar los coeficientes de los polinomios del cociente:


Function [P,Q]=padefit(X,Y,n,m)
A=[]
For
A=[X^n]
A=[X^n X^n-1]
End
For
A=[X^n … X^0 -YX^m]
A=[X^n … X^0 -YX^m -YX^m-1]
End
coef=pinv(A)*Y;`p=coef(1,n+1)
P=coef(1,n+1)
Q=coef(n+2;end)


Por otro lado tenemos una funcion similar a polyval, que llamaremos padeval

Function Y=padeval(P,Q,X);
Y=polyval(P,X)./polyval([Q;1],X);


Link a carpeta con funciones


>> A=[X X.^0 -Y.*X.^2 -Y.*X];
>> coef=pinv(A)*Y

coef =

    0.4147
    2.4551
    0.6172
    1.0688


Podremos entonces reemplazar:
>> g=@(t) (coef(1)*t + coef(2))./(coef(3)*t.^2+coef(4)*t + 1);

Con nuestra función Padeval:
>> g=@(t)padeval(P,Q,t);
>>


EJERCICIO:
a) Graficar los datos
>> X=(-4:0.5:6)';
>> Y=[27.4;21.2;16.1;12.1;9.1;6.8;5.6;6.9;2;3;3.8;4.9;6.4;8.2;10.3;12.8;15.4;18.4;21.5;24.9;28.5];
>> plot(X,Y,'*')
>>
f3.png
b) Hallar el modelo de Padé de grados P y Q lo menor posible tales que el error relativo sea menor a o.o3 (3%)
>> [n,m]=busca_grados_pade(X,Y,0.03)

n =

    3


m =

    2

>> [P,Q]=padefit(X,Y,n,m)

P =

    2.5487
    0.9917
    8.4346
    2.2246


Q =

    0.1691
    2.5568

>> g=@(X)padeval(P,Q,X);
>>norm(Y-g(X))/norm(Y)
ans =

    0.0270

>>


c) Hallar el p(X) pol de menor grado con error relativo de 3% y graficar. ¿Quien tiene menos parámetros, g o p?

>> cp=polyfit(X,Y,k);
>> p=@(t)polyval(cp,t);
>> ep=norm(Y-p(X))/norm(Y);
>> while ep>0.03
k=k+1;
cp=polyfit(X,Y,k);
p=@(t)polyval(cp,t);
ep=norm(Y-p(X))/norm(Y);
end
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
Warning: Polynomial is badly conditioned. Add points with distinct X
         values, reduce the degree of the polynomial, or try centering
         and scaling as described in HELP POLYFIT.
> In polyfit at 80
>> k

k =

    18

>>