tables Package

grid_point_weight Module

Inheritance diagram of pyNastran.f06.tables.grid_point_weight

defines the GridPointWeight class

class pyNastran.f06.tables.grid_point_weight.GridPointWeight[source]

Bases: object

..see:: http://www.6dof.com/index.php?option=com_content&view=article&id=298:output-from-the-grid-point-weight-generator&catid=178:courses-and-trainings&Itemid=61

read_grid_point_weight(lines)[source]
0- REFERENCE POINT = 0 1- M O 2- * 2.338885E+05 2.400601E-13 -7.020470E-15 -1.909968E-11 2.851745E+06 -5.229834E+07 * 3- * 2.400601E-13 2.338885E+05 -2.520547E-13 -2.851745E+06 2.151812E-10 2.098475E+08 * 4- * -7.020470E-15 -2.520547E-13 2.338885E+05 5.229834E+07 -2.098475E+08 -1.960403E-10 * 5- * -1.909968E-11 -2.851745E+06 5.229834E+07 2.574524E+10 -5.566238E+10 -4.054256E+09 * 6- * 2.851745E+06 2.151812E-10 -2.098475E+08 -5.566238E+10 2.097574E+11 -2.060162E+09 * 7- * -5.229834E+07 2.098475E+08 -1.960403E-10 -4.054256E+09 -2.060162E+09 2.336812E+11 * 8- S 9- * 1.000000E+00 0.000000E+00 0.000000E+00 *

10- * 0.000000E+00 1.000000E+00 0.000000E+00 * 11- * 0.000000E+00 0.000000E+00 1.000000E+00 * 12- DIRECTION 13- MASS AXIS SYSTEM (S) MASS X-C.G. Y-C.G. Z-C.G. 14- X 2.338885E+05 -8.166148E-17 2.236038E+02 1.219276E+01 15- Y 2.338885E+05 8.972118E+02 9.200164E-16 1.219276E+01 16- Z 2.338885E+05 8.972118E+02 2.236038E+02 -8.381786E-16 17- I(S) 18- * 1.401636E+10 8.739690E+09 1.495636E+09 *

  • 8.739690E+09 2.144496E+10 1.422501E+09 *

  • 1.495636E+09 1.422501E+09 3.370946E+10 *

    I(Q)

  • 3.389001E+10 *

  • 8.073297E+09 *

  • 2.720748E+10 *

Q
  • -3.599259E-02 -8.305739E-01 5.557441E-01 *
  • -8.850329E-02 -5.512702E-01 -8.296194E-01 *
  • 9.954254E-01 -7.904533E-02 -5.366689E-02 *

Note

pyNastran’s BDF mass_properties method uses the following (not totally correct as there technically isn’t one xcg):

DIRECTION
MASS AXIS SYSTEM (S) MASS X-C.G. Y-C.G. Z-C.G.
X mass 0.000000E+00 ycg zcg Y mass xcg 0.000000E+00 zcg Z nass xcg ycg 0.000000E+00

The inertias are close to I(S), but not exact as the method doesn’t use the mass matrix, but is close for sufficiently complex models. The terms are:

  • Ixx Ixy Ixz *
  • Iyx Iyy Iyz *
  • Izz Izy Izz *

or inertia = [Ixx, Iyy, Izz, Ixy, Ixz, Iyz]

set_grid_point_weight(reference_point, MO, S, mass, cg, IS, IQ, Q)[source]
write_f06(f, page_stamp, page_num)[source]

lama Module

Inheritance diagram of pyNastran.f06.tables.lama

class pyNastran.f06.tables.lama.LAMA[source]

Bases: object

_complex_eigenvalue_summary()[source]
                       C O M P L E X   E I G E N V A L U E   S U M M A R Y
ROOT     EXTRACTION                  EIGENVALUE                     FREQUENCY              DAMPING
 NO.        ORDER             (REAL)           (IMAG)                (CYCLES)            COEFFICIENT
     1           6          0.0              6.324555E+01          1.006584E+01          0.0
     2           5          0.0              6.324555E+01          1.006584E+01          0.0
_real_eigenvalues()[source]
                                          R E A L   E I G E N V A L U E S
MODE    EXTRACTION      EIGENVALUE            RADIANS             CYCLES            GENERALIZED         GENERALIZED
 NO.       ORDER                                                                       MASS              STIFFNESS
     1         1        6.158494E+07        7.847607E+03        1.248985E+03        1.000000E+00        6.158494E+07

max_min Module

Inheritance diagram of pyNastran.f06.tables.max_min

class pyNastran.f06.tables.max_min.MAX_MIN[source]

Bases: object

_get_max_applied_loads()[source]
_get_max_displacements()[source]
_get_max_mpc_forces()[source]
_get_max_spc_forces()[source]

oef Module

Inheritance diagram of pyNastran.f06.tables.oef

class pyNastran.f06.tables.oef.OEF[source]

Bases: object

_forces_in_conrod_elements()[source]
_forces_in_cquad4s_bilinear()[source]
                      F O R C E S   I N   Q U A D R I L A T E R A L   E L E M E N T S   ( Q U A D 4 )        OPTION = BILIN

ELEMENT                    - MEMBRANE  FORCES -                      - BENDING   MOMENTS -            - TRANSVERSE SHEAR FORCES -
  ID       GRID-ID     FX            FY            FXY           MX            MY            MXY           QX            QY
      1    CEN/4  0.0           0.0           0.0          -7.371223E+01 -4.023861E+02 -2.679984E+01  1.315875E+01 -7.356985E+01
               1  0.0           0.0           0.0          -1.043592E+02 -3.888291E+02 -2.698050E+01  1.315875E+01 -7.356985E+01
               2  0.0           0.0           0.0          -1.036512E+02 -4.152917E+02 -2.731157E+01  1.315875E+01 -7.356985E+01
               8  0.0           0.0           0.0          -4.306526E+01 -4.159432E+02 -2.661917E+01  1.315875E+01 -7.356985E+01
               7  0.0           0.0           0.0          -4.377329E+01 -3.894806E+02 -2.628810E+01  1.315875E+01 -7.356985E+01

element_type = 33 b/c not bilinear

_forces_in_crod_elements()[source]
_forces_in_ctube_elements()[source]
_forces_in_rod_elements(element_name, element_type, result_name)[source]
# 1-CROD # 3-CTUBE # 10-CONROD
::
F O R C E S I N R O D E L E M E N T S ( C R O D )
ELEMENT AXIAL ELEMENT AXIAL
ID. FORCE TORQUE ID. FORCE TORQUE
1 -7.007184E+02 0.0 2 -4.900904E+04 0.0 3 -7.141140E+04 0.0
_parse_line_gradients_fluxes(sline, Format)[source]
_read_gradient_fluxes_table()[source]
_temperature_gradients_and_fluxes()[source]

oes Module

Inheritance diagram of pyNastran.f06.tables.oes

class pyNastran.f06.tables.oes.OES[source]

Bases: object

_composites_helper(element_name, element_type, is_strain, slot)[source]
_get_bar_header(is_strain)[source]
_get_quad_header(nHeaderLines, element_name, element_type, is_strain)[source]
_get_rod_header(element_name, element_type, is_strain)[source]
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 5 (Stress)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • s_code = 0 (Stress)
  • num_wide = 8 (???)
_get_solid_header(element_name, element_type, n, is_strain=True)[source]
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 5 (Stress/Strain)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • s_code = 0 (Stress/Strain)
  • num_wide = 8 (???)
_get_spring_header(element_name, element_type, is_strain)[source]
_get_tri_header(is_strain)[source]
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 5 (Stress)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • s_code = 0 (Stress)
  • num_wide = 8 (???)
