5. Library Device Interfaces - *Fil, *Lib
The library device interface modules are responsible for reading specific file formats. There are two basic types of interface modules, those that read files containing only geometry tesselation or model information (*Fil) and those that read files which contain both model and results information (*Lib). The library interface modules currently include the following,
Geometry tesselation and association information
OBJFil Read OBJ files STLFil Read 3D Systems/STL ASCII text and binary files
Model information
ABAFil Read and write ABAQUS input file AFLRFil Read Mississippi State AFLR grid file ANSFil Read and write ANSYS input file D3DFil Read LSTC LS-DYNA input file HMAFil Read Altair HyperMesh ASCII file NASFil Read and write NASTRAN bulk data input file RASFil Write PTC/Mechanica FEM Neutral Fil
Model and Results information
ABALib Read ABAQUS .fil file and read/write .odb output data base AdamsLib Read MSC/Adams ANSLib Read ANSYS .rst, .rth and .rfl results files AUTODYNLib Read ANSYS AUTODYN results files CFXLib Read CFX results files CGNSVLib Read and write CGNS data base COMSOLLib Read COMSOL sectionwise file and read/write MPH files D3DLib Read LSTC State and time history databases DPFLib Read ANSYS .rst, .rth and .rfl results files EnSightLib Read and write CEI/EnSight Casefile format FEMAPLib Read FEMAP neutral file FDILib Read FIDAP neutral file FLUENTLib Read and write FLUENT case and data file format GMVLib Read GMV files H3DLib Read Altair H3D files MarcLib Read MSC/Marc post file MemLib Read and write VKI memory objects NASLib Read and write MSC/NASTRAN OUTPUT2 file, read XDB and HDF5 NatLib Read and write VKI native libraries OpenFOAMLib Read OpenFOAM databases and write mesh entities PAMLib Read ESI/PAM-CRASH DAISY and ERF files PatLib Read and write Patran neutral and results files PERMASLib Read INTES/PERMAS result file PLOT3DLib Read NASA/PLOT3D grid, solution and function files PluginLib Read plugin-compatible files POLYFLOWLib Read POLYFLOW mesh and solution files RASLib Read PTC/Mechanica design study SAMCEFLib Read SAMCEF des files SDRCLib Read and write SDRC/IDEAS universal file STARCCMLib Read STAR-CCM .ccm results file TecplotLib Read and write Tecplot file format VTKLib Read Vtk legacy file format
All *Fil and *Lib modules behave much alike. The functions of the SDRCLib module will be used as representative of all interface modules. The functions for the PatLib, PLOT3DLib and PluginLib modules are discussed separately due to additional functions which are needed for their use.
5.1. SDRC/IDEAS Universal File - SDRCLib
Universal files may be read from any source as long as they adhere to the format standards published by SDRC (now Siemens). The methods associated with a SDRCLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_SDRCLibBegin()
- create an instance of a SDRCLib objectvdm_SDRCLibEnd()
- destroy an instance of a SDRCLib objectvdm_SDRCLibError()
- return SDRCLib object error flag
Get data functions
vdm_SDRCLibDataFun()
- fill DataFun object
Operation
vdm_SDRCLibAbort()
- set abort flagvdm_SDRCLibSetFunction()
- set a call back functions
Instance a SDRCLib
object using vdm_SDRCLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_SDRCLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_SDRCLibSetFunction()
.
The SDRC/IDEAS universal file may be either in a text or a binary format. The binary version of the file currently supports only a limited subset of the complete set of datasets supported by the text version of the file. This subset is specifically designed to support post-processing of finite element simulation results. The SDRCLib module will automatically detect a universal file in text or binary format. Universal files in text format may contain many types of data including finite element, test, geometry, drafting, etc. Currently only finite element related data is recognized contained in the following Universal Dataset numbers:
Supported Dataset Numbers
Dataset Number |
Name |
Description |
---|---|---|
151 |
Header |
Version, time, date |
164 |
Units |
Physical unit types |
15 |
Nodes |
Node definitions |
71 |
Elements |
Element definitions |
18 |
Coordinate Systems |
Coordinate systems |
436 |
Colors |
Colors |
752 |
Permanent Groups |
Node and element sets |
790 |
Loads |
Load case definition |
791 |
Restraints |
Restraint case defintion |
1710 |
Materials |
Material definition |
776 |
Properties |
Element property definition |
55, 56, 57 |
Results |
Results data |
4001 |
Stream |
Boundary condition map for streams |
4002 |
Void |
Boundary condition map for voids |
4003 |
Zone |
Boundary condition map for zones |
Supported Dataset Numbers, Binary File Format
Dataset Number |
Name |
Description |
---|---|---|
151 |
Header |
Version, time, date |
164 |
Units |
Physical unit types |
2411 |
Nodes |
Node definitions |
2412 |
Elements |
Element definitions |
2420 |
Coordinate Systems |
Coordinate systems |
2435 |
Permanent Groups |
Node and element sets |
2414 |
Results |
Results data |
4001 |
Stream |
Boundary condition map for streams |
4002 |
Void |
Boundary condition map for voids |
4003 |
Zone |
Boundary condition map for zones |
Each results dataset is appended with the solution set or load set id, set, and a step number, step. For eigenvalue analysis, the step number is the mode number, for transient analysis, the step number is the time step number. Each results dataset type may be applicable to nodes or elements.
Possible attributes of each results dataset.
Title Analysis dataset name Subtitle Analysis data ID line 1 Subtitle1 Analysis data ID line 2 Subtitle2 Analysis data ID line 3 Subtitle3 Analysis data ID line 4 Subtitle4 Analysis data ID line 5 Label Analysis dataset label Time Time Frequency Frequency LoadFactor Load factor GeneralizedMass Generalized mass DataSource Result type number
The Stream, Void and Zone datasets result in the creation of element sets and possibly node sets. The element set datasets will have the following possible attributes.
Possible attributes for streams
Stream id Stream ID Node id inlet Node label at inlet of stream Node id outlet Node label at outlet of stream Element id outlet Element label at outlet of stream Element id wall Wall element label of stream Convecting area Convecting area
Possible attributes for voids
Void id Void ID Convecting area Convecting area
Possible attributes for zones
Zone id Zone ID Convecting area Convecting area
5.1.1. Writing SDRC/IDEAS Universal Files
The SDRCLib
module also supports the writing of IDEAS ASCII Universal files. Finite
element model entities must be contained in a VisTools Model object. The
LMan module function vdm_LManSaveModel()
is used to perform the actual file writing. The file may also be written
directly using the Model object function vis_ModelWrite()
.
The interface currently writes the following dataset numbers.
Supported Dataset Numbers
Dataset Number |
Name |
Description |
---|---|---|
18 |
Coordinate Systems |
Coordinate systems |
164 |
Units |
Physical unit types |
2411 |
Nodes |
Node definitions |
2412 |
Elements |
Element definitions |
2452 |
Permanent Groups |
Node and element sets |
751 |
Multipoint constraints |
Constraint Sets for Recovery MPCs |
790 |
Loads |
Load case definition |
791 |
Restraints |
Restraint case defintion |
792 |
Temperatures |
Temperature sets |
2414 |
Results |
Results data |
5.1.2. Function Descriptions
The currently available SDRCLib functions are described in detail in this section.
-
vdm_SDRCLib *vdm_SDRCLibBegin(void)
create an instance of a SDRCLib object
Create an instance of a SDRCLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a SDRCLib object using
void vdm_SDRCLibEnd (vdm_SDRCLib *sdrclib)
Return the current value of a SDRCLib object error flag using
Vint vdm_SDRCLibError (vdm_SDRCLib *sdrclib)
- Returns:
The function returns a pointer to the newly created SDRCLib object. If the object creation fails, NULL is returned.
-
void vdm_SDRCLibEnd(vdm_SDRCLib *p)
destroy an instance of a SDRCLib object
-
Vint vdm_SDRCLibError(vdm_SDRCLib *p)
return the current value of a SDRCLib object error flag
-
void vdm_SDRCLibSetFunction(vdm_SDRCLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to SDRCLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_SDRCLibAbort(vdm_SDRCLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_SDRCLibSetFunction()
.- Parameters:
p – Pointer to SDRCLib object.
5.2. ABAQUS Input File - ABAFil
The ABAQUS input file is a text file which contains the input description of a finite element model for the ABAQUS finite element program.
The methods associated with a ABAFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_ABAFilBegin()
- create an instance of a ABAFil objectvdm_ABAFilEnd()
- destroy an instance of a ABAFil objectvdm_ABAFilError()
- return ABAFil object error flag
Get data functions
vdm_ABAFilDataFun()
- fill DataFun object
Operation
vdm_ABAFilAbort()
- set abort flagvdm_ABAFilSetFunction()
- set a call back functions
Instance a ABAFil object using vdm_ABAFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_ABAFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_ABAFilSetFunction()
.
This interface only produces datasets associated with the finite element model, no results datasets are produced. The element types commonly associated with structural and thermal analysis are supported. The PARTID.E dataset is set to the property id if properties (sections) are defined, otherwise it is set to the count of the element set. Use the VDM_CONVENTION_ALTPART to enable the assignment of part identifiers for each instance rather than properties.
The interface currently recognizes the following input keywords. Node based surfaces when referenced as master surfaces for tie and contact constraints are converted to an element face set internally. Any element face is included in the surface if all of it’s nodes are contained in the node based surface.
Supported Keywords
Miscellaneous |
Description |
---|---|
*HEADING |
Define title string |
*INCLUDE |
Read from specified file |
*PARAMETER |
Define a parameter |
*PART *ENDPART |
Define a parameter |
*INSTANCE |
Define an instance of a part |
*ASSEMBLY |
Define an assembly |
*PHYSICAL CONSTANTS |
Define physical constants |
Nodes, Elements |
Description |
---|---|
*NODE |
Create node. If the NSET |
*NSET |
Create node set |
*NCOPY |
Generate nodes. |
*NMAP |
Node locations are mapped |
*SYSTEM |
Node locations are transformed |
*ELEMENT |
Create element and element set |
*ELSET |
Create element set |
*ELCOPY |
Generate elements |
*ORIENTATION |
Define element material system, |
*KINEMATIC COUPLING |
Define rigid elements |
*RELEASE |
Define element enpoint moment |
*TRANSFORM |
Create coordinate system |
Element Properties |
Description |
---|---|
*SOLID SECTION |
Create solid element property |
*SHELL SECTION |
Create shell element property |
*MEMBRANE SECTION |
Create membrane element property |
*BEAM SECTION |
Create beam element property |
*SPRING |
Create spring dashpot element |
*MASS |
Create mass element property |
*GAP |
Create gap element property |
*CENTROID |
Define shell or beam element |
*NODAL THICKNESS |
Define shell element nodal |
*NORMAL |
Define beam element orientation |
*DISTRIBUTING COUPLING |
Define distributing coupling |
*USER ELEMENT |
Create superelement property |
*MATRIX |
Material Properties |
Description |
---|---|
*MATERIAL |
Create a material property. |
*DENSITY |
Define material properties |
*CONDUCTIVITY |
Define heat transfer material |
Restraints |
Description |
---|---|
*BOUNDARY |
Create restraint case |
*EQUATION |
Define multipoint constraint |
Contact and Co-simulation |
Description |
---|---|
*CONTACT PAIR |
Create contact pair case |
*CO-SIMULATION |
Create co-simulation case |
*SURFACE |
Define contact surface geometry |
*SURFACE BEHAVIOR |
Define contact surface properties |
*TIE |
Define tied surface |
Loads and Initial Conditions |
Description |
---|---|
*AMPLITUDE |
Create load case amplitude curve |
*CFILM |
Define concentrated load |
*DFLUX |
Define distributed load |
*FILM |
Define distributed thermal load |
*INITIAL CONDITIONS |
Create load case or initial |
*TEMPERATURE |
Define temperature |
Solution and Control |
Description |
---|---|
*STEP |
Create solution property |
*BUCKLE |
Define solution type |
*EL FILE |
Define output requests |
5.2.1. Function Descriptions
The currently available ABAFil functions are described in detail in this section.
-
vdm_ABAFil *vdm_ABAFilBegin(void)
create an instance of a ABAFil object
Create an instance of a ABAFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a ABAFil object using
void vdm_ABAFilEnd (vdm_ABAFil *abafil)
Return the current value of a ABAFil object error flag using
Vint vdm_ABAFilError (vdm_ABAFil *abafil)
- Returns:
The function returns a pointer to the newly created ABAFil object. If the object creation fails, NULL is returned.
-
void vdm_ABAFilEnd(vdm_ABAFil *p)
destroy an instance of a ABAFil object
-
Vint vdm_ABAFilError(vdm_ABAFil *p)
return the current value of a ABAFil object error flag
-
void vdm_ABAFilSetFunction(vdm_ABAFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to ABAFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_ABAFilAbort(vdm_ABAFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_ABAFilSetFunction()
.- Parameters:
p – Pointer to ABAFil object.
5.2.2. Writing ABAQUS input files
The ABAFil
module also supports the writing of ABAQUS input files. Finite element
model entities must be contained in a VisTools Model object. The LMan
module function vdm_LManSaveModel()
is used to perform the actual file writing. The file may also be written
directly using the Model object function vis_ModelWrite()
.
The interface currently writes the following input keywords.
Supported Keywords
Miscellaneous |
Description |
---|---|
*HEADING |
Define title string |
Nodes, Elements |
Description |
---|---|
*NODE |
Define node |
*NSET |
Define node set |
*ELEMENT |
Define element |
*ELSET |
Define element set |
*ORIENTATION |
Define element material system |
*KINEMATIC |
Define rigid elements |
*TRANSFORM |
Define coordinate system |
Element Properties |
Description |
---|---|
*COHESIVE SECTION |
Define cohesive element property |
*SOLID SECTION |
Define solid element property |
*SHELL SECTION |
Define membrane element property |
*BEAM GENERAL SECTION |
Define beam element property |
*SPRING |
Define spring element property |
*MASS |
Define mass element property |
*GAP |
Define gap element property |
*CENTROID |
Define shell or beam element |
*NODAL THICKNESS |
Define shell element nodal |
*NORMAL |
Define beam element orientation |
*DISTRIBUTING |
Define distributing coupling |
Material Properties |
Description |
---|---|
*MATERIAL |
Create a material property. |
*DENSITY |
Define material properties |
*CONDUCTIVITY |
Define heat transfer |
Restraints |
Description |
---|---|
*BASE MOTION |
Define restraint case |
*MPC |
Define multipoint constraint |
Contact and Co-simulation |
Description |
---|---|
*TIE |
Define contact pair case |
*CO-SIMULATION |
Define co-simulation case |
*SURFACE |
Define surface geometry |
*FRICTION |
Define contact surface properties |
Loads and Initial Conditions |
Description |
---|---|
*CFILM |
Define concentrated load |
*DFLUX |
Define distributed load |
*SFILM |
Define distributed load |
*INITIAL CONDITIONS |
Create load case or initial |
*TEMPERATURE |
Define temperature |
Solution and Control |
Description |
---|---|
*STEP |
Define solution property |
*BUCKLE |
Define solution type |
*CONTACT FILE |
Define output requests |
5.3. ABAQUS .fil and .odb File Output - ABALib
The ABAQUS .fil file is produced as a result of an execution of the ABAQUS finite element program. The ASCII and binary forms of the file are supported.
The methods associated with a ABALib object are the following.
Begin and end an instance of an object, return object error flag
vdm_ABALibBegin()
- create an instance of a ABALib objectvdm_ABALibEnd()
- destroy an instance of a ABALib objectvdm_ABALibError()
- return ABALib object error flag
Get data functions
vdm_ABALibDataFun()
- fill DataFun object
Operation
vdm_ABALibAbort()
- set abort flagvdm_ABALibSetFunction()
- set a call back functions
Instance a ABALib object using vdm_ABALibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_ABALibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_ABALibSetFunction()
.
The ABAQUS .fil consists of finite element model and results data. The PARTID.E dataset is set to the finite element type.
Supported Records, Model
General, Nodes, |
Record Type |
Description |
---|---|---|
1900, 1990 |
none |
Element definitions |
1901 |
none |
Node definitions |
1902 |
none |
Active degrees of freedom |
1921 |
none |
ABAQUS Version, etc. |
1922 |
none |
Heading |
1931, 1932 |
none |
Node set |
1933, 1934 |
none |
Element set |
1940 |
none |
Label cross-reference |
Each dataset name in the results data section is appended with the step number, step and increment number, incr.
Possible attributes of each results dataset.
Title , Analysis heading Label , Step data line description Time , Time Frequency , Frequency GeneralizedMass , Generalized mass LoadFactor , Load proportionality factor. DataSource , record number
Supported Records, Results
*NODE FILE |
Record Type |
Description |
Dataset |
---|---|---|---|
101 |
U |
Displacements, |
D |
102 |
V |
Velocities, |
V |
103 |
A |
Accelerations, |
A |
104 |
RF |
Reaction |
R |
105 |
EPOT |
Electrical |
ELEC_POT |
106 |
CF |
Point loads, |
XF |
107 |
COORD |
Coordinates, |
X |
108 |
POR |
Pore or |
PRES |
109 |
RVF |
Reaction fluid |
VOLUME_FLUX |
106 |
TF |
Total forces |
TF |
201 |
NT |
Temperatures |
TEMP |
204 |
RFL |
Reaction flux |
R_HEAT_FLOW |
204 |
CFL |
Concentrated |
XF_HEAT_FLOW |
*EL FILE |
Record Type |
Description |
Specific Type |
---|---|---|---|
2 |
TEMP |
Temperatures |
TEMP |
5 |
SDV |
Solution-
dependent |
SDV |
6 |
VOIDR |
Void ratio |
VOID_RATIO |
8 |
COORD |
Coordinates |
X |
10 |
NFLUX |
Nodal flux |
EN_FLUX |
11 |
S |
Stresses, |
S |
12 |
SINV |
Stress |
S.[VONMISES], |
13 |
SF |
Section forces |
SFM |
14 |
ENER |
Energy densities |
SE_DENSITY |
15 |
NFORC |
Nodal forces |
EN_FORC |
18 |
POR |
Pore or
acoustic |
PRES |
19 |
ELEN |
Energy summed |
KE, SE |
21 |
E |
Total strain, |
E |
22 |
PE |
Plastic strains |
E.[PLAST], |
23 |
CE |
Creep strains |
E.[CREEP], |
25 |
EE |
Total elastic |
E.[ELAST] |
27 |
STH |
Section thickness |
THICKNESS |
28 |
HFL |
Heat flux vector |
HEAT_FLUX |
29 |
SE |
Section strains |
SEK |
44 |
CFAILURE |
Failure measures |
FAIL_INDEX.[PLY] |
62 |
PHS |
Stress
components, |
S |
63 |
RS |
RMS values of |
S.[RMS] |
65 |
PHE |
Strain
components, |
E |
66 |
RE |
RMS values of |
E.[RMS] |
73 |
PEEQ |
Equivalent |
E.[EQUIV,PLAST] |
74 |
PRESS |
Mean pressure stress |
S.[MEANPRES] |
74 |
MISES |
Mises stress |
S.[VONMISES] |
78 |
EVOL |
Whole element volume |
VOLUME |
88 |
THE |
Thermal strains |
E.[THERMAL] |
89 |
LE |
Logarithmic strains |
E |
90 |
NE |
Nominal strains |
E |
91 |
ER |
Mechanical |
E_RATE |
401 |
SP |
Principal stresses |
S.[PRINCIPAL] |
402 |
ALPHAP |
Principal values of back-stress |
S.[PRINCIPAL.Back] |
403 |
EP |
Principal strains |
E.[PRINCIPAL] |
404 |
NEP |
Principal |
E.[PRINCIPAL.NOM] |
405 |
LEP |
Principal |
E.[PRINCIPAL.LOG] |
*CONTACT
FILE |
Record Type |
Description |
Specific Type |
---|---|---|---|
1511 |
CSTRESS |
Contact tractions |
PRES.[CONTACT] |
1521 |
CDISP |
Contact clearance |
SD |
5.3.1. Writing ABAQUS .fil data files
The ABALib
module also supports a limited capability to write finite element model
entities and results to ABAQUS .fil data file format. The .fil file is
written in binary format. Finite element model entities and results must
be contained in VisTools Model and State
objects. The LMan module functions
vdm_LManSaveModel()
and vdm_LManSaveState()
are used to perform the actual file writing. The interface currently
writes the following entities on record types.
Nodes
1901
Elements
SYS_SHAPEHEX as C3D8, C3D20, C3D27 on 1900 SYS_SHAPEWED as C3D6, C3D15 on 1900 SYS_SHAPETET as C3D4, C3D10 on 1900 SYS_SHAPEQUAD,SYS_ELEM_SHELL as S4, S8, S9 on 1900 SYS_SHAPETRI,SYS_ELEM_SHELL as STRI3, STRI6 on 1900 SYS_ELEM_BEAM as B31 on 1900 SYS_ELEM_TRUSS as T3D2, T3D3 on 1900 SYS_ELEM_GAP as GAPUNI on 1900
Results
SYS_RES_D on 101 SYS_RES_V on 102 SYS_RES_A on 103 SYS_RES_R on 104 SYS_RES_TEMP on 201 SYS_RES_R_HEAT_FLOW on 204 SYS_RES_S on 11 SYS_RES_E on 21 SYS_RES_SE on 14 SYS_RES_HEAT_FLUX on 28
5.3.2. ABAQUS .odb Output Data Base
The ABAQUS .odb file is produced as a result of an execution of the ABAQUS finite element program. The ABAQUS .odb consists of finite element model and results data.
The internal .odb file format is changed occasionally and as a result older .odb files may not be able to be read directly by the current .odb interface. Two new methods have been introduced to detect this condition and upgrade the old .odb file to the current .odb format so that it may be opened and accessed. The non standard methods associated with a ABALib object are the following.
Non standard
vdm_ABALibGetInteger()
- test for upgrade requiredvdm_ABALibUpgradeOdb()
- upgrade .odb file to new version
After attempting to open an .odb file and encountering an open error,
use the function vdm_ABALibGetInteger()
to query for the an upgrade requirement. If the .odb file may be
upgraded, use vdm_ABALibUpgradeOdb()
to actually upgrade the old .odb file. The upgraded .odb file may then
be opened. The PARTID.E dataset is set to the part id. Use the
VDM_CONVENTION_ALTPART to enable the assignment of part identifiers
for each instance rather than part. Use the convention,
VDM_CONVENTION_EIP to generate element integration point results.
Use VDM_CONVENTION_NOINTERNALSETS to avoid processing internally
generated entity sets. Use VDM_CONVENTION_NOHISTORYOUTPUT to avoid
processing history output data. Use VDM_CONVENTION_SECTNUM to number
layers according to section point rank.
Each dataset name in the results data section is appended with the step number, step and increment number, incr.
Possible attributes of each results dataset.
Title , Analysis heading Label , Step data line description Sublabel , Step name Time , Time Frequency , Frequency GeneralizedMass , Generalized mass LoadFactor , Load proportionality factor. DataSource , output variable
Supported Records, Results
Node |
Description |
Dataset |
---|---|---|
U |
Displacement |
D |
V |
Velocity |
V |
A |
Accelerations |
A |
COORD |
Coordinate |
X |
RF |
Reaction Force |
R |
CF |
Point Loads |
XF |
TF |
Total Forces |
TF |
NT |
Temperature |
TEMP |
RFL |
Reaction heat flow |
R_HEAT_FLOW |
CFL |
Applied heat flow |
XF_HEAT_FLOW |
EPOT |
All Electric potential |
ELEC_POT[SOLID,TOT] |
EPOTE |
All fluid Electric potential |
ELEC_POT[FLUID,TOT] |
NNCE |
Ion concentration |
CONC.[FLUID] |
NNCS |
Species concentration |
CONC.[SOLID] |
NNC |
All normalized concentration |
CONC.[NORMALIZED] |
Element |
Description |
Dataset Root |
---|---|---|
S |
Stress |
S |
E |
Strain |
E |
SF |
Section force and |
SFM |
SE |
Section strain, |
SEK |
EE |
Elastic strain |
E.[ELAST] |
PE |
Plastic strain |
E.[PLAST] |
CE |
Creep strain |
E.[CREEP] |
PEEQ |
Equivalent plastic strain |
E.[EQUIV,PLAST] |
CEEQ |
Equivalent creep |
E.[EQUIV,CREEP] |
THE |
Thermal strain |
E.[THERMAL] |
MISES |
VonMises stress |
S.[VONMISES] |
TRESCA |
Tresca stress |
S.[TRESCA] |
PRESS |
Mean pressure |
S.[MEANPRES] |
STH |
Section thickness |
THICKNESS |
HFL |
Heat flux |
HEAT_FLUX |
EFLX |
Electric flux |
ELEC_FLUX |
ELSE |
Strain energy |
SE |
ELKE |
Kinetic energy |
KE |
EVOL |
Volume |
VOLUME |
ESEDEN |
Strain energy density |
SE_DENSITY |
EKEDEN |
Kinetic energy |
KE_DENSITY |
NFORC1 |
Element force |
EN_FORC |
NFLUX1 |
Element flux |
EN_FLUX |
CONCE |
Ion concentration in the fluid |
CONC.[FLUID] |
CONCS |
Species concentration the solid |
CONC.[SOLID] |
ELECPOT |
Electric potential in the solid |
ELEC_POT.[SOLID] |
ELECPOTE |
Electric potential in the fluid |
ELEC_POT.[FLUID] |
5.3.3. Function Descriptions
The currently available ABALib functions are described in detail in this section.
-
vdm_ABALib *vdm_ABALibBegin(void)
create an instance of a ABALib object
Create an instance of a ABALib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a ABALib object using
void vdm_ABALibEnd (vdm_ABALib *abalib)
Return the current value of a ABALib object error flag using
Vint vdm_ABALibError (vdm_ABALib *abalib)
- Returns:
The function returns a pointer to the newly created ABALib object. If the object creation fails, NULL is returned.
-
void vdm_ABALibEnd(vdm_ABALib *p)
destroy an instance of a ABALib object
-
Vint vdm_ABALibError(vdm_ABALib *p)
return the current value of a ABALib object error flag
-
void vdm_ABALibGetInteger(vdm_ABALib *p, Vint type, Vint *param)
test for upgrade required
Query for integer information. The integer query
ABAFIL_UPGRADEODB
returns a flag indicating whether an .odb file which had been previously opened requires upgrading. A non-zero value is returned if upgrading is required. If upgrading is required, usevdm_ABALibUpgradeOdb()
to upgrade the .odb file.- Errors
SYS_ERROR_ENUM
is generated if an improper type is specified.
- Parameters:
p – Pointer to ABALib object.
type – Type of integer information to query
x=ABALIB_UPGRADEODB Upgrade .odb required
param – [out] Returned integer information
-
void vdm_ABALibSetFunction(vdm_ABALib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to ABALib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_ABALibAbort(vdm_ABALib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_ABALibSetFunction()
.- Parameters:
p – Pointer to ABALib object.
-
void vdm_ABALibUpgradeOdb(vdm_ABALib *p, Vchar *odbpath, Vchar *newodbpath)
upgrade .odb file to new version
Upgrade an existing .odb file to be compatible with the current compiled interface libraries.
- Errors
SYS_ERROR_OPERATION
is generated if the upgrade fails.
- Parameters:
p – Pointer to ABALib object.
odbpath – Path name of existing .odb file
newodbpath – Path name of new upgraded .odb file
5.4. Adams files - AdamsLib
Read MSC/Adams files.
The methods associated with a AdamsLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_AdamsLibBegin()
- create an instance of a AdamsLib objectvdm_AdamsLibEnd()
- destroy an instance of a AdamsLib objectvdm_AdamsLibError()
- return AdamsLib object error flag
Get data functions
vdm_AdamsLibDataFun()
- fill DataFun object
Operation
vdm_AdamsLibAbort()
- set abort flagvdm_AdamsLibSetFunction()
- set a call back functions
Instance a AdamsLib object using
vdm_AdamsLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_AdamsLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_AdamsLibSetFunction()
.
5.4.1. Function Descriptions
The currently available AdamsLib functions are described in detail in this section.
-
vdm_AdamsLib *vdm_AdamsLibBegin(void)
create an instance of a AdamsLib object
Create an instance of a AdamsLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a AdamsLib object using
void vdm_AdamsLibEnd (vdm_AdamsLib *adamslib)
Return the current value of a AdamsLib object error flag using
Vint vdm_AdamsLibError (vdm_AdamsLib *adamslib)
- Returns:
The function returns a pointer to the newly created AdamsLib object. If the object creation fails, NULL is returned.
-
void vdm_AdamsLibEnd(vdm_AdamsLib *p)
destroy an instance of a AdamsLib object
-
Vint vdm_AdamsLibError(vdm_AdamsLib *p)
return the current value of a AdamsLib object error flag
-
void vdm_AdamsLibSetFunction(vdm_AdamsLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to AdamsLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_AdamsLibAbort(vdm_AdamsLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_AdamsLibSetFunction()
.- Parameters:
p – Pointer to AdamsLib object.
5.5. AFLR (Mississippi State) Grid File - AFLRFil
The AFLR grid file format is associated with the AFLR grid generation program.
The methods associated with a AFLRFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_AFLRFilBegin()
- create an instance of a AFLRFil objectvdm_AFLRFilEnd()
- destroy an instance of a AFLRFil objectvdm_AFLRFilError()
- return AFLRFil object error flag
Get data functions
vdm_AFLRFilDataFun()
- fill DataFun object
Operation
vdm_AFLRFilAbort()
- set abort flagvdm_AFLRFilSetFunction()
- set a call back functions
Instance a AFLRFil object using
vdm_AFLRFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_AFLRFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_AFLRFilSetFunction()
.
The boundary triangles and quadrilaterals and generated interior tetrahedra, pyramids, wedges and hexahedra. The interface automatically detects the file format, ie ASCII or binary. The PARTID.E dataset is set to the surface identifier for boundary elements and volume indentifer for interior elements.
5.5.1. Function Descriptions
The currently available AFLRFil functions are described in detail in this section.
-
vdm_AFLRFil *vdm_AFLRFilBegin(void)
create an instance of a AFLRFil object
Create an instance of a AFLRFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a AFLRFil object using
void vdm_AFLRFilEnd (vdm_AFLRFil *aflrfil)
Return the current value of a AFLRFil object error flag using
Vint vdm_AFLRFilError (vdm_AFLRFil *aflrfil)
- Returns:
The function returns a pointer to the newly created AFLRFil object. If the object creation fails, NULL is returned.
-
void vdm_AFLRFilEnd(vdm_AFLRFil *p)
destroy an instance of a AFLRFil object
-
Vint vdm_AFLRFilError(vdm_AFLRFil *p)
return the current value of a AFLRFil object error flag
-
void vdm_AFLRFilSetFunction(vdm_AFLRFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to AFLRFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_AFLRFilAbort(vdm_AFLRFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_AFLRFilSetFunction()
.- Parameters:
p – Pointer to AFLRFil object.
5.6. ANSYS Input File - ANSFil
The ANSYS input file is a text file which contains the input description of a finite element model for the ANSYS finite element program.
The methods associated with a ANSFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_ANSFilBegin()
- create an instance of a ANSFil objectvdm_ANSFilEnd()
- destroy an instance of a ANSFil objectvdm_ANSFilError()
- return ANSFil object error flag
Get data functions
vdm_ANSFilDataFun()
- fill DataFun object
Operation
vdm_ANSFilAbort()
- set abort flagvdm_ANSFilSetFunction()
- set a call back functions
Instance a ANSFil object using vdm_ANSFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_ANSFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_ANSFilSetFunction()
.
This interface only produces datasets associated with the finite element model, no results datasets are produced. The element types commonly associated with structural and thermal analysis are supported. The total number of ANSYS commands is quite large and ANSFil supports only a small but important subset. This subset is that which is supported by the ANSYS CDWRITE facility. A number of additional commands are also supported which are commonly generated by commercial pre-processing programs. By default, the PARTID.E dataset is set to the property id. Use the VDM_CONVENTION_ALTPART to enable the assignment of part identifiers and part names using body ids and name embedded in /COM comment lines. A property id is generated for each unique set of REAL, MAT, SECNUM and TYPE number combinations.
The interface currently recognizes the following input commands.
Supported Commands
Miscellaneous |
Description |
---|---|
/COM |
Comment |
/TITLE |
Define title string |
/STITLE |
Define subtitle string |
Units |
Description |
---|---|
EMUNIT |
Create Units |
Nodes, Elements, |
Description |
---|---|
ESEL |
Create node and element sets |
CSYS |
Specify coordinate system |
CERIG |
Create elements |
ESYS |
Specify element coordinate system |
ET |
Define element type |
KEYOPT |
Specify element options |
LOCAL |
Create coordinate system |
MAT |
Specify element material |
N |
Create nodes |
NROTAT |
Specify node coordinate system |
REAL |
Specify element property |
SECNUM |
Specify section property |
TSHAP |
Specify target segment geometry |
TYPE |
Specify element type |
Element Properties |
Description |
---|---|
R |
Create an element property |
Material Properties |
Description |
---|---|
MP |
Create a material property. |
Restraints |
Description |
---|---|
D |
Specify a DOF constraint at nodes |
CE |
Define a multipoint constraint |
CECMOD |
Define a multipoint
constraint |
CP |
Specify a coupled DOF at nodes |
M |
Specify retained superelement |
Loads |
Description |
---|---|
F |
Specify a concentrated load |
BFE |
Specify an element body force |
SFE |
Specify a distributed load |
Solution and Control |
Description |
---|---|
ANTYPE |
Specify analysis type |
SOLVE |
Create solution property |
5.6.1. Writing ANSYS Input Files
The ANSFil
module also supports the writing of ANSYS input files. Finite element
model entities must be contained in a VisTools Model object. The LMan
module function vdm_LManSaveModel()
is used to perform the actual file writing. The file may also be written
directly using the Model object function vis_ModelWrite()
.
The form of the input file is subject to parameters set by the following function.
Control form of input file
vdm_ANSFilSetParami()
- set control parameters
The interface currently writes the following input commands.
Supported Commands
Miscellaneous |
Description |
---|---|
/TITLE |
Define title string |
/STITLE |
Define subtitle string |
Nodes, Elements,
Coordinate |
Description |
---|---|
ESEL |
Define coordinate system |
EN |
Define element coordinate system |
ET |
Define element type |
KEYOPT |
Define element options |
LOCAL |
Define coordinate system |
MAT |
Define element material |
N |
Define element property |
SECNUM |
Define section property |
TYPE |
Define element type |
CERIG |
Define rigid elements |
Element Properties |
Description |
---|---|
R |
Define an element property |
Material Properties |
Description |
---|---|
MP |
Define a material property. |
Restraints |
Description |
---|---|
D |
Define a DOF constraint at nodes |
CE |
Define a multipoint constraint |
IC |
Define an initial condition |
Loads |
Description |
---|---|
F |
Define a concentrated load at |
BF |
Define an element body force load |
SFE |
Define a distributed load |
ACEL |
Define a inertia load |
Solution and Control |
Description |
---|---|
ANTYPE |
Define solution property |
FINISH |
End solution |
5.6.2. Function Descriptions
The currently available ANSFil functions are described in detail in this section.
-
vdm_ANSFil *vdm_ANSFilBegin(void)
create an instance of a ANSFil object
Create an instance of a ANSFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a ANSFil object using
void vdm_ANSFilEnd (vdm_ANSFil *ansfil)
Return the current value of a ANSFil object error flag using
Vint vdm_ANSFilError (vdm_ANSFil *ansfil)
- Returns:
The function returns a pointer to the newly created ANSFil object. If the object creation fails, NULL is returned.
-
void vdm_ANSFilEnd(vdm_ANSFil *p)
destroy an instance of a ANSFil object
-
Vint vdm_ANSFilError(vdm_ANSFil *p)
return the current value of a ANSFil object error flag
-
void vdm_ANSFilSetParami(vdm_ANSFil *p, Vint ptype, Vint iparam)
set control parameters
Specify parameters to control the form of the ANSYS input file which is written.
The parameter
ANSFIL_CONTROLCARDS
toggles the writing of controls cards. The control cards include the module slash commands such as/PREP7
and/SOLUTION
,SOLVE
andFINISH
. By defaultANSFIL_CONTROLCARDS
is on.- Errors
VIS_ERROR_ENUM
is generated if an improper ptype is specified.
- Parameters:
p – Pointer to ANSFil object.
ptype – Type of display parameter to set
x=ANSFIL_CONTROLCARDS Toggle writing of control cards
iparam – Specifies the integer value that ptype will be set to.
-
void vdm_ANSFilSetFunction(vdm_ANSFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to ANSFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_ANSFilAbort(vdm_ANSFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_ANSFilSetFunction()
.- Parameters:
p – Pointer to ANSFil object.
5.7. ANSYS .rst, .rth, .rmg, .rfl Results Files - ANSLib
The ANSYS .rst, .rth, .rmg and .rfl files are binary results files produced during an execution of ANSYS for structural, thermal, electro-magnetic and fluid flow analysis. The results files contain model information, loads and boundary conditions, and results data.
The methods associated with a ANSLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_ANSLibBegin()
- create an instance of a ANSLib objectvdm_ANSLibEnd()
- destroy an instance of a ANSLib objectvdm_ANSLibError()
- return ANSLib object error flag
Get data functions
vdm_ANSLibDataFun()
- fill DataFun object
Operation
vdm_ANSLibAbort()
- set abort flagvdm_ANSLibSetFunction()
- set a call back functionsvdm_ANSLibSetSearch()
- set search optionsvdm_ANSLibSetSearchPath()
- set search path
Instance a ANSLib object using vdm_ANSLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_ANSLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_ANSLibSetFunction()
.
The PARTID.E dataset is set to the property id, PID.E. Node and
element sets are generated for named components for files generated by
ANSYS release 18.2 and higher. Node and elements are also generated for
the master and duplicate models in cyclic analysis.
Each dataset name in the results data section is appended with the load step number, step and the substep number, incr. The substep number is incremented from one within a load step number.
Node results datasets
D R XF A V TEMP R_HEAT_FLOW XF_HEAT_FLOW PRES VOLT J MAG_POT TURB_KE TURB_ED DENS VISC COND VISC.[EFF] COND.[EFF] TEMP.[TOT] STREAM PRES_COEF MACH PRES.[TOT] HEAT_FLUX FILM_COEF YPLUS UTAU
Element results datasets
S E E.[ELAST] E.[PLAST] E.[CREEP] E.[THERMAL] SF SD PRES.[CONTACT] TRAC.[CONTACT] STAT.[CONTACT] TEMP_GRAD HEAT_FLUX ELEC_FIELD ELEC_FLUX MAG_FIELD MAG_FLUX J_DENSITY HEAT VOLUME SE TE KE SFM FAIL_INDEX
Each dataset in the results data section has dataset attributes which correspond to the time value associated with the step. One or more of the following dataset attributes are available for each state.
Possible attributes of each results dataset.
Time , Time Frequency , Frequency LoadFactor , Load proportionality factor. Title , Title Subtitle , Subtitle DataSource , record identifier, recid
5.7.1. Function Descriptions
The currently available ANSLib functions are described in detail in this section.
-
vdm_ANSLib *vdm_ANSLibBegin(void)
create an instance of a ANSLib object
Create an instance of a ANSLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a ANSLib object using
void vdm_ANSLibEnd (vdm_ANSLib *anslib)
Return the current value of a ANSLib object error flag using
Vint vdm_ANSLibError (vdm_ANSLib *anslib)
- Returns:
The function returns a pointer to the newly created ANSLib object. If the object creation fails, NULL is returned.
-
void vdm_ANSLibEnd(vdm_ANSLib *p)
destroy an instance of a ANSLib object
-
Vint vdm_ANSLibError(vdm_ANSLib *p)
return the current value of a ANSLib object error flag
-
void vdm_ANSLibSetFunction(vdm_ANSLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to ANSLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_ANSLibAbort(vdm_ANSLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_ANSLibSetFunction()
.- Parameters:
p – Pointer to ANSLib object.
-
void vdm_ANSLibSetSearch(vdm_ANSLib *p, Vint search)
set search options
Set search type. Defaults to
ANSLIB_SEARCH_OFF
. IfANSLIB_SEARCH_CDB
is specified, the ANSYS .cdb file speci byvdm_ANSLibSetSearchPath()
is scanned for named components, and added to the library datasets as node and/or element sets.- Errors
SYS_ERROR_ENUM
is generated if an improper search is specified.
- Parameters:
p – Pointer to ANSLib object.
search – Search type
x=ANSLIB_SEARCH_OFF Reads single results file =ANSLIB_SEARCH_CDB Reads additional .cdb file
-
void vdm_ANSLibSetSearchPath(vdm_ANSLib *p, Vint search, Vchar *pathname)
set search path
Set search path to the file type specified by
vdm_ANSLibSetSearch()
. There is no default.- Errors
SYS_ERROR_ENUM
is generated if an improper search is specified.
- Parameters:
p – Pointer to ANSLib object.
search – Search type
x=ANSLIB_SEARCH_CDB Specify path to .cdb fi
pathname – Path name
5.8. ANSYS AUTODYN results files - AUTODYNLib
The ANSYS AUTODYN results database is a collection of files resident in a single directory resulting from an execution of ANSYS AUTODYN. Support for the AUTODYN results file requires 3rd party software from ANSYS.
The methods associated with a AUTODYNLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_AUTODYNLibBegin()
- create an instance of a AUTODYNLib objectvdm_AUTODYNLibEnd()
- destroy an instance of a AUTODYNLib objectvdm_AUTODYNLibError()
- return AUTODYNLib object error flag
Get data functions
vdm_AUTODYNLibDataFun()
- fill DataFun object
Operation
vdm_AUTODYNLibAbort()
- set abort flagvdm_AUTODYNLibSetFunction()
- set a call back functions
Instance a AUTODYNLib object using
vdm_AUTODYNLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_AUTODYNLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_AUTODYNLibSetFunction()
.
The key file must be any .adres file located in the directory. The results files contain model and results data. The PARTID.E dataset is set to the part number. Each dataset name in the results data section is appended with a time step number.
Each dataset in the results data section has dataset attributes which correspond to the time value associated with the step. One or more of the following dataset attributes are available for each state.
Possible attributes of each results dataset.
Time , Time DataSource , Internal AUTODYN variable name
5.8.1. Function Descriptions
The currently available AUTODYNLib functions are described in detail in this section.
-
vdm_AUTODYNLib *vdm_AUTODYNLibBegin(void)
create an instance of a AUTODYNLib object
Create an instance of a AUTODYNLib object. Memory is allocated for the object private data and the pointer to the data is returned.
- Returns:
The function returns a pointer to the newly created AUTODYNLib object. If the object creation fails, NULL is returned.
-
void vdm_AUTODYNLibEnd(vdm_AUTODYNLib *p)
destroy an instance of a AUTODYNLib object
-
Vint vdm_AUTODYNLibError(vdm_AUTODYNLib *p)
return the current value of a AUTODYNLib object error flag
-
void vdm_AUTODYNLibSetFunction(vdm_AUTODYNLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to AUTODYNLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_AUTODYNLibAbort(vdm_AUTODYNLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_AUTODYNLibSetFunction()
.- Parameters:
p – Pointer to AUTODYNLib object.
-
void vdm_AUTODYNLibDataFun(vdm_AUTODYNLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to AUTODYNLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.9. CFX results file - CFXLib
The CFX format file is generated by the ANSYS CFX solver. The file suffix is .res.
The methods associated with a CFXLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_CFXLibBegin()
- create an instance of a CFXLib objectvdm_CFXLibEnd()
- destroy an instance of a CFXLib objectvdm_CFXLibError()
- return CFXLib object error flag
Get data functions
vdm_CFXLibDataFun()
- fill DataFun object
Operation
vdm_CFXLibAbort()
- set abort flagvdm_CFXLibSetFunction()
- set a call back functions
Instance a CFXLib object using vdm_CFXLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_CFXLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_CFXLibSetFunction()
.
Support for the CFX results file requires 3rd party software from ANSYS. The PARTID.E dataset is set to the zone number. The results file only contains results at nodes.
Each results dataset name is appended with the time step number, id.
Possible attributes of each results dataset.
Time , Time DataSource , export variable name
5.9.1. Function Descriptions
The currently available CFXLib functions are described in detail in this section.
-
vdm_CFXLib *vdm_CFXLibBegin(void)
create an instance of a CFXLib object
Create an instance of a CFXLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a CFXLib object using
void vdm_CFXLibEnd (vdm_CFXLib *cfxlib)
Return the current value of a CFXLib object error flag using
Vint vdm_CFXLibError (vdm_CFXLib *cfxlib)
- Returns:
The function returns a pointer to the newly created CFXLib object. If the object creation fails, NULL is returned.
-
void vdm_CFXLibEnd(vdm_CFXLib *p)
destroy an instance of a CFXLib object
-
Vint vdm_CFXLibError(vdm_CFXLib *p)
return the current value of a CFXLib object error flag
-
void vdm_CFXLibSetFunction(vdm_CFXLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL.
- Parameters:
p – Pointer to CFXLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
5.10. CGNS data base - CGNSVLib
The CGNS data base is a collection of conventions and software for the storage and retrieval of CFD data. Support for the CGNS data base requires 3rd party software from the CGNS organization available at the following URL.
The methods associated with a CGNSVLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_CGNSVLibBegin()
- create an instance of a CGNSVLib objectvdm_CGNSVLibEnd()
- destroy an instance of a CGNSVLib objectvdm_CGNSVLibError()
- return CGNSVLib object error flag
Get data functions
vdm_CGNSVLibDataFun()
- fill DataFun object
Operation
vdm_CGNSVLibAbort()
- set abort flagvdm_CGNSVLibSetFunction()
- set a call back functions
Non standard
vdm_CGNSVLibSetWriteFileType()
- specify export file typevdm_CGNSVLibSetSearch()
- set user specified search types
Instance a CGNSVLib object using
vdm_CGNSVLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_CGNSVLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_CGNSVLibSetFunction()
.
The CGNS data base is supported for both reading and writing. The data base file name usually contains a “.cgns” suffix.
The CGNS reader supports both structured and unstructured zones. All topology types are supported. The PARTID.E dataset is set to the zone/section id. Elements in each structured zone are assigned a single part identifier. Elements in each section of an unstructured zone are assigned a single part identifier. The zone/section ids are assigned sequentially starting from 1 as they are encountered.
Each results dataset name is appended with the flow solution index number, id.
Possible attributes of each results dataset.
Time , Time DataSource , field name
This interface supports the import of unknown variables. Any specific CGNS variable name (data name identifier for flow solution quantity) which does not match the current list of VdmTools specific variable names will be imported as SYS_RES_UNKNOWN. The dataset name will include the CGNS variable name immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Supported Variable Names, Results
CGNS Variable Name |
Dataset |
---|---|
Temperature |
TEMP |
TemperatureStagnation |
TEMP.[STAG] |
Entropy |
ENTROPY |
Enthalpy |
H |
EnthalpyStagnation |
H.[STAG] |
EnergyStagnation |
ENERGY.[STAG] |
EnergyInternal |
ENERGY.[INTERNAL] |
EnergyStagnationDensity |
ENERGY_DENSITY.[STAG] |
SkinFriction |
WALL_SHEAR |
TurbulentDistance |
TURB_DIST |
TurbulentEnergyKinetic |
TURB_KE |
ReynoldsStress |
S.[REYNOLDS] |
TurbulentDissipationRate |
TURB_ED |
ViscosityEddy |
VISC_EDDY |
Prandtl |
PRANDTL |
Pressure |
PRES |
CoefPressure |
PRES_COEF |
PressureStagnation |
PRES.[STAG] |
PressureDynamic |
PRES.[DYNAMIC] |
Density |
DENS |
Velocity |
V |
Momentum |
P |
Vorticity |
VORTICITY |
EnergyKinetic |
KE |
SpecificHeatVolume |
CP |
Mach |
MACH |
StreamFunction |
STREAM |
The convention, VDM_CONVENTION_DOUBLE, can be used to export floating point data in single or double precision. The default export precision is single. All nodes and elements are exported as a single unstructured zone. All CGNS topology types are supported except polygons. A section is exported for all solid elements of dimension equal to the CGNS physical dimension with a similar VIS_PARTID element association. A section is exported for all interface elements of dimension equal to one less than the CGNS physical dimension with a similar VIS_PARTID element association and a similar partid of an attached solid element. A section is also exported for all other elements with a similar VIS_PARTID element association.
There is an option using a non standard method to specify the file type used when exporting to a CGNS file. The file types are HDF5 and ADF.
Scalar, vector and symmetric tensor data types are exported, all others are ignored. All element node results are converted to an element result for output. All node and element results are converted to the global coordinate system. If a VdmTools specific type is written, the CGNS variable names in the table above are first searched, otherwise the specific variable type contents are used and abbreviated as needed.
5.10.1. Function Descriptions
The currently available CGNSVLib functions are described in detail in this section.
-
vdm_CGNSVLib *vdm_CGNSVLibBegin(void)
create an instance of a CGNSVLib object
Create an instance of a CGNSVLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a CGNSVLib object using
void vdm_CGNSVLibEnd (vdm_CGNSVLib *cgnsvlib)
Return the current value of a CGNSVLib object error flag using
Vint vdm_CGNSVLibError (vdm_CGNSVLib *cgnsvlib)
- Returns:
The function returns a pointer to the newly created CGNSVLib object. If the object creation fails, NULL is returned.
-
void vdm_CGNSVLibEnd(vdm_CGNSVLib *p)
destroy an instance of a CGNSVLib object
-
Vint vdm_CGNSVLibError(vdm_CGNSVLib *p)
return the current value of a CGNSVLib object error flag
-
void vdm_CGNSVLibSetFunction(vdm_CGNSVLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to CGNSVLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_CGNSVLibAbort(vdm_CGNSVLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_CGNSVLibSetFunction()
.- Parameters:
p – Pointer to CGNSVLib object.
-
void vdm_CGNSVLibDataFun(vdm_CGNSVLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
-
void vdm_CGNSVLibSetSearch(vdm_CGNSVLib *p, Vint search)
set user specified search types
Set search type. Defaults to
CGNSVLIB_SEARCH_OFF
.- Errors
SYS_ERROR_ENUM
is generated if an improper search is specified.
- Parameters:
p – Pointer to CGNSVLib object.
search – Search type
x=CGNSVLIB_SEARCH_OFF Reads a single file =CGNSVLIB_SEARCH_DIRNUM Searches based on directory number =CGNSVLIB_SEARCH_DIRNUMFILENUM Searches based on directory and file number =CGNSVLIB_SEARCH_FILENUM Searches based on file number
-
void vdm_CGNSVLibSetWriteFileType(vdm_CGNSVLib *p, Vint filetype)
specify export file type
Set file type used for export. The default type is
CGNSVLIB_ADF
.- Errors
SYS_ERROR_ENUM
is generated if an improper filetype is specified.
- Parameters:
p – Pointer to CGNSVLib object.
filetype – Type of file type for export
x=CGNSVLIB_HDF5 HDF5 file format =CGNSVLIB_ADF ADF file format
5.11. COMSOL MPH and Sectionwise file - COMSOLLib
The COMSOL Multiphysics file is an ASCII or binary file. The file name usually contains the letters “mph”. The ASCII file usually has the extension .txt and the binary file has the extension .bin. The COMSOL Sectionwise file is an ASCII file - usually with extension .txt - produced by COMSOL. More information about COMSOL is available at the URL
The methods associated with a COMSOLLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_COMSOLLibBegin()
- create an instance of a COMSOLLib objectvdm_COMSOLLibEnd()
- destroy an instance of a COMSOLLib objectvdm_COMSOLLibError()
- return COMSOLLib object error flag
Get data functions
vdm_COMSOLLibDataFun()
- fill DataFun object
Operation
vdm_COMSOLLibAbort()
- set abort flagvdm_COMSOLLibSetFunction()
- set a call back functions
Instance a COMSOLLib object using
vdm_COMSOLLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_COMSOLLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_COMSOLLibSetFunction()
.
The COMSOL MPH file contains either mesh entities or results.
The COMSOL Sectionwise file contains a triangular discretization in two dimensions or a tetrahedron discretization in three dimensions. The geometry is followed by a series of nodal scalar results.
Each results dataset name is appended with the flow solution index number, id.
Possible attributes of each results dataset.
Time , Time DataSource , field name
This interface supports the import of unknown variables. Any specific variable name which does not match the current list of VdmTools specific variable names will be imported as SYS_RES_UNKNOWN. The dataset name will include the COMSOL variable name immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Supported Variable Names, Results
COMSOL Variable Name |
Dataset |
---|---|
p |
PRES |
spf.U |
V.[MAG] |
5.11.1. Function Descriptions
The currently available COMSOLLib functions are described in detail in this section.
-
vdm_COMSOLLib *vdm_COMSOLLibBegin(void)
create an instance of a COMSOLLib object
Create an instance of a COMSOLLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a COMSOLLib object using
void vdm_COMSOLLibEnd (vdm_COMSOLLib *comsollib)
Return the current value of a COMSOLLib object error flag using
Vint vdm_COMSOLLibError (vdm_COMSOLLib *comsollib)
- Returns:
The function returns a pointer to the newly created COMSOLLib object. If the object creation fails, NULL is returned.
-
void vdm_COMSOLLibEnd(vdm_COMSOLLib *p)
destroy an instance of a COMSOLLib object
-
Vint vdm_COMSOLLibError(vdm_COMSOLLib *p)
return the current value of a COMSOLLib object error flag
-
void vdm_COMSOLLibSetFunction(vdm_COMSOLLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to COMSOLLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_COMSOLLibAbort(vdm_COMSOLLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_COMSOLLibSetFunction()
.- Parameters:
p – Pointer to COMSOLLib object.
5.12. LSTC LS-DYNA input file - D3DFil
The LSTC LS-DYNA input file is a text file which contains the input description of a finite element model for the LS-DYNA finite element program.
The methods associated with a D3DFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_D3DFilBegin()
- create an instance of a D3DFil objectvdm_D3DFilEnd()
- destroy an instance of a D3DFil objectvdm_D3DFilError()
- return D3DFil object error flag
Get data functions
vdm_D3DFilDataFun()
- fill DataFun object
Operation
vdm_D3DFilAbort()
- set abort flagvdm_D3DFilSetFunction()
- set a call back functions
Instance a D3DFil object using vdm_D3DFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_D3DFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_D3DFilSetFunction()
.
This interface only produces datasets associated with the finite element model, no results datasets are produced. The element types commonly associated with structural analysis are supported. The PARTID.E dataset is set to the part id. The interface currently recognizes the following input keywords.
Supported Keywords
Miscellaneous |
Description |
---|---|
*TITLE |
Create title string |
*INCLUDE |
Read from specified file |
Nodes, Elements, Coordinate |
Description |
---|---|
*NODE |
Create node, add constraints |
*SET_NODE_LIST |
Create node set, the BOX |
*ELEMENT_SOLID_{OPTION} |
Create 3D solid element. |
*ELEMENT_SHELL_{OPTION} |
Create 3D shell element. |
*ELEMENT_BEAM_{OPTION} |
Create 3D beam element. |
*ELEMENT_MASS *ELEMENT_INERTIA, |
Create mass element and mass element property |
*ELEMENT_DISCRETE |
Create spring dashpot element |
*SET_BEAM |
Create element set |
*DEFINE_COORDINATE_NODES |
Create coordinate system |
Element Properties |
Description |
---|---|
*PART |
Create element property |
*SECTION_SOLID |
Define solid element properties |
*SECTION_SHELL |
Define shell element properties |
*SECTION_BEAM |
Define beam element properties |
Material Properties |
Description |
---|---|
*MAT_ELASTIC |
Create linear elastic |
Loads, Initial Conditions |
Description |
---|---|
*LOAD_NODE |
Define concentrated load |
*DEFINE_CURVE |
Create load curve |
Restraints |
Description |
---|---|
*BOUNDARY_SPC |
Define degree of freedom |
*CONSTRAINED_LINEAR |
Define multipoint constraint |
5.12.1. Function Descriptions
The currently available D3DFil functions are described in detail in this section.
-
vdm_D3DFil *vdm_D3DFilBegin(void)
create an instance of a D3DFil object
Create an instance of a D3DFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a D3DFil object using
void vdm_D3DFilEnd (vdm_D3DFil *d3dfil)
Return the current value of a D3DFil object error flag using
Vint vdm_D3DFilError (vdm_D3DFil *d3dfil)
- Returns:
The function returns a pointer to the newly created D3DFil object. If the object creation fails, NULL is returned.
-
void vdm_D3DFilEnd(vdm_D3DFil *p)
destroy an instance of a D3DFil object
-
Vint vdm_D3DFilError(vdm_D3DFil *p)
return the current value of a D3DFil object error flag
-
void vdm_D3DFilSetFunction(vdm_D3DFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to D3DFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_D3DFilAbort(vdm_D3DFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_D3DFilSetFunction()
.- Parameters:
p – Pointer to D3DFil object.
5.13. LSTC LS-DYNA State and Time History Databases - D3DLib
The state and/or time history databases are produced as a result of an execution of the LS-DYNA program offered by Livermore Software Technology Corporation (LSTC). The interface supports both single and double precision files.
The methods associated with a D3DLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_D3DLibBegin()
- create an instance of a D3DLib objectvdm_D3DLibEnd()
- destroy an instance of a D3DLib objectvdm_D3DLibError()
- return D3DLib object error flag
Get data functions
vdm_D3DLibDataFun()
- fill DataFun object
Operation
vdm_D3DLibAbort()
- set abort flagvdm_D3DLibSetFunction()
- set a call back functions
Non standard
vdm_D3DLibSetSearch()
- set user specified search types
Instance a D3DLib object using
vdm_D3DLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_D3DLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_D3DLibSetFunction()
.
The state database consists of a series (family) of files generally named d3plot, d3plot01, d3plot02, etc. The key file to be opened is the first file in the family, d3plot. There are three major sections in the database; control data, geometry data, and state data. The data management system maps dataset names and attributes to all data in each section of the database. The PARTID.E dataset is set to the material id. Each dataset name in the state data section is appended with the state number, state.
The spot weld force file, swforc, is read, by default, if it exists
in the same directory as the key state d3plot file. The node contact
force file, ncforc, is read, by default, if it exists in the same
directory as the key state d3plot file. Note that the time steps of
the node contact forces may not correspond exactly to the state times.
In this case the dataset id1 identifier is the same as the state
number (base state) of the state time which is the largest time that is
less than or equal to the node contact force time. An additional id2
identifer is appended which counts serially the number of node contact
force datasets which are larger than the base state. Use
vdm_D3DLibSetSearch()
to change the search options for these files.
The time history database also consists of three major sections; control data, geometry data and time history data. The PARTID.E dataset is set to the material id.
Supported Variable Names, Results
Dataset |
LS-DYNA State Value |
---|---|
X |
NODEDATA |
S |
ELEMDATA |
DENS.[FLUID] |
ELEMDATA ALE |
ID.[GAS].PCL |
PARTICLE DATA |
SF.[AXIAL,WELD] |
swforc |
FORCE.[CONTACT] |
ncforc |
Each dataset in the state data section has dataset attributes which correspond to the time word and global data items associated with each state on the database. One or more of the following dataset attributes are available for each state.
Possible attributes of each results dataset.
Time , Time TotalEnergy , Total Energy KineticEnergy , Kinetic Energy StrainEnergy , Strain Energy XMomentum , Momentum X-Component YMomentum , Momentum Y-Component ZMomentum , Momentum Z-Component InternalWork , Internal Work DataSource , file name Phase , phase
5.13.1. Function Descriptions
The currently available D3DLib functions are described in detail in this section.
-
vdm_D3DLib *vdm_D3DLibBegin(void)
create an instance of a D3DLib object
Create an instance of a D3DLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a D3DLib object using
void vdm_D3DLibEnd (vdm_D3DLib *d3dlib)
Return the current value of a vD3DLib} object error flag using
Vint vdm_D3DLibError (vdm_D3DLib *d3dlib)
- Returns:
The function returns a pointer to the newly created D3DLib object. If the object creation fails, NULL is returned.
-
void vdm_D3DLibEnd(vdm_D3DLib *p)
destroy an instance of a D3DLib object
-
Vint vdm_D3DLibError(vdm_D3DLib *p)
return the current value of a D3DLib object error flag
-
void vdm_D3DLibSetFunction(vdm_D3DLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to D3DLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_D3DLibAbort(vdm_D3DLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_D3DLibSetFunction()
.- Parameters:
p – Pointer to D3DLib object.
-
void vdm_D3DLibSetSearch(vdm_D3DLib *p, Vint search)
set user specified search types
Set search type. By default all searching is enabled.
- Parameters:
p – Pointer to D3DLib object.
search – Search type
x=D3DLIB_SEARCH_SWFORC Search for swforc file =D3DLIB_SEARCH_SWFORC_OFF Do not search for swforc file =D3DLIB_SEARCH_NCFORC Search for ncforc file =D3DLIB_SEARCH_NCFORC_OFF Do not search for ncforc file
5.14. ANSYS Data Processing Framework .rst, .rth, .rmg and .rfl Results Files - DPFLib
The Data Processing Framework (DPF) from ANSYS, provides a toolbox for accessing model simulation data. Such Framework is able to read .rst, .rth, .rmg and .rfl files. Those files are produced during an execution of ANSYS for structural, thermal, electro-magnetic and fluid flow analyses. The DPFLib Library is a wrapper to such API. The user could decide to load their .rst files either using the standard ANSLib object or using the DPFLib object. Please notice that the current version of DPFLib has partial support of the full capabilities of Ansys DPF API.
The methods associated with a DPFLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_DPFLibBegin()
- create an instance of a DPFLib objectvdm_DPFLibEnd()
- destroy an instance of a DPFLib objectvdm_DPFLibError()
- return DPFLib object error flag
Get data functions
vdm_DPFLibDataFun()
- fill DataFun object
Data
vdm_DPFLibGetConnect()
- Get a reference to the internal connect objectvdm_DPFLibReadDataset()
- Query the data related to a given dataset
Instance a DPFLib object using vdm_DPFLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_DPFLibDataFun()
.
to query mesh releated information: the following list of data set are available
Nodal mesh datasets
X.N - Node Coordinates NID.N - Node User Identifier
Element mesh datasets
ELEM.NODE.EL - Element Connectivity ELEM.SIZE.E - Element Connectivity Size ELEM.SHAP.E - Element Topological Shape ELEM.MIJK.E - Element Topological Order EID.E - Element User Identifier
Supported Variable Names, Results
Ansys DPF Variable Name |
Dataset |
---|---|
Displacement |
D |
Force |
XF |
Temperature |
TEMP |
Energy-stiffness matrix |
K_MAT |
Volume |
VOLUME |
Stress |
S |
Strain |
E |
thermal dissipation energy |
TE |
Kinetic Energy |
KE |
Element nodal Forces |
EN_FORC |
Heat flux |
HEAT_FLUX |
Temperature Gradient |
TEMP_GRAD |
Acceleration |
A |
Velocity |
V |
Structural temperature |
TEMP |
The mesh information can be queried from the Connect object. We strongly advise the user to use the Connect object instead of the datasets. The connect object not only has the information of the mesh but also have logic to search and compute derived values from the mesh. The connect object can be queried using:
vdm_DPFLibGetConnect(vdm_DPFLib *p, vis_Connect **connect)
for query the results, you need the dataset index obtained from the library and then call
vdm_DPFLibReadDataset(vdm_DPFLib *p, Vint datasetIndex, void* data)
The buffer (data) needs to be allocated previous to this call.
5.14.1. Function Descriptions
The currently available DPFLib functions are described in detail in this section.
-
vdm_DPFLib *vdm_DPFLibBegin(void)
create an instance of a DPFLib object
Create an instance of a DPFLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a DPFLib object using
void vdm_DPFLibEnd (vdm_DPFLib *dpflib)
Return the current value of a DPFLib object error flag using
Vint vdm_DPFLibError (vdm_DPFLib *dpflib)
- Returns:
The function returns a pointer to the newly created DPFLib object. If the object creation fails, NULL is returned.
-
void vdm_DPFLibEnd(vdm_DPFLib *p)
destroy an instance of a DPFLib object
-
void vdm_DPFLibOpen(vdm_DPFLib *p, Vint mode, Vchar *filename, Vint type)
Open the giving file using the DFPLib.
Open the given file and load the Connect object internally Retrieve the connect object using See
vdm_DPFLibGetConnect(vdm_DPFLib *p, vis_Connect **connect)
- Parameters:
p – Pointer to DPFLib object.
mode – opening mode
filename – full path to file name
type – only supported for SYS_ANSYS_DPF
-
void vdm_DPFLibReadDataset(vdm_DPFLib *p, Vint datasetIndex, void *data)
Read the dataset data using the DFPLib.
Read and fill the data with the values of the dataset. This call will trigger a reading of the data within the files. In this case, using ansys::dpf API
- Errors
SYS_ERROR_VALUE
is generated if the datasetIndex is not found in the library
- Parameters:
p – Pointer to DPFLib object.
datasetIndex – Vint dataset index
data – [out] allocated buffer pointer of size dataset_lrec
-
void vdm_DPFLibGetConnect(vdm_DPFLib *p, vis_Connect **connect)
This method set the connect to point to the internal connect object.
Notice . The internal DPFLib will deallocate the connect once termination, the parameter connect might dangle. Here an example of how to use this method properly
vis_Connect* connect = NULL; vdm_DPFLibGetConnect(vdm_DPFLib_object, &connect)
- Parameters:
p – Pointer to DPFLib object.
connect – Pointer of a Pointer to connect
-
void vdm_DPFLibGetNumEntities(vdm_DPFLib *p, Vint entitytype, Vint *numentity)
get number of Elements, Nodes, Faces or Edges
Return the number of entities of the requested type. If type is an unrecognizable type, then numentity is returned as zero. This is equivalent to call vis_ConnectNumber() using the connect object.
- Parameters:
p – Pointer to DPFLib object.
entitytype – Entity type
=SYS_ELEM Element =SYS_NODE Node =SYS_FACE Face =SYS_EDGE Edge
numentity – [out] Number of entities of requested type
-
Vint vdm_DPFLibError(vdm_DPFLib *p)
return the current value of a DPFLib object error flag
Report total number of errors notified. This will reset the counter to zero after
- Parameters:
p – Pointer to DPFLib object.
- Returns:
Integer error count
-
void vdm_DPFLibGetLibrary(vdm_DPFLib *p, vdm_Library **library)
get library object associated with library device
Get Library object associated with a library device. Use the Library object to retrieve generic information about the datasets and attributes on the library device. See the descriptions of the Library, Dataset and Attribute modules.
-
void vdm_DPFLibNumDatasets(vdm_DPFLib *p, Vint *numdatasets)
get number of datasets on library
Get the number of datasets on a library.
- Parameters:
p – Pointer to DPFLib object.
numdatasets – [out] Number of datasets on library.
-
void vdm_DPFLibNumAttributes(vdm_DPFLib *p, Vint datasetIndex, Vint *numattributes)
get number of dataset attributes
Get the number of dataset attributes.
- Parameters:
p – Pointer to DPFLib object.
datasetIndex – Vint identifying the dataset object.
numattributes – [out] Number of dataset attributes.
-
void vdm_DPFLibGetAttVal(vdm_DPFLib *p, Vint datasetIndex, Vint iatt, void *value)
get attribute values for the given datasetindex
Return an valued attribute.
- Errors
SYS_ERROR_OPERATION
is generated if the value is not defined
- Parameters:
p – Pointer to DPFLib object.
datasetIndex – Vint identifying the dataset object.
iatt – Vint identifying the attribute type.
value – [out] attribute values address
-
void vdm_DPFLibInqAttribute(vdm_DPFLib *p, Vint idst, Vint iatt, Vchar name[], Vint *length, Vint *type)
inquire of defined name, length, and type as output arguments
-
void vdm_DPFLibInqDataset(vdm_DPFLib *p, Vint datasetIndex, Vchar name[], Vlong *lrec, Vint *nrow, Vint *ncol, Vint *type)
inquire of defined name, lrec, nrow, ncol and type as output arguments
See
vdm_DatasetDef()
-
void vdm_DPFLibSetMode(vdm_DPFLib *p, Vint mode, Vint flag)
set Mode for DPFLib
Set Mode for DPFLib. For VDM_NODATAVALMODE if SYS_OFF, the datasets no defining data will be filled with zeros if SYS_ON is enabled, the buffer not defining data are going to be filled with NODATAVAL
- Parameters:
p – Pointer to DPFLib object.
mode – Vint of mode to be set : only available VDM_NODATAVALMODE
flag – flag SYS_OFF or SYS_ON
-
void vdm_DPFLibDataFun(vdm_DPFLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
-
void vdm_DPFLibAbort(vdm_DPFLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_DPFLibSetFunction()
.- Parameters:
p – Pointer to DPFLib object.
-
void vdm_DPFLibNumDomains(vdm_DPFLib *p, Vchar *filename, Vint type, Vint *numdomains)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
filename – Pathname to host file associated with the library device
type – Type of library device file, see
vdm_DataFunOpen()
.numdomains – [out] Number of domains
-
void vdm_DPFLibAppend(vdm_DPFLib *p, Vchar *filename, Vint type)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
filename – Pathname to host file associated with the library device
type – Type of library device file
=SYS_FLUENT_MESH FLUENT mesh and data file =SYS_NASTRAN_OUTPUT2 MSC/NASTRAN OUTPUT2 data file =SYS_NATIVE VKI native data base =SYS_PATRAN_RESULT MSC/Patran result file =SYS_PLOT3D_SOLUTION NASA/PLOT3D solution or function file =SYS_SDRC_UNIVERSAL SDRC universal file =SYS_STARCCM STAR-CCM results file =SYS_TECPLOT Tecplot file format
-
void vdm_DPFLibReadDatasetCols(vdm_DPFLib *p, Vint idst, Vint ncols, Vint cols[], void *buf, Vlong *lptr)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
idst – Index of dataset object to read
ncols – Number of columns
cols – Vector of column numbers
buf – [out] Pointer to array to receive dataset contents
lptr – [out] Pointer to starting position of each column in buff.
-
void vdm_DPFLibLibDataset(vdm_DPFLib *p, Vint oper, Vint idst)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
oper – Operation
=VDM_LIBDATASET_PUSH Change to child library dataset idst =VDM_LIBDATASET_POP Change to parent library =VDM_LIBDATASET_TOP Change to root library
idst – Index of dataset object representing library
-
void vdm_DPFLibGetInteger(vdm_DPFLib *p, Vint type, Vint *ivalue)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
type – Type of integer information to query
=VDM_PHASE Progress phase
ivalue – Returned integer information
-
void vdm_DPFLibGetString(vdm_DPFLib *p, Vint type, Vchar *cvalue)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
type – Type of integer information to query
=VDM_SOURCE Current data source
cvalue – [out] Returned string information
-
void vdm_DPFLibSetConvention(vdm_DPFLib *p, VConventionType convention)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
convention – Dataset and attribute convention
=VDM_CONVENTION_ALTPART Enable alternate part assign =VDM_CONVENTION_CONVERTPOLY Convert polygon and polyhedron =VDM_CONVENTION_DOUBLE Double precision geometry =VDM_CONVENTION_DOUBLERESULT Double precision results =VDM_CONVENTION_ELEMCENT Integration point data to centroid =VDM_CONVENTION_EIP Element integration point data =VDM_CONVENTION_FRAMEZERO Generate initial condition result =VDM_CONVENTION_INTERNALSETS Generate internal sets =VDM_CONVENTION_NOCOMMENT No comment card conventions =VDM_CONVENTION_NODEBC Write node boundary conditions =VDM_CONVENTION_NOEQUIV No equivalence coincident nodes =VDM_CONVENTION_NOINTERLAMINAR Ignore interlaminar results =VDM_CONVENTION_NOINTPT Ignore integration point results =VDM_CONVENTION_NOSETS Do not generate node and element sets =VDM_CONVENTION_PSHELLTHICK Use PSHELL thickness =VDM_CONVENTION_SPARSE Sparse result =VDM_CONVENTION_STARCD Assume StarCD results convention =VDM_CONVENTION_STRESSINVARIANT Generate invariant results =VDM_CONVENTION_UNIRESULTTYPE Assume uniform results over a step =VDM_CONVENTION_WALLINTER Generate wall interface elements =VDM_CONVENTION_CGNSALWAYSMIXED Force CGNS export mesh as MIXED element types =VDM_CONVENTION_ONLYSCALARSHEARPANELSTRESS Shear panel stress not presented as tensor
-
void vdm_DPFLibSetStatus(vdm_DPFLib *p, Vint status)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
status – File status to be used when opening library device.
=VDM_STATUS_NEW New file is created for writing =VDM_STATUS_OLD Old file must exist read only =VDM_STATUS_ADD Old file must exist read/write
-
void vdm_DPFLibSetIds(vdm_DPFLib *p, Vint idtype, Vint id1, Vint id2, Vint id3)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
idtype – Numeric identifier algorithm
=VDM_IDS_OFFSET Offset ids =VDM_IDS_BASE Increment ids over base =VDM_IDS_ABSOLUTE Set ids
id1 – Numeric identifier
id2 – Numeric identifier
id3 – Numeric identifier
-
void vdm_DPFLibSetFunction(vdm_DPFLib *p, Vint funtype, Vfunc *function, Vobject *object)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_DPFLibSetMonitorFunction(vdm_DPFLib *p, VDPFLibMonitorFunc *function, Vobject *object)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
function – Pointer to monitor callback function.
object – Pointer to the object to be returned as function argument
-
void vdm_DPFLibSetConnect(vdm_DPFLib *p, vis_Connect *connect)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
-
void vdm_DPFLibDefDataset(vdm_DPFLib *p, const Vchar *name, Vlong lrec, Vint nrow, Vint ncol, Vint type, Vint *idst)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
name – Name given to dataset
lrec – Length of dataset contents in type units
nrow – Number of dataset rows
ncol – Number of dataset columns
type – Data type of dataset contents
=SYS_INTEGER Integer, type Vint =SYS_FLOAT Single precision, type Vfloat =SYS_HOLLERITH Hollerith, type Vuint =SYS_DOUBLE Double precision, type Vdouble =SYS_COMPLEX Complex, type Vfloat[2] =SYS_DOUBLECOMPLEX Double Complex, type Vdouble[2]
idst – Index of generated dataset
-
void vdm_DPFLibWriteDataset(vdm_DPFLib *p, Vint idst, void *buff)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
idst – Index of dataset object to read
buff – Pointer to array to dataset contents
-
void vdm_DPFLibDefAttribute(vdm_DPFLib *p, Vint idst, const Vchar *name, Vint length, Vint type, Vint *iatt)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
idst – Dataset index
name – Name given to attribute
length – Length of attribute value in type units
type – Data type of attribute value
=SYS_INTEGER Integer, type Vint =SYS_FLOAT Single precision, type Vfloat =SYS_CHAR Character, type Vchar =SYS_DOUBLE Double precision, type Vdouble
iatt – [out] Index of generated attribute
-
void vdm_DPFLibSetAttVal(vdm_DPFLib *p, Vint idst, Vint iatt, void *value)
Undefined function.
Set the value of an attribute. This function may only be called on writeable library devices such as a native data base.
Get value as an output argument using
void vdm_DataFunGetAttVal (vdm_DataFun *datafun, Vint idst, Vint iatt, void *value)
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to DPFLib object.
idst – Index of dataset
iatt – Index of attribute
value – Pointer to attribute value
5.15. EnSight Casefile format - EnSightLib
The EnSight Casefile format consists of a Case file and associated files.
The methods associated with a EnSightLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_EnSightLibBegin()
- create an instance of a EnSightLib objectvdm_EnSightLibEnd()
- destroy an instance of a EnSightLib objectvdm_EnSightLibError()
- return EnSightLib object error flag
Get data functions
vdm_EnSightLibDataFun()
- fill DataFun object
Operation
vdm_EnSightLibAbort()
- set abort flagvdm_EnSightLibSetFunction()
- set a call back functions
Instance a EnSightLib
object using vdm_EnSightLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_EnSightLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_EnSightLibSetFunction()
.
The EnSight Casefile format is supported for both reading and writing. The Case file points to all other needed files including model geometry and variables. The Case file usually contains a “.case” suffix. The reader supports both structured and unstructured parts. All topology types are supported including polygon and polyhedron. The PARTID.E dataset is set to the part id.
Each results dataset name is appended with the time solution number which is encoded in the file name number.
Possible attributes of each results dataset.
Frequency , Frequency Time , Time Title , Title Subtitle , Subtitle DataSource , file name
This interface supports the import of unknown variables. Any specific variable description which does not match the current list of VdmTools specific variable names will be imported as SYS_RES_UNKNOWN. The dataset name will include the Ensight variable description immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Supported Variable Names, Results
Ensight Variable Description |
Dataset |
---|---|
Displacement |
D |
Pressure |
PRES |
Strain |
E |
Stress |
S |
Temperature |
TEMP |
Velocity |
V |
The Ensight writer only supports binary Ensight Gold format. All floating point data is exported in single precision. All nodes and elements are exported as unstructured parts. A part is exported for all elements with a similar VIS_PARTID element association. All linear and Serendipity parabolic elements, polygons and polyhedra are written. Lagrange elements are ignored.
Scalar, vector and symmetric tensor data types are exported, all others are ignored. All element node results are converted to an element result for output. All node and element results are converted to the global coordinate system. If a VdmTools specific type is written, the Ensight variable description is set to a four character abbreviation of the “Contents” string. If an unknown type, SYS_RES_UNKNOWN, is written, the variable description is set to the first four characters of the RProp object cqua string. All blanks are replaced with underscores, “_”. The last non-zero dataset identifier is time varying, all other identifiers are embedded directly in the variable description.
5.15.1. Function Descriptions
The currently available EnSightLib functions are described in detail in this section.
-
vdm_EnSightLib *vdm_EnSightLibBegin(void)
create an instance of a EnSightLib object
Create an instance of a EnSightLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a EnSightLib object using
void vdm_EnSightLibEnd (vdm_EnSightLib *ensightlib)
Return the current value of a EnSightLib object error flag using
Vint vdm_EnSightLibError (vdm_EnSightLib *ensightlib)
- Returns:
The function returns a pointer to the newly created EnSightLib object. If the object creation fails, NULL is returned.
-
void vdm_EnSightLibEnd(vdm_EnSightLib *p)
destroy an instance of a EnSightLib object
-
Vint vdm_EnSightLibError(vdm_EnSightLib *p)
return the current value of a EnSightLib object error flag
-
void vdm_EnSightLibSetFunction(vdm_EnSightLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to EnSightLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_EnSightLibAbort(vdm_EnSightLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_EnSightLibSetFunction()
.- Parameters:
p – Pointer to EnSightLib object.
-
void vdm_EnSightLibDataFun(vdm_EnSightLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to EnSightLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.16. FEMAP Neutral File - FEMAPLib
The FEMAP Neutral File is an ASCII file which contains mesh data and results data.
The methods associated with a FEMAPLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_FEMAPLibBegin()
- create an instance of a FEMAPLib objectvdm_FEMAPLibEnd()
- destroy an instance of a FEMAPLib objectvdm_FEMAPLibError()
- return FEMAPLib object error flag
Get data functions
vdm_FEMAPLibDataFun()
- fill DataFun object
Operation
vdm_FEMAPLibAbort()
- set abort flagvdm_FEMAPLibSetFunction()
- set a call back functions
Instance a FEMAPLib object using
vdm_FEMAPLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_FEMAPLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_FEMAPLibSetFunction()
.
The FEMAP reader reads all node coordinates, element types and connectivity and coordinate systems. Constraint sets are also read. All node and element groups become node and element sets. The PARTID.E dataset is set to the property id.
Each dataset name in the results section of the file is appended with the output set number.
Possible attributes of each results dataset.
Title , Title Label , Label Time , Time Frequency , Frequency LoadFactor , Load proportionality factor DataSource , solution header
5.16.1. Function Descriptions
The currently available FEMAPLib functions are described in detail in this section.
-
vdm_FEMAPLib *vdm_FEMAPLibBegin(void)
create an instance of a FEMAPLib object
Create an instance of a FEMAPLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a FEMAPLib object using
void vdm_FEMAPLibEnd (vdm_FEMAPLib *femaplib)
Return the current value of a FEMAPLib object error flag using
Vint vdm_FEMAPLibError (vdm_FEMAPLib *femaplib)
- Returns:
The function returns a pointer to the newly created FEMAPLib object. If the object creation fails, NULL is returned.
-
void vdm_FEMAPLibEnd(vdm_FEMAPLib *p)
destroy an instance of a FEMAPLib object
-
Vint vdm_FEMAPLibError(vdm_FEMAPLib *p)
return the current value of a FEMAPLib object error flag
-
void vdm_FEMAPLibSetFunction(vdm_FEMAPLib *p, Vint funtype, Vfunc1 *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to FEMAPLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_FEMAPLibAbort(vdm_FEMAPLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_FEMAPLibSetFunction()
.- Parameters:
p – Pointer to FEMAPLib object.
5.17. FIDAP Neutral File - FDILib
The FIDAP Neutral File format is generated by ANSYS FIDAP program.
The methods associated with a FDILib object are the following.
Begin and end an instance of an object, return object error flag
vdm_FDILibBegin()
- create an instance of a FDILib objectvdm_FDILibEnd()
- destroy an instance of a FDILib objectvdm_FDILibError()
- return FDILib object error flag
Get data functions
vdm_FDILibDataFun()
- fill DataFun object
Operation
vdm_FDILibAbort()
- set abort flag
Instance a FDILib object using
vdm_FDILibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_FDILibDataFun()
.
5.17.1. Function Descriptions
The currently available FDILib functions are described in detail in this section.
-
vdm_FDILib *vdm_FDILibBegin(void)
create an instance of a FDILib object
Create an instance of a FDILib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a FDILib object using
void vdm_FDILibEnd (vdm_FDILib *fdilib)
Return the current value of a FDILib object error flag using
Vint vdm_FDILibError (vdm_FDILib *fdilib)
- Returns:
The function returns a pointer to the newly created FDILib object. If the object creation fails, NULL is returned.
-
void vdm_FDILibEnd(vdm_FDILib *p)
destroy an instance of a FDILib object
-
Vint vdm_FDILibError(vdm_FDILib *p)
return the current value of a FDILib object error flag
5.18. FLUENT Case and Data File - FLUENTLib
The FLUENT Case File format is an ASCII file format with optional embedded binary sections. There are two types of files: 1) a case file which contains the node, cell and face model information and 2) a data file which contains solution results information. The case file name usually contains a “.cas” or “.msh” suffix, the data file name usually contains a “.dat” suffix.
The methods associated with a FLUENTLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_FLUENTLibBegin()
- create an instance of a FLUENTLib objectvdm_FLUENTLibEnd()
- destroy an instance of a FLUENTLib objectvdm_FLUENTLibError()
- return FLUENTLib object error flag
Get data functions
vdm_FLUENTLibDataFun()
- fill DataFun object
Operation
vdm_FLUENTLibAbort()
- set abort flagvdm_FLUENTLibSetFunction()
- set a call back functions
Instance a FLUENTLib object using
vdm_FLUENTLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_FLUENTLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_FLUENTLibSetFunction()
.
The interface supports all cell and face types. All active cells are represented as solid elements. All inactive cells do not appear as elements, however their existence is used in the support of “hanging nodes”. The zone_id of all cells and faces represented by elements is used to generate element part identifiers. An element face or edge set is generated for each external face zone. The PARTID.E dataset is set to the zone id.
Results are read for solution record type 300 and user defined record type 314. Each results dataset name is appended with the value of the “time-step” variable in section 37 Variables. If the “time-step” variable is not present then 1 is appended.
Possible attributes of each results dataset.
Time , Time value of time step DataSource , variable name
Supported Solution Variables, Results
Fluent Subsection Id |
Dataset |
---|---|
1 |
PRES |
2 |
P |
3 |
TEMP |
4 |
H |
5 |
TURB_KE |
6 |
TURB_ED |
15 |
BODY_FORCE |
18 |
MASS_FLUX |
19 |
WALL_SHEAR |
20 |
HEAT_FLUX |
21 |
HEAT_FLUX.[RADIATION] |
35 |
YPLUS |
36 |
UTAU |
38 |
TEMP.[Wall,Inner] |
47 |
MASS_FLUX.[M1] |
48 |
MASS_FLUX.[M2] |
59 |
MACH |
67 |
TEMP.[Granular] |
70 |
VOLUME_FLUX |
80 |
VOLUME_FLUX.[M1] |
90 |
VOLUME_FLUX.[M2] |
96 |
TURB_DIST |
101 |
DENS |
102 |
MU_LAMB |
103 |
MU_TURB |
104 |
CP |
111 |
V |
114 |
V.[Wall] |
115 |
V.[M1] |
119 |
TURB_KE.[M1] |
120 |
TURB_ED.[M1] |
126 |
TURB_KE.[M2] |
127 |
TURB_ED.[M2] |
128 |
S.[REYNOLDS] |
150 |
VOF |
160 |
VOF.[M1] |
196 |
TEMP.[Variance] |
500 |
VISC_EDDY |
515 |
ENERGY.[M1] |
516 |
ENERGY.[M2] |
517 |
DENS.[M1] |
518 |
DENS.[M2] |
8553 |
V.[Wall,Original] |
5.18.1. Function Descriptions
The currently available FLUENTLib functions are described in detail in this section.
-
vdm_FLUENTLib *vdm_FLUENTLibBegin(void)
create an instance of a FLUENTLib object
Create an instance of a FLUENTLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a FLUENTLib object using
void vdm_FLUENTLibEnd (vdm_FLUENTLib *fluentlib)
Return the current value of a FLUENTLib object error flag using
Vint vdm_FLUENTLibError (vdm_FLUENTLib *fluentlib)
- Returns:
The function returns a pointer to the newly created FLUENTLib object. If the object creation fails, NULL is returned.
-
void vdm_FLUENTLibEnd(vdm_FLUENTLib *p)
destroy an instance of a FLUENTLib object
-
Vint vdm_FLUENTLibError(vdm_FLUENTLib *p)
return the current value of a FLUENTLib object error flag
-
void vdm_FLUENTLibSetFunction(vdm_FLUENTLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to FLUENTLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_FLUENTLibAbort(vdm_FLUENTLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_FLUENTLibSetFunction()
.- Parameters:
p – Pointer to FLUENTLib object.
5.19. General Mesh Viewer File Format - GMVLib
The General Mesh Viewer file is a text file which contains model and results data. The file format was originally developed by Los Alamos National Laboratory.
The methods associated with a GMVLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_GMVLibBegin()
- create an instance of a GMVLib objectvdm_GMVLibEnd()
- destroy an instance of a GMVLib objectvdm_GMVLibError()
- return GMVLib object error flag
Get data functions
vdm_GMVLibDataFun()
- fill DataFun object
Operation
vdm_GMVLibAbort()
- set abort flagvdm_GMVLibSetFunction()
- set a call back functions
Non standard
vdm_GMVLibSetSearch()
- set user specified search types
Instance a GMVLib object using
vdm_GMVLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_GMVLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_GMVLibSetFunction()
.
The PARTID.E dataset is set to the material number.
Each results dataset name is appended with the time step number, id.
Possible attributes of each results dataset.
Time , Time
A REMESH.L dataset is created for each file which satisfies the search criterion.
Possible attributes of each remesh dataset.
DataSource , File name
5.19.1. Function Descriptions
The currently available GMVLib functions are described in detail in this section.
-
vdm_GMVLib *vdm_GMVLibBegin(void)
create an instance of a GMVLib object
Create an instance of a GMVLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a GMVLib object using
void vdm_GMVLibEnd (vdm_GMVLib *gmvlib)
Return the current value of a GMVLib object error flag using
Vint vdm_GMVLibError (vdm_GMVLib *gmvlib)
- Returns:
The function returns a pointer to the newly created GMVLib object. If the object creation fails, NULL is returned.
-
void vdm_GMVLibEnd(vdm_GMVLib *p)
destroy an instance of a GMVLib object
-
Vint vdm_GMVLibError(vdm_GMVLib *p)
return the current value of a GMVLib object error flag
-
void vdm_GMVLibSetFunction(vdm_GMVLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to GMVLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_GMVLibAbort(vdm_GMVLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_GMVLibSetFunction()
.- Parameters:
p – Pointer to GMVLib object.
-
void vdm_GMVLibDataFun(vdm_GMVLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
-
void vdm_GMVLibSetSearch(vdm_GMVLib *p, Vint search)
set user specified search types
Set search type. if search is
GMVLIB_SEARCH_OFF
then a single file is read.If
GMVLIB_SEARCH_FILENUM
is specified (default), then the file being opened is the first in a directory. It is assumed that file names terminate with an integer that specify a time step id, and all time step ids larger or equal to the initially specified file are added.- Parameters:
p – Pointer to GMVLib object.
search – Search type
x=GMVLIB_SEARCH_OFF Single file =GMVLIB_SEARCH_FILENUM File names follow numbering sequence
5.20. Altair Engineering HyperMesh ASCII File - HMAFil
The HyperMesh ASCII file is a text file which contains the input description of a finite element or finite difference model. This interface supports mesh entities only, no results datasets are produced. The PARTID.E dataset is set to the component id. The interface currently recognizes the following input commands.
Supported Commands
Miscellaneous |
Description |
---|---|
*title |
Create title string |
Nodes, Elements, Coordinate |
Description |
---|---|
*node |
Create node |
*component |
Create element part |
*hexa8 |
Create 3D solid element. |
*quad4 |
Create 3D shell element. |
*bar2 |
Create 3D beam element. |
*mass |
Create mass element |
*spring |
Create spring dashpot element |
*gap |
Create gap element |
*rbe3 |
Create rigid element |
*plotel |
Create plot element |
*system |
Create coordinate system |
The methods associated with a HMAFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_HMAFilBegin()
- create an instance of a HMAFil objectvdm_HMAFilEnd()
- destroy an instance of a HMAFil objectvdm_HMAFilError()
- return HMAFil object error flag
Get data functions
vdm_HMAFilDataFun()
- fill DataFun object
Operation
vdm_HMAFilAbort()
- set abort flagvdm_HMAFilSetFunction()
- set a call back functions
Instance a HMAFil object using
vdm_HMAFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_HMAFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_HMAFilSetFunction()
.
The PARTID.E dataset is set to the component identifier.
Each results dataset is appended with two identifiers, the first is the subcase id and the second is the simulation id.
Possible attributes of each results dataset.
Time , Time Frequency , Frequency LoadFactor , Load proportionality factor DataSource , Data type name
5.20.1. Function Descriptions
The currently available HMAFil functions are described in detail in this section.
-
vdm_HMAFil *vdm_HMAFilBegin(void)
create an instance of a HMAFil object
Create an instance of a HMAFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a HMAFil object using
void vdm_HMAFilEnd (vdm_HMAFil *HMAFil)
Return the current value of a HMAFil object error flag using
Vint vdm_HMAFilError (vdm_HMAFil *HMAFil)
- Returns:
The function returns a pointer to the newly created HMAFil object. If the object creation fails, NULL is returned.
-
void vdm_HMAFilEnd(vdm_HMAFil *p)
destroy an instance of a HMAFil object
-
Vint vdm_HMAFilError(vdm_HMAFil *p)
return the current value of a HMAFil object error flag
-
void vdm_HMAFilSetFunction(vdm_HMAFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to HMAFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_HMAFilAbort(vdm_HMAFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_HMAFilSetFunction()
.- Parameters:
p – Pointer to HMAFil object.
5.21. Altair Engineering H3D File - H3DLib
The Altair H3D file contains model and results data. The file format is a proprietary format developed by Altair Enginerring and requires a toolkit from Altair.
The methods associated with a H3DLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_H3DLibBegin()
- create an instance of a H3DLib objectvdm_H3DLibEnd()
- destroy an instance of a H3DLib objectvdm_H3DLibError()
- return H3DLib object error flag
Get data functions
vdm_H3DLibDataFun()
- fill DataFun object
Operation
vdm_H3DLibAbort()
- set abort flagvdm_H3DLibSetFunction()
- set a call back functions
Instance a H3DLib object using
vdm_H3DLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_H3DLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_H3DLibSetFunction()
.
The PARTID.E dataset is set to the component identifier.
Each results dataset is appended with two identifiers, the first is the subcase id and the second is the simulation id.
Possible attributes of each results dataset.
Time , Time Frequency , Frequency LoadFactor , Load proportionality factor DataSource , Data type name
5.21.1. Function Descriptions
The currently available H3DLib functions are described in detail in this section.
-
vdm_H3DLib *vdm_H3DLibBegin(void)
create an instance of a H3DLib object
Create an instance of a H3DLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a H3DLib object using
void vdm_H3DLibEnd (vdm_H3DLib *h3dlib)
Return the current value of a H3DLib object error flag using
Vint vdm_H3DLibError (vdm_H3DLib *h3dlib)
- Returns:
The function returns a pointer to the newly created H3DLib object. If the object creation fails, NULL is returned.
-
void vdm_H3DLibEnd(vdm_H3DLib *p)
destroy an instance of a H3DLib object
-
Vint vdm_H3DLibError(vdm_H3DLib *p)
return the current value of a H3DLib object error flag
-
void vdm_H3DLibSetFunction(vdm_H3DLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to H3DLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_H3DLibAbort(vdm_H3DLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_H3DLibSetFunction()
.- Parameters:
p – Pointer to H3DLib object.
5.22. MSC/Marc Post File - MarcLib
The Marc post file format may be either an ASCII or binary file which results from an execution of Marc from MSC Software. The ASCII file format usually contains a .t19 suffix, the binary file contains a .t16 suffix.
The methods associated with a MarcLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_MarcLibBegin()
- create an instance of a MarcLib objectvdm_MarcLibEnd()
- destroy an instance of a MarcLib objectvdm_MarcLibError()
- return MarcLib object error flag
Get data functions
vdm_MarcLibDataFun()
- fill DataFun object
Operation
vdm_MarcLibAbort()
- set abort flagvdm_MarcLibSetFunction()
- set a call back functions
Instance a MarcLib object using
vdm_MarcLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_MarcLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_MarcLibSetFunction()
.
The interface reads all element types, node coordinates and coordinate systems. All node and element sets are read. Elements contained in contact bodies are placed in element sets. The PARTID.E dataset is set to the finite element type. Use the convention, VDM_CONVENTION_EIP to generate element integration point results.
Each results dataset name is appended with the values of the “increment number” and the “sub-increment number”. These numbers are incremented by one.
Possible attributes of each results dataset.
Time , Time Frequency , Frequency GeneralizedMass , Generalized mass LoadFactor , Load proportionality factor DataSource , Post code, first encountered
Supported Solution Variables, Results
Post Code |
Dataset |
---|---|
1-6 |
E |
7 |
E.[EQUIV,PLAST] |
8 |
E.[EQUIV,CREEP] |
9 |
TEMP.[TOT] |
10 |
TEMP.[INC] |
11-16 |
S |
17 |
S.[VONMISES] |
18 |
S.[MEAN,NORMAL] |
19 |
USER |
20 |
THICKNESS |
21-26 |
E.[PLAST] |
27 |
E.[EQUIV,PLAST] |
28 |
E_RATE.[PLAST] |
29 |
UNKNOWN.[SecndStateVar] |
30 |
UNKNOWN.[FormLimPar] |
31-36 |
E.[CREEP] |
37 |
E.[EQUIV,CREEP] |
38 |
E.[SWELLING] |
39 |
UNKNOWN.[ThirdStateVar] |
41-46 |
S.[CAUCHY] |
47 |
S.[EQUIV,CAUCHY] |
48 |
SE_DENSITY |
49 |
E.[Thickness] |
51-56 |
S.[HARMONIC] |
57 |
S.[EQUIV,HARMONIC] |
58 |
SE_DENSITY.[ELAST] |
59 |
S.[EQUIV,YIELD] |
60 |
S.[EQUIV,YIELD,CurTemp] |
61-66 |
S.[HARMONIC] |
67 |
S.[EQUIV,HARMONIC] |
68 |
SE_DENSITY.[PLAST] |
69 |
VOLUME |
71-76 |
E.[THERMAL] |
78 |
VOLUME.[Original] |
79 |
UNKNOWN.[Grain size] |
81-86 |
E.[CRACKING] |
87 |
VOLT |
88 |
J |
89 |
HEAT |
91-103 |
FAIL_INDEX |
108 |
S.[INTERLAMINAR,1] |
109 |
S.[INTERLAMINAR,2] |
111-116 |
S.[PrefSys] |
121-126 |
E.[ELAST] |
127 |
E.[EQUIV,ELAST] |
128 |
E.[MAX,Eng] |
129 |
E.[MIN,Eng] |
130 |
VOLT |
131-133 |
ELEC_FIELD |
134-136 |
ELEC_FLUX.[Displacement] |
137-139 |
FORCE.[LORENTZ] |
140 |
MAG_POT |
141-143 |
MAG_FIELD.[Induction] |
144-146 |
MAG_FLUX.[Intensity] |
147-149 |
J_DENSITY |
151-153 |
ELEC_FIELD |
154-156 |
ELEC_FLUX.[Displacement] |
157-159 |
FORCE.[LORENTZ] |
161-163 |
MAG_FIELD.[Induction] |
164-166 |
MAG_FLUX.[Intensity] |
167-169 |
J_DENSITY |
171 |
POROSITY |
172 |
VOID_RATIO |
173 |
PRES.[PORE] |
174 |
PRES.[Preconsolidation] |
175 |
E_RATE.[EQUIV,Viscoplastic] |
176 |
DENS.[REL] |
177 |
VOLUME.[Fraction,Damage] |
180 |
TEMP.[TOT] |
181-183 |
TEMP_GRAD |
184-186 |
HEAT_FLUX |
190 |
PRES.[TOT] |
191-193 |
PRES_GRAD |
194-196 |
MASS_FLUX |
241 |
PRES.[GASKET] |
242 |
CLOSURE.[GASKET] |
243 |
CLOSURE.[GASKET,PLAST] |
261-263 |
UNKNOWN.[BeamAxis] |
264-269 |
SFM |
270 |
UNKNOWN.[Bimoment] |
271 |
DENS.[Pyrol,Solid] |
272 |
DENS.[Pyrol,Gas] |
273 |
DENS.[FLUID] |
301-306 |
E.[TOT] |
311-316 |
S |
321-326 |
E.[PLAST] |
331-336 |
E.[CREEP] |
341-346 |
S.[CAUCHY] |
351-356 |
S.[HARMONIC] |
361-366 |
S.[HARMONIC] |
371-376 |
E.[THERMAL] |
381-386 |
E.[CRACKING] |
391-396 |
S.[PrefDir] |
401-406 |
E.[ELAST] |
411-416 |
S.[GlobalSys] |
421-426 |
E.[ELAST,GlobalSys] |
431-436 |
E.[PLAST,GlobalSys] |
441-446 |
E.[CREEP,GlobalSys] |
451-456 |
E_RATE |
461-466 |
E.[ELAST,PrefDir] |
471-476 |
S.[PK,Rebar] |
481-486 |
S.[CAUCHY] |
487 |
UNKNOWN,[RebarAngle] |
501 |
S,[INTERLAMINAR,NORMAL] |
511 |
S,[INTERLAMINAR,SHEAR] |
531 |
VOLUME.[FractionMartensite] |
541-546 |
E.[PhaseTrans] |
547 |
E.[EQUIV,PhaseTrans] |
548 |
E.[EQUIV,TWIN] |
549 |
E.[EQUIV,TRIP] |
557 |
S.[YIELD,MultiphaseAgg] |
561-563 |
ELEC_FIELD |
564-566 |
ELEC_FLUX,Displacement] |
567-569 |
FORCE.[LORENTZ] |
571-573 |
MAG_FIELD.[Induction] |
574-576 |
MAG_FLUX,[Intensity] |
577-579 |
J_DENSITY |
651 |
E.[EQUIV,PLAST,MultiphaseAgg] |
652 |
E.[EQUIV,PLAST,Austenite] |
653 |
E.[EQUIV,PLAST,Martensite] |
657 |
S.[YIELD,MultiphaseAgg] |
Quantity Identifier |
Dataset |
---|---|
1,2 |
D |
3,4 |
XF |
5,6 |
R |
7 |
V.[FLUID] |
8 |
PRES.[FLUID] |
9 |
XF.[FLUID] |
10 |
R.[FLUID] |
11 |
PRES.[SOUND] |
12 |
UNKNOWN.[ExternalSoundSource] |
13 |
UNKNOWN.[ReactionSoundSource] |
14 |
TEMP |
15 |
XF_HEAT_FLOW |
16 |
R_HEAT_FLOW |
17 |
ELEC_POT |
18 |
XF_Q |
19 |
R_Q |
20 |
MAG_POT |
21 |
XF_J |
22 |
R_J |
23 |
PRES.[PORE] |
24 |
XF_MASS_FLOW |
25 |
R_MASS_FLOW |
26 |
PRES.[Bearing] |
27 |
R.[Bearing] |
28,29 |
V |
30,31 |
A |
32,33 |
MASS.[Modal] |
34 |
PRES.[CONTACT] |
35 |
FORCE.[NORMAL,CONTACT] |
36 |
TRAC.[CONTACT,Friction] |
37 |
FORCE.[CONTACT,Friction] |
38 |
STAT.[CONTACT] |
39 |
UNKNOWN.[CONTACT,TouchedBody] |
40 |
UNKNOWN.[HerrmannVar] |
46 |
R.[Tying] |
47 |
R.[Coulomb] |
48 |
R.[Tying] |
49 |
S.[Generalized] |
5.22.1. Function Descriptions
The currently available MarcLib functions are described in detail in this section.
-
vdm_MarcLib *vdm_MarcLibBegin(void)
create an instance of a MarcLib object
Create an instance of a MarcLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a MarcLib object using
void vdm_MarcLibEnd (vdm_MarcLib *marclib)
Return the current value of a MarcLib object error flag using
Vint vdm_MarcLibError (vdm_MarcLib *marclib)
- Returns:
The function returns a pointer to the newly created MarcLib object. If the object creation fails, NULL is returned.
-
void vdm_MarcLibEnd(vdm_MarcLib *p)
destroy an instance of a MarcLib object
-
Vint vdm_MarcLibError(vdm_MarcLib *p)
return the current value of a MarcLib object error flag
-
void vdm_MarcLibSetFunction(vdm_MarcLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to MarcLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_MarcLibAbort(vdm_MarcLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_MarcLibSetFunction()
.- Parameters:
p – Pointer to MarcLib object.
5.23. Memory object - MemLib
This module supports read and write operations to a native memory object. Any VdmTools dataset may be written to such a memory object The methods associated with a MemLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_MemLibBegin()
- create an instance of a MemLib objectvdm_MemLibEnd()
- destroy an instance of a MemLib objectvdm_MemLibError()
- return MemLib object error flag
Get data functions
vdm_MemLibDataFun()
- fill DataFun object
Operation
vdm_MemLibAbort()
- set abort flagvdm_MemLibSetFunction()
- set a call back functionsvdm_MemLibStreamNum()
- query length of memory object in bytesvdm_MemLibStream()
- copy to user memory object
Non standard
vdm_MemLibGetInteger()
- get version, time and date stamps
Instance a MemLib object using vdm_MemLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_MemLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_MemLibSetFunction()
.
Use the function vdm_MemLibStreamNum()
to query for the number of bytes in the memory object. Use
vdm_MemLibStream()
to copy the data from
MemLib to a user allocated memory object. Use the function
vdm_MemLibGetInteger()
to query for the memory object version number and the date and time of
initial creation and update.
5.23.1. Function Descriptions
The currently available MemLib functions are described in detail in this section.
-
vdm_MemLib *vdm_MemLibBegin(void)
create an instance of a MemLib object
Create an instance of a MemLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a MemLib object using
void vdm_MemLibEnd (vdm_MemLib *memlib)
Return the current value of a MemLib object error flag using
Vint vdm_MemLibError (vdm_MemLib *memlib)
- Returns:
The function returns a pointer to the newly created MemLib object. If the object creation fails, NULL is returned.
-
void vdm_MemLibEnd(vdm_MemLib *p)
destroy an instance of a MemLib object
-
Vint vdm_MemLibError(vdm_MemLib *p)
return the current value of a MemLib object error flag
-
void vdm_MemLibGetInteger(vdm_MemLib *p, Vint type, Vint *param)
get version, time and date stamps
Query for integer information. The integer query
MEMLIB_VERSION
returns a version number. The parametersMEMLIB_CREATEDATE
andMEMLIB_CREATETIME
each return 3 integers indicating the day,month,year and second,minute,hour of initial creation of the file. The parametersMEMLIB_UPDATEDATE
andMEMLIB_UPDATETIME
each return 3 integers indicating the day,month,year and second,minute,hour of last update of the file.- Errors
SYS_ERROR_ENUM
is generated if an improper type is specified.
- Parameters:
p – Pointer to MemLib object.
type – Type of integer information to query
x=MEMLIB_VERSION File version =MEMLIB_CREATEDATE Creation date =MEMLIB_CREATETIME Creation time =MEMLIB_UPDATEDATE Update date =MEMLIB_UPDATETIME Update time
param – [out] Returned integer information
-
void vdm_MemLibSetFunction(vdm_MemLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to MemLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_MemLibAbort(vdm_MemLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_MemLibSetFunction()
.- Parameters:
p – Pointer to MemLib object.
-
void vdm_MemLibDataFun(vdm_MemLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
5.24. MSC/NASTRAN bulk data input file - NASFil
The NASTRAN bulk data file is a text file which contains the input description of a finite element model for the NASTRAN finite element program.
The methods associated with a NASFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_NASFilBegin()
- create an instance of a NASFil objectvdm_NASFilEnd()
- destroy an instance of a NASFil objectvdm_NASFilError()
- return NASFil object error flag
Get data functions
vdm_NASFilDataFun()
- fill DataFun object
Operation
vdm_NASFilAbort()
- set abort flagvdm_NASFilSetFunction()
- set a call back functions
Instance a NASFil object using vdm_NASFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_NASFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_NASFilSetFunction()
.
This interface only produces datasets associated with the finite element model, no results datasets are produced. The element types commonly associated with structural and thermal analysis are supported. The PARTID.E dataset is set to the property id. The NASTRAN bulk data commands have been extended by various vendors who have extended the “classic” NASTRAN commands. The NASFil module supports many of these extensions. The interface currently recognizes the following input commands.
Supported Commands
Miscellaneous |
Description |
---|---|
INCLUDE |
Read from specified file |
Executive Control |
Description |
---|---|
BEGIN BULK |
Begin bulk data section |
SOL |
Define a solution type |
CEND |
End of executive control |
Case Control |
Description |
---|---|
SETS |
Create node or element set |
ANALYSIS |
Create solution property case |
LABEL |
Define label, title and |
LOAD |
Select load case, multipoint |
METHOD |
Select EIGRL or |
ACCELERATION |
Define output request |
Nodes, Elements, Coordinate |
Description |
---|---|
GRDSET |
Set GRID defaults |
GRID |
Create node |
SPOINT |
Create scalar node |
BAROR |
Set CBAR and CBEAM |
CBAR |
Create 3D beam element |
CDAMP1 |
Create scalar spring dashpot |
CELAS1 |
Create scalar spring dashpot |
CBUSH CBUSH1D |
Create spring dashpot element |
CGAP |
Create gap element |
CHBDYE |
Create interface element |
CQUAD |
Create 2D solid element |
CPLSTN3 CPLSTN4 (NX) |
Create 2D plane strain element |
CPLSTS3 CPLSTS4 (NX) |
Create 2D plane stress element |
CHEXA |
Create 3D solid element |
CQUAD4 |
Create 3D shell element |
CSHEAR |
Create 3D membrane element |
CONROD |
Create 3D truss or beam element |
CMASS1 |
Create scalar mass element |
CONM1 |
Create mass element |
CONV |
Create interface element |
PLOTEL3 PLOTEL4 (NX) |
Create plot element |
RBE1 RBE2 RBE3 |
Create rigid element |
CORD1C CORD1R CORD1S |
Create coordinate system |
Sets and Surfaces |
Description |
---|---|
GROUP (NX) |
Create node or element set |
BSURF |
Create element face surface |
Element Properties |
Description |
---|---|
PBAR |
Create beam property |
PCOMP |
Create shell or solid composite property |
PCONV |
Create interface property |
PBUSH |
Create spring dashpot property |
PGAP |
Create gap property |
PLPLANE |
Create solid property |
PMASS |
Create mass property |
PROD |
Create truss or beam property |
PSHEAR |
Create membrane property |
PSHELL |
Create shell property |
Material Properties |
Description |
---|---|
MAT1 |
Create linear elastic |
MAT4 |
Create linear heat transfer |
MATHP |
Create hyperelastic material |
TABLEM1 |
Create material property tables |
RADM |
Create radiation material |
Loads, Initial Conditions |
Description |
---|---|
FORCE |
Define concentrated force or |
PLOAD |
Define distributed loading |
GRAV |
Define acceleration loading |
QBDY1 |
Define distributed heat flux |
QVOL |
Define volumetric heat loading |
RADBC |
Define radiation condition |
SLOAD |
Define concentrated heat loading |
LOAD |
Create load case |
TEMP |
Define nodal temperatures |
Restraints |
Description |
---|---|
SPC |
Define single point restraint |
SPCADD |
Create single point restraint |
MPC |
Define multipoint restraint |
MPCADD |
Create multipoint constraint case |
Contact, Tie, Cyclic Symmetry |
Description |
---|---|
CYCSET (NX) |
Create cyclic symmetry pair |
TIE (Optistruct) |
Create tied contact pair |
Solution and Control |
Description |
---|---|
NLPARM |
Define nonlinear solution |
EIGRL |
Define eigenvalue solution |
5.24.1. Function Descriptions
The currently available NASFil functions are described in detail in this section.
-
vdm_NASFil *vdm_NASFilBegin(void)
create an instance of a NASFil object
Create an instance of a NASFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a NASFil object using
void vdm_NASFilEnd (vdm_NASFil *nasfil)
Return the current value of a NASFil object error flag using
Vint vdm_NASFilError (vdm_NASFil *nasfil)
- Returns:
The function returns a pointer to the newly created NASFil object. If the object creation fails, NULL is returned.
-
void vdm_NASFilEnd(vdm_NASFil *p)
destroy an instance of a NASFil object
-
Vint vdm_NASFilError(vdm_NASFil *p)
return the current value of a NASFil object error flag
-
void vdm_NASFilSetFunction(vdm_NASFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to NASFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_NASFilAbort(vdm_NASFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_NASFilSetFunction()
.- Parameters:
p – Pointer to NASFil object.
5.24.2. Writing NASTRAN Input Files
The NASFil
module also supports the writing of NASTRAN input files. Finite element
model entities must be contained in a VisTools Model object. The LMan
module function vdm_LManSaveModel()
is used to perform the actual file writing. The file may also be written
directly using the Model object function
vis_ModelWrite()
. Set the GProp
object value GPROP_EXPORT_VENDOR to control the vendor specific
format to be used for some entities such as pyramid elements and surface
and tie constraints. The interface currently writes the following input
commands.
Supported Commands
Executive Control |
Description |
---|---|
BEGIN BULK |
Begin bulk data section |
SOL |
Define a solution type |
CEND |
End of executive control |
ENDDATA |
Terminate input deck |
Case Control |
Description |
---|---|
SUBCASE |
Define solution property case |
LABEL |
Define label, title and |
PARAM |
Define various solution |
LOAD |
Define load case, multipoint |
METHOD |
Define EIGRL or |
OUTPUT |
Define output request |
Nodes, Elements, Coordinate Systems |
Description |
---|---|
GRID |
Define node |
SPOINT |
Define scalar node |
CBUSH |
Define beam element |
CELAS1 |
Define scalar spring dashpot |
CGAP |
Define gap element |
CHBDYE |
Define interface element |
CQUADX |
Define 2D solid element |
CHEXA |
Define 3D solid element |
CQUAD4 |
Define 3D shell element |
CROD |
Define 3D truss or beam element |
CONM1 |
Define mass element |
CONV |
Define interface element |
RBE2 |
Define rigid element |
CORD2C |
Define coordinate system |
Element Properties |
Description |
---|---|
PROD |
Define truss property |
PBUSH |
Define beam property |
PCONV |
Define interface property |
PELAS |
Define spring dashpot property |
PGAP |
Define gap property |
PSOLID |
Define solid property |
PSHEAR |
Define membrane property |
PCOMP |
Define shell composite property |
PSHELL |
Define shell property |
Sets and Surfaces |
Description |
---|---|
SET (Optistruct) |
Create node set |
SURF (Optistruct) |
Create element face surface |
Material Properties |
Description |
---|---|
MAT1 |
Define linear elastic |
MAT5 |
Define linear heat transfer |
Loads, Initial Conditions |
Description |
---|---|
FORCE |
Define concentrated force or |
PLOAD2 |
Define distributed loading |
RFORCE |
Define acceleration loading |
QBDY1 |
Define distributed heat flux |
QVOL |
Define volumetric heat loading |
TEMP |
Define nodal temperatures |
Restraints |
Description |
---|---|
SPC |
Define single point restraint |
MPC |
Define multipoint restraint |
Contact, Tie, Cyclic Symmetry |
Description |
---|---|
TIE (Optistruct) |
Create tied contact pair |
Solution and Control |
Description |
---|---|
NLPARM |
Define nonlinear solution |
EIGRL |
Define eigenvalue solution |
5.25. NASTRAN OUTPUT2, .xdb and .h5 data files - NASLib
The NASTRAN finite element program creates a number of results data files depending upon the specific vendor of the NASTRAN program. The NASTRAN OUTPUT2 data file is a binary results database produced during an execution of the NASTRAN finite element program.
The methods associated with a NASLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_NASLibBegin()
- create an instance of a NASLib objectvdm_NASLibEnd()
- destroy an instance of a NASLib objectvdm_NASLibError()
- return NASLib object error flag
Get data functions
vdm_NASLibDataFun()
- fill DataFun object
Operation
vdm_NASLibAbort()
- set abort flagvdm_NASLibSetFunction()
- set a call back functions
Instance a NASLib object using
vdm_NASLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_NASLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_NASLibSetFunction()
.
The contents of the OUTPUT2 data file varies considerably depending upon the data blocks specified to be output. There are a number of commercial versions of NASTRAN, noteably MSC/NASTRAN and NX/NASTRAN. There are also a number of commercial finite element programs that write data in .op2 file format. Complex results are supported where applicable, both real/imaginary and magnitude/phase. The PARTID.E dataset is set to the property id. Use the convention, VDM_CONVENTION_STRESSINVARIANT to generate vonmises stress results for quadrilateral shell element stress/strain. Use the convention, VDM_CONVENTION_NOINTERLAMINAR to inhibit generation of interlaminar ply stress/strain results.
Supported Data Blocks, Model
Nodes, Coordinate Systems |
Description |
---|---|
BGPDT |
BASIC GRID POINT DEFINITION TABLE |
GPL |
GRID POINT LIST |
GPDT |
GRID POINT DEFINITION TABLE |
GEOM1 |
TABLE OF BULK DATA ENTRY IMAGES RELATED TO GEOMETRY |
CSTM |
COORDINATE SYSTEM |
Elements |
Description |
---|---|
ECT |
ELEMENT CONNECTIVITY TABLE |
GEOM2 |
TABLE OF BULK DATA ENTRIES |
GEOM4 |
TABLE OF BULK DATA ENTRY IMAGES RELATED TO RIGID ELEMENT CONNECTIVITY |
Node and Element Sets |
Description |
---|---|
CASECC |
TABLE OF BULK DATA ENTRY |
Loads |
Description |
---|---|
GEOM3 |
TABLE OF BULK DATA ENTRY |
Restraints |
Description |
---|---|
GEOM4 |
TABLE OF BULK DATA ENTRY |
Element Properties |
Description |
---|---|
EPT |
TABLE OF BULK DATA ENTRY |
Material Properties |
Description |
---|---|
MPT |
TABLE OF BULK DATA ENTRY |
Solution Properties |
Description |
---|---|
CASECC |
TABLE OF BULK DATA ENTRY |
Each results dataset is appended with two identifiers, the first is the subcase id and the second is a mode or step id. For buckling and eigenvalue analysis the second identifier is a mode id. For frequency response and transient analysis the second identifier is a step id.
Possible attributes of each results dataset.
Time , Time Frequency , Frequency LoadFactor , Load Factor ArcLength , Arc Length LoadCase , load case identifier Title , Title Subtitle , Subtitle Label , Label DataSource , data block name
Supported Data Blocks, Results
Node Results |
Description |
Dataset |
---|---|---|
OUGV1 |
OUTPUT DISPLACEMENT |
D |
TOUGV1 |
OUTPUT TEMPERATURE |
TEMP |
OPG1 |
OUTPUT LOAD VECTOR |
XF |
OQG1 |
OUTPUT SPC FORCES |
R |
OBG1 |
OUTPUT GLUE FORCES |
PRES.[GLUE] |
OBC1 |
OUTPUT CONTACT FORCES |
PRES.[CONTACT] |
OSPDSI1 |
OUTPUT CONTACT |
SEP.[CONTACT,INITIAL] |
Element Results |
Description |
Dataset |
---|---|---|
ONRGY1 |
OUTPUT ELEMENT |
SE |
OES1X |
OUTPUT ELEMENT |
S |
OSTR1 |
OUTPUT ELEMENT STRAIN |
E |
OEF1X |
OUTPUT ELEMENT FORCE |
SFM |
OES1C |
OUTPUT COMPOSITE |
S.[PLY] |
OSTR1C |
OUTPUT COMPOSITE |
E.[PLY] |
OEFIT |
OUTPUT COMPOSITE |
FAIL_INDEX.[PLY] |
OESRT |
OUTPUT COMPOSITE |
STRENGTH_RATIO.[PLY] |
OGPFB1 |
OUTPUT ELEMENT GRID |
EN_FORC |
OGK1 |
OUTPUT GASKET RESULTS |
PRES.[GASKET] |
OSHT1 |
OUTPUT SHELL |
THICKNESS |
OERPEL1 |
OUTPUT ELEMENT |
POWER |
The nonzero stress/strain and force/moment component vary for each element type. The nonzero components are listed below. Any element type not listed has all zero components.
Stress and Strain Components
Element Type |
Components |
---|---|
Solid (3D) |
xx, yy, zz, xy, yz, zx |
Solid (2D Axisymmetric, CTRIAX6) |
xx, yy, zz, 0, 0, zx |
Shell |
xx, yy, 0, xy, 0, 0 |
Beam |
xx, 0, 0, 0, 0, 0 |
Force and Moment Components
Element Type - Element Spec |
Components |
---|---|
Shell |
Nxx, Nyy, Nxy, Mxx, Myy, Mxy, |
Beam - Standard |
Nxx, Myy, Mzz, Torque, Qxy, Qzx |
Beam - Rod |
Nxx, 0, 0, Torque, 0, 0 |
SpringDashpot |
Nxx |
5.25.1. Function Descriptions
The currently available NASLib functions are described in detail in this section.
-
vdm_NASLib *vdm_NASLibBegin(void)
create an instance of a NASLib object
Create an instance of a NASLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a NASLib object using
void vdm_NASLibEnd (vdm_NASLib *naslib)
Return the current value of a NASLib object error flag using
Vint vdm_NASLibError (vdm_NASLib *naslib)
- Returns:
The function returns a pointer to the newly created NASLib object. If the object creation fails, NULL is returned.
-
void vdm_NASLibEnd(vdm_NASLib *p)
destroy an instance of a NASLib object
-
Vint vdm_NASLibError(vdm_NASLib *p)
return the current value of a NASLib object error flag
-
void vdm_NASLibSetFunction(vdm_NASLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to NASLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_NASLibAbort(vdm_NASLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_NASLibSetFunction()
.- Parameters:
p – Pointer to NASLib object.
5.25.2. Writing NASTRAN OUTPUT2 data files
The NASLib
module also supports a limited capability to write finite element model
entities and results to NASTRAN OUTPUT2 data file format. Finite element
model entities and results must be contained in VisTools
Model and State
objects. The LMan module functions
vdm_LManSaveModel()
and vdm_LManSaveState()
are used to perform the actual file writing. The interface currently
writes the following entities as records on data blocks:
Nodes
GRID on GEOM1S
Coordinate Systems
CORD2R, CORD2C, CORD2S on GEOM1S
Elements
SYS_SHAPEHEX as CHEXA on GEOM2S SYS_SHAPEWED as CHEXA on GEOM2S SYS_SHAPETET as CTETRA on GEOM2S SYS_SHAPEQUAD,SYS_ELEM_SHELL as CQUAD4, CQUAD8 on GEOM2S SYS_SHAPETRI,SYS_ELEM_SHELL as CTRIA3, CTRIA6 on GEOM2S SYS_ELEM_BEAM as CBEAM on GEOM2S SYS_ELEM_TRUSS as CONROD on GEOM2S SYS_ELEM_GAP as CGAP on GEOM2S
Loads
LCASE_FORCE as FORCE on GEOM3S LCASE_MOMENT as MOMENT on GEOM3S LCASE_TEMP as TEMP on GEOM3S
Restraints
SPC on GEOM4S
Results
SYS_RES_D, SYS_RES_V, SYS_RES_A on OUGV1 SYS_RES_XF on OPG1 SYS_RES_R on OQG1 SYS_RES_S on OES1X SYS_RES_E on OSTR1 SYS_RES_SE on ONRGY1 SYS_RES_TEMP, SYS_RES_R_HEAT_FLOW, SYS_RES_XF_HEAT_FLOW on TOUGV1 SYS_RES_TEMP_GRAD, SYS_RES_HEAT_FLUX on HOEF1
5.26. Native file - NatLib
The native file format is a VdmTools file format, it may be based on either a proprietary file organization or the publicly available HDF5 file format. The native file format supports both read and write operations. Any VdmTools dataset may be written to a native file. The methods associated with a Native file - NatLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_NatLibBegin()
- create an instance of a NatLib objectvdm_NatLibEnd()
- destroy an instance of a NatLib objectvdm_NatLibError()
- return NatLib object error flag
Get data functions
vdm_NatLibDataFun()
- fill DataFun object
Operation
vdm_NatLibAbort()
- set abort flagvdm_NatLibSetFunction()
- set a call back functions
Non standard
vdm_NatLibGetInteger()
- get version, time and date stamps
Instance a Natlib object using
vdm_NatLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_NatLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_NatLibSetFunction()
.
Native files names should be denoted by a .vdm suffix if using the
proprietary file organization, SYS_NATIVE, and a .vh5 suffix if
using the HDF5 file organization, SYS_NATIVE_HDF5. Use the function
vdm_NatLibGetInteger()
to query for the native file version number and the date and time of
initial creation and update.
5.26.1. Function Descriptions
The currently available NatLib functions are described in detail in this section.
-
vdm_NatLib *vdm_NatLibBegin(void)
create an instance of a NatLib object
Create an instance of a NatLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a NatLib object using
void vdm_NatLibEnd (vdm_NatLib *natlib)
Return the current value of a NatLib object error flag using
Vint vdm_NatLibError (vdm_NatLib *natlib)
- Returns:
The function returns a pointer to the newly created NatLib object. If the object creation fails, NULL is returned.
-
void vdm_NatLibEnd(vdm_NatLib *p)
destroy an instance of a NatLib object
-
Vint vdm_NatLibError(vdm_NatLib *p)
return the current value of a NatLib object error flag
-
void vdm_NatLibGetInteger(vdm_NatLib *p, Vint type, Vint *param)
get version, time and date stamps
Query for integer information.
The integer query
NATLIB_VERSION
returns a version number. The parametersNATLIB_CREATEDATE
andNATLIB_CREATETIME
each return 3 integers indicating the day,month,year and second,minute,hour of initial creation of the file. The parametersNATLIB_UPDATEDATE
andNATLIB_UPDATETIME
each return 3 integers indicating the day,month,year and second,minute,hour of last update of the file.- Errors
SYS_ERROR_ENUM
is generated if an improper type is specified.
- Parameters:
p – Pointer to NatLib object.
type – Type of integer information to query
=NATLIB_VERSION File version =NATLIB_CREATEDATE Creation date =NATLIB_CREATETIME Creation time =NATLIB_UPDATEDATE Update date =NATLIB_UPDATETIME Update time
param – [out] Returned integer information
-
void vdm_NatLibSetFunction(vdm_NatLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions.
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to NatLib object.
funtype – Type of callback function to set
=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_NatLibAbort(vdm_NatLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_NatLibSetFunction()
.- Parameters:
p – Pointer to NatLib object.
5.27. OBJ file - OBJFil
The OBJ format is an ASCII text file. It is a list of vertices, vertex normals, points, lines and faces.
The methods associated with a OBJFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_OBJFilBegin()
- create an instance of a OBJFil objectvdm_OBJFilEnd()
- destroy an instance of a OBJFil objectvdm_OBJFilError()
- return OBJFil object error flag
Get data functions
vdm_OBJFilDataFun()
- fill DataFun object
Operation
vdm_OBJFilAbort()
- set abort flagvdm_OBJFilSetFunction()
- set a call back functions
Instance a OBJFil object using
vdm_OBJFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_OBJFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_OBJFilSetFunction()
.
In an OBJ file, points, lines and faces are translated as elements. All faces are converted to 3-node trianglar elements assuming a triangle fan. Lines are converted to 2-node line elements. Points are converted to point elements. The PARTID.E dataset is set to group index if groups exist, other it is set to the element dimension.
5.27.1. Function Descriptions
The currently available OBJFil functions are described in detail in this section.
-
vdm_OBJFil *vdm_OBJFilBegin(void)
create an instance of a OBJFil object
Create an instance of a OBJFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a OBJFil object using
void vdm_OBJFilEnd (vdm_OBJFil *objfil)
Return the current value of a OBJFil object error flag using
Vint vdm_OBJFilError (vdm_OBJFil *objfil)
- Returns:
The function returns a pointer to the newly created OBJFil object. If the object creation fails, NULL is returned.
-
void vdm_OBJFilEnd(vdm_OBJFil *p)
destroy an instance of a OBJFil object
-
Vint vdm_OBJFilError(vdm_OBJFil *p)
return the current value of a OBJFil object error flag
-
void vdm_OBJFilSetFunction(vdm_OBJFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to OBJFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_OBJFilAbort(vdm_OBJFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_OBJFilSetFunction()
.- Parameters:
p – Pointer to OBJFil object.
5.28. OpenFOAM database - OpenFOAMLib
The OpenFOAM database is a top directory consisting of subdirectories and files containing analysis model and results data. The top directory is called case. The key file must be the controlDict file located in the system directory. The path to the key file must include the name of the top case directory.
The methods associated with a OpenFOAMLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_OpenFOAMLibBegin()
- create an instance of a OpenFOAMLib objectvdm_OpenFOAMLibEnd()
- destroy an instance of a OpenFOAMLib objectvdm_OpenFOAMLibError()
- return OpenFOAMLib object error flag
Get data functions
vdm_OpenFOAMLibDataFun()
- fill DataFun object
Operation
vdm_OpenFOAMLibAbort()
- set abort flagvdm_OpenFOAMLibSetFunction()
- set a call back functions
Instance a OpenFOAMLib object using
vdm_OpenFOAMLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_OpenFOAMLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_OpenFOAMLibSetFunction()
.
Each dataset in the state data section has a Time attribute which corresponds to the time specified by the subdirectories of case where results are found. The data source for the result is also presented as an attribute, and corresponds to the complete file path.
Each OpenFOAM result file contains a header file with a object entry. This entry is used as mnemonic to determine the type of result. Result files with unsupported mnemonics are described as SYS_RES_UNKNOWN followed by the object name within square brackets.
Supported Mnemonics:
Mnemonic |
Dataset |
---|---|
U |
SYS_RES_V |
p |
SYS_RES_PRES |
T |
SYS_RES_TEMP |
rho |
SYS_RES_DENS |
5.28.1. Function Descriptions
The currently available OpenFOAMLib functions are described in detail in this section.
-
vdm_OpenFOAMLib *vdm_OpenFOAMLibBegin(void)
create an instance of a OpenFOAMLib object
Create an instance of a OpenFOAMLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a OpenFOAMLib object using
void vdm_OpenFOAMLibEnd (vdm_OpenFOAMLib *openfoamlib)
Return the current value of a OpenFOAMLib object error flag using
Vint vdm_OpenFOAMLibError (vdm_OpenFOAMLib *openfoamlib)
- Returns:
The function returns a pointer to the newly created OpenFOAMLib object. If the object creation fails, NULL is returned.
-
void vdm_OpenFOAMLibEnd(vdm_OpenFOAMLib *p)
destroy an instance of a OpenFOAMLib object
-
Vint vdm_OpenFOAMLibError(vdm_OpenFOAMLib *p)
return the current value of a OpenFOAMLib object error flag
-
void vdm_OpenFOAMLibSetFunction(vdm_OpenFOAMLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back function
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to OpenFOAMLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_OpenFOAMLibAbort(vdm_OpenFOAMLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_OpenFOAMLibSetFunction()
.- Parameters:
p – Pointer to OpenFOAMLib object.
-
void vdm_OpenFOAMLibDataFun(vdm_OpenFOAMLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to OpenFOAMLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.29. Patran Neutral model and results file - PatLib
The Patran results files format has limited support for descriptive information concerning the data a results file may contain. Therefore two additional, non standard, functions are required when reading Patran results files to indicate the result type and the columns of data which are to be associated with the components of the result data type. The methods associated with a PatLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_PatLibBegin()
- create an instance of a PatLib objectvdm_PatLibEnd()
- destroy an instance of a PatLib objectvdm_PatLibError()
- return PatLib object error flag
Get data functions
vdm_PatLibDataFun()
- fill DataFun object
Operation
vdm_PatLibAbort()
- set abort flagvdm_PatLibSetFunction()
- set a call back functions
Non standard
vdm_PatLibSetResultCols()
- set result columnsvdm_PatLibSetResultType()
- set result type
Instance a PatLib object using
vdm_PatLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_PatLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_PatLibSetFunction()
.
If a PatLib
module is used to read model information from a Patran Neutral File,
type SYS_PATRAN_NEUTRAL, then the non standard functions are
ignored. If results files are being read, type SYS_PATRAN_RESULT,
then it may be necessary to specify the result type and columns if the
defaults are not sufficient. Note that Patran results files do not
contain any model information and by necessity must always be appended
with vdm_DataFunAppend()
rather than opened with
vdm_DataFunOpen()
.
The Patran neutral model and results files may be in either text or binary format. The current implementation only supports text formatted files. Supported results files include 1) displacement or force results file, 2) nodal results file, and 3) element results file. The beam results file and element coordinate file are not supported.
The PARTID.E dataset is set to the property id.
Possible attributes of each results dataset.
DataSource , file name
The interface currently recognizes the following Neutral System packet types.
Packet Type |
Description |
---|---|
25 |
Title Card |
26 |
Summary Data |
01 |
Node Data |
02 |
Element Data |
03 |
Material Properties |
04 |
Element Properties |
05 |
Coordinate Frames |
06 |
Distributed Loads |
07 |
Node Forces |
08 |
Node Displacements |
10 |
Node Temperatures |
14 |
MPC Data |
15 |
Nodal Heat Source |
16 |
Distributed Heat Source |
17 |
Convection Coefficients |
21 |
NAME’d Component Data |
5.29.1. Function Descriptions
The currently available PatLib functions are described in detail in this section.
-
vdm_PatLib *vdm_PatLibBegin(void)
create an instance of a PatLib object
Create an instance of a PatLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a PatLib object using
void vdm_PatLibEnd (vdm_PatLib *patlib)
Return the current value of a PatLib object error flag using
Vint vdm_PatLibError (vdm_PatLib *patlib)
- Returns:
The function returns a pointer to the newly created PatLib object. If the object creation fails, NULL is returned.
-
void vdm_PatLibEnd(vdm_PatLib *p)
destroy an instance of a PatLib object
-
Vint vdm_PatLibError(vdm_PatLib *p)
return the current value of a PatLib object error flag
-
void vdm_PatLibSetFunction(vdm_PatLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to PatLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_PatLibAbort(vdm_PatLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_PatLibSetFunction()
.- Parameters:
p – Pointer to PatLib object.
-
void vdm_PatLibSetResultCols(vdm_PatLib *p, Vint ncols, Vint icols[])
set result columns
Set columns in Patran results file to be associated with each component of the result type. Set the result type using
vdm_PatLibSetResultType()
. The column numbers, icols, start from 1 and may not exceed 200. A Patran results file may contain no more than 200 columns. By default ncols is 6 and icols is {1,2,3,4,5,6}.- Parameters:
p – Pointer to PatLib object.
ncols – Number of columns to select
icols – Column numbers to select
-
void vdm_PatLibSetResultType(vdm_PatLib *p, Vint rtype, Vint restype, Vint sect)
set result type
Set results type description. See the appropriate VisTools RProp function for explanations of restype and sect. By default rtype is
PATLIB_DISPLACEMENT
, restype isSYS_RES_D
and sect is 0.- Parameters:
p – Pointer to PatLib object.
rtype – Patran results file type
x=PATLIB_DISPLACEMENT Patran displacement/force file =PATLIB_ELEMENTAL Patran elemental file =PATLIB_NODAL Patran nodal file
restype – Results type (see
vis_RPropSetType()
)sect – Section number (see
vis_RPropSetSect()
)
5.30. ESI/PAM-CRASH DAISY and ERF file - PAMLib
The ESI/PAM-CRASH DAISY database is a binary results database produced during an execution of PAM-CRASH from ESI-GROUP. An alternate results file, ERF, uses the HDF5 database model. The .erfh5 model consists of finite element model and results data.
The methods associated with a PAMLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_PAMLibBegin()
- create an instance of a PAMLib objectvdm_PAMLibEnd()
- destroy an instance of a PAMLib objectvdm_PAMLibError()
- return PAMLib object error flag
Get data functions
vdm_PAMLibDataFun()
- fill DataFun object
Operation
vdm_PAMLibAbort()
- set abort flagvdm_PAMLibSetFunction()
- set a call back functions
Instance a PAMLib object using
vdm_PAMLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_PAMLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_PAMLibSetFunction()
.
The .DSY and ERF consists of finite element model and results data. Each dataset name in the state data section is appended with the state number, state.
Each dataset in the state data section has dataset attributes which correspond to the time word and global data items associated with each state on the database. One or more of the following dataset attributes are available for each state.
Possible attributes of each results dataset.
Time , Time TotalEnergy , Total Energy KineticEnergy , Kinetic Energy StrainEnergy , Strain Energy XVelocity , Average Velocity X-Component YVelocity , Average Velocity Y-Component ZVelocity , Average Velocity Z-Component DataSource , mnemonic
DSY Supported Mnemonics, Results
Mnemonic |
Dataset |
---|---|
N |
SFM |
DAXI |
SEK |
S |
S |
EPLE |
E.[EQUIV,PLAST] |
THIC |
THICKNESS |
INED |
SE_DENSITY |
- |
D |
- |
V |
- |
A |
ERF Supported Mnemonics, Results (followed by qualifiers, if applicable)
Mnemonic |
Dataset |
Qualifier 1 |
Qualifier 2 |
---|---|---|---|
THICKNESS |
SYS_RES_THICKNESS |
||
RFORCE |
SYS_RES_FORCE |
SYS_QUA_REL |
RESIDUAL |
EPLE |
SYS_RES_E |
SYS_QUA_EQUIV |
SYS_QUA_PLAST |
DISPLACEMENTS_NOD |
SYS_RES_D |
||
Velocity |
SYS_RES_V |
||
SPRING_Local_Force |
SYS_RES_FORCE |
SYS_QUA_LOCAL |
SPRING |
SPRING_Local_Moment |
SYS_RES_FORCE |
SYS_QUA_LOCAL |
SPRING |
Upper_Surface_engineering_Strain |
SYS_RES_E |
||
Membrane_Stress |
SYS_RES_S |
||
Acceleration |
SYS_RES_A |
||
Strainrate3D |
SYS_RES_E_RATE |
||
Max_Equivalent_Stress |
SYS_RES_S |
SYS_QUA_MAXIMUM |
SYS_QUA_EQUIV |
Min_Equivalent_Stress |
SYS_RES_S |
SYS_QUA_MINIMUM |
SYS_QUA_EQUIV |
Membrane_Equivalent_Stress |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Lower_S_Equivalent_Stress |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Upper_S_Equivalent_Stress |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Strain3D_Green_Lagrange |
SYS_RES_E |
SYS_QUA_GREEN |
|
Strain3D |
SYS_RES_E |
||
BEAM_Force |
SYS_RES_SFM |
||
Upper_S_Stress |
SYS_RES_S |
||
Rotational_Angle_local |
SYS_RES_D |
SYS_QUA_LOCAL |
|
Rotational_Velocity_global |
SYS_RES_V |
||
Thermal_Flux |
SYS_RES_HEAT_FLUX |
||
Displacement_global |
SYS_RES_D |
||
Stress3D |
SYS_RES_S |
||
Equivalent_Stress2D |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Equivalent_Stress3D |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Stress2D_Corner |
SYS_RES_S |
||
Stress3D_Corner |
SYS_RES_S |
||
Equivalent_Stress3D_Corner |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Equivalent_Stress2D_Corner |
SYS_RES_S |
SYS_QUA_EQUIV |
|
Upper_Thermal_Strain |
SYS_RES_E |
SYS_QUA_THERMAL |
|
Lower_Thermal_Strain |
SYS_RES_E |
SYS_QUA_THERMAL |
|
Moment_local |
SYS_RES_SFM |
||
Rotational_Acceleration_local |
SYS_RES_A |
SYS_QUA_LOCAL |
|
Lower_Surface_Strain |
SYS_RES_E |
||
Lower_S_Strain |
SYS_RES_E |
||
Upper_S_Strain |
SYS_RES_E |
||
BAR_Axial_Force |
SYS_RES_SFM |
||
BEAM_Rotation_N1 |
SYS_RES_SEK |
||
BEAM_Rotation_N2 |
SYS_RES_SEK |
||
Rotational_Velocity_local |
SYS_RES_V |
SYS_QUA_LOCAL |
|
Rotational_Angle_global |
SYS_RES_D |
||
Lower_Ply_Stress_XX |
SYS_RES_S |
SYS_QUA_XX |
PLY |
Lower_Ply_Stress_YY |
SYS_RES_S |
SYS_QUA_YY |
PLY |
Lower_Ply_Stress_XY |
SYS_RES_S |
SYS_QUA_XY |
PLY |
Lower_Ply_Stress_XZ |
SYS_RES_S |
SYS_QUA_ZX |
PLY |
Lower_Ply_Stress_YZ |
SYS_RES_S |
SYS_QUA_YZ |
PLY |
Upper_Ply_Stress_XX |
SYS_RES_S |
SYS_QUA_XX |
PLY |
Upper_Ply_Stress_YY |
SYS_RES_S |
SYS_QUA_YY |
PLY |
Upper_Ply_Stress_XY |
SYS_RES_S |
SYS_QUA_XY |
PLY |
Upper_Ply_Stress_XZ |
SYS_RES_S |
SYS_QUA_ZX |
PLY |
Upper_Ply_Stress_YZ |
SYS_RES_S |
SYS_QUA_YZ |
PLY |
Translational_Acceleration_local |
SYS_RES_A |
SYS_QUA_LOCAL |
|
BEAM_Moment_N1 |
SYS_RES_SFM |
||
BEAM_Moment_N2 |
SYS_RES_SFM |
||
Upper_Surface_Strain |
SYS_RES_E |
||
BAR_Axial_Strain |
SYS_RES_SEK |
||
Translational_Velocity_local |
SYS_RES_V |
SYS_QUA_LOCAL |
|
COORDINATE |
SYS_RES_X |
||
Contact_Pressure_X |
SYS_RES_TRAC |
SYS_QUA_CONTACT |
|
Contact_Pressure_Y |
SYS_RES_TRAC |
||
Contact_Pressure_Z |
SYS_RES_TRAC |
||
Contact_Pressure_N |
SYS_RES_PRES |
SYS_QUA_CONTACT |
|
Contact_Force |
SYS_RES_FORCE |
SYS_QUA_CONTACT |
|
Membrane_Stress_Res_local |
SYS_RES_SFM |
||
Rotational_Acceleration_global |
SYS_RES_A |
||
BEAM_Elongation |
SYS_RES_SEK |
||
Lower_S_Stress |
SYS_RES_S |
||
Lower_Ply_Strain_XX |
SYS_RES_E |
SYS_QUA_XX |
PLY |
Lower_Ply_Strain_YY |
SYS_RES_E |
SYS_QUA_YY |
PLY |
Lower_Ply_Strain_XY |
SYS_RES_E |
SYS_QUA_XY |
PLY |
Lower_Ply_Strain_XZ |
SYS_RES_E |
SYS_QUA_ZX |
PLY |
Lower_Ply_Strain_YZ |
SYS_RES_E |
SYS_QUA_YZ |
PLY |
Upper_Ply_Strain_XX |
SYS_RES_E |
SYS_QUA_XX |
PLY |
Upper_Ply_Strain_YY |
SYS_RES_E |
SYS_QUA_YY |
PLY |
Upper_Ply_Strain_XY |
SYS_RES_E |
SYS_QUA_XY |
PLY |
Upper_Ply_Strain_XZ |
SYS_RES_E |
SYS_QUA_ZX |
PLY |
Upper_Ply_Strain_YZ |
SYS_RES_E |
SYS_QUA_YZ |
PLY |
Lower_Ply_Tsai_Wu_Criterion |
SYS_RES_FAT_DAMAGE |
PLY,TSAI_WU |
|
Upper_Ply_Tsai_Wu_Criterion |
SYS_RES_FAT_DAMAGE |
PLY,TSAI_WU |
|
Max_Plastic_Strain |
SYS_RES_E |
SYS_QUA_MAXIMUM |
SYS_QUA_PLAST |
Min_Plastic_Strain |
SYS_RES_E |
SYS_QUA_MINIMUM |
SYS_QUA_PLAST |
Membrane_Plastic_Strain |
SYS_RES_E |
SYS_QUA_EQUIV |
SYS_QUA_PLAST |
FPM_Static_Density |
SYS_RES_DENS |
SYS_QUA_STATIC |
FPM |
FPM_Static_Temperature |
SYS_RES_TEMP |
SYS_QUA_STATIC |
FPM |
FPM_Static_Pressure |
SYS_RES_PRES |
SYS_QUA_STATIC |
FPM |
OTMCO Reaction force |
SYS_RES_R |
SYS_QUA_MPC |
|
OTMCO Reaction moment |
SYS_RES_R |
SYS_QUA_MPC |
|
BASIS3X3 |
SYS_RES_ROT_ANG |
||
TEMP |
SYS_RES_TEMP |
||
BEAM_Stress_P1 |
SYS_RES_S |
||
BEAM_Stress_P2 |
SYS_RES_S |
||
BEAM_Stress_P3 |
SYS_RES_S |
||
BEAM_Stress_P4 |
SYS_RES_S |
||
RFLUX |
SYS_RES_R_HEAT_FLOW |
||
DMG |
SYS_RES_FAT_DAMAGE |
||
DINT |
SYS_RES_ENERGY_DENSITY |
||
DHGL |
SYS_RES_ENERGY_DENSITY |
HOURGLASS |
|
EINT |
SYS_RES_ENERGY |
||
EHGL |
SYS_RES_ENERGY |
HOURGLASS |
5.30.1. Function Descriptions
The currently available PAMLib functions are described in detail in this section.
-
vdm_PAMLib *vdm_PAMLibBegin(void)
create an instance of a PAMLib object
Create an instance of a PAMLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a PAMLib object using
void vdm_PAMLibEnd (vdm_PAMLib *pamlib)
Return the current value of a PAMLib object error flag using
Vint vdm_PAMLibError (vdm_PAMLib *pamlib)
- Returns:
The function returns a pointer to the newly created PAMLib object. If the object creation fails, NULL is returned.
-
void vdm_PAMLibEnd(vdm_PAMLib *p)
destroy an instance of a PAMLib object
-
Vint vdm_PAMLibError(vdm_PAMLib *p)
return the current value of a PAMLib object error flag
-
void vdm_PAMLibSetFunction(vdm_PAMLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to PAMLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_PAMLibAbort(vdm_PAMLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_PAMLibSetFunction()
.- Parameters:
p – Pointer to PAMLib object.
5.31. PERMAS result file - PERMASLib
The PERMAS POST file is the output generated by PERMAS during its execution. Each PERMAS POST file contains results and/or model definition for a single component, even if the original model contained multiple components.
The methods associated with a PERMASLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_PERMASLibBegin()
- create an instance of a PERMASLib objectvdm_PERMASLibEnd()
- destroy an instance of a PERMASLib objectvdm_PERMASLibError()
- return PERMASLib object error flag
Get data functions
vdm_PERMASLibDataFun()
- fill DataFun object
Operation
vdm_PERMASLibAbort()
- set abort flagvdm_PERMASLibSetFunction()
- set a call back functions
Instance a PERMASLib object using
vdm_PERMASLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_PERMASLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_PERMASLibSetFunction()
.
Each component in a PERMAS file requires a different DataFun object, but DataFunAppend can be used to combine multiple results files associated with the same component.
The PARTID.E dataset is assigned the same value as the PID.E dataset. These are created in ascending order, starting from 1. A unique partid is assigned to an element based on the GEODAT and MATERIAL information. Part id values associated with $PART are ignored.
NSET and ESET commands generate node and element sets, respectively.
Possible attributes of each results dataset.
Time , time Frequency , frequency DataSource , variable
Supported results are as follows:
Variable |
Description |
Dataset |
---|---|---|
ACCE |
Acceleration |
A |
ACCE |
Rate of Twist Acceleration |
UNKNOWN.[RATE_TWIST_ACCEL] |
ACCE |
Inner Fluid Acceleration |
A.[FLUID] |
ACCPOTE |
Magnetic Potential Acceleration |
UNKNOWN.[ACC_MAGPOT] |
ACCPOTE |
Electric Potential Acceleration |
UNKNOWN.[ACC_ELECPOT] |
CADEF |
Definition Counter |
UNKNOWN.[DEF_COUNTER] |
CADEF |
Definition Type |
UNKNOWN.[DEF_TYPE] |
CADEF |
DOF Family Type |
UNKNOWN.[DOF_FAM_TYPE] |
CADEF |
Isolation Type |
UNKNOWN.[ISOLATION_TYPE] |
CADEF |
King Angle |
UNKNOWN.[KINK_ANGLE] |
CADEF |
Doublet Type |
UNKNOWN.[DOUBLET_TYPE] |
CADISP |
Contact Displacement |
GAP.[NORMAL] |
CADISP |
Contact Displacement |
GAP.[SHEAR] |
CAFRATIO |
Effective Frictional Coefficient |
UNKNOWN.[EFF_FRIC_COEFF] |
CAFRATIO |
Percent Saturation of Sticking Forces |
UNKNOWN.[PERCENT_SATUR_STICK_FORC] |
CAFRATIO |
Percent Slip Saturation Deficit |
UNKNOWN.[PERCENT_SLIP_SATUR_DEFICIT] |
CAFRATIO |
Slip Force Declination Angle |
UNKNOWN.[SLIP_FORC_DECL_ANGLE] |
CAFWORK |
Energy |
ENERGY.[FRICTION] |
CAFWORKDENS |
Energy Density |
ENERGY_DENSITY.[FRICTION] |
CAGAPS |
Gap Thickness |
GAP_THICKNESS |
CAGAPV |
Normal Gap Width |
GAP_THICKNESS.[NORMAL] |
CAGAPV |
Tangential Gap Offset |
GAP_THICKNESS.[TANG] |
CAGEO |
Nadir Vector |
UNKNOWN.[NADIR_VECTOR] |
CAPRES |
Pressure |
PRES.[CONTACT] |
CAPRES |
Frictional Shear |
UNKNOWN.[FRICTION_SHEAR_VECTOR] |
CAPRESV |
Normal Contact Pressure Vector |
PRES.[NORMAL,CONTACT] |
CAPRESV |
Frictional Shear Vector |
TRAC.[TANG,CONTACT] |
CAREAK |
Force |
FORCE.[NORMAL,CONTACT] |
CAREAK |
Force |
FORCE.[TANG,CONTACT] |
CARESI |
Normal Gap Residuum |
UNKNOWN.[NORMAL_GAP_RES] |
CARESI |
Tangential Residuum |
UNKNOWN.[TANG_GAP_RES] |
CASTATE |
Status |
STAT.[CONTACT] |
CASYS |
Normal Contact Direction |
DIR_COS.[NORMAL,CONTACT] |
DISP |
Displacement |
D |
DISP |
Twist |
UNKNOWN.[TWIST] |
DISP |
Inner Fluid Displacement |
D.[FLUID] |
EFRATIO |
Element Filling Ratio |
UNKNOWN.[FILL_RATIO] |
EKIN |
Energy |
KE |
EKINVOL |
Energy Density Per Unit Volume |
KE_DENSITY |
EKINMASS |
Energy Density Per Unit Mass |
UNKNOWN.[KINETIC_ENERGY_PER_MASS] |
ELEMENTCOG |
Element Center of Gravity |
X,[COG] |
HEATFLUX |
Heat Flux |
HEAT_FLUX |
HEATFLUXDENS |
Heat Flux Density |
UNKNOWN.[HEAT_FLUX_DENS] |
INICAGAPS |
Initial Gap Thickness |
GAP_THICKNESS.[INITIAL] |
INICAPAPV |
Initial Normal Gap Width |
GAP_THICKNESS.[INITIAL,NORMAL] |
INICAPAPV |
Initial Tangential Gap Offset |
GAP_THICKNESS.[INITIAL,TANG] |
INICASTATE |
Status |
STATUS.[INITIAL,CONTACT] |
NPSTRAIN |
Strain |
E |
NPSTRESS |
Stress |
S |
POTE |
Magnetic Potential |
MAG_POT |
POTE |
Electric Potential |
ELEC_POT |
PRES |
Pressure |
PRES |
PRINSTRAIN |
Principal Strain |
E.[PRINCIPAL] |
PRINSTRAIN |
Direction Cosine Matrix |
DIR_COS.[PRINCIPAL,STRAIN] |
PRINSTRESS |
Principal Stress |
S.[PRINCIPAL] |
PRINSTRESS |
Direction Cosine Matrix |
DIR_COS.[PRINCIPAL,STRESS] |
REAK |
Reaction Force |
R |
REAK |
Bimoment |
UNKNOWN.[BIMOMENT] |
REAK |
Inner Fluid Pressure |
PRES.[FLUID] |
REAKD |
Reaction Force on Dependent DOFS |
R.[DEP_DOFS] |
REAKD |
Bimoment on Dependent DOFS |
UNKNOWN.[BIMOMENT,DEP_DOFS] |
REAKD |
Inner Fluid Pressure on Dependent DOFS |
PRES.[FLUID,DEP_DOFS] |
STRESSRES |
Flange, Spring, or Dampener Force |
FORCE |
STRESSRES |
Stress Resultant |
SFM |
STRESSRES |
Bimoment |
UNKNOWN.[BIMOMENT] |
STRESSRES |
Pressure |
PRES.[INNER_FLUID] |
STRESSRES |
Spring or Dampener Moment |
MOMENT |
TEMP |
Temperature |
TEMP |
TEMP |
Temperature Difference |
TEMP.[DIFFERENCE] |
VELO |
Velocity |
V |
VELO |
Rate of Twist Velocity |
UNKNOWN.[RATE_TWIST_VEL] |
VELO |
Inner Fluid Velocity |
V.[FLUID] |
VELPOTE |
Magnetic Potential Velocity |
UNKNOWN.[VEL_MAGPOT] |
VELPOTE |
Electric Potential Velocity |
UNKNOWN.[VEL_ELECPOT] |
X_ELPRINCMP |
Principal Stress |
S.[PRINCIPAL] |
X_ELSTRAIN |
Strain |
E |
X_ELSTRESS |
Stress |
S |
X_ELVE |
Element Test Information |
UNKNOWN.[TEST_INFO] |
5.31.1. Function Descriptions
The currently available PERMASLib functions are described in detail in this section.
-
vdm_PERMASLib *vdm_PERMASLibBegin(void)
create an instance of a PERMASLib object
Create an instance of a PERMASLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a PERMASLib object using
void vdm_PERMASLibEnd (vdm_PERMASLib *permaslib)
Return the current value of a PERMASLib object error flag using
Vint vdm_PERMASLibError (vdm_PERMASLib *permaslib)
- Returns:
The function returns a pointer to the newly created PERMASLib object. If the object creation fails, NULL is returned.
-
void vdm_PERMASLibEnd(vdm_PERMASLib *p)
destroy an instance of a PERMASLib object
-
Vint vdm_PERMASLibError(vdm_PERMASLib *p)
return the current value of a PERMASLib object error flag
-
void vdm_PERMASLibSetFunction(vdm_PERMASLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to PERMASLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_PERMASLibAbort(vdm_PERMASLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_PERMASLibSetFunction()
.- Parameters:
p – Pointer to PERMASLib object.
5.32. NASA/PLOT3D grid, solution and function files - PLOT3DLib
The PLOT3D grid file format can be formatted in a number of ways. A non standard function is required to specify whether or not certain grid records are present. The PLOT3D solution and function files format has limited support for descriptive information concerning the data a file may contain. Therefore an additional, non standard, function is required when reading PLOT3D solution and/or function files to indicate the result type.
The methods associated with a PLOT3DLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_PLOT3DLibBegin()
- create an instance of a PLOT3DLib objectvdm_PLOT3DLibEnd()
- destroy an instance of a PLOT3DLib objectvdm_PLOT3DLibError()
- return PLOT3DLib object error flag
Get data functions
vdm_PLOT3DLibDataFun()
- fill DataFun object
Operation
vdm_PLOT3DLibAbort()
- set abort flagvdm_PLOT3DLibSetFunction()
- set a call back functions
Non standard
vdm_PLOT3DLibSetGridType()
- set grid typevdm_PLOT3DLibSetResultType()
- set solution result type
Instance a PLOT3DLib object using
vdm_PLOT3DLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_PLOT3DLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_PLOT3DLibSetFunction()
.
If a PLOT3DLib
module is used to read model information from a PLOT3D Grid File, type
SYS_PLOT3D_GRID, then it may be necessary to specify the grid type
using vdm_PLOT3DLibSetGridType()
if the defaults are not sufficient.
If solution or function files are being read, type
SYS_PLOT3D_SOLUTION, then it may be necessary to specify the
solution type using vdm_PLOT3DLibSetResultType()
if the defaults are not sufficient. Note that PLOT3D solution and
function files do not contain any model information and by necessity
must always be appended with vdm_DataFunAppend()
rather than opened with vdm_DataFunOpen()
.
The NASA/PLOT3D data files are associated with the NASA Ames Research Center PLOT3D visualization program. The file types include grid XYZ files, solution Q files and function files. These file formats may be formatted, unformatted or binary. Currently only “whole” 3D structured or unstructured, multiblocked, iblanked binary files are supported, “planes” or 2D files are not supported.
5.32.1. Function Descriptions
The currently available PLOT3DLib functions are described in detail in this section.
-
vdm_PLOT3DLib *vdm_PLOT3DLibBegin(void)
create an instance of a PLOT3DLib object
Create an instance of a PLOT3DLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a PLOT3DLib object using
void vdm_PLOT3DLibEnd (vdm_PLOT3DLib *plot3dlib)
Return the current value of a PLOT3DLib object error flag using
Vint vdm_PLOT3DLibError (vdm_PLOT3DLib *plot3dlib)
- Returns:
The function returns a pointer to the newly created PLOT3DLib object. If the object creation fails, NULL is returned.
-
void vdm_PLOT3DLibEnd(vdm_PLOT3DLib *p)
destroy an instance of a PLOT3DLib object
-
Vint vdm_PLOT3DLibError(vdm_PLOT3DLib *p)
return the current value of a PLOT3DLib object error flag
-
void vdm_PLOT3DLibSetFunction(vdm_PLOT3DLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to PLOT3DLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_PLOT3DLibAbort(vdm_PLOT3DLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_PLOT3DLibSetFunction()
.- Parameters:
p – Pointer to PLOT3DLib object.
-
void vdm_PLOT3DLibSetGridType(vdm_PLOT3DLib *p, Vint gtype, Vint dime, Vint iblank)
set grid type
Define grid type of Grid file. By default gtype is
PLOT3DLIB_AUTO
, dime isPLOT3DLIB_AUTO
, and iblank is off.- Parameters:
p – Pointer to PLOT3DLib object.
gtype – Grid type
x=PLOT3DLIB_AUTO Auto detect =PLOT3DLIB_SINGLE Single block grid =PLOT3DLIB_MULTIPLE Multiblock grid
dime – Dimension and layout
x=PLOT3DLIB_AUTO Auto detect =PLOT3DLIB_2D 2D structured =PLOT3DLIB_3DWHOLE 3D structured WHOLE =PLOT3DLIB_3DPLANES 3D structured PLANES =PLOT3DLIB_UNSTRUCTURED 3D unstructured
iblank – IBlanking flag
-
void vdm_PLOT3DLibSetResultType(vdm_PLOT3DLib *p, Vint rtype, Vint restype)
set solution result type
Set results type description. See the appropriate VisTools RProp function for explanations of restype. By default rtype is
PLOT3DLIB_Q
and restype isSYS_RES_V
.- Parameters:
p – Pointer to PLOT3DLib object.
rtype – Patran results file type
restype – Results type (see
vis_RPropSetType()
)
5.33. Interface to the Data Provider Framework - PluginLib
The PluginLib object allows to process any file type supported by plugins developed under the Data Provider Framework. CEETRON Data Provider Framework is a framework for writing data providers that can be plugged into applications initially based on CEETRON Envision for Desktop. For more information on this Framework, please see CEETRON Envision documentation.
The methods associated with a PluginLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_PluginLibBegin()
- create an instance of a PluginLib objectvdm_PluginLibEnd()
- destroy an instance of a PluginLib objectvdm_PluginLibError()
- return PluginLib object error flag
Definition
vdm_PluginLibDef()
- define the path to the plugin binary file
Get data functions
vdm_PluginLibDataFun()
- fill DataFun object
Data
vdm_PluginLibGetConnect()
- Get a reference to the internal connect objectvdm_PluginLibReadDataset()
- Query the data related to a given dataset
Instance a PluginLib object using vdm_PluginLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_PluginLibDataFun()
.
5.33.1. Function Descriptions
The currently available PluginLib functions are described in detail in this section.
-
vdm_PluginLib *vdm_PluginLibBegin(void)
create an instance of a PluginLib object
Create an instance of a PluginLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a PluginLib object using
void vdm_PluginLibEnd (vdm_PluginLib *PluginLib)
Return the current value of a PluginLib object error flag using
Vint vdm_PluginLibError (vdm_PluginLib *PluginLib)
- Returns:
The function returns a pointer to the newly created PluginLib object. If the object creation fails, NULL is returned.
-
void vdm_PluginLibDef(vdm_PluginLib *p, Vchar *pathToPluginLibrary)
define the path to the plugin binary file
-
void vdm_PluginLibEnd(vdm_PluginLib *p)
destroy an instance of a PluginLib object
-
Vint vdm_PluginLibError(vdm_PluginLib *p)
return the current value of a PluginLib object error flag
Report total number of errors notified. This will reset the counter to zero after
- Parameters:
p – Pointer to PluginLib object.
- Returns:
Integer error count
-
void vdm_PluginLibApplySettings(vdm_PluginLib *p, vdm_Settings *globalSettings)
Apply the Settings.
This method allows to apply settings that can specify the Open behavior of the underlying plugin
-
void vdm_PluginLibOpen(vdm_PluginLib *p, Vint mode, Vchar *filename, Vint type)
Open the giving file using the PluginLib.
Open the given file and load the Connect object internally Retrieve the connect object using See
vdm_PluginLibGetConnect(vdm_PluginLib *p, vis_Connect **connect)
- Parameters:
p – Pointer to PluginLib object.
mode – opening mode
filename – full path to file name
type – type of the file to open
-
void vdm_PluginLibDataFun(vdm_PluginLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
-
void vdm_PluginLibGetConnect(vdm_PluginLib *p, vis_Connect **connect)
This method set the connect to point to the internal connect object.
Notice . The internal PluginLib will deallocate the connect once termination, the parameter connect might dangle. Here an example of how to use this method properly
vis_Connect* connect = NULL; vdm_PluginLibGetConnect(vdm_PluginLib_object, &connect)
- Parameters:
p – Pointer to PluginLib object.
connect – Pointer of a Pointer to connect
-
void vdm_PluginLibGetNumEntities(vdm_PluginLib *p, Vint entitytype, Vint *numentity)
get number of Elements, Nodes, Faces or Edges
Return the number of entities of the requested entitytype. If entitytype is an unrecognizable type, then numentity is returned as zero. This is equivalent to call vis_ConnectNumber() using the connect object.
- Parameters:
p – Pointer to PluginLib object.
entitytype – Entity type
=SYS_ELEM Element =SYS_NODE Node =SYS_FACE Face =SYS_EDGE Edge
numentity – [out] Number of entities of requested type
-
void vdm_PluginLibGetLibrary(vdm_PluginLib *p, vdm_Library **library)
get library object associated with library device
Get Library object associated with a library device. Use the Library object to retrieve generic information about the datasets and attributes on the library device. See the descriptions of the Library, Dataset and Attribute modules.
-
void vdm_PluginLibSetStatus(vdm_PluginLib *p, Vint status)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
status – File status to be used when opening library device.
=VDM_STATUS_OLD Old file must exist read only
-
void vdm_PluginLibGetAttVal(vdm_PluginLib *p, Vint datasetIndex, Vint iatt, void *value)
get attribute values for the given datasetindex
Return an valued attribute.
- Errors
SYS_ERROR_OPERATION
is generated if the value is not defined
- Parameters:
p – Pointer to PluginLib object.
datasetIndex – Vint identifying the dataset object.
iatt – Vint identifying the attribute type.
value – [out] attribute values address
-
void vdm_PluginLibNumDatasets(vdm_PluginLib *p, Vint *numdatasets)
get number of datasets on library
Get the number of datasets on a library.
- Parameters:
p – Pointer to PluginLib object.
numdatasets – [out] Number of datasets on library.
-
void vdm_PluginLibNumAttributes(vdm_PluginLib *p, Vint datasetIndex, Vint *numattributes)
get number of dataset attributes
Get the number of dataset attributes.
- Parameters:
p – Pointer to PluginLib object.
datasetIndex – Vint identifying the dataset object.
numattributes – [out] Number of dataset attributes.
-
void vdm_PluginLibInqDataset(vdm_PluginLib *p, Vint datasetIndex, Vchar name[], Vlong *lrec, Vint *nrow, Vint *ncol, Vint *type)
inquire of defined name, lrec, nrow, ncol and type as output arguments
See
vdm_DatasetDef()
-
void vdm_PluginLibInqAttribute(vdm_PluginLib *p, Vint idst, Vint iatt, Vchar name[], Vint *length, Vint *type)
inquire of defined name, length, and type as output arguments
-
void vdm_PluginLibReadDataset(vdm_PluginLib *p, Vint datasetIndex, void *data)
Read the dataset data using the PluginLib.
Read and fill the data with the values of the dataset. This call will trigger a reading of the data within the files using the appropriate plugin library.
- Errors
SYS_ERROR_VALUE
is generated if the datasetIndex is not found in the library
- Parameters:
p – Pointer to PluginLib object.
datasetIndex – Vint dataset index
data – [out] allocated buffer pointer of size dataset_lrec
-
void vdm_PluginLibSetMode(vdm_PluginLib *p, Vint mode, Vint flag)
set Mode for PluginLib
Set Mode for PluginLib.
- Parameters:
p – Pointer to PluginLib object.
mode – Vint of mode to be set : no option available yet
flag – flag SYS_OFF or SYS_ON
-
void vdm_PluginLibSetConvention(vdm_PluginLib *p, VConventionType convention)
Undefined function.
- Parameters:
p – Pointer to PluginLib object.
convention – Dataset and attribute convention. No option available yet.
-
void vdm_PluginLibDefDataset(vdm_PluginLib *p, const Vchar *name, Vlong lrec, Vint nrow, Vint ncol, Vint type, Vint *idst)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
name – Name given to dataset
lrec – Length of dataset contents in type units
nrow – Number of dataset rows
ncol – Number of dataset columns
type – Data type of dataset contents
=SYS_INTEGER Integer, type Vint =SYS_FLOAT Single precision, type Vfloat =SYS_HOLLERITH Hollerith, type Vuint =SYS_DOUBLE Double precision, type Vdouble =SYS_COMPLEX Complex, type Vfloat[2] =SYS_DOUBLECOMPLEX Double Complex, type Vdouble[2]
idst – Index of generated dataset
-
void vdm_PluginLibWriteDataset(vdm_PluginLib *p, Vint idst, void *buff)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
idst – Index of dataset object to read
buff – Pointer to array to dataset contents
-
void vdm_PluginLibAppend(vdm_PluginLib *p, Vchar *filename, Vint type)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
filename – Pathname to host file associated with the library device
type – Type of library device file
=SYS_FLUENT_MESH FLUENT mesh and data file =SYS_NASTRAN_OUTPUT2 MSC/NASTRAN OUTPUT2 data file =SYS_NATIVE VKI native data base =SYS_PATRAN_RESULT MSC/Patran result file =SYS_PLOT3D_SOLUTION NASA/PLOT3D solution or function file =SYS_SDRC_UNIVERSAL SDRC universal file =SYS_STARCCM STAR-CCM results file =SYS_TECPLOT Tecplot file format
-
void vdm_PluginLibSetIds(vdm_PluginLib *p, Vint idtype, Vint id1, Vint id2, Vint id3)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
idtype – Numeric identifier algorithm
=VDM_IDS_OFFSET Offset ids =VDM_IDS_BASE Increment ids over base =VDM_IDS_ABSOLUTE Set ids
id1 – Numeric identifier
id2 – Numeric identifier
id3 – Numeric identifier
-
void vdm_PluginLibSetConnect(vdm_PluginLib *p, vis_Connect *connect)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
-
void vdm_PluginLibLibDataset(vdm_PluginLib *p, Vint oper, Vint idst)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
oper – Operation
=VDM_LIBDATASET_PUSH Change to child library dataset idst =VDM_LIBDATASET_POP Change to parent library =VDM_LIBDATASET_TOP Change to root library
idst – Index of dataset object representing library
-
void vdm_PluginLibDefAttribute(vdm_PluginLib *p, Vint idst, const Vchar *name, Vint length, Vint type, Vint *iatt)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
idst – Dataset index
name – Name given to attribute
length – Length of attribute value in type units
type – Data type of attribute value
=SYS_INTEGER Integer, type Vint =SYS_FLOAT Single precision, type Vfloat =SYS_CHAR Character, type Vchar =SYS_DOUBLE Double precision, type Vdouble
iatt – [out] Index of generated attribute
-
void vdm_PluginLibSetAttVal(vdm_PluginLib *p, Vint idst, Vint iatt, void *value)
Undefined function.
Set the value of an attribute. This function may only be called on writeable library devices such as a native data base.
Get value as an output argument using
void vdm_DataFunGetAttVal (vdm_DataFun *datafun, Vint idst, Vint iatt, void *value)
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
idst – Index of dataset
iatt – Index of attribute
value – Pointer to attribute value
-
void vdm_PluginLibGetInteger(vdm_PluginLib *p, Vint type, Vint *ivalue)
Undefined function.
- Errors
SYS_ERROR_ENUM
is generated if this function is called with an inknown type
- Parameters:
p – Pointer to PluginLib object.
type – Type of integer information to query
=VDM_PHASE Progress phase
ivalue – Returned integer information
-
void vdm_PluginLibGetString(vdm_PluginLib *p, Vint type, Vchar *cvalue)
Undefined function.
- Errors
SYS_ERROR_ENUM
is generated if this function is called with an inknown type
- Parameters:
p – Pointer to PluginLib object.
type – Type of integer information to query
=VDM_SOURCE Current data source
cvalue – [out] Returned string information
-
void vdm_PluginLibNumDomains(vdm_PluginLib *p, Vchar *filename, Vint type, Vint *numdomains)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
filename – Pathname to host file associated with the library device
type – Type of library device file, see
vdm_DataFunOpen()
.numdomains – [out] Number of domains
-
void vdm_PluginLibReadDatasetCols(vdm_PluginLib *p, Vint idst, Vint ncols, Vint cols[], void *buf, Vlong *lptr)
Undefined function.
- Errors
SYS_ERROR_OPERATION
is generated if this function is called since it is not defined for this library
- Parameters:
p – Pointer to PluginLib object.
idst – Index of dataset object to read
ncols – Number of columns
cols – Vector of column numbers
buf – [out] Pointer to array to receive dataset contents
lptr – [out] Pointer to starting position of each column in buff.
5.34. POLYFLOW data base - POLYFLOWLib
The POLYFLOW data base consists of a mesh file and a list of results files. The mesh file is normally contained in a file with extension .msh, while the results can be found in files whose names contain either the extension .res or its base name contains the substring res. The POLYFLOW data base is supported for reading only. The .msh file is the key file, the POLYFLOW reader will find related results files.
The methods associated with a POLYFLOWLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_POLYFLOWLibBegin()
- create an instance of a POLYFLOWLib objectvdm_POLYFLOWLibEnd()
- destroy an instance of a POLYFLOWLib objectvdm_POLYFLOWLibError()
- return POLYFLOWLib object error flag
Get data functions
vdm_POLYFLOWLibDataFun()
- fill DataFun object
Operation
vdm_POLYFLOWLibAbort()
- set abort flagvdm_POLYFLOWLibSetFunction()
- set a call back functions
Instance a POLYFLOWLib object using
vdm_POLYFLOWLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_POLYFLOWLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_POLYFLOWLibSetFunction()
.
The POLYFLOW reader supports all of POLYFLOW element types, namely linear two and three-dimensional elements. The PARTID.E dataset is set to the subdomain id.
5.34.1. Function Descriptions
The currently available POLYFLOWLib functions are described in detail in this section.
-
vdm_POLYFLOWLib *vdm_POLYFLOWLibBegin(void)
create an instance of a POLYFLOWLib object
Create an instance of a POLYFLOWLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a POLYFLOWLib object using
void vdm_POLYFLOWLibEnd (vdm_POLYFLOWLib *polyflowlib)
Return the current value of a POLYFLOWLib object error flag using
Vint vdm_POLYFLOWLibError (vdm_POLYFLOWLib *polyflowlib)
- Returns:
The function returns a pointer to the newly created POLYFLOWLib object. If the object creation fails, NULL is returned.
-
void vdm_POLYFLOWLibEnd(vdm_POLYFLOWLib *p)
destroy an instance of a POLYFLOWLib object
-
Vint vdm_POLYFLOWLibError(vdm_POLYFLOWLib *p)
return the current value of a POLYFLOWLib object error flag
-
void vdm_POLYFLOWLibSetFunction(vdm_POLYFLOWLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to POLYFLOWLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_POLYFLOWLibAbort(vdm_POLYFLOWLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_POLYFLOWLibSetFunction()
.- Parameters:
p – Pointer to POLYFLOWLib object.
-
void vdm_POLYFLOWLibDataFun(vdm_POLYFLOWLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to POLYFLOWLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.35. Writing PTC/Mechanica FEM Neutral Format - RASFil
The PTC/Mechanica FEM Neutral File is used to exchange data between
Mechanica and finite element programs. FEM Neutral Format files have the
file extension .fnf and are ASCII files consisting of lines 80
characters or less. The RASFil
module supports the writing of nodes, elements, coordinate systems and
applied loads and restraints. The LMan module function
vdm_LManSaveModel()
is used to perform the actual file writing.
The methods associated with a RASFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_RASFilBegin()
- create an instance of a RASFil objectvdm_RASFilEnd()
- destroy an instance of a RASFil objectvdm_RASFilError()
- return RASFil object error flag
Get data functions
vdm_RASFilDataFun()
- fill DataFun object
Operation
vdm_RASFilAbort()
- set abort flagvdm_RASFilSetFunction()
- set a call back functions
Instance a RASFil object using vdm_RASFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_RASFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_RASFilSetFunction()
.
5.35.1. Function Descriptions
The currently available RASFil functions are described in detail in this section.
-
vdm_RASFil *vdm_RASFilBegin(void)
create an instance of a RASFil object
Create an instance of a RASFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a RASFil object using
void vdm_RASFilEnd (vdm_RASFil *rasfil)
Return the current value of a RASFil object error flag using
Vint vdm_RASFilError (vdm_RASFil *rasfil)
- Returns:
The function returns a pointer to the newly created RASFil object. If the object creation fails, NULL is returned.
-
void vdm_RASFilEnd(vdm_RASFil *p)
destroy an instance of a RASFil object
-
Vint vdm_RASFilError(vdm_RASFil *p)
return the current value of a RASFil object error flag
-
void vdm_RASFilSetFunction(vdm_RASFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to RASFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_RASFilAbort(vdm_RASFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_RASFilSetFunction()
.- Parameters:
p – Pointer to RASFil object.
5.36. PTC/Mechanica Design Study - RASLib
The PTC/Mechanica design study is a directory consisting of subdirectories and files containing analysis model and results data. The directory is called study where study is the name of the design study and subdirectories called anlys1, anlys2, … where anlys1, anlys2, … are the names of the analyses. Only the binary form of the results data files is supported.
The methods associated with a RASLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_RASLibBegin()
- create an instance of a RASLib objectvdm_RASLibEnd()
- destroy an instance of a RASLib objectvdm_RASLibError()
- return RASLib object error flag
Get data functions
vdm_RASLibDataFun()
- fill DataFun object
Operation
vdm_RASLibAbort()
- set abort flagvdm_RASLibSetFunction()
- set a call back functions
Instance a RASLib object using vdm_RASLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_RASLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_RASLibSetFunction()
.
The key file in a Mechanica Design Study must be the .neu file located in an analysis subdirectory. The path to key file must include the names of the study and analysis directories. The following file types are read.
.neu, h-nodes and elements.
.pnu, p-elements.
.rpt, general progress log
.ter, coordinate systems, materials, element properties, restraints.
.r, reaction results
.s, stress results
.d, .a, displacement, rotation, temerature results
.v, .x, velocity results
.w, .y, acceleration results
The load set or mode number, set, is appended to each results dataset in the analysis. A frequency attribute is added to modal result datasets.
Possible attributes of each results dataset.
Frequency , Frequency DataSource , file name
5.36.1. Function Descriptions
The currently available RASLib functions are described in detail in this section.
-
vdm_RASLib *vdm_RASLibBegin(void)
create an instance of a RASLib object
Create an instance of a RASLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a RASLib object using
void vdm_RASLibEnd (vdm_RASLib *raslib)
Return the current value of a RASLib object error flag using
Vint vdm_RASLibError (vdm_RASLib *raslib)
- Returns:
The function returns a pointer to the newly created RASLib object. If the object creation fails, NULL is returned.
-
void vdm_RASLibEnd(vdm_RASLib *p)
destroy an instance of a RASLib object
-
Vint vdm_RASLibError(vdm_RASLib *p)
return the current value of a RASLib object error flag
-
void vdm_RASLibSetFunction(vdm_RASLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to RASLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_RASLibAbort(vdm_RASLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_RASLibSetFunction()
.- Parameters:
p – Pointer to RASLib object.
5.37. SAMCEF des file - SAMCEFLib
The SAMCEF des file contains mesh and results information.
The methods associated with a SAMCEFLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_SAMCEFLibBegin()
- create an instance of a SAMCEFLib objectvdm_SAMCEFLibEnd()
- destroy an instance of a SAMCEFLib objectvdm_SAMCEFLibError()
- return SAMCEFLib object error flag
Get data functions
vdm_SAMCEFLibDataFun()
- fill DataFun object
Operation
vdm_SAMCEFLibAbort()
- set abort flagvdm_SAMCEFLibSetFunction()
- set a call back functions
Instance a SAMCEFLib object using
vdm_SAMCEFLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_SAMCEFLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_SAMCEFLibSetFunction()
.
Each results dataset name obtained from a SAMCEF file is appended with the load case or time step number, id1. If these are not defined, then id1 is 1. If vibration, buckling, or rigid modes are found these are assigned to id2.
Possible attributes of each results dataset.
DataSource , result code and field name
This interface supports the import of unknown variables. This allows all results to be imported. The dataset name will include the SAMCEF field name immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Supported Variable Names, Results
SAMCEF Field Name |
Dataset |
---|---|
Pressure |
PRES |
Nodal temperature [lower surface] |
TEMP.[LOWERSURF] |
Temperature variation rate |
TEMP_DOT |
Nodal pressure |
PRES |
Nodal density |
DENS |
Electric potential |
ELEC_POT |
X-Y-Z coordinates |
X |
DX-DY-DZ reference displacements (in structural axes) |
D |
DX-DY-DZ displacements (in structural axes) |
D |
VX-VY-VZ velocities (in structural axes) |
V |
AX-AY-AZ accelerations (in structural axes) |
A |
RX-RY-RZ rotations |
D |
Reaction/residue (in structural axes) |
R |
Reaction/residue (in structural axes) - Force |
R |
Reaction/residue (in structural axes) - Torque |
R |
Reaction/residue (in structural axes) - Flux |
HEAT_FLUX |
Normal stress at point 1 |
S |
Normal stress at point 2 |
S |
Normal stress at point 3 |
S |
Normal stress at point 4 |
S |
Nodal temperature [upper surface] |
TEMP.[UPPERSURF] |
Nodal temperature of intermediate surfaces. |
TEMP.[MIDSURF] |
Rotational velocity |
V |
Rotational acceleration |
A |
Shear forces |
SFM |
Efforts (N,T1,T2,M,F1,F2) |
SFM |
Efforts (N,T1,T2) |
SFM |
Moment (M,F1,F2) |
SFM |
Normal Force |
SFM |
Moment |
SFM |
Grid Point Relative Displacement |
D.[REL] |
Grid Point Relative Rotation |
D.[REL] |
Grid Point Reaction/Force |
R.[GPF] |
Grid Point Reaction/Moment |
R.[GPF] |
Total strain |
E |
Normal stress at 6 points |
S.[NORMAL] |
Norm of shear stress at 6 points |
S.[SHEAR] |
Stress tensor |
S |
Stress tensor (codes 470-472) |
S.[NONLIN] |
von Mises stress |
S.[VONMISES] |
Kirchoff-Treffz stress tensor (PK2) |
S.[PK] |
Green-Lagrange total strain tensor |
E.[GREEN] |
Cauchy stress tensor |
S.[CAUCHY] |
Natural total strain tensor |
E.[NATURAL] |
Biot stress tensor |
S.[BIOT] |
Biot total strain tensor |
E.[BIOT] |
Mechanical strain tensor |
E.[MECH] |
Equivalent mechanical strain |
E.[EQUIV,MECH] |
Temperature |
TEMP |
Hydrostatic pressure |
PRES.[HYDROSTATIC] |
Equivalent cumulative plastic strain |
E.[EQUIV,PLAST] |
Plastic strain tensor |
E.[PLAST] |
Equivalent stress (chosen criterion) |
S.[EQUIV] |
Porosity |
POROSITY |
Potential energy |
SE_DENSITY |
Kinetic energy density |
KE_DENSITY |
Element density |
DENS |
Dissipated energy per unit volume |
ENERGY_DENSITY.[DISSIPATED] |
Dissipated power per unit volume |
POWER_DENSITY.[DISSIPATED] |
Degree of conversion |
FRACTION |
Glass transition temperature |
TEMP.[GLASSTRANS] |
Scalar damage |
DAMAGE.[EQUIV] |
Tensorial damage |
DAMAGE |
Conductive flux |
HEAT_FLUX |
Gas mass flux |
MASS_FLUX.[GAS] |
Current density |
J_DENSITY |
Transport flux |
HEAT_FLUX.[CONVECTIVE] |
Elemental (specific) capacitive energy |
ENERGY.[SPECIFIC,CAPACITIVE] |
Nodal density (PYROL DECOUPLE) |
DENS |
Applied surface flux |
HEAT_FLUX.[APPLIED] |
Convective flux (classical) |
HEAT_FLUX.[CONVECTIVE] |
Enthalpic flux |
HEAT_FLUX.[ENTHALPY] |
Resultant radiative flux |
HEAT_FLUX.[RADIATIVE] |
Absorbed radiative flux |
HEAT_FLUX.[ABSORBED,RADIATIVE] |
Emitted radiative flux |
HEAT_FLUX.[RADIATIVE,EMITTED] |
Resultant flame radiation flux |
HEAT_FLUX.[RADIATIVE,FLAME] |
Absorbed flame radiation flux |
HEAT_FLUX.[ABSORBED,FLAME,RADIATIVE] |
Emitted flame radiation flux |
HEAT_FLUX.[EMITTED,FLAME,RADIATIVE] |
Total applied flux |
HEAT_FLUX.[TOT,APPLIED] |
Total volume flux |
HEAT_FLUX.[TOT] |
Strain energy density |
SE_DENSITY |
Kinetic energy density |
KE_DENSITY |
Von Mises equivalent stress |
S.[VONMISES] |
The convention, VDM_CONVENTION_DOUBLE, can be used to export floating point data in single or double precision. The default export precision is single. All nodes and elements are exported as a single unstructured zone.
Scalar, vector and symmetric tensor data types are exported, all others are ignored. Results can be either nodal, centroidal, or element nodal.
5.37.1. Function Descriptions
The currently available SAMCEFLib functions are described in detail in this section.
-
vdm_SAMCEFLib *vdm_SAMCEFLibBegin(void)
create an instance of a SAMCEFLib object
Create an instance of a SAMCEFLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a SAMCEFLib object using
void vdm_SAMCEFLibEnd (vdm_SAMCEFLib *samceflib)
Return the current value of a SAMCEFLib object error flag using
Vint vdm_SAMCEFLibError (vdm_SAMCEFLib *samceflib)
- Returns:
The function returns a pointer to the newly created SAMCEFLib object. If the object creation fails, NULL is returned.
-
void vdm_SAMCEFLibEnd(vdm_SAMCEFLib *p)
destroy an instance of a SAMCEFLib object
-
Vint vdm_SAMCEFLibError(vdm_SAMCEFLib *p)
return the current value of a SAMCEFLib object error flag
-
void vdm_SAMCEFLibSetFunction(vdm_SAMCEFLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to SAMCEFLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_SAMCEFLibAbort(vdm_SAMCEFLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_SAMCEFLibSetFunction()
.- Parameters:
p – Pointer to SAMCEFLib object.
5.38. STAR-CCM data base - STARCCMLib
The STAR-CCM file format is generated by the STAR CCM+ analysis program from CD-adapco. Files usually contain an extension .ccm and frequently contain polyhedra-based topologies. This format requires a freely available library that can be obtained by contacting CD-adapco directly.
The methods associated with a STARCCMLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_STARCCMLibBegin()
- create an instance of a STARCCMLib objectvdm_STARCCMLibEnd()
- destroy an instance of a STARCCMLib objectvdm_STARCCMLibError()
- return STARCCMLib object error flag
Get data functions
vdm_STARCCMLibDataFun()
- fill DataFun object
Operation
vdm_STARCCMLibAbort()
- set abort flagvdm_STARCCMLibSetFunction()
- set a call back functions
Instance a STARCCMLib object using
vdm_STARCCMLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_STARCCMLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_STARCCMLibSetFunction()
.
The PARTID.E dataset is set to the cell type which is read directly from the database. The cell type is described as an integer that can be used to group cells together to form subdomains and domains.
The file format segregates internal and boundary surfaces. While internal surfaces are only used to construct faces of elements, boundary surfaces are also stored as elements with VIS_FEATYPE of SYS_ELEM_INTERFACE. In addition, interface elements have an added attribute, VIS_FEASPEC, whose value is only set if it originates from boundary types given by the table below.
This interface supports the import of unknown variables. Any specific STAR-CCM variable name (data name identifier for flow solution quantity) which does not match the current list of VdmTools specific variable names will be imported as SYS_RES_UNKNOWN. The dataset name will include the STAR-CCM variable name immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Results datasets are grouped according to their STAR-CCM State and Phase. The identification value for the State translates into a dataset’s id1, while the Phase’s translates into id2.
Possible attributes of each results dataset.
DataSource , short name
Supported Variable Names, Results
STAR-CCM Variable Name |
Dataset |
---|---|
Pressure |
PRES |
ABSOLUTEPRESSURE |
PRES.[ABS] |
ABSOLUTETOTALPRESSURE |
PRES.[TOT,ABS] |
TOTALPRESSURE |
PRES.[TOT] |
THERMO. PRESSURE |
PRES.[THERMAL] |
PRESSURECOEFFICIENT |
PRES_COEF |
TOTALPRESSURECOEFFICIENT |
PRES_COEF.[TOT] |
Velocity |
V |
VELOCITYMAGNITUDE |
V.[MAG] |
CELLRELATIVEVELOCITY |
V.[REL,Cell] |
CELLRELATIVEVELOCITYMAGNITUDE |
V.[REL,MAG,Cell] |
RADIALVELOCITY |
V.[RADIAL] |
TANGENTIALVELOCITY |
V.[TANG] |
AXIALVELOCITY |
V.[AXIAL] |
TRANSLATIONVELOCITY |
V.[Translation] |
RELATIVEVELOCITY |
V.[REL] |
SOUNDSPEED |
V.[SOUND] |
Mass Flux |
MASS_FLUX |
MASSFLUX |
MASS_FLUX |
Displacement |
D |
Density |
DENS |
Temperature |
TEMP |
TOTALTEMPERATURE |
TEMP.[TOT] |
Turbulent Dissipation |
TURB_ED |
Turbulence - ke |
TURB_KE |
Turbulent Kinetic Energy |
TURB_KE |
Turbulent Dissipation Rate |
TURB_SD |
WALLDISTANCE |
TURB_DIST |
Particle Re Number |
REYNOLDS |
Molecular Viscosity |
VISC |
EFFECTIVEVISCOSITY |
VISC.[EFF] |
DYNAMICVISCOSITY |
VISC.[DYNAMIC] |
Turbulent Viscosity |
VISC_EDDY |
Turbulent - Epsilon |
TURB_ED |
Stress |
S |
Volume Fraction |
VOF |
Y Plus |
YPLUS |
SPECIFICHEAT |
CP |
ENTROPY |
ENTROPY |
ENTHALPY |
H |
TOTALENTHALPY |
H.[TOT] |
STATICENTHALPY |
H.[STATIC] |
AREA |
AREA |
AREAMAGNITUDE |
AREA.[MAG] |
THERMALCONDUCTIVITY |
COND |
EFFECTIVECONDUCTIVITY |
COND.[EFF] |
WALLSHEARSTRESS |
WALL_SHEAR |
MACHNUMBER |
MACH |
HEAT FLUX |
HEAT_FLUX |
BOUNDARYHEATFLUX |
HEAT_FLUX.[Boundary] |
VOLUME |
VOLUME |
VOLUMECHANGE |
VOLUME.[Change] |
Supported Boundary Types, VIS_FEASPEC
Boundary Type |
VIS_FEASPEC |
---|---|
Wall |
SYS_INTER_WALL |
Outlet |
SYS_INTER_OUTLET |
Symmetry |
SYS_INTER_SYMMETRY |
Inlet |
SYS_INTER_INLET |
Cyclic |
SYS_INTER_PERIODIC |
Stagnation |
SYS_INTER_STAGNATION |
Pressure |
SYS_INTER_PRESSURE |
Baffle |
SYS_INTER_BAFFLE |
Freestream |
SYS_INTER_FREESTREAM |
Scalar, vector and non-symmetric tensor data types are exported, all others are ignored. All face-based results are converted to a nodal results by averaging values from neighboring faces.
5.38.1. Function Descriptions
The currently available STARCCMLib functions are described in detail in this section.
-
vdm_STARCCMLib *vdm_STARCCMLibBegin(void)
create an instance of a STARCCMLib object
Create an instance of a STARCCMLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a STARCCMLib object using
void vdm_STARCCMLibEnd (vdm_STARCCMLib *starccmlib)
Return the current value of a STARCCMLib object error flag using
Vint vdm_STARCCMLibError (vdm_STARCCMLib *starccmlib)
- Returns:
The function returns a pointer to the newly created STARCCMLib object. If the object creation fails, NULL is returned.
-
void vdm_STARCCMLibEnd(vdm_STARCCMLib *p)
destroy an instance of a STARCCMLib object
-
Vint vdm_STARCCMLibError(vdm_STARCCMLib *p)
return the current value of a STARCCMLib object error flag
-
void vdm_STARCCMLibSetFunction(vdm_STARCCMLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to STARCCMLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_STARCCMLibAbort(vdm_STARCCMLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_STARCCMLibSetFunction()
.- Parameters:
p – Pointer to STARCCMLib object.
-
void vdm_STARCCMLibDataFun(vdm_STARCCMLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to STARCCMLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.39. 3D Systems/STL ASCII text and binary file - STLFil
The stereolithography (or STL) format is an ASCII text or binary file developed by 3D Systems Corp. It is a list of triangular facets which describe a solid model.
The methods associated with a STLFil object are the following.
Begin and end an instance of an object, return object error flag
vdm_STLFilBegin()
- create an instance of a STLFil objectvdm_STLFilEnd()
- destroy an instance of a STLFil objectvdm_STLFilError()
- return STLFil object error flag
Get data functions
vdm_STLFilDataFun()
- fill DataFun object
Operation
vdm_STLFilAbort()
- set abort flagvdm_STLFilSetFunction()
- set a call back functions
Instance a STLFil object using
vdm_STLFilBegin()
.
Once instanced set pointers to abstract data functions using
vdm_STLFilDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_STLFilSetFunction()
.
All triangle geometry in a STL file is constrained by the vertex to vertex rule - all adjacent triangles share two vertices which must be co-located. These coincident vertices are detected and assigned a single node number. Each triangular facet is assigned an element number. If the user specifies that the STL file is in ASCII format, the interface will check for an ASCII formatted file first and if this fails a binary formatted file is assumed. An element set is generated for each solid. Vertices are colocated only with individual solids. If no solids are specified in the file, then all vertices are checked for colocation. The PARTID.E dataset contains the solid number starting from 1.
5.39.1. Function Descriptions
The currently available STLFil functions are described in detail in this section.
-
vdm_STLFil *vdm_STLFilBegin(void)
create an instance of a STLFil object
Create an instance of a STLFil object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a STLFil object using
void vdm_STLFilEnd (vdm_STLFil *stlfil)
Return the current value of a STLFil object error flag using
Vint vdm_STLFilError (vdm_STLFil *stlfil)
- Returns:
The function returns a pointer to the newly created STLFil object. If the object creation fails, NULL is returned.
-
void vdm_STLFilEnd(vdm_STLFil *p)
destroy an instance of a STLFil object
-
Vint vdm_STLFilError(vdm_STLFil *p)
return the current value of a STLFil object error flag
-
void vdm_STLFilSetFunction(vdm_STLFil *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to STLFil object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_STLFilAbort(vdm_STLFil *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_STLFilSetFunction()
.- Parameters:
p – Pointer to STLFil object.
5.40. Tecplot file format - TecplotLib
The Tecplot file format is associated with the Tecplot visualization software from Tecplot Inc. The file format is supported for both reading and writing. Only the binary file format is supported. The Tecplot file usually contains a “.plt” suffix.
The methods associated with a TecplotLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_TecplotLibBegin()
- create an instance of a TecplotLib objectvdm_TecplotLibEnd()
- destroy an instance of a TecplotLib objectvdm_TecplotLibError()
- return TecplotLib object error flag
Get data functions
vdm_TecplotLibDataFun()
- fill DataFun object
Operation
vdm_TecplotLibAbort()
- set abort flagvdm_TecplotLibSetFunction()
- set a call back functions
Non standard functions
vdm_TecplotLibSetCoordsNames()
- set coordinate variable names
Instance a TecplotLib object using
vdm_TecplotLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_TecplotLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_TecplotLibSetFunction()
.
The Tecplot reader supports both ordered and finite element zones. The
node coordinate locations are assumed to have certain variable names.
For example, the x coordinate is named X, x, X1,
CoordinateX, X COORD, X(, X ( or XXX. Similar
strings are used for the y and z coordinates. The user may specify
variable name strings to be used for coordinate identification using the
function vdm_TecplotLibSetCoordsNames()
.
The elements and nodes are assumed to be those contained in the zones
with no shared connectivity lists. The PARTID.E dataset contains the
zone number associated with each element. By default partid is assigned
to each unique zone name. Use the VDM_CONVENTION_ALTPART to enable
the assignment of a partid for each zone regardless of zone name.
Use the convention, VDM_CONVENTION_CONVERTPOLY to test polygon and polyhedron cells for conversion to a primitive shape. By default polygon and polyhedron are not tested.
A step identifier will be attached to all zones with shared connectivity lists. The interface assumes that each zone with no shared connectivity list will be referenced an equal number of times by zones with shared connectivity lists. If this condition is not met then a reader error will occur and reading will terminate. If there are no zones with shared connectivity lists, no step identifiers will be assigned. If there are zones with shared connectivity lists, the number of step identifiers will be one plus the number of times a zone is referenced by another zone as a shared connectivity list.
Any variable name which does not match the current list of Tecplot or VdmTools specific variable names will be imported as an unknown, SYS_RES_UNKNOWN, variable. The dataset name for the unknown variable will include the variable name, with underscores, “_”, substituted for blanks, immediately after the dataset root name (UNKNOWN). See section Finite Element Result Dataset Names and Descriptions for a description of VdmTools specific variable names. The variable names are the “Contents” string.
Supported Variable Names, Results
Tecplot Variable Name |
Dataset |
---|---|
body-force 0-1,2,3 |
BODY_FORCE |
E |
ENERGY |
Mach |
MACH |
Mach_Number |
MACH |
P |
PRES |
RHO-U,V,W |
P |
RHO |
DENS |
T |
TEMP |
Total_Temperature |
TEMP.[TOT] |
Turbulent Viscosity |
VISC_EDDY |
U,V,W |
V |
VelocityX,Y,Z |
V |
Wall shear-1,2,3 |
WALL_SHEAR |
The Tecplot writer only supports binary Tecplot 11 format. The writer exports all nodes and elements as finite element zones. All higher order elements are converted to linear elements for output. A Tecplot zone must contain elements of similar topology. Therefore a zone is created for each group of topologically similar elements for each unique set of dataset identifiers. A zone will contain the values of all variables for the elements in the zone at the unique set of dataset identifiers.
Scalar, vector, symmetric tensor and element resultants results are exported. All element node results are converted to an element result for output. The Tecplot variable name is constructed from the RProp object result and qualifier types, the section number and data type component. Specifically, the undeformed node coordinates are written as variable names CoordinateX, CoordinateY and CoordinateZ.
5.40.1. Function Descriptions
The currently available TecplotLib functions are described in detail in this section.
-
vdm_TecplotLib *vdm_TecplotLibBegin(void)
create an instance of a TecplotLib object
Create an instance of a TecplotLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a TecplotLib object using
void vdm_TecplotLibEnd (vdm_TecplotLib *tecplotlib)
Return the current value of a TecplotLib object error flag using
Vint vdm_TecplotLibError (vdm_TecplotLib *tecplotlib)
- Returns:
The function returns a pointer to the newly created TecplotLib object. If the object creation fails, NULL is returned.
-
void vdm_TecplotLibEnd(vdm_TecplotLib *p)
destroy an instance of a TecplotLib object
-
Vint vdm_TecplotLibError(vdm_TecplotLib *p)
return the current value of a TecplotLib object error flag
-
void vdm_TecplotLibSetFunction(vdm_TecplotLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to TecplotLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_TecplotLibAbort(vdm_TecplotLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_TecplotLibSetFunction()
.- Parameters:
p – Pointer to TecplotLib object.
-
void vdm_TecplotLibSetCoordsNames(vdm_TecplotLib *p, Vchar *xname, Vchar *yname, Vchar *zname)
set user specified coordinate variable names
Set variable names for x, y and z coordinates. If a character string argument is NULL or if it is a zero length string, the variable name is not set.
- Parameters:
p – Pointer to TecplotLib object.
xname – Variable name of x coordinate
yname – Variable name of y coordinate
zname – Variable name of z coordinate
-
void vdm_TecplotLibDataFun(vdm_TecplotLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
- Parameters:
p – Pointer to TecplotLib object.
datafun – Pointer to DataFun object to be filled with data functions.
5.41. Vtk Legacy File Format - VTKLib
The Visualization ToolKit legacy file is an ASCII file containing model and results data.
The methods associated with a VTKLib object are the following.
Begin and end an instance of an object, return object error flag
vdm_VTKLibBegin()
- create an instance of a VTKLib objectvdm_VTKLibEnd()
- destroy an instance of a VTKLib objectvdm_VTKLibError()
- return VTKLib object error flag
Get data functions
vdm_VTKLibDataFun()
- fill DataFun object
Operation
vdm_VTKLibAbort()
- set abort flagvdm_VTKLibSetFunction()
- set a call back functions
Non standard functions
vdm_VTKLibSetSearch()
- set user specified search types
Instance a VTKLib object using
vdm_VTKLibBegin()
.
Once instanced set pointers to abstract data functions using
vdm_VTKLibDataFun()
.
If a callback function, such as a monitor function is to be used,
register this function using vdm_VTKLibSetFunction()
.
Only vtk files with the same step id are combined into a single model; otherwise, each step id refers to a new adapted mesh.
The PARTID.E dataset is set to a unique integer for each .vtk file.
5.41.1. Function Descriptions
The currently available VTKLib functions are described in detail in this section.
-
vdm_VTKLib *vdm_VTKLibBegin(void)
create an instance of a VTKLib object
Create an instance of a VTKLib object. Memory is allocated for the object private data and the pointer to the data is returned.
Destroy an instance of a VTKLib object using
void vdm_VTKLibEnd (vdm_VTKLib *vtklib)
Return the current value of a VTKLib object error flag using
Vint vdm_VTKLibError (vdm_VTKLib *vtklib)
- Returns:
The function returns a pointer to the newly created VTKLib object. If the object creation fails, NULL is returned.
-
void vdm_VTKLibEnd(vdm_VTKLib *p)
destroy an instance of a VTKLib object
-
Vint vdm_VTKLibError(vdm_VTKLib *p)
return the current value of a VTKLib object error flag
-
void vdm_VTKLibSetFunction(vdm_VTKLib *p, Vint funtype, Vfunc *function, Vobject *object)
set a call back functions
Set callback functions. By default all callbacks are NULL. A callback is not invoked if it is NULL.
- Parameters:
p – Pointer to VTKLib object.
funtype – Type of callback function to set
x=SYS_FUNCTION_MONITOR Monitor callback
function – Pointer to callback function
object – Pointer to the object to be returned as function argument
-
void vdm_VTKLibAbort(vdm_VTKLib *p)
set abort flag
Set abort flag. During the interface open process this flag is intermittently checked. If it has been set, the open process terminates and returns. The abort flag is usually set in the user defined callback function specified by
vdm_VTKLibSetFunction()
.- Parameters:
p – Pointer to VTKLib object.
-
void vdm_VTKLibDataFun(vdm_VTKLib *p, vdm_DataFun *datafun)
fill DataFun object
Fill a DataFun object with interface data functions.
-
void vdm_VTKLibSetSearch(vdm_VTKLib *p, Vint search)
set user specified search types
Set search type. if search is
VTKLIB_SEARCH_OFF
(the default) then a single file is read.If
VTKLIB_SEARCH_MULTIDIR
is specified, then the file being opened refers to a directory and all files with extension .vtk in this directory and any subdirectory will be read. It is assumed that file names terminate with an integer that specify a time step id.A search type of
VTKLIB_SEARCH_OPENFOAM
refers to a particular file structure of VTK files generated by OpenFOAM. As withVTKLIB_SEARCH_MULTIDIR
, the file being opened is a directory and all files with extension .vtk in this directory and any subdirectory will be read.- Parameters:
p – Pointer to VTKLib object.
search – Search type
x=VTKLIB_SEARCH_OFF Single file =VTKLIB_SEARCH_MULTIDIR File is directory =VTKLIB_SEARCH_OPENFOAM File is OpenFOAM style directory