Skip to main content

optiSLang 3D Postprocessing Script API 2025 R1

Data

Last update: 16.07.2025

Provides functions and classes to control the central data structure. More...

Classes

class  DataObjectContainer
 A general container for vector data. More...
 
class  DataObjectIdentMap
 A map of data objects of same type being associated with single string idents. More...
 
class  DataObjectKey
 the key (ident) of a data object in generic containers. More...
 
class  DataObjectPtr
 A shared pointer wrapper for data objects. More...
 
class  DataObjectVector
 A vector of DataObjectPtr. More...
 
class  Element
 Repesents the geometry of a finite element within a mesh. More...
 
struct  ElementTemporalEditInfo
 collects information to be used for faster FEM mesh creation. More...
 
class  IndexMapper
 Accessor for indices in global vectors and matrices. More...
 
class  MeshAssembly
 describes a finite element mesh More...
 
class  MetaStructure
 Defines a meta structure which contains all data that is used to create a finite element mesh. More...
 
class  MOPContainer
 a container storing all Field data models More...
 
class  MultivariateDistributionTypes
 encalsulates ENUM constants defining supported distribution types More...
 
class  RandomFieldContainer
 a container storing all random field decompositions More...
 
class  RandomFieldData
 contains random field data for analysis and simulation for a single random field. More...
 
class  RandomFieldGroup
 A group of random fields belonging together (either a single random field, or multiple cross-correlated fields) More...
 
class  ValueType
 Represents a type of value and a set of properties. ValueType is intended to be associated with a set of floating point data values. It stores information (the value type and named value attributes) about data values. It provides conversion routines between its associated floating point data values and value type. More...
 
class  ValueTypeBool
 Identifies a set of values as boolean and an associated set of optional attributes. It provides conversion routines between floating point and string representation. More...
 
class  ValueTypeDouble
 Identifies a set of values as number precision floating points values and an associated set of optional attributes (for instance minimum and maximum value). It provides conversion routines between floating point and string representation. More...
 
class  ValueTypeEnum
 Identifies a set of values as an enumration of strings type and an associated set of optional attributes (for instance minimum and maximum value). It provides conversion routines between floating point and string representation. More...
 
class  ValueTypeInt
 Identifies a set of values as integer values and an associated set of optional attributes (for instance minimum and maximum value). It provides conversion routines between floating point and string representation. More...
 
class  ValueTypeManager
 Keeps track of all unique ValueTypes. Required to create new ValueType shared resource instances. Script example:

Get the ValueTypeManager associated with a database's DataObjectContainer.

value_type_manager = sos.database().data().valueTypeManager()

Create a floating point ValueType, without any attributes

value_type = sos.ValueTypeDouble.create(value_type_manager, "my_unique_value_type")
print("Created ValueType:") print(value_type)

Set attribute

value_type.setAttribute("max", 10)

Get Attribute

max = value_type.attribute("max") print("Number of ValueTypes stored at ValueTypeManager:") print(value_type_manager.size()) #1 value_type = None #Clear unreferenced ValueTypes value_type_manager.clearUnused() print("Number of ValueTypes stored at ValueTypeManager:") print(value_type_manager.size()) #0. More...
 

Typedefs

typedef std::pair< string, dataobject_typesTQuantityIdent
 a type specifying a unique quantity, i.e. a string ident for the quantity name and the data type
 
typedef std::vector< number > TUIntVector
 a vector of numbers
 

Enumerations

enum  dataobject_types { NODE_DATA = 0, ELEMENT_DATA, INTPT_DATA, SCALAR_DATA }
 defines an enum for different types of vector data. More...
 

Functions

Matrix computeElementCoordinates (Structure database)
 
Matrix computeNodeCoordinates (Structure database)
 
::DataObjectPtr createElementDataObject (Structure database, Matrix data, bool as_sample=true)
 creates a data object of type ELEMENT based on an external vector data object More...
 
::DataObjectPtr createElementDataObject (Structure database, Matrix data, Matrix missing_data, bool as_sample=true)
 Creates a data object of type ELEMENT based on an external vector data object including its missing data information. More...
 
::DataObjectPtr createNodeDataObject (Structure database, Matrix data, bool as_sample=true)
 Creates a data object of type NODE based on an external vector data object including its missing data information. More...
 
::DataObjectPtr createNodeDataObject (Structure database, Matrix data, Matrix missing_data, bool as_sample=true)
 Creates a data object of type NODE based on an external vector data object including its missing data information. More...
 
::DataObjectPtr createScalarDataObject (number data, bool as_sample=true)
 creates a data object of type SCALAR based on an external vector data object More...
 
Structure database ()
 Gives access to the global database. More...
 
int globalIndexFromElement (Structure database, int part_index, int element_index)
 
int globalIndexFromGrid (Structure database, int i, int j=0, int k=0)
 
int globalIndexFromNode (Structure database, int part_index, int node_index)
 
int gridDimension (Structure database, unsigned char axis)
 
int numElements (Structure database)
 
int numNodes (Structure database)
 
bool operator== (DataObjectPtr::ObserverPtr a, DataObject *b)
 equal operator More...
 
 printMeshInfo (Structure database)
 prints information on the finite element mesh More...
 

Detailed Description

Provides functions and classes to control the central data structure.

Enumeration Type Documentation

◆ dataobject_types

defines an enum for different types of vector data.

Enumerator
NODE_DATA 

node data (one scalar per node)

ELEMENT_DATA 

element data (one scalar per element)

INTPT_DATA 

integration point data

SCALAR_DATA 

scalar data (vector of size 1)

