exodus
index
/home/gdsjaar/src/SEACAS/ACCESS/scripts/exodus.py

 
Modules
       
os
sys

 
Classes
       
exodus

 
class exodus
    e = exodus('file.e',mode='r') -> open existing exodus file for data extraction
e = exodus('file.e',mode='a') -> open existing exodus file for data insertion/extraction
e = exodus('file.e',mode='w',title=title,
           numDims=numDims,numNodes=numNodes
           numElems=numElems,numBlocks=numBlocks,
           numNodeSets=numNodeSets,
           numSideSets=numSideSets) -> open new exodus file for data insertion
 
  Methods defined here:
__init__(self, file, mode=None, title=None, numDims=None, numNodes=None, numElems=None, numBlocks=None, numNodeSets=None, numSideSets=None, io_size=0)
close(self)
e.close() -> close the exodus file.
copy(self, fileName)
e.copy(fileName) -> copies Exodus database to fileName and returns
                    this copy as a new exodus object
elem_blk_info(self, id)
e.elem_blk_info(id) -> element block info for block "id" in exodus file
elem_type(self, id)
e.elem_type(id) -> type of element, i.e "QUAD", "TETRA", etc.
get_all_global_variable_values(self, step)
e.get_all_global_variable_values(step) -> get all global variable values
at time step within exodus file
get_all_node_set_params(self)
e.get_all_node_set_params() -> get total number of nodes and distribution factors
                               combined in all node sets
get_all_side_set_params(self)
e.get_all_side_set_params() -> get total number of elements, nodes, and distribution
                               factors combined in all side sets
get_coord(self, i)
e.get_coord(i) -> get (x,y,z) of i^th node in exodus file
get_coord_names(self)
e.get_coord_names() -> get list of coordinate names in exodus file
get_coords(self)
e.get_coords() -> get tuple of lists of coordinates (X,Y,Z) in exodus file
get_elem_attr(self, elemBlkID)
e.get_elm_attr(elemBlkID) -> get element block attributes
get_elem_blk_ids(self)
e.get_elem_blk_ids() -> get list of element block ids in exodus file
get_elem_blk_name(self, id)
e.get_elem_blk_name(id) -> get element block name for block "id" in 
                           exodus file
get_elem_blk_names(self)
e.get_elem_blk_names() -> get list of element block names in 
                          exodus file
get_elem_connectivity(self, id)
e.get_elem_connectivity(id) -> get tuple of one list and two reals 
(elem_block_connectivity,num_elem_this_blk,num_nodes_per_elem)
get_elem_id_map(self)
e.get_elem_id_map() -> get list mapping local elem id to global id 
                       in exodus file
get_elem_num_map(self)
e.get_elem_num_map() -> **DEPRECATED** 
                        use: e.ex_get_elem_id_map()
 
                        get list mapping local element id to 
                        global id in exodus file
get_elem_order_map(self)
e.get_elem_order_map() -> get list of optimized element ordering
get_element_attribute_names(self, blkId)
e.get_element_attribute_names(blId) -> get list of element attribute names for block in exodus file
get_element_property_names(self)
e.get_element_property_names() -> get list of element property names in exodus file
get_element_property_value(self, id, name)
e.get_element_property_value(id,name) -> get element property value in exodus file
                                         for an element block ID and property name
get_element_variable_names(self)
e.get_element_variable_names() -> get list of element variable names in exodus file
get_element_variable_number(self)
e.get_element_variable_number() -> get number of element variables in exodus file
get_element_variable_truth_table(self, blockId=None)
e.get_element_variable_truth_table(blockId) -> gets a truth table indicating which variables are
                                               defined for a block.  If blockId is not passed, then
                                               a concatenated truth table for all blocks is returned
                                               with variable index cycling faster than blockId
