OpenFOAM (para " abierto -source F ield O peration A nd M anipulation") es un C ++ caja de herramientas para el desarrollo de personalizadas solucionadores numéricos , y las utilidades de post-procesamiento / previo para la solución del continuum mecánica problemas, lo más prominente incluyendo fluido computacional dinámica (CFD).
Autor (es) original (es) | Henry Weller y Hrvoje Jasak [1] |
---|---|
Desarrollador (es) | CFD Direct Ltd. [2] / OpenCFD Ltd. [3] / Wikki Ltd., [4] y comunidad |
Versión inicial | 10 de diciembre de 2004 [5] |
Lanzamiento estable | |
Escrito en | C ++ |
Sistema operativo | Unix / Linux / Windows |
Tipo | Dinámica de fluidos computacional , software de simulación , interacción de estructura de fluidos |
Licencia | GPLv3 |
Sitio web | openfoam |
Hay tres variantes principales del software OpenFOAM que se publican como software libre y de código abierto bajo la Licencia Pública General GNU Versión 3. En orden cronológico , estas variantes son las siguientes:
- La variante OpenFOAM de OpenCFD Ltd. (con el nombre registrado desde 2007 [8] ) se lanzó por primera vez como código abierto en 2004 (tenga en cuenta que desde 2012, OpenCFD Ltd es una filial de ESI Group).
- Variante FOAM-Extend de Wikki Ltd. (desde 2009)
- Variante de OpenFOAM Foundation Inc., lanzada por The OpenFOAM Foundation Inc. (desde 2012), y transferida en 2015 a la empresa inglesa The OpenFOAM Foundation Ltd.
Historia
Se ha afirmado que el nombre FOAM apareció por primera vez como una herramienta de posprocesamiento escrita por Charlie Hill, a principios de los años 90, en el grupo del profesor David Gosman en el Imperial College de Londres . [ cita requerida ] Como contraargumento [ verificación necesaria ] , se ha afirmado que Henry Weller creó la biblioteca FOAM para operación y manipulación de campo que se interconectaba con el GUISE (entorno de software de interfaz gráfica de usuario) que fue creado por Charlie Hill para interconectarse con AVS .
Sin embargo, como una herramienta de mecánica continua / dinámica de fluidos computacional, el primer desarrollo de FOAM (que luego se convirtió en OpenFOAM) se supuso prácticamente siempre que fue iniciado por Henry Weller en el mismo instituto utilizando el lenguaje de programación C ++ en lugar del estándar de facto . lenguaje de programación FORTRAN de la época para desarrollar una plataforma de simulación general potente y flexible. Desde esta iniciación hasta la fundación de una empresa llamada Nabla Ltd, (predominantemente) Henry Weller y Hrvoje Jasak llevaron a cabo el desarrollo básico del software durante casi una década. [9] Durante algunos años, FOAM fue vendido como código comercial por Nabla Ltd. [10] Sin embargo, el 10 de diciembre de 2004, FOAM fue lanzado bajo GPL y fue renombrado como OpenFOAM. [11]
En 2004, Nabla Ltd se cerró. Inmediatamente después, Henry Weller, Chris Greenshields y Mattijs Janssens fundaron OpenCFD Ltd para desarrollar y lanzar OpenFOAM. [12] Al mismo tiempo, Hrvoje Jasak fundó la empresa de consultoría Wikki Ltd [13] y mantuvo una bifurcación de OpenFOAM llamada openfoam-extend, más tarde rebautizada como foam-extend .
En abril de 2008, el desarrollo de OpenFOAM pasó a utilizar git para su repositorio de código fuente. [14]
El 8 de agosto de 2011, OpenCFD fue adquirida por Silicon Graphics International (SGI). [15] El 12 de septiembre de 2012, ESI Group anunció la adquisición de OpenCFD Ltd, [16] esta empresa conserva sus activos y, en particular, la marca OpenFOAM.
En 2014, Weller y Greenshields dejaron OpenCFD y formaron CFD Direct Ltd. [17] OpenFOAM Foundation Ltd cuyos directores son Henry Weller, Chris Greenshields y Cristel de Rouvray (el CEO del Grupo ESI) entregaron el mantenimiento de la variante OpenFOAM-Foundation a CFD Direct.
La siguiente figura resume el desarrollo cronológico y común de las tres variantes principales del software OpenFOAM, donde las flechas muestran las direcciones de las transferencias de funcionalidad, a saber:
- La variante OpenFOAM desarrollada y mantenida principalmente por OpenCFD Ltd. (una empresa propiedad de ESI Group desde 2012) con un identificador de fecha de lanzamiento (por ejemplo, v1906) (desde 2004),
- La variante FOAM-Extend Project mantenida principalmente por Wikki Ltd. (desde 2009),
- La variante OpenFOAM-Foundation mantenida principalmente por el identificador basado en secuencia de CFD Direct Ltd. (por ejemplo, 6.0) (desde 2011).
Gobernanza OpenFOAM
En 2018, OpenCFD Ltd. y algunos de sus socios industriales, académicos y comunitarios establecieron un organismo administrativo, es decir, OpenFOAM Governance , para permitir que la comunidad de usuarios de OpenFOAM decida / contribuya al desarrollo futuro y la dirección de su variante del software. [18]
La estructura de Gobernanza de OpenFOAM consistió en un Comité Directivo y varios Comités Técnicos . El Comité Directivo estuvo integrado por representantes de los principales patrocinadores de OpenFOAM en la industria, la academia, autoridades de liberación y organizaciones consultoras. La composición organizativa del comité inicial incluyó a miembros de OpenCFD Ltd., ESI Group , Volkswagen , General Motors , FM Global , TotalSim Ltd., TU Darmstadt y Wikki Ltd. [19]
Además, se establecieron nueve comités técnicos en las siguientes áreas: Documentación, computación de alto rendimiento , mallado , multifase , numérico , optimización , turbulencia , aplicaciones marinas y aplicaciones nucleares con los miembros de las organizaciones de OpenCFD Ltd., CINECA , Universidad de Zagreb , TU Darmstadt , Universidad Técnica Nacional de Atenas , Upstream CFD GmbH, Universidad de Michigan y EPFL . [20]
Estructura
Estructura del software
El diseño de OpenFOAM consta de dos directorios principales:
- OpenFOAM-
ón> : bibliotecas OpenFOAM cuyo diseño de directorio se muestra en la figura lateral - ThirdParty : un conjunto de bibliotecas de terceros
Estructura de simulación
Las simulaciones de OpenFOAM se configuran mediante varios archivos de entrada de texto sin formato ubicados en los siguientes tres directorios: [21]
- sistema/:
- controlDict
- fvSchemes
- fvSolution
- fvOptions (opcional)
- (otros diccionarios (archivos de configuración en OpenFOAM))
- constante
- polyMesh /
- (otros diccionarios)
- 0 / (u otro directorio de tiempo inicial)
- (archivos de campo)
Se pueden generar directorios adicionales, dependiendo de las selecciones del usuario. Estos pueden incluir:
- (directorios de tiempo de resultado): predicciones de campo en función del recuento de iteraciones o el tiempo
- postProcessing /: datos generados normalmente por la conversión de datos de objetos de función, por ejemplo, VTK
Ventajas y desventajas
Ventajas
- Sintaxis amigable para ecuaciones diferenciales parciales
- Código fuente completamente documentado
- Capacidades de rejilla poliédrica no estructurada
- Paralelización automática de aplicaciones escritas con sintaxis de alto nivel OpenFOAM
- Amplia gama de aplicaciones y modelos listos para usar
- Soporte comercial y formación proporcionada por los desarrolladores.
- Sin costos de licencia
Desventajas
- La comunidad de desarrollo sufre de fragmentación, lo que da lugar a numerosos proyectos bifurcados.
- Ausencia de una interfaz gráfica de usuario integrada (se encuentran disponibles opciones independientes de código abierto y propietarias)
- La guía del programador no proporciona suficientes detalles, lo que hace que el progreso sea lento si necesita escribir nuevas aplicaciones o agregar funcionalidad
Ver también
- ParaView, una aplicación multiplataforma de código abierto para visualización científica interactiva
- Dinámica de fluidos computacional
- Método de volumen finito
- Simulación por ordenador
- Diseño asistido por ordenador
- Ingenieria asistida por computadora
Referencias
- ^ Chen, Goong; Xiong, Qingang; Morris, Philip J .; Paterson, Eric G .; Sergeev, Alexey; Wang, Yi-Ching. "OpenFOAM para dinámica de fluidos computacional". Avisos del AMS . 61 (4).
- ^ "CFD Direct - Los arquitectos de OpenFOAM" . CFD directo . Archivado desde el original el 27 de marzo de 2015.
- ^ "La caja de herramientas CFD de código abierto" . OpenFOAM .
- ^ "Wikki Ltd" .
- ^ "OpenFOAM lanzado el 10 de diciembre de 2004" . OpenCFD Ltd. Archivado desde el original el 8 de febrero de 2005 . Consultado el 20 de agosto de 2019 .
- ^ "Historia de OpenFOAM®" . 3 de abril de 2016.
- ^ "Historial de versiones - OpenFOAM" . Consultado el 3 de agosto de 2020 .
- ^ "Base de datos de marcas globales" . Organización Mundial de la Propiedad Intelectual . Consultado el 10 de julio de 2019 .
- ^ Chen, Goong; Xiong, Qingang; Morris, Philip J .; Paterson, Eric G .; Sergeev, Alexey; Wang, Yi-Ching (2014). "OpenFOAM para dinámica de fluidos computacional" . Avisos de la Sociedad Matemática Estadounidense . 61 (4): 354–363. doi : 10.1090 / noti1095 .
- ^ "OpenFOAM" . CFD-Online . Consultado el 28 de junio de 2019 .
- ^ "OpenFOAM lanzado el 10 de diciembre de 2004" . OpenCFD Ltd. Archivado desde el original el 8 de febrero de 2005 . Consultado el 20 de agosto de 2019 .
- ^ Greenshields, Chris (3 de abril de 2016). "Historial de versiones" . openfoam.org . Archivado desde el original el 29 de julio de 2017.
- ^ "Wikki Ltd - Acerca de nosotros" .
- ^ "Repositorio histórico de OpenFOAM" . 15 de enero de 2019.
- ^ "Comunicados de prensa: SGI adquiere OpenCFD Ltd., líder en software de dinámica de fluidos computacional (CFD) de código abierto" . SGI. Archivado desde el original el 6 de diciembre de 2012 . Consultado el 18 de diciembre de 2012 .
- ^ "Adquisición de OpenCFD Ltd., líder en software de código abierto en dinámica de fluidos computacional" . Grupo ESI. 11 de septiembre de 2012. Archivado desde el original el 6 de diciembre de 2012 . Consultado el 18 de diciembre de 2012 .
- ^ "OpenFOAM" . CFD directo. 25 de marzo de 2015. Archivado desde el original el 29 de marzo de 2015.
- ^ "Gobernanza OpenFOAM" . OpenCFD Ltd . Consultado el 10 de agosto de 2019 .
- ^ "Comité Directivo de OpenFOAM" . OpenCFD Ltd . Consultado el 10 de agosto de 2019 .
- ^ "Comités Técnicos de OpenFOAM" . OpenCFD Ltd . Consultado el 10 de agosto de 2019 .
- ^ https://www.openfoam.com/documentation/guides/latest/doc/openfoam-guide-case-structure.html
enlaces externos
- Sitio web de la Fundación OpenFOAM
- DLR: Future Aircraft Engineering - La simulación numérica