ogs5py.tools.types

type definitions for ogs5

General Constants

STRTYPE alias of builtins.str
PCS_TYP PCS types
PCS_EXT PCS file extensions with _
PRIM_VAR primary variables
PRIM_VAR_BY_PCS primary variables per PCS
OGS_EXT all ogs file extensions
MULTI_FILES all ogs files that can occure multiple times
STRTYPE

alias of builtins.str

ELEMENT_KEYS = {'hex', 'line', 'pris', 'pyra', 'quad', 'tet', 'tri'}

ogs element names

Type:set
ELEM_1D = ['line']

ogs element names

Type:set
ELEM_2D = ['tri', 'quad']

ogs element names

Type:set
ELEM_3D = ['tet', 'pyra', 'pris', 'hex']

ogs element names

Type:set
ELEM_DIM = [['line'], ['tri', 'quad'], ['tet', 'pyra', 'pris', 'hex']]

ogs element names

Type:set
ELEM_NAMES = ['line', 'tri', 'quad', 'tet', 'pyra', 'pris', 'hex']

ogs element names

Type:list
ELEM_TYP = {0: 'line', 1: 'tri', 2: 'quad', 3: 'tet', 4: 'pyra', 5: 'pris', 6: 'hex', 'line': 0, 'tri': 1, 'quad': 2, 'tet': 3, 'pyra': 4, 'pris': 5, 'hex': 6}

type code per element name

Type:dict
ELEM_TYP1D = {0: 'line', 'line': 0}

type code per element name

Type:dict
ELEM_TYP2D = {1: 'tri', 2: 'quad', 'tri': 1, 'quad': 2}

type code per element name

Type:dict
ELEM_TYP3D = {3: 'tet', 4: 'pyra', 5: 'pris', 6: 'hex', 'tet': 3, 'pyra': 4, 'pris': 5, 'hex': 6}

type code per element name

Type:dict
EMPTY_GLI = {'point_md': None, 'point_names': None, 'points': None, 'polylines': [], 'surfaces': [], 'volumes': []}

empty gli dict

Type:dict
EMPTY_MSH = {'element_id': {}, 'elements': {}, 'material_id': {}, 'mesh_data': {}, 'nodes': array([], shape=(0, 3), dtype=float64)}

empty mesh dict

Type:dict
EMPTY_PLY = {'EPSILON': None, 'ID': None, 'MAT_GROUP': None, 'NAME': None, 'POINTS': None, 'POINT_VECTOR': None, 'TYPE': None}

empty ogs gli polyline dict

Type:dict
EMPTY_SRF = {'EPSILON': None, 'ID': None, 'MAT_GROUP': None, 'NAME': None, 'POLYLINES': None, 'TIN': None, 'TYPE': None}

empty ogs gli surface dict

Type:dict
EMPTY_VOL = {'LAYER': None, 'MAT_GROUP': None, 'NAME': None, 'SURFACES': None, 'TYPE': None}

empty ogs gli volume dict

Type:dict
GLI_KEYS = {'point_md', 'point_names', 'points', 'polylines', 'surfaces', 'volumes'}

ogs gli dict keys

Type:set
GLI_KEY_LIST = ['#POINTS', '#POLYLINE', '#SURFACE', '#VOLUME', '#STOP']

gli main keys

Type:list
MESHIO_NAMES = ['line', 'triangle', 'quad', 'tetra', 'pyramid', 'wedge', 'hexahedron']

coresponding element names in meshio

Type:list
MESH_DATA_KEYS = {'AXISYMMETRY', 'CROSS_SECTION', 'GEO_NAME', 'GEO_TYPE', 'LAYER', 'PCS_TYPE'}

ogs mesh data keys

Type:set
MESH_KEYS = {'element_id', 'elements', 'material_id', 'mesh_data', 'nodes'}

ogs mesh dict-keys

Type:set
MULTI_FILES = ['mpd', 'gli_ext', 'rfr', 'gem_init', 'asc']

all ogs files that can occure multiple times

Type:list
NODE_NO = {0: 2, 1: 3, 2: 4, 3: 4, 4: 5, 5: 6, 6: 8, 'line': 2, 'tri': 3, 'quad': 4, 'tet': 4, 'pyra': 5, 'pris': 6, 'hex': 8}

Node numbers per element name

Type:dict
OGS_EXT = ['.msh', '.gli', '.ddc', '.pcs', '.rfd', '.cct', '.fct', '.bc', '.ic', '.st', '.mmp', '.msp', '.mfp', '.mcp', '.gem', '.krc', '.pqc', '.rei', '.pct', '.num', '.tim', '.out']

all ogs file extensions