_parse_line_blanks(sline, data_types, debug=False)[source]
_read_3D_stress(eType, n)[source]
_read_bar_stress()[source]
ELEMENT        SA1            SA2            SA3            SA4           AXIAL          SA-MAX         SA-MIN     M.S.-T
  ID.          SB1            SB2            SB3            SB4           STRESS         SB-MAX         SB-MIN     M.S.-C
     12    0.0            0.0            0.0            0.0            1.020730E+04   1.020730E+04   1.020730E+04
           0.0            0.0            0.0            0.0                           1.020730E+04   1.020730E+04
_read_quad_bilinear()[source]
_read_rod_stress()[source]
                             S T R E S S E S   I N   R O D   E L E M E N T S      ( C R O D )
ELEMENT       AXIAL       SAFETY      TORSIONAL     SAFETY       ELEMENT       AXIAL       SAFETY      TORSIONAL     SAFETY
  ID.        STRESS       MARGIN        STRESS      MARGIN         ID.        STRESS       MARGIN        STRESS      MARGIN
     14    2.514247E+04              1.758725E+02                     15    2.443757E+04              2.924619E+01
_read_solid_strain(element_name, element_type, n, slot)[source]
_read_solid_stress(element_name, element_type, n, slot)[source]
_read_spring_stress()[source]
                         S T R A I N S    I N   S C A L A R   S P R I N G S        ( C E L A S 2 )
ELEMENT         STRAIN           ELEMENT         STRAIN           ELEMENT         STRAIN           ELEMENT         STRAIN
  ID.                              ID.                              ID.                              ID.
  20001      0.0                   20002      0.0                   20003      0.0                   20004      0.0
  20005      0.0                   20006      0.0
_read_tri_stress(eType)[source]
ELEMENT      FIBER               STRESSES IN ELEMENT COORD SYSTEM             PRINCIPAL STRESSES (ZERO SHEAR)
  ID.       DISTANCE           NORMAL-X       NORMAL-Y      SHEAR-XY       ANGLE         MAJOR           MINOR        VON MISES
      8   -1.250000E-01     -1.303003E+02   1.042750E+04  -1.456123E+02   -89.2100    1.042951E+04   -1.323082E+02   1.049629E+04
           1.250000E-01     -5.049646E+02   1.005266E+04  -2.132942E+02   -88.8431    1.005697E+04   -5.092719E+02   1.032103E+04
_strain_in_cbar_elements()[source]
_strain_in_celas1_elements()[source]
_strain_in_celas2_elements()[source]
_strain_in_celas3_elements()[source]
_strain_in_celas4_elements()[source]
_strain_in_celas_elements(element_name, element_type, result_name)[source]
_strain_in_chexa_elements()[source]
_strain_in_composite_cquad4_elements()[source]
               S T R E S S E S   I N   L A Y E R E D   C O M P O S I T E   E L E M E N T S   ( Q U A D 4 )
ELEMENT  PLY  STRESSES IN FIBER AND MATRIX DIRECTIONS    INTER-LAMINAR  STRESSES  PRINCIPAL STRESSES (ZERO SHEAR)      MAX
  ID      ID    NORMAL-1     NORMAL-2     SHEAR-12     SHEAR XZ-MAT  SHEAR YZ-MAT  ANGLE    MAJOR        MINOR        SHEAR
    181    1   3.18013E+04  5.33449E+05  1.01480E+03   -7.06668E+01  1.90232E+04   89.88  5.33451E+05  3.17993E+04  2.50826E+05
    181    2   1.41820E+05  1.40805E+05  1.25412E+05   -1.06000E+02  2.85348E+04   44.88  2.66726E+05  1.58996E+04  1.25413E+05

element_type = 33 b/c not bilinear