get_element_variable_values(self, blockId, name, step)
e.get_element_variable_values(blockId,"name",step) -> get list of element variable values
for an element block id at step within exodus file
get_global_variable_names(self)
e.get_global_variable_names() -> get list of global variable names in exodus file
get_global_variable_number(self)
e.get_global_variable_number() -> get number of global variables in exodus file
get_global_variable_value(self, name, step)
e.get_global_variable_value("name",step) -> get global variable value
at time step within exodus file
get_global_variable_values(self, name)
e.get_global_variable_values("name",step) -> get global variable values
within exodus file
get_info_records(self)
e.get_info_records() -> get a list info records from the exodus database;
                        each entry in the list is one line of info, e.g.
                        a line of an input deck
get_node_id_map(self)
e.get_node_id_map() -> get list mapping local node id to global id 
                       in exodus file
get_node_num_map(self)
e.get_node_num_map() -> **DEPRECATED** 
                        use: e.ex_get_node_id_map()
 
                        get list mapping local node id to global id 
                        in exodus file
get_node_set_dist_facts(self, id)
e.get_node_set_nodes(id) -> list of distribution factors for nodes in node set
get_node_set_ids(self)
e.get_node_set_ids() -> get list of node set ids in exodus file
get_node_set_name(self, id)
e.get_node_set_name(id) -> get node set name for node set "id" in 
                           exodus file
get_node_set_names(self)
e.get_node_set_names() -> get list of node set names in 
                          exodus file
get_node_set_nodes(self, id)
e.get_node_set_nodes(id) -> list of node id's in node set
get_node_set_params(self, id)
e.get_node_set_params() -> get number of nodes and distribution factors
                               in a node set
get_node_set_property_names(self)
e.get_node_set_property_names() -> get list of nodeset property names in exodus file
get_node_set_property_value(self, id, name)
e.get_node_set_property_value(id,name) -> get nodeset property value in exodus file
                                          for an nodeset ID and property name
get_node_set_variable_names(self)
e.get_node_set_variable_names() -> get list of node set variable names in exodus file
get_node_set_variable_number(self)
e.get_node_set_variable_number() -> get number of node set variables in exodus file
get_node_set_variable_truth_table(self, nodeSetId=None)
e.get_node_set_variable_truth_table(nodeSetId) -> gets a truth table indicating which variables are
                                               defined for a node set.  If nodeSetId is not passed, then
                                               a concatenated truth table for all node sets is returned
                                               with variable index cycling faster than nodeSetId
get_node_set_variable_values(self, id, name, step)
e.get_node_set_variable_names(id,"name",step) -> get list of node set variable values 
for node set id at step within exodus file
get_node_variable_names(self)
e.get_node_variable_names() -> get list of node variable names in exodus file
get_node_variable_number(self)
e.get_node_variable_number() -> get number of node variables in exodus file
get_node_variable_values(self, name, step)
e.get_node_variable_values("name",step) -> get list of node variable values
for a step within exodus file
get_qa_records(self)
e.get_qa_records() -> get a list of QA records from the exodus database;
                      each QA record is a length-4 tuple of strings:
                         1) the analysis code name
                         2) the analysis code descriptor, e.g. version
                         3) the analysis data
                         4) the analysis time
get_side_set(self, id)
e.get_side_set(id) -> get tuple of two lists (side_set_elem_list,
side_set_side_list) the side_set_elem_list contains the elements in the
side set, and the side_set_side_list contains the side ID for each of the
elements in the side_set_elem_list (identifies the side onto which the load
is applied).
get_side_set_dist_fact(self, id)
e.get_side_set_dist_fact(id) ->  list of distribution factors for sides in side set
get_side_set_ids(self)
e.get_side_set_ids() -> get list of side set ids in exodus file
get_side_set_name(self, id)
e.get_side_set_name(id) -> get side set name for side set "id" in 
                           exodus file
get_side_set_names(self)
e.get_side_set_names() -> get list of side set names in 
                          exodus file
get_side_set_node_list(self, id)
e.get_side_set_nodes(id) -> get tuple of two lists (side_set_node_cnt_list,
side_set_node_list) the side_set_node_cnt_list is the number of nodes on each
face and the side_set_node_list is the list of local node ids for the side set 
in exodus file
get_side_set_params(self, id)
e.get_side_set_params() -> get number of sides, and distribution factors
                           in a side set
