result_objects Package
element_table_object Module
digraph inheritanceacd67543ee {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled"];
"pyNastran.op2.result_objects.element_table_object.ElementTableArray" [URL="#pyNastran.op2.result_objects.element_table_object.ElementTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.op2_objects.BaseElement" -> "pyNastran.op2.result_objects.element_table_object.ElementTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.element_table_object.RealElementTableArray" [URL="#pyNastran.op2.result_objects.element_table_object.RealElementTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.element_table_object.ElementTableArray" -> "pyNastran.op2.result_objects.element_table_object.RealElementTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.BaseElement" [URL="#pyNastran.op2.result_objects.op2_objects.BaseElement",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" -> "pyNastran.op2.result_objects.op2_objects.BaseElement" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.BaseScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The base scalar class is used by:"];
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" -> "pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.ScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Used by all vectorized objects including:"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" -> "pyNastran.op2.result_objects.op2_objects.ScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
}
- class pyNastran.op2.result_objects.element_table_object.ElementTableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
BaseElement- property headers
op2_objects Module
digraph inheritancec770694c5f {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled"];
"pyNastran.op2.result_objects.op2_objects.BaseElement" [URL="#pyNastran.op2.result_objects.op2_objects.BaseElement",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" -> "pyNastran.op2.result_objects.op2_objects.BaseElement" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.BaseScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The base scalar class is used by:"];
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" -> "pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.ScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Used by all vectorized objects including:"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" -> "pyNastran.op2.result_objects.op2_objects.ScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
}
- class pyNastran.op2.result_objects.op2_objects.BaseElement(data_code, isubcase, apply_data_code=True)[source]
Bases:
ScalarObject
- class pyNastran.op2.result_objects.op2_objects.BaseScalarObject[source]
Bases:
Op2Codes- The base scalar class is used by:
RealEigenvalues
BucklingEigenvalues
ComplexEigenvalues
ScalarObject
- property class_name: str
- class pyNastran.op2.result_objects.op2_objects.ScalarObject(data_code, isubcase, apply_data_code=True)[source]
Bases:
BaseScalarObject- Used by all vectorized objects including:
DisplacementArray
RodStressArray
- property dataframe: pd.DataFrame
alternate way to get the dataframe
- print_data_members()[source]
Prints out the “unique” vals of the case.
Uses a provided list of data_code[‘data_names’] to set the values for each subcase. Then populates a list of self.name+’s’ (by using setattr) with the current value. For example, if the variable name is ‘mode’, we make self.modes. Then to extract the values, we build a list of of the variables that were set like this and then loop over them to print their values.
This way there is no dependency on one result type having [‘mode’] and another result type having [‘mode’,’eigr’,’eigi’].
- recast_gridtype_as_string(grid_type)[source]
converts a grid_type integer to a string
Point type (per NX 10; OUG table; p.5-663): -1, Harmonic Point (my choice) -> ‘ ‘ = 538976288 (as an integer) =1, GRID Point =2, Scalar Point =3, Extra Point =4, Modal =5, p-elements, 0-DOF -6, p-elements, number of DOF
- pyNastran.op2.result_objects.op2_objects.combination_inplace(data: np.ndarray, datai: np.ndarray, factor: integer_float_types, ires=None) None[source]
Accumulate a scaled result into data:
data[..., ires] += datai[..., ires] * factor.Used by solution_combination to build linear combinations of load cases. The typical two-step pattern is:
combination_inplace(data, None, 0.0, ires) – zero the columns to reset for accumulation
combination_inplace(data, casei.data, factor, ires) – accumulate each scaled case
- Parameters:
- datanp.ndarray
the output array to modify in place (shape: ntimes x nelements x ncols)
- datainp.ndarray or None
the input array to add scaled. None is only valid with factor=0.0 (zeros data, step 1 above). None with factor!=0.0 raises RuntimeError.
- factorint/float
scale factor applied to datai before adding
- iresslice, list[int], or None
column indices to operate on; None means all columns. Used to skip derived quantities (e.g., safety margins, principal stresses) that should not be linearly combined.
- pyNastran.op2.result_objects.op2_objects.get_complex_times_dtype(size: int) tuple[str, str][source]
- pyNastran.op2.result_objects.op2_objects.get_sort_element_sizes(self, debug: bool = False) tuple[int, int, int][source]
- pyNastran.op2.result_objects.op2_objects.get_sort_node_sizes(self, debug: bool = False) tuple[int, int, int][source]
- pyNastran.op2.result_objects.op2_objects.get_times_dtype(nonlinear_factor: int | float, size: int, analysis_code_fmt=None) tuple[str, str, str][source]
- pyNastran.op2.result_objects.op2_objects.recast_gridtype_as_string(self, grid_type: int) str[source]
converts a grid_type integer to a string
Point type (per NX 10; OUG table; p.5-663): -1, Harmonic Point (my choice) -> ‘ ‘ = 538976288 (as an integer) =1, GRID Point =2, Scalar Point =3, Extra Point =4, Modal =5, p-elements, 0-DOF -6, p-elements, number of DOF
scalar1_table_object Module
digraph inheritance9005a5a43f {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.BaseScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The base scalar class is used by:"];
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" -> "pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.ScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Used by all vectorized objects including:"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" -> "pyNastran.op2.result_objects.op2_objects.ScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.scalar1_table_object.RealScalarTableArray" [URL="#pyNastran.op2.result_objects.scalar1_table_object.RealScalarTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.scalar1_table_object.ScalarTableArray" -> "pyNastran.op2.result_objects.scalar1_table_object.RealScalarTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.scalar1_table_object.ScalarTableArray" [URL="#pyNastran.op2.result_objects.scalar1_table_object.ScalarTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" -> "pyNastran.op2.result_objects.scalar1_table_object.ScalarTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
}
- defines:
ScalarTableObject
- class pyNastran.op2.result_objects.scalar1_table_object.RealScalarTableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
ScalarTableArray- property is_complex: bool
- property is_real: bool
- class pyNastran.op2.result_objects.scalar1_table_object.ScalarTableArray(data_code, unused_is_sort1, isubcase, unused_dt)[source]
Bases:
ScalarObject- property headers
scalar6_table_object Module
digraph inheritancee0d9b0aeee {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.BaseScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The base scalar class is used by:"];
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" -> "pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.ScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Used by all vectorized objects including:"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" -> "pyNastran.op2.result_objects.op2_objects.ScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.scalar6_table_object.RealScalarTableArray" [URL="#pyNastran.op2.result_objects.scalar6_table_object.RealScalarTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.scalar6_table_object.ScalarTableArray" -> "pyNastran.op2.result_objects.scalar6_table_object.RealScalarTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.scalar6_table_object.ScalarTableArray" [URL="#pyNastran.op2.result_objects.scalar6_table_object.ScalarTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" -> "pyNastran.op2.result_objects.scalar6_table_object.ScalarTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
}
- defines:
ScalarTableObject
- class pyNastran.op2.result_objects.scalar6_table_object.RealScalarTableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
ScalarTableArray- property is_complex: bool
- property is_real: bool
- class pyNastran.op2.result_objects.scalar6_table_object.ScalarTableArray(data_code, unused_is_sort1, isubcase, unused_dt)[source]
Bases:
ScalarObject- property headers
table_object Module
digraph inheritancef9924b78ce {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.BaseScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The base scalar class is used by:"];
"pyNastran.op2.op2_interface.op2_codes.Op2Codes" -> "pyNastran.op2.result_objects.op2_objects.BaseScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" [URL="#pyNastran.op2.result_objects.op2_objects.ScalarObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Used by all vectorized objects including:"];
"pyNastran.op2.result_objects.op2_objects.BaseScalarObject" -> "pyNastran.op2.result_objects.op2_objects.ScalarObject" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.table_object.ComplexTableArray" [URL="#pyNastran.op2.result_objects.table_object.ComplexTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="complex displacement style table"];
"pyNastran.op2.result_objects.table_object.TableArray" -> "pyNastran.op2.result_objects.table_object.ComplexTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.table_object.RealTableArray" [URL="#pyNastran.op2.result_objects.table_object.RealTableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="displacement style table"];
"pyNastran.op2.result_objects.table_object.TableArray" -> "pyNastran.op2.result_objects.table_object.RealTableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.op2.result_objects.table_object.TableArray" [URL="#pyNastran.op2.result_objects.table_object.TableArray",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Base class for:"];
"pyNastran.op2.result_objects.op2_objects.ScalarObject" -> "pyNastran.op2.result_objects.table_object.TableArray" [arrowsize=0.5,style="setlinewidth(0.5)"];
}
- defines:
TableObject
RealTableArray
ComplexTableArray
- these are used by:
RealDisplacementArray
RealVelocityArray
RealAccelerationArray
RealEigenvaluesArray
RealSPCForcesArray
RealMPCForcesArray
RealAppliedLoadsArray
ComplexDisplacementArray
ComplexVelocityArray
ComplexAccelerationArray
ComplexEigenvaluesArray
ComplexSPCForcesArray
ComplexMPCForcesArray
ComplexAppliedLoadsArray
- class pyNastran.op2.result_objects.table_object.ComplexTableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
TableArraycomplex displacement style table
- classmethod add_complex_modes_case(table_name, node_gridtype, data, isubcase, modes: ndarray, eigrs: ndarray, eigis: ndarray, is_sort1: bool = True, is_random: bool = False, is_msc: bool = True, table_code: int = 0, random_code=0, title='', subtitle='', label='')[source]
- classmethod add_freq_case(table_name: str, node_gridtype: ndarray, data: ndarray, isubcase: int, freqs: ndarray, is_sort1=True, is_random=False, is_msc=True, random_code=0, title='', subtitle='', label='')[source]
- property is_complex: bool
- property is_real: bool
- plot_freq(nids: ndarray, dof: int, mag_unit='', scale: float = 1.0, labels: list[str] | None = None, yscale: str = 'log', ifig: int = 1)[source]
- plot_tf(nids_in: int | list[int], nids_out: int | list[int], dof: int, yscale: str = 'log', ifig: int = 1)[source]
- class pyNastran.op2.result_objects.table_object.RealTableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
TableArraydisplacement style table
- classmethod add_modal_case(table_name, node_gridtype, data, isubcase, modes, eigenvalues, mode_cycles, is_sort1=True, is_random=False, is_msc=True, random_code=0, title='', subtitle='', label='')[source]
- classmethod add_static_case(table_name, node_gridtype, data, isubcase, is_sort1=True, is_random=False, is_msc=True, random_code=0, title='', subtitle='', label='')[source]
- classmethod add_transient_case(table_name, node_gridtype, data, isubcase, times, is_sort1=True, is_random=False, is_msc=True, random_code=0, title='', subtitle='', label='')[source]
- property is_complex: bool
- property is_real: bool
- linear_combination(factor: integer_float_types, data: np.ndarray | None = None, update: bool = True) None[source]
- write_csv(csv_file: TextIO, is_exponent_format: bool = False, is_mag_phase: bool = False, is_sort1: bool = True, write_header: bool = True)[source]
- write_frd(frd_file: TextIO, is_exponent_format: bool = False, is_mag_phase: bool = False, is_sort1: bool = True, write_header: bool = True)[source]
https://web.mit.edu/calculix_v2.7/CalculiX/cgx_2.7/doc/cgx/node174.html
Nodal Results Block Purpose: Stores values on node positions
1. Record: Format:(1X,’ 100’,’C’,6A1,E12.5,I12,20A1,I2,I5,10A1,I2) Values: KEY,CODE,SETNAME,VALUE,NUMNOD,TEXT,ICTYPE,NUMSTP,ANALYS,
FORMAT
- Where: KEY = 100
CODE = C SETNAME= Name (not used) VALUE = Could be frequency, time or any numerical value NUMNOD = Number of nodes in this nodal results block TEXT = Any text ICTYPE = Analysis type
0 static 1 time step 2 frequency 3 load step 4 user named
NUMSTP = Step number ANALYS = Type of analysis (description) FORMAT = Format indicator
0 short format 1 long format 2 binary format
#————————————————————————– 2. Record: Format:(1X,I2,2X,8A1,2I5) Values: KEY, NAME, NCOMPS, IRTYPE Where: KEY = -4
NAME = Dataset name to be used in the menu NCOMPS = Number of entities IRTYPE = 1 Nodal data, material independent
2 Nodal data, material dependant 3 Element data at nodes (not used)
#————————————————————————– 3. Type of Record: Format:(1X,I2,2X,8A1,5I5,8A1) Values: KEY, NAME, MENU, ICTYPE, ICIND1, ICIND2, IEXIST, ICNAME Where: KEY = -5
NAME = Entity name to be used in the menu for this comp. MENU = 1 ICTYPE = Type of entity
1 scalar 2 vector with 3 components 4 matrix
- 12 vector with 3 amplitudes and 3 phase-angles in
degree
ICIND1 = sub-component index or row number ICIND2 = column number for ICTYPE=4 IEXIST = 0 data are provided
- 1 data are to be calculated by predefined
functions (not used)
2 as 0 but earmarked
- ICNAME = Name of the predefined calculation (not used)
ALL calculate the total displacement if ICTYPE=2
This record must be repeated for each entity.
4. Type of Record: (not used) This record will be necessary in combination with the request for predefined calculations. This type of record is not allowed in combination with binary coding of data. Format:(1X,I2,2I5,20I3) Values: KEY,IRECTY,NUMCPS,(LSTCPS(I),I=1,NUMCPS) Where: KEY = -6
IRECTY = Record variant identification number NUMCPS = Number of components LSTCPS = For each variant component, the position of the
corresponding component in attribute definition
#————————————————————————–
5. Type of Record: The following records are data-records and the format is repeated for each node.
In case of material independent data
ascii coding:
- Following records (ascci, FORMAT=0 | 1):
Short Format:(1X,I2,I5,6E12.5) Long Format:(1X,I2,I10,6E12.5) Values: KEY, NODE, XX.. Where: KEY = -1 if its the first line of data for a given node
-2 if its a continuation line
NODE = node number or blank if KEY=-2 XX.. = data
binary coding:
Following records (ascci, FORMAT=2): (int,NCOMPS*float) int and float are ansi-c data-types Values: NODE, XX.. Where:
NODE = node number or blank if KEY=-2 XX.. = data
In case of material dependant data REMARK: Implemented only for NMATS=1 - first line: Short Format:(1X,I2,4I5) Long Format:(1X,I2,I10,3I5) Values: KEY, NODENR, NMATS Where: KEY = -1
NODENR = Node number NMATS = Number of different materials at this node(unused)
second and following lines:
Short Format:(1X,I2,I5,6E12.5) Long Format:(1X,I2,I10,6E12.5) Values: KEY, MAT, XX, YY, ZZ, XY, YZ, ZX .. Where: KEY = -2
MAT = material-property-number if KEY=-2 (unused) XX.. = data
Last Record (only FORMAT=0 | 1 (ascii), omitted for FORMAT=2): Format:(1X,’-3’) Values: KEY Displacement Table —————— Flag, SubcaseID, iTime, NID, dx, dy, dz, rx, ry, rz, cd, PointType 1, 1, 0, 101, 0.014159, 0.03448, 0.019135, 0.00637, 0.008042, 0.00762, 0, 1 uses cd=-1 for unknown cd
- class pyNastran.op2.result_objects.table_object.TableArray(data_code, is_sort1, isubcase, dt)[source]
Bases:
ScalarObject- Base class for:
RealTableArray
ComplexTableArray
- property headers: list[str]
- pyNastran.op2.result_objects.table_object.append_sort1_sort2(data1, data2, to_sort1=True)[source]
data1 : (ntimes, nnids, 6) data2 : (nnids, ntimes, 6)
- pyNastran.op2.result_objects.table_object.get_gridtype_str(self, node_gridtype: ndarray) ndarray[source]
- pyNastran.op2.result_objects.table_object.oug_data_code(table_name: str, is_real: bool = False, is_complex: bool = False, is_sort1: bool = True, is_random: bool = False, table_code: int = 0, random_code=0, title='', subtitle='', label='', is_msc=True)[source]
- pyNastran.op2.result_objects.table_object.pandas_extract_rows(data_frame, ugridtype_str: ndarray, index_names: list[str])[source]
removes the t2-t6 for S and E points