bush Module

Inheritance diagram of pyNastran.bdf.cards.properties.bush

All bush properties are defined in this file. This includes:

  • PBUSH
  • PBUSH1D
  • PBUSH2D (not implemented)
  • PBUSHT

All bush properties are BushingProperty and Property objects.

class pyNastran.bdf.cards.properties.bush.BushingProperty[source]

Bases: pyNastran.bdf.cards.base_card.Property

cross_reference(self, model)[source]
type = 'BushingProperty'
uncross_reference(self)[source]

Removes cross-reference links

class pyNastran.bdf.cards.properties.bush.PBUSH(pid, k, b, ge, rcv=None, mass=None, comment='')[source]

Bases: pyNastran.bdf.cards.properties.bush.BushingProperty

Generalized Spring-and-Damper Property Defines the nominal property values for a generalized spring-and-damper structural element.

1 2 3 4 5 6 7 8 9
PBUSH PID K K1 K2 K3 K4 K5 K6
  B B1 B2 B3 B4 B5 B6  
  GE GE1 GE2 GE3 GE4 GE5 GE6  
  RCV SA ST EA ET      
  M MASS            

Creates a PBUSH card, which defines a property for a CBUSH

Parameters:
pid : int

property id

k : List[float]

Nominal stiffness values in directions 1 through 6. len(k) = 6

b : List[float]

Nominal damping coefficients in direction 1 through 6 in units of force per unit velocity len(b) = 6

ge : List[float]

Nominal structural damping constant in directions 1 through 6. len(ge) = 6

rcv : List[float]; default=None -> (None, None, None, None)

[sa, st, ea, et] = rcv length(mass_fields) = 4

mass : float; default=None

lumped mass of the CBUSH This is an MSC only parameter.

comment : str; default=’‘

a comment for the card

classmethod _init_from_empty()[source]
classmethod _read_rcv(card, istart)[source]
classmethod _read_var(card, var_prefix, istart, iend)[source]
classmethod add_card(card, comment='')[source]

Adds a PBUSH card from BDF.add_card(...)

Parameters:
card : BDFCard()

a BDFCard object

comment : str; default=’‘

a comment for the card

pid = None

Property ID

pname_map = {-23: 'ET', -22: 'EA', -21: 'ST', -20: 'SA', -19: 'GE6', -18: 'GE5', -17: 'GE4', -16: 'GE3', -15: 'GE2', -14: 'GE1', -13: 'B6', -12: 'B5', -11: 'B4', -10: 'B3', -9: 'B2', -8: 'B1', -7: 'K6', -6: 'K5', -5: 'K4', -4: 'K3', -3: 'K2', -2: 'K1'}
raw_fields(self)[source]
repr_fields(self)[source]

Gets the fields in their simplified form

Returns:
fields : List[varies]

the fields that define the card

type = 'PBUSH'
update_by_pname_fid(self, name, value)[source]
validate(self)[source]

card checking method that should be overwritten

write_card(self, size=8, is_double=False)[source]

Writes the card with the specified width and precision

Parameters:
size : int (default=8)

size of the field; {8, 16}

is_double : bool (default=False)

is this card double precision

Returns:
msg : str

the string representation of the card

class pyNastran.bdf.cards.properties.bush.PBUSH1D(pid, k=0.0, c=0.0, m=0.0, sa=0.0, se=0.0, optional_vars=None, comment='')[source]

Bases: pyNastran.bdf.cards.properties.bush.BushingProperty

1 2 3 4 5 6 7 8
PBUSH1D PID K C M   SA SE
  SHOCKA TYPE CVT CVC EXPVT EXPVC IDTS
  IDETS IDECS IDETSD IDECSD      
  SPRING TYPE IDT IDC IDTDU IDCDU  
  DAMPER TYPE IDT IDC IDTDV IDCDV  
  GENER IDT IDC IDTDU IDCDU IDTDV IDCDV

Creates a PBUSH1D card

Parameters:
pid : int

property id

k : float

stiffness

c : float

Viscous damping

m : float

mass

sa : float

Stress recovery coefficient [1/area].

se : float

Strain recovery coefficient [1/length].

optional_vars : dict[name]
name : str

SHOCKA, SPRING, DAMPER, GENER

values : List[varies]

the values

SHOCKA:

Coefficients of the following force versus velocity/displacement relationship F(u, v) = Cv * S(u) * sign(v) * |v|^EXPV TYPE CVT CVC EXPVT EXPVC IDTS IDETS IDECS IDETSD IDECSD CVT/CVC : int

Viscous damping coefficient CV for tension v > 0, force per unit velocity.

EXPVT/EXPVC : int

Exponent of velocity EXPV for tension v > 0 (or compression v < 0).

IDTS : int

Identification number of a TABLEDi entry for tension and compression if TYPE=TABLE. The TABLEDi entry defines the scale factor S, versus displacement u.

IDETS/IDECS : int

Identification number of a DEQATN entry for tension if TYPE=EQUAT. The DEQATN entry defines the scale factor S, versus displacement u, for tension u > 0 (or compression v < 0).

IDETSD/IDECSD : int

Identification number of a DEQATN entry for tension if TYPE=EQUAT. The DEQATN entry defines the defines the scale factor S, versus displacement u, for tension u > 0 (or compression v < 0).

SPRING:

Nonlinear elastic spring element in terms of a force versus displacement relationship TYPE IDT IDC IDTDU IDCDU

DAMPER:

Nonlinear viscous element in terms of a force versus velocity relationship. TYPE IDT IDC IDTDV IDCDV

GENER:

General nonlinear elastic spring and viscous damper element in terms of a force versus displacement and velocity relationship. For this element, the relationship can only be defined with TYPE=EQUAT (and it’s implicit). IDT IDC IDTDU IDCDU IDTDV IDCDV

TYPE : int

the type of the result; {TABLE, EQUAT}

IDT/IDC : int

tension/compression table/equation

IDTDU/IDCDU : int

du/dt tension/compression table/eq

IDTDV/IDCDV : int

dv/dt tension/compression table/eq

_damper_fields(self)[source]
_gener_fields(self)[source]
classmethod _init_from_empty()[source]
_properties = ['pname_fid_map']
static _read_damper(v) = Ft(u)[source]
static _read_gener(u, v) = Ft(u, v)[source]
static _read_shock(card, istart)[source]

F(u, v) = Cv * S(u) * sign(v) * |v|^ev

static _read_spring(u) = Ft(u)[source]
_shock_fields(self)[source]
_spring_fields(self)[source]
classmethod add_card(card, comment='')[source]

Adds a PBUSH1D card from BDF.add_card(...)

Parameters:
card : BDFCard()

a BDFCard object

comment : str; default=’‘

a comment for the card

pid = None

Property ID

pname_fid_map = {'C': 'c', 'K': 'k', 'M': 'm'}
raw_fields(self)[source]
repr_fields(self)[source]

Gets the fields in their simplified form

Returns:
fields : List[varies]

the fields that define the card

type = 'PBUSH1D'
write_card(self, size=8, is_double=False)[source]

Writes the card with the specified width and precision

Parameters:
size : int (default=8)

size of the field; {8, 16}

is_double : bool (default=False)

is this card double precision

Returns:
msg : str

the string representation of the card

class pyNastran.bdf.cards.properties.bush.PBUSH2D(card=None, comment='')[source]

Bases: pyNastran.bdf.cards.properties.bush.BushingProperty

type = 'PBUSH2D'
write_card(self, size=8, is_double=False)[source]

Writes the card with the specified width and precision

Parameters:
size : int (default=8)

size of the field; {8, 16}

is_double : bool (default=False)

is this card double precision

Returns:
msg : str

the string representation of the card

class pyNastran.bdf.cards.properties.bush.PBUSHT(pid, k_tables, b_tables, ge_tables, kn_tables, comment='')[source]

Bases: pyNastran.bdf.cards.properties.bush.BushingProperty

classmethod _init_from_empty()[source]
classmethod add_card(card, comment='')[source]

Adds a PBUSHT card from BDF.add_card(...)

Parameters:
card : BDFCard()

a BDFCard object

comment : str; default=’‘

a comment for the card

raw_fields(self)[source]
type = 'PBUSHT'
update_by_pname_fid(self, name, value)[source]
write_card(self, size=8, is_double=False)[source]

Writes the card with the specified width and precision

Parameters:
size : int (default=8)

size of the field; {8, 16}

is_double : bool (default=False)

is this card double precision

Returns:
msg : str

the string representation of the card

pyNastran.bdf.cards.properties.bush._append_nones(list_obj, nrequired)[source]

this function has side effects