VTK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
home
demarle
Source
VTK
release
8.2
build
Utilities
Doxygen
dox
IO
LSDyna
LSDynaMetaData.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: LSDynaMetaData.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
15
/*----------------------------------------------------------------------------
16
Copyright (c) Sandia Corporation
17
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18
----------------------------------------------------------------------------*/
19
20
// .NAME LSDynaMetaData - Read LS-Dyna databases (d3plot)
21
// .SECTION Description
22
// A class to hold metadata about a particular file (such as time steps,
23
// the start of state information for each time step, the number of
24
// adaptive remeshes, and the large collection of constants that determine
25
// the available attributes). It contains an LSDynaFamily instance.
26
27
#ifndef __LSDynaMetaData_h
28
#define __LSDynaMetaData_h
29
30
#include "LSDynaExport.h"
31
#include "
LSDynaFamily.h
"
32
33
#include <string>
34
#include <map>
35
#include <set>
36
#include <vector>
37
38
class
LSDynaMetaData
39
{
40
public
:
41
LSDynaMetaData
();
42
43
bool
AddPointArray
(
const
std::string
&
name
,
int
numComponents,
int
status );
44
45
bool
AddCellArray
(
int
cellType,
const
std::string
& name,
int
numComponents,
int
status );
46
47
int
GetTotalMaterialCount
();
48
49
void
Reset
();
50
58
enum
LSDYNA_TYPES
{
59
PARTICLE
= 0,
60
BEAM
= 1,
61
SHELL
= 2,
62
THICK_SHELL
= 3,
63
SOLID
= 4,
64
RIGID_BODY
= 5,
65
ROAD_SURFACE
= 6,
66
NUM_CELL_TYPES
67
};
68
69
// If this is 0, the rest of the members have undefined
70
// values (although "derived-value" arrays will be
71
// initialized to nullptr)
72
int
FileIsValid
;
73
int
FileSizeFactor
;
// scale factor used to compute MaxFileLength
74
vtkIdType
MaxFileLength
;
// Maximum size of any file (data too big is split into multiple files)
75
76
LSDynaFamily
Fam
;
// file family I/O aggregator
77
78
char
Title
[41];
79
char
ReleaseNumber
[16];
80
float
CodeVersion
;
81
int
Dimensionality
;
82
vtkIdType
CurrentState
;
// time step
83
vtkIdType
NumberOfNodes
;
84
vtkIdType
NumberOfCells
[
LSDynaMetaData::NUM_CELL_TYPES
];
85
int
ReadRigidRoadMvmt
;
// Are some of the quads rigid? (eliminating a lot of state)
86
int
ConnectivityUnpacked
;
// Is the connectivity packed, 3 to a word?
87
std::map<std::string,vtkIdType>
Dict
;
88
90
std::set<int>
RigidMaterials
;
92
std::set<int>
FluidMaterials
;
93
94
std::vector<std::string>
PointArrayNames
;
95
std::vector<int>
PointArrayComponents
;
96
std::vector<int>
PointArrayStatus
;
97
98
std::map<int, std::vector<std::string> >
CellArrayNames
;
99
std::map<int, std::vector<int> >
CellArrayComponents
;
100
std::map<int, std::vector<int> >
CellArrayStatus
;
101
102
std::vector<std::string>
PartNames
;
103
std::vector<int>
PartIds
;
104
std::vector<int>
PartMaterials
;
105
std::vector<int>
PartStatus
;
106
107
std::vector<int>
MaterialsOrdered
;
108
std::vector<int>
MaterialsUnordered
;
109
std::vector<int>
MaterialsLookup
;
110
111
std::vector<vtkIdType>
RigidSurfaceSegmentSizes
;
112
std::vector<double>
TimeValues
;
113
114
// For the current time value, what file contains this state (0=d3plot,1=d3plot01, ...)
115
vtkIdType
FileNumberThisState
;
116
// For the current time value, what is the byte offset of the state in file FileNumberThisState?
117
vtkIdType
FileOffsetThisState
;
118
// Size of all data that appears before first state
119
vtkIdType
PreStateSize
;
120
// Number of bytes required to store a single timestep
121
vtkIdType
StateSize
;
122
123
//Number of words into the state that the element deletion starts at
124
vtkIdType
ElementDeletionOffset
;
125
126
//Number of words into the state that the SPH state data starts at
127
vtkIdType
SPHStateOffset
;
128
};
129
130
#endif // __LSDynaMetaData_h
LSDynaMetaData::PartMaterials
std::vector< int > PartMaterials
Definition:
LSDynaMetaData.h:104
LSDynaMetaData::MaterialsOrdered
std::vector< int > MaterialsOrdered
Definition:
LSDynaMetaData.h:107
LSDynaMetaData::TimeValues
std::vector< double > TimeValues
Definition:
LSDynaMetaData.h:112
LSDynaMetaData::LSDynaMetaData
LSDynaMetaData()
LSDynaMetaData::Fam
LSDynaFamily Fam
Definition:
LSDynaMetaData.h:76
LSDynaMetaData::CellArrayNames
std::map< int, std::vector< std::string > > CellArrayNames
Definition:
LSDynaMetaData.h:98
LSDynaMetaData::CurrentState
vtkIdType CurrentState
Definition:
LSDynaMetaData.h:82
LSDynaMetaData::ROAD_SURFACE
Definition:
LSDynaMetaData.h:65
LSDynaMetaData::PartNames
std::vector< std::string > PartNames
Definition:
LSDynaMetaData.h:102
LSDynaMetaData::ReleaseNumber
char ReleaseNumber[16]
Definition:
LSDynaMetaData.h:79
LSDynaMetaData::PartIds
std::vector< int > PartIds
Definition:
LSDynaMetaData.h:103
LSDynaMetaData::CellArrayComponents
std::map< int, std::vector< int > > CellArrayComponents
Definition:
LSDynaMetaData.h:99
LSDynaMetaData::SPHStateOffset
vtkIdType SPHStateOffset
Definition:
LSDynaMetaData.h:127
LSDynaMetaData::PARTICLE
Definition:
LSDynaMetaData.h:59
LSDynaMetaData::THICK_SHELL
Definition:
LSDynaMetaData.h:62
LSDynaMetaData::Dimensionality
int Dimensionality
Definition:
LSDynaMetaData.h:81
LSDynaMetaData::NumberOfCells
vtkIdType NumberOfCells[LSDynaMetaData::NUM_CELL_TYPES]
Definition:
LSDynaMetaData.h:84
LSDynaMetaData::PreStateSize
vtkIdType PreStateSize
Definition:
LSDynaMetaData.h:119
LSDynaMetaData::SHELL
Definition:
LSDynaMetaData.h:61
LSDynaMetaData::FluidMaterials
std::set< int > FluidMaterials
List of material IDs that indicate the associated solid element represents an Eulerian or ALE fluid...
Definition:
LSDynaMetaData.h:92
LSDynaMetaData::BEAM
Definition:
LSDynaMetaData.h:60
vtkIdType
int vtkIdType
Definition:
vtkType.h:347
vtkX3D::string
Definition:
vtkX3D.h:490
LSDynaMetaData::NUM_CELL_TYPES
Definition:
LSDynaMetaData.h:66
LSDynaMetaData::FileNumberThisState
vtkIdType FileNumberThisState
Definition:
LSDynaMetaData.h:115
LSDynaMetaData::PointArrayStatus
std::vector< int > PointArrayStatus
Definition:
LSDynaMetaData.h:96
LSDynaMetaData::ConnectivityUnpacked
int ConnectivityUnpacked
Definition:
LSDynaMetaData.h:86
vtkX3D::name
Definition:
vtkX3D.h:219
LSDynaMetaData::RIGID_BODY
Definition:
LSDynaMetaData.h:64
LSDynaMetaData
Definition:
LSDynaMetaData.h:38
LSDynaMetaData::SOLID
Definition:
LSDynaMetaData.h:63
LSDynaMetaData::ElementDeletionOffset
vtkIdType ElementDeletionOffset
Definition:
LSDynaMetaData.h:124
LSDynaMetaData::PointArrayNames
std::vector< std::string > PointArrayNames
Definition:
LSDynaMetaData.h:94
LSDynaMetaData::CodeVersion
float CodeVersion
Definition:
LSDynaMetaData.h:80
LSDynaMetaData::FileSizeFactor
int FileSizeFactor
Definition:
LSDynaMetaData.h:73
LSDynaMetaData::Dict
std::map< std::string, vtkIdType > Dict
Definition:
LSDynaMetaData.h:87
LSDynaMetaData::PointArrayComponents
std::vector< int > PointArrayComponents
Definition:
LSDynaMetaData.h:95
LSDynaMetaData::StateSize
vtkIdType StateSize
Definition:
LSDynaMetaData.h:121
LSDynaMetaData::ReadRigidRoadMvmt
int ReadRigidRoadMvmt
Definition:
LSDynaMetaData.h:85
LSDynaMetaData::AddPointArray
bool AddPointArray(const std::string &name, int numComponents, int status)
LSDynaMetaData::MaterialsLookup
std::vector< int > MaterialsLookup
Definition:
LSDynaMetaData.h:109
LSDynaFamily
Definition:
LSDynaFamily.h:71
LSDynaMetaData::Title
char Title[41]
Definition:
LSDynaMetaData.h:78
LSDynaMetaData::LSDYNA_TYPES
LSDYNA_TYPES
LS-Dyna cell types.
Definition:
LSDynaMetaData.h:58
LSDynaMetaData::PartStatus
std::vector< int > PartStatus
Definition:
LSDynaMetaData.h:105
LSDynaMetaData::CellArrayStatus
std::map< int, std::vector< int > > CellArrayStatus
Definition:
LSDynaMetaData.h:100
LSDynaMetaData::AddCellArray
bool AddCellArray(int cellType, const std::string &name, int numComponents, int status)
LSDynaFamily.h
LSDynaMetaData::RigidMaterials
std::set< int > RigidMaterials
List of material IDs that indicate the associated shell element is rigid (and has no state data) ...
Definition:
LSDynaMetaData.h:90
LSDynaMetaData::MaterialsUnordered
std::vector< int > MaterialsUnordered
Definition:
LSDynaMetaData.h:108
LSDynaMetaData::RigidSurfaceSegmentSizes
std::vector< vtkIdType > RigidSurfaceSegmentSizes
Definition:
LSDynaMetaData.h:111
LSDynaMetaData::FileOffsetThisState
vtkIdType FileOffsetThisState
Definition:
LSDynaMetaData.h:117
LSDynaMetaData::MaxFileLength
vtkIdType MaxFileLength
Definition:
LSDynaMetaData.h:74
LSDynaMetaData::FileIsValid
int FileIsValid
Definition:
LSDynaMetaData.h:72
LSDynaMetaData::GetTotalMaterialCount
int GetTotalMaterialCount()
LSDynaMetaData::Reset
void Reset()
LSDynaMetaData::NumberOfNodes
vtkIdType NumberOfNodes
Definition:
LSDynaMetaData.h:83
Generated by
1.8.11