From pych3m4 en gmail.com Tue Apr 1 14:28:05 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 1 Apr 2014 14:28:05 +0200 Subject: [Python-es] "sign" con pyOpenSSL 0.9 In-Reply-To: References: Message-ID: El 26 de marzo de 2014, 23:01, Jose Caballero escribió: > Hola, > > > ¿alguien sabe cómo se puede hacer algo similar a esto (*) con la > versión 0.9 de pyOpenSSL? > He visto que la última, la 0.14, trae un método llamado sign(). Pero > estoy forzado a usar la 0.9... > > (*) openssl rsautl -inkey -sign -in -out > > > Si alguien tiene un link a documentación de la versión 0.9 donde > explique como hacer "sign" estaré más que agradecido. > > pyOpenSSL es un "wrapper" de OpenSSL. Si no tiene lo que necesitas, te tendrás que hacer tu propio wrapper, bastante más complejo que intentar instalar una versión 0.11 o superior. También podrías usar M2Crypto, algo mejor que pyOpenSSL, y con función sign() desde la versión 0.16 (2006) https://github.com/martinpaljak/M2Crypto > Un saludo, > Jose > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kausdiv en gmail.com Wed Apr 2 10:18:31 2014 From: kausdiv en gmail.com (kausdiv) Date: Wed, 02 Apr 2014 10:18:31 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= Message-ID: <533BC7D7.3000306@gmail.com> Hola. Tengo una aplicación que trabaja en euros, conectada a un servidor de bases de datos. Ahora por ampliación de la empresa se va a utilizar desde Chile. Y debo agregar al programa el trabajo en divisas (Pesos y dolares). La verdad es que no se bien como acometer esta modificación. ¿ Alguien que tenga algo similar me puede dar una orientación ? Saludos. From kikocorreoso en gmail.com Wed Apr 2 10:28:28 2014 From: kikocorreoso en gmail.com (Kiko) Date: Wed, 2 Apr 2014 10:28:28 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= In-Reply-To: <533BC7D7.3000306@gmail.com> References: <533BC7D7.3000306@gmail.com> Message-ID: El 2 de abril de 2014, 10:18, kausdiv escribió: > Hola. > > Tengo una aplicación que trabaja en euros, conectada a un servidor de > bases de datos. > > Ahora por ampliación de la empresa se va a utilizar desde Chile. Y debo > agregar al programa el trabajo en divisas > (Pesos y dolares). > > La verdad es que no se bien como acometer esta modificación. > > ¿ Alguien que tenga algo similar me puede dar una orientación ? > Quizá este ejemplo simple te sirva: http://www.boxcontrol.net/write-simple-currency-converter-in-python.html#.UzvJpfs9DC4 Busca usando combinaciones de python 'money exchange' 'currency converter' en google. > > Saludos. > > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kausdiv en gmail.com Wed Apr 2 12:59:13 2014 From: kausdiv en gmail.com (kausdiv) Date: Wed, 02 Apr 2014 12:59:13 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= In-Reply-To: References: <533BC7D7.3000306@gmail.com> Message-ID: <533BED81.2010609@gmail.com> Se ha borrado un adjunto en formato HTML... URL: From davidmenhur en gmail.com Wed Apr 2 13:21:11 2014 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Wed, 2 Apr 2014 13:21:11 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= In-Reply-To: <533BED81.2010609@gmail.com> References: <533BC7D7.3000306@gmail.com> <533BED81.2010609@gmail.com> Message-ID: 2014-04-02 12:59 GMT+02:00 kausdiv : > Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome > esa moneda. O si el cliente quiere pagar en Pesos o Dolares... Depende completamente de cómo sea la aplicación. La idea más simple es trabajar internamente con euros y, a la hora de meter o sacar datos, multiplicas o divides por el factor de conversion (1 para EURO -> EURO). La idea más compleja es usar, en vez de números, objetos, donde has sobrecargado __str__, __repr__ y demás para que haga esta conversión automáticamente. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kikocorreoso en gmail.com Wed Apr 2 13:29:35 2014 From: kikocorreoso en gmail.com (Kiko) Date: Wed, 2 Apr 2014 13:29:35 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= In-Reply-To: References: <533BC7D7.3000306@gmail.com> <533BED81.2010609@gmail.com> Message-ID: El 2 de abril de 2014, 13:21, Da?id escribió: > 2014-04-02 12:59 GMT+02:00 kausdiv : > > Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome >> esa moneda. O si el cliente quiere pagar en Pesos o Dolares... > > > Depende completamente de cómo sea la aplicación. La idea más simple es > trabajar internamente con euros y, a la hora de meter o sacar datos, > multiplicas o divides por el factor de conversion (1 para ? -> ?). > > También dependerá de como venda la empresa de turno. Hay empresas que usan un precio por divisa, por ejemplo, en euros cuesta 100? y en dolares cuesta 120$ y no hay que hacer cambio de moneda, simplemente ir a tu tabla a rescatar el precio. Y en otros casos el precio es en una divisa y si se vende en otra divisa se hace la conversión con el cambio que toque en ese momento más un extra coste (bancos, cuentas, acuerdos entre paises,...) en caso de que la empresa lo necesite en la moneda original y vaya a una cuenta en el país de origen de la moneda original. Vamos, que depende del caso, como todo en esta vida. > La idea más compleja es usar, en vez de números, objetos, donde has > sobrecargado __str__, __repr__ y demás para que haga esta conversión > automáticamente. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jjgomera en gmail.com Wed Apr 2 15:11:57 2014 From: jjgomera en gmail.com (=?ISO-8859-1?Q?Juan_Jos=E9_G=F3mez_Romera?=) Date: Wed, 2 Apr 2014 15:11:57 +0200 Subject: [Python-es] =?iso-8859-1?q?Divisas_en_aplicaci=F3n?= In-Reply-To: References: <533BC7D7.3000306@gmail.com> <533BED81.2010609@gmail.com> Message-ID: Todo depende de como sea la aplicación que ya tienes. Yo haría los cálculos en la moneda que ya tiens programada y usando una clase que derive de float como [1] y que tenga atributos para todas las monedas que necesites, tener el precio en la divisa necesaria sera directo. Esa clase esta sobredimensionada porque ademas sirve como base para un un dialogo de conversión de moneda [2], así como para seguir opciones de configuración del programa, unidades preferidas, tooltip con unidades secundarias [3]... [1] http://sourceforge.net/p/pychemqt/code/HEAD/tree/lib/unidades.py#l1769 [2] http://pychemqt.sourceforge.net/stories/conversormoneda.html [3] http://sourceforge.net/apps/mediawiki/pychemqt/nfs/project/p/py/pychemqt/c/c2/Captura.gif Saludos El 2 de abril de 2014, 13:29, Kiko escribió: > > > > El 2 de abril de 2014, 13:21, Da?id escribió: > > 2014-04-02 12:59 GMT+02:00 kausdiv : >> >> Y lo que tengo más duro es como hacer que cada albarán, ticket, etc tome >>> esa moneda. O si el cliente quiere pagar en Pesos o Dolares... >> >> >> Depende completamente de cómo sea la aplicación. La idea más simple es >> trabajar internamente con euros y, a la hora de meter o sacar datos, >> multiplicas o divides por el factor de conversion (1 para ? -> ?). >> >> > También dependerá de como venda la empresa de turno. Hay empresas que usan > un precio por divisa, por ejemplo, en euros cuesta 100? y en dolares cuesta > 120$ y no hay que hacer cambio de moneda, simplemente ir a tu tabla a > rescatar el precio. Y en otros casos el precio es en una divisa y si se > vende en otra divisa se hace la conversión con el cambio que toque en ese > momento más un extra coste (bancos, cuentas, acuerdos entre paises,...) en > caso de que la empresa lo necesite en la moneda original y vaya a una > cuenta en el país de origen de la moneda original. Vamos, que depende del > caso, como todo en esta vida. > > >> La idea más compleja es usar, en vez de números, objetos, donde has >> sobrecargado __str__, __repr__ y demás para que haga esta conversión >> automáticamente. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Thu Apr 3 11:52:16 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 3 Apr 2014 11:52:16 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? Message-ID: Hola, a todos: Probando el notebook de la nueva versión de IPython 2.0 veo que busca una instalación de node.js para que funcione nbconvert. Al no encontrarlo, utiliza pandoc en su lugar para renderizar markdown.. Desconozco si se trata de alguna prueba vestigial de cambiar el kernel de ipython a node.js o que se haya empaquetado mal en conda (anaconda). ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use el módulo markdown2 en lugar de node.js o pandoc? platform : win-32 conda version : 3.3.2 python version : 2.7.5.final.0 Saludos, Chema Cortés -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From davidmenhur en gmail.com Thu Apr 3 12:06:03 2014 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Thu, 3 Apr 2014 12:06:03 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: References: Message-ID: En Linux no tengo pandoc ni node.js instalados, y nbconvert funciona. Actualizando via pip de la versión antigua a la 2.0 no ha instalado nada nuevo. 2014-04-03 11:52 GMT+02:00 Chema Cortes : > Hola, a todos: > > Probando el notebook de la nueva versión de IPython 2.0 veo que busca una > instalación de node.js para que funcione nbconvert. Al no encontrarlo, > utiliza pandoc en su lugar para renderizar markdown.. > > Desconozco si se trata de alguna prueba vestigial de cambiar el kernel de > ipython a node.js o que se haya empaquetado mal en conda (anaconda). > > ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use el > módulo markdown2 en lugar de node.js o pandoc? > > > platform : win-32 > conda version : 3.3.2 > python version : 2.7.5.final.0 > > > Saludos, > Chema Cortés > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kikocorreoso en gmail.com Thu Apr 3 12:25:30 2014 From: kikocorreoso en gmail.com (Kiko) Date: Thu, 3 Apr 2014 12:25:30 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: References: Message-ID: El 3 de abril de 2014, 11:52, Chema Cortes escribió: > Hola, a todos: > > Probando el notebook de la nueva versión de IPython 2.0 veo que busca una > instalación de node.js para que funcione nbconvert. Al no encontrarlo, > utiliza pandoc en su lugar para renderizar markdown.. > > Desconozco si se trata de alguna prueba vestigial de cambiar el kernel de > ipython a node.js o que se haya empaquetado mal en conda (anaconda). > > ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use el > módulo markdown2 en lugar de node.js o pandoc? > > > platform : win-32 > conda version : 3.3.2 > python version : 2.7.5.final.0 > > > Según la documentación: http://ipython.org/ipython-doc/stable/notebook/nbconvert.html *Note* *nbconvert uses pandoc to convert between various markup languages, so pandoc is a dependency of most nbconvert transforms, excluding Markdown and Python.* nbconvert ya te convierte a markdown sin usar Pandoc. *ipython(2 o 3) nbconvert --to markdown notebook_a_transformar.ipynb* ¿Quieres transformar ese markdown a html usando markdown2 o es otra cosa la que quieres hacer? En ningún caso necesita node (será un tema interno de anaconda para sus herramientas en la nube o compartir en wakari o alguna cosa de esas. Saludos, > Chema Cortés > > -- > Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": > http://ch3m4.org/blog > Buscador Python Hispano: http://ch3m4.org/python-es > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Wed Apr 2 23:08:36 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Wed, 2 Apr 2014 15:08:36 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro Message-ID: Es un gusto saludarlos. Desde hace ya algún tiempo estoy diseñando un correlador para obtener las señales de varias antenas y lograr realizar radioimagenes del universo. Ahora mismo estoy tratando de entender el software desarrollado en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe soporte. El software son unos script escritos en python. Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar los script? Yo sé qué es lo que deben hacer los script, pero no logro hacer que funcionen. No está demás decir que yo no sé programar :-) Estaré muy agradecido por su ayuda. Saludos Rolando Paz ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From faltet en gmail.com Thu Apr 3 15:59:50 2014 From: faltet en gmail.com (Francesc Alted) Date: Thu, 03 Apr 2014 15:59:50 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: References: Message-ID: <533D6956.1040103@gmail.com> On 4/3/14, 12:25 PM, Kiko wrote: > > El 3 de abril de 2014, 11:52, Chema Cortes > escribió: > > Hola, a todos: > > Probando el notebook de la nueva versión de IPython 2.0 veo que > busca una instalación de node.js para que funcione nbconvert. Al > no encontrarlo, utiliza pandoc en su lugar para renderizar markdown.. > > Desconozco si se trata de alguna prueba vestigial de cambiar el > kernel de ipython a node.js o que se haya empaquetado mal en conda > (anaconda). > > ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use > el módulo markdown2 en lugar de node.js o pandoc? > > > platform : win-32 > conda version : 3.3.2 > python version : 2.7.5.final.0 > > > > Según la documentación: > http://ipython.org/ipython-doc/stable/notebook/nbconvert.html > / > / > /Note/ > > /nbconvert uses pandoc to convert > between various markup languages, so pandoc is a dependency of most > nbconvert transforms, excluding Markdown and Python./ > > nbconvert ya te convierte a markdown sin usar Pandoc. > > /ipython(2 o 3) nbconvert --to markdown notebook_a_transformar.ipynb/ Confirmo que eso funciona. Ademas me funcionan todas la demas opciones ('latex', 'markdown', 'python', 'rst', 'slides'), excepto com 'html' que me pide el pandoc. > > ¿Quieres transformar ese markdown a html usando markdown2 o es otra > cosa la que quieres hacer? > > En ningún caso necesita node (será un tema interno de anaconda para > sus herramientas en la nube o compartir en wakari o alguna cosa de esas. Yo acabo de actualizar ipython 2.0.0 desde conda y no pide la instalacion de ningun node.js. Estoy en Mac, no se si desde Win la cosa es diferente. -- Francesc Alted From jcaballero.hep en gmail.com Thu Apr 3 16:11:28 2014 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Thu, 3 Apr 2014 10:11:28 -0400 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: El día 2 de abril de 2014, 17:08, Rolando Paz escribió: > Es un gusto saludarlos. > > Desde hace ya algún tiempo estoy diseñando un correlador para obtener las > señales de varias antenas y lograr realizar radioimagenes del universo. > > Ahora mismo estoy tratando de entender el software desarrollado en el 2008 > para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe > soporte. El software son unos script escritos en python. > > Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar > los script? > Quizas un colega mio del trabajo que tambien hace cosas con antenas pueda estar interesado. En concreto, en rayos cosmicos. Tienes un link donde se puedan ver los scripts? Jose (perdon por la ausencia de tildes) From davidmenhur en gmail.com Thu Apr 3 16:41:27 2014 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Thu, 3 Apr 2014 16:41:27 +0200 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: A mí también me interesa. Soy físico, con algunos "antecedentes" en astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) 2014-04-02 23:08 GMT+02:00 Rolando Paz : > Es un gusto saludarlos. > > Desde hace ya algún tiempo estoy diseñando un correlador para obtener las > señales de varias antenas y lograr realizar radioimagenes del universo. > > Ahora mismo estoy tratando de entender el software desarrollado en el 2008 > para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe > soporte. El software son unos script escritos en python. > > Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar > los script? > > Yo sé qué es lo que deben hacer los script, pero no logro hacer que > funcionen. > No está demás decir que yo no sé programar :-) > > Estaré muy agradecido por su ayuda. > > Saludos > > Rolando Paz > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Thu Apr 3 17:26:24 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 09:26:24 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Qué buena noticia! Específicamente el script es este: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py En dicha carpeta "poco-0.1.1" se encuentra todo el software para obtener los datos del correlador de señales. Igualmente, en dicha carpeta, existe un documento en donde se explica como instalar todo. Este script obtiene los datos por UDP y los convierte en un formato de archivos llamados MIRIAD, ampliamente usado para realizar radioimágenes. Saludos Rolando Paz El 3 de abril de 2014, 8:11, Jose Caballero escribió: > El día 2 de abril de 2014, 17:08, Rolando Paz escribió: > > Es un gusto saludarlos. > > > > Desde hace ya algún tiempo estoy diseñando un correlador para obtener las > > señales de varias antenas y lograr realizar radioimagenes del universo. > > > > Ahora mismo estoy tratando de entender el software desarrollado en el > 2008 > > para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe > > soporte. El software son unos script escritos en python. > > > > Alguno de ustedes estaría interesado en ayudarme a entender y a > actualizar > > los script? > > > > > Quizas un colega mio del trabajo que tambien hace cosas con antenas > pueda estar interesado. En concreto, en rayos cosmicos. > Tienes un link donde se puedan ver los scripts? > > Jose > (perdon por la ausencia de tildes) > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Thu Apr 3 17:35:36 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 09:35:36 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Ahora mismos he dedicado todo el tiempo para construir el back-end del interferómetro, y esto incluye el correlador y el software. Luego de esto debo diseñar el front-end, que en esencia es toda la parte analógica del interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, filtros, alimentadores de las antena, cables y otros... Me falta mucho, pero sigo adelante... El 3 de abril de 2014, 8:41, Da?id escribió: > A mí también me interesa. Soy físico, con algunos "antecedentes" en > astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) > > > 2014-04-02 23:08 GMT+02:00 Rolando Paz : > >> Es un gusto saludarlos. >> >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener las >> señales de varias antenas y lograr realizar radioimagenes del universo. >> >> Ahora mismo estoy tratando de entender el software desarrollado en el >> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >> existe soporte. El software son unos script escritos en python. >> >> Alguno de ustedes estaría interesado en ayudarme a entender y a >> actualizar los script? >> >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >> funcionen. >> No está demás decir que yo no sé programar :-) >> >> Estaré muy agradecido por su ayuda. >> >> Saludos >> >> Rolando Paz >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From arodesc en gmail.com Thu Apr 3 17:50:48 2014 From: arodesc en gmail.com (=?utf-8?Q?Alfonso_=C3=81ngel_Rodr=C3=ADguez_Escudero?=) Date: Thu, 3 Apr 2014 17:50:48 +0200 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a trastear con estas cosillas de antenas. También le echaré un ojo y vamos viendo a ver que sale. ;D Saludos!!! > El 03/04/2014, a las 17:35, Rolando Paz escribió: > > Ahora mismos he dedicado todo el tiempo para construir el back-end del interferómetro, y esto incluye el correlador y el software. Luego de esto debo diseñar el front-end, que en esencia es toda la parte analógica del interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, filtros, alimentadores de las antena, cables y otros... > > Me falta mucho, pero sigo adelante... > > > > > > El 3 de abril de 2014, 8:41, Da?id escribió: >> A mí también me interesa. Soy físico, con algunos "antecedentes" en astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >> >> >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>> Es un gusto saludarlos. >>> >>> Desde hace ya algún tiempo estoy diseñando un correlador para obtener las señales de varias antenas y lograr realizar radioimagenes del universo. >>> >>> Ahora mismo estoy tratando de entender el software desarrollado en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe soporte. El software son unos script escritos en python. >>> >>> Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar los script? >>> >>> Yo sé qué es lo que deben hacer los script, pero no logro hacer que funcionen. >>> No está demás decir que yo no sé programar :-) >>> >>> Estaré muy agradecido por su ayuda. >>> >>> Saludos >>> >>> Rolando Paz >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From fvillarroel en yahoo.com Thu Apr 3 19:16:38 2014 From: fvillarroel en yahoo.com (Fernando Villarroel) Date: Thu, 3 Apr 2014 13:16:38 -0400 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: <6325603E-6C93-4856-AF2D-2BEF29427C67@yahoo.com> Hola Rolando. Que interesante proyecto, me interesa aportar soy Ingeniero de Software y trabajo en VoIP y redes Wireless. Por el momento voy a bajar el software. Quizás si se logra tener más voluntarios se podría generar un repositorio para trabajo colaborativo. Saludos. Enviado desde mi iPhone El 02-04-2014, a las 17:08, Rolando Paz escribió: > Es un gusto saludarlos. > > Desde hace ya algún tiempo estoy diseñando un correlador para obtener las señales de varias antenas y lograr realizar radioimagenes del universo. > > Ahora mismo estoy tratando de entender el software desarrollado en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe soporte. El software son unos script escritos en python. > > Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar los script? > > Yo sé qué es lo que deben hacer los script, pero no logro hacer que funcionen. > No está demás decir que yo no sé programar :-) > > Estaré muy agradecido por su ayuda. > > Saludos > > Rolando Paz > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From faltet en gmail.com Thu Apr 3 18:27:34 2014 From: faltet en gmail.com (Francesc Alted) Date: Thu, 03 Apr 2014 18:27:34 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: <533D6956.1040103@gmail.com> References: <533D6956.1040103@gmail.com> Message-ID: <533D8BF6.2080400@gmail.com> On 4/3/14, 3:59 PM, Francesc Alted wrote: > On 4/3/14, 12:25 PM, Kiko wrote: >> >> El 3 de abril de 2014, 11:52, Chema Cortes > > escribió: >> >> Hola, a todos: >> >> Probando el notebook de la nueva versión de IPython 2.0 veo que >> busca una instalación de node.js para que funcione nbconvert. Al >> no encontrarlo, utiliza pandoc en su lugar para renderizar >> markdown.. >> >> Desconozco si se trata de alguna prueba vestigial de cambiar el >> kernel de ipython a node.js o que se haya empaquetado mal en conda >> (anaconda). >> >> ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use >> el módulo markdown2 en lugar de node.js o pandoc? >> >> >> platform : win-32 >> conda version : 3.3.2 >> python version : 2.7.5.final.0 >> >> >> >> Según la documentación: >> http://ipython.org/ipython-doc/stable/notebook/nbconvert.html >> / >> / >> /Note/ >> >> /nbconvert uses pandoc to convert >> between various markup languages, so pandoc is a dependency of most >> nbconvert transforms, excluding Markdown and Python./ >> >> nbconvert ya te convierte a markdown sin usar Pandoc. >> >> /ipython(2 o 3) nbconvert --to markdown notebook_a_transformar.ipynb/ > > Confirmo que eso funciona. Ademas me funcionan todas la demas > opciones ('latex', 'markdown', 'python', 'rst', 'slides'), excepto com > 'html' que me pide el pandoc. Correccion, incluso sin encontrar el pandoc el nbconvert *genera* salida para html tabien: [NbConvertApp] Using existing profile dir: u'/Users/faltet/.ipython/profile_default' [NbConvertApp] Converting notebook samples/notebooks/blaze_sql.ipynb to html [NbConvertApp] Support files will be in blaze_sql_files/ [NbConvertApp] Loaded template full.tpl /Users/faltet/anaconda/lib/python2.7/site-packages/IPython/nbconvert/filters/markdown.py:78: UserWarning: Node.js 0.9.12 or later wasn't found. Nbconvert will try to use Pandoc instead. "Nbconvert will try to use Pandoc instead.") [NbConvertApp] Writing 192610 bytes to blaze_sql.html y la verdad es que el html queda bien, asi que tampoco se porque busca el Node.js dichoso. -- Francesc Alted From flxpaz en gmail.com Thu Apr 3 18:44:49 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 10:44:49 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: El vídeo en donde se explica el funcionamiento del correlador es el siguiente: https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v Griffin Foster fue quien diseño el software del correlador. Saludos Rolando Paz El 3 de abril de 2014, 10:35, Rolando Paz escribió: > Muchas gracias a todos! > > El problema que tengo es el siguiente: > > Yo instale wiresahark y estoy usando ubuntu 12.04 LST > > Ejecuto el comando: init_poco.py i8_c256.py > > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config > > Parsing config file i8_c256.config...OK > > Writing override variables... OK > > Connecting to iBOB... OK > > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de > los datos de wireshark (una imagen wireshark.png), en donde se observa la > información que se transmite desde mi PC hacia el correlador llamado IBOB. > Sin embargo, luego de ejecutar este comando, creo que la IBOB debería > empezar a enviar automáticamente los paquetes, pero no lo hace pues no se > observa nada en el wireshark después. > > Aun así, yo ejecuto el siguiente comando para obtener los datos en formato > MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config > > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py > i8_c256.config > > Parsing config file i8_c256.config...OK > Listening on port 7 > Expecting integration sizes of 18432 vectors, or 73728 bytes > C2M Parameters: > N Antennas: 8 > Bandwidth: 0.200000 GHz > SDF: 0.000781 GHz > Int Time: 0.747520 s > Array location: ['38:25:59.24', '-79:51:02.1'] > Recording Bandpass to file... OK > Starting file: zen.uv.tmp > Beginning RX thread... > Expecting total dump size from each x engine: 65536 bytes > ERR: Buffer is too small for header unpack > ERR: could not unpack header > Exception in thread Thread-1: > Traceback (most recent call last): > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner > self.run() > File "/usr/lib/python2.7/threading.py", line 504, in run > self.__target(*self.__args, **self.__kwargs) > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets > last_offset = p['offset'] > TypeError: 'NoneType' object has no attribute '__getitem__' > > Mi duda es la siguiente: > > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la > IBOB que empiece a enviar los datos de forma automática por medio del > puerto ethernet? (los archivos están en el link: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ > ) > > b) Qué significa el error que se produce cuando ejecuto el comando sudo > poco_rx_i8_c256.py i8_c256.config? > > Saludos y gracias. > > Rolando Paz > > > > > > > > > > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < > arodesc en gmail.com> escribió: > > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a trastear >> con estas cosillas de antenas. También le echaré un ojo y vamos viendo a >> ver que sale. ;D >> Saludos!!! >> >> El 03/04/2014, a las 17:35, Rolando Paz escribió: >> >> Ahora mismos he dedicado todo el tiempo para construir el back-end del >> interferómetro, y esto incluye el correlador y el software. Luego de esto >> debo diseñar el front-end, que en esencia es toda la parte analógica del >> interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, >> filtros, alimentadores de las antena, cables y otros... >> >> Me falta mucho, pero sigo adelante... >> >> >> >> >> >> El 3 de abril de 2014, 8:41, Da?id escribió: >> >>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>> >>> >>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>> >>>> Es un gusto saludarlos. >>>> >>>> Desde hace ya algún tiempo estoy diseñando un correlador para obtener >>>> las señales de varias antenas y lograr realizar radioimagenes del universo. >>>> >>>> Ahora mismo estoy tratando de entender el software desarrollado en el >>>> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>> existe soporte. El software son unos script escritos en python. >>>> >>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>> actualizar los script? >>>> >>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >>>> funcionen. >>>> No está demás decir que yo no sé programar :-) >>>> >>>> Estaré muy agradecido por su ayuda. >>>> >>>> Saludos >>>> >>>> Rolando Paz >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From carlos.zun en gmail.com Thu Apr 3 19:15:11 2014 From: carlos.zun en gmail.com (Carlos Zuniga) Date: Thu, 3 Apr 2014 12:15:11 -0500 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: References: Message-ID: 2014-04-03 4:52 GMT-05:00 Chema Cortes : > Hola, a todos: > > Probando el notebook de la nueva versión de IPython 2.0 veo que busca una > instalación de node.js para que funcione nbconvert. Al no encontrarlo, > utiliza pandoc en su lugar para renderizar markdown.. > > Desconozco si se trata de alguna prueba vestigial de cambiar el kernel de > ipython a node.js o que se haya empaquetado mal en conda (anaconda). > > ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use el módulo > markdown2 en lugar de node.js o pandoc? > Estaba escribiendo una respuesta diciendo que podrías añadirlo aquí [0] antes de que intente usar nodejs, pero luego me dí con este thread [1]. Tl;dr: es para usar el mismo parser tanto en el notebook como en nbconvert, con fallback hacia pandoc. Saludos. [0] https://github.com/ipython/ipython/blob/2.x/IPython/nbconvert/filters/markdown.py#L67 [1] https://github.com/ipython/ipython/pull/4655 -- A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos de leer manuales. From fdanesse en gmail.com Thu Apr 3 23:24:01 2014 From: fdanesse en gmail.com (Flavio Danesse) Date: Thu, 3 Apr 2014 18:24:01 -0300 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Yo me anoto en el proyecto. No tengo la mas mínima idea de que es un interferómetro ni de radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el código. De momento lo voy a mirar nada más. Creo que vas a necesitar organizar como proyecto esto porque ya son varios anotados para participar, alguien tiene que organizar la cosa. El 3 de abril de 2014, 13:44, Rolando Paz escribió: > El vídeo en donde se explica el funcionamiento del correlador es el > siguiente: > > > https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v > > Griffin Foster fue quien diseño el software del correlador. > > Saludos > > Rolando Paz > > > El 3 de abril de 2014, 10:35, Rolando Paz escribió: > >> Muchas gracias a todos! >> >> El problema que tengo es el siguiente: >> >> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >> >> Ejecuto el comando: init_poco.py i8_c256.py >> >> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >> >> Parsing config file i8_c256.config...OK >> >> Writing override variables... OK >> >> Connecting to iBOB... OK >> >> Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de >> los datos de wireshark (una imagen wireshark.png), en donde se observa la >> información que se transmite desde mi PC hacia el correlador llamado IBOB. >> Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >> observa nada en el wireshark después. >> >> Aun así, yo ejecuto el siguiente comando para obtener los datos en >> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >> >> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >> i8_c256.config >> >> Parsing config file i8_c256.config...OK >> Listening on port 7 >> Expecting integration sizes of 18432 vectors, or 73728 bytes >> C2M Parameters: >> N Antennas: 8 >> Bandwidth: 0.200000 GHz >> SDF: 0.000781 GHz >> Int Time: 0.747520 s >> Array location: ['38:25:59.24', '-79:51:02.1'] >> Recording Bandpass to file... OK >> Starting file: zen.uv.tmp >> Beginning RX thread... >> Expecting total dump size from each x engine: 65536 bytes >> ERR: Buffer is too small for header unpack >> ERR: could not unpack header >> Exception in thread Thread-1: >> Traceback (most recent call last): >> File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner >> self.run() >> File "/usr/lib/python2.7/threading.py", line 504, in run >> self.__target(*self.__args, **self.__kwargs) >> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets >> last_offset = p['offset'] >> TypeError: 'NoneType' object has no attribute '__getitem__' >> >> Mi duda es la siguiente: >> >> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la >> IBOB que empiece a enviar los datos de forma automática por medio del >> puerto ethernet? (los archivos están en el link: >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >> ) >> >> b) Qué significa el error que se produce cuando ejecuto el comando sudo >> poco_rx_i8_c256.py i8_c256.config? >> >> Saludos y gracias. >> >> Rolando Paz >> >> >> >> >> >> >> >> >> >> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >> arodesc en gmail.com> escribió: >> >> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>> viendo a ver que sale. ;D >>> Saludos!!! >>> >>> El 03/04/2014, a las 17:35, Rolando Paz escribió: >>> >>> Ahora mismos he dedicado todo el tiempo para construir el back-end del >>> interferómetro, y esto incluye el correlador y el software. Luego de esto >>> debo diseñar el front-end, que en esencia es toda la parte analógica del >>> interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, >>> filtros, alimentadores de las antena, cables y otros... >>> >>> Me falta mucho, pero sigo adelante... >>> >>> >>> >>> >>> >>> El 3 de abril de 2014, 8:41, Da?id escribió: >>> >>>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>>> >>>> >>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>> >>>>> Es un gusto saludarlos. >>>>> >>>>> Desde hace ya algún tiempo estoy diseñando un correlador para obtener >>>>> las señales de varias antenas y lograr realizar radioimagenes del universo. >>>>> >>>>> Ahora mismo estoy tratando de entender el software desarrollado en el >>>>> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>>> existe soporte. El software son unos script escritos en python. >>>>> >>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>> actualizar los script? >>>>> >>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >>>>> funcionen. >>>>> No está demás decir que yo no sé programar :-) >>>>> >>>>> Estaré muy agradecido por su ayuda. >>>>> >>>>> Saludos >>>>> >>>>> Rolando Paz >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Fri Apr 4 00:14:28 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 16:14:28 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden descargar lo que considero son las mejores presentaciones que he visto respecto al tema de la radioastronomia e radiointerferometria. Específicamente les sugiero que vean estas presentaciones: http://www.dmradas.co.uk/Presentation%20Part%202A.ppt http://www.dmradas.co.uk/Presentation%20Part%202B.ppt El script de python que se observa aca https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, obtiene los datos del correlador en un formato de archivos llamado MIRIAD. Estos datos los almaceno, para luego ser procesados con un software como , http://www.atnf.csiro.au/computing/software/miriad/, o como https://github.com/AaronParsons/aipy, o https://casper.berkeley.edu/astrobaki/index.php/AIPY También me gustaría poder desarrollar una interfaz gráfica para poder ver los espectros de las señales analógicas por medio de matplotlib o alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de script para esto, sin embargo esta programado para obtener los datos por el puerto RS232 y no ethernet: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ Saludos y gracias por todo el apoyo mostrado. Rolando Paz El 3 de abril de 2014, 15:24, Flavio Danesse escribió: > Yo me anoto en el proyecto. > > No tengo la mas mínima idea de que es un interferómetro ni de > radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y > gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el > código. > > De momento lo voy a mirar nada más. > Creo que vas a necesitar organizar como proyecto esto porque ya son varios > anotados para participar, alguien tiene que organizar la cosa. > > > El 3 de abril de 2014, 13:44, Rolando Paz escribió: > > El vídeo en donde se explica el funcionamiento del correlador es el >> siguiente: >> >> >> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >> >> Griffin Foster fue quien diseño el software del correlador. >> >> Saludos >> >> Rolando Paz >> >> >> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >> >>> Muchas gracias a todos! >>> >>> El problema que tengo es el siguiente: >>> >>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>> >>> Ejecuto el comando: init_poco.py i8_c256.py >>> >>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>> >>> Parsing config file i8_c256.config...OK >>> >>> Writing override variables... OK >>> >>> Connecting to iBOB... OK >>> >>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de >>> los datos de wireshark (una imagen wireshark.png), en donde se observa la >>> información que se transmite desde mi PC hacia el correlador llamado IBOB. >>> Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >>> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >>> observa nada en el wireshark después. >>> >>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>> >>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>> i8_c256.config >>> >>> Parsing config file i8_c256.config...OK >>> Listening on port 7 >>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>> C2M Parameters: >>> N Antennas: 8 >>> Bandwidth: 0.200000 GHz >>> SDF: 0.000781 GHz >>> Int Time: 0.747520 s >>> Array location: ['38:25:59.24', '-79:51:02.1'] >>> Recording Bandpass to file... OK >>> Starting file: zen.uv.tmp >>> Beginning RX thread... >>> Expecting total dump size from each x engine: 65536 bytes >>> ERR: Buffer is too small for header unpack >>> ERR: could not unpack header >>> Exception in thread Thread-1: >>> Traceback (most recent call last): >>> File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner >>> self.run() >>> File "/usr/lib/python2.7/threading.py", line 504, in run >>> self.__target(*self.__args, **self.__kwargs) >>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets >>> last_offset = p['offset'] >>> TypeError: 'NoneType' object has no attribute '__getitem__' >>> >>> Mi duda es la siguiente: >>> >>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la >>> IBOB que empiece a enviar los datos de forma automática por medio del >>> puerto ethernet? (los archivos están en el link: >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>> ) >>> >>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>> poco_rx_i8_c256.py i8_c256.config? >>> >>> Saludos y gracias. >>> >>> Rolando Paz >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>> arodesc en gmail.com> escribió: >>> >>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>> viendo a ver que sale. ;D >>>> Saludos!!! >>>> >>>> El 03/04/2014, a las 17:35, Rolando Paz escribió: >>>> >>>> Ahora mismos he dedicado todo el tiempo para construir el back-end del >>>> interferómetro, y esto incluye el correlador y el software. Luego de esto >>>> debo diseñar el front-end, que en esencia es toda la parte analógica del >>>> interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, >>>> filtros, alimentadores de las antena, cables y otros... >>>> >>>> Me falta mucho, pero sigo adelante... >>>> >>>> >>>> >>>> >>>> >>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>> >>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>>>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>>>> >>>>> >>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>> >>>>>> Es un gusto saludarlos. >>>>>> >>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para obtener >>>>>> las señales de varias antenas y lograr realizar radioimagenes del universo. >>>>>> >>>>>> Ahora mismo estoy tratando de entender el software desarrollado en el >>>>>> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>>>> existe soporte. El software son unos script escritos en python. >>>>>> >>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>> actualizar los script? >>>>>> >>>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >>>>>> funcionen. >>>>>> No está demás decir que yo no sé programar :-) >>>>>> >>>>>> Estaré muy agradecido por su ayuda. >>>>>> >>>>>> Saludos >>>>>> >>>>>> Rolando Paz >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From fdanesse en gmail.com Fri Apr 4 00:24:49 2014 From: fdanesse en gmail.com (Flavio Danesse) Date: Thu, 3 Apr 2014 19:24:49 -0300 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: El problema que hay desde mi perspectiva es no saber que debe hacer el código y no tener donde probar el código. Las interfaces gráficas son lo más sencillo de hacer el tema es la funcionalidad de la aplicación a realizar, las conexiones con dispositivos que no conozco ni se si puedo conseguir para realizar pruebas, etc . . . Para armar esto como proyecto, debes primero que nada, desarrollar las especificaciones y alcance de la aplicación, es decir que debe hacer como debe hacerlo, como se debe ver, que hardware interviene, etc . . . Y luego de tener un grupo de gente abocado a llevarlo adelante, hay que designar tareas, plazos, etc . . . Es decir, antes de desarrollar nada, hay que diseñar, hacer ingeniería, etc . . . para el momento del desarrollo propiamente dicho, los involucrados deben tener claro que deben hacer. El 3 de abril de 2014, 19:14, Rolando Paz escribió: > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? > > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden > descargar lo que considero son las mejores presentaciones que he visto > respecto al tema de la radioastronomia e radiointerferometria. > > Específicamente les sugiero que vean estas presentaciones: > > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt > > El script de python que se observa aca > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, > obtiene los datos del correlador en un formato de archivos llamado MIRIAD. > > Estos datos los almaceno, para luego ser procesados con un software como , > http://www.atnf.csiro.au/computing/software/miriad/, o como > https://github.com/AaronParsons/aipy, o > https://casper.berkeley.edu/astrobaki/index.php/AIPY > > También me gustaría poder desarrollar una interfaz gráfica para poder ver > los espectros de las señales analógicas por medio de matplotlib o alguna > otra herramienta en tiempo real. Aca se puede ver un ejemplo de script para > esto, sin embargo esta programado para obtener los datos por el puerto > RS232 y no ethernet: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ > > Saludos y gracias por todo el apoyo mostrado. > > Rolando Paz > > > > > > > > > > > > > El 3 de abril de 2014, 15:24, Flavio Danesse escribió: > > Yo me anoto en el proyecto. >> >> No tengo la mas mínima idea de que es un interferómetro ni de >> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >> código. >> >> De momento lo voy a mirar nada más. >> Creo que vas a necesitar organizar como proyecto esto porque ya son >> varios anotados para participar, alguien tiene que organizar la cosa. >> >> >> El 3 de abril de 2014, 13:44, Rolando Paz escribió: >> >> El vídeo en donde se explica el funcionamiento del correlador es el >>> siguiente: >>> >>> >>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>> >>> Griffin Foster fue quien diseño el software del correlador. >>> >>> Saludos >>> >>> Rolando Paz >>> >>> >>> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>> >>>> Muchas gracias a todos! >>>> >>>> El problema que tengo es el siguiente: >>>> >>>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>>> >>>> Ejecuto el comando: init_poco.py i8_c256.py >>>> >>>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>>> >>>> Parsing config file i8_c256.config...OK >>>> >>>> Writing override variables... OK >>>> >>>> Connecting to iBOB... OK >>>> >>>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura >>>> de los datos de wireshark (una imagen wireshark.png), en donde se observa >>>> la información que se transmite desde mi PC hacia el correlador llamado >>>> IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >>>> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >>>> observa nada en el wireshark después. >>>> >>>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>>> >>>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>>> i8_c256.config >>>> >>>> Parsing config file i8_c256.config...OK >>>> Listening on port 7 >>>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>>> C2M Parameters: >>>> N Antennas: 8 >>>> Bandwidth: 0.200000 GHz >>>> SDF: 0.000781 GHz >>>> Int Time: 0.747520 s >>>> Array location: ['38:25:59.24', '-79:51:02.1'] >>>> Recording Bandpass to file... OK >>>> Starting file: zen.uv.tmp >>>> Beginning RX thread... >>>> Expecting total dump size from each x engine: 65536 bytes >>>> ERR: Buffer is too small for header unpack >>>> ERR: could not unpack header >>>> Exception in thread Thread-1: >>>> Traceback (most recent call last): >>>> File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner >>>> self.run() >>>> File "/usr/lib/python2.7/threading.py", line 504, in run >>>> self.__target(*self.__args, **self.__kwargs) >>>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>>> _process_packets >>>> last_offset = p['offset'] >>>> TypeError: 'NoneType' object has no attribute '__getitem__' >>>> >>>> Mi duda es la siguiente: >>>> >>>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la >>>> IBOB que empiece a enviar los datos de forma automática por medio del >>>> puerto ethernet? (los archivos están en el link: >>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>>> ) >>>> >>>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>>> poco_rx_i8_c256.py i8_c256.config? >>>> >>>> Saludos y gracias. >>>> >>>> Rolando Paz >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>>> arodesc en gmail.com> escribió: >>>> >>>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>>> viendo a ver que sale. ;D >>>>> Saludos!!! >>>>> >>>>> El 03/04/2014, a las 17:35, Rolando Paz escribió: >>>>> >>>>> Ahora mismos he dedicado todo el tiempo para construir el back-end del >>>>> interferómetro, y esto incluye el correlador y el software. Luego de esto >>>>> debo diseñar el front-end, que en esencia es toda la parte analógica del >>>>> interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, >>>>> filtros, alimentadores de las antena, cables y otros... >>>>> >>>>> Me falta mucho, pero sigo adelante... >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>>> >>>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>>>>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>>>>> >>>>>> >>>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>>> >>>>>>> Es un gusto saludarlos. >>>>>>> >>>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para >>>>>>> obtener las señales de varias antenas y lograr realizar radioimagenes del >>>>>>> universo. >>>>>>> >>>>>>> Ahora mismo estoy tratando de entender el software desarrollado en >>>>>>> el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>>>>> existe soporte. El software son unos script escritos en python. >>>>>>> >>>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>>> actualizar los script? >>>>>>> >>>>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer >>>>>>> que funcionen. >>>>>>> No está demás decir que yo no sé programar :-) >>>>>>> >>>>>>> Estaré muy agradecido por su ayuda. >>>>>>> >>>>>>> Saludos >>>>>>> >>>>>>> Rolando Paz >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es en python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Fri Apr 4 00:35:41 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 16:35:41 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Tienes toda la razón. Les propongo que quienes estén interesados, puedan acceder de forma remota a mi PC. Yo puedo mostrarles el desarrollo que hasta este momento llevo y el tema de la ejecución de los script. Creo que tengo por acá un archivo MIRIAD obtenido desde el script. Luego que definamos y que todos conozcan de que se trata todo, entonces definir el proyecto. Que les parece? Saludos El 3 de abril de 2014, 16:24, Flavio Danesse escribió: > El problema que hay desde mi perspectiva es no saber que debe hacer el > código y no tener donde probar el código. > Las interfaces gráficas son lo más sencillo de hacer el tema es la > funcionalidad de la aplicación a realizar, las conexiones con dispositivos > que no conozco ni se si puedo conseguir para realizar pruebas, etc . . . > > Para armar esto como proyecto, debes primero que nada, desarrollar las > especificaciones y alcance de la aplicación, es decir que debe hacer como > debe hacerlo, como se debe ver, que hardware interviene, etc . . . > > Y luego de tener un grupo de gente abocado a llevarlo adelante, hay que > designar tareas, plazos, etc . . . > > Es decir, antes de desarrollar nada, hay que diseñar, hacer ingeniería, > etc . . . para el momento del desarrollo propiamente dicho, los > involucrados deben tener claro que deben hacer. > > > El 3 de abril de 2014, 19:14, Rolando Paz escribió: > > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? >> >> En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >> descargar lo que considero son las mejores presentaciones que he visto >> respecto al tema de la radioastronomia e radiointerferometria. >> >> Específicamente les sugiero que vean estas presentaciones: >> >> http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >> http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >> >> El script de python que se observa aca >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >> >> Estos datos los almaceno, para luego ser procesados con un software como >> , http://www.atnf.csiro.au/computing/software/miriad/, o como >> https://github.com/AaronParsons/aipy, o >> https://casper.berkeley.edu/astrobaki/index.php/AIPY >> >> También me gustaría poder desarrollar una interfaz gráfica para poder ver >> los espectros de las señales analógicas por medio de matplotlib o alguna >> otra herramienta en tiempo real. Aca se puede ver un ejemplo de script para >> esto, sin embargo esta programado para obtener los datos por el puerto >> RS232 y no ethernet: >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >> >> Saludos y gracias por todo el apoyo mostrado. >> >> Rolando Paz >> >> >> >> >> >> >> >> >> >> >> >> >> El 3 de abril de 2014, 15:24, Flavio Danesse escribió: >> >> Yo me anoto en el proyecto. >>> >>> No tengo la mas mínima idea de que es un interferómetro ni de >>> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >>> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >>> código. >>> >>> De momento lo voy a mirar nada más. >>> Creo que vas a necesitar organizar como proyecto esto porque ya son >>> varios anotados para participar, alguien tiene que organizar la cosa. >>> >>> >>> El 3 de abril de 2014, 13:44, Rolando Paz escribió: >>> >>> El vídeo en donde se explica el funcionamiento del correlador es el >>>> siguiente: >>>> >>>> >>>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>>> >>>> Griffin Foster fue quien diseño el software del correlador. >>>> >>>> Saludos >>>> >>>> Rolando Paz >>>> >>>> >>>> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>>> >>>>> Muchas gracias a todos! >>>>> >>>>> El problema que tengo es el siguiente: >>>>> >>>>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>>>> >>>>> Ejecuto el comando: init_poco.py i8_c256.py >>>>> >>>>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>>>> >>>>> Parsing config file i8_c256.config...OK >>>>> >>>>> Writing override variables... OK >>>>> >>>>> Connecting to iBOB... OK >>>>> >>>>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura >>>>> de los datos de wireshark (una imagen wireshark.png), en donde se observa >>>>> la información que se transmite desde mi PC hacia el correlador llamado >>>>> IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >>>>> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >>>>> observa nada en el wireshark después. >>>>> >>>>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>>>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>>>> >>>>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>>>> i8_c256.config >>>>> >>>>> Parsing config file i8_c256.config...OK >>>>> Listening on port 7 >>>>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>>>> C2M Parameters: >>>>> N Antennas: 8 >>>>> Bandwidth: 0.200000 GHz >>>>> SDF: 0.000781 GHz >>>>> Int Time: 0.747520 s >>>>> Array location: ['38:25:59.24', '-79:51:02.1'] >>>>> Recording Bandpass to file... OK >>>>> Starting file: zen.uv.tmp >>>>> Beginning RX thread... >>>>> Expecting total dump size from each x engine: 65536 bytes >>>>> ERR: Buffer is too small for header unpack >>>>> ERR: could not unpack header >>>>> Exception in thread Thread-1: >>>>> Traceback (most recent call last): >>>>> File "/usr/lib/python2.7/threading.py", line 551, in >>>>> __bootstrap_inner >>>>> self.run() >>>>> File "/usr/lib/python2.7/threading.py", line 504, in run >>>>> self.__target(*self.__args, **self.__kwargs) >>>>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>>>> _process_packets >>>>> last_offset = p['offset'] >>>>> TypeError: 'NoneType' object has no attribute '__getitem__' >>>>> >>>>> Mi duda es la siguiente: >>>>> >>>>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a >>>>> la IBOB que empiece a enviar los datos de forma automática por medio del >>>>> puerto ethernet? (los archivos están en el link: >>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>>>> ) >>>>> >>>>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>>>> poco_rx_i8_c256.py i8_c256.config? >>>>> >>>>> Saludos y gracias. >>>>> >>>>> Rolando Paz >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>>>> arodesc en gmail.com> escribió: >>>>> >>>>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>>>> viendo a ver que sale. ;D >>>>>> Saludos!!! >>>>>> >>>>>> El 03/04/2014, a las 17:35, Rolando Paz escribió: >>>>>> >>>>>> Ahora mismos he dedicado todo el tiempo para construir el back-end >>>>>> del interferómetro, y esto incluye el correlador y el software. Luego de >>>>>> esto debo diseñar el front-end, que en esencia es toda la parte analógica >>>>>> del interferómetro: amplificadores de bajo ruido, convertidores de >>>>>> frecuencia, filtros, alimentadores de las antena, cables y otros... >>>>>> >>>>>> Me falta mucho, pero sigo adelante... >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>>>> >>>>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>>>>>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>>>>>> >>>>>>> >>>>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>>>> >>>>>>>> Es un gusto saludarlos. >>>>>>>> >>>>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para >>>>>>>> obtener las señales de varias antenas y lograr realizar radioimagenes del >>>>>>>> universo. >>>>>>>> >>>>>>>> Ahora mismo estoy tratando de entender el software desarrollado en >>>>>>>> el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>>>>>> existe soporte. El software son unos script escritos en python. >>>>>>>> >>>>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>>>> actualizar los script? >>>>>>>> >>>>>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer >>>>>>>> que funcionen. >>>>>>>> No está demás decir que yo no sé programar :-) >>>>>>>> >>>>>>>> Estaré muy agradecido por su ayuda. >>>>>>>> >>>>>>>> Saludos >>>>>>>> >>>>>>>> Rolando Paz >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Python-es mailing list >>>>>>>> Python-es en python.org >>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es en python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From fdanesse en gmail.com Fri Apr 4 01:08:20 2014 From: fdanesse en gmail.com (Flavio Danesse) Date: Thu, 3 Apr 2014 20:08:20 -0300 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: quizas puedas hacer un video mostrando eso así lo podemos consultar en nuestro tiempo y luego charlar contigo sobre eso. El 3 de abril de 2014, 19:35, Rolando Paz escribió: > Tienes toda la razón. > > Les propongo que quienes estén interesados, puedan acceder de forma remota > a mi PC. Yo puedo mostrarles el desarrollo que hasta este momento llevo y > el tema de la ejecución de los script. Creo que tengo por acá un archivo > MIRIAD obtenido desde el script. > > Luego que definamos y que todos conozcan de que se trata todo, entonces > definir el proyecto. > > Que les parece? > > Saludos > > > El 3 de abril de 2014, 16:24, Flavio Danesse escribió: > > El problema que hay desde mi perspectiva es no saber que debe hacer el >> código y no tener donde probar el código. >> Las interfaces gráficas son lo más sencillo de hacer el tema es la >> funcionalidad de la aplicación a realizar, las conexiones con dispositivos >> que no conozco ni se si puedo conseguir para realizar pruebas, etc . . . >> >> Para armar esto como proyecto, debes primero que nada, desarrollar las >> especificaciones y alcance de la aplicación, es decir que debe hacer como >> debe hacerlo, como se debe ver, que hardware interviene, etc . . . >> >> Y luego de tener un grupo de gente abocado a llevarlo adelante, hay que >> designar tareas, plazos, etc . . . >> >> Es decir, antes de desarrollar nada, hay que diseñar, hacer ingeniería, >> etc . . . para el momento del desarrollo propiamente dicho, los >> involucrados deben tener claro que deben hacer. >> >> >> El 3 de abril de 2014, 19:14, Rolando Paz escribió: >> >> Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? >>> >>> En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >>> descargar lo que considero son las mejores presentaciones que he visto >>> respecto al tema de la radioastronomia e radiointerferometria. >>> >>> Específicamente les sugiero que vean estas presentaciones: >>> >>> http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >>> http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >>> >>> El script de python que se observa aca >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >>> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >>> >>> Estos datos los almaceno, para luego ser procesados con un software como >>> , http://www.atnf.csiro.au/computing/software/miriad/, o como >>> https://github.com/AaronParsons/aipy, o >>> https://casper.berkeley.edu/astrobaki/index.php/AIPY >>> >>> También me gustaría poder desarrollar una interfaz gráfica para poder >>> ver los espectros de las señales analógicas por medio de matplotlib o >>> alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de >>> script para esto, sin embargo esta programado para obtener los datos por el >>> puerto RS232 y no ethernet: >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >>> >>> Saludos y gracias por todo el apoyo mostrado. >>> >>> Rolando Paz >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> El 3 de abril de 2014, 15:24, Flavio Danesse escribió: >>> >>> Yo me anoto en el proyecto. >>>> >>>> No tengo la mas mínima idea de que es un interferómetro ni de >>>> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >>>> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >>>> código. >>>> >>>> De momento lo voy a mirar nada más. >>>> Creo que vas a necesitar organizar como proyecto esto porque ya son >>>> varios anotados para participar, alguien tiene que organizar la cosa. >>>> >>>> >>>> El 3 de abril de 2014, 13:44, Rolando Paz escribió: >>>> >>>> El vídeo en donde se explica el funcionamiento del correlador es el >>>>> siguiente: >>>>> >>>>> >>>>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>>>> >>>>> Griffin Foster fue quien diseño el software del correlador. >>>>> >>>>> Saludos >>>>> >>>>> Rolando Paz >>>>> >>>>> >>>>> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>>>> >>>>>> Muchas gracias a todos! >>>>>> >>>>>> El problema que tengo es el siguiente: >>>>>> >>>>>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>>>>> >>>>>> Ejecuto el comando: init_poco.py i8_c256.py >>>>>> >>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>>>>> >>>>>> Parsing config file i8_c256.config...OK >>>>>> >>>>>> Writing override variables... OK >>>>>> >>>>>> Connecting to iBOB... OK >>>>>> >>>>>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura >>>>>> de los datos de wireshark (una imagen wireshark.png), en donde se observa >>>>>> la información que se transmite desde mi PC hacia el correlador llamado >>>>>> IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >>>>>> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >>>>>> observa nada en el wireshark después. >>>>>> >>>>>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>>>>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>>>>> >>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>>>>> i8_c256.config >>>>>> >>>>>> Parsing config file i8_c256.config...OK >>>>>> Listening on port 7 >>>>>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>>>>> C2M Parameters: >>>>>> N Antennas: 8 >>>>>> Bandwidth: 0.200000 GHz >>>>>> SDF: 0.000781 GHz >>>>>> Int Time: 0.747520 s >>>>>> Array location: ['38:25:59.24', '-79:51:02.1'] >>>>>> Recording Bandpass to file... OK >>>>>> Starting file: zen.uv.tmp >>>>>> Beginning RX thread... >>>>>> Expecting total dump size from each x engine: 65536 bytes >>>>>> ERR: Buffer is too small for header unpack >>>>>> ERR: could not unpack header >>>>>> Exception in thread Thread-1: >>>>>> Traceback (most recent call last): >>>>>> File "/usr/lib/python2.7/threading.py", line 551, in >>>>>> __bootstrap_inner >>>>>> self.run() >>>>>> File "/usr/lib/python2.7/threading.py", line 504, in run >>>>>> self.__target(*self.__args, **self.__kwargs) >>>>>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>>>>> _process_packets >>>>>> last_offset = p['offset'] >>>>>> TypeError: 'NoneType' object has no attribute '__getitem__' >>>>>> >>>>>> Mi duda es la siguiente: >>>>>> >>>>>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a >>>>>> la IBOB que empiece a enviar los datos de forma automática por medio del >>>>>> puerto ethernet? (los archivos están en el link: >>>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>>>>> ) >>>>>> >>>>>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>>>>> poco_rx_i8_c256.py i8_c256.config? >>>>>> >>>>>> Saludos y gracias. >>>>>> >>>>>> Rolando Paz >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>>>>> arodesc en gmail.com> escribió: >>>>>> >>>>>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>>>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>>>>> viendo a ver que sale. ;D >>>>>>> Saludos!!! >>>>>>> >>>>>>> El 03/04/2014, a las 17:35, Rolando Paz escribió: >>>>>>> >>>>>>> Ahora mismos he dedicado todo el tiempo para construir el back-end >>>>>>> del interferómetro, y esto incluye el correlador y el software. Luego de >>>>>>> esto debo diseñar el front-end, que en esencia es toda la parte analógica >>>>>>> del interferómetro: amplificadores de bajo ruido, convertidores de >>>>>>> frecuencia, filtros, alimentadores de las antena, cables y otros... >>>>>>> >>>>>>> Me falta mucho, pero sigo adelante... >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>>>>> >>>>>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>>>>>>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>>>>>>> >>>>>>>> >>>>>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>>>>> >>>>>>>>> Es un gusto saludarlos. >>>>>>>>> >>>>>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para >>>>>>>>> obtener las señales de varias antenas y lograr realizar radioimagenes del >>>>>>>>> universo. >>>>>>>>> >>>>>>>>> Ahora mismo estoy tratando de entender el software desarrollado en >>>>>>>>> el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>>>>>>>> existe soporte. El software son unos script escritos en python. >>>>>>>>> >>>>>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>>>>> actualizar los script? >>>>>>>>> >>>>>>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer >>>>>>>>> que funcionen. >>>>>>>>> No está demás decir que yo no sé programar :-) >>>>>>>>> >>>>>>>>> Estaré muy agradecido por su ayuda. >>>>>>>>> >>>>>>>>> Saludos >>>>>>>>> >>>>>>>>> Rolando Paz >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Python-es mailing list >>>>>>>>> Python-es en python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Python-es mailing list >>>>>>>> Python-es en python.org >>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es en python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es en python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Fri Apr 4 01:10:18 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 17:10:18 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: mmmm, me parece... Voy a editar un video y se los envio... El 3 de abril de 2014, 17:08, Flavio Danesse escribió: > quizas puedas hacer un video mostrando eso así lo podemos consultar en > nuestro tiempo y luego charlar contigo sobre eso. > > > El 3 de abril de 2014, 19:35, Rolando Paz escribió: > > Tienes toda la razón. >> >> Les propongo que quienes estén interesados, puedan acceder de forma >> remota a mi PC. Yo puedo mostrarles el desarrollo que hasta este momento >> llevo y el tema de la ejecución de los script. Creo que tengo por acá un >> archivo MIRIAD obtenido desde el script. >> >> Luego que definamos y que todos conozcan de que se trata todo, entonces >> definir el proyecto. >> >> Que les parece? >> >> Saludos >> >> >> El 3 de abril de 2014, 16:24, Flavio Danesse escribió: >> >> El problema que hay desde mi perspectiva es no saber que debe hacer el >>> código y no tener donde probar el código. >>> Las interfaces gráficas son lo más sencillo de hacer el tema es la >>> funcionalidad de la aplicación a realizar, las conexiones con dispositivos >>> que no conozco ni se si puedo conseguir para realizar pruebas, etc . . . >>> >>> Para armar esto como proyecto, debes primero que nada, desarrollar las >>> especificaciones y alcance de la aplicación, es decir que debe hacer como >>> debe hacerlo, como se debe ver, que hardware interviene, etc . . . >>> >>> Y luego de tener un grupo de gente abocado a llevarlo adelante, hay que >>> designar tareas, plazos, etc . . . >>> >>> Es decir, antes de desarrollar nada, hay que diseñar, hacer ingeniería, >>> etc . . . para el momento del desarrollo propiamente dicho, los >>> involucrados deben tener claro que deben hacer. >>> >>> >>> El 3 de abril de 2014, 19:14, Rolando Paz escribió: >>> >>> Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? >>>> >>>> En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >>>> descargar lo que considero son las mejores presentaciones que he visto >>>> respecto al tema de la radioastronomia e radiointerferometria. >>>> >>>> Específicamente les sugiero que vean estas presentaciones: >>>> >>>> http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >>>> http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >>>> >>>> El script de python que se observa aca >>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >>>> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >>>> >>>> Estos datos los almaceno, para luego ser procesados con un software >>>> como , http://www.atnf.csiro.au/computing/software/miriad/, o como >>>> https://github.com/AaronParsons/aipy, o >>>> https://casper.berkeley.edu/astrobaki/index.php/AIPY >>>> >>>> También me gustaría poder desarrollar una interfaz gráfica para poder >>>> ver los espectros de las señales analógicas por medio de matplotlib o >>>> alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de >>>> script para esto, sin embargo esta programado para obtener los datos por el >>>> puerto RS232 y no ethernet: >>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >>>> >>>> Saludos y gracias por todo el apoyo mostrado. >>>> >>>> Rolando Paz >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> El 3 de abril de 2014, 15:24, Flavio Danesse escribió: >>>> >>>> Yo me anoto en el proyecto. >>>>> >>>>> No tengo la mas mínima idea de que es un interferómetro ni de >>>>> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >>>>> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >>>>> código. >>>>> >>>>> De momento lo voy a mirar nada más. >>>>> Creo que vas a necesitar organizar como proyecto esto porque ya son >>>>> varios anotados para participar, alguien tiene que organizar la cosa. >>>>> >>>>> >>>>> El 3 de abril de 2014, 13:44, Rolando Paz escribió: >>>>> >>>>> El vídeo en donde se explica el funcionamiento del correlador es el >>>>>> siguiente: >>>>>> >>>>>> >>>>>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>>>>> >>>>>> Griffin Foster fue quien diseño el software del correlador. >>>>>> >>>>>> Saludos >>>>>> >>>>>> Rolando Paz >>>>>> >>>>>> >>>>>> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>>>>> >>>>>>> Muchas gracias a todos! >>>>>>> >>>>>>> El problema que tengo es el siguiente: >>>>>>> >>>>>>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>>>>>> >>>>>>> Ejecuto el comando: init_poco.py i8_c256.py >>>>>>> >>>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>>>>>> >>>>>>> Parsing config file i8_c256.config...OK >>>>>>> >>>>>>> Writing override variables... OK >>>>>>> >>>>>>> Connecting to iBOB... OK >>>>>>> >>>>>>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la >>>>>>> captura de los datos de wireshark (una imagen wireshark.png), en donde se >>>>>>> observa la información que se transmite desde mi PC hacia el correlador >>>>>>> llamado IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB >>>>>>> debería empezar a enviar automáticamente los paquetes, pero no lo hace pues >>>>>>> no se observa nada en el wireshark después. >>>>>>> >>>>>>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>>>>>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>>>>>> >>>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>>>>>> i8_c256.config >>>>>>> >>>>>>> Parsing config file i8_c256.config...OK >>>>>>> Listening on port 7 >>>>>>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>>>>>> C2M Parameters: >>>>>>> N Antennas: 8 >>>>>>> Bandwidth: 0.200000 GHz >>>>>>> SDF: 0.000781 GHz >>>>>>> Int Time: 0.747520 s >>>>>>> Array location: ['38:25:59.24', '-79:51:02.1'] >>>>>>> Recording Bandpass to file... OK >>>>>>> Starting file: zen.uv.tmp >>>>>>> Beginning RX thread... >>>>>>> Expecting total dump size from each x engine: 65536 bytes >>>>>>> ERR: Buffer is too small for header unpack >>>>>>> ERR: could not unpack header >>>>>>> Exception in thread Thread-1: >>>>>>> Traceback (most recent call last): >>>>>>> File "/usr/lib/python2.7/threading.py", line 551, in >>>>>>> __bootstrap_inner >>>>>>> self.run() >>>>>>> File "/usr/lib/python2.7/threading.py", line 504, in run >>>>>>> self.__target(*self.__args, **self.__kwargs) >>>>>>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>>>>>> _process_packets >>>>>>> last_offset = p['offset'] >>>>>>> TypeError: 'NoneType' object has no attribute '__getitem__' >>>>>>> >>>>>>> Mi duda es la siguiente: >>>>>>> >>>>>>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a >>>>>>> la IBOB que empiece a enviar los datos de forma automática por medio del >>>>>>> puerto ethernet? (los archivos están en el link: >>>>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>>>>>> ) >>>>>>> >>>>>>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>>>>>> poco_rx_i8_c256.py i8_c256.config? >>>>>>> >>>>>>> Saludos y gracias. >>>>>>> >>>>>>> Rolando Paz >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>>>>>> arodesc en gmail.com> escribió: >>>>>>> >>>>>>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>>>>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>>>>>> viendo a ver que sale. ;D >>>>>>>> Saludos!!! >>>>>>>> >>>>>>>> El 03/04/2014, a las 17:35, Rolando Paz >>>>>>>> escribió: >>>>>>>> >>>>>>>> Ahora mismos he dedicado todo el tiempo para construir el back-end >>>>>>>> del interferómetro, y esto incluye el correlador y el software. Luego de >>>>>>>> esto debo diseñar el front-end, que en esencia es toda la parte analógica >>>>>>>> del interferómetro: amplificadores de bajo ruido, convertidores de >>>>>>>> frecuencia, filtros, alimentadores de las antena, cables y otros... >>>>>>>> >>>>>>>> Me falta mucho, pero sigo adelante... >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>>>>>> >>>>>>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" >>>>>>>>> en astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. >>>>>>>>> :) >>>>>>>>> >>>>>>>>> >>>>>>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>>>>>> >>>>>>>>>> Es un gusto saludarlos. >>>>>>>>>> >>>>>>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para >>>>>>>>>> obtener las señales de varias antenas y lograr realizar radioimagenes del >>>>>>>>>> universo. >>>>>>>>>> >>>>>>>>>> Ahora mismo estoy tratando de entender el software desarrollado >>>>>>>>>> en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya >>>>>>>>>> no existe soporte. El software son unos script escritos en python. >>>>>>>>>> >>>>>>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>>>>>> actualizar los script? >>>>>>>>>> >>>>>>>>>> Yo sé qué es lo que deben hacer los script, pero no logro hacer >>>>>>>>>> que funcionen. >>>>>>>>>> No está demás decir que yo no sé programar :-) >>>>>>>>>> >>>>>>>>>> Estaré muy agradecido por su ayuda. >>>>>>>>>> >>>>>>>>>> Saludos >>>>>>>>>> >>>>>>>>>> Rolando Paz >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Python-es mailing list >>>>>>>>>> Python-es en python.org >>>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Python-es mailing list >>>>>>>>> Python-es en python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>> >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Python-es mailing list >>>>>>>> Python-es en python.org >>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Python-es mailing list >>>>>>>> Python-es en python.org >>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jsabastizagal en gmail.com Fri Apr 4 01:57:43 2014 From: jsabastizagal en gmail.com (Jose Sabastizagal) Date: Thu, 3 Apr 2014 18:57:43 -0500 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Parece que el error más tuviera que ver con las caracteristicas de la pc que con la aplicación en si misma (salvo mejor opinion o parecer): ERR: Buffer is too small for header unpack ERR: could not unpack header Tal vez podrias probar con estos comandos a ver si mejora http://www.ehowenespanol.com/aumentar-buffers-ubuntu-tcp-ip-como_176394/ José Alejandro Sabastizagal Orellana http://www.42.com.pe http://www.sabastizagal.com El 3 de abril de 2014, 18:10, Rolando Paz escribió: > mmmm, me parece... > > Voy a editar un video y se los envio... > > > > > El 3 de abril de 2014, 17:08, Flavio Danesse escribió: > > quizas puedas hacer un video mostrando eso así lo podemos consultar en >> nuestro tiempo y luego charlar contigo sobre eso. >> >> >> El 3 de abril de 2014, 19:35, Rolando Paz escribió: >> >> Tienes toda la razón. >>> >>> Les propongo que quienes estén interesados, puedan acceder de forma >>> remota a mi PC. Yo puedo mostrarles el desarrollo que hasta este momento >>> llevo y el tema de la ejecución de los script. Creo que tengo por acá un >>> archivo MIRIAD obtenido desde el script. >>> >>> Luego que definamos y que todos conozcan de que se trata todo, entonces >>> definir el proyecto. >>> >>> Que les parece? >>> >>> Saludos >>> >>> >>> El 3 de abril de 2014, 16:24, Flavio Danesse escribió: >>> >>> El problema que hay desde mi perspectiva es no saber que debe hacer el >>>> código y no tener donde probar el código. >>>> Las interfaces gráficas son lo más sencillo de hacer el tema es la >>>> funcionalidad de la aplicación a realizar, las conexiones con dispositivos >>>> que no conozco ni se si puedo conseguir para realizar pruebas, etc . . . >>>> >>>> Para armar esto como proyecto, debes primero que nada, desarrollar las >>>> especificaciones y alcance de la aplicación, es decir que debe hacer como >>>> debe hacerlo, como se debe ver, que hardware interviene, etc . . . >>>> >>>> Y luego de tener un grupo de gente abocado a llevarlo adelante, hay que >>>> designar tareas, plazos, etc . . . >>>> >>>> Es decir, antes de desarrollar nada, hay que diseñar, hacer ingeniería, >>>> etc . . . para el momento del desarrollo propiamente dicho, los >>>> involucrados deben tener claro que deben hacer. >>>> >>>> >>>> El 3 de abril de 2014, 19:14, Rolando Paz escribió: >>>> >>>> Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? >>>>> >>>>> En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >>>>> descargar lo que considero son las mejores presentaciones que he visto >>>>> respecto al tema de la radioastronomia e radiointerferometria. >>>>> >>>>> Específicamente les sugiero que vean estas presentaciones: >>>>> >>>>> http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >>>>> http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >>>>> >>>>> El script de python que se observa aca >>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >>>>> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >>>>> >>>>> Estos datos los almaceno, para luego ser procesados con un software >>>>> como , http://www.atnf.csiro.au/computing/software/miriad/, o como >>>>> https://github.com/AaronParsons/aipy, o >>>>> https://casper.berkeley.edu/astrobaki/index.php/AIPY >>>>> >>>>> También me gustaría poder desarrollar una interfaz gráfica para poder >>>>> ver los espectros de las señales analógicas por medio de matplotlib o >>>>> alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de >>>>> script para esto, sin embargo esta programado para obtener los datos por el >>>>> puerto RS232 y no ethernet: >>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >>>>> >>>>> Saludos y gracias por todo el apoyo mostrado. >>>>> >>>>> Rolando Paz >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> El 3 de abril de 2014, 15:24, Flavio Danesse escribió: >>>>> >>>>> Yo me anoto en el proyecto. >>>>>> >>>>>> No tengo la mas mínima idea de que es un interferómetro ni de >>>>>> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >>>>>> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >>>>>> código. >>>>>> >>>>>> De momento lo voy a mirar nada más. >>>>>> Creo que vas a necesitar organizar como proyecto esto porque ya son >>>>>> varios anotados para participar, alguien tiene que organizar la cosa. >>>>>> >>>>>> >>>>>> El 3 de abril de 2014, 13:44, Rolando Paz escribió: >>>>>> >>>>>> El vídeo en donde se explica el funcionamiento del correlador es el >>>>>>> siguiente: >>>>>>> >>>>>>> >>>>>>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>>>>>> >>>>>>> Griffin Foster fue quien diseño el software del correlador. >>>>>>> >>>>>>> Saludos >>>>>>> >>>>>>> Rolando Paz >>>>>>> >>>>>>> >>>>>>> El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>>>>>> >>>>>>>> Muchas gracias a todos! >>>>>>>> >>>>>>>> El problema que tengo es el siguiente: >>>>>>>> >>>>>>>> Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>>>>>>> >>>>>>>> Ejecuto el comando: init_poco.py i8_c256.py >>>>>>>> >>>>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py >>>>>>>> i8_c256.config >>>>>>>> >>>>>>>> Parsing config file i8_c256.config...OK >>>>>>>> >>>>>>>> Writing override variables... OK >>>>>>>> >>>>>>>> Connecting to iBOB... OK >>>>>>>> >>>>>>>> Adjunto el archivo "init_poco.py - i8_c256.config", que es la >>>>>>>> captura de los datos de wireshark (una imagen wireshark.png), en donde se >>>>>>>> observa la información que se transmite desde mi PC hacia el correlador >>>>>>>> llamado IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB >>>>>>>> debería empezar a enviar automáticamente los paquetes, pero no lo hace pues >>>>>>>> no se observa nada en el wireshark después. >>>>>>>> >>>>>>>> Aun así, yo ejecuto el siguiente comando para obtener los datos en >>>>>>>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>>>>>>> >>>>>>>> rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>>>>>>> i8_c256.config >>>>>>>> >>>>>>>> Parsing config file i8_c256.config...OK >>>>>>>> Listening on port 7 >>>>>>>> Expecting integration sizes of 18432 vectors, or 73728 bytes >>>>>>>> C2M Parameters: >>>>>>>> N Antennas: 8 >>>>>>>> Bandwidth: 0.200000 GHz >>>>>>>> SDF: 0.000781 GHz >>>>>>>> Int Time: 0.747520 s >>>>>>>> Array location: ['38:25:59.24', '-79:51:02.1'] >>>>>>>> Recording Bandpass to file... OK >>>>>>>> Starting file: zen.uv.tmp >>>>>>>> Beginning RX thread... >>>>>>>> Expecting total dump size from each x engine: 65536 bytes >>>>>>>> ERR: Buffer is too small for header unpack >>>>>>>> ERR: could not unpack header >>>>>>>> Exception in thread Thread-1: >>>>>>>> Traceback (most recent call last): >>>>>>>> File "/usr/lib/python2.7/threading.py", line 551, in >>>>>>>> __bootstrap_inner >>>>>>>> self.run() >>>>>>>> File "/usr/lib/python2.7/threading.py", line 504, in run >>>>>>>> self.__target(*self.__args, **self.__kwargs) >>>>>>>> File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>>>>>>> _process_packets >>>>>>>> last_offset = p['offset'] >>>>>>>> TypeError: 'NoneType' object has no attribute '__getitem__' >>>>>>>> >>>>>>>> Mi duda es la siguiente: >>>>>>>> >>>>>>>> a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo >>>>>>>> a la IBOB que empiece a enviar los datos de forma automática por medio del >>>>>>>> puerto ethernet? (los archivos están en el link: >>>>>>>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>>>>>>> ) >>>>>>>> >>>>>>>> b) Qué significa el error que se produce cuando ejecuto el comando sudo >>>>>>>> poco_rx_i8_c256.py i8_c256.config? >>>>>>>> >>>>>>>> Saludos y gracias. >>>>>>>> >>>>>>>> Rolando Paz >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>>>>>>> arodesc en gmail.com> escribió: >>>>>>>> >>>>>>>> Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>>>>>>>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>>>>>>>> viendo a ver que sale. ;D >>>>>>>>> Saludos!!! >>>>>>>>> >>>>>>>>> El 03/04/2014, a las 17:35, Rolando Paz >>>>>>>>> escribió: >>>>>>>>> >>>>>>>>> Ahora mismos he dedicado todo el tiempo para construir el back-end >>>>>>>>> del interferómetro, y esto incluye el correlador y el software. Luego de >>>>>>>>> esto debo diseñar el front-end, que en esencia es toda la parte analógica >>>>>>>>> del interferómetro: amplificadores de bajo ruido, convertidores de >>>>>>>>> frecuencia, filtros, alimentadores de las antena, cables y otros... >>>>>>>>> >>>>>>>>> Me falta mucho, pero sigo adelante... >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> El 3 de abril de 2014, 8:41, Da?id escribió: >>>>>>>>> >>>>>>>>>> A mí también me interesa. Soy físico, con algunos "antecedentes" >>>>>>>>>> en astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. >>>>>>>>>> :) >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>>>>>>>>> >>>>>>>>>>> Es un gusto saludarlos. >>>>>>>>>>> >>>>>>>>>>> Desde hace ya algún tiempo estoy diseñando un correlador para >>>>>>>>>>> obtener las señales de varias antenas y lograr realizar radioimagenes del >>>>>>>>>>> universo. >>>>>>>>>>> >>>>>>>>>>> Ahora mismo estoy tratando de entender el software desarrollado >>>>>>>>>>> en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya >>>>>>>>>>> no existe soporte. El software son unos script escritos en python. >>>>>>>>>>> >>>>>>>>>>> Alguno de ustedes estaría interesado en ayudarme a entender y a >>>>>>>>>>> actualizar los script? >>>>>>>>>>> >>>>>>>>>>> Yo sé qué es lo que deben hacer los script, pero no logro >>>>>>>>>>> hacer que funcionen. >>>>>>>>>>> No está demás decir que yo no sé programar :-) >>>>>>>>>>> >>>>>>>>>>> Estaré muy agradecido por su ayuda. >>>>>>>>>>> >>>>>>>>>>> Saludos >>>>>>>>>>> >>>>>>>>>>> Rolando Paz >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Python-es mailing list >>>>>>>>>>> Python-es en python.org >>>>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Python-es mailing list >>>>>>>>>> Python-es en python.org >>>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Python-es mailing list >>>>>>>>> Python-es en python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Python-es mailing list >>>>>>>>> Python-es en python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Python-es mailing list >>>>>>> Python-es en python.org >>>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Python-es mailing list >>>>>> Python-es en python.org >>>>>> https://mail.python.org/mailman/listinfo/python-es >>>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jsm en iaa.es Fri Apr 4 02:34:06 2014 From: jsm en iaa.es (=?utf-8?Q?Jos=C3=A9_Sabater_Montes?=) Date: Fri, 4 Apr 2014 01:34:06 +0100 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Hola Rolando, Un proyecto muy bonito y también muy complejo. Antes de mirar lo del software tengo una serie de preguntas que me parecen relevantes: ¿Cuántas antenas? ¿de qué tipo? ¿en qué configuración? ¿a qué frecuencia? ¿qué ancho de banda? ¿una o dos polarizaciones? ¿está el correlador ya listo? ¿qué correlador es? El 03/04/2014, a las 23:14, Rolando Paz escribió: > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? > > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden descargar lo que considero son las mejores presentaciones que he visto respecto al tema de la radioastronomia e radiointerferometria. > > Específicamente les sugiero que vean estas presentaciones: > > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt > > El script de python que se observa aca https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, obtiene los datos del correlador en un formato de archivos llamado MIRIAD. El formato MIRIAD se usa principalmente en CARMA (https://en.wikipedia.org/wiki/Combined_Array_for_Research_in_Millimeter-wave_Astronomy) y ATCA (https://en.wikipedia.org/wiki/Australia_Telescope_Compact_Array). En el archivo se guardan las ?visibilidades? que obtiene el correlador (el resultado de la correlación) e información sobre las antenas, los receptores, etc. http://www.atnf.csiro.au/computing/software/miriad/userguide/node224.html#app:uvvars > > Estos datos los almaceno, para luego ser procesados con un software como , http://www.atnf.csiro.au/computing/software/miriad/, o como https://github.com/AaronParsons/aipy, o https://casper.berkeley.edu/astrobaki/index.php/AIPY Tengo entendido que Miriad se usa para calibrar datos de interferómetros de disco y AIPY está preparado para calibrar datos de ?arrays? de dipolos. Son programas bastante complejos y específicos y es posible que no funcionen directamente para este proyecto (o quizás sí). > > También me gustaría poder desarrollar una interfaz gráfica para poder ver los espectros de las señales analógicas por medio de matplotlib o alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de script para esto, sin embargo esta programado para obtener los datos por el puerto RS232 y no ethernet: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ Por el mensaje de error de antes veo que se requieren 73728 bytes de almacenamiento por cada secuencia de integración de poco menos de un segundo. Parece que eso está por encima de los 65536 bytes máximos de algún buffer y por eso puede que aparezca un fallo como indica José Sabastizagal. Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36). ¿Es esto correcto? Quizás podrías reducir el número de antenas para la prueba para ver si sigue dando el mismo fallo (?). Con 7 antenas deberías tener integraciones de 57344 bytes. Un saludo, Jose Sabater > > Saludos y gracias por todo el apoyo mostrado. > > Rolando Paz > > > > > > > > > > > > > El 3 de abril de 2014, 15:24, Flavio Danesse escribió: > Yo me anoto en el proyecto. > > No tengo la mas mínima idea de que es un interferómetro ni de radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el código. > > De momento lo voy a mirar nada más. > Creo que vas a necesitar organizar como proyecto esto porque ya son varios anotados para participar, alguien tiene que organizar la cosa. > > > El 3 de abril de 2014, 13:44, Rolando Paz escribió: > > El vídeo en donde se explica el funcionamiento del correlador es el siguiente: > > https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v > > Griffin Foster fue quien diseño el software del correlador. > > Saludos > > Rolando Paz > > > El 3 de abril de 2014, 10:35, Rolando Paz escribió: > Muchas gracias a todos! > > El problema que tengo es el siguiente: > > Yo instale wiresahark y estoy usando ubuntu 12.04 LST > > Ejecuto el comando: init_poco.py i8_c256.py > > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config > > Parsing config file i8_c256.config...OK > > Writing override variables... OK > > Connecting to iBOB... OK > > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de los datos de wireshark (una imagen wireshark.png), en donde se observa la información que se transmite desde mi PC hacia el correlador llamado IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería empezar a enviar automáticamente los paquetes, pero no lo hace pues no se observa nada en el wireshark después. > > Aun así, yo ejecuto el siguiente comando para obtener los datos en formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config > > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py i8_c256.config > > Parsing config file i8_c256.config...OK > Listening on port 7 > Expecting integration sizes of 18432 vectors, or 73728 bytes > C2M Parameters: > N Antennas: 8 > Bandwidth: 0.200000 GHz > SDF: 0.000781 GHz > Int Time: 0.747520 s > Array location: ['38:25:59.24', '-79:51:02.1'] > Recording Bandpass to file... OK > Starting file: zen.uv.tmp > Beginning RX thread... > Expecting total dump size from each x engine: 65536 bytes > ERR: Buffer is too small for header unpack > ERR: could not unpack header > Exception in thread Thread-1: > Traceback (most recent call last): > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner > self.run() > File "/usr/lib/python2.7/threading.py", line 504, in run > self.__target(*self.__args, **self.__kwargs) > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets > last_offset = p['offset'] > TypeError: 'NoneType' object has no attribute '__getitem__' > > Mi duda es la siguiente: > > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la IBOB que empiece a enviar los datos de forma automática por medio del puerto ethernet? (los archivos están en el link: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/) > > b) Qué significa el error que se produce cuando ejecuto el comando sudo poco_rx_i8_c256.py i8_c256.config? > > Saludos y gracias. > > Rolando Paz > > > > > > > > > > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero escribió: > > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a trastear con estas cosillas de antenas. También le echaré un ojo y vamos viendo a ver que sale. ;D > Saludos!!! > > El 03/04/2014, a las 17:35, Rolando Paz escribió: > >> Ahora mismos he dedicado todo el tiempo para construir el back-end del interferómetro, y esto incluye el correlador y el software. Luego de esto debo diseñar el front-end, que en esencia es toda la parte analógica del interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, filtros, alimentadores de las antena, cables y otros... >> >> Me falta mucho, pero sigo adelante... >> >> >> >> >> >> El 3 de abril de 2014, 8:41, Da?id escribió: >> A mí también me interesa. Soy físico, con algunos "antecedentes" en astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >> >> >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >> Es un gusto saludarlos. >> >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener las señales de varias antenas y lograr realizar radioimagenes del universo. >> >> Ahora mismo estoy tratando de entender el software desarrollado en el 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no existe soporte. El software son unos script escritos en python. >> >> Alguno de ustedes estaría interesado en ayudarme a entender y a actualizar los script? >> >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que funcionen. >> No está demás decir que yo no sé programar :-) >> >> Estaré muy agradecido por su ayuda. >> >> Saludos >> >> Rolando Paz >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ From flxpaz en gmail.com Fri Apr 4 04:11:19 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 20:11:19 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Gracias José Sabastizagal y Jose Sabater Voy a presentar de una mejor forma el proyecto: El interés surgió a raíz de conocer al grupo CASPER ( https://casper.berkeley.edu/) Collaboration for Astronomy Signal Processing and Electronics Research, gracias al Doctor Stanley Kurtz del Centro de Radioastronomía y Astrofísica de la UNAM, México. El grupo CASPER a diseñado tres tarjetas llamadas IBOB, BEE and ROACH. Ahora un grupo del surafrica del futuro SKA extendió el diseño con nuevos modelos de la ROACH. Debido a que no cuento con financiamiento y son bastante costosas las tarjetas, logré conversar con Aaron Parson, uno de los fundadores de CASPER. Aaron amablemente me prestó una IBOB con dos tarjetas ADC llamadas ADC4x250-8. Cada una de estas tarjetas ADC4x250-8 tiene capacidad de 4 entradas simultaneas. https://casper.berkeley.edu/wiki/IBOB https://casper.berkeley.edu/wiki/ADC4x250-8 Estas tarjetas (IBOB, BEE....) tienen la capacidad de de ser programadas como espectrómetro, formador de haz o correlador. Solo son limitadas por los recursos propios de cada FPGA en cada tarjeta. En el inicio, la IBOB fue programada como un "pocketcorrelator", es decir que todo el procesamiento digital y las correlaciones cruzadas y autocorrelaciones se hacían en una sola IBOB. Claro que con la limitante de tener pocos canales espectrales. Griffin Foster fue una de las personas que trabajo con este pocketcorrelator. Su software se encuentra aca: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ Para poder utilizar este software con la IBOB, lo primero que se tiene que hacer es programar el FPGA de la IBOB, y esto se hace por medio de MATLAB. Adjunto el archivo modelo de MATLAB con el que se genera un archivo .bit. Este archivo .bit se envía al FPGA de la IBOB y queda programada para realizar la función de procesamiento digital y correlación. Todo esto ya lo hice, es decir que ya programé el FPGA con el archivo .bit para la correlación de 8 entradas. Luego realicé los primeros pasos de archivo doc que se encuentra aqui: https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/docs/poco_user_guide Pero al momento de realizar la obtención de los paquetes en formato MIRIAD, surge el siguiente problema: Al ejecutar el script para inicializar la transmisión de datos de la IBOB: rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config Parsing config file i8_c256.config...OK Writing override variables... OK Connecting to iBOB... OK se observa que todo estuvo bien. Cuando ejecuto el siguiente comando para obtener los paquetes: sudo poco_rx_i8_c256.py i8_c256.config rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py i8_c256.config Parsing config file i8_c256.config...OK Listening on port 7 Expecting integration sizes of 18432 vectors, or 73728 bytes C2M Parameters: N Antennas: 8 Bandwidth: 0.200000 GHz SDF: 0.000781 GHz Int Time: 0.747520 s Array location: ['38:25:59.24', '-79:51:02.1'] Recording Bandpass to file... OK Starting file: zen.uv.tmp Beginning RX thread... Expecting total dump size from each x engine: 65536 bytes ERR: Buffer is too small for header unpack ERR: could not unpack header Exception in thread Thread-1: Traceback (most recent call last): File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner self.run() File "/usr/lib/python2.7/threading.py", line 504, in run self.__target(*self.__args, **self.__kwargs) File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets last_offset = p['offset'] TypeError: 'NoneType' object has no attribute '__getitem__' surge este error. El video en donde Griffin Foster presenta este instrumento se encuentra acá: https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v Perdón por repetir todo de nuevo, pero ahora esta mejor explicado (creo). José, cómo lograste deducir la configuración del correlador con saber los bytes? "Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36)" Tengo duda sobre cómo debo configurar los puertos UDP en los script, ya que la IBOB solo se comunica por el puerto UPD 7. Saludos Rolando Paz El 3 de abril de 2014, 18:34, José Sabater Montes escribió: > > Hola Rolando, > > Un proyecto muy bonito y también muy complejo. > > Antes de mirar lo del software tengo una serie de preguntas que me parecen > relevantes: > ¿Cuántas antenas? ¿de qué tipo? ¿en qué configuración? ¿a qué frecuencia? > ¿qué ancho de banda? ¿una o dos polarizaciones? ¿está el correlador ya > listo? ¿qué correlador es? > > > El 03/04/2014, a las 23:14, Rolando Paz escribió: > > > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? > > > > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden > descargar lo que considero son las mejores presentaciones que he visto > respecto al tema de la radioastronomia e radiointerferometria. > > > > Específicamente les sugiero que vean estas presentaciones: > > > > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt > > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt > > > > El script de python que se observa aca > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, > obtiene los datos del correlador en un formato de archivos llamado MIRIAD. > > El formato MIRIAD se usa principalmente en CARMA ( > https://en.wikipedia.org/wiki/Combined_Array_for_Research_in_Millimeter-wave_Astronomy) > y ATCA (https://en.wikipedia.org/wiki/Australia_Telescope_Compact_Array). > En el archivo se guardan las ?visibilidades? que obtiene el correlador (el > resultado de la correlación) e información sobre las antenas, los > receptores, etc. > > http://www.atnf.csiro.au/computing/software/miriad/userguide/node224.html#app:uvvars > > > > > Estos datos los almaceno, para luego ser procesados con un software como > , http://www.atnf.csiro.au/computing/software/miriad/, o como > https://github.com/AaronParsons/aipy, o > https://casper.berkeley.edu/astrobaki/index.php/AIPY > > Tengo entendido que Miriad se usa para calibrar datos de interferómetros > de disco y AIPY está preparado para calibrar datos de ?arrays? de dipolos. > Son programas bastante complejos y específicos y es posible que no > funcionen directamente para este proyecto (o quizás sí). > > > > > También me gustaría poder desarrollar una interfaz gráfica para poder > ver los espectros de las señales analógicas por medio de matplotlib o > alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de > script para esto, sin embargo esta programado para obtener los datos por el > puerto RS232 y no ethernet: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ > > Por el mensaje de error de antes veo que se requieren 73728 bytes de > almacenamiento por cada secuencia de integración de poco menos de un > segundo. Parece que eso está por encima de los 65536 bytes máximos de algún > buffer y por eso puede que aparezca un fallo como indica José Sabastizagal. > > Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 > bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus > cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36). ¿Es > esto correcto? Quizás podrías reducir el número de antenas para la prueba > para ver si sigue dando el mismo fallo (?). Con 7 antenas deberías tener > integraciones de 57344 bytes. > > Un saludo, > Jose Sabater > > > > > Saludos y gracias por todo el apoyo mostrado. > > > > Rolando Paz > > > > > > > > > > > > > > > > > > > > > > > > > > El 3 de abril de 2014, 15:24, Flavio Danesse > escribió: > > Yo me anoto en el proyecto. > > > > No tengo la mas mínima idea de que es un interferómetro ni de > radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y > gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el > código. > > > > De momento lo voy a mirar nada más. > > Creo que vas a necesitar organizar como proyecto esto porque ya son > varios anotados para participar, alguien tiene que organizar la cosa. > > > > > > El 3 de abril de 2014, 13:44, Rolando Paz escribió: > > > > El vídeo en donde se explica el funcionamiento del correlador es el > siguiente: > > > > > https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v > > > > Griffin Foster fue quien diseño el software del correlador. > > > > Saludos > > > > Rolando Paz > > > > > > El 3 de abril de 2014, 10:35, Rolando Paz escribió: > > Muchas gracias a todos! > > > > El problema que tengo es el siguiente: > > > > Yo instale wiresahark y estoy usando ubuntu 12.04 LST > > > > Ejecuto el comando: init_poco.py i8_c256.py > > > > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config > > > > Parsing config file i8_c256.config...OK > > > > Writing override variables... OK > > > > Connecting to iBOB... OK > > > > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de > los datos de wireshark (una imagen wireshark.png), en donde se observa la > información que se transmite desde mi PC hacia el correlador llamado IBOB. > Sin embargo, luego de ejecutar este comando, creo que la IBOB debería > empezar a enviar automáticamente los paquetes, pero no lo hace pues no se > observa nada en el wireshark después. > > > > Aun así, yo ejecuto el siguiente comando para obtener los datos en > formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config > > > > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py > i8_c256.config > > > > Parsing config file i8_c256.config...OK > > Listening on port 7 > > Expecting integration sizes of 18432 vectors, or 73728 bytes > > C2M Parameters: > > N Antennas: 8 > > Bandwidth: 0.200000 GHz > > SDF: 0.000781 GHz > > Int Time: 0.747520 s > > Array location: ['38:25:59.24', '-79:51:02.1'] > > Recording Bandpass to file... OK > > Starting file: zen.uv.tmp > > Beginning RX thread... > > Expecting total dump size from each x engine: 65536 bytes > > ERR: Buffer is too small for header unpack > > ERR: could not unpack header > > Exception in thread Thread-1: > > Traceback (most recent call last): > > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner > > self.run() > > File "/usr/lib/python2.7/threading.py", line 504, in run > > self.__target(*self.__args, **self.__kwargs) > > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets > > last_offset = p['offset'] > > TypeError: 'NoneType' object has no attribute '__getitem__' > > > > Mi duda es la siguiente: > > > > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la > IBOB que empiece a enviar los datos de forma automática por medio del > puerto ethernet? (los archivos están en el link: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ > ) > > > > b) Qué significa el error que se produce cuando ejecuto el comando sudo > poco_rx_i8_c256.py i8_c256.config? > > > > Saludos y gracias. > > > > Rolando Paz > > > > > > > > > > > > > > > > > > > > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < > arodesc en gmail.com> escribió: > > > > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a > trastear con estas cosillas de antenas. También le echaré un ojo y vamos > viendo a ver que sale. ;D > > Saludos!!! > > > > El 03/04/2014, a las 17:35, Rolando Paz escribió: > > > >> Ahora mismos he dedicado todo el tiempo para construir el back-end del > interferómetro, y esto incluye el correlador y el software. Luego de esto > debo diseñar el front-end, que en esencia es toda la parte analógica del > interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, > filtros, alimentadores de las antena, cables y otros... > >> > >> Me falta mucho, pero sigo adelante... > >> > >> > >> > >> > >> > >> El 3 de abril de 2014, 8:41, Da?id escribió: > >> A mí también me interesa. Soy físico, con algunos "antecedentes" en > astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) > >> > >> > >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : > >> Es un gusto saludarlos. > >> > >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener > las señales de varias antenas y lograr realizar radioimagenes del universo. > >> > >> Ahora mismo estoy tratando de entender el software desarrollado en el > 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no > existe soporte. El software son unos script escritos en python. > >> > >> Alguno de ustedes estaría interesado en ayudarme a entender y a > actualizar los script? > >> > >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que > funcionen. > >> No está demás decir que yo no sé programar :-) > >> > >> Estaré muy agradecido por su ayuda. > >> > >> Saludos > >> > >> Rolando Paz > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: i_poco8_256ch_v006.pdf Type: application/pdf Size: 47264 bytes Desc: no disponible URL: From nicolaslino1 en gmail.com Fri Apr 4 04:13:24 2014 From: nicolaslino1 en gmail.com (Nicolas lino) Date: Thu, 3 Apr 2014 23:13:24 -0300 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Buenas gente, soy sysadmin linux, se que no tiene nada, pero nada que ver con el tema, pero desarrollo mucho en python y me gustan los desafíos! Me prendo con todo lo que pueda ayudar! Mi primer propuesta es generar un repo con un wiki para ordenar todo esto! gitlab es una buena opcion, es una buena herramienta donde documentar todo el codigo y trabajarlo mediante git. Por lo que e visto hay gente muy capacitada y entendida en el tema comentando, yo no soy uno de ellos :( jjaja El 3 de abril de 2014, 21:34, José Sabater Montes escribió: > > Hola Rolando, > > Un proyecto muy bonito y también muy complejo. > > Antes de mirar lo del software tengo una serie de preguntas que me parecen > relevantes: > ¿Cuántas antenas? ¿de qué tipo? ¿en qué configuración? ¿a qué frecuencia? > ¿qué ancho de banda? ¿una o dos polarizaciones? ¿está el correlador ya > listo? ¿qué correlador es? > > > El 03/04/2014, a las 23:14, Rolando Paz escribió: > > > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? > > > > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden > descargar lo que considero son las mejores presentaciones que he visto > respecto al tema de la radioastronomia e radiointerferometria. > > > > Específicamente les sugiero que vean estas presentaciones: > > > > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt > > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt > > > > El script de python que se observa aca > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, > obtiene los datos del correlador en un formato de archivos llamado MIRIAD. > > El formato MIRIAD se usa principalmente en CARMA ( > https://en.wikipedia.org/wiki/Combined_Array_for_Research_in_Millimeter-wave_Astronomy) > y ATCA (https://en.wikipedia.org/wiki/Australia_Telescope_Compact_Array). > En el archivo se guardan las ?visibilidades? que obtiene el correlador (el > resultado de la correlación) e información sobre las antenas, los > receptores, etc. > > http://www.atnf.csiro.au/computing/software/miriad/userguide/node224.html#app:uvvars > > > > > Estos datos los almaceno, para luego ser procesados con un software como > , http://www.atnf.csiro.au/computing/software/miriad/, o como > https://github.com/AaronParsons/aipy, o > https://casper.berkeley.edu/astrobaki/index.php/AIPY > > Tengo entendido que Miriad se usa para calibrar datos de interferómetros > de disco y AIPY está preparado para calibrar datos de ?arrays? de dipolos. > Son programas bastante complejos y específicos y es posible que no > funcionen directamente para este proyecto (o quizás sí). > > > > > También me gustaría poder desarrollar una interfaz gráfica para poder > ver los espectros de las señales analógicas por medio de matplotlib o > alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de > script para esto, sin embargo esta programado para obtener los datos por el > puerto RS232 y no ethernet: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ > > Por el mensaje de error de antes veo que se requieren 73728 bytes de > almacenamiento por cada secuencia de integración de poco menos de un > segundo. Parece que eso está por encima de los 65536 bytes máximos de algún > buffer y por eso puede que aparezca un fallo como indica José Sabastizagal. > > Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 > bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus > cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36). ¿Es > esto correcto? Quizás podrías reducir el número de antenas para la prueba > para ver si sigue dando el mismo fallo (?). Con 7 antenas deberías tener > integraciones de 57344 bytes. > > Un saludo, > Jose Sabater > > > > > Saludos y gracias por todo el apoyo mostrado. > > > > Rolando Paz > > > > > > > > > > > > > > > > > > > > > > > > > > El 3 de abril de 2014, 15:24, Flavio Danesse > escribió: > > Yo me anoto en el proyecto. > > > > No tengo la mas mínima idea de que es un interferómetro ni de > radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y > gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el > código. > > > > De momento lo voy a mirar nada más. > > Creo que vas a necesitar organizar como proyecto esto porque ya son > varios anotados para participar, alguien tiene que organizar la cosa. > > > > > > El 3 de abril de 2014, 13:44, Rolando Paz escribió: > > > > El vídeo en donde se explica el funcionamiento del correlador es el > siguiente: > > > > > https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v > > > > Griffin Foster fue quien diseño el software del correlador. > > > > Saludos > > > > Rolando Paz > > > > > > El 3 de abril de 2014, 10:35, Rolando Paz escribió: > > Muchas gracias a todos! > > > > El problema que tengo es el siguiente: > > > > Yo instale wiresahark y estoy usando ubuntu 12.04 LST > > > > Ejecuto el comando: init_poco.py i8_c256.py > > > > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config > > > > Parsing config file i8_c256.config...OK > > > > Writing override variables... OK > > > > Connecting to iBOB... OK > > > > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura de > los datos de wireshark (una imagen wireshark.png), en donde se observa la > información que se transmite desde mi PC hacia el correlador llamado IBOB. > Sin embargo, luego de ejecutar este comando, creo que la IBOB debería > empezar a enviar automáticamente los paquetes, pero no lo hace pues no se > observa nada en el wireshark después. > > > > Aun así, yo ejecuto el siguiente comando para obtener los datos en > formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config > > > > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py > i8_c256.config > > > > Parsing config file i8_c256.config...OK > > Listening on port 7 > > Expecting integration sizes of 18432 vectors, or 73728 bytes > > C2M Parameters: > > N Antennas: 8 > > Bandwidth: 0.200000 GHz > > SDF: 0.000781 GHz > > Int Time: 0.747520 s > > Array location: ['38:25:59.24', '-79:51:02.1'] > > Recording Bandpass to file... OK > > Starting file: zen.uv.tmp > > Beginning RX thread... > > Expecting total dump size from each x engine: 65536 bytes > > ERR: Buffer is too small for header unpack > > ERR: could not unpack header > > Exception in thread Thread-1: > > Traceback (most recent call last): > > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner > > self.run() > > File "/usr/lib/python2.7/threading.py", line 504, in run > > self.__target(*self.__args, **self.__kwargs) > > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets > > last_offset = p['offset'] > > TypeError: 'NoneType' object has no attribute '__getitem__' > > > > Mi duda es la siguiente: > > > > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la > IBOB que empiece a enviar los datos de forma automática por medio del > puerto ethernet? (los archivos están en el link: > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ > ) > > > > b) Qué significa el error que se produce cuando ejecuto el comando sudo > poco_rx_i8_c256.py i8_c256.config? > > > > Saludos y gracias. > > > > Rolando Paz > > > > > > > > > > > > > > > > > > > > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < > arodesc en gmail.com> escribió: > > > > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a > trastear con estas cosillas de antenas. También le echaré un ojo y vamos > viendo a ver que sale. ;D > > Saludos!!! > > > > El 03/04/2014, a las 17:35, Rolando Paz escribió: > > > >> Ahora mismos he dedicado todo el tiempo para construir el back-end del > interferómetro, y esto incluye el correlador y el software. Luego de esto > debo diseñar el front-end, que en esencia es toda la parte analógica del > interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, > filtros, alimentadores de las antena, cables y otros... > >> > >> Me falta mucho, pero sigo adelante... > >> > >> > >> > >> > >> > >> El 3 de abril de 2014, 8:41, Da?id escribió: > >> A mí también me interesa. Soy físico, con algunos "antecedentes" en > astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) > >> > >> > >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : > >> Es un gusto saludarlos. > >> > >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener > las señales de varias antenas y lograr realizar radioimagenes del universo. > >> > >> Ahora mismo estoy tratando de entender el software desarrollado en el > 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no > existe soporte. El software son unos script escritos en python. > >> > >> Alguno de ustedes estaría interesado en ayudarme a entender y a > actualizar los script? > >> > >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que > funcionen. > >> No está demás decir que yo no sé programar :-) > >> > >> Estaré muy agradecido por su ayuda. > >> > >> Saludos > >> > >> Rolando Paz > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From flxpaz en gmail.com Fri Apr 4 04:26:18 2014 From: flxpaz en gmail.com (Rolando Paz) Date: Thu, 3 Apr 2014 20:26:18 -0600 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Un repositorio en donde todo se almacene... sería formidable! Cómo podemos iniciarlo? Rolando Paz El 3 de abril de 2014, 20:13, Nicolas lino escribió: > Buenas gente, soy sysadmin linux, se que no tiene nada, pero nada que ver > con el tema, pero desarrollo mucho en python y me gustan los desafíos! > Me prendo con todo lo que pueda ayudar! > > Mi primer propuesta es generar un repo con un wiki para ordenar todo esto! > gitlab es una buena opcion, es una buena herramienta donde documentar todo > el codigo y trabajarlo mediante git. > > Por lo que e visto hay gente muy capacitada y entendida en el tema > comentando, yo no soy uno de ellos :( jjaja > > > El 3 de abril de 2014, 21:34, José Sabater Montes escribió: > > >> Hola Rolando, >> >> Un proyecto muy bonito y también muy complejo. >> >> Antes de mirar lo del software tengo una serie de preguntas que me >> parecen relevantes: >> ¿Cuántas antenas? ¿de qué tipo? ¿en qué configuración? ¿a qué frecuencia? >> ¿qué ancho de banda? ¿una o dos polarizaciones? ¿está el correlador ya >> listo? ¿qué correlador es? >> >> >> El 03/04/2014, a las 23:14, Rolando Paz escribió: >> >> > Aun no entiendo como se organiza esto como proyecto. Alguien tiene idea? >> > >> > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >> descargar lo que considero son las mejores presentaciones que he visto >> respecto al tema de la radioastronomia e radiointerferometria. >> > >> > Específicamente les sugiero que vean estas presentaciones: >> > >> > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >> > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >> > >> > El script de python que se observa aca >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >> >> El formato MIRIAD se usa principalmente en CARMA ( >> https://en.wikipedia.org/wiki/Combined_Array_for_Research_in_Millimeter-wave_Astronomy) >> y ATCA (https://en.wikipedia.org/wiki/Australia_Telescope_Compact_Array). >> En el archivo se guardan las ?visibilidades? que obtiene el correlador (el >> resultado de la correlación) e información sobre las antenas, los >> receptores, etc. >> >> http://www.atnf.csiro.au/computing/software/miriad/userguide/node224.html#app:uvvars >> >> > >> > Estos datos los almaceno, para luego ser procesados con un software >> como , http://www.atnf.csiro.au/computing/software/miriad/, o como >> https://github.com/AaronParsons/aipy, o >> https://casper.berkeley.edu/astrobaki/index.php/AIPY >> >> Tengo entendido que Miriad se usa para calibrar datos de interferómetros >> de disco y AIPY está preparado para calibrar datos de ?arrays? de dipolos. >> Son programas bastante complejos y específicos y es posible que no >> funcionen directamente para este proyecto (o quizás sí). >> >> > >> > También me gustaría poder desarrollar una interfaz gráfica para poder >> ver los espectros de las señales analógicas por medio de matplotlib o >> alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de >> script para esto, sin embargo esta programado para obtener los datos por el >> puerto RS232 y no ethernet: >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >> >> Por el mensaje de error de antes veo que se requieren 73728 bytes de >> almacenamiento por cada secuencia de integración de poco menos de un >> segundo. Parece que eso está por encima de los 65536 bytes máximos de algún >> buffer y por eso puede que aparezca un fallo como indica José Sabastizagal. >> >> Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 >> bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus >> cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36). ¿Es >> esto correcto? Quizás podrías reducir el número de antenas para la prueba >> para ver si sigue dando el mismo fallo (?). Con 7 antenas deberías tener >> integraciones de 57344 bytes. >> >> Un saludo, >> Jose Sabater >> >> > >> > Saludos y gracias por todo el apoyo mostrado. >> > >> > Rolando Paz >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > El 3 de abril de 2014, 15:24, Flavio Danesse >> escribió: >> > Yo me anoto en el proyecto. >> > >> > No tengo la mas mínima idea de que es un interferómetro ni de >> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >> código. >> > >> > De momento lo voy a mirar nada más. >> > Creo que vas a necesitar organizar como proyecto esto porque ya son >> varios anotados para participar, alguien tiene que organizar la cosa. >> > >> > >> > El 3 de abril de 2014, 13:44, Rolando Paz escribió: >> > >> > El vídeo en donde se explica el funcionamiento del correlador es el >> siguiente: >> > >> > >> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >> > >> > Griffin Foster fue quien diseño el software del correlador. >> > >> > Saludos >> > >> > Rolando Paz >> > >> > >> > El 3 de abril de 2014, 10:35, Rolando Paz escribió: >> > Muchas gracias a todos! >> > >> > El problema que tengo es el siguiente: >> > >> > Yo instale wiresahark y estoy usando ubuntu 12.04 LST >> > >> > Ejecuto el comando: init_poco.py i8_c256.py >> > >> > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >> > >> > Parsing config file i8_c256.config...OK >> > >> > Writing override variables... OK >> > >> > Connecting to iBOB... OK >> > >> > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura >> de los datos de wireshark (una imagen wireshark.png), en donde se observa >> la información que se transmite desde mi PC hacia el correlador llamado >> IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >> observa nada en el wireshark después. >> > >> > Aun así, yo ejecuto el siguiente comando para obtener los datos en >> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >> > >> > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >> i8_c256.config >> > >> > Parsing config file i8_c256.config...OK >> > Listening on port 7 >> > Expecting integration sizes of 18432 vectors, or 73728 bytes >> > C2M Parameters: >> > N Antennas: 8 >> > Bandwidth: 0.200000 GHz >> > SDF: 0.000781 GHz >> > Int Time: 0.747520 s >> > Array location: ['38:25:59.24', '-79:51:02.1'] >> > Recording Bandpass to file... OK >> > Starting file: zen.uv.tmp >> > Beginning RX thread... >> > Expecting total dump size from each x engine: 65536 bytes >> > ERR: Buffer is too small for header unpack >> > ERR: could not unpack header >> > Exception in thread Thread-1: >> > Traceback (most recent call last): >> > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner >> > self.run() >> > File "/usr/lib/python2.7/threading.py", line 504, in run >> > self.__target(*self.__args, **self.__kwargs) >> > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >> _process_packets >> > last_offset = p['offset'] >> > TypeError: 'NoneType' object has no attribute '__getitem__' >> > >> > Mi duda es la siguiente: >> > >> > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la >> IBOB que empiece a enviar los datos de forma automática por medio del >> puerto ethernet? (los archivos están en el link: >> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >> ) >> > >> > b) Qué significa el error que se produce cuando ejecuto el comando sudo >> poco_rx_i8_c256.py i8_c256.config? >> > >> > Saludos y gracias. >> > >> > Rolando Paz >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >> arodesc en gmail.com> escribió: >> > >> > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >> viendo a ver que sale. ;D >> > Saludos!!! >> > >> > El 03/04/2014, a las 17:35, Rolando Paz escribió: >> > >> >> Ahora mismos he dedicado todo el tiempo para construir el back-end del >> interferómetro, y esto incluye el correlador y el software. Luego de esto >> debo diseñar el front-end, que en esencia es toda la parte analógica del >> interferómetro: amplificadores de bajo ruido, convertidores de frecuencia, >> filtros, alimentadores de las antena, cables y otros... >> >> >> >> Me falta mucho, pero sigo adelante... >> >> >> >> >> >> >> >> >> >> >> >> El 3 de abril de 2014, 8:41, Da?id escribió: >> >> A mí también me interesa. Soy físico, con algunos "antecedentes" en >> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >> >> >> >> >> >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >> >> Es un gusto saludarlos. >> >> >> >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener >> las señales de varias antenas y lograr realizar radioimagenes del universo. >> >> >> >> Ahora mismo estoy tratando de entender el software desarrollado en el >> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >> existe soporte. El software son unos script escritos en python. >> >> >> >> Alguno de ustedes estaría interesado en ayudarme a entender y a >> actualizar los script? >> >> >> >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >> funcionen. >> >> No está demás decir que yo no sé programar :-) >> >> >> >> Estaré muy agradecido por su ayuda. >> >> >> >> Saludos >> >> >> >> Rolando Paz >> >> >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> >> >> >> >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> >> >> >> >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> > >> > >> > >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> > >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jsm en iaa.es Fri Apr 4 13:38:54 2014 From: jsm en iaa.es (=?windows-1252?Q?Jos=E9_Sabater_Montes?=) Date: Fri, 4 Apr 2014 12:38:54 +0100 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Hola Rolando, Gracias por la explicación. El 04/04/2014, a las 03:11, Rolando Paz escribió: > Gracias José Sabastizagal y Jose Sabater > > Voy a presentar de una mejor forma el proyecto: > > El interés surgió a raíz de conocer al grupo CASPER (https://casper.berkeley.edu/) Collaboration for Astronomy Signal Processing and Electronics Research, gracias al Doctor Stanley Kurtz del Centro de Radioastronomía y Astrofísica de la UNAM, México. > > El grupo CASPER a diseñado tres tarjetas llamadas IBOB, BEE and ROACH. Ahora un grupo del surafrica del futuro SKA extendió el diseño con nuevos modelos de la ROACH. > > Debido a que no cuento con financiamiento y son bastante costosas las tarjetas, logré conversar con Aaron Parson, uno de los fundadores de CASPER. Aaron amablemente me prestó una IBOB con dos tarjetas ADC llamadas ADC4x250-8. Cada una de estas tarjetas ADC4x250-8 tiene capacidad de 4 entradas simultaneas. > > https://casper.berkeley.edu/wiki/IBOB > https://casper.berkeley.edu/wiki/ADC4x250-8 > > Estas tarjetas (IBOB, BEE....) tienen la capacidad de de ser programadas como espectrómetro, formador de haz o correlador. Solo son limitadas por los recursos propios de cada FPGA en cada tarjeta. > > En el inicio, la IBOB fue programada como un "pocketcorrelator", es decir que todo el procesamiento digital y las correlaciones cruzadas y autocorrelaciones se hacían en una sola IBOB. Claro que con la limitante de tener pocos canales espectrales. > > Griffin Foster fue una de las personas que trabajo con este pocketcorrelator. Su software se encuentra aca: > > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ > > Para poder utilizar este software con la IBOB, lo primero que se tiene que hacer es programar el FPGA de la IBOB, y esto se hace por medio de MATLAB. Adjunto el archivo modelo de MATLAB con el que se genera un archivo .bit. Este archivo .bit se envía al FPGA de la IBOB y queda programada para realizar la función de procesamiento digital y correlación. > > Todo esto ya lo hice, es decir que ya programé el FPGA con el archivo .bit para la correlación de 8 entradas. Luego realicé los primeros pasos de archivo doc que se encuentra aqui: > > https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/docs/poco_user_guide > > Pero al momento de realizar la obtención de los paquetes en formato MIRIAD, surge el siguiente problema: > > Al ejecutar el script para inicializar la transmisión de datos de la IBOB: > > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config > > Parsing config file i8_c256.config...OK > > Writing override variables... OK > > Connecting to iBOB... OK > > se observa que todo estuvo bien. > > Cuando ejecuto el siguiente comando para obtener los paquetes: sudo poco_rx_i8_c256.py i8_c256.config > > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py i8_c256.config > > Parsing config file i8_c256.config...OK > Listening on port 7 > Expecting integration sizes of 18432 vectors, or 73728 bytes > C2M Parameters: > N Antennas: 8 > Bandwidth: 0.200000 GHz > SDF: 0.000781 GHz > Int Time: 0.747520 s > Array location: ['38:25:59.24', '-79:51:02.1'] > Recording Bandpass to file... OK > Starting file: zen.uv.tmp > Beginning RX thread... > Expecting total dump size from each x engine: 65536 bytes > ERR: Buffer is too small for header unpack > ERR: could not unpack header > Exception in thread Thread-1: > Traceback (most recent call last): > File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner > self.run() > File "/usr/lib/python2.7/threading.py", line 504, in run > self.__target(*self.__args, **self.__kwargs) > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in _process_packets > last_offset = p['offset'] > TypeError: 'NoneType' object has no attribute '__getitem__' > > surge este error. > > El video en donde Griffin Foster presenta este instrumento se encuentra acá: > > https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v > > Perdón por repetir todo de nuevo, pero ahora esta mejor explicado (creo). > > José, cómo lograste deducir la configuración del correlador con saber los bytes? > > "Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36)? Por las siguientes pistas: * En los datos que envías del error se dice lo de los 18432 parámetros de 4 bytes. * El número de canales sería el resultado de dividir ?Bandwidth" por ?SDF?, 256. Además encaja con el c256 del nombre del script. * El número de antenas determina el número de visibilidades. Con N antenas se tienen N*(N-1)/2 líneas de base, si se añaden las autocorrelaciones (antes decía cross-correlaciones cuando debía decir autocorrelaciones) hay que sumarle N. Con 8 antenas se tienen las 28 líneas de base, y, si se añaden las autocorrelaciones son en total 36. * Nos falta aún un factor 2 que yo atribuía a las diferentes polarizaciones, aunque ahora no estoy tan seguro de esa parte. ¿Es posible que sea la parte real y la compleja de la visibilidad? Bueno, por eso y porque soy radioastrónomo (qué mal suena ahora que lo escribo) y parece una configuración razonable para un correlador. > > Tengo duda sobre cómo debo configurar los puertos UDP en los script, ya que la IBOB solo se comunica por el puerto UPD 7. Esperemos que alguno de los expertos de la lista pueda ayudar con esto. No puedo ayudar mucho por falta de tiempo pero me parece un proyecto muy interesante y lo iré siguiendo. ¡Mucha suerte! Un saludo, Jose Sabater > > Saludos > > Rolando Paz From redfinal en yahoo.com.ar Fri Apr 4 13:04:49 2014 From: redfinal en yahoo.com.ar (RedFinal) Date: Fri, 4 Apr 2014 08:04:49 -0300 Subject: [Python-es] Hola a todos // Software para Radiointerferometro In-Reply-To: References: Message-ID: Hola, me prendo con todo en el proyecto. No se nada de antenas, y nada Python (aún), programo en .Net y Java sin ser experto, pero pongo todo lo que tengo para ayudar. Me encantan los desafíos. RedFinal El 3 de abril de 2014, 23:26, Rolando Paz escribió: > Un repositorio en donde todo se almacene... sería formidable! > > Cómo podemos iniciarlo? > > Rolando Paz > > > El 3 de abril de 2014, 20:13, Nicolas lino escribió: > > Buenas gente, soy sysadmin linux, se que no tiene nada, pero nada que ver >> con el tema, pero desarrollo mucho en python y me gustan los desafíos! >> Me prendo con todo lo que pueda ayudar! >> >> Mi primer propuesta es generar un repo con un wiki para ordenar todo >> esto! gitlab es una buena opcion, es una buena herramienta donde documentar >> todo el codigo y trabajarlo mediante git. >> >> Por lo que e visto hay gente muy capacitada y entendida en el tema >> comentando, yo no soy uno de ellos :( jjaja >> >> >> El 3 de abril de 2014, 21:34, José Sabater Montes escribió: >> >> >>> Hola Rolando, >>> >>> Un proyecto muy bonito y también muy complejo. >>> >>> Antes de mirar lo del software tengo una serie de preguntas que me >>> parecen relevantes: >>> ¿Cuántas antenas? ¿de qué tipo? ¿en qué configuración? ¿a qué >>> frecuencia? ¿qué ancho de banda? ¿una o dos polarizaciones? ¿está el >>> correlador ya listo? ¿qué correlador es? >>> >>> >>> El 03/04/2014, a las 23:14, Rolando Paz escribió: >>> >>> > Aun no entiendo como se organiza esto como proyecto. Alguien tiene >>> idea? >>> > >>> > En el siguiente link http://www.dmradas.co.uk/Downloads.html pueden >>> descargar lo que considero son las mejores presentaciones que he visto >>> respecto al tema de la radioastronomia e radiointerferometria. >>> > >>> > Específicamente les sugiero que vean estas presentaciones: >>> > >>> > http://www.dmradas.co.uk/Presentation%20Part%202A.ppt >>> > http://www.dmradas.co.uk/Presentation%20Part%202B.ppt >>> > >>> > El script de python que se observa aca >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/scripts/poco_rx_i8_c256.py, >>> obtiene los datos del correlador en un formato de archivos llamado MIRIAD. >>> >>> El formato MIRIAD se usa principalmente en CARMA ( >>> https://en.wikipedia.org/wiki/Combined_Array_for_Research_in_Millimeter-wave_Astronomy) >>> y ATCA (https://en.wikipedia.org/wiki/Australia_Telescope_Compact_Array). >>> En el archivo se guardan las ?visibilidades? que obtiene el correlador (el >>> resultado de la correlación) e información sobre las antenas, los >>> receptores, etc. >>> >>> http://www.atnf.csiro.au/computing/software/miriad/userguide/node224.html#app:uvvars >>> >>> > >>> > Estos datos los almaceno, para luego ser procesados con un software >>> como , http://www.atnf.csiro.au/computing/software/miriad/, o como >>> https://github.com/AaronParsons/aipy, o >>> https://casper.berkeley.edu/astrobaki/index.php/AIPY >>> >>> Tengo entendido que Miriad se usa para calibrar datos de interferómetros >>> de disco y AIPY está preparado para calibrar datos de ?arrays? de dipolos. >>> Son programas bastante complejos y específicos y es posible que no >>> funcionen directamente para este proyecto (o quizás sí). >>> >>> > >>> > También me gustaría poder desarrollar una interfaz gráfica para poder >>> ver los espectros de las señales analógicas por medio de matplotlib o >>> alguna otra herramienta en tiempo real. Aca se puede ver un ejemplo de >>> script para esto, sin embargo esta programado para obtener los datos por el >>> puerto RS232 y no ethernet: >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/wb_poco_ibob/Python_Script/ >>> >>> Por el mensaje de error de antes veo que se requieren 73728 bytes de >>> almacenamiento por cada secuencia de integración de poco menos de un >>> segundo. Parece que eso está por encima de los 65536 bytes máximos de algún >>> buffer y por eso puede que aparezca un fallo como indica José Sabastizagal. >>> >>> Por otro lado, 73728 bytes se corresponden con 18432 parámetros de 4 >>> bytes. Y esto encaja con 256 canales, 2 polarizaciones y 8 antenas con sus >>> cross-correlaciones (28 lineas de base + 8 cross-correlaciones = 36). ¿Es >>> esto correcto? Quizás podrías reducir el número de antenas para la prueba >>> para ver si sigue dando el mismo fallo (?). Con 7 antenas deberías tener >>> integraciones de 57344 bytes. >>> >>> Un saludo, >>> Jose Sabater >>> >>> > >>> > Saludos y gracias por todo el apoyo mostrado. >>> > >>> > Rolando Paz >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > El 3 de abril de 2014, 15:24, Flavio Danesse >>> escribió: >>> > Yo me anoto en el proyecto. >>> > >>> > No tengo la mas mínima idea de que es un interferómetro ni de >>> radioimágenes ni nada de eso, pero programo sobre todo en python, gtk y >>> gstreamer y a veces en otros lenguajes, capaz que puedo ayudar con el >>> código. >>> > >>> > De momento lo voy a mirar nada más. >>> > Creo que vas a necesitar organizar como proyecto esto porque ya son >>> varios anotados para participar, alguien tiene que organizar la cosa. >>> > >>> > >>> > El 3 de abril de 2014, 13:44, Rolando Paz escribió: >>> > >>> > El vídeo en donde se explica el funcionamiento del correlador es el >>> siguiente: >>> > >>> > >>> https://casper.berkeley.edu/presentations/workshop_october09/m4v/gfoster.m4v >>> > >>> > Griffin Foster fue quien diseño el software del correlador. >>> > >>> > Saludos >>> > >>> > Rolando Paz >>> > >>> > >>> > El 3 de abril de 2014, 10:35, Rolando Paz escribió: >>> > Muchas gracias a todos! >>> > >>> > El problema que tengo es el siguiente: >>> > >>> > Yo instale wiresahark y estoy usando ubuntu 12.04 LST >>> > >>> > Ejecuto el comando: init_poco.py i8_c256.py >>> > >>> > rolando en rolando-MS-7815:~/ibob/poco011$ init_poco.py i8_c256.config >>> > >>> > Parsing config file i8_c256.config...OK >>> > >>> > Writing override variables... OK >>> > >>> > Connecting to iBOB... OK >>> > >>> > Adjunto el archivo "init_poco.py - i8_c256.config", que es la captura >>> de los datos de wireshark (una imagen wireshark.png), en donde se observa >>> la información que se transmite desde mi PC hacia el correlador llamado >>> IBOB. Sin embargo, luego de ejecutar este comando, creo que la IBOB debería >>> empezar a enviar automáticamente los paquetes, pero no lo hace pues no se >>> observa nada en el wireshark después. >>> > >>> > Aun así, yo ejecuto el siguiente comando para obtener los datos en >>> formato MIRIAD, sudo poco_rx_i8_c256.py i8_c256.config >>> > >>> > rolando en rolando-MS-7815:~/ibob/poco011$ sudo poco_rx_i8_c256.py >>> i8_c256.config >>> > >>> > Parsing config file i8_c256.config...OK >>> > Listening on port 7 >>> > Expecting integration sizes of 18432 vectors, or 73728 bytes >>> > C2M Parameters: >>> > N Antennas: 8 >>> > Bandwidth: 0.200000 GHz >>> > SDF: 0.000781 GHz >>> > Int Time: 0.747520 s >>> > Array location: ['38:25:59.24', '-79:51:02.1'] >>> > Recording Bandpass to file... OK >>> > Starting file: zen.uv.tmp >>> > Beginning RX thread... >>> > Expecting total dump size from each x engine: 65536 bytes >>> > ERR: Buffer is too small for header unpack >>> > ERR: could not unpack header >>> > Exception in thread Thread-1: >>> > Traceback (most recent call last): >>> > File "/usr/lib/python2.7/threading.py", line 551, in >>> __bootstrap_inner >>> > self.run() >>> > File "/usr/lib/python2.7/threading.py", line 504, in run >>> > self.__target(*self.__args, **self.__kwargs) >>> > File "/usr/local/bin/poco_rx_i8_c256.py", line 243, in >>> _process_packets >>> > last_offset = p['offset'] >>> > TypeError: 'NoneType' object has no attribute '__getitem__' >>> > >>> > Mi duda es la siguiente: >>> > >>> > a) Al ejecutar el comando init_poco.py i8_c256.config, yo le digo a la >>> IBOB que empiece a enviar los datos de forma automática por medio del >>> puerto ethernet? (los archivos están en el link: >>> https://casper.berkeley.edu/svn/trunk/projects/pocketcorrelator/poco-0.1.1/ >>> ) >>> > >>> > b) Qué significa el error que se produce cuando ejecuto el comando >>> sudo poco_rx_i8_c256.py i8_c256.config? >>> > >>> > Saludos y gracias. >>> > >>> > Rolando Paz >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > El 3 de abril de 2014, 9:50, Alfonso Ángel Rodríguez Escudero < >>> arodesc en gmail.com> escribió: >>> > >>> > Soy Ingeniero en Telecomunicación y entre otras cosas me dedico a >>> trastear con estas cosillas de antenas. También le echaré un ojo y vamos >>> viendo a ver que sale. ;D >>> > Saludos!!! >>> > >>> > El 03/04/2014, a las 17:35, Rolando Paz escribió: >>> > >>> >> Ahora mismos he dedicado todo el tiempo para construir el back-end >>> del interferómetro, y esto incluye el correlador y el software. Luego de >>> esto debo diseñar el front-end, que en esencia es toda la parte analógica >>> del interferómetro: amplificadores de bajo ruido, convertidores de >>> frecuencia, filtros, alimentadores de las antena, cables y otros... >>> >> >>> >> Me falta mucho, pero sigo adelante... >>> >> >>> >> >>> >> >>> >> >>> >> >>> >> El 3 de abril de 2014, 8:41, Da?id escribió: >>> >> A mí también me interesa. Soy físico, con algunos "antecedentes" en >>> astrofísica. Y si tú tienes antenas, o experiencia construyendo, mejor. :) >>> >> >>> >> >>> >> 2014-04-02 23:08 GMT+02:00 Rolando Paz : >>> >> Es un gusto saludarlos. >>> >> >>> >> Desde hace ya algún tiempo estoy diseñando un correlador para obtener >>> las señales de varias antenas y lograr realizar radioimagenes del universo. >>> >> >>> >> Ahora mismo estoy tratando de entender el software desarrollado en el >>> 2008 para dicho fin. Desde entonces ya no hubo actualizaciones y ya no >>> existe soporte. El software son unos script escritos en python. >>> >> >>> >> Alguno de ustedes estaría interesado en ayudarme a entender y a >>> actualizar los script? >>> >> >>> >> Yo sé qué es lo que deben hacer los script, pero no logro hacer que >>> funcionen. >>> >> No está demás decir que yo no sé programar :-) >>> >> >>> >> Estaré muy agradecido por su ayuda. >>> >> >>> >> Saludos >>> >> >>> >> Rolando Paz >>> >> >>> >> _______________________________________________ >>> >> Python-es mailing list >>> >> Python-es en python.org >>> >> https://mail.python.org/mailman/listinfo/python-es >>> >> FAQ: http://python-es-faq.wikidot.com/ >>> >> >>> >> >>> >> >>> >> _______________________________________________ >>> >> Python-es mailing list >>> >> Python-es en python.org >>> >> https://mail.python.org/mailman/listinfo/python-es >>> >> FAQ: http://python-es-faq.wikidot.com/ >>> >> >>> >> >>> >> _______________________________________________ >>> >> Python-es mailing list >>> >> Python-es en python.org >>> >> https://mail.python.org/mailman/listinfo/python-es >>> >> FAQ: http://python-es-faq.wikidot.com/ >>> > >>> > _______________________________________________ >>> > Python-es mailing list >>> > Python-es en python.org >>> > https://mail.python.org/mailman/listinfo/python-es >>> > FAQ: http://python-es-faq.wikidot.com/ >>> > >>> > >>> > >>> > >>> > >>> > _______________________________________________ >>> > Python-es mailing list >>> > Python-es en python.org >>> > https://mail.python.org/mailman/listinfo/python-es >>> > FAQ: http://python-es-faq.wikidot.com/ >>> > >>> > >>> > >>> > _______________________________________________ >>> > Python-es mailing list >>> > Python-es en python.org >>> > https://mail.python.org/mailman/listinfo/python-es >>> > FAQ: http://python-es-faq.wikidot.com/ >>> > >>> > >>> > _______________________________________________ >>> > Python-es mailing list >>> > Python-es en python.org >>> > https://mail.python.org/mailman/listinfo/python-es >>> > FAQ: http://python-es-faq.wikidot.com/ >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From py en ch3m4.org Fri Apr 4 20:02:37 2014 From: py en ch3m4.org (Chema Cortes) Date: Fri, 04 Apr 2014 20:02:37 +0200 Subject: [Python-es] IPython 2.0 requiere node.js? In-Reply-To: References: Message-ID: <533EF3BD.5020109@ch3m4.org> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 03/04/14 12:25, Kiko escribió: > > El 3 de abril de 2014, 11:52, Chema Cortes > escribió: > > Hola, a todos: > > Probando el notebook de la nueva versión de IPython 2.0 veo que > busca una instalación de node.js para que funcione nbconvert. Al > no encontrarlo, utiliza pandoc en su lugar para renderizar > markdown.. > > Desconozco si se trata de alguna prueba vestigial de cambiar el > kernel de ipython a node.js o que se haya empaquetado mal en conda > (anaconda). > > ¿Sabéis si hay alguna forma de que el nbconvert de ipython 2.0 use > el módulo markdown2 en lugar de node.js o pandoc? > > > platform : win-32 conda version : 3.3.2 python version : > 2.7.5.final.0 > > > > Según la documentación: > http://ipython.org/ipython-doc/stable/notebook/nbconvert.html / / > /Note/ > > /nbconvert uses pandoc to > convert between various markup languages, so pandoc is a dependency > of most nbconvert transforms, excluding Markdown and Python./ > > nbconvert ya te convierte a markdown sin usar Pandoc. > > /ipython(2 o 3) nbconvert --to markdown > notebook_a_transformar.ipynb/ > > ¿Quieres transformar ese markdown a html usando markdown2 o es otra > cosa la que quieres hacer? No pretendo hacer otra cosa que editar algún notebook. Me extrañaba que, en lugar de usar python, se procese markdown con node.js (javascript) o con pandoc (haskell). Una idea que tengo es usar ipynb como editor de markdown, y siempre que había usado Pandoc me destrozaba el formato final. > > En ningún caso necesita node (será un tema interno de anaconda para > sus herramientas en la nube o compartir en wakari o alguna cosa de > esas. Buscando en el proyecto https://github.com/ipython/ipython se puede ver que node.js es parte de los requisitos de "desarrollo" y que, de estar presente, se usa el módulo marked.js para renderizar markdown. La explicación está en que http://nbviewer.ipython.org/ usa node.js: https://github.com/ipython/nbviewer Es interesante ver en github las estadísticas de lenguaje de los proyectos ipython y nbviewer. Cada vez resulta más difícil ver proyectos que sólo usen un lenguaje. - -- Hyperreals *R: http://ch3m4.org/blog Quarks, bits y otras criaturas infinitesimales -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJTPvOyAAoJEFdWyBWwhL4FzMUH/2Y/kooMhTcMGjqaNhySE6hw W7uB2C25zwpqSX85LDcEtx/D1kzbFHGk5axdbqIhtkI+8NBV3CHAOW85iQoKhOVs R+bdu97N6UyZa1NkDHgRdmHOz8ZXlx3xLO2U+yTGAFA0wN/IzYwJqZwtuFLijoMC ut719BN9M3tdLGRSHDfAA+ty7e76lmzaV7eGsqT9MSekwK9kjs77bOCMm7oVDwI4 Kd+y/U0ByZwPgfpupuZQQkJyBNZecPblfDHHcVedrThc0wS5lPe5Ze0mKoo0ruzd AHTFPdUb2MPhq3Ojkv6caFV272CVfSLUqwc2Ya4wJF4UxesJ9wheGWZ3n1cp8B4= =+QVt -----END PGP SIGNATURE----- From agtugo en gmail.com Sun Apr 6 23:24:39 2014 From: agtugo en gmail.com (AGTUGO) Date: Sun, 6 Apr 2014 16:24:39 -0500 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy Message-ID: Hola a todos, hace mucho que no les escribía pero los leo de hace unos añitos, Tratando de correr el codigo siguiente me sale MemoryError: cuando uso valores de 5e7 o mas de sample size. Estoy generando dos listas de numeros aleatorios despues, veo si cumplen una condicion y los que cumplen los sumo. Es el clasico programa tratando de calcular pi usando monte-carlo. ¿Alguien sabe como hacerle para poder usar samples mas grandes sin que ipython llore? import numpy as np from pylab import plot,show,axis size_sample = 1e7 x = np.random.uniform(0,1,size_sample) y = np.random.uniform(0,1,size_sample) -- Arturo Muñoz ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kikocorreoso en gmail.com Sun Apr 6 23:49:33 2014 From: kikocorreoso en gmail.com (Kiko) Date: Sun, 6 Apr 2014 23:49:33 +0200 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy In-Reply-To: References: Message-ID: El 6 de abril de 2014, 23:24, AGTUGO escribió: > Hola a todos, > hace mucho que no les escribía pero los leo de hace unos añitos, > > Tratando de correr el codigo siguiente me sale MemoryError: cuando uso > valores de 5e7 o mas de sample size. Estoy generando dos listas de numeros > aleatorios despues, veo si cumplen una condicion y los que cumplen los > sumo. Es el clasico programa tratando de calcular pi usando monte-carlo. > ¿Alguien sabe como hacerle para poder usar samples mas grandes sin que > ipython llore? > > Si el 'sample size' son 5e7 estás usando casi 400Mb por cada array creado. Soluciones: -Comprando más RAM :-P -si estás haciendo simulaciones MonteCarlo, ¿para qué quieres esos arrays tan grandes en memoria? Puedes usar arrays más pequeños y hacerlo por partes. -np.random.uniform crea arrays con float64 (8 bytes), podrías crearlos de float16 si es suficiente (divides la memoria usada por 4). Ejemplo, x = np.random.uniform(0,1,size_sample).astype(np.float16) -Dependiendo de como hagas las operaciones (no las muestras) puedes estar creandos arrays intermedios temporales que ocupen tanto como las matrices que estás creando y, por tanto, usando más memoria de la necesaria. -puedes guardar los arrays en ficheros y usar memmap -puedes usar pytables -Otras soluciones que ahora no se me ocurren. import numpy as np > from pylab import plot,show,axis > > size_sample = 1e7 > x = np.random.uniform(0,1,size_sample) > y = np.random.uniform(0,1,size_sample) > > > > > -- > Arturo Muñoz > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From agtugo en gmail.com Mon Apr 7 00:56:06 2014 From: agtugo en gmail.com (AGTUGO) Date: Sun, 6 Apr 2014 17:56:06 -0500 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy In-Reply-To: References: Message-ID: Sí solamente estoy buscando la solucion mas transparente (sin tanto paso intermedio) en mi caso con el float 16 debe ser suficiente, guardar los arrays en ficheros es lo mas tentador. Generalmente no pruebo con diferentes listas, generando unas 15 listas y guardarlas en disco deberia ser suficiente para el resto de mis simulaciones. No puedo poner los calculos intermedios porque son información propietaria de una compañia :(. 2014-04-06 16:49 GMT-05:00 Kiko : > > > > El 6 de abril de 2014, 23:24, AGTUGO escribió: > > Hola a todos, >> hace mucho que no les escribía pero los leo de hace unos añitos, >> >> Tratando de correr el codigo siguiente me sale MemoryError: cuando uso >> valores de 5e7 o mas de sample size. Estoy generando dos listas de numeros >> aleatorios despues, veo si cumplen una condicion y los que cumplen los >> sumo. Es el clasico programa tratando de calcular pi usando monte-carlo. >> ¿Alguien sabe como hacerle para poder usar samples mas grandes sin que >> ipython llore? >> >> > Si el 'sample size' son 5e7 estás usando casi 400Mb por cada array creado. > > Soluciones: > > -Comprando más RAM :-P > > -si estás haciendo simulaciones MonteCarlo, ¿para qué quieres esos arrays > tan grandes en memoria? Puedes usar arrays más pequeños y hacerlo por > partes. > > -np.random.uniform crea arrays con float64 (8 bytes), podrías crearlos de > float16 si es suficiente (divides la memoria usada por 4). Ejemplo, > > x = np.random.uniform(0,1,size_sample).astype(np.float16) > > -Dependiendo de como hagas las operaciones (no las muestras) puedes estar > creandos arrays intermedios temporales que ocupen tanto como las matrices > que estás creando y, por tanto, usando más memoria de la necesaria. > > -puedes guardar los arrays en ficheros y usar memmap > > -puedes usar pytables > > -Otras soluciones que ahora no se me ocurren. > > import numpy as np >> from pylab import plot,show,axis >> >> size_sample = 1e7 >> x = np.random.uniform(0,1,size_sample) >> y = np.random.uniform(0,1,size_sample) >> >> >> >> >> -- >> Arturo Muñoz >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Arturo Muñoz Tolosa ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From agtugo en gmail.com Mon Apr 7 00:59:26 2014 From: agtugo en gmail.com (AGTUGO) Date: Sun, 6 Apr 2014 17:59:26 -0500 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy In-Reply-To: References: Message-ID: Aunque puedo hacer calculos similares y mostrarselos!!! Saludos 2014-04-06 17:56 GMT-05:00 AGTUGO : > Sí solamente estoy buscando la solucion mas transparente (sin tanto paso > intermedio) en mi caso con el float 16 debe ser suficiente, guardar los > arrays en ficheros es lo mas tentador. Generalmente no pruebo con > diferentes listas, generando unas 15 listas y guardarlas en disco deberia > ser suficiente para el resto de mis simulaciones. No puedo poner los > calculos intermedios porque son información propietaria de una compañia :(. > > > 2014-04-06 16:49 GMT-05:00 Kiko : > > >> >> >> El 6 de abril de 2014, 23:24, AGTUGO escribió: >> >> Hola a todos, >>> hace mucho que no les escribía pero los leo de hace unos añitos, >>> >>> Tratando de correr el codigo siguiente me sale MemoryError: cuando uso >>> valores de 5e7 o mas de sample size. Estoy generando dos listas de numeros >>> aleatorios despues, veo si cumplen una condicion y los que cumplen los >>> sumo. Es el clasico programa tratando de calcular pi usando monte-carlo. >>> ¿Alguien sabe como hacerle para poder usar samples mas grandes sin que >>> ipython llore? >>> >>> >> Si el 'sample size' son 5e7 estás usando casi 400Mb por cada array >> creado. >> >> Soluciones: >> >> -Comprando más RAM :-P >> >> -si estás haciendo simulaciones MonteCarlo, ¿para qué quieres esos arrays >> tan grandes en memoria? Puedes usar arrays más pequeños y hacerlo por >> partes. >> >> -np.random.uniform crea arrays con float64 (8 bytes), podrías crearlos de >> float16 si es suficiente (divides la memoria usada por 4). Ejemplo, >> >> x = np.random.uniform(0,1,size_sample).astype(np.float16) >> >> -Dependiendo de como hagas las operaciones (no las muestras) puedes estar >> creandos arrays intermedios temporales que ocupen tanto como las matrices >> que estás creando y, por tanto, usando más memoria de la necesaria. >> >> -puedes guardar los arrays en ficheros y usar memmap >> >> -puedes usar pytables >> >> -Otras soluciones que ahora no se me ocurren. >> >> import numpy as np >>> from pylab import plot,show,axis >>> >>> size_sample = 1e7 >>> x = np.random.uniform(0,1,size_sample) >>> y = np.random.uniform(0,1,size_sample) >>> >>> >>> >>> >>> -- >>> Arturo Muñoz >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Arturo Muñoz Tolosa > -- Arturo Muñoz Tolosa ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jdpd en gmx.es Mon Apr 7 09:39:05 2014 From: jdpd en gmx.es (Jaime Perea) Date: Mon, 07 Apr 2014 09:39:05 +0200 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy In-Reply-To: References: Message-ID: <3199403.mcggDjTI6K@cristina> El Domingo, 6 de abril de 2014 16:24:39 AGTUGO escribió: > Hola a todos, > hace mucho que no les escribía pero los leo de hace unos añitos, > > Tratando de correr el codigo siguiente me sale MemoryError: cuando uso > valores de 5e7 o mas de sample size. Estoy generando dos listas de numeros > aleatorios despues, veo si cumplen una condicion y los que cumplen los > sumo. Es el clasico programa tratando de calcular pi usando monte-carlo. > ¿Alguien sabe como hacerle para poder usar samples mas grandes sin que > ipython llore? > > import numpy as np > from pylab import plot,show,axis > > size_sample = 1e7 > x = np.random.uniform(0,1,size_sample) > y = np.random.uniform(0,1,size_sample) python 2.7.5 en una (k)ubuntu 13.10 python Python 2.7.5+ (default, Feb 27 2014, 19:37:08) [GCC 4.8.1] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import numpy as np >>> size_sample = 1e7 >>> >>> y = np.random.uniform(0,1,size_sample) >>> Lo he probado en ipython y en una 12.04 de ubuntu (python 2.7.3), me funciona. Finalmente lo he probado en una versión a 32bits y yambién funciona ¿Qué plataforma utilizas? Saludos -- Jaime D. Perea Duarte. Linux registered user #10472 From davidmenhur en gmail.com Mon Apr 7 11:00:34 2014 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Mon, 7 Apr 2014 11:00:34 +0200 Subject: [Python-es] error de memoria al generar lista de numeros aleatorios uniformes en numpy In-Reply-To: References: Message-ID: 2014-04-06 23:24 GMT+02:00 AGTUGO : > size_sample = 1e7 > x = np.random.uniform(0,1,size_sample) > y = np.random.uniform(0,1,size_sample) > Los números aleatorios que generas no son importantes, son solo un medio para un fin. Escribirlos en disco (Pytables, mmap, swap...) es un gasto innecesario. La única razón por la que quieres hacerlo en paralelo es para aprovecharte de la vectorización de Numpy; por tanto sólo tiene sentido usar tamaños en los que puedas usarlo. import numexpr as ne import numpy as np total_number = 1e8 size_sample = 1e6 condition_true = 0 for _ in xrange(int(np.ceil(total_number / size_sample))): x = np.random.uniform(0, 1, size_sample) y = np.random.uniform(0, 1, size_sample) condition_true += ne.evaluate('sum(abs(x * x + y * y < 1))') print condition_true / total_number Numexpr está ahí para paralelizar la expresión y optimizar el acceso a memoria y la caché de la CPU (útil en este caso, quizá no tanto en otros más complicados). /David ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From miguelglafuente en gmail.com Tue Apr 8 21:02:27 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Tue, 8 Apr 2014 21:02:27 +0200 Subject: [Python-es] Comportamiento de python. Message-ID: Muy buenas, Hace bastante que no escribo, pero hoy me he encontrado por reddit con un articulo en el que comenta una cosa de python, y no entiendo perfectamente que es lo que ocurre, asi que os pregunto, a ver si alguien sabe porqué sucede :-) El codigo es este: def foo(x = []): x.append(1) print(x) foo() foo() foo() [...] Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que entiendas perfectamente como funciona python, o ya te hayas cruzado con esto XD) Y ahora mi pregunta: ¿Porqué sucede esto? Sé que tiene algo que ver con que Python al ejecutar la funcion la recorre buscando las variables que vaya a usar, y las guarda en el scope, en el primer caso x viene del parametro (que seria []). Como en python todo es un objeto, la llamada a foo() se queda como "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la encuentra. No se si me explico, tampoco se si es eso, lo cierto es que estoy bastante confuso con esto XD Un saludo! -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcaballero.hep en gmail.com Tue Apr 8 21:06:38 2014 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Tue, 8 Apr 2014 12:06:38 -0700 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: Message-ID: https://docs.python.org/3/tutorial/controlflow.html#default-argument-values El día 8 de abril de 2014, 12:02, Rock Neurotiko escribió: > Muy buenas, > > Hace bastante que no escribo, pero hoy me he encontrado por reddit con un > articulo en el que comenta una cosa de python, y no entiendo perfectamente > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe porqué > sucede :-) > > El codigo es este: > > def foo(x = []): > x.append(1) > print(x) > > foo() > foo() > foo() > [...] > > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que > entiendas perfectamente como funciona python, o ya te hayas cruzado con esto > XD) > > Y ahora mi pregunta: ¿Porqué sucede esto? > Sé que tiene algo que ver con que Python al ejecutar la funcion la recorre > buscando las variables que vaya a usar, y las guarda en el scope, en el > primer caso x viene del parametro (que seria []). > Como en python todo es un objeto, la llamada a foo() se queda como > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la > encuentra. > > No se si me explico, tampoco se si es eso, lo cierto es que estoy bastante > confuso con esto XD > > Un saludo! > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > From miguelglafuente en gmail.com Tue Apr 8 21:08:10 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Tue, 8 Apr 2014 21:08:10 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: Message-ID: Vale... Juro que busqué en Google, pero no lo encontré XD Gracias! =D El 8 de abril de 2014, 21:06, Jose Caballero escribió: > https://docs.python.org/3/tutorial/controlflow.html#default-argument-values > > > > El día 8 de abril de 2014, 12:02, Rock Neurotiko > escribió: > > Muy buenas, > > > > Hace bastante que no escribo, pero hoy me he encontrado por reddit con un > > articulo en el que comenta una cosa de python, y no entiendo > perfectamente > > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe porqué > > sucede :-) > > > > El codigo es este: > > > > def foo(x = []): > > x.append(1) > > print(x) > > > > foo() > > foo() > > foo() > > [...] > > > > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que > > entiendas perfectamente como funciona python, o ya te hayas cruzado con > esto > > XD) > > > > Y ahora mi pregunta: ¿Porqué sucede esto? > > Sé que tiene algo que ver con que Python al ejecutar la funcion la > recorre > > buscando las variables que vaya a usar, y las guarda en el scope, en el > > primer caso x viene del parametro (que seria []). > > Como en python todo es un objeto, la llamada a foo() se queda como > > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la > > encuentra. > > > > No se si me explico, tampoco se si es eso, lo cierto es que estoy > bastante > > confuso con esto XD > > > > Un saludo! > > > > > > -- > > Miguel García Lafuente - Rock Neurotiko > > > > Do it, the devil is in the details. > > The quieter you are, the more you are able to hear. > > Happy Coding. Code with Passion, Decode with Patience. > > If we make consistent effort, based on proper education, we can change > the > > world. > > > > El contenido de este e-mail es privado, no se permite la revelacion del > > contenido de este e-mail a gente ajena a él. > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcaballero.hep en gmail.com Tue Apr 8 23:40:23 2014 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Tue, 8 Apr 2014 14:40:23 -0700 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: Message-ID: es una de esas cosas casi imposibles de encontrar en google (las key words son o demasiado genericas o demasiado especificas). El día 8 de abril de 2014, 12:08, Rock Neurotiko escribió: > Vale... > Juro que busqué en Google, pero no lo encontré XD > Gracias! =D > > > El 8 de abril de 2014, 21:06, Jose Caballero > escribió: > >> >> https://docs.python.org/3/tutorial/controlflow.html#default-argument-values >> >> >> >> El día 8 de abril de 2014, 12:02, Rock Neurotiko >> escribió: >> > Muy buenas, >> > >> > Hace bastante que no escribo, pero hoy me he encontrado por reddit con >> > un >> > articulo en el que comenta una cosa de python, y no entiendo >> > perfectamente >> > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe porqué >> > sucede :-) >> > >> > El codigo es este: >> > >> > def foo(x = []): >> > x.append(1) >> > print(x) >> > >> > foo() >> > foo() >> > foo() >> > [...] >> > >> > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que >> > entiendas perfectamente como funciona python, o ya te hayas cruzado con >> > esto >> > XD) >> > >> > Y ahora mi pregunta: ¿Porqué sucede esto? >> > Sé que tiene algo que ver con que Python al ejecutar la funcion la >> > recorre >> > buscando las variables que vaya a usar, y las guarda en el scope, en el >> > primer caso x viene del parametro (que seria []). >> > Como en python todo es un objeto, la llamada a foo() se queda como >> > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la >> > encuentra. >> > >> > No se si me explico, tampoco se si es eso, lo cierto es que estoy >> > bastante >> > confuso con esto XD >> > >> > Un saludo! >> > >> > >> > -- >> > Miguel García Lafuente - Rock Neurotiko >> > >> > Do it, the devil is in the details. >> > The quieter you are, the more you are able to hear. >> > Happy Coding. Code with Passion, Decode with Patience. >> > If we make consistent effort, based on proper education, we can change >> > the >> > world. >> > >> > El contenido de este e-mail es privado, no se permite la revelacion del >> > contenido de este e-mail a gente ajena a él. >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > From davidmenhur en gmail.com Tue Apr 8 23:58:58 2014 From: davidmenhur en gmail.com (=?UTF-8?B?RGHPgGlk?=) Date: Tue, 8 Apr 2014 23:58:58 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: Message-ID: Por cierto, si usas eso en código y lo analizas con pylint, te avisa de que eso es un imán para bugs. Suele ser una buena idea pasarlo de vez en cuando, aunque no siempre haya que hacerle caso... On Apr 8, 2014 11:41 PM, "Jose Caballero" wrote: > es una de esas cosas casi imposibles de encontrar en google (las key > words son o demasiado genericas o demasiado especificas). > > > El día 8 de abril de 2014, 12:08, Rock Neurotiko > escribió: > > Vale... > > Juro que busqué en Google, pero no lo encontré XD > > Gracias! =D > > > > > > El 8 de abril de 2014, 21:06, Jose Caballero > > escribió: > > > >> > >> > https://docs.python.org/3/tutorial/controlflow.html#default-argument-values > >> > >> > >> > >> El día 8 de abril de 2014, 12:02, Rock Neurotiko > >> escribió: > >> > Muy buenas, > >> > > >> > Hace bastante que no escribo, pero hoy me he encontrado por reddit con > >> > un > >> > articulo en el que comenta una cosa de python, y no entiendo > >> > perfectamente > >> > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe > porqué > >> > sucede :-) > >> > > >> > El codigo es este: > >> > > >> > def foo(x = []): > >> > x.append(1) > >> > print(x) > >> > > >> > foo() > >> > foo() > >> > foo() > >> > [...] > >> > > >> > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que > >> > entiendas perfectamente como funciona python, o ya te hayas cruzado > con > >> > esto > >> > XD) > >> > > >> > Y ahora mi pregunta: ¿Porqué sucede esto? > >> > Sé que tiene algo que ver con que Python al ejecutar la funcion la > >> > recorre > >> > buscando las variables que vaya a usar, y las guarda en el scope, en > el > >> > primer caso x viene del parametro (que seria []). > >> > Como en python todo es un objeto, la llamada a foo() se queda como > >> > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" la > >> > encuentra. > >> > > >> > No se si me explico, tampoco se si es eso, lo cierto es que estoy > >> > bastante > >> > confuso con esto XD > >> > > >> > Un saludo! > >> > > >> > > >> > -- > >> > Miguel García Lafuente - Rock Neurotiko > >> > > >> > Do it, the devil is in the details. > >> > The quieter you are, the more you are able to hear. > >> > Happy Coding. Code with Passion, Decode with Patience. > >> > If we make consistent effort, based on proper education, we can change > >> > the > >> > world. > >> > > >> > El contenido de este e-mail es privado, no se permite la revelacion > del > >> > contenido de este e-mail a gente ajena a él. > >> > > >> > _______________________________________________ > >> > Python-es mailing list > >> > Python-es en python.org > >> > https://mail.python.org/mailman/listinfo/python-es > >> > FAQ: http://python-es-faq.wikidot.com/ > >> > > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > > > -- > > Miguel García Lafuente - Rock Neurotiko > > > > Do it, the devil is in the details. > > The quieter you are, the more you are able to hear. > > Happy Coding. Code with Passion, Decode with Patience. > > If we make consistent effort, based on proper education, we can change > the > > world. > > > > El contenido de este e-mail es privado, no se permite la revelacion del > > contenido de este e-mail a gente ajena a él. > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From artus.lla en autistici.org Wed Apr 9 15:44:31 2014 From: artus.lla en autistici.org (=?ISO-8859-1?Q?Arturo_Llaja_Alarc=F3n?=) Date: Wed, 09 Apr 2014 08:44:31 -0500 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: Message-ID: <53454EBF.5030604@autistici.org> On 08/04/14 16:58, Da?id wrote: > > Por cierto, si usas eso en código y lo analizas con pylint, te avisa > de que eso es un imán para bugs. Suele ser una buena idea pasarlo de > vez en cuando, aunque no siempre haya que hacerle caso... > > On Apr 8, 2014 11:41 PM, "Jose Caballero" > wrote: > > es una de esas cosas casi imposibles de encontrar en google (las key > words son o demasiado genericas o demasiado especificas). > > > El día 8 de abril de 2014, 12:08, Rock Neurotiko > > > escribió: > > Vale... > > Juro que busqué en Google, pero no lo encontré XD > > Gracias! =D > > > > > > El 8 de abril de 2014, 21:06, Jose Caballero > > > > escribió: > > > >> > >> > https://docs.python.org/3/tutorial/controlflow.html#default-argument-values > >> > >> > >> > >> El día 8 de abril de 2014, 12:02, Rock Neurotiko > >> > > escribió: > >> > Muy buenas, > >> > > >> > Hace bastante que no escribo, pero hoy me he encontrado por > reddit con > >> > un > >> > articulo en el que comenta una cosa de python, y no entiendo > >> > perfectamente > >> > que es lo que ocurre, asi que os pregunto, a ver si alguien > sabe porqué > >> > sucede :-) > >> > > >> > El codigo es este: > >> > > >> > def foo(x = []): > >> > x.append(1) > >> > print(x) > >> > > >> > foo() > >> > foo() > >> > foo() > >> > [...] > >> > > >> > Recomiendo ejecutar, ya que el resultado es soprendente (a no > ser que > >> > entiendas perfectamente como funciona python, o ya te hayas > cruzado con > >> > esto > >> > XD) > >> > > >> > Y ahora mi pregunta: ¿Porqué sucede esto? > >> > Sé que tiene algo que ver con que Python al ejecutar la > funcion la > >> > recorre > >> > buscando las variables que vaya a usar, y las guarda en el > scope, en el > >> > primer caso x viene del parametro (que seria []). > >> > Como en python todo es un objeto, la llamada a foo() se queda > como > >> > "instanciado", por lo que las siguientes ejecuciones, al > buscar "x" la > >> > encuentra. > >> > > >> > No se si me explico, tampoco se si es eso, lo cierto es que estoy > >> > bastante > >> > confuso con esto XD > >> > > >> > Un saludo! > >> > > >> > > >> > -- > >> > Miguel García Lafuente - Rock Neurotiko > >> > > >> > Do it, the devil is in the details. > >> > The quieter you are, the more you are able to hear. > >> > Happy Coding. Code with Passion, Decode with Patience. > >> > If we make consistent effort, based on proper education, we > can change > >> > the > >> > world. > >> > > >> > El contenido de este e-mail es privado, no se permite la > revelacion del > >> > contenido de este e-mail a gente ajena a él. > >> > > >> > _______________________________________________ > >> > Python-es mailing list > >> > Python-es en python.org > >> > https://mail.python.org/mailman/listinfo/python-es > >> > FAQ: http://python-es-faq.wikidot.com/ > >> > > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > > > > > > > > > > -- > > Miguel García Lafuente - Rock Neurotiko > > > > Do it, the devil is in the details. > > The quieter you are, the more you are able to hear. > > Happy Coding. Code with Passion, Decode with Patience. > > If we make consistent effort, based on proper education, we can > change the > > world. > > > > El contenido de este e-mail es privado, no se permite la > revelacion del > > contenido de este e-mail a gente ajena a él. > > > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ He probado la función que describes y el resultado es: def foo(x = []): x.append(1) print(x) foo() [1] foo() [1, 1] foo() [1, 1, 1] ¿Es lo esperado no? ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From miguelglafuente en gmail.com Wed Apr 9 16:38:02 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Wed, 9 Apr 2014 16:38:02 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: <53454EBF.5030604@autistici.org> References: <53454EBF.5030604@autistici.org> Message-ID: En principio no debería serlo, a no ser que sepas cómo se comporta Python en el aspecto de asignar valores a variables no referenciadas (el link Jose lo explica). Si no lo sabes, el comportamiento que crees que debería tener es [1] para cada llamada, ya que a cada llamada "debería" asignar el valor por defecto a x, ya que en ningún momento se lo pasas. Si sabes cómo se comporta, es lo esperado, aun asi, como dice David, pylint te avisa por todos los lados, mejor asignar siempre variables a datos inmutables :-) El 9 de abril de 2014, 15:44, Arturo Llaja Alarcón escribió: > On 08/04/14 16:58, Da?id wrote: > > Por cierto, si usas eso en código y lo analizas con pylint, te avisa de > que eso es un imán para bugs. Suele ser una buena idea pasarlo de vez en > cuando, aunque no siempre haya que hacerle caso... > On Apr 8, 2014 11:41 PM, "Jose Caballero" > wrote: > >> es una de esas cosas casi imposibles de encontrar en google (las key >> words son o demasiado genericas o demasiado especificas). >> >> >> El día 8 de abril de 2014, 12:08, Rock Neurotiko >> escribió: >> > Vale... >> > Juro que busqué en Google, pero no lo encontré XD >> > Gracias! =D >> > >> > >> > El 8 de abril de 2014, 21:06, Jose Caballero >> > escribió: >> > >> >> >> >> >> https://docs.python.org/3/tutorial/controlflow.html#default-argument-values >> >> >> >> >> >> >> >> El día 8 de abril de 2014, 12:02, Rock Neurotiko >> >> escribió: >> >> > Muy buenas, >> >> > >> >> > Hace bastante que no escribo, pero hoy me he encontrado por reddit >> con >> >> > un >> >> > articulo en el que comenta una cosa de python, y no entiendo >> >> > perfectamente >> >> > que es lo que ocurre, asi que os pregunto, a ver si alguien sabe >> porqué >> >> > sucede :-) >> >> > >> >> > El codigo es este: >> >> > >> >> > def foo(x = []): >> >> > x.append(1) >> >> > print(x) >> >> > >> >> > foo() >> >> > foo() >> >> > foo() >> >> > [...] >> >> > >> >> > Recomiendo ejecutar, ya que el resultado es soprendente (a no ser que >> >> > entiendas perfectamente como funciona python, o ya te hayas cruzado >> con >> >> > esto >> >> > XD) >> >> > >> >> > Y ahora mi pregunta: ¿Porqué sucede esto? >> >> > Sé que tiene algo que ver con que Python al ejecutar la funcion la >> >> > recorre >> >> > buscando las variables que vaya a usar, y las guarda en el scope, en >> el >> >> > primer caso x viene del parametro (que seria []). >> >> > Como en python todo es un objeto, la llamada a foo() se queda como >> >> > "instanciado", por lo que las siguientes ejecuciones, al buscar "x" >> la >> >> > encuentra. >> >> > >> >> > No se si me explico, tampoco se si es eso, lo cierto es que estoy >> >> > bastante >> >> > confuso con esto XD >> >> > >> >> > Un saludo! >> >> > >> >> > >> >> > -- >> >> > Miguel García Lafuente - Rock Neurotiko >> >> > >> >> > Do it, the devil is in the details. >> >> > The quieter you are, the more you are able to hear. >> >> > Happy Coding. Code with Passion, Decode with Patience. >> >> > If we make consistent effort, based on proper education, we can >> change >> >> > the >> >> > world. >> >> > >> >> > El contenido de este e-mail es privado, no se permite la revelacion >> del >> >> > contenido de este e-mail a gente ajena a él. >> >> > >> >> > _______________________________________________ >> >> > Python-es mailing list >> >> > Python-es en python.org >> >> > https://mail.python.org/mailman/listinfo/python-es >> >> > FAQ: http://python-es-faq.wikidot.com/ >> >> > >> >> _______________________________________________ >> >> Python-es mailing list >> >> Python-es en python.org >> >> https://mail.python.org/mailman/listinfo/python-es >> >> FAQ: http://python-es-faq.wikidot.com/ >> > >> > >> > >> > >> > -- >> > Miguel García Lafuente - Rock Neurotiko >> > >> > Do it, the devil is in the details. >> > The quieter you are, the more you are able to hear. >> > Happy Coding. Code with Passion, Decode with Patience. >> > If we make consistent effort, based on proper education, we can change >> the >> > world. >> > >> > El contenido de este e-mail es privado, no se permite la revelacion del >> > contenido de este e-mail a gente ajena a él. >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es en python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > _______________________________________________ > Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > He probado la función que describes y el resultado es: > > > def foo(x = []): > x.append(1) > print(x) > > foo() > [1] > > foo() > [1, 1] > > foo() > [1, 1, 1] > > ¿Es lo esperado no? > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From artus.lla en autistici.org Wed Apr 9 17:39:54 2014 From: artus.lla en autistici.org (=?ISO-8859-1?Q?Arturo_Llaja_Alarc=F3n?=) Date: Wed, 09 Apr 2014 10:39:54 -0500 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> Message-ID: <534569CA.3010102@autistici.org> On 09/04/14 09:38, Rock Neurotiko wrote: > x = [] Pero se lo estás pasando en la línea: def foo(x = []): Según lo que leo, la función crea una variable x, y le asigna un valor x.append(1), en ningún momento la destruye ni la reinicia. La variable x se queda en memoria y por lo tanto al llamar de nuevo la función foo() se agrega un valor a la lista, recuerda que las listas son mutables. Para que siempre tengas un mismo valor mejor sería usar una tupla: def foo(x=()): x = (1) print(x) foo() 1 foo() 1 tal como se describe en la resolución de variables locales y globales de Python. Es mi observación, salvo mejor opinión, ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From miguelglafuente en gmail.com Wed Apr 9 17:47:12 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Wed, 9 Apr 2014 17:47:12 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: <534569CA.3010102@autistici.org> References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> Message-ID: Claro, ese es el comportamiento que se espera si conoces cómo funciona Python al asignar los valores. En otros lenguajes, el valor por defecto siempre se evalua (en python solo la primera vez que llamas a ese metodo), por lo que si no le pasas el parametro siempre va a ser el que viene por defecto, por mucho que sea mutable el tipo, ya que evaluan el valor por defecto. Pero, como digo, en Python no es así, y para la gente que no lo sepa (como yo al iniciar el hilo) les puede traer problemas. El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón escribió: > On 09/04/14 09:38, Rock Neurotiko wrote: > > x = [] > > Pero se lo estás pasando en la línea: > def foo(x = []): > > Según lo que leo, la función crea una variable x, y le asigna un valor > x.append(1), en ningún momento la destruye ni la reinicia. > > La variable x se queda en memoria y por lo tanto al llamar de nuevo la > función foo() se agrega un valor a la lista, recuerda que las listas son > mutables. > > Para que siempre tengas un mismo valor mejor sería usar una tupla: > > def foo(x=()): > x = (1) > print(x) > > > foo() > 1 > > foo() > 1 > > tal como se describe en la resolución de variables locales y globales de > Python. > Es mi observación, salvo mejor opinión, > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From artus.lla en autistici.org Wed Apr 9 17:49:51 2014 From: artus.lla en autistici.org (=?ISO-8859-1?Q?Arturo_Llaja_Alarc=F3n?=) Date: Wed, 09 Apr 2014 10:49:51 -0500 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> Message-ID: <53456C1F.2020304@autistici.org> On 09/04/14 10:47, Rock Neurotiko wrote: > Claro, ese es el comportamiento que se espera si conoces cómo funciona > Python al asignar los valores. > > En otros lenguajes, el valor por defecto siempre se evalua (en python > solo la primera vez que llamas a ese metodo), por lo que si no le > pasas el parametro siempre va a ser el que viene por defecto, por > mucho que sea mutable el tipo, ya que evaluan el valor por defecto. > > Pero, como digo, en Python no es así, y para la gente que no lo sepa > (como yo al iniciar el hilo) les puede traer problemas. > > > > El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón > > escribió: > > On 09/04/14 09:38, Rock Neurotiko wrote: >> x = [] > Pero se lo estás pasando en la línea: > def foo(x = []): > > Según lo que leo, la función crea una variable x, y le asigna un > valor x.append(1), en ningún momento la destruye ni la reinicia. > > La variable x se queda en memoria y por lo tanto al llamar de > nuevo la función foo() se agrega un valor a la lista, recuerda que > las listas son mutables. > > Para que siempre tengas un mismo valor mejor sería usar una tupla: > > def foo(x=()): > x = (1) > print(x) > > > foo() > 1 > > foo() > 1 > > tal como se describe en la resolución de variables locales y > globales de Python. > Es mi observación, salvo mejor opinión, > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change > the world. > > El contenido de este e-mail es privado, no se permite la revelacion > del contenido de este e-mail a gente ajena a él. > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ Python usa la evaluación perezosa :) Saludos. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From miguelglafuente en gmail.com Wed Apr 9 17:58:10 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Wed, 9 Apr 2014 17:58:10 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: <53456C1F.2020304@autistici.org> References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> <53456C1F.2020304@autistici.org> Message-ID: No completamente como Haskell, pero si, en algunos casos si :-P Mi problema en el primer email era que no sabia que se comportaba asi para los parámetros, ahora si lo se, y espero que el resto también =D El 9 de abril de 2014, 17:49, Arturo Llaja Alarcón escribió: > On 09/04/14 10:47, Rock Neurotiko wrote: > > Claro, ese es el comportamiento que se espera si conoces cómo funciona > Python al asignar los valores. > > En otros lenguajes, el valor por defecto siempre se evalua (en python solo > la primera vez que llamas a ese metodo), por lo que si no le pasas el > parametro siempre va a ser el que viene por defecto, por mucho que sea > mutable el tipo, ya que evaluan el valor por defecto. > > Pero, como digo, en Python no es así, y para la gente que no lo sepa (como > yo al iniciar el hilo) les puede traer problemas. > > > > El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón < > artus.lla en autistici.org> escribió: > >> On 09/04/14 09:38, Rock Neurotiko wrote: >> >> x = [] >> >> Pero se lo estás pasando en la línea: >> def foo(x = []): >> >> Según lo que leo, la función crea una variable x, y le asigna un valor >> x.append(1), en ningún momento la destruye ni la reinicia. >> >> La variable x se queda en memoria y por lo tanto al llamar de nuevo la >> función foo() se agrega un valor a la lista, recuerda que las listas son >> mutables. >> >> Para que siempre tengas un mismo valor mejor sería usar una tupla: >> >> def foo(x=()): >> x = (1) >> print(x) >> >> >> foo() >> 1 >> >> foo() >> 1 >> >> tal como se describe en la resolución de variables locales y globales de >> Python. >> Es mi observación, salvo mejor opinión, >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change > the world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > > _______________________________________________ > Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > Python usa la evaluación perezosa :) > > Saludos. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From nadaird en gmail.com Wed Apr 9 18:16:20 2014 From: nadaird en gmail.com (Guillermo Vaya) Date: Wed, 9 Apr 2014 18:16:20 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> <53456C1F.2020304@autistici.org> Message-ID: Quizás me confunda, corregirme si es así, pero la evaluación perezosa[1] es simplemente no evaluar las expresiones si no hay necesidad, así que no tengo muy claro que tiene que ver eso con que en Python las funciones sean objetos y sus argumentos sean parte del estado del objeto, por lo que al utilizar un tipo de datos mutable genera esta situación [2]. [1] http://en.wikipedia.org/wiki/Lazy_evaluation [2] http://stackoverflow.com/questions/1132941/least-astonishment-in-python-the-mutable-default-argument 2014-04-09 17:58 GMT+02:00 Rock Neurotiko : > No completamente como Haskell, pero si, en algunos casos si :-P > > Mi problema en el primer email era que no sabia que se comportaba asi para > los parámetros, ahora si lo se, y espero que el resto también =D > > > El 9 de abril de 2014, 17:49, Arturo Llaja Alarcón < > artus.lla en autistici.org> escribió: > > On 09/04/14 10:47, Rock Neurotiko wrote: >> >> Claro, ese es el comportamiento que se espera si conoces cómo funciona >> Python al asignar los valores. >> >> En otros lenguajes, el valor por defecto siempre se evalua (en python >> solo la primera vez que llamas a ese metodo), por lo que si no le pasas el >> parametro siempre va a ser el que viene por defecto, por mucho que sea >> mutable el tipo, ya que evaluan el valor por defecto. >> >> Pero, como digo, en Python no es así, y para la gente que no lo sepa >> (como yo al iniciar el hilo) les puede traer problemas. >> >> >> >> El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón < >> artus.lla en autistici.org> escribió: >> >>> On 09/04/14 09:38, Rock Neurotiko wrote: >>> >>> x = [] >>> >>> Pero se lo estás pasando en la línea: >>> def foo(x = []): >>> >>> Según lo que leo, la función crea una variable x, y le asigna un valor >>> x.append(1), en ningún momento la destruye ni la reinicia. >>> >>> La variable x se queda en memoria y por lo tanto al llamar de nuevo la >>> función foo() se agrega un valor a la lista, recuerda que las listas son >>> mutables. >>> >>> Para que siempre tengas un mismo valor mejor sería usar una tupla: >>> >>> def foo(x=()): >>> x = (1) >>> print(x) >>> >>> >>> foo() >>> 1 >>> >>> foo() >>> 1 >>> >>> tal como se describe en la resolución de variables locales y globales de >>> Python. >>> Es mi observación, salvo mejor opinión, >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Miguel García Lafuente - Rock Neurotiko >> >> Do it, the devil is in the details. >> The quieter you are, the more you are able to hear. >> Happy Coding. Code with Passion, Decode with Patience. >> If we make consistent effort, based on proper education, we can change >> the world. >> >> El contenido de este e-mail es privado, no se permite la revelacion del >> contenido de este e-mail a gente ajena a él. >> >> >> _______________________________________________ >> Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> Python usa la evaluación perezosa :) >> >> Saludos. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From miguelglafuente en gmail.com Wed Apr 9 18:23:03 2014 From: miguelglafuente en gmail.com (Rock Neurotiko) Date: Wed, 9 Apr 2014 18:23:03 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> <53456C1F.2020304@autistici.org> Message-ID: En este ejemplo, lo que ocurre es que como ya ha evaluado el valor por defecto, y sabe en que direccion de memoria está, no vuelve a evaluarlo porque no lo necesita, ya sabe donde está el resultado de esa operación. Esto también ocurre en la evaluacion perezosa (no es todo lo que abarca la evaluacion perezosa, pero si una de las consecuencias) Por ejemplo, si en haskell usas [ x | x<-[1..200], x `mod` 2 == 0 ] (ejemplo tonto), si lo vuelves a intentar usar, haskell sabe que ya lo tiene, por lo que no lo vuelve a ejecutar. El 9 de abril de 2014, 18:16, Guillermo Vaya escribió: > Quizás me confunda, corregirme si es así, pero la evaluación perezosa[1] > es simplemente no evaluar las expresiones si no hay necesidad, así que no > tengo muy claro que tiene que ver eso con que en Python las funciones sean > objetos y sus argumentos sean parte del estado del objeto, por lo que al > utilizar un tipo de datos mutable genera esta situación [2]. > > [1] http://en.wikipedia.org/wiki/Lazy_evaluation > [2] > http://stackoverflow.com/questions/1132941/least-astonishment-in-python-the-mutable-default-argument > > > 2014-04-09 17:58 GMT+02:00 Rock Neurotiko : > > No completamente como Haskell, pero si, en algunos casos si :-P >> >> Mi problema en el primer email era que no sabia que se comportaba asi >> para los parámetros, ahora si lo se, y espero que el resto también =D >> >> >> El 9 de abril de 2014, 17:49, Arturo Llaja Alarcón < >> artus.lla en autistici.org> escribió: >> >> On 09/04/14 10:47, Rock Neurotiko wrote: >>> >>> Claro, ese es el comportamiento que se espera si conoces cómo funciona >>> Python al asignar los valores. >>> >>> En otros lenguajes, el valor por defecto siempre se evalua (en python >>> solo la primera vez que llamas a ese metodo), por lo que si no le pasas el >>> parametro siempre va a ser el que viene por defecto, por mucho que sea >>> mutable el tipo, ya que evaluan el valor por defecto. >>> >>> Pero, como digo, en Python no es así, y para la gente que no lo sepa >>> (como yo al iniciar el hilo) les puede traer problemas. >>> >>> >>> >>> El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón < >>> artus.lla en autistici.org> escribió: >>> >>>> On 09/04/14 09:38, Rock Neurotiko wrote: >>>> >>>> x = [] >>>> >>>> Pero se lo estás pasando en la línea: >>>> def foo(x = []): >>>> >>>> Según lo que leo, la función crea una variable x, y le asigna un valor >>>> x.append(1), en ningún momento la destruye ni la reinicia. >>>> >>>> La variable x se queda en memoria y por lo tanto al llamar de nuevo la >>>> función foo() se agrega un valor a la lista, recuerda que las listas son >>>> mutables. >>>> >>>> Para que siempre tengas un mismo valor mejor sería usar una tupla: >>>> >>>> def foo(x=()): >>>> x = (1) >>>> print(x) >>>> >>>> >>>> foo() >>>> 1 >>>> >>>> foo() >>>> 1 >>>> >>>> tal como se describe en la resolución de variables locales y globales >>>> de Python. >>>> Es mi observación, salvo mejor opinión, >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> Miguel García Lafuente - Rock Neurotiko >>> >>> Do it, the devil is in the details. >>> The quieter you are, the more you are able to hear. >>> Happy Coding. Code with Passion, Decode with Patience. >>> If we make consistent effort, based on proper education, we can change >>> the world. >>> >>> El contenido de este e-mail es privado, no se permite la revelacion >>> del contenido de este e-mail a gente ajena a él. >>> >>> >>> _______________________________________________ >>> Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> Python usa la evaluación perezosa :) >>> >>> Saludos. >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> >> -- >> Miguel García Lafuente - Rock Neurotiko >> >> Do it, the devil is in the details. >> The quieter you are, the more you are able to hear. >> Happy Coding. Code with Passion, Decode with Patience. >> If we make consistent effort, based on proper education, we can change >> the world. >> >> El contenido de este e-mail es privado, no se permite la revelacion del >> contenido de este e-mail a gente ajena a él. >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Miguel García Lafuente - Rock Neurotiko Do it, the devil is in the details. The quieter you are, the more you are able to hear. Happy Coding. Code with Passion, Decode with Patience. If we make consistent effort, based on proper education, we can change the world. El contenido de este e-mail es privado, no se permite la revelacion del contenido de este e-mail a gente ajena a él. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kausdiv en gmail.com Wed Apr 9 18:32:15 2014 From: kausdiv en gmail.com (kausdiv) Date: Wed, 09 Apr 2014 18:32:15 +0200 Subject: [Python-es] =?iso-8859-1?q?Archivo_de_recursos_u_otra_soluci=F3n_?= =?iso-8859-1?q?wx?= Message-ID: <5345760F.8020906@gmail.com> Hola. Estoy haciendo pequeñas aplicaciones con wxPython usando wxFormBuilder para diseñar la interfaz gráfica. La cuestión que los png para botones y otros, tengo que cargarlos desde archivo. El inconveniente que si quiero distribuir la aplicación debo enviar todos los png. Con los consiguientes problemas que acarrea. He visto que se podría importar un archivo de recursos (.rc) con todos los png. No se ni como hacerlo o si será factible para wxPython. ¿ alguien ha probado con .rc o tiene otra solución ? Gracias. From monobot.soft en gmail.com Wed Apr 9 18:58:42 2014 From: monobot.soft en gmail.com (monoBOT) Date: Wed, 9 Apr 2014 17:58:42 +0100 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> <53456C1F.2020304@autistici.org> Message-ID: Hay un (o varios) artículo(s) muy interesante(s) al respecto de nuestro compañero Chema como http://ch3m4.org/blog/2013/03/22/mutable-o-inmutable-he-ahi-el-dilema/ El 9 de abril de 2014, 17:23, Rock Neurotiko escribió: > En este ejemplo, lo que ocurre es que como ya ha evaluado el valor por > defecto, y sabe en que direccion de memoria está, no vuelve a evaluarlo > porque no lo necesita, ya sabe donde está el resultado de esa operación. > > Esto también ocurre en la evaluacion perezosa (no es todo lo que abarca la > evaluacion perezosa, pero si una de las consecuencias) > > Por ejemplo, si en haskell usas [ x | x<-[1..200], x `mod` 2 == 0 ] > (ejemplo tonto), si lo vuelves a intentar usar, haskell sabe que ya lo > tiene, por lo que no lo vuelve a ejecutar. > > > El 9 de abril de 2014, 18:16, Guillermo Vaya escribió: > > Quizás me confunda, corregirme si es así, pero la evaluación perezosa[1] >> es simplemente no evaluar las expresiones si no hay necesidad, así que no >> tengo muy claro que tiene que ver eso con que en Python las funciones sean >> objetos y sus argumentos sean parte del estado del objeto, por lo que al >> utilizar un tipo de datos mutable genera esta situación [2]. >> >> [1] http://en.wikipedia.org/wiki/Lazy_evaluation >> [2] >> http://stackoverflow.com/questions/1132941/least-astonishment-in-python-the-mutable-default-argument >> >> >> 2014-04-09 17:58 GMT+02:00 Rock Neurotiko : >> >> No completamente como Haskell, pero si, en algunos casos si :-P >>> >>> Mi problema en el primer email era que no sabia que se comportaba asi >>> para los parámetros, ahora si lo se, y espero que el resto también =D >>> >>> >>> El 9 de abril de 2014, 17:49, Arturo Llaja Alarcón < >>> artus.lla en autistici.org> escribió: >>> >>> On 09/04/14 10:47, Rock Neurotiko wrote: >>>> >>>> Claro, ese es el comportamiento que se espera si conoces cómo >>>> funciona Python al asignar los valores. >>>> >>>> En otros lenguajes, el valor por defecto siempre se evalua (en python >>>> solo la primera vez que llamas a ese metodo), por lo que si no le pasas el >>>> parametro siempre va a ser el que viene por defecto, por mucho que sea >>>> mutable el tipo, ya que evaluan el valor por defecto. >>>> >>>> Pero, como digo, en Python no es así, y para la gente que no lo sepa >>>> (como yo al iniciar el hilo) les puede traer problemas. >>>> >>>> >>>> >>>> El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón < >>>> artus.lla en autistici.org> escribió: >>>> >>>>> On 09/04/14 09:38, Rock Neurotiko wrote: >>>>> >>>>> x = [] >>>>> >>>>> Pero se lo estás pasando en la línea: >>>>> def foo(x = []): >>>>> >>>>> Según lo que leo, la función crea una variable x, y le asigna un valor >>>>> x.append(1), en ningún momento la destruye ni la reinicia. >>>>> >>>>> La variable x se queda en memoria y por lo tanto al llamar de nuevo la >>>>> función foo() se agrega un valor a la lista, recuerda que las listas son >>>>> mutables. >>>>> >>>>> Para que siempre tengas un mismo valor mejor sería usar una tupla: >>>>> >>>>> def foo(x=()): >>>>> x = (1) >>>>> print(x) >>>>> >>>>> >>>>> foo() >>>>> 1 >>>>> >>>>> foo() >>>>> 1 >>>>> >>>>> tal como se describe en la resolución de variables locales y globales >>>>> de Python. >>>>> Es mi observación, salvo mejor opinión, >>>>> >>>>> _______________________________________________ >>>>> Python-es mailing list >>>>> Python-es en python.org >>>>> https://mail.python.org/mailman/listinfo/python-es >>>>> FAQ: http://python-es-faq.wikidot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> Miguel García Lafuente - Rock Neurotiko >>>> >>>> Do it, the devil is in the details. >>>> The quieter you are, the more you are able to hear. >>>> Happy Coding. Code with Passion, Decode with Patience. >>>> If we make consistent effort, based on proper education, we can >>>> change the world. >>>> >>>> El contenido de este e-mail es privado, no se permite la revelacion >>>> del contenido de este e-mail a gente ajena a él. >>>> >>>> >>>> _______________________________________________ >>>> Python-es mailing listPython-es en python.orghttps://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> Python usa la evaluación perezosa :) >>>> >>>> Saludos. >>>> >>>> _______________________________________________ >>>> Python-es mailing list >>>> Python-es en python.org >>>> https://mail.python.org/mailman/listinfo/python-es >>>> FAQ: http://python-es-faq.wikidot.com/ >>>> >>>> >>> >>> >>> -- >>> Miguel García Lafuente - Rock Neurotiko >>> >>> Do it, the devil is in the details. >>> The quieter you are, the more you are able to hear. >>> Happy Coding. Code with Passion, Decode with Patience. >>> If we make consistent effort, based on proper education, we can change >>> the world. >>> >>> El contenido de este e-mail es privado, no se permite la revelacion del >>> contenido de este e-mail a gente ajena a él. >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es en python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- *monoBOT* Visite mi sitio(Visit my site): monobotblog.alvarezalonso.es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From pych3m4 en gmail.com Wed Apr 9 22:44:52 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Wed, 9 Apr 2014 22:44:52 +0200 Subject: [Python-es] Comportamiento de python. In-Reply-To: References: <53454EBF.5030604@autistici.org> <534569CA.3010102@autistici.org> Message-ID: El 9 de abril de 2014, 17:47, Rock Neurotiko escribió: > Claro, ese es el comportamiento que se espera si conoces cómo funciona > Python al asignar los valores. > > En otros lenguajes, el valor por defecto siempre se evalua (en python solo > la primera vez que llamas a ese metodo), por lo que si no le pasas el > parametro siempre va a ser el que viene por defecto, por mucho que sea > mutable el tipo, ya que evaluan el valor por defecto. > Para ser estrictos, los valores por defecto se evalúan al definir la función, no en la primera llamada. Mejor dicho: los argumentos por defecto se evalúan en el "entorno" donde se define la función (véase clausura o ámbito léxico) La recomendación en python proteger estos valores mutables usando None y luego dar un valor por defecto dentro del ámbito privado de la función: def foo(n, v=None): if v is None: v = [] Así sí que se asegura que el valor inicial de la lista vacía no será alterado desde fuera de la función. > Pero, como digo, en Python no es así, y para la gente que no lo sepa (como > yo al iniciar el hilo) les puede traer problemas. > > > > El 9 de abril de 2014, 17:39, Arturo Llaja Alarcón < > artus.lla en autistici.org> escribió: > >> On 09/04/14 09:38, Rock Neurotiko wrote: >> >> x = [] >> >> Pero se lo estás pasando en la línea: >> def foo(x = []): >> >> Según lo que leo, la función crea una variable x, y le asigna un valor >> x.append(1), en ningún momento la destruye ni la reinicia. >> >> La variable x se queda en memoria y por lo tanto al llamar de nuevo la >> función foo() se agrega un valor a la lista, recuerda que las listas son >> mutables. >> >> Para que siempre tengas un mismo valor mejor sería usar una tupla: >> >> def foo(x=()): >> x = (1) >> print(x) >> >> >> foo() >> 1 >> >> foo() >> 1 >> >> tal como se describe en la resolución de variables locales y globales de >> Python. >> Es mi observación, salvo mejor opinión, >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Miguel García Lafuente - Rock Neurotiko > > Do it, the devil is in the details. > The quieter you are, the more you are able to hear. > Happy Coding. Code with Passion, Decode with Patience. > If we make consistent effort, based on proper education, we can change the > world. > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From kausdiv en gmail.com Fri Apr 11 11:43:39 2014 From: kausdiv en gmail.com (kausdiv) Date: Fri, 11 Apr 2014 11:43:39 +0200 Subject: [Python-es] Problema con wxSplitterWindows Message-ID: <5347B94B.2000209@gmail.com> Hola.. En una aplicación tengo un wxSplitterWindows con 2 paneles (en vertical). Por diseño el derecho debe ser mucho más pequeño que el izquierdo tal que así: ---------------------- | i | d | | i | d | ---------------------- Sin embargo siempre que se abre queda con ambos paneles igual de taño: ----------------------- | i | d | | i | d | ----------------------- En el código, fijo el tamaño de cada panel con SetSize, pero no se tiene encuenta. ¿ Alguien sabe como podría hacer que se mantenga el tamaño del diseño ? o al menos una proporción (1/4) Gracias. From nicolaslino1 en gmail.com Fri Apr 11 16:37:08 2014 From: nicolaslino1 en gmail.com (Nicolas lino) Date: Fri, 11 Apr 2014 11:37:08 -0300 Subject: [Python-es] Dump memcached Message-ID: Buenas Gente: No suelo consultar mucho, pero estoy teniendo un problema, espero que alguien ya allá pasado por esto. Tengo que hacer con python un dump de todas las key y sus valores de memcached. No puedo encontrarle la vuelta, estoy probando librerías (ha muchísimas dando vuelta). Alguien tiene idea de como hacerlo? Muchas gracias. Y disculpen si es muy boluda la consulta. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From funollet en fastmail.fm Fri Apr 11 16:50:58 2014 From: funollet en fastmail.fm (Jordi Funollet Pujol) Date: Fri, 11 Apr 2014 16:50:58 +0200 Subject: [Python-es] Dump memcached In-Reply-To: References: Message-ID: <53480152.2040409@fastmail.fm> On 04/11/2014 04:37 PM, Nicolas lino wrote: > Buenas Gente: > > No suelo consultar mucho, pero estoy teniendo un problema, espero que > alguien ya allá pasado por esto. > > Tengo que hacer con python un dump de todas las key y sus valores de > memcached. No puedo encontrarle la vuelta, estoy probando librerías (ha > muchísimas dando vuelta). Memcached no mantiene un listado de todas las keys. Por tanto, tampoco tiene forma de devolverte un dump de todas ellas. Si quieres implementarlo tendrás que mantener tu un listado de todas las keys. Aunque no se recomienda. http://code.google.com/p/memcached/wiki/NewProgrammingFAQ#How_can_you_list_all_keys? -- Jordi Funollet Pujol http://www.linkedin.com/in/jordifunollet From nicolaslino1 en gmail.com Fri Apr 11 17:11:34 2014 From: nicolaslino1 en gmail.com (Nicolas lino) Date: Fri, 11 Apr 2014 12:11:34 -0300 Subject: [Python-es] Dump memcached In-Reply-To: <53480152.2040409@fastmail.fm> References: <53480152.2040409@fastmail.fm> Message-ID: mmm, me parece raro, ya que yo con bash puedo hacer un dump de todas kas keys y sus valores: memccat --servers="xxx.xxx.xxx.xxx" `memcdump --servers="xxx.xxx.xxx.xxx"` Con python puedo hacer el get de todas las key solamente: >>> from memcached_stats import MemcachedStats >>> mem = MemcachedStats('xxx.xxx.xxx.xxx', '11211') >>> mem.keys() El 11 de abril de 2014, 11:50, Jordi Funollet Pujol escribió: > On 04/11/2014 04:37 PM, Nicolas lino wrote: > >> Buenas Gente: >> >> No suelo consultar mucho, pero estoy teniendo un problema, espero que >> alguien ya allá pasado por esto. >> >> Tengo que hacer con python un dump de todas las key y sus valores de >> memcached. No puedo encontrarle la vuelta, estoy probando librerías (ha >> muchísimas dando vuelta). >> > > Memcached no mantiene un listado de todas las keys. Por tanto, tampoco > tiene forma de devolverte un dump de todas ellas. > > Si quieres implementarlo tendrás que mantener tu un listado de todas las > keys. Aunque no se recomienda. > > > http://code.google.com/p/memcached/wiki/NewProgrammingFAQ#How_can_you_ > list_all_keys? > > -- > Jordi Funollet Pujol > http://www.linkedin.com/in/jordifunollet > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From funollet en fastmail.fm Fri Apr 11 18:03:13 2014 From: funollet en fastmail.fm (Jordi Funollet Pujol) Date: Fri, 11 Apr 2014 18:03:13 +0200 Subject: [Python-es] Dump memcached In-Reply-To: References: <53480152.2040409@fastmail.fm> Message-ID: <53481241.2030100@fastmail.fm> On 04/11/2014 05:11 PM, Nicolas lino wrote: > mmm, me parece raro, ya que yo con bash puedo hacer un dump de todas kas > keys y sus valores: > > memccat --servers="xxx.xxx.xxx.xxx" `memcdump --servers="xxx.xxx.xxx.xxx"` No he usado estas herramientas pero un vistazo al 'man' dice: > memdump currently dumps a list of ``keys'' from all servers that it > is told to fetch from. Because memcached does not guarentee to > provide all keys it is not possible to get a complete ``dump''. http://dev.man-online.org/man1/memcdump/ Creo que estas obteniendo unas cuantas keys, pero no todas. -- Jordi Funollet Pujol http://www.linkedin.com/in/jordifunollet From nicolaslino1 en gmail.com Fri Apr 11 18:24:33 2014 From: nicolaslino1 en gmail.com (Nicolas lino) Date: Fri, 11 Apr 2014 13:24:33 -0300 Subject: [Python-es] Dump memcached In-Reply-To: <53481241.2030100@fastmail.fm> References: <53480152.2040409@fastmail.fm> <53481241.2030100@fastmail.fm> Message-ID: Bueno, me acabas de tirar mi mundo abajo, hace al rededor de un mes que estoy sacando mal el total de usuarios logeados en el producto.... Proximo paso, migrar a redis. Muchas gracias por la ayuda. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcaballero.hep en gmail.com Fri Apr 11 21:17:30 2014 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 11 Apr 2014 12:17:30 -0700 Subject: [Python-es] Algoritmo recursivo sobre un "filesystem" Message-ID: Hola, Perdón por lo confuso del "subject", no se me ocurre ahora mismo nada más claro. Necesito recorrer, de forma recursiva, una parte de un "filesystem". Digamos, por ejemplo, todo los que haya debajo de /data/2014/ Al recorrer los directorios y subdirectorios debo ir escribiendo en ciertos "paths" ficheros tipo '.mark' (dicho de otro modo, crear nodos) de tal forma que cada "subtree" entre dos nodos, o entre un nodo y el resto del directorio no haya nunca más de N ficheros. Es decir, necesito dividirlo todo en "sub-filesystems", cada uno con N ficheros o menos. Estoy seguro de que ya hay muchos algoritmos implementados en python para hacerlo. Pero no sé muy bien cómo hacer una búsqueda eficiente en google. No atino con las 'key words' correctas. Si alguien tiene un link a algún código que haga algo parecido, o a documentación, será más que bienvenido. Muchas gracias por adelantado, Jose From marcelobarbero en arnet.com.ar Fri Apr 11 22:52:38 2014 From: marcelobarbero en arnet.com.ar (Marcelo Barbero) Date: Fri, 11 Apr 2014 17:52:38 -0300 Subject: [Python-es] Algoritmo recursivo sobre un "filesystem" In-Reply-To: References: Message-ID: Creo que te servirá el método os.walk. for raiz, carpetas, archivos in os.walk('/data/2014', topdown=True): acá vendría la manipulación de los datos Marcelo -----Mensaje original----- De: Python-es [mailto:python-es-bounces+marcelobarbero=arnet.com.ar en python.org] En nombre de Jose Caballero Enviado el: viernes 11 de abril de 2014 16:18 Para: La lista de python en castellano Asunto: [Python-es] Algoritmo recursivo sobre un "filesystem" Hola, Perdón por lo confuso del "subject", no se me ocurre ahora mismo nada más claro. Necesito recorrer, de forma recursiva, una parte de un "filesystem". Digamos, por ejemplo, todo los que haya debajo de /data/2014/ Al recorrer los directorios y subdirectorios debo ir escribiendo en ciertos "paths" ficheros tipo '.mark' (dicho de otro modo, crear nodos) de tal forma que cada "subtree" entre dos nodos, o entre un nodo y el resto del directorio no haya nunca más de N ficheros. Es decir, necesito dividirlo todo en "sub-filesystems", cada uno con N ficheros o menos. Estoy seguro de que ya hay muchos algoritmos implementados en python para hacerlo. Pero no sé muy bien cómo hacer una búsqueda eficiente en google. No atino con las 'key words' correctas. Si alguien tiene un link a algún código que haga algo parecido, o a documentación, será más que bienvenido. Muchas gracias por adelantado, Jose _______________________________________________ Python-es mailing list Python-es en python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ----- No se encontraron virus en este mensaje. Comprobado por AVG - www.avg.com Versión: 2014.0.4569 / Base de datos de virus: 3882/7332 - Fecha de publicación: 04/11/14 From alexiscm72 en hotmail.com Wed Apr 16 11:01:15 2014 From: alexiscm72 en hotmail.com (Alexis Cabrera Mondeja) Date: Wed, 16 Apr 2014 04:01:15 -0500 Subject: [Python-es] Programar en Python Duda Message-ID: Buenos días estimados amigos, soy nuevo en Python y sólo he programado en Consola y recientemente instalé PyDev para Eclipse para editar los archivos de Django. Mi duda es que quería saber si se puede hacer una aplicación en Python Visual al igual que se hace en java o .net. Existe algún IDE que no sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y gracias de antemano por la ayuda. Saludos Alexis ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From vbellonbcn en gmail.com Wed Apr 16 11:34:30 2014 From: vbellonbcn en gmail.com (Victor Bellon) Date: Wed, 16 Apr 2014 11:34:30 +0200 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: Hay varia librerias para hacer interfaces de escritorio disponibles en python y cada una de ellas tiene sus herramientas. Qt -> QtDesigner Tk -> http://stackoverflow.com/questions/1693939/need-a-gui-builder-for-tkinter-python Entre otras opciones El 16 de abril de 2014, 11:01, Alexis Cabrera Mondeja < alexiscm72 en hotmail.com> escribió: > Buenos días estimados amigos, soy nuevo en Python y sólo he programado en > Consola y recientemente instalé PyDev para Eclipse para editar los archivos > de Django. Mi duda es que quería saber si se puede hacer una aplicación en > Python Visual al igual que se hace en java o .net. Existe algún IDE que no > sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en > eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y > gracias de antemano por la ayuda. > > Saludos > Alexis > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Víctor M. Bellón ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From monobot.soft en gmail.com Wed Apr 16 13:21:52 2014 From: monobot.soft en gmail.com (monoBOT) Date: Wed, 16 Apr 2014 12:21:52 +0100 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: Francamente tu pregunta no se entiende ... quieres un IDE? o lo que quieres es una librería para hacer interface gráfico? El 16 de abril de 2014, 10:34, Victor Bellon escribió: > Hay varia librerias para hacer interfaces de escritorio disponibles en > python y cada una de ellas tiene sus herramientas. > > Qt -> QtDesigner > Tk -> > http://stackoverflow.com/questions/1693939/need-a-gui-builder-for-tkinter-python > > Entre otras opciones > > > El 16 de abril de 2014, 11:01, Alexis Cabrera Mondeja < > alexiscm72 en hotmail.com> escribió: > >> Buenos días estimados amigos, soy nuevo en Python y sólo he programado en >> Consola y recientemente instalé PyDev para Eclipse para editar los archivos >> de Django. Mi duda es que quería saber si se puede hacer una aplicación en >> Python Visual al igual que se hace en java o .net. Existe algún IDE que no >> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en >> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y >> gracias de antemano por la ayuda. >> >> Saludos >> Alexis >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Víctor M. Bellón > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- *monoBOT* Visite mi sitio(Visit my site): monobotblog.alvarezalonso.es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From mlacunza en gmail.com Wed Apr 16 13:28:50 2014 From: mlacunza en gmail.com (Mario Lacunza) Date: Wed, 16 Apr 2014 06:28:50 -0500 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: Hola Primero decide cual Liberia de controles usar, yo trabajo con wxpython según eso escoges el IDE. Con este yo uso lo mismo: eclipse +pydev para el código y para diseño visual de las ventanas y controles wxformbuilder y usa siempre la ultima beta Enviado desde mi Samsung Galaxy S4 El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" escribió: > Buenos días estimados amigos, soy nuevo en Python y sólo he programado en > Consola y recientemente instalé PyDev para Eclipse para editar los archivos > de Django. Mi duda es que quería saber si se puede hacer una aplicación en > Python Visual al igual que se hace en java o .net. Existe algún IDE que no > sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en > eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y > gracias de antemano por la ayuda. > > Saludos > Alexis > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jza en oooes.org Wed Apr 16 13:35:02 2014 From: jza en oooes.org (Alexandro Colorado) Date: Wed, 16 Apr 2014 06:35:02 -0500 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: Lo que quiere es un UI Designer, este depende del toolkit, en Django realmente no hay un GUI mas que el frontend de tu sitio, este realmente depende de lo que el frontend designer haga. Ahora existe otro concepto que es la programacion visual, donde puedes obtener cubos como objetos en una visualizacion muy similar a UML. Puedes usar DIA en Gnome pero tambien existe PyUML para Eclipse y PyIdea: http://sourceforge.net/projects/pyidea/ On 4/16/14, Mario Lacunza wrote: > Hola > Primero decide cual Liberia de controles usar, yo trabajo con wxpython > según eso escoges el IDE. > > Con este yo uso lo mismo: eclipse +pydev para el código y para diseño > visual de las ventanas y controles wxformbuilder y usa siempre la ultima > beta > > Enviado desde mi Samsung Galaxy S4 > El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" > escribió: > >> Buenos días estimados amigos, soy nuevo en Python y sólo he programado en >> Consola y recientemente instalé PyDev para Eclipse para editar los >> archivos >> de Django. Mi duda es que quería saber si se puede hacer una aplicación >> en >> Python Visual al igual que se hace en java o .net. Existe algún IDE que >> no >> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en >> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y >> gracias de antemano por la ayuda. >> >> Saludos >> Alexis >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > -- Alexandro Colorado Apache OpenOffice Contributor http://www.openoffice.org From hmalpica en aepenergy.com Wed Apr 16 14:02:00 2014 From: hmalpica en aepenergy.com (Hector Miuler Malpica Gallegos) Date: Wed, 16 Apr 2014 07:02:00 -0500 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: Como te han dicho antes, primero tienes que elegir la librería grafica. Entre las opciones que tienes es GTK (que es la que yo recomiendo ;-) y las otras :P (qt, wx, etc) Por otro lado quiero entender que es lo que quieres con el ide? quieres tener la facilidad de dibujar la UI en forma grafica? buen en ese caso en gtk puedes usar glade (https://glade.gnome.org/) ojo es solo para crear la gui en forma grafica, al final solo te genera una especie de xml, algo como lo que hace android, desde tu codigo python conectas los callbacks, eventos, con el código python. Por ultimo te recomiendo http://www.jetbrains.com/pycharm/ un excelente IDE, mejor que el PyDEV 2014-04-16 6:35 GMT-05:00 Alexandro Colorado : > Lo que quiere es un UI Designer, este depende del toolkit, en Django > realmente no hay un GUI mas que el frontend de tu sitio, este > realmente depende de lo que el frontend designer haga. Ahora existe > otro concepto que es la programacion visual, donde puedes obtener > cubos como objetos en una visualizacion muy similar a UML. > > Puedes usar DIA en Gnome pero tambien existe PyUML para Eclipse y > PyIdea: http://sourceforge.net/projects/pyidea/ > > On 4/16/14, Mario Lacunza wrote: > > Hola > > Primero decide cual Liberia de controles usar, yo trabajo con wxpython > > según eso escoges el IDE. > > > > Con este yo uso lo mismo: eclipse +pydev para el código y para diseño > > visual de las ventanas y controles wxformbuilder y usa siempre la ultima > > beta > > > > Enviado desde mi Samsung Galaxy S4 > > El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" < > alexiscm72 en hotmail.com> > > escribió: > > > >> Buenos días estimados amigos, soy nuevo en Python y sólo he programado > en > >> Consola y recientemente instalé PyDev para Eclipse para editar los > >> archivos > >> de Django. Mi duda es que quería saber si se puede hacer una aplicación > >> en > >> Python Visual al igual que se hace en java o .net. Existe algún IDE que > >> no > >> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en > >> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y > >> gracias de antemano por la ayuda. > >> > >> Saludos > >> Alexis > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > > > > > -- > Alexandro Colorado > Apache OpenOffice Contributor > http://www.openoffice.org > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From alexiscm72 en hotmail.com Wed Apr 16 14:37:02 2014 From: alexiscm72 en hotmail.com (Alexis Cabrera Mondeja) Date: Wed, 16 Apr 2014 07:37:02 -0500 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: , , , Message-ID: Gracias a todos, como dije soy nuevo pero veo que la filosofía es muy similar a java, se instala un plugin o librería que permite trabajar la interfaz gráfica (Con eclipse), por otro lado revisaré el que me sugiere malpica. Mi idea es hacer una aplicación ejecutable con interfaz visual, (no una app web, que lo puedo hacer con django) . Saludos Alexis From: hmalpica en aepenergy.com Date: Wed, 16 Apr 2014 07:02:00 -0500 To: python-es en python.org Subject: Re: [Python-es] Programar en Python Duda Como te han dicho antes, primero tienes que elegir la librería grafica. Entre las opciones que tienes es GTK (que es la que yo recomiendo ;-) y las otras :P (qt, wx, etc) Por otro lado quiero entender que es lo que quieres con el ide? quieres tener la facilidad de dibujar la UI en forma grafica? buen en ese caso en gtk puedes usar glade (https://glade.gnome.org/) ojo es solo para crear la gui en forma grafica, al final solo te genera una especie de xml, algo como lo que hace android, desde tu codigo python conectas los callbacks, eventos, con el código python. Por ultimo te recomiendo http://www.jetbrains.com/pycharm/ un excelente IDE, mejor que el PyDEV 2014-04-16 6:35 GMT-05:00 Alexandro Colorado : Lo que quiere es un UI Designer, este depende del toolkit, en Django realmente no hay un GUI mas que el frontend de tu sitio, este realmente depende de lo que el frontend designer haga. Ahora existe otro concepto que es la programacion visual, donde puedes obtener cubos como objetos en una visualizacion muy similar a UML. Puedes usar DIA en Gnome pero tambien existe PyUML para Eclipse y PyIdea: http://sourceforge.net/projects/pyidea/ On 4/16/14, Mario Lacunza wrote: > Hola > Primero decide cual Liberia de controles usar, yo trabajo con wxpython > según eso escoges el IDE. > > Con este yo uso lo mismo: eclipse +pydev para el código y para diseño > visual de las ventanas y controles wxformbuilder y usa siempre la ultima > beta > > Enviado desde mi Samsung Galaxy S4 > El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" > escribió: > >> Buenos días estimados amigos, soy nuevo en Python y sólo he programado en >> Consola y recientemente instalé PyDev para Eclipse para editar los >> archivos >> de Django. Mi duda es que quería saber si se puede hacer una aplicación >> en >> Python Visual al igual que se hace en java o .net. Existe algún IDE que >> no >> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en >> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y >> gracias de antemano por la ayuda. >> >> Saludos >> Alexis >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > -- Alexandro Colorado Apache OpenOffice Contributor http://www.openoffice.org _______________________________________________ Python-es mailing list Python-es en python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ _______________________________________________ Python-es mailing list Python-es en python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jza en oooes.org Wed Apr 16 15:11:33 2014 From: jza en oooes.org (Alexandro Colorado) Date: Wed, 16 Apr 2014 08:11:33 -0500 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: De hecho no, Java usualmente tiene embedido la libreria grafica (SWING y/o AWT). Python tiene una llamada Tkinter pero esta no es la mas popular, y usualmente se usa otras mas poderosas como Qt, GTK, WxWidgets, etc. Sin embargo creo que si vienes de .NET y tu concepto de IDE es Visual Studio, entonces deberas entender que VS no es un IDE tradicional, ya que este esta casado con la libreria grafica y es un IDE+Diseniador grafico (ya que ya escogio el toolkit por ti)+ otras cosas relacionados con la documentacion y modulos. El IDE tradicional Integrated Development environment se llama por que integra al editor y al compilador/interprete, y (algunas veces) un debuger. Nada mas, el diseñador gráfico es algo que microsoft (principalmente) hizo, a diferencia de Borland (en esos tiempos). Antes de la era de los IDE, tomando como ejemplo GNU, se tiene Emacs (editor), GCC (Compilador), GDB (debugger), y link (linker), cada uno como una aplicacion independiente. On 4/16/14, Alexis Cabrera Mondeja wrote: > Gracias a todos, como dije soy nuevo pero veo que la filosofía es muy > similar a java, se instala un plugin o librería que permite trabajar la > interfaz gráfica (Con eclipse), por otro lado revisaré el que me sugiere > malpica. Mi idea es hacer una aplicación ejecutable con interfaz visual, (no > una app web, que lo puedo hacer con django) . > > Saludos > Alexis > > From: hmalpica en aepenergy.com > Date: Wed, 16 Apr 2014 07:02:00 -0500 > To: python-es en python.org > Subject: Re: [Python-es] Programar en Python Duda > > Como te han dicho antes, primero tienes que elegir la librería grafica. > Entre las opciones que tienes es GTK (que es la que yo recomiendo ;-) y las > otras :P (qt, wx, etc) > Por otro lado quiero entender que es lo que quieres con el ide? quieres > tener la facilidad de dibujar la UI en forma grafica? buen en ese caso en > gtk puedes usar glade (https://glade.gnome.org/) ojo es solo para crear la > gui en forma grafica, al final solo te genera una especie de xml, algo como > lo que hace android, desde tu codigo python conectas los callbacks, eventos, > con el código python. > > > Por ultimo te recomiendo http://www.jetbrains.com/pycharm/ un excelente IDE, > mejor que el PyDEV > > > > 2014-04-16 6:35 GMT-05:00 Alexandro Colorado : > > > Lo que quiere es un UI Designer, este depende del toolkit, en Django > > realmente no hay un GUI mas que el frontend de tu sitio, este > > realmente depende de lo que el frontend designer haga. Ahora existe > > otro concepto que es la programacion visual, donde puedes obtener > > cubos como objetos en una visualizacion muy similar a UML. > > > > Puedes usar DIA en Gnome pero tambien existe PyUML para Eclipse y > > PyIdea: http://sourceforge.net/projects/pyidea/ > > > > On 4/16/14, Mario Lacunza wrote: > >> Hola > >> Primero decide cual Liberia de controles usar, yo trabajo con wxpython > >> según eso escoges el IDE. > >> > >> Con este yo uso lo mismo: eclipse +pydev para el código y para diseño > >> visual de las ventanas y controles wxformbuilder y usa siempre la ultima > >> beta > >> > >> Enviado desde mi Samsung Galaxy S4 > >> El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" >> > >> escribió: > >> > >>> Buenos días estimados amigos, soy nuevo en Python y sólo he programado >>> en > >>> Consola y recientemente instalé PyDev para Eclipse para editar los > >>> archivos > >>> de Django. Mi duda es que quería saber si se puede hacer una aplicación > >>> en > >>> Python Visual al igual que se hace en java o .net. Existe algún IDE que > >>> no > >>> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en > >>> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y > >>> gracias de antemano por la ayuda. > >>> > >>> Saludos > >>> Alexis > >>> > >>> _______________________________________________ > >>> Python-es mailing list > >>> Python-es en python.org > >>> https://mail.python.org/mailman/listinfo/python-es > >>> FAQ: http://python-es-faq.wikidot.com/ > >>> > >>> > >> > > > > > > -- > > Alexandro Colorado > > Apache OpenOffice Contributor > > http://www.openoffice.org > > _______________________________________________ > > Python-es mailing list > > Python-es en python.org > > https://mail.python.org/mailman/listinfo/python-es > > FAQ: http://python-es-faq.wikidot.com/ > > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ -- Alexandro Colorado Apache OpenOffice Contributor http://www.openoffice.org From pych3m4 en gmail.com Wed Apr 16 15:57:19 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Wed, 16 Apr 2014 15:57:19 +0200 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: El 16 de abril de 2014, 14:37, Alexis Cabrera Mondeja < alexiscm72 en hotmail.com> escribió: > Gracias a todos, como dije soy nuevo pero veo que la filosofía es muy > similar a java, se instala un plugin o librería que permite trabajar la > interfaz gráfica (Con eclipse), por otro lado revisaré el que me sugiere > malpica. Mi idea es hacer una aplicación ejecutable con interfaz visual, > (no una app web, que lo puedo hacer con django) . > > Son tantas y tan diversas las utilidades que puede tener un programador de python que no existe los un IDEs que lo integren todo. Lo mejor es que tú mismo te vayas haciendo con tu propio "toolbox" con las herramientas que mejor te funcionen. Pydev es un entorno integrado con herramientas excelentes orientadas a crear y depurar código. Siendo eclipse, es posible mutitud de herramientas como son las de diseño de GUIs. El problema es que sólo hay diseñadores para swing/awt y swt, lo que hace obligado el usar jython como intérprete de python. Algo parecido pasa con el plugin python para Visual Studio, que te obligaría a usar IronPython como intérprete de python. Fuera de estos entornos, lo mejor es intentar usar un editor que te ayude a codificar y depurar, y añádele tus herramientas. Hay creadores de GUIs para casi todos los frameworks gráficos. Por destacar un buen IDE, te diría que pruebes spyder. Integra bastante herramientas específicas de python como pyflakes, pep8, pylint, ipython, .... además de documentación python, control de versiones git/hg, importador de proyectos pydef, etc. Viene en varias distribuciones de python como anaconda, winpython o python(x,y), por lo que te será fácil usar una de estas distribuciones para tener un entorno completo. Y, como diseñador, todas te vienen con qt-designer, que es uno de los mejores que puedes usar. Para finalizar, recomendarte que le eches un vistazo al trabajo de Mariano Riengart: gui2py https://code.google.com/p/gui2py/ > Saludos > Alexis > > ------------------------------ > From: hmalpica en aepenergy.com > Date: Wed, 16 Apr 2014 07:02:00 -0500 > To: python-es en python.org > Subject: Re: [Python-es] Programar en Python Duda > > > Como te han dicho antes, primero tienes que elegir la librería grafica. > Entre las opciones que tienes es GTK (que es la que yo recomiendo ;-) y > las otras :P (qt, wx, etc) > > Por otro lado quiero entender que es lo que quieres con el ide? quieres > tener la facilidad de dibujar la UI en forma grafica? buen en ese caso en > gtk puedes usar glade (https://glade.gnome.org/) ojo es solo para crear > la gui en forma grafica, al final solo te genera una especie de xml, algo > como lo que hace android, desde tu codigo python conectas los callbacks, > eventos, con el código python. > > Por ultimo te recomiendo http://www.jetbrains.com/pycharm/ un excelente > IDE, mejor que el PyDEV > > > 2014-04-16 6:35 GMT-05:00 Alexandro Colorado : > > Lo que quiere es un UI Designer, este depende del toolkit, en Django > realmente no hay un GUI mas que el frontend de tu sitio, este > realmente depende de lo que el frontend designer haga. Ahora existe > otro concepto que es la programacion visual, donde puedes obtener > cubos como objetos en una visualizacion muy similar a UML. > > Puedes usar DIA en Gnome pero tambien existe PyUML para Eclipse y > PyIdea: http://sourceforge.net/projects/pyidea/ > > On 4/16/14, Mario Lacunza wrote: > > Hola > > Primero decide cual Liberia de controles usar, yo trabajo con wxpython > > según eso escoges el IDE. > > > > Con este yo uso lo mismo: eclipse +pydev para el código y para diseño > > visual de las ventanas y controles wxformbuilder y usa siempre la ultima > > beta > > > > Enviado desde mi Samsung Galaxy S4 > > El abr 16, 2014 4:03 AM, "Alexis Cabrera Mondeja" < > alexiscm72 en hotmail.com> > > escribió: > > > >> Buenos días estimados amigos, soy nuevo en Python y sólo he programado > en > >> Consola y recientemente instalé PyDev para Eclipse para editar los > >> archivos > >> de Django. Mi duda es que quería saber si se puede hacer una aplicación > >> en > >> Python Visual al igual que se hace en java o .net. Existe algún IDE que > >> no > >> sea instalar Pydev en Eclipse?? o sí se puede hacer una app visual en > >> eclipse? Mi idea es hacer un ejecutable con interfaz visual. Saludos y > >> gracias de antemano por la ayuda. > >> > >> Saludos > >> Alexis > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en python.org > >> https://mail.python.org/mailman/listinfo/python-es > >> FAQ: http://python-es-faq.wikidot.com/ > >> > >> > > > > > -- > Alexandro Colorado > Apache OpenOffice Contributor > http://www.openoffice.org > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > _______________________________________________ Python-es mailing list > Python-es en python.org https://mail.python.org/mailman/listinfo/python-esFAQ: > http://python-es-faq.wikidot.com/ > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From sercuto en alumni.uv.es Wed Apr 16 11:25:53 2014 From: sercuto en alumni.uv.es (sercuto) Date: Wed, 16 Apr 2014 11:25:53 +0200 Subject: [Python-es] Programar en Python Duda In-Reply-To: References: Message-ID: <534E4CA1.7010001@alumni.uv.es> El 16/04/14 11:01, Alexis Cabrera Mondeja escribió: > Buenos días estimados amigos, soy nuevo en Python y sólo he programado > en Consola y recientemente instalé PyDev para Eclipse para editar los > archivos de Django. Mi duda es que quería saber si se puede hacer una > aplicación en Python Visual al igual que se hace en java o .net. > Existe algún IDE que no sea instalar Pydev en Eclipse?? o sí se puede > hacer una app visual en eclipse? Mi idea es hacer un ejecutable con > interfaz visual. Saludos y gracias de antemano por la ayuda. > > Saludos > Alexis > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ Hola. Tienes varias opciones, entre ellas la que más me gusta es glade. También puedes mirar wxpython, pygtk... Pero yo tb soy nuevo en python y otros compañeros te podrán informar mejor. Saludos. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From leonardocaballero en gmail.com Mon Apr 21 15:33:45 2014 From: leonardocaballero en gmail.com (Leonardo Caballero) Date: Mon, 21 Apr 2014 09:03:45 -0430 Subject: [Python-es] =?utf-8?q?Pruebe_el_nuevo_Plone_5_=28versi=C3=B3n_alf?= =?utf-8?q?a=29?= Message-ID: Hola Pythonistas En el marco al World Plone Day (http://plone.org/events/wpd/) la consultora Veit Schiele Communications ha creado un sitio demostrativo de la versión alfa de Plone 5 con los siguientes roles disponibles: Rol Revisor nombre de usuario: reviewer contraseña: plone5 Rol Administrador del Sitio nombre de usuario: site-admin contraseña: plone5 Rol Administrador nombre de usuario: admin contraseña: plone5 Aquí https://plone5.veit-schiele.de/ dejo la dirección URL para que lo prueben y puedan ver los cambios que viene en esta excelente herramienta. P.D.: Plone es el mas longevo, poderoso, flexible, seguro y premiado sistema de gestión de contenido de uso empresarial escrito en Python. Mas información viste la pagina Web en http://plone.org/ Espero sus comentarios -- Atentamente T.S.U. Leonardo Caballero Linux Counter ID = https://linuxcounter.net/user/369081.html Key fingerprint = 9FD2 DC71 38E7 A1D1 57F5 1D29 04DE 43BC 8A27 424A /me Corriendo Debian Wheezy y Canaina GNU/Linux 3 /me Cree "El Conocimiento Humano le Pertenece al Mundo" ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From leonardocaballero en gmail.com Mon Apr 21 22:33:36 2014 From: leonardocaballero en gmail.com (Leonardo Caballero) Date: Mon, 21 Apr 2014 16:03:36 -0430 Subject: [Python-es] =?utf-8?q?Pruebe_el_nuevo_Plone_5_=28versi=C3=B3n_alf?= =?utf-8?q?a=29?= In-Reply-To: References: Message-ID: Por cierto si quieren probar la instalación de Plone 5 realiza los siguientes paso >>> http://johannes.raggam.co.at/up-next-plone5/index.html#/8 2014-04-21 9:03 GMT-04:30 Leonardo Caballero : > Hola Pythonistas > > En el marco al World Plone Day (http://plone.org/events/wpd/) la > consultora Veit Schiele Communications ha creado un sitio demostrativo de > la versión alfa de Plone 5 con los siguientes roles disponibles: > > Rol Revisor > nombre de usuario: reviewer > contraseña: plone5 > > Rol Administrador del Sitio > nombre de usuario: site-admin > contraseña: plone5 > > Rol Administrador > nombre de usuario: admin > contraseña: plone5 > > Aquí https://plone5.veit-schiele.de/ dejo la dirección URL para que lo > prueben y puedan ver los cambios que viene en esta excelente herramienta. > > P.D.: Plone es el mas longevo, poderoso, flexible, seguro y premiado > sistema de gestión de contenido de uso empresarial escrito en Python. Mas > información viste la pagina Web en http://plone.org/ > > Espero sus comentarios > > -- > Atentamente > > T.S.U. Leonardo Caballero > Linux Counter ID = https://linuxcounter.net/user/369081.html > Key fingerprint = 9FD2 DC71 38E7 A1D1 57F5 1D29 04DE 43BC 8A27 424A > > /me Corriendo Debian Wheezy y Canaina GNU/Linux 3 > /me Cree "El Conocimiento Humano le Pertenece al Mundo" > -- Atentamente T.S.U. Leonardo Caballero Linux Counter ID = https://linuxcounter.net/user/369081.html Key fingerprint = 9FD2 DC71 38E7 A1D1 57F5 1D29 04DE 43BC 8A27 424A /me Corriendo Debian Wheezy y Canaina GNU/Linux 3 /me Cree "El Conocimiento Humano le Pertenece al Mundo" ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From agrelot en gmail.com Wed Apr 23 00:41:17 2014 From: agrelot en gmail.com (Agrelot) Date: Tue, 22 Apr 2014 19:41:17 -0300 Subject: [Python-es] Fecha de Excel a fecha Python Message-ID: Hola amigos, Al leer un libro de excel desde un programita en python, las fechas aquel (excel) las guarda en un forma de número que representa la fecha. ¿Alguien sabe cómo se puede transformar en una fecha 'normal' para usarla dentro del programa en python. Gracias. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From ricardo.cardenes en gmail.com Wed Apr 23 01:08:13 2014 From: ricardo.cardenes en gmail.com (=?UTF-8?Q?Ricardo_C=C3=A1rdenes?=) Date: Wed, 23 Apr 2014 00:08:13 +0100 Subject: [Python-es] Fecha de Excel a fecha Python In-Reply-To: References: Message-ID: Excel almacena las fechas "serializadas" como un número decimal. La parte entera es el "número de días pasados" desde una cierta fecha. "1.0" equivale al 1 de enero de 1900. La parte decimal correspondería a la fracción del día que ha pasado, así que 1.5 serían las 12 del mediodía del 1 de enero de 1900 (si lo entendí bien) 2014-04-22 23:41 GMT+01:00 Agrelot : > Hola amigos, > Al leer un libro de excel desde un programita en python, las fechas aquel > (excel) las guarda en un forma de número que representa la fecha. ¿Alguien > sabe cómo se puede transformar en una fecha 'normal' para usarla dentro del > programa en python. > Gracias. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > From jcea en jcea.es Thu Apr 24 00:54:30 2014 From: jcea en jcea.es (Jesus Cea) Date: Thu, 24 Apr 2014 00:54:30 +0200 Subject: [Python-es] =?iso-8859-15?q?=BFAlg=FAn_recurso_sobre_trucos_pr=E1?= =?iso-8859-15?q?cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: References: <52C2891F.803@jcea.es> Message-ID: <535844A6.7070900@jcea.es> Repito el mensaje completo porque han pasado casi 5 meses desde el hilo original y habrá gente que no lo haya leído. Esta vez pongo el comentario aquí. No tengo nada que decir a tu mensaje, Lasi. Magnífico también. Efectivamente, encontrar el equilibrio en hasta dónde llegar con los tests es difícil, una tarea de nunca acabar. El cliente quiere probar todo lo imaginable hasta que le pasas el presupuesto :-). En fin, un buen hilo que no acabé de cerrar. Lo que puedo decir es que ha cambiado mi forma de escribir código, al menos cuando pretendo que ese código sea mantenible en el futuro. On 06/01/14 03:01, lasizoillo wrote: > > DISCLAIMER: Hago muchisimo menos testing del que debería. > > El 31 de diciembre de 2013, 10:06, Jesus Cea > escribió: > > Una cosa que he ido descubriendo con los años es que para poder hacer > buenos tests es conveniente que lo que estés probando se preste a > ello. Tienes que programar de forma que lo que haces sea fácilmente > testable. > > >> Creo que la respuesta de andrey va en esa linea y me parece genial ;-) > > > > El enfoque habitual en otros lenguajes, y mi tendencia en el pasado es > utilizar inyección de dependencias. De hecho hubo una época en la que > di la lata un poco para incluir inyección de dependencias en Python, > pero la respuesta masiva fue que eso era antipitónico y que el futuro > eran los mocks y similares. > > >> Un sistema monolítico es difícil de depurar, pero un sistema demasiado >> modularizado es difícil de configurar (en algún lado tiene que estar >> cuales son las dependencias a inyectar o la implementación de los >> plugins a usar o ...). Con un sistema muy modular terminas necesitando >> pruebas de integración para probar la configuración. > >> Aparte de eso, el código que se inyecta en las pruebas también hay que >> programarlo. Con los mocks solo programas una parte específica en plan >> reactivo, que es mucho más simple que definir una interfaz común y hacer >> diferentes implementaciones. > >> En django, por ejemplo, algunos módulos tienen versiones orientadas al >> desarrollo para que puedas testear más fácil o evites tener que >> configurar entornos completos en las máquinas de desarrollo. Por ejemplo >> con el envio de correo https://docs.djangoproject.com/en/dev/topics/email/ > >> Al final esto es todo muy budista y la solución está en el camino del medio. > > > > Pero me encuentro que para probar una rutina de 20 lineas escribo 200 > lineas de tests más complejos que la propia rutina a comprobar, el > desarrollo es lento y no puedo evitar pensar que estoy haciendo algo > mal :-). > > >> Como chascarrillo fácil: reescribiendo el código para que sea más fácil >> de probar vas a tener 200 líneas de código y 20 líneas de test. Así que >> igual no es el mejor de los indicadores para saber si estas haciendo >> algo bien o mal ;-) > >> ¿Cuál es el objetivo del test? > >> Si es encontrar todos los posibles errores que puede tener una parte del >> programa es normal que el test sea muy largo. No bastaría con una >> cobertura de código del 100%, habría que ir más a por una cobertura de >> branches del 100%. Y tener mucha imaginación (¿que pasaría si tu >> programa se ejecuta en un freebsd con las interfaces em0 y ath0 y >> ninguna eth0?) > >> Otro enfoque más optimista es definir un contrato mínimo del código a >> probar y cuando surjan bugs ir añadiendo esos casos y tener los tests >> para evitar problemas de regresión. Un caso extremo es no hacer testing >> porque somos extremadamente optimistas con que todo vaya a ir bien. > >> Otro enfoque es que ayuda a desarrollar más rápido. En vez escribir a lo >> loco y luego ver dónde y por qué falla (nunca funciona a la primera) se >> van haciendo los test para avanzar despacito, pero seguro. Este enfoque >> falla cuando las especificaciones cambian, porque hay que tocar el >> código y el test a la vez. > >> A veces pienso que dar con el enfoque correcto tiene mucha parte de >> suerte o del caso concreto :-( > > > > Así que, ¿alguien conoce recursos online con consejos prácticos y > ejemplos realistas?. Porque hacer un chequeo mínimamente completo de > esta rutina está siendo un infierno. > > >> El enfoque realista para hacer pruebas creo que consiste en prueba y >> error :-) > >> Los consejos de andrey de separar me parecen la clave. Otra aproximación >> es delegar todo lo posible en código que ya este probado, cuanto menos >> se escriba menos posibilidades de cometer errores hay. > > > > Esta rutina genera una clave al azar e intenta registrarla en un > servidor, que devuelve un 401 mientras un administrador no ha admitido > el registro (y en ese caso devuelve un 200). Una vez que tenemos el > 200, nos guardamos ese usuario y clave en disco y no necesitamos > repetir la operación. > > >> Voy a poner comentarios en el código con preguntas y alguna respuesta >> prefijados con "# lasi:" > > > > """ > def consigue_autenticacion() : > # Creamos el fichero si es preciso > open("/tmp/heartbeat", "w").close() > > # lasi: Qué pasa si otro programa usa el mismo fichero puesto a >> fuego. Debería llevar el pid el nombre de este fichero? Se debería usar >> el modulo tempfile? > > #os.utime("/tmp/heartbeat") > > try : > with open("/local/auth", "r") as f : > > # lasi: Qué pasa si no se puede usar ese nombre de >> fichero porque no existe /local o no se tienen permisos? > > token = f.read().strip() > if " " in token : > > # lasi: Asumimos que nadie va a tocar a mano y joder el >> formato? > > return # Ya tenemos usuario y clave > except FileNotFoundError : > with open("/dev/urandom", "rb") as f : > > # lasi: asumimos que pasamos de >> windows. http://docs.python.org/dev/library/os.html#os.urandom > > token = f.read(4096) > if len(token) != 4096 : > raise RuntimeError("Lectura parcial de entropía") > token = md5(token).hexdigest() > with open("/local/auth", "w") as f : > f.write(token+"\n") > > # lasi: para que escribir una información inválida que no >> se va a usar? > # lasi: Es para forzar un fallo si no se puede escribir >> el fichero? Tendria sentido pero necesita comentario para evitar >> tentaciones de borrar esas dos lineas. > > > usuario = "XXXXXX" > clave = "XXXXXXXX" # Confidencial, pero no crítico > auth = requests.auth.HTTPBasicAuth(usuario, clave) > > addr = netifaces.ifaddresses("eth0") > ip_addr = addr[netifaces.AF_INET][0]["addr"] > mac_addr = addr[netifaces.AF_LINK][0]["addr"] > mac_addr = mac_addr[0:2]+mac_addr[3:5]+mac_addr[6:8]+ \ > mac_addr[9:11]+mac_addr[12:14]+mac_addr[15:17] > > > # lasi: Posiblemente más >> seguro http://docs.python.org/dev/library/uuid.html#uuid.getnode > # lasi: Para que las pruebas sean realmente unitarias mejor >> separar en una "unidad" distinta y mejor para elegir la mejor >> implementación (si es que eso existe) ;-) > > > factor = 1*60 > while True : > > """ lasi: Testear posibles bucles infinitos puede alargarse >> mucho :-( Se puede generalizar: > >> class FunctionalException(Exception): > pass > >> def reintentar(func): > # No tan facil de probar > def inner(*args, **kwargs): > retry = True > while retry: > try: > return func(*args, **kwargs) > except FunctionalException: > # Ejecutar código de espera y demás historias > ... > continue > except Exception as e: > raise e > return inner > >> def _consigue_autenticacion(): > # Facil de probar > ... # codigo de arriba > result = autenticar(fulanito, menganito) > if result == OK: > return > if result == NOT_AUTH: > raise FunctionaException("No autenticado") > raise RuntimeError("bla, bla, bla") > > >> consigue_autenticacion = reintentar(_consigue_autenticacion) > > """ > > t = time.time() > respuesta = requests.get("https://XXXXXX.jcea.es/registro?" > "ip_addr=%s&mac_addr=%s&ts=%.0f" \ > %(ip_addr, mac_addr, time.time()), > auth = auth, > verify = "XXXXXXXXX.jcea.es.cert", > timeout = 1*60, > headers = {"clave": token}) > os.utime("/tmp/heartbeat") > if respuesta.status_code == 401 : > t = t + factor > factor = factor * 3 > if factor > 3600 : > factor = 3600 > while time.time() < t : > time.sleep(10) > os.utime("/tmp/heartbeat") > continue # Volvemos a intentarlo > elif respuesta.status_code == 200 : > with open("/local/auth", "w") as f : > f.write(mac_addr+" "+token+"\n") > return > else : > raise RuntimeError("El servidor nos devuelve un status %s" \ > %respuesta.status_code) > """ > > El código de testeo de esta rutina es complicado de cojones, feo, > frágil. Uso Mocks para comprobar que las llamadas se realizan en el > orden y con los parámetros correctos, tiro excepciones, simulo > ficheros, etc. La pruebo a fondo. Pero desarrollar el test ha sido > costosísimo. > > >> Sería interesante que subieras a un gist.github.com >> o a pastebin.com el >> código del test también. Fijo que contiene cosas muy curiosas. > > > > ¿Consejos?. > > >> Peer review siempre que se pueda. Muchos fallos de programación vienen >> de corner cases que no se han tenido en cuenta a la hora de programar y >> que no se vuelven a tener en cuenta a la hora de programar el test. > >> Tener mala baba haciendo pruebas. ¿A quién se le podría ocurrir probar >> si un unicode se va a comportar como un >> número http://en.wikipedia.org/wiki/Numerals_in_Unicode? Creo que solo >> el que ha visto alguna vez un bug de ese tipo. Y así todo el rato: meter >> secuencias de escape, signos usados en formatos, tamaños muy grandes o >> muy pequeños, ... > >> Separar siempre que se pueda para que los tests sean unitarios. Y luego >> un test de integración para probarlos en su conjunto. Es mucho más fácil >> probar por separado y refactorizar una función que se llama _get_mac() >> que unas lineas incrustadas en la función consigue_autorizacion() > >> Hacer implementaciones dummy de cosas que acceden a sistemas externos >> que no puedas tener montadas en el entorno de desarrollo (sobre todo si >> te gusta programar en aburridos viajes de autobús por la meseta >> castellana sin internet). Ya sean usados mediante inyección de >> dependencias, sistema de plugins o lo que sea. > >> Valorar costes/beneficios de los diferentes tests (chema apuntaba varias >> herramientas) y dentro de cada uno. A veces algo como behave[1] te viene >> bien para probar las cosas y de paso tener documentación funcional >> actualizada del proyecto, a veces unittest es más apropiado porque >> realmente haces cosas unitarias y es más directo, ... Bajar al detalle >> esta muy bien, pero nadie prueba el que va a pasar si al sumar dos >> cadenas se produce un MemoryError, en algún lado hay que parar. > >> [1] https://pypi.python.org/pypi/behave/1.2.3 > > >> Un saludo y espero que esto de como para un buen rato de charla y cañas :-) > >> Javi > > > Se admiten recomendaciones de libros. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From jcea en jcea.es Thu Apr 24 00:50:03 2014 From: jcea en jcea.es (Jesus Cea) Date: Thu, 24 Apr 2014 00:50:03 +0200 Subject: [Python-es] =?iso-8859-15?q?=BFAlg=FAn_recurso_sobre_trucos_pr=E1?= =?iso-8859-15?q?cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: References: <52C2891F.803@jcea.es> Message-ID: <5358439B.3000700@jcea.es> Repito el mensaje completo porque han pasado casi 5 meses desde el hilo original y habrá gente que no lo haya leído. Comentarios al final. On 05/01/14 15:08, Andrey Antukh wrote: > > > > El 31 de diciembre de 2013, 10:06, Jesus Cea > escribió: > > Una cosa que he ido descubriendo con los años es que para poder hacer > buenos tests es conveniente que lo que estés probando se preste a > ello. Tienes que programar de forma que lo que haces sea fácilmente > testable. > > El enfoque habitual en otros lenguajes, y mi tendencia en el pasado es > utilizar inyección de dependencias. De hecho hubo una época en la que > di la lata un poco para incluir inyección de dependencias en Python, > pero la respuesta masiva fue que eso era antipitónico y que el futuro > eran los mocks y similares. > > Pero me encuentro que para probar una rutina de 20 lineas escribo 200 > lineas de tests más complejos que la propia rutina a comprobar, el > desarrollo es lento y no puedo evitar pensar que estoy haciendo algo > mal :-). > > Así que, ¿alguien conoce recursos online con consejos prácticos y > ejemplos realistas?. Porque hacer un chequeo mínimamente completo de > esta rutina está siendo un infierno. > > Esta rutina genera una clave al azar e intenta registrarla en un > servidor, que devuelve un 401 mientras un administrador no ha admitido > el registro (y en ese caso devuelve un 200). Una vez que tenemos el > 200, nos guardamos ese usuario y clave en disco y no necesitamos > repetir la operación. > > """ > def consigue_autenticacion() : > # Creamos el fichero si es preciso > open("/tmp/heartbeat", "w").close() > #os.utime("/tmp/heartbeat") > > try : > with open("/local/auth", "r") as f : > token = f.read().strip() > if " " in token : > return # Ya tenemos usuario y clave > except FileNotFoundError : > with open("/dev/urandom", "rb") as f : > token = f.read(4096) > if len(token) != 4096 : > raise RuntimeError("Lectura parcial de entropía") > token = md5(token).hexdigest() > with open("/local/auth", "w") as f : > f.write(token+"\n") > > usuario = "XXXXXX" > clave = "XXXXXXXX" # Confidencial, pero no crítico > auth = requests.auth.HTTPBasicAuth(usuario, clave) > > addr = netifaces.ifaddresses("eth0") > ip_addr = addr[netifaces.AF_INET][0]["addr"] > mac_addr = addr[netifaces.AF_LINK][0]["addr"] > mac_addr = mac_addr[0:2]+mac_addr[3:5]+mac_addr[6:8]+ \ > mac_addr[9:11]+mac_addr[12:14]+mac_addr[15:17] > > factor = 1*60 > while True : > t = time.time() > respuesta = requests.get("https://XXXXXX.jcea.es/registro?" > "ip_addr=%s&mac_addr=%s&ts=%.0f" \ > %(ip_addr, mac_addr, time.time()), > auth = auth, > verify = "XXXXXXXXX.jcea.es.cert", > timeout = 1*60, > headers = {"clave": token}) > os.utime("/tmp/heartbeat") > if respuesta.status_code == 401 : > t = t + factor > factor = factor * 3 > if factor > 3600 : > factor = 3600 > while time.time() < t : > time.sleep(10) > os.utime("/tmp/heartbeat") > continue # Volvemos a intentarlo > elif respuesta.status_code == 200 : > with open("/local/auth", "w") as f : > f.write(mac_addr+" "+token+"\n") > return > else : > raise RuntimeError("El servidor nos devuelve un status %s" \ > %respuesta.status_code) > """ > > El código de testeo de esta rutina es complicado de cojones, feo, > frágil. Uso Mocks para comprobar que las llamadas se realizan en el > orden y con los parámetros correctos, tiro excepciones, simulo > ficheros, etc. La pruebo a fondo. Pero desarrollar el test ha sido > costosísimo. > > ¿Consejos?. > > Se admiten recomendaciones de libros. > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > > > Hola. > > La rutina que presentas, es obviamente muy complicada de testear, pero > por que? veamos: > > * Demasiada logica, la funcion es demasiado grande y hace demasiadas > cosas de bajo nivel > * * La logica de generar token tiene que ser otra funcion, que puda ser > mockeada (con un mock tonto de una lambda que devuelve un token dymmy) > * * http, tiene que ser otro metodo que abstraiga de http, tu funcion no > tiene que saber de http, tiene que saber solo de lo que hace, autenticar. > * * la parte de netinterfaces tambien tiene que ser abstraida. > > > Si te fijas, en esta rutina tienes 0 de abstraccion, usas todas las > bibliotecas tal cual con toda la logica adicional que eso implica, > moquear eso es un infierno, pero si ocultas diferentes partes de la > logica con una responsabilidad unica en distintas funciones, probar la > logica concreta de esa rutina (que es seguir unos pasos concretos > llamando a otras rutinas) seria crear 4 mocks llamables de una sola linea. > > La idea final es desacoplar. > > Espero haberme explicado. > Si ves que entenderás mejor con un ejemplo de como haria esta rutina, > puedo hacerte un ejemplo! > > Un saludo. > Andrey Andrey, tu comentario es magnífico. Gracias. La clave, como dices, está en desacoplar, aunque en muchos casos es bastante difícil, como cuando estás probando hardware y no puedes saltarte pasos. Pero toda esta reflexión me ha resultado muy útil, estoy modificando mi estilo para que sea más "comprobable". Muchas gracias por tu mensaje, me ha resultado útil e inspirador. -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From jcea en jcea.es Thu Apr 24 01:00:13 2014 From: jcea en jcea.es (Jesus Cea) Date: Thu, 24 Apr 2014 01:00:13 +0200 Subject: [Python-es] =?iso-8859-15?q?=BFAlg=FAn_recurso_sobre_trucos_pr=E1?= =?iso-8859-15?q?cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: References: <52C2891F.803@jcea.es> Message-ID: <535845FD.3010702@jcea.es> On 31/12/13 16:44, Chema Cortes wrote: > Para peticiones asíncronas, el patrón que parece funcionar mejor es el > patrón "Actor". Al convesar con el resto de actores a través de > mensajes, es mucho más fácil desacoplar y testear cada parte por > separado (o sea, con "mocks" que emulan otros actores). Lo único > complicado es crear un diseño de actores que sea suficientemente > resiliente (recuperación frente a fallos). Para python hay librerías > Actor como pykka[1], parley[2] o pulsar[3], pero no las he probado > como para darte alguna idea. > > Para realizar las pruebas, mírate pywovs[4] a ver si te ahorra trabajo. > > [1]: http://pykka.readthedocs.org/en/latest/ > [2]: http://osl.cs.uiuc.edu/parley/ > [3]: http://pythonhosted.org/pulsar/ > > [4]: http://heynemann.github.io/pyvows/ > > > No conozco libros que traten de estos temas para python. Mi consejo es > que te mires otros lenguajes como Scala/Akka o Erlang si piensas hacer > un sistema de actores algo más complejo. Cuando vi por ahí el tema de actores, hace ya bastantes años, me sorprendí que fuera una novedad, porque yo es lo que suelo usar hace mucho, cuando me dejan. Mis primeros pinitos con algo parecido fue con la idea de "tablón de anuncios" del lenguaje Linda. Escalabilidad infinita, reparto de carga automática, transparencia ante caídas de todo lo que no sea el propio "tablón de anuncios".... https://en.wikipedia.org/wiki/Linda_%28coordination_language%29 Muerto hace mucho: https://code.google.com/p/pylinda/ Me apunto las librerías de actores que indicas. Las curiosearé. -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From leandrodemarco en gmail.com Thu Apr 24 07:36:51 2014 From: leandrodemarco en gmail.com (Leandro Demarco Vedelago) Date: Thu, 24 Apr 2014 02:36:51 -0300 Subject: [Python-es] Scraping In-Reply-To: References: Message-ID: Ya viste/probaste scrapy? http://scrapy.org/ Tiene un tutorial basico facil de seguir y bastante documentacion. Espero te sirva 2014-03-11 13:03 GMT-03:00 Augusto Theaux : > Buenas a todo la gente de Python-es, > > Estoy empezando con python y queria hacer una practicas. Alguien me podria > ayudar con el tema de scraping. > Estuve viendo algunos ejemplos, pero la mayoria son avanzados y no los > puedo seguir. Necesito saber que librerias usar, si es necesario > instalarlas. Ya pude traer toda la info de una pagina, ahora quiero traer > un dato en particular y no se como hacerlo. Desde ya muy agradecido. > > > Slds > > > > > > > > > > > > > > > > > > > > > > > > > > > > ?? Sender notified this mail has been read (+ info > ) > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcea en jcea.es Thu Apr 24 14:15:28 2014 From: jcea en jcea.es (Jesus Cea) Date: Thu, 24 Apr 2014 14:15:28 +0200 Subject: [Python-es] Ten tu propia pasarela RSS -> Twitter Message-ID: <53590060.1080606@jcea.es> Creo que le puede interesar a alguien, y es código Python 3 :). http://blog.jcea.es/posts/20140424-pasarela_twitter.rst.html -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From azotillo en gmail.com Thu Apr 24 14:20:50 2014 From: azotillo en gmail.com (Diego pascual lopez) Date: Thu, 24 Apr 2014 14:20:50 +0200 Subject: [Python-es] [Py-ES] Ten tu propia pasarela RSS -> Twitter In-Reply-To: <53590060.1080606@jcea.es> References: <53590060.1080606@jcea.es> Message-ID: A mi me interesa :) Muchas gracias!!!! 2014-04-24 14:15 GMT+02:00 Jesus Cea : > Creo que le puede interesar a alguien, y es código Python 3 :). > > http://blog.jcea.es/posts/20140424-pasarela_twitter.rst.html > > -- > Jesús Cea Avión _/_/ _/_/_/ _/_/_/ > jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ > Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ > jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ > "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ > "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ > "El amor es poner tu felicidad en la felicidad de otro" - Leibniz > > > _______________________________________________ > general mailing list > general en lists.es.python.org > https://lists.es.python.org/listinfo/general > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From esauro en gmail.com Thu Apr 24 14:57:40 2014 From: esauro en gmail.com (Esau Rodriguez) Date: Thu, 24 Apr 2014 13:57:40 +0100 Subject: [Python-es] Ten tu propia pasarela RSS -> Twitter In-Reply-To: <53590060.1080606@jcea.es> References: <53590060.1080606@jcea.es> Message-ID: Hola, yo hubiera usado esto [1], pero ahora, tengo que usar tu código ;). Gracias. [1] https://ifttt.com/recipes/99548-tweet-new-articles-with-a-specific-tag-in-feedly 2014-04-24 13:15 GMT+01:00 Jesus Cea : > Creo que le puede interesar a alguien, y es código Python 3 :). > > http://blog.jcea.es/posts/20140424-pasarela_twitter.rst.html > > -- > Jesús Cea Avión _/_/ _/_/_/ _/_/_/ > jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ > Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ > jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ > "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ > "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ > "El amor es poner tu felicidad en la felicidad de otro" - Leibniz > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- Esaú Rodríguez esauro en gmail.com From jza en oooes.org Thu Apr 24 19:12:08 2014 From: jza en oooes.org (Alexandro Colorado) Date: Thu, 24 Apr 2014 12:12:08 -0500 Subject: [Python-es] Ten tu propia pasarela RSS -> Twitter In-Reply-To: References: <53590060.1080606@jcea.es> Message-ID: you ando buscando una de facebook groups a RSS/twitter. On 4/24/14, Esau Rodriguez wrote: > Hola, > yo hubiera usado esto [1], pero ahora, tengo que usar tu código ;). > Gracias. > > [1] > https://ifttt.com/recipes/99548-tweet-new-articles-with-a-specific-tag-in-feedly > > 2014-04-24 13:15 GMT+01:00 Jesus Cea : >> Creo que le puede interesar a alguien, y es código Python 3 :). >> >> http://blog.jcea.es/posts/20140424-pasarela_twitter.rst.html >> >> -- >> Jesús Cea Avión _/_/ _/_/_/ _/_/_/ >> jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ >> Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ >> jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ >> "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ >> "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ >> "El amor es poner tu felicidad en la felicidad de otro" - Leibniz >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > > -- > Esaú Rodríguez > esauro en gmail.com > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > -- Alexandro Colorado Apache OpenOffice Contributor http://www.openoffice.org From pych3m4 en gmail.com Sat Apr 26 14:46:41 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Sat, 26 Apr 2014 14:46:41 +0200 Subject: [Python-es] =?utf-8?q?=C2=BFAlg=C3=BAn_recurso_sobre_trucos_pr?= =?utf-8?q?=C3=A1cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: <535845FD.3010702@jcea.es> References: <52C2891F.803@jcea.es> <535845FD.3010702@jcea.es> Message-ID: El 24 de abril de 2014, 1:00, Jesus Cea escribió: > On 31/12/13 16:44, Chema Cortes wrote: > > Para peticiones asíncronas, el patrón que parece funcionar mejor es el > > patrón "Actor". Al convesar con el resto de actores a través de > > mensajes, es mucho más fácil desacoplar y testear cada parte por > > separado (o sea, con "mocks" que emulan otros actores). Lo único > > complicado es crear un diseño de actores que sea suficientemente > > resiliente (recuperación frente a fallos). Para python hay librerías > > Actor como pykka[1], parley[2] o pulsar[3], pero no las he probado > > como para darte alguna idea. > > > > Para realizar las pruebas, mírate pywovs[4] a ver si te ahorra trabajo. > > > > [1]: http://pykka.readthedocs.org/en/latest/ > > [2]: http://osl.cs.uiuc.edu/parley/ > > [3]: http://pythonhosted.org/pulsar/ > > > > [4]: http://heynemann.github.io/pyvows/ > > > > > > No conozco libros que traten de estos temas para python. Mi consejo es > > que te mires otros lenguajes como Scala/Akka o Erlang si piensas hacer > > un sistema de actores algo más complejo. > > Cuando vi por ahí el tema de actores, hace ya bastantes años, me > sorprendí que fuera una novedad, porque yo es lo que suelo usar hace > mucho, cuando me dejan. Mis primeros pinitos con algo parecido fue con > la idea de "tablón de anuncios" del lenguaje Linda. Escalabilidad > infinita, reparto de carga automática, transparencia ante caídas de todo > lo que no sea el propio "tablón de anuncios".... > > https://en.wikipedia.org/wiki/Linda_%28coordination_language%29 > > Muerto hace mucho: https://code.google.com/p/pylinda/ > > Me apunto las librerías de actores que indicas. Las curiosearé. > Nunca hay que sorprenderse que las buenas ideas vuelvan mejoradas. No sé si usarás un modelo Linda en tu "tablón de anuncios", pero este modelo no es precisamente de *"escabilidad infinita"*. Era su punto flaco, que al crecer el número de procesos el sincronismo del tuple-space ralentizaba bastante y hacía perder disponibilidad. En general, estamos ante un principio de incertidumbre de la programación concurrente: nunca podrás tener un sistema consistente y disponible a la vez ([Teorema CAP][1]). Al igual que pasa en física al cambiar de escala, esta incertidumbre se hace más patente al aumentar el número de particiones (+40000). A pequeña escala se nota menos. La novedad del modelo actor está en poder crear sistemas masivamente concurrentes que sean resilientes (["Manifiesto Reactivo"][2]). Porque fallar, seguro que van a fallar. Actuálmente, es un tema en el que se está investigando mucho y nunca se sabe qué viejas/nuevas ideas surgirán estos años. [1]: http://es.wikipedia.org/wiki/Teorema_CAP [2]: http://www.reactivemanifesto.com > > -- > Jesús Cea Avión _/_/ _/_/_/ _/_/_/ > jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ > Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ > jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ > "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ > "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ > "El amor es poner tu felicidad en la felicidad de otro" - Leibniz > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcea en jcea.es Sun Apr 27 05:12:26 2014 From: jcea en jcea.es (Jesus Cea) Date: Sun, 27 Apr 2014 05:12:26 +0200 Subject: [Python-es] =?iso-8859-15?q?=BFAlg=FAn_recurso_sobre_trucos_pr=E1?= =?iso-8859-15?q?cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: References: <52C2891F.803@jcea.es> <535845FD.3010702@jcea.es> Message-ID: <535C759A.4040900@jcea.es> On 26/04/14 14:46, Chema Cortes wrote: > No sé si usarás un modelo Linda en tu "tablón de anuncios", pero este > modelo no es precisamente de *"escabilidad infinita"*. Era su punto > flaco, que al crecer el número de procesos el sincronismo del > tuple-space ralentizaba bastante y hacía perder disponibilidad. Conozco el teorema CAP. En mi caso uso la idea del tablón de anuncios para enviar trabajos a los "workers". Son trabajos idempotentes. La escalabilidad la obtengo aumentando el número de "workers" y de tablones, y la redundancia igual. Lo peor que puede pasar es que un tablón quede inaccesible y sus trabajos pendientes (o las respuestas) se pierdan. Como el trabajo es idempotente, el cliente simplemente lo vuelve a postear de nuevo en otro sitio. Si fue una falsa alarma, tendremos un resultado duplicado, que es muy esporádico y que no me causa problemas precisamente por el tema de idempotencia. Por ejemplo, el correo electrónico puede postar en el tablón un email y pedir un análisis antivirus o antispam. Esta actividad es claramente idempotente :-). O, en otro proyecto, generación de "tiles" para mapas. Como siempre, todo depende de la aplicación :). Lo que te dice el teorema CAP, relevante a esta discusión, es que la red puede particionarse. En mi contexto las particiones no afectan mi disponibilidad. Pero yo estoy hablando de workers de trabajos idempotentes, no de almacenamiento. La consistencia no me afecta, porque los trabajos no requieren coordinación ni información 100% consistente (el ejemplo del antivirus o de los mapas). La disponibilidad se resuelve con la detección de caídas de tablones y nuevo posteo de la petición. Lo peor que puede pasar es que se reciban duplicados, triviales de eliminar. En resumen, la aplicación está cuidadosamente diseñada, y mi problema me permite gestionar el trabajo así. Mi problema no es el de facebook, es el de OpenStreetMap y sus tiles :). En realidad no uso múltiples tablones, sino un tablón distribuido con ésto por debajo: http://www.spread.org/ . Lo tengo en producción hace lo menos 10 años, posiblemente más. -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From jcea en jcea.es Sun Apr 27 17:14:02 2014 From: jcea en jcea.es (Jesus Cea) Date: Sun, 27 Apr 2014 17:14:02 +0200 Subject: [Python-es] =?iso-8859-15?q?=BFExperiencia_con_OpenBadges=3F?= Message-ID: <535D1EBA.6080100@jcea.es> ¿Alguien tiene experiencia con http://openbadges.org/? Estoy dándole vueltas a una idea y me gustaría poder consultar algunas dudas y experiencias ajenas, para no sufrir la curva de aprendizaje desde cero. De momento la idea es que los socios de la asociación Python España, los ponentes de las reuniones locales de Python, ponentes de PyConES, etc. tengan un "badge" criptográficamente verificable. Se aceptan ideas y sugerencias. -- Jesús Cea Avión _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 538 bytes Desc: OpenPGP digital signature URL: From pych3m4 en gmail.com Sun Apr 27 18:46:57 2014 From: pych3m4 en gmail.com (Chema Cortes) Date: Sun, 27 Apr 2014 18:46:57 +0200 Subject: [Python-es] =?utf-8?q?=C2=BFAlg=C3=BAn_recurso_sobre_trucos_pr?= =?utf-8?q?=C3=A1cticos_y_ejemplos_realistas_de_testing=3F?= In-Reply-To: <535C759A.4040900@jcea.es> References: <52C2891F.803@jcea.es> <535845FD.3010702@jcea.es> <535C759A.4040900@jcea.es> Message-ID: El 27 de abril de 2014, 5:12, Jesus Cea escribió: > On 26/04/14 14:46, Chema Cortes wrote: > > No sé si usarás un modelo Linda en tu "tablón de anuncios", pero este > > modelo no es precisamente de *"escabilidad infinita"*. Era su punto > > flaco, que al crecer el número de procesos el sincronismo del > > tuple-space ralentizaba bastante y hacía perder disponibilidad. > > Conozco el teorema CAP. > > En mi caso uso la idea del tablón de anuncios para enviar trabajos a los > "workers". Son trabajos idempotentes. La escalabilidad la obtengo > aumentando el número de "workers" y de tablones, y la redundancia igual. > > Lo peor que puede pasar es que un tablón quede inaccesible y sus > trabajos pendientes (o las respuestas) se pierdan. Como el trabajo es > idempotente, el cliente simplemente lo vuelve a postear de nuevo en otro > sitio. Si fue una falsa alarma, tendremos un resultado duplicado, que es > muy esporádico y que no me causa problemas precisamente por el tema de > idempotencia. > > Por ejemplo, el correo electrónico puede postar en el tablón un email y > pedir un análisis antivirus o antispam. Esta actividad es claramente > idempotente :-). > > O, en otro proyecto, generación de "tiles" para mapas. > > Como siempre, todo depende de la aplicación :). > > Lo que te dice el teorema CAP, relevante a esta discusión, es que la red > puede particionarse. En mi contexto las particiones no afectan mi > disponibilidad. Pero yo estoy hablando de workers de trabajos > idempotentes, no de almacenamiento. > > La consistencia no me afecta, porque los trabajos no requieren > coordinación ni información 100% consistente (el ejemplo del antivirus o > de los mapas). > > La disponibilidad se resuelve con la detección de caídas de tablones y > nuevo posteo de la petición. Lo peor que puede pasar es que se reciban > duplicados, triviales de eliminar. > > En resumen, la aplicación está cuidadosamente diseñada, y mi problema me > permite gestionar el trabajo así. Mi problema no es el de facebook, es > el de OpenStreetMap y sus tiles :). > > En realidad no uso múltiples tablones, sino un tablón distribuido con > ésto por debajo: http://www.spread.org/ . Lo tengo en producción hace lo > menos 10 años, posiblemente más. > Muy interesante este proyecto. Mis felicitaciones. ¿Tema para Z-podcast? :) El teorema CAP, aunque se asocia al almacenamiento de datos, en realidad está formulado en términos de los mensajes que intercambian los nodos. Aunque tus workers estén desacoplados, los tablones no lo están. Y aunque sea un único tablón distribuido a través de spread, el mantenerlo sincronizado hace que pierda disponibilidad y/o consistencia. Se pierde disponibilidad cuando no llegan los mensajes de confirmación del último cambio; se pierde consistencia cuando los nodos dejan de recibir los mensajes de actualización. Lo que viene a decir el teorema CAP es que siempre perderás uno u otro tipo de mensajes. > > -- > Jesús Cea Avión _/_/ _/_/_/ _/_/_/ > jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ > Twitter: @jcea _/_/ _/_/ _/_/_/_/_/ > jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/ _/_/ _/_/ > "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ > "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ > "El amor es poner tu felicidad en la felicidad de otro" - Leibniz > > > _______________________________________________ > Python-es mailing list > Python-es en python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From juansan010 en yahoo.es Fri Apr 25 22:50:47 2014 From: juansan010 en yahoo.es (JUAN SANCHEZ) Date: Fri, 25 Apr 2014 21:50:47 +0100 (BST) Subject: [Python-es] Hola a todos Message-ID: <1398459047.57441.YahooMailNeo@web28804.mail.ir2.yahoo.com> Hola a todo soy Juan Sánchez estoy trabajando en un sistema de reconocimiento facial para permitir la operación de una maquinaria con la persona indicada para dicha acción. el problema que se me a presentado es que tengo la muestra de 3 personas 5 imágenes de cada persona y 200 imágenes negativas luego de generar los archivos respectivos en pencv-2.4.8 y aplicar el haartraining se me genera el siguiente error.  ----------------------------------------------------------------------------- OpenCV Error: Assertion failed (elements_read == 1) in icvGetHaarTraininDataFromVecCallback, file /home/juan/opencv-2.4.8/apps/haartraining/cvhaartraining.cpp, line 1859 terminate called after throwing an instance of 'cv::Exception'   what():  /home/juan/opencv-2.4.8/apps/haartraining/cvhaartraining.cpp:1859: error: (-215) elements_read == 1 in function icvGetHaarTraininDataFromVecCallback ----------------------------------------------------------------------------- He tratado de buscar solución durante 3 semanas cambiando el numero de muestras positivas y negativas pero no lo he podido solucionado. gracias por las sugerencias de solución. ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From minibota en gmail.com Sun Apr 27 22:08:10 2014 From: minibota en gmail.com (=?UTF-8?Q?Pavel_Stephan_Mu=C3=B1oz?=) Date: Sun, 27 Apr 2014 14:08:10 -0600 Subject: [Python-es] Hola a todos In-Reply-To: <1398459047.57441.YahooMailNeo@web28804.mail.ir2.yahoo.com> References: <1398459047.57441.YahooMailNeo@web28804.mail.ir2.yahoo.com> Message-ID: Hola Juan, Creo que será un poco más fácil que consigas ayuda en alguna lista de correos o foro dedicado a OpenCV que además parece estar hecho en C++ y no en Python. Interesante proyecto, eso si. Saludos, Pavel Stephan El viernes, 25 de abril de 2014, JUAN SANCHEZ escribió: > Hola a todo soy Juan Sánchez estoy trabajando en un sistema de > reconocimiento facial para permitir la operación de una maquinaria con la > persona indicada para dicha acción. > el problema que se me a presentado es que tengo la muestra de 3 personas 5 > imágenes de cada persona y 200 imágenes negativas luego de generar los > archivos respectivos en pencv-2.4.8 y aplicar el haartraining se me genera > el siguiente error. > > ----------------------------------------------------------------------------- > OpenCV Error: Assertion failed (elements_read == 1) in > icvGetHaarTraininDataFromVecCallback, file > /home/juan/opencv-2.4.8/apps/haartraining/cvhaartraining.cpp, line 1859 > terminate called after throwing an instance of 'cv::Exception' > what(): > /home/juan/opencv-2.4.8/apps/haartraining/cvhaartraining.cpp:1859: error: > (-215) elements_read == 1 in function icvGetHaarTraininDataFromVecCallback > > > ----------------------------------------------------------------------------- > He tratado de buscar solución durante 3 semanas cambiando el numero de > muestras positivas y negativas pero no lo he podido solucionado. > gracias por las sugerencias de solución. > -- *Pavel Stephan Muñoz* ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From marco.kuait en gmail.com Tue Apr 29 23:02:18 2014 From: marco.kuait en gmail.com (Marco Herrarte) Date: Tue, 29 Apr 2014 15:02:18 -0600 Subject: [Python-es] =?utf-8?q?Herramienta_de_modelado_gr=C3=A1fico?= Message-ID: Buen dia a todos, Tengo como requerimiento desarrollar una herramienta web visual tipo mindnode (Agregar nodos, relaciones, etc), pero enfocado a estructura organizacional (Objetivos estratégicos, Puestos, Metas etc) He pensado montar algo en django, pero no tengo experiencia en lo visual, alguien conoce alguna herramienta que pueda utilizar? Muchas gracias por su tiempo, ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: