コード例 #1
0
class TRIA3(ResultTable, ShellElementForceStressResultTable):
    result_type = 'ELEMENT FORCES 74 TRIA3 REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TRIA3', result_type)
    table_def.add_index_option('MATERIAL', None)
    result_data_cols = ['MX', 'MY', 'MXY', 'BMX', 'BMY', 'BMXY', 'TX', 'TY']
    result_data_group_by = ['EID', 'DOMAIN_ID']
コード例 #2
0
class STRAIN_ELEM(ResultTable):
    result_type = [
        'ELEMENT STRAIN ENERGIES %s REAL' % etype
        for etype in ['BAR', 'BEAM', 'QUAD4', 'TRIA3']
    ]
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ENERGY/STRAIN_ELEM',
                                result_type,
                                indices=DataGetter(indices=[0, 2, 3, 4],
                                                   indices_len=5),
                                validator=_validator)
コード例 #3
0
class GridForce(ResultTable):
    result_type = 'GRID POINT FORCE BALANCE REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/NODAL/GRID_FORCE', result_type,
                                indices=DataGetter(indices=[0, 2, 3, 5, 6, 7, 8, 9, 10]),
                                validator=_validator
                                )
    
    def search(self, data_ids, domains=(), convert_to_basic=False):
        _data = super(GridForce, self).search(data_ids, domains)
        
        if not convert_to_basic:
            return _data
        
        _nid = _data.loc[:, 'ID']
        _f1 = _data.loc[:, 'F1']
        _f2 = _data.loc[:, 'F2']
        _f3 = _data.loc[:, 'F3']
        _m1 = _data.loc[:, 'M1']
        _m2 = _data.loc[:, 'M2']
        _m3 = _data.loc[:, 'M3']

        data = _data.copy()
        f1 = data.loc[:, 'F1']
        f2 = data.loc[:, 'F2']
        f3 = data.loc[:, 'F3']
        m1 = data.loc[:, 'M1']
        m2 = data.loc[:, 'M2']
        m3 = data.loc[:, 'M3']

        get_grid = self._h5n.input.node.grid.get_grid
        vector_to_basic = self._h5n.input.coordinate_system.h5n_transformation.vector_to_basic

        for i in range(_nid.shape[0]):
            cid = get_grid(_nid[i])[3]

            f = [_f1[i], _f2[i], _f3[i]]
            m =[_m1[i], _m2[i], _m3[i]]

            if cid != 0:
                f = vector_to_basic(f, cid)
                m = vector_to_basic(m, cid)

            f1[i] = f[0]
            f2[i] = f[1]
            f3[i] = f[2]
            m1[i] = m[0]
            m2[i] = m[1]
            m3[i] = m[2]
            
        return data
コード例 #4
0
class GAP(ResultTable):
    result_type = 'ELEMENT FORCES 38 GAP REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/GAP',
                                result_type)
コード例 #5
0
class TRIAR(ResultTable, ShellElementForceStressResultTable):
    result_type = 'ELEMENT FORCES 70 TRIAR REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TRIAR', result_type)
コード例 #6
0
class AppliedLoad(ResultTable):
    result_type = 'OLOADS REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/NODAL/APPLIED_LOAD', result_type)
コード例 #7
0
class Displacement(ResultTable):
    result_type = 'DISPLACEMENTS REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/NODAL/DISPLACEMENT', result_type)
コード例 #8
0
class VISC_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 24 VISC COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/VISC_CPLX', result_type)
コード例 #9
0
class WELD_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 200 WELD COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/WELD_CPLX', result_type)
コード例 #10
0
class RADINT(ResultTable):
    result_type = 'ELEMENT FORCES 155 RADINT REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/RADINT', result_type)
コード例 #11
0
class TUBE_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 3 TUBE COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TUBE_CPLX', result_type)
コード例 #12
0
class QUAD8_COMP(ResultTable):
    result_type = 'ELEMENT FORCES 96 QUAD8LC REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/QUAD8_COMP', result_type)
コード例 #13
0
class QUAD8_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 64 QUAD8 COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/QUAD8_CPLX', result_type)
コード例 #14
0
class QUAD8(ResultTable):
    result_type = 'ELEMENT FORCES 64 QUAD8 REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/QUAD8', result_type)
コード例 #15
0
class QUAD4_CN(ResultTable):
    result_type = 'ELEMENT FORCES 144 QUAD4C REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/QUAD4_CN', result_type)
コード例 #16
0
class HBDYP(ResultTable):
    result_type = 'ELEMENT FORCES 109 HBDYP REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/HBDYP', result_type)
コード例 #17
0
class TRIAR_CPLX(ResultTable, ShellElementForceStressResultTableComplex):
    result_type = 'ELEMENT FORCES 70 TRIAR COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TRIAR_CPLX', result_type)
コード例 #18
0
class ROD(ResultTable):
    result_type = 'ELEMENT FORCES 1 ROD REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/ROD',
                                result_type)
コード例 #19
0
class TUBE(ResultTable):
    result_type = 'ELEMENT FORCES 3 TUBE REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TUBE',
                                result_type)
コード例 #20
0
class SEAM(ResultTable):
    result_type = 'ELEMENT FORCES 119 SEAM REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/SEAM',
                                result_type)
コード例 #21
0
class VISC(ResultTable):
    result_type = 'ELEMENT FORCES 24 VISC REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/VISC',
                                result_type)
コード例 #22
0
class SHEAR(ResultTable):
    result_type = 'ELEMENT FORCES 4 SHEAR REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/SHEAR', result_type)
コード例 #23
0
class WELDP(ResultTable):
    result_type = 'ELEMENT FORCES 118 WELDP REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/WELDP', result_type)
コード例 #24
0
class SHEAR_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 4 SHEAR COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/SHEAR_CPLX', result_type)
コード例 #25
0
class FAST(ResultTable):
    result_type = 'ELEMENT FORCES 126 FAST REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/FAST',
                                result_type)
コード例 #26
0
class ELAS4_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 14 ELAS4 COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/ELAS4_CPLX', result_type)
コード例 #27
0
class SPCForce(ResultTable):
    result_type = 'SPCF REAL'
    table_def = TableDef.create('/NASTRAN/RESULT/NODAL/SPC_FORCE', result_type)
コード例 #28
0
class TRIA6_COMP(ResultTable):
    result_type = 'ELEMENT FORCES 98 TRIA6LC REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/TRIA6_COMP', result_type)
コード例 #29
0
class ELAS4(ResultTable):
    result_type = 'ELEMENT FORCES 14 ELAS4 REAL'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/ELAS4', result_type)
コード例 #30
0
class FAST_CPLX(ResultTable):
    result_type = 'ELEMENT FORCES 126 FAST COMPLEX'
    table_def = TableDef.create(
        '/NASTRAN/RESULT/ELEMENTAL/ELEMENT_FORCE/FAST_CPLX', result_type)