Condensaciones 0.6

Para empezar el año con novedades, aquí va una nueva versión de Condensaciones, la aplicación de cálculo de parámetros higrotérmicos de cerramientos y que permite comprobar la existencia de condensaciones superficiales o intersticiales.

Esta nueva versión 0.6 incluye como novedades principales:

  • Mejora del rendimiento general para trabajar con mayor fluidez.
  • Inclusión de una barra de condensaciones totales en la zona de información, con cantidades e indicación gráfica de la cantidad condensada en cada periodo.
  • El encabezado indica ahora la localidad y el periodo activo y se ha mejorado la indicación de condensaciones por el color de fondo (verde = sin condensaciones, anaranjado = condensaciones intersticiales o superficiales, rojo = condensaciones intersticiales y superficiales).
  • La gráfica de presiones y temperaturas muestra los resultados del periodo activo, que se puede cambiar en el diálogo de ambientes.
  • Se elimina la gráfica de presiones de vapor incluyendo su información en la de presiones y temperaturas.
  • El color asignado a un material se conserva al cambiar el orden de capas tanto en la lista de capas como en el gráfico de presiones y temperaturas.
  • El informe incluye un histograma de condensaciones acumuladas en cada periodo.
  • La ayuda en HTML está disponible desde el menú del sistema (win32).

Como el aspecto general ha cambiado ligeramente aquí va un pantallazo de la versió 0.6:

Condensaciones - Diagrama de presiones y temperaturas

La aplicación se puede descargar en la página de desarrollo del proyecto.
La documentación, incluyendo manual del usuario y referencia de programación están disponibles aquí.

¡Espero que la disfrutéis!

Condensaciones – nueva versión 0.5.4

Hace ya unos días subí una nueva versión de la aplicación Condensaciones.

Condensaciones es una aplicación que permite realizar el cálculo de los parámetros higrotérmicos de cerramientos y la comprobación de la existencia de condensaciones superficiales o intersticiales.

Condensaciones - Diagrama de presiones y temperaturas

Las novedades principales de la versión actual (0.5.4) respecto a la versión 0.4 son las siguientes:

  • Nueva base de datos de cerramientos en formato .ini.
  • Nueva base de datos de climas en formato .ini.
  • Base de datos de Materiales más compacta.
  • Nueva opción de entrada de climas exteriores según base de datos o manual.
  • Nombre y descripción de cerramientos editables.
  • Es posible añadir, eliminar y mover cerramientos en la base de datos.
  • Es posible guardar cerramientos de la sesión activa.
  • La aplicación se inicia con el primer cerramiento de la base de datos.
  • La lista de capas incluye el color del material que se usa en las gráficas.
  • Muestra localidad/mes seleccionado en encabezado e informe.
  • Indica condensaciones superficiales para el mes de enero s/CTE en el informe.
  • Indica condensaciones intersticiales para todos los meses en el informe.
  • Muestra índice de meses con condensaciones intersticiales en el informe.
  • Indica en amarillo si no se cumplen condiciones CTE en otros meses aunque se cumplan para las condiciones actuales.
  • Representa con relleno rojo la zona de condensaciones, en la gráfica P-T.
  • Salida de informe en navegador HTML.
  • Documentación inicial en HTML (disponible en la web).

La aplicación se puede descargar en la página de desarrollo del proyecto.
La documentación, incluyendo manual del usuario y referencia de programación están disponibles aquí.

Todavía hay muchas cosas que me gustaría mejorar, pero esto avanza a ratos libres…

¡Espero que la disfrutéis!

Diccionario visual da Construción do COAG

Dictionary by ElektraCuteO Colexio Oficial de Arquitectos de Galicia (COAG) ten un excelente e útil Diccionario visual da Construción que, entre outras cousas, facilita a tradución dos termos máis habituais do mundo da construción e a arquitectura xa que permite facer buscas dende o galego ou o castelán e devolve os resultados relacionados coas equivalencias nos dous idiomas.

Xa que estes días ando a redactar as memorias duns proxectos de execución estou a botar man a miudo desa ferramenta, xa que son moitos os casos de dúbida e a documentación técnica en galego é, lamentablemente, moi escasa, polo que gran parte do traballo consiste en adaptar memorias escritas en castelán a unha versión en galego (máis algunhas adaptacións normativas, claro).

Para facilitar a tarefa, creei un buscador persoalizado que se pode engadir á barra de buscas do navegador Firefox (e posiblemente tamén traballe noutros navegadores), de xeito que, a partires da súa instalación, podes usar a casiña de busca do navegador cun termo en castelán e devolve a páxina cos resultados relacionados, que inclúen a equivalencia en galego.

Engade o buscador ó teu navegador.

A creación dun buscador equivalente que faga a tradución inversa, do galego ó castelán, se fose necesaria, é moi sinxela, bastando editar o arquivo dvccoag.src e cambiando «castelán» por «galego».

Unha instalación alternatva é obter os arquivos das fontes para o buscador Sherlock e a icona do buscador e instalalos no subdirectorio searchplugins do directorio do Firefox.

Unha versión OpenSearch do mesmo buscador. Ainda que non está probado o seu funcionamento, debería instalarse eiquí.

Simple python calc addin example

OpenOffice calc spreadsheet screenshotThe OpenOffice spreadsheet application, calc, can be extended through plugins to support new functions that can be as easily used in cell formulas as the built-in ones.

Being able to do this using my favourite language, Python, is possible, but not very well documented, so I’ve experimented a bit with it and have come up with a simple example that defines a bunch of new functions that take double and range arguments and return a single value or write back to a defined range. This example can be used as template to write your own plugins and is released under a GPL v2 or greater license.