get_side_set_property_names(self)
e.get_side_set_property_names() -> get list of sideset property names in exodus file
get_side_set_property_value(self, id, name)
e.get_side_set_property_value(id,name) -> get sideset property value in exodus file
                                          for an sideset ID and property name
get_side_set_variable_names(self)
e.get_side_set_variable_names() -> get list of side set variable names in exodus file
get_side_set_variable_number(self)
e.get_side_set_variable_number() -> get number of side set variables in exodus file
get_side_set_variable_truth_table(self, sideSetId=None)
e.get_side_set_variable_truth_table(sideSetId) -> gets a truth table indicating which variables are
                                               defined for a side set.  If sideSetId is not passed, then
                                               a concatenated truth table for all side sets is returned
                                               with variable index cycling faster than sideSetId
get_side_set_variable_values(self, id, name, step)
e.get_side_set_variable_names(id,"name",step) -> get list of side set variable values 
for side set id at step within exodus file
get_sierra_input(self, inpFileName=None)
e.get_sierra_input(inpFileName) -> get sierra input deck from exodus database;
                                   if inpFileName is passed, input is written
                                   to this file, e.g. myInputDeck.i; otherwise
                                   a list of file lines is returned
get_times(self)
e.get_times() -> get list of times in exodus file
num_attr(self, id)
e.num_attr(id) -> number of element attributes
num_blks(self)
e.num_blks() -> number of element blocks in exodus file
num_dimensions(self)
e.num_dimensions() -> number of dimensions in exodus file
num_elems(self)
e.num_elems() -> number of elements in exodus file
num_elems_in_blk(self, id)
e.num_elems_in_blk(id) -> number of elements in block "id" in exodus file
num_faces_in_side_set(self, id)
e.num_faces_in_side_set(id) -> number of faces in side set id
num_info_records(self)
# --------------------------------------------------------------------
num_node_sets(self)
e.num_node_sets() -> number of node sets in exodus file
num_nodes(self)
e.num_nodes() -> number of nodes in exodus file
num_nodes_in_node_set(self, id)
e.num_nodes_in_node_set(id) -> number of nodes in node set id
num_nodes_per_elem(self, id)
e.num_nodes_per_elem(id) -> number of nodes per element in block "id" in exodus file
num_side_sets(self)
e.num_side_sets() -> number of side sets in exodus file
num_times(self)
e.num_times() -> number of time steps in exodus file
put_all_global_variable_values(self, step, values)
e.put_all_global_variable_values(step,values) -> put all global variable values
at time step into exodus file
put_concat_elem_blk(self, elemBlkIDs, elemType, numElemThisBlk, numNodesPerElem, numAttr, defineMaps)
e.put_concat_elem_blk(self,elemBlkIDs, elemType, numElemThisBlk,...                        numNodesPerElem,numAttr,defineMaps)
put_coord_names(self, names)
e.put_coord_names() -> set list of coordinate names in exodus file
put_coords(self, xCoords, yCoords, zCoords)
e.put_coords() -> put coordinates (xCoords,yCoords,zCoords) in exodus file
put_elem_attr(self, elemBlkID, Attr)
e.put_elem_attr(elemBlkID,Attr) -> write element attribute lists for each block
put_elem_blk_info(self, id, elemType, numElems, numNodesPerElem, numAttrsPerElem)
e.put_elem_blk_info(id) -> sets ID, element type string (all caps), 
                           number of elements, number of nodes per element,
                           and number of attributes per element in an
                           element block
put_elem_blk_name(self, id, name)
e.put_elem_blk_name(id,name) -> write element block name for block 
                                "id" in exodus file
put_elem_blk_names(self, names)
e.put_elem_blk_names(names) -> write list of element block names to 
                               exodus file