Function Documentation

◆ computeElementCoordinates()

Matrix computeElementCoordinates ( Structure  database)
Returns
the matrix of x,y,z coordinates with respect to the centers of the elements of the reference element set (dimension 3*n; each column is one coordinate)
Parameters
databasethe database containing the reference mesh

◆ computeNodeCoordinates()

Matrix computeNodeCoordinates ( Structure  database)
Returns
the matrix of x,y,z coordinates with respect to the nodes of the reference node set (dimension 3*n; each column is one coordinate)
Parameters
databasethe database containing the reference mesh

◆ createElementDataObject() [1/2]

::DataObjectPtr createElementDataObject ( Structure  database,
Matrix  data,
bool  as_sample = true 
)

creates a data object of type ELEMENT based on an external vector data object

Parameters
databasethe database this object refers to. It is mainly used to test dimension etc.
datathe actual data. It must be a column vector. The ordering is with respect to the database. (indexMapper)
as_sampleif true, then the returned data object may be used as an input sample in algorithms. Else it is assumed to be a result.
Returns
a new data object containing the appropriate data. The data object will be active and will not have any missing data items.

◆ createElementDataObject() [2/2]

::DataObjectPtr createElementDataObject ( Structure  database,
Matrix  data,
Matrix  missing_data,
bool  as_sample = true 
)

Creates a data object of type ELEMENT based on an external vector data object including its missing data information.

Parameters
databaseThe database this object refers to. It is mainly used to test dimension etc.
dataThe actual data. It must be a column vector. The ordering is with respect to the indexMapper of the database.
missing_dataThe missing data information. As the data vector it must be a column vector with the same ordering. Furthermore it shall contain only values different from 0 at indices where data values are actually missing.
as_sampleIf true, then the returned data object may be used as an input sample in algorithms. Else it is assumed to be a result.
Returns
A new data object containing the appropriate data. The data object will be active and will not have any missing data items.

◆ createNodeDataObject() [1/2]

::DataObjectPtr createNodeDataObject ( Structure  database,
Matrix  data,
bool  as_sample = true 
)

Creates a data object of type NODE based on an external vector data object including its missing data information.

Parameters
databaseThe database this object refers to. It is mainly used to test dimension etc.
dataThe actual data. It must be a column vector. The ordering is with respect to the indexMapper of the database.
as_sampleIf true, then the returned data object may be used as an input sample in algorithms. Else it is assumed to be a result.
Returns
A new data object containing the appropriate data. The data object will be active and will not have any missing data items.

◆ createNodeDataObject() [2/2]

::DataObjectPtr createNodeDataObject ( Structure  database,
Matrix  data,
Matrix  missing_data,
bool  as_sample = true 
)

Creates a data object of type NODE based on an external vector data object including its missing data information.

Parameters
databaseThe database this object refers to. It is mainly used to test dimension etc.
dataThe actual data. It must be a column vector. The ordering is with respect to the indexMapper of the database.
missing_dataThe missing data information. As the data vector it must be a column vector with the same ordering. Furthermore it shall contain only values different from 0 at indices where data values are actually missing.
as_sampleIf true, then the returned data object may be used as an input sample in algorithms. Else it is assumed to be a result.
Returns
A new data object containing the appropriate data. The data object will be active and will not have any missing data items.

◆ createScalarDataObject()

::DataObjectPtr createScalarDataObject ( number  data,
bool  as_sample = true 
)

creates a data object of type SCALAR based on an external vector data object

Parameters
datathe actual data. It must be a column vector. The ordering is with respect to the database. (indexMapper)
as_sampleif true, then the returned data object may be used as an input sample in algorithms. Else it is assumed to be a result.
Returns
a new data object containing the appropriate data. The data object will be active and will not have any missing data items.

◆ database()

Structure database ( )

Gives access to the global database.

Returns
A reference to the object database_ptr (the object must be valid!), stored in
See also
application_data

◆ globalIndexFromElement()

int globalIndexFromElement ( Structure  database,
int  part_index,
int  element_index 
)
Returns
the global index in a data object from element index
Parameters
databasethe database
part_indexthe index of the part the element belongs to
element_indexthe index of the element within the part

◆ globalIndexFromGrid()

int globalIndexFromGrid ( Structure  database,
int  i,
int  j = 0,
int  k = 0 
)
Parameters
databasethe database
iindex i
jindex j
kindex k
Returns
the corresponding data index of the given grid coordinate

◆ globalIndexFromNode()

int globalIndexFromNode ( Structure  database,
int  part_index,
int  node_index 
)
Returns
the global index in a data object from node index
Parameters
databasethe database
part_indexthe index of the part the node belongs to
node_indexthe index of the node within the part

◆ gridDimension()

int gridDimension ( Structure  database,
unsigned char  axis 
)
Parameters
databasethe database
axisthe axis id (0: i, 1: j, 2: k)
Returns
the number of nodes along given axis of grid

◆ numElements()

int numElements ( Structure  database)
Parameters
databasethe database
Returns
the number of active elements

◆ numNodes()

int numNodes ( Structure  database)
Parameters
databasethe database
Returns
the number of active nodes

◆ operator==()

bool operator== ( DataObjectPtr::ObserverPtr  a,
DataObject *  b 
)

equal operator

Parameters
aa shared observer pointer to a data object
ba simple pointer to a data object to be compared
Returns
true if the memory addresses are equal

◆ printMeshInfo()

printMeshInfo ( Structure  database)

prints information on the finite element mesh

Parameters
databasedatabase containing the mesh

Connect with Ansys