jueves, 17 de marzo de 2016

Análisis numérico estructural (FEM) de Código Abierto - CALCULIX

A lo largo de varias entradas veremos resumidamente los principales programas para cálculo numérico estructural por el método de elementos finitos (FEM) de código abierto.
El objetivo es ver las posibilidades, ventajas y desventajas de cada opción disponible en el mundo de software libre.
En esta entrada veremos una de las alternativas mas importantes llamada Calculix.


¿Que es Calculix?

 

Calculix es una aplicación de análisis de elementos finitos libre y de código abierto. Puede resolver simulaciones numéricas tanto de tipo de solución implícita y explícita. Calcullix se divide en 2 partes, un solver llamado CCX (escrito por Guido Dhondt), y un pre y post procesador llamado CGX (escrito por Klaus Wittig). 
Utiliza un formato de entrada similar a Abaqus, utilizando la misma extensión de archivo ".inp".

Calculo de un rotor de una turbina MIT con Calculix

 

 

Canales de información oficial

 

A continuación los canales oficiales de información:
Calculix esta disponible para Linux, Windows y Mac, y su ultima versión estable hasta el día de la fecha es la 2.10.

Enlace de Descarga


Cálculos posibles - solver (CCX)

 

Son variados los tipos de cálculos que podremos realizar con esta herramienta, que pueden ser lineales y no lineales, explícitos o implícitos. Entre los problemas típicos que podemos resolver con este software se encuentran son los siguientes
    • Análisis estático.
    • Análisis de frecuencia.
    • Análisis de pandeo.
    • Análisis dinámico modal.
    • Análisis dinámicos cuasi-estacionaria.
    • Análisis dinámico de integración directa.
    • Transferencia de calor estacionario y transitorio.
    • Acoplado Térmico Estructural. 
    • Acústica
    • Lubricación
    • Flujo incompresible
    • Otros.  
    Todos los tipos de análisis disponibles hasta la versión 2.10 los podemos encontrar en el siguiente enlace.


      Interfaz de pre y post procesamiento (CGX)

       

      Este programa está diseñado para generar y mostrar los elementos finitos (y los grupos asociados a las condiciones de borde) y post-procesar los resultados procedentes del solver de Calculix (CCX).
       

      En definitiva CGX tiene capacidades de pre y post-procesador mas fundamentales para realizar nuestro análisis; es principalmente controlado por el teclado con comandos individuales para cada función pero un subconjunto de comandos, que son los más usuales para el post-procesamiento, también están disponibles a través de un menú emergente.


      También con la herramienta CGX podemos escribir y leer los resultados de otros programas como OpenFOAM, Nastram, ANSYS, Abaqus entre otros.
      Mas información sobre CGX la podemos encontrar en la documentación oficial.

      Compatibilidad e integración con otros programas de código abierto


      Salome-platform

      Como vimos en la entrada pasada (enlace) Salome es una plataforma de pre y post-procesamiento para cálculos numéricos. Podemos crear la geometría, crear el mallado y grupos para definir nuestras condiciones de borde mediante esta herramienta. Luego para importar la malla dentro de Calculix debemos utilizar unos scrips de python para poder convertir la malla en un formato leíble por CGX y CCX.
      Para mas información sobre esta posibilidad podemos ver el video de Calculix09 el cual nos brinda información sobre los pasos a realizar para importar la malla generada en Salome en Calculix.

      Enlace al video: https://www.youtube.com/watch?v=5n8ZCIM65ao

      ParaView

      ParaView es la herramienta de post-procesado mas potente en el software de código abierto. Para poder usar este programa para post-procesar los resultados de Calculix debemos compilar la versión con soporte ExodusII (exo) y así poder guardar los resultados en un formato con el cual podamos usar ParaView.


      La versión de Calculix con soporte ExodusII, llamada Calculix-Extras, la podemos encontrar en el siguiente enlace. (En tutoriales a futuro vamos a ver como instalar y usar esta versión).

      FreeCAD

      FreeCAD es un programa CAD/CAE de código abierto del cual hablamos en una entrada pasada. El mismo en las ultimas versiones (0.16) cuenta con un modulo FEM el cual incorpora a Calculix CCX como solver FEM.

      El mismo ya cuenta con varias características para hacer análisis estructurales de piezas, como estáticos lineales y cálculos de modos de vibrar. Otras opciones como poder utilizar múltiples materiales, contacto entre piezas, etc, están en pleno desarrollo.
      Para crear el mallado utiliza el mallador Netgen (en el caso de poder compilarlo junto a FreeCAD), pero también podemos utilizar Gmsh como mallador a través del siguiente macro.
       
      Netgen


      Netgen es uno de los malladores para cálculos estructurales mas avanzados de código abierto. Podemos utilizar este programa para reparar nuestra geometría, mallarla y crear los grupos de nodos que serán luego utilizados en el análisis. Con CGX podemos importar directamente el formato estándar de Negten (.vol) y usarlo en el solver de Calculix (CCX).


      Integración en herramientas comerciales


      CastNet

      CASTNET es la respuesta de DHGATE tools a un uso conveniente y profesional de la tecnología de solvers de código abierto en un entorno industrial y con una interfaz gráfica intuitiva. Ofrece un entorno de modelado con soporte para el solver CFD de código abierto CFD OpenFOAM® y para Calculix como solución FEM.
       
      Pagina: http://www.dhcae-tools.com/CastNet.html


      Simscale

      SimScale es una plataforma de simulación de ingeniería en 3D basado en la nube que permite a cualquier persona, en el equipo de desarrollo de productos o de calculo, simular el comportamiento físico de sus productos dentro de un navegador web estándar, teniendo acceso a varios solver de código abierto, entre ellos Calculix.




      Mecway

      Mecway es un programa comercial para análisis de elementos finitos disponible solo para Windows. Se enfoca en simulaciones mecánicas y térmicas, tales como el análisis de tensión, de vibración y de flujo de calor. Es económico y tiene una interfaz gráfica simple e intuitiva para la creación de mallas y análisis de resultados. Mecway puede utilizar como solver a Calculix, y funcionar como pre y post procesador para este.

      Pagina: http://mecway.com/ 

       

       

      Tutoriales en la web


      En la web podremos encontrar varios tutoriales de Calculix.
      Recomiendo ver los tutoriales del blog LibreMechanics y del canal de youtube de Calculix09.


      Usuarios


      Desde la pagina de Calculix podemos encontrar una pequeña lista de usuarios profesionales que usan Calculix en sus trabajos habituales para la industria. Dentro de los mas importantes se encuentra MTU Aero Engines, empresa e dedicada al desarrollo, fabricación, mantenimiento, reparación y comercialización de motores de aviones civiles y militares, y de turbinas de gas industriales

      Resumen y opinión personal


      Calculix es uno de los programas para cálculos estructurales mas importante en el mundo del software libre, tiene una gran variedad de solvers. Su lenguaje de programación es muy sencillo y cuenta con una adecuada documentación (aunque podría ser mas completa). La similaridad de su lenguaje con Abaqus (una de las herramientas comerciales mas populares en mundo FEM) logra una mejor transición entre estos programas.
      Como negativo podemos mencionar que su pagina oficial es realmente mala, no cuenta con una documentación clara sobre sus procesos de verificación y control de calidad, y por ultimo desearía que contase con soporte oficial para post-procesar los resultados en paraview.
      Aunque cuenta con una lista de correo donde se atienden consultas, no cuenta con un foro oficial. En mi opinión (que no es la de los desarrolladores) un foro es mas mucho mas ordenado y ágil que una lista de correo, es mas practico para encontrar soluciones a tus problemas que otras personas ya hayan padecido (o respuestas a consultas). Quizás una solución que convine ambos métodos seria lo ideal.




      Espero que les haya interesado esta entrada y no duden en comentar cualquier duda al respecto. En la próxima entrada veremos otra de las opciones de código abierto mas importantes para analisis estructurales por el método de elementos finitos llamado Code_Aster.
      19/03/2016 - Actualice "Resumen y opinión personal" con mi opinión sobre la lista de correo de Calculix. 
      19/04/2016 - Gracias al aporte de Sergio Pluchinsky, agrego la opción comercial Mecway como herramienta que podemos utilizar con Calculix.