_strain_in_composite_ctria3_elements()[source]
_strain_in_conrod_elements()[source]
_strain_in_cpenta_elements()[source]
_strain_in_cquad4_bilinear_elements()[source]
_strain_in_cquad4_elements()[source]
_strain_in_crod_elements()[source]
_strain_in_ctetra_elements()[source]
_strain_in_ctria3_elements()[source]
_strain_in_ctube_elements()[source]
_strain_in_rod_elements(element_name, element_type, result_name)[source]
_stress_in_cbar_elements()[source]
                               S T R E S S E S   I N   B A R   E L E M E N T S          ( C B A R )
ELEMENT        SA1            SA2            SA3            SA4           AXIAL          SA-MAX         SA-MIN     M.S.-T
  ID.          SB1            SB2            SB3            SB4           STRESS         SB-MAX         SB-MIN     M.S.-C
     12    0.0            0.0            0.0            0.0            1.020730E+04   1.020730E+04   1.020730E+04
           0.0            0.0            0.0            0.0                           1.020730E+04   1.020730E+04
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 5 (Stress)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • s_code = 0 (Stress)
  • num_wide = 8 (???)
_stress_in_celas1_elements()[source]
_stress_in_celas2_elements()[source]
_stress_in_celas3_elements()[source]
_stress_in_celas4_elements()[source]
_stress_in_celas_elements(element_name, element_type, result_name)[source]
_stress_in_chexa_elements()[source]
_stress_in_composite_cquad4_elements()[source]
               S T R E S S E S   I N   L A Y E R E D   C O M P O S I T E   E L E M E N T S   ( Q U A D 4 )
ELEMENT  PLY  STRESSES IN FIBER AND MATRIX DIRECTIONS    INTER-LAMINAR  STRESSES  PRINCIPAL STRESSES (ZERO SHEAR)      MAX
  ID      ID    NORMAL-1     NORMAL-2     SHEAR-12     SHEAR XZ-MAT  SHEAR YZ-MAT  ANGLE    MAJOR        MINOR        SHEAR
    181    1   3.18013E+04  5.33449E+05  1.01480E+03   -7.06668E+01  1.90232E+04   89.88  5.33451E+05  3.17993E+04  2.50826E+05
    181    2   1.41820E+05  1.40805E+05  1.25412E+05   -1.06000E+02  2.85348E+04   44.88  2.66726E+05  1.58996E+04  1.25413E+05

element_type = 33 b/c not bilinear

_stress_in_composite_ctria3_elements()[source]
_stress_in_conrod_elements()[source]
_stress_in_cpenta_elements()[source]
_stress_in_cquad4_bilinear_elements()[source]
_stress_in_cquad4_elements()[source]
_stress_in_crod_elements()[source]
_stress_in_ctetra_elements()[source]
_stress_in_ctria3_elements()[source]
                         S T R E S S E S   I N   T R I A N G U L A R   E L E M E N T S   ( T R I A 3 )
ELEMENT      FIBER               STRESSES IN ELEMENT COORD SYSTEM             PRINCIPAL STRESSES (ZERO SHEAR)
  ID.       DISTANCE           NORMAL-X       NORMAL-Y      SHEAR-XY       ANGLE         MAJOR           MINOR        VON MISES
      8   -1.250000E-01     -1.303003E+02   1.042750E+04  -1.456123E+02   -89.2100    1.042951E+04   -1.323082E+02   1.049629E+04
           1.250000E-01     -5.049646E+02   1.005266E+04  -2.132942E+02   -88.8431    1.005697E+04   -5.092719E+02   1.032103E+04
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 5 (Stress)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • s_code = 0 (Stress)
  • num_wide = 8 (???)
_stress_in_ctube_elements()[source]
_stress_in_rod_elements(element_name, element_type, result_type)[source]
                             S T R E S S E S   I N   R O D   E L E M E N T S      ( C R O D )