Type:list
PCS_EXT = ['', '_GROUNDWATER_FLOW', '_LIQUID_FLOW', '_RICHARDS_FLOW', '_AIR_FLOW', '_MULTI_PHASE_FLOW', '_PS_GLOBAL', '_HEAT_TRANSPORT', '_DEFORMATION', '_MASS_TRANSPORT', '_OVERLAND_FLOW', '_FLUID_MOMENTUM', '_RANDOM_WALK', '_NO_PCS', '_TNEQ', '_TES', '_DEFORMATION_SINGLEFLOW_MONO', '_MULTI_COMPONENTIAL_FLOW']

PCS file extensions with _

Type:list
PCS_TYP = ['', 'GROUNDWATER_FLOW', 'LIQUID_FLOW', 'RICHARDS_FLOW', 'AIR_FLOW', 'MULTI_PHASE_FLOW', 'PS_GLOBAL', 'HEAT_TRANSPORT', 'DEFORMATION', 'MASS_TRANSPORT', 'OVERLAND_FLOW', 'FLUID_MOMENTUM', 'RANDOM_WALK', 'NO_PCS', 'TNEQ', 'TES', 'DEFORMATION_SINGLEFLOW_MONO', 'MULTI_COMPONENTIAL_FLOW']

PCS types

Type:list
PLY_KEYS = {'EPSILON', 'ID', 'MAT_GROUP', 'NAME', 'POINTS', 'POINT_VECTOR', 'TYPE'}

ogs gli polyline keys

Type:set
PLY_KEY_LIST = ['ID', 'NAME', 'TYPE', 'EPSILON', 'MAT_GROUP', 'POINTS', 'POINT_VECTOR']

gli polyline keys

Type:list
PLY_TYPES = [<class 'int'>, <class 'str'>, <class 'int'>, <class 'float'>, <class 'int'>, <class 'list'>, <class 'str'>]

gli polyline key types

Type:list
PRIM_VAR = [[''], ['HEAD'], ['PRESSURE1'], ['PRESSURE1'], ['PRESSURE1', 'TEMPERATURE1'], ['PRESSURE1', 'PRESSURE2'], ['PRESSURE1, SATURATION2'], ['TEMPERATURE1'], ['DISPLACEMENT_X1', 'DISPLACEMENT_Y1', 'DISPLACEMENT_Z1'], [''], ['HEAD'], ['VELOCITY1_X', 'VELOCITY1_Y', 'VELOCITY1_Z'], [''], [''], [''], [''], [''], ['']]

primary variables

Type:list
PRIM_VAR_BY_PCS = {'': [''], 'AIR_FLOW': ['PRESSURE1', 'TEMPERATURE1'], 'DEFORMATION': ['DISPLACEMENT_X1', 'DISPLACEMENT_Y1', 'DISPLACEMENT_Z1'], 'DEFORMATION_SINGLEFLOW_MONO': [''], 'FLUID_MOMENTUM': ['VELOCITY1_X', 'VELOCITY1_Y', 'VELOCITY1_Z'], 'GROUNDWATER_FLOW': ['HEAD'], 'HEAT_TRANSPORT': ['TEMPERATURE1'], 'LIQUID_FLOW': ['PRESSURE1'], 'MASS_TRANSPORT': [''], 'MULTI_COMPONENTIAL_FLOW': [''], 'MULTI_PHASE_FLOW': ['PRESSURE1', 'PRESSURE2'], 'NO_PCS': [''], 'OVERLAND_FLOW': ['HEAD'], 'PS_GLOBAL': ['PRESSURE1, SATURATION2'], 'RANDOM_WALK': [''], 'RICHARDS_FLOW': ['PRESSURE1'], 'TES': [''], 'TNEQ': ['']}

primary variables per PCS

Type:dict
SRF_KEYS = {'EPSILON', 'ID', 'MAT_GROUP', 'NAME', 'POLYLINES', 'TIN', 'TYPE'}

ogs gli surface keys

Type:set
SRF_KEY_LIST = ['ID', 'NAME', 'EPSILON', 'TYPE', 'TIN', 'MAT_GROUP', 'POLYLINES']

gli surface keys

Type:list
SRF_TYPES = [<class 'int'>, <class 'str'>, <class 'float'>, <class 'int'>, <class 'str'>, <class 'int'>, <class 'list'>]

gli surface key types

Type:list
VOL_KEYS = {'LAYER', 'MAT_GROUP', 'NAME', 'SURFACES', 'TYPE'}

ogs gli volume keys

Type:set
VOL_KEY_LIST = ['NAME', 'TYPE', 'SURFACES', 'MAT_GROUP', 'LAYER']

gli volume keys

Type:list
VOL_TYPES = [<class 'str'>, <class 'str'>, <class 'list'>, <class 'str'>, <class 'int'>]

gli volume key types

Type:list
VTK_TYP = {3: 'line', 5: 'tri', 9: 'quad', 10: 'tet', 14: 'pyra', 13: 'pris', 12: 'hex', 'line': 3, 'tri': 5, 'quad': 9, 'tet': 10, 'pyra': 14, 'pris': 13, 'hex': 12}

vtk type codes per element name

Type:dict