put_elem_connectivity(self, id, connectivity)
e.put_elem_connectivity() -> set the element connectivity array
                             for all elements in a block.  The
                             information for this block must have
                             already been set by calling
                             e.put_elem_blk_info() on this block.
put_elem_id_map(self, map)
e.put_elem_id_map(map) -> put list mapping local elem id to global id 
                          into exodus file
put_element_attribute_names(self, blkId, names)
e.put_element_attribute_names(blId,names) -> set element attribute names for block in exodus file
put_element_property_value(self, id, name, value)
e.put_element_property_value(id,name,value) -> put an element property name and
                                               its integer value for a block ID
                                               into an exodus file
put_element_variable_name(self, name, index)
e.put_element_variable_name("name",index) -> element variable with name at index into exodus file
put_element_variable_values(self, blockId, name, step, values)
e.put_element_variable_values(blockId,"name",step,values) -> put values into element block id
and variable name at step into exodus file
put_global_variable_name(self, name, index)
e.put_global_variable_name("name",index) -> put global variable with name at index into exodus file
put_global_variable_value(self, name, step, value)
e.put_global_variable_value("name",step,value) -> put global variable value
and variable name at time step into exodus file
put_info(self, Title, numDim, numNodes, numElem, numElemBlk, numNodeSets, numSideSets)
e.put_info(self,Title,numDim,numNodes,numElem,numElemBlk,numNodeSets,numSideSets)
-> put initialization information into exodus file
put_info_records(self, info)
e.put_info_records(info) -> put a list of info records into an exodus database;
                            each entry in the list is one line of info, e.g.
                            a line of an input deck
put_node_id_map(self, map)
e.put_node_id_map(map) -> put list mapping local node id to global id 
                          into exodus file
put_node_set(self, id, nodeSetNodes)
e.put_node_set() -> set the id and node list for a node set (creates the node set).
put_node_set_dist_fact(self, id, nodeSetDistFact)
e.put_node_set_dist_fact() -> sets the distribution factors for a node set.
put_node_set_name(self, id, name)
e.put_node_set_name(id,name) -> write node set name for node set 
                                "id" in exodus file
put_node_set_names(self, names)
e.put_node_set_names(names) -> write list of node set names to 
                               exodus file
put_node_set_params(self, id, numSetNodes, numSetDistFacts=None)
e.put_node_set_params() -> sets the ID, number of nodes, and number of
                           distribution factors in a node set.  If the
                           last argument is not given, then the number
                           of distribution factors is set equal to the
                           number of nodes
put_node_set_property_value(self, id, name, value)
e.put_node_set_property_value(id,name,value) -> put a nodeset property name and
                                                its integer value for a nodeset
                                                ID into an exodus file
put_node_set_variable_name(self, name, index)
e.put_node_set_variable_name("name",index) -> put node set variable with name at index into exodus file
put_node_set_variable_values(self, id, name, step, values)
e.put_node_set_variable_values(id,"name",step,values) -> put values into node set id 
and variable name at step into exodus file
put_node_variable_name(self, name, index)
e.put_node_variable_name("name",index) -> node variable with name at index into exodus file
put_node_variable_values(self, name, step, values)
e.put_node_variable_values("name",step,values) -> put node values into
variable name at step into exodus file
put_qa_records(self, records)
e.put_qa_records(records) -> put a list of QA records into the exodus database;
                             each QA record must be a length-4 tuple of strings:
                               1) the analysis code name
                               2) the analysis code descriptor, e.g. version
                               3) the analysis data
                               4) the analysis time
put_side_set(self, id, sideSetElements, sideSetSides)
e.put_side_set() -> set the id, element ids, and side ids for
                    a side set (creates the side set).
put_side_set_dist_fact(self, id, sideSetDistFact)
e.put_side_set_dist_fact() -> sets the distribution factors for a side set.
                              A distribution factor is given for each node
                              on each face in the side set.
put_side_set_name(self, id, name)
e.put_side_set_name(id,name) -> write side set name for side set 
                                "id" in exodus file