ELEMENT       AXIAL       SAFETY      TORSIONAL     SAFETY       ELEMENT       AXIAL       SAFETY      TORSIONAL     SAFETY
  ID.        STRESS       MARGIN        STRESS      MARGIN         ID.        STRESS       MARGIN        STRESS      MARGIN
     14    2.514247E+04              1.758725E+02                     15    2.443757E+04              2.924619E+01
_stress_strain_cquad4_bilinear_helper(element_type, element_num, is_strain=None)[source]
                     S T R E S S E S   I N   Q U A D R I L A T E R A L   E L E M E N T S   ( Q U A D 4 )        OPTION = BILIN

ELEMENT              FIBER            STRESSES IN ELEMENT COORD SYSTEM         PRINCIPAL STRESSES (ZERO SHEAR)
  ID      GRID-ID   DISTANCE        NORMAL-X      NORMAL-Y      SHEAR-XY      ANGLE        MAJOR         MINOR       VON MISES
      6    CEN/4  -1.250000E-01  -4.278394E+02  8.021165E+03 -1.550089E+02   -88.9493   8.024007E+03 -4.306823E+02  8.247786E+03
                   1.250000E-01   5.406062E+02  1.201854E+04 -4.174177E+01   -89.7916   1.201869E+04  5.404544E+02  1.175778E+04

               4  -1.250000E-01  -8.871141E+02  7.576036E+03 -1.550089E+02   -88.9511   7.578874E+03 -8.899523E+02  8.060780E+03
                   1.250000E-01  -8.924081E+01  1.187899E+04 -4.174177E+01   -89.8002   1.187913E+04 -8.938638E+01  1.192408E+04
pyNastran.f06.tables.oes.make_stress_bits(is_fiber_distance=False, is_max_shear=True, is_strain=True, is_rod_or_solid=False)[source]

Therefore, stress_code can be one of the following values: +——+———+———————————————-+ |Value | On bits | Description | +——+———+———————————————-+ | 0 | 0 0 0 0 | Stress maximum shear or octahedral | | 1 | 0 0 0 1 | Stress von Mises | | 10 | 1 0 1 0 | Strain Curvature maximum shear or octahedral | | 11 | 1 0 1 1 | Strain Curvature von Mises | | 14 | 1 1 1 0 | Strain Fibre maimum shear or octahedral | | 15 | 1 1 1 1 | Strain Fibre von Mises | +——+———+———————————————-+

oload_resultant Module

Inheritance diagram of pyNastran.f06.tables.oload_resultant

class pyNastran.f06.tables.oload_resultant.OLOAD_Resultant[source]

Bases: object

add(F)[source]
write_f06(f, page_stamp, page_num)[source]
0 OLOAD RESULTANT
SUBCASE/ LOAD DAREA ID TYPE T1 T2 T3 R1 R2 R3
0 1 FX 2.300000E+04 —- —- —- 3.320987E+04 -2.280395E+04
FY —- 0.000000E+00 —- 0.000000E+00 —- 0.000000E+00 FZ —- —- 0.000000E+00 0.000000E+00 0.000000E+00 —- MX —- —- —- 0.000000E+00 —- —- MY —- —- —- —- 0.000000E+00 —- MZ —- —- —- —- —- 0.000000E+00

TOTALS 2.300000E+04 0.000000E+00 0.000000E+00 0.000000E+00 3.320987E+04 -2.280395E+04

#1 MSC.NASTRAN JOB CREATED ON 28-JAN-12 AT 12:52:32 OCTOBER 22, 2014 MSC.NASTRAN 6/17/05 PAGE 8

oqg Module

Inheritance diagram of pyNastran.f06.tables.oqg

class pyNastran.f06.tables.oqg.OQG[source]

Bases: object

_forces_of_multi_point_constraints()[source]
_forces_of_single_point_constraints()[source]
_load_vector()[source]
_read_f06_table(data_types, debug=False)[source]

oug Module

Inheritance diagram of pyNastran.f06.tables.oug

