MACH-Aero Documentation Unknown

Total Page:16

File Type:pdf, Size:1020Kb

MACH-Aero Documentation Unknown MACH-Aero Documentation unknown Sep 21, 2021 OVERVIEW 1 Overview of MACH-Aero 3 2 Cite Us 5 3 Using Docker 7 4 Installing MACH-Aero From Scratch9 5 Third Party Packages 13 6 Introduction 23 7 Aerodynamic Analysis 25 8 Aerodynamic Optimization 61 9 Airfoil Optimization 87 10 Overset Mesh 105 11 Frequently Asked Questions 165 Bibliography 167 i ii MACH-Aero Documentation MACH-Aero is a framework for performing gradient-based aerodynamic shape optimization. It consists of the follow- ing core modules: • baseClasses defines Python classes used by the other packages • pySpline is a B-spline implementation used by the other packages • pyGeo is a module for geometry manipulation and constraint formulation • IDWarp performs mesh warping using an inverse distance method • ADflow is a 2nd-order finite volume CFD solver with an efficient adjoint implementation • pyOptSparse is an optimization framework which provides a unified interface to several popular optimizers And the following optional modules: • pyHyp is a hyperbolic mesh generation tool used as a preprocessing step • multiPoint facilitates distributed multipoint optimization and handles the parallel communication using MPI • cgnsUtilities is a command-line tool that allows carrying out several simple mesh manipulation operations on CGNS grids • DAFoam provides efficient adjoint implementations for OpenFOAM to be used for CFD instead ofADflow More detail for the framework can be found in Overview of MACH-Aero. If you use any of our codes, please cite us. OVERVIEW 1 MACH-Aero Documentation 2 OVERVIEW CHAPTER ONE OVERVIEW OF MACH-AERO This page provides an overview of the aerodynamic shape optimization capability within MACH (framework for MDO of aircraft configurations with high fidelity). MACH-Aero consists of six major modules: • Pre-processing (pyHyp, ANSYS ICEM-CFD) • Geometry parameterization (pyGeo) • Volume mesh deformation (IDWarp) • Flow simulation (ADflow, DAFoam) • Adjoint computation (ADflow, DAFoam) • Optimization (pyOptSparse) Generally, MACH-Aero starts with a baseline design and uses the gradient to find the most promising direction inthe design space for improvement. This process is repeated until the optimality and feasibility conditions are satisfied. More specifically, the process is as follows, using the above figure as a reference. Here we use the extendeddesign structure matrix (XDSM) representation developed by Lambe and Martins (2012). The diagonal nodes represent the modules and the off-diagonal nodes represent the data. The black lines represent the process flow for the adjoint solver, whereas the thick gray lines represent the data flow. The number in each node represents the execution order: • First, we generate a volume mesh for the baseline geometry (pre-processing in process 1). Several mesh gen- eration tools are available including pyHyp and ICEM. Refer to Surface Meshing, Volume Meshing, and Mesh Manipulation for more details. The generated mesh will be used later in process 4. In the pre-processing step, we 3 MACH-Aero Documentation also generate free-form deformation (FFD) points (process 3) that will be used later to morph the design surface. Refer to Geometric Parameterization. • Then, we give a set of baseline design variables to the optimizer (process 2). We usually use SNOPT as the optimizer, which uses the SQP algorithm. We use pyOptSparse to facilitate the optimization problem setup. The optimizer will update the design variables and give them to the geometry parameterization module (pyGeo; process 3). pyGeo receives the updated design variables and the FFD points generated in the pre-processing step, performs the deformation for the design surface, and outputs the deformed design surface to the mesh deformation module (IDWarp) in process 4. pyGeo also computes the values of geometric constraints and their derivatives with respect to the design variables (process 7). • Next, IDWarp deforms the volume mesh based on the updated design surface and outputs the updated volume mesh to the flow simulation module in process 5. • The flow simulation module receives the updated volume mesh and uses high-fidelity CFD tools(i.e., ADflow or DAFoam) to compute the state variables (process 6) or physical fields (pressure, density, velocity, etc.). The flow simulation module also computes the objective and constraint functions (e.g., drag and lift; seeprocess7) and outputs the state variables to the adjoint computation module. • Then, the adjoint computation module (process 6) computes the total derivatives of the objective and constraint functions with respect to the design variables (process 7) and gives them back to the optimizer in process 7. The benefit of using the adjoint method to compute derivatives is that its computational cost is independent ofthe number of design variables, which makes it attractive for handling large-scale, complex design problems such as aircraft design. There are two available adjoint solvers: ADflow, DAFoam. • Finally, the optimizer receives the values and derivatives of the objective and constraint functions in process 7, performs the SQP computation, and outputs a set of updated design variables to pyGeo. The above process is repeated until the optimization converges. Refer to the MACH-Aero tutorials for tutorials. 4 Chapter 1. Overview of MACH-Aero CHAPTER TWO CITE US See the following papers for technical background of the above modules. If you use these modules for publications, please cite the corresponding papers. • pyOptSparse [1] • pyGeo [2] • ADflow [3,4,5] • DAFoam [6] 5 MACH-Aero Documentation 6 Chapter 2. Cite Us CHAPTER THREE USING DOCKER The MACH framework is packaged within Docker images that can be used to run the software without installing it natively on your machine. If you are using MACH for the first time, we encourage you to try Docker to avoid installation issues or other inconveniences caused by natively installing the tools. This guide assumes you are have Docker installed and running on your machine. If you need to install Docker, you can follow the Docker guide for Installing the Docker Engine. The commands used in this guide may differ depending on your operating system, so refer to the Docker documentation for more details for specific use cases. 3.1 Pull MDO Lab Docker Image Pull one of the MDO Lab Docker images. The available images are listed in the table below: Tag Operating System c7-intel-impi-latest CentOS 7 u20-gcc-ompi-latest Ubuntu 20.04 u20-gcc-ompi-stable Ubuntu 20.04 tacc-u18-gcc-impi-stable Ubuntu 18.04 To pull an image, use the docker pull command: $ docker pull mdolab/public:<TAG> Check that the Docker image is pulled successfully by running: $ docker image ls You should see the image you just pulled. 3.2 Initialize Docker Container Navigate to the directory containing the case you would like to run and initialize the Docker image you downloaded into a container, running interactively: $ docker run -it --name <NAME> --mount "type=bind,src=<HOST_DIR>,target=<MOUNT_DIR>" <IMAGE> /bin/bash Replace <NAME> with the name you would like to give the container, set <HOST_DIR> to the absolute path to the current directory, and set <MOUNT_DIR> to /home/mdolabuser/mount/. Then provide the image tag as <IMAGE>, matching the one downloaded previously: mdolab/public:<TAG>. When you run this command, you will enter the container and have access to the MACH framework in your specified case directory. 7 MACH-Aero Documentation Note: If you are running the MACH tutorials included in this guide using Docker, set the <HOST_DIR> parameter to the path to the directory where you have cloned the tutorial files. 3.3 Exiting and Restarting the Container At any point you can exit the container with the command: $ exit You can restart the container by running start: $ docker start <NAME> Run exec to enter the container: $ docker exec -it <NAME> /bin/bash 8 Chapter 3. Using Docker CHAPTER FOUR INSTALLING MACH-AERO FROM SCRATCH This tutorial is intended to be a step-by-step guide on how to set up the software needed to run MACH-Aero. The focus here is on installing common dependencies shared across the various packages. A general description for installing packages within MACH-Aero is also provided, but please refer to the documentation site for each package for specific instructions. This tutorial assumes that you have a working Linux distribution such as Ubuntu 18.04. The following list what steps are needed. The instructions are divided into three parts • Third party packages • MDO Lab packages • Standard MDO Lab Build Procedure Since MDO Lab packages depend heavily on third party tools and packages, it is generally good to start by compiling and testing them. Finally, an example .bashrc file is shown. • Example .bashrc 4.1 Third party packages To install, follow the instructions on this page. 4.2 MDO Lab packages To install the MDO Lab packages clone each repository from GitHub and follow the installation instructions found in the documentation of each package. Below, we give an overview of the general process, which consists of two parts. The building step is required for Fortran/C-based codes, and not needed if the package is purely written in Python. After this optional step, all packages must be installed as a Python package. The packages needed are: 1. baseClasses 2. pySpline 3. pyGeo 4. IDWarp 5. ADflow 6. pyOptSparse Optional packages are: 9 MACH-Aero Documentation 1. pyHyp 2. multipoint 3. cgnsUtilities 4. DAFoam 4.3 Standard MDO Lab Build Procedure The following general instructions apply to all the packages and repos maintained by the MDO Lab. Note that the Compilation step is not required if the package is entirely written in Python. 4.3.1 Compilation To start, find a configuration file close to your current setupin config/defaults and copy it to config/config.mk. For example $ cp config/defaults/config.LINUX_GFORTRAN.mk config/config.mk If you are a beginner user installing the packages on a Linux desktop, you should use the config.LINUX_GFORTRAN.
Recommended publications
  • Introduction CFD General Notation System (CGNS)
    CGNS Tutorial Introduction CFD General Notation System (CGNS) Christopher L. Rumsey NASA Langley Research Center Outline • Introduction • Overview of CGNS – What it is – History – How it works, and how it can help – The future • Basic usage – Getting it and making it work for you – Simple example – Aspects for data longevity 2 Introduction • CGNS provides a general, portable, and extensible standard for the description, storage, and retrieval of CFD analysis data • Principal target is data normally associated with computed solutions of the Navier-Stokes equations & its derivatives • But applicable to computational field physics in general (with augmentation of data definitions and storage conventions) 3 What is CGNS? • Standard for defining & storing CFD data – Self-descriptive – Machine-independent – Very general and extendable – Administered by international steering committee • AIAA recommended practice (AIAA R-101A-2005) • Free and open software • Well-documented • Discussion forum: [email protected] • Website: http://www.cgns.org 4 History • CGNS was started in the mid-1990s as a joint effort between NASA, Boeing, and McDonnell Douglas – Under NASA’s Advanced Subsonic Technology (AST) program • Arose from need for common CFD data format for improved collaborative analyses between multiple organizations – Existing formats, such as PLOT3D, were incomplete, cumbersome to share between different platforms, and not self-descriptive (poor for archival purposes) • Initial development was heavily influenced by McDonnell Douglas’ “Common
    [Show full text]
  • Development of a Coupling Approach for Multi-Physics Analyses of Fusion Reactors
    Development of a coupling approach for multi-physics analyses of fusion reactors Zur Erlangung des akademischen Grades eines Doktors der Ingenieurwissenschaften (Dr.-Ing.) bei der Fakultat¨ fur¨ Maschinenbau des Karlsruher Instituts fur¨ Technologie (KIT) genehmigte DISSERTATION von Yuefeng Qiu Datum der mundlichen¨ Prufung:¨ 12. 05. 2016 Referent: Prof. Dr. Stieglitz Korreferent: Prof. Dr. Moslang¨ This document is licensed under the Creative Commons Attribution – Share Alike 3.0 DE License (CC BY-SA 3.0 DE): http://creativecommons.org/licenses/by-sa/3.0/de/ Abstract Fusion reactors are complex systems which are built of many complex components and sub-systems with irregular geometries. Their design involves many interdependent multi- physics problems which require coupled neutronic, thermal hydraulic (TH) and structural mechanical (SM) analyses. In this work, an integrated system has been developed to achieve coupled multi-physics analyses of complex fusion reactor systems. An advanced Monte Carlo (MC) modeling approach has been first developed for converting complex models to MC models with hybrid constructive solid and unstructured mesh geometries. A Tessellation-Tetrahedralization approach has been proposed for generating accurate and efficient unstructured meshes for describing MC models. For coupled multi-physics analyses, a high-fidelity coupling approach has been developed for the physical conservative data mapping from MC meshes to TH and SM meshes. Interfaces have been implemented for the MC codes MCNP5/6, TRIPOLI-4 and Geant4, the CFD codes CFX and Fluent, and the FE analysis platform ANSYS Workbench. Furthermore, these approaches have been implemented and integrated into the SALOME simulation platform. Therefore, a coupling system has been developed, which covers the entire analysis cycle of CAD design, neutronic, TH and SM analyses.
    [Show full text]
  • Integrated Tool Development for Used Fuel Disposition Natural System Evaluation –
    Integrated Tool Development for Used Fuel Disposition Natural System Evaluation – Phase I Report Prepared for U.S. Department of Energy Used Fuel Disposition Yifeng Wang & Teklu Hadgu Sandia National Laboratories Scott Painter, Dylan R. Harp & Shaoping Chu Los Alamos National Laboratory Thomas Wolery Lawrence Livermore National Laboratory Jim Houseworth Lawrence Berkeley National Laboratory September 28, 2012 FCRD-UFD-2012-000229 SAND2012-7073P DISCLAIMER This information was prepared as an account of work sponsored by an agency of the U.S. Government. Neither the U.S. Government nor any agency thereof, nor any of their employees, makes any warranty, expressed or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness, of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. References herein to any specific commercial product, process, or service by trade name, trade mark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by the U.S. Government or any agency thereof. The views and opinions of authors expressed herein do not necessarily state or reflect those of the U.S. Government or any agency thereof. Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation, for the U.S. Department of Energy‘s National Nuclear Security Administration under contract DE-AC04-94AL85000. Integrated Tool Development for UFD Natural System Evaluation 9/1/2012 iii Integrated Tool Development for UFD Natural System Evaluation iv 9/1/2012 Integrated Tool Development for UFD Natural System Evaluation 9/1/2012 v Executive Summary The natural barrier system (NBS) is an integral part of a geologic nuclear waste repository.
    [Show full text]
  • Seven Keys for Practical Understanding and Use of CGNS
    Seven keys for practical understanding and use of CGNS Marc Poinot∗ Christopher L. Rumseyy SAFRAN NASA Langley Research Center [email protected] [email protected] We present key features of the CGNS standard, focusing on its two main elements, the data model (CGNS/SIDS) and its implementations (CGNS/HDF5 and CGNS/Python). The data model is detailed to emphasize how the topological user oriented information, such as families, are separated from the actual meshing that could be split or modified during the CFD workflow, and how this topological information is traced during the meshing process. We also explain why the same information can be described in multiple ways and how to handle such alternatives in an application. Two implementations, using HDF5 and Python, are illustrated in several use examples, both for archival and interoperability purposes. The CPEX extension formalized process is explained to show how to add new features to the standard in a consensual way; we present some of the next extensions to come. Finally we conclude by showing how powerful a consensual public approach like CGNS can be, as opposed to a stand-alone private one. All throughout the paper, we demonstrate how the use of CGNS could be of great benefit for both the meshing and CFD solver communities. I. Introduction The CFD General Notation System12 (CGNS) is a public standard for the CFD community. It has had more than 20 years of feedback from users throughout the world in industry, universities, and government research labs. The CGNS name is now well known in the CFD community, but it is often only associated with the CGNS library (CGNS/MLL) used by CFD tools.
    [Show full text]
  • Summary of Software Using HDF5 by Name (December 2017)
    Summary of Software Using HDF5 by Name (December 2017) Name (with Product Open Source URL) Application Type / Commercial Platforms Languages Short Description ActivePapers (http://www.activepapers File format for storing .org) General Problem Solving Open Source computations. Freely available SZIP implementation available from Adaptive Entropy the German Climate Encoding Library Special Purpose Open Source Computing Center IO componentization of ADIOS Special Purpose Open Source different IO transport methods Software for the display and Linux, Mac, analysis of X-Ray diffraction Adxv Visualization/Analysis Open Source Windows images Computer graphics interchange Alembic Visualization Open Source framework API to provide standard for working with electromagnetic Amelet-HDF Special Purpose Open Source data Bathymetric Attributed File format for storing Grid Data Format Special Purpose Open Source Linux, Win32 bathymetric data Basic ENVISAT Toolbox for BEAM Special Purpose Open Source (A)ATSR and MERIS data Bers slices and holomy Bear Special Purpose Open Source representations Unix, Toolkit for working BEAT Visualization/Analysis Open Source Windows,Mac w/atmospheric data Cactus General Problem Solving Problem solving environment Rapid C++ technical computing environment,with built-in HDF Ceemple Special Purpose Commercial C++ support Software for working with CFD CGNS Special Purpose Open Source Analysis data Tools for working with partial Chombo Special Purpose Open Source differential equations Command-line tool to convert/plot a Perkin
    [Show full text]
  • Getting Data Into Visit
    LLNL-SM-446033 Getting Data Into VisIt July 2010 Version 2.0.0 Brad Whitlock wrence La Livermore National Laboratory ii DISCLAIMER This document was prepared as an account of work sponsored by an agency of the United States government. Neither the United States government nor Lawrence Livermore National Security, LLC, nor any of their employees makes any warranty, expressed or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trade- mark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States government or Lawrence Livermore National Security, LLC. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States government or Lawrence Liver- more National Security, LLC, and shall not be used for advertising or product endorsement purposes. This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory in part under Contract W-7405-Eng-48 and in part under Contract DE-AC52-07NA27344. iii iv Table of Contents Introduction Manual chapters . 2 Manual conventions . 2 Strategies . 2 Picking a strategy . 3 Definition of terms . 4 Creating compatible files Creating a conversion utility or extending a simulation . 7 Survey of database reader plug-ins. 9 BOV file format . 9 X-Y Curve file format. 12 Plain text ASCII files .
    [Show full text]
  • AIAA Paper 2012-1264
    AIAA-2012-1264 50th AIAA Aerospace Sciences Meeting, January 9 – 12, 2012, Nashville, TN Recent Updates to the CFD General Notation System (CGNS) Christopher L. Rumsey∗ NASA Langley Research Center, Hampton, VA 23681 Bruce Wedan† Computational Engineering Solutions, San Ramon, CA 94582 Thomas Hauser‡ University of Colorado Boulder, Boulder, CO 80309 Marc Poinot§ ONERA - The French Aerospace Lab, F-92322 Chatillon, FRANCE The CFD General Notation System (CGNS)—a general, portable, and extensible standard for the storage and retrieval of computational fluid dynamics (CFD) analysis data—has been in existence for more than a decade (Version 1.0 was released in May 1998). Both structured and unstructured CFD data are covered by the standard, and CGNS can be easily extended to cover any sort of data imaginable, while retaining backward compatibility with existing CGNS data files and software. Although originally designed for CFD, it is readily extendable to any field of computational analysis. In early 2011, CGNS Version 3.1 was released, which added significant capabilities. This paper describes these recent enhancements and highlights the continued usefulness of the CGNS methodology. Glossary of Terms ADF CGNS Advanced Data Format, www.grc.nasa.gov/www/cgns/CGNS docs current/adf API Application Programming Interface CGIO CGNS low-level library, www.grc.nasa.gov/www/cgns/CGNS docs current/cgio CHLone CGNS special purpose C library (for HDF5 files only), chlone.sourceforge.net CGNS CFD General Notation System, cgns.org CGNSTalk CGNS user forum,
    [Show full text]
  • BASEMENT Reference Manual
    BASEMENT System Manuals VAW - ETH Zurich v2.8.1 BASEMENT System Manuals VAW - ETH Zurich v2.8.1 Contents Preamble 5 Credits . 5 License ......................................... 7 1 Pre-Processing in QGIS with BASEmesh 11 1.1 Introduction . 11 1.2 Tutorial 1: Mesh Generation based on Pointwise Elevation Data . 12 1.2.1 Project Settings . 13 1.2.2 Coordinate Reference System Configuration . 14 1.2.3 Loading Input Data for Elevation Model . 14 1.2.4 Saving Layer as Shape File . 15 1.2.5 Loading the Model Boundary . 15 1.2.6 Editing the Model Boundary . 17 1.2.7 Loading Breakline Data . 19 1.2.8 Creation of the Elevation Model as TIN . 20 1.2.9 Adaption of the Breaklines for Quality Meshing . 21 1.2.10 Creation of Region Marker Points . 22 1.2.11 Creation of Quality Mesh . 24 1.2.12 Interpolating elevation data from elevation mesh (TIN) . 25 1.2.13 3D view of the mesh . 26 1.2.14 Export of mesh to 2dm . 27 1.3 Tutorial 2: Import/Modify an existing Mesh and use Raster Data as Elevation Model . 28 1.3.1 Importing a .2dm mesh file . 29 1.3.2 Modifying the material indices of elements . 29 1.3.3 Manual editing of mesh elements . 33 1.3.4 Renumbering the mesh . 34 1.3.5 Interpolating elevations from raster data . 35 1.4 Tutorial 3: Using dividing constraints along boundary cross sections and setting up a BASEMENT simulation with a mesh from BASEmesh . 35 1.4.1 Using dividing constraints for Quality meshing .
    [Show full text]
  • About Pycgns 3 1.1 CGNS Standard
    pyCGNS.intro/Manual Release 4.2.0 Marc Poinot August 27, 2007 CONTENTS 1 About pyCGNS 3 1.1 CGNS Standard...........................................3 1.2 Package contents...........................................4 1.3 Quick start..............................................5 2 Build and Install 7 2.1 Required libraries..........................................7 2.2 Optional libraries...........................................7 2.3 Installation process..........................................8 2.4 Single module installation......................................8 2.5 Configuration file contents......................................8 2.6 NAV depends.............................................9 2.7 MAP depends............................................9 2.8 WRA depends............................................9 3 Glossary 11 4 PDF Docs 13 i ii pyCGNS.intro/Manual, Release 4.2.0 Release 4.2 • CGNS.MAP is now a wrapper to CHLone python module • CGNS.WRA reborn, re-coding using Cython • CGNS.VAL reborn • completely new CGNS.NAV using Qt, VTK and Cython • YouTube demos here The package gathers various tools and libraries for CGNS end-users and Python application developpers. The main object of pyCGNS is to provide the application developpers with a Python interface to CGNS/SIDS, the data model. The MAP and PAT modules are dedicated to this goal: map the CGNS/SIDS data model the CGNS/Python implementation. The WRA module contains wrapper on CGNS/MLL and a MLL-like set of functions that uses the CGNS/Python mapping as implementation. The NAV module supports the CGNS.NAV graphical browser, with nice features about tree exploration, copy/paste and even global node changes. Then, the VAL module is a parser engine for CGNS/Python tree compliance checking. The CGNS.VAL tool can analyze your CGNS/HDF5 file and returns you a large panel of diagnostics.
    [Show full text]
  • MASS2, Modular Aquatic Simulation System in Two Dimensions, User
    PNNL-14820-2 MASS2 Modular Aquatic Simulation System in Two Dimensions User Guide and Reference W. A. Perkins M. C. Richmond September 2004 Prepared for the U.S. Department of Energy under Contract DE-AC06-76RL01830 DISCLAIMER United States Government. Neither the United States Government nor any agency thereof, nor Battelle Memorial Institute, nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof, or Battelle Memorial Institute. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof. PACIFIC NORTHWEST NATIONAL LABORATORY operated by BATTELLE for the UNITED STATES DEPARTMENT OF ENERGY under Contract DE-AC06-76RLO1830 Printed in the United States of America Available to DOE and DOE contractors from the Office of Scientific and Technical Information, P.O. Box 62, Oak Ridge, TN 37831-0062; ph: (865) 576-8401 fax: (865) 576-5728 email: [email protected] Available to the public from the National Technical Information Service, U.S. Department of Commerce, 5285 Port Royal Rd., Springfield, VA 22161 ph: (800) 553-6847 fax: (703) 605-6900 email: [email protected] online ordering: http://www.ntis.gov/ordering.htm This document was printed on recycled paper.
    [Show full text]
  • Data Formats for Visualization and I T Bilit Interoperability
    Data Formats for Visualization and Int eroperabilit y Steve Lantz Senior Research Associate 10/27/2008 www.cac.cornell.edu 1 How will you store your data? • Raw binary is compact but not portable – “Unformatted,” machine-specific representation – Byte-order issues: big endian (IBM) vs. little endian (Intel) • Formatted text is portable but not compact – Need to know all the details of formatting just to read the data – 1 byyygg()te of ASCII text stores only a single decimal digit (~3 bits) – Most of the fat can be knocked out by compression (gzip, bzip, etc.) – However, compression is impractical and slow for large files • Need to consider how data will ultimately be used – Are you trying to ensure future portability? – Will your favored analysis tools be able to read the data? – What storage constraints are there? 10/27/2008 www.cac.cornell.edu 2 Issues beyond the scope of this talk… • Provenance – The record of the origin or source of data – The history of the ownership or location of data – Purpose: to confirm the time and place of, and perhaps the person responsible for, the creation, production or discovery of the data • Curation – Collecting, cataloging, organizing, and preserving data • Ontology – Assigning t ypes and pro perties to data ob jects – Determining relationships among data objects – Associating concepts and meanings with data (semantics) •Portab le data fo rmats can an d do addr ess som e of th ese i ssues… 10/27/2008 www.cac.cornell.edu 3 Portable data formats: the HDF5 technology suite • Versatile data model that
    [Show full text]
  • Tutorial Session Agenda
    CFD General Notation System (CGNS) Tutorial Session Agenda • 7:00-7:30 Introduction, overview, and basic usage C. Rumsey (NASA Langley) • 7:30-7:50 Usage for structured grids B. Wedan (ANSYS – ICEM) • 7:50-8:10 Usage for unstructured grids E. van der Weide (Stanford University) • 8:20-8:40 HDF5 usage and parallel implementation T. Hauser (Utah State University) • 8:40-9:00 Python and in-memory CGNS trees M. Poinot (ONERA) • 9:00-9:30 Discussion and question/answer period 2 CFD General Notation System (CGNS) Introduction, overview, and basic usage Christopher L. Rumsey NASA Langley Research Center Chair, CGNS Steering Committee Outline • Introduction • Overview of CGNS – What it is – History – How it works, and how it can help – The future • Basic usage – Getting it and making it work for you – Simple example – Aspects for data longevity 4 Introduction • CGNS provides a general, portable, and extensible standard for the storage and retrieval of CFD analysis data • Principal target is data normally associated with computed solutions of the Navier-Stokes equations & its derivatives • But applicable to computational field physics in general (with augmentation of data definitions and storage conventions) 5 What is CGNS? • Standard for defining & storing CFD data – Self-descriptive – Machine-independent – Very general and extendable – Administered by international steering committee • AIAA recommended practice (AIAA R-101-2002) • In process of becoming part of international ISO standard • Free and open software • Well-documented • Discussion
    [Show full text]