put_side_set_names(self, names)
e.put_side_set_names(names) -> write list of side set names to 
                               exodus file
put_side_set_params(self, id, numSetSides, numSetDistFacts)
e.put_side_set_params() -> set ID, num elements, and num nodes of a sideset
put_side_set_property_value(self, id, name, value)
e.put_side_set_property_value(id,name,value) -> put a sideset property name and
                                                its integer value for a sideset
                                                ID into an exodus file
put_side_set_variable_name(self, name, index)
e.put_side_set_variable_name("name",index) -> put side set variable with name at index into exodus file
put_side_set_variable_values(self, id, name, step, values)
e.put_side_set_variable_values(id,"name",step,values) -> put values into side set id 
and variable name at step into exodus file
put_time(self, step, value)
e.put_time(step,value) -> put time step and value into exodus file
set_element_variable_number(self, number)
e.set_element_variable_number(number) -> set number of element variables in exodus file
set_element_variable_truth_table(self, table)
e.set_element_variable_truth_table(table) -> sets a truth table indicating which variables are
                                             defined for each block in the model.  
                                             Element variable index cycles faster than the 
                                             element block index
set_global_variable_number(self, number)
e.set_global_variable_number(number) -> set number of global variables in exodus file
set_node_set_variable_number(self, number)
e.set_node_set_variable_number(number) -> set number of node set variables in exodus file
set_node_set_variable_truth_table(self, table)
e.set_node_set_variable_truth_table(table) -> sets a truth table indicating which variables are
                                             defined for each node set in the model.  
                                             Node set variable index cycles faster than the 
                                             node set index
set_node_variable_number(self, number)
e.set_node_variable_number(number) -> set number of node variables in exodus file
set_side_set_variable_number(self, number)
e.set_side_set_variable_number(number) -> set number of side set variables in exodus file
set_side_set_variable_truth_table(self, table)
e.set_side_set_variable_truth_table(table) -> sets a truth table indicating which variables are
                                             defined for each side set in the model.  
                                             Side set variable index cycles faster than the 
                                             side set index
title(self)
e.title() -> title in exodus file
version_num(self)
e.version_num() -> string representation of exodus version number

 
Functions
       
POINTER(...)
addressof(...)
addressof(C instance) -> integer
Return the address of the C instance internal buffer
alignment(...)
alignment(C type) -> integer
alignment(C instance) -> integer
Return the alignment requirements of a C instance
basename(file)
Extract base name from file.
basename("test.e") -> "test"
byref(...)
byref(C instance[, offset=0]) -> byref-object
Return a pointer lookalike to a C instance, only usable
as function argument
collectElemConnectivity(exodusHandle, connectivity)
This function generates a list of lists that represent the element connectivity.
 
Usage:
 
exodusHandle = exodus("file.g","r")
connectivity = []
collectElemConnectivity(exodusHandle,connectivity)
 
exodusHandle.close()
collectLocalElemToLocalElems(exodusHandle, connectivity, localNodeToLocalElems, localElemToLocalElems)
This function generates a list of lists to go from local elem id
to connected local elem ids.
 
Usage:
 
exodusHandle = exodus("file.g","r")
connectivity = [] ## If this is not empty it will assume it is already filled.
localNodeToLocalElems = [] ## If this is not empty it will assume it is already filled.
localElemToLocalElems = []
collectLocalElemToLocalElems(exodusHandle,connectivity,localNodeToLocalElems,localElemToLocalElems)
 
exodusHandle.close()
collectLocalNodeToLocalElems(exodusHandle, connectivity, localNodeToLocalElems)
This function generates a list of lists to go from local node id
to local elem id.
 
Usage:
 
exodusHandle = exodus("file.g","r")
connectivity = [] ## If this is not empty it will assume it is already filled.
localNodeToLocalElems = []
collectLocalNodeToLocalElems(exodusHandle,connectivity,localNodeToLocalElems)
 
