CGNS son las siglas de CFD General Notation System . Es un estándar general, portátil y extensible para el almacenamiento y recuperación de datos de análisis CFD . Consiste en una colección de convenciones y software libre y abierto que implementa esas convenciones. Es autodescriptivo, multiplataforma también denominado plataforma o máquina independiente, documentado y administrado por un comité directivo internacional. También es una práctica recomendada del Instituto Americano de Aeronáutica y Astronáutica ( AIAA ). El proyecto CGNS se originó en 1994 como un esfuerzo conjunto entre Boeing y la NASA., y desde entonces ha crecido para incluir muchas otras organizaciones contribuyentes en todo el mundo. En 1999, el control de CGNS se transfirió completamente a un foro público conocido como el Comité Directivo de CGNS . Este Comité está integrado por representantes internacionales del gobierno y la industria privada.
Extensión de nombre de archivo | .cgns |
---|---|
Último lanzamiento | 4.1.0 (4 de marzo de 2020) |
Tipo de formato | formato de datos científicos |
¿ Formato abierto ? | sí |
Sitio web | http://www.cgns.org |
El sistema CGNS consta de dos partes: (1) un formato estándar (conocido como Estructura de datos de interfaz estándar o SIDS) para registrar los datos y (2) software que lee, escribe y modifica datos en ese formato. El formato es una entidad conceptual establecida por la documentación; el software es un producto físico suministrado para permitir a los desarrolladores acceder y producir datos registrados en ese formato.
El sistema CGNS está diseñado para facilitar el intercambio de datos entre sitios y aplicaciones, y para ayudar a estabilizar el archivo de datos aerodinámicos. Los datos se almacenan en un formato binario compacto y son accesibles a través de una biblioteca de funciones completa y extensible. La interfaz de programación de aplicaciones (API) es multiplataforma y se puede implementar fácilmente en aplicaciones C , C ++ , Fortran y Fortran 90 . También existe una interfaz MEX mexCGNS para llamar a la API CGNS en lenguajes de programación de alto nivel MATLAB y GNU Octave . Existe la interfaz orientada a objetos CGNS ++ y el módulo Python pyCGNS .
El objetivo principal de CGNS son los datos normalmente asociados con el flujo viscoso compresible (es decir, las ecuaciones de Navier-Stokes ), pero el estándar también es aplicable a subclases como Euler y flujos potenciales. El estándar CGNS incluye los siguientes tipos de datos.
- Cuadrículas estructuradas, no estructuradas e híbridas
- Datos de la solución de flujo, que pueden ser nodales, centrados en celdas, centrados en caras o centrados en bordes
- Conectividad de interfaz multizona, tanto contigua como sobrepuesta
- Condiciones de borde
- Descripciones de ecuaciones de flujo, incluida la ecuación de estado, modelos de viscosidad y conductividad térmica , modelos de turbulencia, modelos químicos de múltiples especies y electromagnetismo.
- Flujo dependiente del tiempo, incluidas las rejillas en movimiento y de deformación
- Unidades dimensionales e información de no dimensionalización
- Estados de referencia
- Historia de la convergencia
- Asociación a definiciones de geometría CAD
- Datos definidos por el usuario
Gran parte del estándar y del software es aplicable a la física de campo computacional en general. Otras disciplinas además de la dinámica de fluidos necesitarían aumentar las definiciones de datos y las convenciones de almacenamiento, pero el software fundamental de la base de datos, que proporciona independencia de plataforma, no es específico de la dinámica de fluidos.
CGNS es autodescriptivo, lo que permite que una aplicación interprete la estructura y el contenido de un archivo sin ninguna información externa. CGNS puede utilizar dos formatos diferentes de datos de bajo nivel:
- un método desarrollado y admitido internamente llamado Advanced Data Format (ADF), basado en un sistema de formato de archivo común que se usaba anteriormente en McDonnell Douglas
- HDF5 , un formato de datos jerárquico ampliamente utilizado
Herramientas y guías
Además de la propia biblioteca CGNS, las siguientes herramientas y guías están disponibles en Github :
- CGNSTools: incluye ADFVIEWER, un navegador y editor para archivos CGNS
- Código de la Guía del usuario: pequeño ejemplo práctico de programas CGNS escritos en Fortran y C
- Ejemplos de F77: programas de computadora de ejemplo escritos en Fortran que demuestran toda la funcionalidad CGNS
- HDFql permite a los usuarios administrar archivos CGNS / HDF5 a través de un lenguaje de alto nivel (similar a SQL) en C, C ++, Java, Python, C #, Fortran y R.
Ver también
- Formato de datos común (CDF)
- EAS3 (sistema Ein-Ausgabe)
- FITS (Sistema de transporte de imágenes flexible)
- GRIB (binario GRIdded)
- Formato de datos jerárquico (HDF)
- NetCDF (formulario de datos comunes de red)
- Archivos binarios Tecplot
- XMDF (formato de datos de modelo extensible)