Source code for abaqus.Odb.OdbFrame

import typing

from abaqusConstants import *
from .FieldOutput import FieldOutput
from .OdbLoadCase import OdbLoadCase


[docs]class OdbFrame: """The domain of the OdbFrame object is taken from the parent step. Attributes ---------- cyclicModeNumber: int An Int specifying the cyclic mode number associated with the data stored on this frame. Only frequency analyses of cyclic symmetry models possess cyclic mode numbers. domain: SymbolicConstant A SymbolicConstant specifying the domain of the step of which the frame is a member. Possible values are TIME, FREQUENCY, and MODAL. frequency: float A Float specifying the frequency. This member is valid only if **domain=FREQUENCY** or if the **procedureType** member of the :py:class:`~abaqus.Step.Step.Step` object=FREQUENCY. The default value is 0.0. mode: int An Int specifying the eigenmode. This member is valid only if **domain=MODAL**. associatedFrame: 'OdbFrame' An :py:class:`~abaqus.Odb.OdbFrame.OdbFrame` object specifying the real or imaginary portion of the data corresponding to this cyclic symmetry mode. fieldOutputs: dict[str, FieldOutput] A repository of :py:class:`~abaqus.Odb.FieldOutput.FieldOutput` objects specifying the key to the **fieldOutputs**repository is a String representing an output variable. loadCase: OdbLoadCase An :py:class:`~abaqus.Odb.OdbLoadCase.OdbLoadCase` object specifying the load case for the frame. Notes ----- This object can be accessed by: .. code-block:: python import odbAccess session.odbs[name].steps[name].frames[i] """ # An Int specifying the cyclic mode number associated with the data stored on this frame. # Only frequency analyses of cyclic symmetry models possess cyclic mode numbers. cyclicModeNumber: int = None # A SymbolicConstant specifying the domain of the step of which the frame is a member. # Possible values are TIME, FREQUENCY, and MODAL. domain: SymbolicConstant = None # A Float specifying the frequency. This member is valid only if *domain*=FREQUENCY or if # the *procedureType* member of the Step object=FREQUENCY. The default value is 0.0. frequency: float = 0 # An Int specifying the eigenmode. This member is valid only if *domain*=MODAL. mode: int = None # An OdbFrame object specifying the real or imaginary portion of the data corresponding to # this cyclic symmetry mode. associatedFrame: 'OdbFrame' = None # A repository of FieldOutput objects specifying the key to the *fieldOutputs*repository # is a String representing an output variable. fieldOutputs: dict[str, FieldOutput] = dict[str, FieldOutput]() # An OdbLoadCase object specifying the load case for the frame. loadCase: OdbLoadCase = OdbLoadCase('loadCase') @typing.overload def __init__(self, incrementNumber: int, frameValue: float, description: str = ''): """This method creates an OdbFrame object and appends it to the frame sequence. Notes ----- This function can be accessed by: .. code-block:: python session.odbs[name].steps[name].Frame Parameters ---------- incrementNumber An Int specifying the frame increment number within the step. The base frame has normally increment number 0, and the results run from 1. In case of multiple load cases, the same increment number is duplicated for each loadcase. frameValue A Float specifying the value in units determined by the *domain* member of the Step object. The equivalent in the time domain is *stepTime*; in the frequency domain the equivalent is *frequency*; and in the modal domain the equivalent is *mode*. description A String specifying the contents of the frame. The default value is an empty string. Returns ------- An OdbFrame object. """ pass @typing.overload def __init__(self, mode: int, frequency: float, description: str = ''): """This constructor creates an OdbFrame object in the frequency domain and appends it to the frame sequence. The arguments to the constructor are valid only when *domain*=FREQUENCY or *domain*=MODAL. Notes ----- This function can be accessed by: .. code-block:: python session.odbs[name].steps[name].Frame Parameters ---------- mode An Int specifying the eigenmode. This member is valid only if *domain*=MODAL. frequency A Float specifying the frequency. This member is valid only if *domain*=FREQUENCY or if the *procedureType* member of the Step object=FREQUENCY. The default value is 0.0. description A String specifying the contents of the frame. The default value is an empty string. Returns ------- An OdbFrame object. """ pass @typing.overload def __init__(self, loadCase: OdbLoadCase, description: str = '', frequency: float = 0): """This constructor creates an OdbFrame object for a specific load case and appends it to the frame sequence. Notes ----- This function can be accessed by: .. code-block:: python session.odbs[name].steps[name].Frame Parameters ---------- loadCase An OdbLoadCase object specifying the load case for the frame. description A String specifying the contents of the frame. The default value is an empty string. frequency A Float specifying the frequency. This member is valid only if *domain*=FREQUENCY or if the *procedureType* member of the Step object=FREQUENCY. The default value is 0.0. Returns ------- An OdbFrame object. """ pass def Frame(self, *args, **kwargs): pass @typing.overload def FieldOutput(self, name: str, description: str, type: SymbolicConstant, componentLabels: tuple = (), validInvariants: SymbolicConstant = None, isEngineeringTensor: Boolean = OFF): """This method creates a FieldOutput object. Notes ----- This function can be accessed by: .. code-block:: python session.odbs[name].steps[name].Frame Parameters ---------- name A String specifying the output variable name. description A String specifying the output variable. Colon (:) should not be used as a part of the field output description. type A SymbolicConstant specifying the output type. Possible values are SCALAR, VECTOR, TENSOR_3D_FULL, TENSOR_3D_PLANAR, TENSOR_3D_SURFACE, TENSOR_2D_PLANAR, and TENSOR_2D_SURFACE. componentLabels A sequence of Strings specifying the labels for each component of the value. The length of the sequence must match the type. If *type*=TENSOR, the default value is *name* with the suffixes ('11', '22', '33', '12', '13', '23'). If *type*=VECTOR, the default value is *name* with the suffixes ('1', '2', '3'). If *type*=SCALAR, the default value is an empty sequence. validInvariants A sequence of SymbolicConstants specifying which invariants should be calculated for this field. An empty sequence indicates that no invariants are valid for this field. Possible values are:MAGNITUDEMISESTRESCAPRESSINV3MAX_PRINCIPALMID_PRINCIPALMIN_PRINCIPALMAX_INPLANE_PRINCIPALMIN_INPLANE_PRINCIPALOUTOFPLANE_PRINCIPALThe default value is an empty sequence. isEngineeringTensor A Boolean specifying whether the field is an engineering tensor or not. Setting isEngineeringTensor to true makes a tensor field behave as a strain like quantity where the off-diagonal components of tensor are halved for invariants computation. This parameter applies only to tensor field outputs. The default value is OFF. Returns ------- A FieldOutput object. """ pass @typing.overload def FieldOutput(self, field: 'FieldOutput', name: str = '', description: str = ''): """This method creates a FieldOutput object from an existing FieldOutput object of the same output database. Notes ----- This function can be accessed by: .. code-block:: python session.odbs[name].steps[name].Frame Parameters ---------- field A FieldOutput object. name A String specifying the name of the FieldOutput object. description A String specifying the output variable. Colon (:) should not be used as a part of the field output description. Returns ------- A FieldOutput object. """ pass def FieldOutput(self, *args, **kwargs): if 'name' in kwargs.keys(): name = kwargs['name'] else: if isinstance(args[0], FieldOutput): name = args[1] else: name = args[0] self.fieldOutputs[name] = fieldOutput = FieldOutput(*args, **kwargs) return fieldOutput