exodusHandle.close()
copyTransfer(fromFileName, toFileName, additionalGlobalVariables=[], additionalNodalVariables=[], additionalElementVariables=[])
This function creates an exodus file toFileName and copies everything from exodus file fromFileName returning
a file handle to toFileName.
 
Additional space is allocated for additionalGlobalVariables, additionalNodalVariables and additionalElementVariables if specified.
 
additionalGlobalVariables: list of global variable names to add.
 
additionalNodalVaraibles: list of nodal variable names to add.
 
additionalElementVariables: should be a list of element variable names to add to all blocks or
                            tuples ( name, blkIds ) where name is the element variable to add
                            and blkIds is a list of blkIds to add it to.
Usage:
 
fromFileName = "input.e"
toFileName = "output.e"
addGlobalVariables = [] ## Do not add any new global variables
addNodeVariables = ["node_dummy1","node_dummy2"] ## Add node_dummy1 and node_dummy2 as new node variables
addElementVariables = [ ("elem_dummy1",[1,2,3]), "elem_dummy2" ] ## Add elem_dummy1 on blkIds 1,2,3 and elem_dummy2 on all blocks
 
toFileHandle = copyTranfer(fromFileName,toFileName,addGlobalVariables,addNodeVariables,addElementVariables)
 
## Fill in new variables
 
toFileHandle.close()
ex_entity_type(varType)
ex_inquiry(inquiry)
findLibExoPath()
getAccessPath()
Return the base path of the exodus installation.
getExodusVersion()
Parse the exodusII.h header file and return the version number or 0 if not
found.
get_errno(...)
pointer(...)
resize(...)
Resize the memory buffer of a ctypes instance
set_conversion_mode(...)
set_conversion_mode(encoding, errors) -> (previous-encoding, previous-errors)
 
Set the encoding and error handling ctypes uses when converting
between unicode and strings.  Returns the previous values.
set_errno(...)
sizeof(...)
sizeof(C type) -> integer
sizeof(C instance) -> integer
Return the size in bytes of a C instance

 
Data
        DEFAULT_MODE = 0
EXODUS_LIB = <CDLL '/home/gdsjaar/src/SEACAS/lib/shared/libexodus.so', handle 2ae0810 at 284b650>
EXODUS_PATH = '/home/gdsjaar/src/SEACAS/lib/shared/'
EXODUS_PY_CONTACTS = '\nAuthors: Timothy Shelton (trshelt@sandia.gov)...\n David Littlewood (djlittl@sandia.gov)\n'
EXODUS_PY_COPYRIGHT = '\nYou are using exodus.py v 1.0 (beta), a python ...ernment retains certain rights in this software.\n'
EXODUS_PY_COPYRIGHT_AND_LICENSE = ' \n\nexodus.py v 1.0 (beta) is a python wrapper of...N IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n'
EXODUS_PY_VERSION = '1.0 (beta)'
EXODUS_SO = '/home/gdsjaar/src/SEACAS/lib/shared/libexodus.so'
EX_API_VERSION_NODOT = 602
EX_BULK_INT64_API = 32768
EX_CLOBBER = 8
EX_IDS_INT64_API = 16384
EX_INQ_INT64_API = 65536
EX_MAPS_INT64_API = 8192
EX_NOCLOBBER = 4
MAX_LINE_LENGTH = 80
MAX_STR_LENGTH = 32
NETCDF_LIB = <CDLL '/home/gdsjaar/src/SEACAS/lib/shared/libnetcdf.so', handle 2ae9210 at 2855090>
NETCDF_SO = '/home/gdsjaar/src/SEACAS/lib/shared/libnetcdf.so'
RTLD_GLOBAL = 256
RTLD_LOCAL = 0
cdll = <ctypes.LibraryLoader object>
exErrPrintMode = c_int(1)
memmove = <CFunctionType object>
memset = <CFunctionType object>
oneline = 'Gather from or export to Exodus II files using the Exodus II library'
pydll = <ctypes.LibraryLoader object>
pythonapi = <PyDLL 'None', handle 3224621188 at 2b51190>