[cig-commits] [commit] master: Renamed chapter (03c634b)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Fri May 9 15:24:51 PDT 2014


Repository : https://github.com/geodynamics/cigma

On branch  : master
Link       : https://github.com/geodynamics/cigma/compare/65c02138d3ae8b87c088cc14fe4f98e21e3f0805...a26f592c25c89a40622404999ba1effcdf6df9e3

>---------------------------------------------------------------

commit 03c634b860c10ce586e71013adc0df2c9f7cc9db
Author: Luis Armendariz <luis>
Date:   Wed Aug 13 20:27:28 2008 +0000

    Renamed chapter


>---------------------------------------------------------------

03c634b860c10ce586e71013adc0df2c9f7cc9db
 file_formats/file_formats.lyx | 1098 -----------------------------------------
 1 file changed, 1098 deletions(-)

diff --git a/file_formats/file_formats.lyx b/file_formats/file_formats.lyx
deleted file mode 100644
index 026d635..0000000
--- a/file_formats/file_formats.lyx
+++ /dev/null
@@ -1,1098 +0,0 @@
-#LyX 1.5.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 276
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-\newcommand{\mynote}[1]{}
-\end_preamble
-\language english
-\inputencoding auto
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-\graphics default
-\paperfontsize default
-\spacing single
-\papersize default
-\use_geometry false
-\use_amsmath 1
-\use_esint 1
-\cite_engine basic
-\use_bibtopic false
-\paperorientation portrait
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\defskip medskip
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\author "" 
-\author "" 
-\end_header
-
-\begin_body
-
-\begin_layout Standard
-\begin_inset ERT
-status collapsed
-
-\begin_layout Standard
-
-
-\backslash
-mynote{
-\end_layout
-
-\begin_layout Standard
-
-TODO: Rename file_formats.lyx to formats.lyx
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-Define the dimensions for every object in the file (summarize only the tables
- in the appendix)
-\end_layout
-
-\begin_layout Standard
-
-  Mesh Coordinates
-\end_layout
-
-\begin_layout Standard
-
-  Mesh Connectivity (list of Element Blocks)
-\end_layout
-
-\begin_layout Standard
-
-  Field Variables (Global, Nodal, Element)
-\end_layout
-
-\begin_layout Standard
-
-  Element Tabulation (Shape function, Shape Function Derivatives)
-\end_layout
-
-\begin_layout Standard
-
-  Integration Rule (Weights and Local Points)
-\end_layout
-
-\begin_layout Standard
-
-  Global Integration Points
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-Explain structure of each file format:
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
- Text Format
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-    All arrays specified explicitly in several text files containing a list
- of floating point numbers.
-\end_layout
-
-\begin_layout Standard
-
-    The first two numbers indicate the dimensions of the array, followed
- by a list of floats
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --integration-mesh-coordinates=imesh_coords.dat
-\end_layout
-
-\begin_layout Standard
-
-      --integration-mesh-connectivity=imesh_connect.dat
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --integration-rule-points=tet4_order10_points.dat
-\end_layout
-
-\begin_layout Standard
-
-      --integration-rule-weights=tet4_order10_weights.dat
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --first-mesh-coordinates=first_coords.dat
-\end_layout
-
-\begin_layout Standard
-
-      --first-mesh-connectivity=first_connect.dat
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --second-mesh-coordinates=first_coords.dat
-\end_layout
-
-\begin_layout Standard
-
-      --second-mesh-connectivity=first_connect.dat
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --first-dofs=first_var_stepN.dat
-\end_layout
-
-\begin_layout Standard
-
-      --second-dofs=second_var_stepN.dat
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-      --integration-rule=tet4_order10.dat      <-- (weights in first column)
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-  Simple Arrays (HDF5)
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-    Structure of Model Definition
-\end_layout
-
-\begin_layout Standard
-
-      root group at /model
-\end_layout
-
-\begin_layout Standard
-
-      mesh data at /model/mesh
-\end_layout
-
-\begin_layout Standard
-
-        node coordinates as specified on global coordinate system at /model/mesh
-/coordinates
-\end_layout
-
-\begin_layout Standard
-
-        list of element blocks at /model/mesh/connectivity
-\end_layout
-
-\begin_layout Standard
-
-        note that each element block is tagged by element type in the FE
- attribute
-\end_layout
-
-\begin_layout Standard
-
-      degrees-of-freedom data
-\end_layout
-
-\begin_layout Standard
-
-        organized by variable at /model/vars/var, or even just /model/var
-\end_layout
-
-\begin_layout Standard
-
-        list of steps: /model/var/step{0,1,...,N}
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-    Structure of file defining an Integration Rule
-\end_layout
-
-\begin_layout Standard
-
-      root group is / by default, but may be specified directly (eg, as
- /rule)
-\end_layout
-
-\begin_layout Standard
-
-      root group is tagged with FE string indicating the source element
- (tet4, ...)
-\end_layout
-
-\begin_layout Standard
-
-      integration points contained at /rule/points
-\end_layout
-
-\begin_layout Standard
-
-      integration points contained at /rule/weights
-\end_layout
-
-\begin_layout Standard
-
-    Structure of file with Residuals
-\end_layout
-
-\begin_layout Standard
-
-      root group is / by default, but it must exist if specified
-\end_layout
-
-\begin_layout Standard
-
-      
-\end_layout
-
-\begin_layout Standard
-
-  VTK
-\end_layout
-
-\begin_layout Standard
-
-      Basic structure:
-\end_layout
-
-\begin_layout Standard
-
-        VTK Grid
-\end_layout
-
-\begin_layout Standard
-
-          VTK Dataset consists of the mesh information (node coordinates
- and associated connectivity relations)
-\end_layout
-
-\begin_layout Standard
-
-          VTK Data Arrays come in two types (Point Data and Cell Data)
-\end_layout
-
-\begin_layout Standard
-
-            VTK Point Data - scalars, vectors, tensors as defined on the
- nodes
-\end_layout
-
-\begin_layout Standard
-
-            VTK Cell Data - scalars, vectors, tensors as defined on each
- element
-\end_layout
-
-\begin_layout Standard
-
-      Structure of different types
-\end_layout
-
-\begin_layout Standard
-
-        Unstructured Grid
-\end_layout
-
-\begin_layout Standard
-
-           mesh points: given explicitly in a simple array
-\end_layout
-
-\begin_layout Standard
-
-           mesh connectivity: given explicitly in a list of simple arrays
-\end_layout
-
-\begin_layout Standard
-
-           element types: Line, Quad, Tetra, Hexahedron, Quadratic Triangle,
- Quadratic Quad, Quadratic Tetra, Quadratic Hexahedron
-\end_layout
-
-\begin_layout Standard
-
-        Structured Grid
-\end_layout
-
-\begin_layout Standard
-
-           mesh points: given explicitly in a simple array
-\end_layout
-
-\begin_layout Standard
-
-           mesh connectivity: derived from dimensions (nx, ny, nz)
-\end_layout
-
-\begin_layout Standard
-
-           element types: Quad, Pixel, Hex, Voxel
-\end_layout
-
-\begin_layout Standard
-
-        Rectilinear Grid
-\end_layout
-
-\begin_layout Standard
-
-           mesh dimensions: (nx, ny, nz)
-\end_layout
-
-\begin_layout Standard
-
-           mesh points: derived from 'double xcoords[nx], ycoords[ny], zcoords[n
-z]' arrays
-\end_layout
-
-\begin_layout Standard
-
-           element types: Pixel, Voxel
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-  UCD
-\end_layout
-
-\begin_layout Standard
-
-    Format described in (LINK-TO-DOCUMENT).
-\end_layout
-
-\begin_layout Standard
-
-    Using VTK API (vtkAVSucdReader) to read (*.inp) files
-\end_layout
-
-\begin_layout Standard
-
-    Just extracts the data into an Unstructured Grid
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-  ExodusII
-\end_layout
-
-\begin_layout Standard
-
-    This type of mesh can be generated by other programs, such as CUBIT
-\end_layout
-
-\begin_layout Standard
-
-    Currently only used to specify an integration mesh, but it is capable
- of storing degree-of-freedom data as well.
-\end_layout
-
-\begin_layout Standard
-
-    Utility script for converting *.exo into the appropriate *.h5 file (need
- PyTables, Numpy, Scientific.IO.NetCDF)
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
---------------
-\end_layout
-
-\begin_layout Standard
-
-From running.lyx:
-\end_layout
-
-\begin_layout Standard
-
-The underlying data storage format for Cigma is the HDF5 format, due to
- its flexibility for storing and organizing large amounts of data.
- The Hierarchical Data Format (HDF) is designed for storing, retrieving,
- analyzing, visualizing, and converting scientific data.
- It uses a hierarchical structure that provides users a host of options
- for organizing how their data is stored in HDF5 files.
- Using HDF5 datasets in Cigma allows us to avoid having to convert between
- too many distinct formats.
- Moreover, due to the amount of disk I/O, large finite element meshes can
- be handled more efficiently in binary format.
- 
-\end_layout
-
-\begin_layout Standard
-
-Another popular format for providing mesh and field inputs.You can easily
- examine the structure of an input file by using the cigma list command,
- which will simply reveal the names and dimensions of all datasets inside
- the specified file.
-\end_layout
-
-\begin_layout Standard
-
-Inputs can be either HDF5 or VTK.
- Specifying the complete path to a dataset consists of the special form
- filepath:dataset, a colon-delimited pair of file path and dataset path.
-\end_layout
-
-\begin_layout Standard
-
-Mesh inputs are currently only unstructured grids.
-\end_layout
-
-\begin_layout Standard
-
-Only exception are the residuals, which are written in legacy VTK format
- as scalar cell data over an unstructured grid.
-\end_layout
-
-\begin_layout Standard
-
-Because Cigma relies on the ability of the user to specify dataset paths,
- we have provided a command called list for viewing the structure of an
- input file.
- Its usage is very simple.
- 
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Standard
-
-}
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Note
-status collapsed
-
-\begin_layout Standard
-This chapter may be summarized by simply stating that most input data can
- be specified as a two-dimensional array.
- The meaning of this array, of course, is dependent on context.
- That is the main concept that we have to get accross in this chapter.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Chapter
-Data and File Formats
-\end_layout
-
-\begin_layout Standard
-As we've seen in the previous chapters, there are a number of data objects
- involved in making any particular comparison.
- Here, we discuss the variety of formats available, as well as the layout
- within the corresponding data file.
-\end_layout
-
-\begin_layout Section
-Data Formats
-\end_layout
-
-\begin_layout Standard
-The basic data structure is a two-dimensional array of values, stored in
- 
-\newline
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Tabular
-<lyxtabular version="3" rows="5" columns="2">
-<features>
-<column alignment="center" valignment="top" leftline="true" width="0">
-<column alignment="center" valignment="top" leftline="true" rightline="true" width="0">
-<row topline="true" bottomline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-Array shape
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-\begin_inset Formula $(m,n)$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-Array Data
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-\begin_inset Formula $a_{11},a_{12},\ldots,a_{1n}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-\begin_inset Formula $a_{21},a_{22},\ldots,a_{2n}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-\begin_inset Formula $\cdots$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row bottomline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-\begin_inset Formula $a_{m1},a_{m2},\ldots,a_{mn}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-</row>
-</lyxtabular>
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsection
-Mesh
-\end_layout
-
-\begin_layout Subsection
-Field Variables
-\end_layout
-
-\begin_layout Subsection
-Integration Rule
-\end_layout
-
-\begin_layout Subsection
-Integration Points and Values
-\end_layout
-
-\begin_layout Subsection
-Spherical Harmonics
-\end_layout
-
-\begin_layout Section
-File Formats
-\end_layout
-
-\begin_layout Section
-Input Files
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Note
-status collapsed
-
-\begin_layout Standard
-There are five different objects you will want to use as input to Cigma,
- all of which can be represented as two-dimensional datasets.
- These are the 
-\end_layout
-
-\begin_layout Itemize
-mesh coordinates
-\end_layout
-
-\begin_layout Itemize
-mesh connectivity
-\end_layout
-
-\begin_layout Itemize
-field coefficients (degrees of freedom)
-\end_layout
-
-\begin_layout Itemize
-quadrature rule points
-\end_layout
-
-\begin_layout Itemize
-quadrature rule weights
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Now that we have examined what kinds of objects we will be accessing, let's
- discuss the actual layout.
-\end_layout
-
-\begin_layout Subsection
-HDF5
-\end_layout
-
-\begin_layout Standard
-HDF5 files are organized in a hierarchical structure, similar to a UNIX
- file system.
- Two types of primary objects, groups and datasets, are stored in this structure.
- A group contains instances of zero or more groups or datasets, while a
- dataset stores a multi-dimensional array of data elements.
- Both kinds of objects are accompanied by supporting metadata known as attribute
-s.
-\end_layout
-
-\begin_layout Standard
-A dataset is physically stored in two parts: a header and a data array.
- The header contains miscellaneous metadata describing the dataset as well
- as information that is needed to interpret the array portion of the dataset.
- Essentially, it includes the name, datatype, dataspace, and storage layout
- of the dataset.
- The name is a text string identifying the dataset.
- The datatype describes the type of the data array elements.
- The dataspace defines the dimensionality of the dataset, i.e., the size and
- shape of the multi-dimensional array.
-\end_layout
-
-\begin_layout Standard
-In Cigma you may always provide an explicit path to every dataset, so you
- have a fair amount of flexibility for how you organize your datasets inside
- HDF5 files.
- For example, a typical Cigma HDF5 file could have the following structure.
- 
-\begin_inset Note Note
-status open
-
-\begin_layout Standard
-Mention these assumptions in the corresponding section in running.lyx
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-model.h5
-\end_layout
-
-\begin_layout LyX-Code
-
-\backslash
-__ model
-\end_layout
-
-\begin_layout LyX-Code
-    |__ mesh
-\end_layout
-
-\begin_layout LyX-Code
-    |   |__ coordinates    [nno x nsd]
-\end_layout
-
-\begin_layout LyX-Code
-    |   
-\backslash
-__ connectivity   [nel x ndof]
-\end_layout
-
-\begin_layout LyX-Code
-    
-\backslash
-__ variables
-\end_layout
-
-\begin_layout LyX-Code
-        |__ temperature
-\end_layout
-
-\begin_layout LyX-Code
-        |   |__ step00000  [nno x 1]
-\end_layout
-
-\begin_layout LyX-Code
-        |   |__ step00010  [nno x 1]
-\end_layout
-
-\begin_layout LyX-Code
-        |   
-\backslash
-...
-\end_layout
-
-\begin_layout LyX-Code
-        |__ displacement
-\end_layout
-
-\begin_layout LyX-Code
-        |   |__ step00000  [nno x 3]
-\end_layout
-
-\begin_layout LyX-Code
-        |   |__ step00010  [nno x 3]
-\end_layout
-
-\begin_layout LyX-Code
-        |   
-\backslash
-...
-\end_layout
-
-\begin_layout LyX-Code
-        
-\backslash
-__ velocity
-\end_layout
-
-\begin_layout LyX-Code
-            |__ step00000  [nno x 3]
-\end_layout
-
-\begin_layout LyX-Code
-            |__ step00010  [nno x 3]
-\end_layout
-
-\begin_layout LyX-Code
-            
-\backslash
-...
-\end_layout
-
-\begin_layout Standard
-Generally, Cigma will only require you to specify the path to a specific
- field dataset.
- If a small amount of metadata is present in your field dataset, the rest
- of the required information, such as which mesh and finite elements to
- use, will be deduced from that metadata.
-\end_layout
-
-\begin_layout Description
-MeshID an identifier assigned for use in linking child datasets to their
- parent mesh.
-\end_layout
-
-\begin_layout Description
-MeshLocation points to the HDF5 group which contains the appropriate coordinates
- and connectivity datasets.
-\end_layout
-
-\begin_layout Description
-FunctionSpace string identifier to determine which shape functions to use
- for interpolating values inside the element (e.g., tet4, hex8, quad4, tri3,
- ...).
-\end_layout
-
-\begin_layout Description
-DatasetType string identifier for classifying the type of data contained
- in the dataset (e.g., points, connectivity, degrees of freedom, quadrature
- rules, global quadrature points, global field values).
-\end_layout
-
-\begin_layout Subsection
-VTK
-\end_layout
-
-\begin_layout Standard
-The current version of Cigma only supports VTK unstructured grid datasets
- of a single element type.
- You can still compare various unstructured grids with different element
- types to each other.
-\end_layout
-
-\begin_layout Standard
-Note that while you typically provide a path (or name) for every dataset,
- this is not necessary when specifying a VTK mesh, since this data is taken
- from the special Points and Cells arrays, which you cannot rename.
- However, you will still need to provide a name when referring to the field
- coefficients, which are assumed to be stored as Point Data in the input
- VTK file.
-\end_layout
-
-\begin_layout Standard
-For more information, you may want to refer to Visualization ToolKit's 
-\begin_inset LatexCommand htmlurl
-name "File Formats"
-target "www.vtk.org/pdf/file-formats.pdf"
-
-\end_inset
-
- document.
- 
-\end_layout
-
-\begin_layout Subsection
-Text
-\end_layout
-
-\begin_layout Standard
-The text format is always in table form, with the dimensions of the table
- specified in the first line.
- For example, mesh coordinates can be specified in the following format
-\end_layout
-
-\begin_layout LyX-Code
-<nno> <nsd>
-\end_layout
-
-\begin_layout LyX-Code
-x1 y1 z1
-\end_layout
-
-\begin_layout LyX-Code
-x2 y2 z2
-\end_layout
-
-\begin_layout LyX-Code
-x3 y3 z3
-\end_layout
-
-\begin_layout LyX-Code
-...
-\end_layout
-
-\begin_layout Standard
-Mesh connectivity with 
-\end_layout
-
-\begin_layout LyX-Code
-nel ndofs
-\end_layout
-
-\begin_layout LyX-Code
-node_1 node_2 node_3 node_4 ...
-\end_layout
-
-\begin_layout LyX-Code
-node_1 node_2 node_3 node_4 ...
-\end_layout
-
-\begin_layout LyX-Code
-node_1 node_2 node_3 node_4 ...
-\end_layout
-
-\begin_layout LyX-Code
-...
-\end_layout
-
-\begin_layout Standard
-A generic field with 
-\family typewriter
-ndim
-\family default
- components (i.e., scalar, vector, or tensor) is specified by
-\end_layout
-
-\begin_layout LyX-Code
-num ndim
-\end_layout
-
-\begin_layout LyX-Code
-f1 f2 f3 ..
-\end_layout
-
-\begin_layout LyX-Code
-f1 f2 f3 ..
-\end_layout
-
-\begin_layout LyX-Code
-...
-\end_layout
-
-\begin_layout Standard
-In this last case, the number of rows could refer to either 
-\family typewriter
-nno
-\family default
- or 
-\family typewriter
-nel
-\family default
-, depending on whether the field is node-based or cell-based.
-\end_layout
-
-\begin_layout Section
-Output File
-\end_layout
-
-\begin_layout Standard
-Depending on the particular operation you perform, there are three different
- kinds of output files.
- The output format for residuals consists simply of a list of scalars for
- each element in the discretization.
- If you specify a 
-\family typewriter
-.vtk
-\family default
- extension for your output file, this will result in an scalar dataset named
- epsilon stored using the legacy VTK file format in the Cell Data section
- of the output file.
- Note that this output consists of the squared values of the local residuals,
- so further post-processing will be necessary.
-\end_layout
-
-\end_body
-\end_document



More information about the CIG-COMMITS mailing list