class pyNastran.f06.tables.oug.OUG[source]

Bases: object

_complex_displacement_vector()[source]
  BACKWARD WHIRL
                                                                                                         SUBCASE 2
  POINT-ID =       101
                                   C O M P L E X   D I S P L A C E M E N T   V E C T O R
                                                     (MAGNITUDE/PHASE)

  FREQUENCY   TYPE          T1             T2             T3             R1             R2             R3
2.000000E+01     G      3.242295E-16   1.630439E-01   1.630439E-01   1.691497E-17   1.362718E-01   1.362718E-01
                        196.0668        90.0000       180.0000        63.4349       180.0000       270.0000
  • table_code = 1 (Displacement)
  • format_code = 3 (Magnitude/Phase)
  • sort_bits = [0,1,1] (Sort1,Real/Imaginary,RandomResponse)
  • analysis_code = 5 (Frequency)
  • sort_code = 2 (Random Response)
_complex_eigenvectors(marker)[source]
_displacement_vector()[source]
::
D I S P L A C E M E N T V E C T O R
POINT ID. TYPE T1 T2 T3 R1 R2 R3
1 G 9.663032E-05 0.0 -2.199001E-04 0.0 -9.121119E-05 0.0 2 G 0.0 0.0 0.0 0.0 0.0 0.0 3 G 0.0 0.0 0.0 0.0 0.0 0.0
  • analysis_code = 1 (Statics)
  • device_code = 1 (Print)
  • table_code = 1 (Displacement)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • num_wide = 8 (???)
_parse_line_temperature(sline, formats)[source]
_read_f06_table(data_types, debug=False)[source]
_read_temperature_table()[source]
_real_eigenvectors(marker)[source]

Reads real eigenvector table accounting for blank entries

Parameters:self – the object pointer
::
SUBCASE 1
EIGENVALUE = 6.158494E+07
CYCLES = 1.248985E+03 R E A L E I G E N V E C T O R N O . 1
POINT ID. TYPE T1 T2 T3 R1 R2 R3
1 G 2.547245E-17 -6.388945E-16 2.292728E+00 -1.076928E-15 2.579163E-17 0.0

2002 G -6.382321E-17 -1.556607E-15 3.242408E+00 -6.530917E-16 1.747180E-17 0.0 2003 G -6.382321E-17 -1.556607E-15 3.242408E+00 2004 S -6.382321E-17 -1.556607E-15 3.242408E+00

  • analysis_code = 2 (Normal modes)
  • table_code = 7 (Eigenvector)
  • device_code = 1 (Print)
  • sort_code = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
  • format_code = 1 (Real)
  • #s_code = 0 (Stress)
  • num_wide = 8 (???)
_real_f06_table_data(allow_blanks=False)[source]

Reads real displacement/velocity/spc forces/mpc forces Handles GRIDs and SPOINTs.

Parameters:
  • self – the object pointer
  • allow_blanks – Accounting for blank entries (e.g. on eigenvector) default=False
Returns data:

the parsed data

Todo

support L, H, and R points

_temperature_vector()[source]
LOAD STEP =  1.00000E+00
                                      T E M P E R A T U R E   V E C T O R

POINT ID.   TYPE      ID   VALUE     ID+1 VALUE     ID+2 VALUE     ID+3 VALUE     ID+4 VALUE     ID+5 VALUE
       1      S      1.300000E+03   1.300000E+03   1.300000E+03   1.300000E+03   1.300000E+03   1.300000E+03
       7      S      1.300000E+03   1.300000E+03   1.300000E+03   1.300000E+03
analysis_code = 1 (Statics)
device_code   = 1 (Print)
table_code    = 1 (Displacement/Temperature)
sort_code     = 0 (Sort2,Real,Sorted Results) => sort_bits = [0,0,0]
format_code   = 1 (Real)
s_code        = 0 (Stress)
num_wide      = 8 (???)