The example has been developed using OpenOffice 2.4 running on Vista. To build it, you need the OO 2.4 SDK and a MSys environment to comfortably use makefiles and get a decent shell.

The extension file has in it all the needed files to rebuild the example. As the .oxt files are just zipped files you can get them renaming the extension file so it gets a .zip extension and unzipping it.

The makefile has some variables that point to the SDK dir and zip utility that you need to tweak and has the all and install targets build and install the extension.

Addins are composed by:

  • an .idl file to define the interfaces
  • a manifest.xml file to define the extension resources
  • an implementation file

I hope this calc addin example is simple enough to get started. Enjoy!

Click here to download calc addin example: PachiAddin.oxt

Postproceso de capas en planos de CypeCAD

Plano de despiece de pilares en estructura de hormigón armadoEl programa de cálculo de estructuras CypeCAD permite exportar los planos de las estructuras que calcula a archivos DXF para su manejo posteriore en programas de CAD.

El programa usa una serie de capas que corresponden a distintos elementos como textos de armados, tipos de armado, etc. Esta separación es muy prolija y tiene la ventaja de que permite diferenciar muy bien a posteriori a qué función estructural pertenece cada elemento de dibujo.

Sin embargo, la profusión de capas hace poco manejable el dibujo final y es necesario reducirlas a un subconjunto más reducido que, normalmente, se corresponderá también a un criterio personal de dibujo.

Este post explica cómo manejo el cambio de capas a partir de los planos generados en el CypeCAD, y otro día comentaré el criterio de capas de suelo utilizar, ya que lo he estado utilizando varios años y la gente que lo ha probado lo ha adoptado como suyo :).

Volviendo a la gestión de capas de CypeCAD, si bien el programa permite definir a qué capas se deben traducir los distintos elementos, la interfaz para hacerlo es bastante engorrosa, ya que exige recorrer una a una las numerosas capas que incluye por defecto y esta configuración no se puede guardar para poder utilizarla en otra máquina o recuperarla al actualizar la aplicación.

Para automatizar la resolución del problema de unificación y estandarización de capas, genero los planos usando las capas por defecto de CypeCAD y luego utilizo un script que he escrito en Python que traduce sus capas a otras personalizadas.

La traducción entre el nombre de capa original y el deseado se define en un archivo en formato de texto plano llamado capas.txt con una sintaxis muy sencilla:

CIM_COTAS|e.cotas
CIM_CUADRO_ARRANQUE|e.1.gordas
CIM_CUAD_VIG_ATA|e.1.gordas
CIM_CUAD_VIG_CEN|e.1.gordas
CIM_CUAD_ZAPATA|e.1.gordas
CIM_DIB_ARMADOS|e.armado.gordo

Las capas sin la correspondiente capa «traducida» tras la barra vertical no cambian su nombre, por lo que las nuevas capas que puedan ir incorporando en nuevas versiones de la aplicación se mantienen intactas.

Para la ejecución del script es necesaria la instalación del intérprete de Python, y el propio script ofrece información sobre los parámetros que acepta:

$python cambia_capas_cype.py

Quienes usen el programa AutoCAD de AutoDesk, pueden completar la estandarización de capas bien insertando el DXF en un dibjo nuevo iniciado con una plantilla en la que estén definidas las propiedades de las capas, o bien usando la función LAYTRANS. En un futuro es posible que amplie el script para definir las propiedades de las capas en el propio DXF procesado.

Descargar aplicación de cambio de capas para DXF de CypeCAD.

Repository formats matter a lot in Mercurial

Keith Packard discusses why robust repository formats are important for any version control software. This is really an important point when evaluating the robustness of any version control system, as you want to avoid the corruption of all your data due to a disk failure and an unfortunate way to store the tracked information.

One sad point, as he’s a person I certainly admire for his work on free software, is that, while praising the way git faces that problem, he unfairly bashes Mercurial (besides other VCSs). The fact is that the comparison done is not correct. While the comparison used to measure store size is between packed git and standard Mercurial, the robustness of the repository format comparison uses the unpacked git and standard Mercurial.

I believe this is more of a handwaving issue than any real concern about how git or Mercurial are doing the job.
Continuar leyendo «Repository formats matter a lot in Mercurial»

Programación orientada a objetos en Python

Logo programación orientada a objetos en python

Introducción a la programación orientada a objetos

Este artículo es una introducción a la programación orientada a objetos (POO, o OOP por sus siglas en inglés), uno de los paradigmas de programación estructurada más importante hoy en día.

El artículo usa el lenguaje Python para los distintos ejemplos, y explica la implementación de la POO en ese lenguaje, aunque aborda conceptos generales que son fácilmente trasladables a otros lenguajes.

Los fragmentos de código se señalan usando un estilo de texto diferente (ancho fijo) y, cuando se utiliza el intérprete de python, se prefija cada línea con los símbolos ‘>>>’.

Esta introducción presupone conocimientos básicos de programación y del lenguaje python.
Continuar leyendo «Programación orientada a objetos en Python»

Pascaline – cálculo de la presión de hundimiento en zapatas

cálculo de la presión hundimiento zapata - CTEPascaline, el proyecto que quiere llevar el software libre al cálculo de estructuras, ha avanzado un pequeño paso más estos días con la incorporación de un programa para el cálculo de la presión de hundimiento en zapatas siguiendo la formulación del CTE DB-SE-C.

El 24 de octubre, Alfredo Rodríguez Viescas, ‘Fredo’, envió la implementación inicial a la lista de correo de Pascaline y anteayer subí una versión corregida al repositorio del proyecto.
Continuar leyendo «Pascaline – cálculo de la presión de hundimiento en zapatas»