Open gitrmora opened 7 years ago
Hola Creo que hay un problema con los métodos, pues no se obtienen los mismos resultados. Ya que los espacios fase que se obtienen en moretest.ipynb y en proy.ipynb son distintos utilizando los mismos valores para t0,tf,alfa y beta. Sin embargo, ambos coinciden en el caso de beta=0
Y tú método ¿como funciona?
El mio no funciona, he estado usando el archivo que subió Rubén para tratar de obtener la ymin para hacer la gráfica de la página 377.
¿Has conseguido algo?. ¿Podrías también utilizar mi código?.
Aún no, el problema que tengo es guardar los puntos donde x=0, ya que hay puntos muy próximos pero no son exactamente cero. Si, estaré viendo también si puedo obtener la y minima con el tuyo.
No entiendo que es lo que haces. En mi caso tengo que dar los valores de x_0 y y_0. ¿Como doy con y_min?
y_min se supone es cuando x=0. En proy.ipynb al usar el integrador (t2, sol2) = integradorT2(ec1, t0, tf, x̄, 10000, 1e-50);
devuelve t2 = [tiempos] y sol2 = [x1,y1; x2, y2;....]. Del conjunto de x1,x2,x3.....etc trato de hallar aquellos que sean más cercanos a cero, pues a cada uno de estos valores les corresponderá un valor de y, el cual será una y_min.
Teniendo ese valor, creo una matriz:
solucion=zeros(n,n)
donde n son sus dimensiones
for i=1:n for j=1:n α=α1[i] β=β1[j]
#=Los valores de α y β irán cambiando por lo que en cada paso se debe
calcular la solución=#
(t2, sol2) = integradorT2(ec1, t0, tf, x̄, 100, 1e-50);
y2 = map(y -> y[2], sol2)
#=En esta parte va el método que obtiene y_min=#
end
solucion[i:i,j:j] =#y_min
end
end
Luego la matriz solucion[i:i,j:j]
se introduce en el método para graficar en 3D
El problema con lo que haces es que no necesariamente alguna componente de sol2 = [x1....] va a ser cero, más bien nosotros tenemos que asegurarnos de que eso suceda.
si, de hecho, tengo una duda ahi, si logramos asegurar que x=0, según yo, lo sería en más de un punto, por lo que tendríamos más de una y_min
para cada par de valores de alfa y beta
Tienes razón. En mis gráficas obtengo una solución periódica, así que existen un número infinito de puntos que satisfacen esa condición.
A menos que obtengamos el mínimo de todas esas opciones, pero serían muchos problemas y sólo lo lograriamos si tomamos un tiempo finito, ademas eso no nos asegura que encontremos el mínimo.
Eso cierto. Quizás el algoritmo del libro (que tampoco entiendo muy bien) considere, además de que x=0, una condición adicional para obtener y_min
Subi un archivo llamado articulo con parte de la traducción por si ayuda en algo.
ok, muchas gracias. Mientras trataré de seguir el algoritmo del libro.
Existe un gran problema. He revisado los 3 algoritmos ODE, el de Ruben y el mio. Ninguno tiene la misma solución. Revisen el archivo Proy...
Al escribir: t,x,y=integrador(f1,g1,x0,y0,t0,tf,ϵ,N)
lo que te regresa es un arreglo ¿el orden de este es [t1,x1,y1,t2,x2,y2.....]?
¿Estan conectados?. Ya no puedo seguir conectado. Le voy a enviar a Luis lo que logramos o no logramos hacer. ¿Que les parece?
yo sigo conectado. Estoy de acuerdo, lo que he hecho hasta ahora no ha funcionado. Creo que nos haría falta analizar con Luis los pasos del algoritmo para poder avanzar.
No. Lo que te da t,x,y=integrador(f1,g1,x0,y0,t0,tf,ϵ,N) son 3 vectores. Pruebalos escribiendo en un comando ln[ ]:x. ¿Sabes algo de Ruben?
ok. No, no he sabido de él desde su último comentario.
Ya mande lo que pude. Si me necesitan para algo solo por via telefónica a partir de ahora.
Hola, disculpen no reportarme. Hoy tuve algunas entregas mas, los siento
voy viendo el comentario de Benet, creo que @gitrmora ya se retiro pero estas tu @H-Cote ?
Deberíamos decirle algo respecto a que no pudimos implementar el algoritmo?
Hola
Veo difícil que podamos hacer algo aceptable con el tiempo que nos queda. Con lo del integrador tuvimos el problema de que los resultados de los integradores de proy.ipynb
y moretest.ipynb
devolvían resultados distintos, pero a su vez ambos coincidían para el caso de beta=0. Por otro lado, la obtención de y_min
se tornó complicada.
ok, estoy haciendo algunas cosas de comparar mi integrador con ode78, comparando trayectorias y energias como dijo Luis. planeo hacer algunos cortes de poincare (la cosa estroboscopica que menciona Luis) no creo acabar a tiempo pero igual hare un PR desde mi repositorio
@H-Cote checa mi fork, estare subiendo las cosas en una rama llamada proyecto
ok, veré que puedo hacer con lo del mapeo también
que te parece esto? crees que por aqui vaya? @H-Cote
¿es x vs x punto?
si, creo que puedo hacer esto para (a, b) = [0, 10]x[0, 10] y creo que ymin es el punto de estos que tenga y minima
si lo es, el punto es encontrarla. De acuerdo al libro, un primer paso para hallarla es definir deltas con los valores de x_k.
Para estas escribí lo siguiente:
`#delta x delta_x=[] x_fin=x2[end] for i=1:(length(x2)-1) delx=x_fin-x2[end-i] x_fin=x2[end-i] delta_x=push!(delta_x,delx) end
delta_x_max=delta_x[1]
for i=1:(length(delta_x)-1) if delta_x_max<=delta_x[i] delta_x_max=delta_x[i] end end delta_x_max
delta_x_min=delta_x[1]
for i=1:(length(delta_x)-1) if delta_x_min>=delta_x[i] delta_x_min=delta_x[i] end end delta_x_min`
No entiendo nada bien como aplicar el algoritmo.
Propongo que apelemos a la piedad de Luis y hablemos con el el lunes
Hola que tal. Subi los archivos moretest.ipynb y TaylorDiff2.jl donde implemento la ecuación diferencial y obtengo algunos resultados. ¿Ustedes obtuvierón lo mismo? .