constraints Module

digraph inheritancef92641fe3e { bgcolor=transparent; rankdir=LR; size=""; "pyNastran.bdf.cards.base_card.BaseCard" [URL="pyNastran.bdf.cards.base_card.html#pyNastran.bdf.cards.base_card.BaseCard",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="Defines a series of base methods for every card class"]; "pyNastran.bdf.cards.constraints.Constraint" [URL="#pyNastran.bdf.cards.constraints.Constraint",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="common class for:"]; "pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.constraints.Constraint" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.ConstraintAdd" [URL="#pyNastran.bdf.cards.constraints.ConstraintAdd",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="common class for SPCADD, MPCADD"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.ConstraintAdd" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.GMSPC" [URL="#pyNastran.bdf.cards.constraints.GMSPC",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.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.GMSPC" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.MPC" [URL="#pyNastran.bdf.cards.constraints.MPC",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="Multipoint Constraint"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.MPC" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.MPCADD" [URL="#pyNastran.bdf.cards.constraints.MPCADD",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="Defines a multipoint constraint equation of the form"]; "pyNastran.bdf.cards.constraints.ConstraintAdd" -> "pyNastran.bdf.cards.constraints.MPCADD" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SESUP" [URL="#pyNastran.bdf.cards.constraints.SESUP",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.bdf.cards.constraints.SUPORT" -> "pyNastran.bdf.cards.constraints.SESUP" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPC" [URL="#pyNastran.bdf.cards.constraints.SPC",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="Defines enforced displacement/temperature (static analysis)"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SPC" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPC1" [URL="#pyNastran.bdf.cards.constraints.SPC1",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="+------+-----+-------+--------+--------+--------+--------+--------+----+"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SPC1" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPCADD" [URL="#pyNastran.bdf.cards.constraints.SPCADD",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="Defines a single-point constraint set as a union of single-point constraint"]; "pyNastran.bdf.cards.constraints.ConstraintAdd" -> "pyNastran.bdf.cards.constraints.SPCADD" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPCAX" [URL="#pyNastran.bdf.cards.constraints.SPCAX",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="Defines a set of single-point constraints or enforced displacements"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SPCAX" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPCOFF" [URL="#pyNastran.bdf.cards.constraints.SPCOFF",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="+-----+----+----+----+----+----+----+----+----+"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SPCOFF" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SPCOFF1" [URL="#pyNastran.bdf.cards.constraints.SPCOFF1",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.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SPCOFF1" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SUPORT" [URL="#pyNastran.bdf.cards.constraints.SUPORT",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="Defines determinate reaction degrees-of-freedom in a free body."]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SUPORT" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.constraints.SUPORT1" [URL="#pyNastran.bdf.cards.constraints.SUPORT1",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="Defines determinate reaction degrees-of-freedom (r-set) in a free"]; "pyNastran.bdf.cards.constraints.Constraint" -> "pyNastran.bdf.cards.constraints.SUPORT1" [arrowsize=0.5,style="setlinewidth(0.5)"]; }

All constraint cards are defined in this file. This includes:

  • Constraint

  • SUPORT

  • SUPORT1

  • SPC

  • SPC1

  • SPCAX

  • MPC

  • GMSPC

  • ConstraintADD

  • SPCADD

  • MPCADD

The ConstraintObject contain multiple constraints.

class pyNastran.bdf.cards.constraints.Constraint[source]

Bases: BaseCard

common class for:
  • SUPORT / SUPORT1 / SESUP

  • GMSPC

  • MPC

  • SPC / SPC1

  • SPCAX

  • SPCOFF / SPCOFF1

class pyNastran.bdf.cards.constraints.ConstraintAdd[source]

Bases: Constraint

common class for SPCADD, MPCADD

class pyNastran.bdf.cards.constraints.GMSPC(conid, component, entity, entity_id, comment='')[source]

Bases: Constraint

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

TODO: xref

raw_fields()[source]
safe_cross_reference(model)[source]

TODO: xref

type = 'GMSPC'
uncross_reference() None[source]

Removes cross-reference links

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.MPC(conid: int, nodes: list[int], components: list[str], coefficients: list[float], comment: str = '')[source]

Bases: Constraint

Multipoint Constraint Defines a multipoint constraint equation of the form:

sum(A_j * u_j) = 0

where:

uj represents degree-of-freedom Cj at grid or scalar point Gj. Aj represents the scale factor

1

2

3

4

5

6

7

8

9

MPC

SID

G1

C1

A1

G2

C2

A2

G3

C3

A3

Creates an MPC card

Parameters:
conidint

Case Control MPC id

nodeslist[int]

GRID/SPOINT ids

componentslist[str]

the degree of freedoms to constrain (e.g., ‘1’, ‘123’)

coefficientslist[float]

the scaling coefficients

classmethod _init_from_empty()[source]
_properties = ['node_ids']
classmethod add_card(card: BDFCard, comment='')[source]

Adds an MPC card from BDF.add_card(...)

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

coefficients

Coefficient. (Real; Default = 0.0 except A1 must be nonzero.)

components

Component number. (Any one of the Integers 1 through 6 for grid points; blank or zero for scalar points.)

conid

Set identification number. (Integer > 0)

cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property dependent_dofs: tuple[list[int], list[int]]

The first degree-of-freedom (G1, C1) in the sequence is defined to be the dependent degree-of-freedom. A dependent degree-of-freedom assigned by one MPC entry cannot be assigned dependent by another MPC entry or by a rigid element.

property dependent_nodes: list[int]

The first degree-of-freedom (G1, C1) in the sequence is defined to be the dependent degree-of-freedom. A dependent degree-of-freedom assigned by one MPC entry cannot be assigned dependent by another MPC entry or by a rigid element.

property independent_dofs: tuple[list[int], list[int]]

The first degree-of-freedom (G1, C1) in the sequence is defined to be the dependent degree-of-freedom. A dependent degree-of-freedom assigned by one MPC entry cannot be assigned dependent by another MPC entry or by a rigid element.

property independent_nodes: list[int]

The first degree-of-freedom (G1, C1) in the sequence is defined to be the dependent degree-of-freedom. A dependent degree-of-freedom assigned by one MPC entry cannot be assigned dependent by another MPC entry or by a rigid element.

property node_ids
nodes

Identification number of grid or scalar point. (Integer > 0)

raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'MPC'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

see BaseCard.write_card``

write_card_16(is_double=False)[source]
write_card_8()[source]
class pyNastran.bdf.cards.constraints.MPCADD(conid, sets, comment='')[source]

Bases: ConstraintAdd

Defines a multipoint constraint equation of the form \(\Sigma_j A_j u_j =0\) where \(u_j\) represents degree-of-freedom \(C_j\) at grid or scalar point \(G_j\).

1

2

3

4

MPCADD

2

1

3

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property ids
property mpc_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'MPCADD'
uncross_reference() None[source]

Removes cross-reference links

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

write_card_16(is_double=False)[source]
class pyNastran.bdf.cards.constraints.SESUP(nodes, Cs, comment='')[source]

Bases: SUPORT

Creates a SUPORT card, which defines free-body reaction points. This is always active.

Parameters:
nodeslist[int]

the nodes to release

Cslist[str]

components to support at each node

commentstr; default=’’

a comment for the card

classmethod _init_from_empty()[source]
type = 'SESUP'
class pyNastran.bdf.cards.constraints.SPC(conid: int, nodes: list[int], components: list[str], enforced: list[float], comment: str = '')[source]

Bases: Constraint

Defines enforced displacement/temperature (static analysis) velocity/acceleration (dynamic analysis).

1

2

3

4

5

6

7

8

SPC

SID

G1

C1

D1

G2

C2

D2

SPC

2

32

3

-2.6

5

Creates an SPC card, which defines the degree of freedoms to be constrained

Parameters:
conidint

constraint id

nodeslist[int]

GRID/SPOINT ids

componentslist[str]

the degree of freedoms to constrain (e.g., ‘1’, ‘123’)

enforcedlist[float]

the constrained value for the given node (typically 0.0)

commentstr; default=’’

a comment for the card

.. note:: len(nodes) == len(components) == len(enforced)
.. warning:: non-zero enforced deflection requires an SPCD as well
classmethod _init_from_empty()[source]
_properties = ['node_ids', 'constraints', 'gids_ref', 'gids']
classmethod add_card(card, comment='')[source]

Adds an SPC card from BDF.add_card(...)

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

property constraints
cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SPC'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.SPC1(conid: int, components: str, nodes: list[int], comment: str = '')[source]

Bases: Constraint

1

2

3

4

5

6

7

8

9

SPC1

SID

C

G1

G2

G3

G4

G5

G6

G7

G8

G9

etc.

SPC1

3

246

209075

209096

209512

209513

209516

SPC1

3

2

1

3

10

9

6

5

2

8

SPC1

SID

C

G1

THRU

G2

SPC1

313

12456

6

THRU

32

Creates an SPC1 card, which defines the degree of freedoms to be constrained to a value of 0.0

Parameters:
conidint

constraint id

componentsstr

the degree of freedoms to constrain (e.g., ‘1’, ‘123’)

nodeslist[int]

GRID/SPOINT ids

commentstr; default=’’

a comment for the card

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SPC1'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.SPCADD(conid, sets, comment='')[source]

Bases: ConstraintAdd

Defines a single-point constraint set as a union of single-point constraint sets defined on SPC or SPC1 entries.

1

2

3

4

SPCADD

2

1

3

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
property spc_ids
type = 'SPCADD'
uncross_reference() None[source]

Removes cross-reference links

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

write_card_16(is_double=False)[source]
class pyNastran.bdf.cards.constraints.SPCAX(conid, ringax, hid, component, enforced, comment='')[source]

Bases: Constraint

Defines a set of single-point constraints or enforced displacements for conical shell coordinates.

1

2

3

4

5

6

SPCAX

SID

RID

HID

C

D

SPCAX

2

3

4

13

6.0

Creates an SPCAX card

Parameters:
conidint

Identification number of a single-point constraint set.

ringaxint

Ring identification number. See RINGAX entry.

hidint

Harmonic identification number. (Integer >= 0)

componentint

Component identification number. (Any unique combination of the Integers 1 through 6.)

enforcedfloat

Enforced displacement value

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

component

Component identification number. (Any unique combination of the Integers 1 through 6.)

conid

Identification number of a single-point constraint set.

cross_reference(model: BDF) None[source]
enforced

Enforced displacement value

hid

Harmonic identification number. (Integer >= 0)

raw_fields()[source]
ringax

Ring identification number. See RINGAX entry.

safe_cross_reference(model)[source]
type = 'SPCAX'
uncross_reference() None[source]

Removes cross-reference links

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.SPCOFF(nodes, components, comment='')[source]

Bases: Constraint

1

2

3

4

5

6

7

8

9

SPC

G1

C1

G2

C2

G3

C3

G4

C4

SPC

32

3

5

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

property constraints
cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SPCOFF'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.SPCOFF1(components, nodes, comment='')[source]

Bases: Constraint

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

property constraints
cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SPCOFF1'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

write_card_16(is_double=False)[source]
class pyNastran.bdf.cards.constraints.SUPORT(nodes, Cs, comment='')[source]

Bases: Constraint

Defines determinate reaction degrees-of-freedom in a free body.

1

2

3

4

5

6

7

8

9

SUPORT

ID1

C1

ID2

C2

ID3

C3

ID4

C4

Creates a SUPORT card, which defines free-body reaction points. This is always active.

Parameters:
nodeslist[int]

the nodes to release

Cslist[str]

components to support at each node

commentstr; default=’’

a comment for the card

classmethod _init_from_empty()[source]
_properties = ['node_ids']
classmethod add_card(card: BDFCard, comment: str = '')[source]

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SUPORT'
uncross_reference() None[source]

Removes cross-reference links

validate()[source]

card checking method that should be overwritten

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card

class pyNastran.bdf.cards.constraints.SUPORT1(conid, nodes, Cs, comment='')[source]

Bases: Constraint

Defines determinate reaction degrees-of-freedom (r-set) in a free body-analysis. SUPORT1 must be requested by the SUPORT1 Case Control command.

1

2

3

4

5

6

7

8

SUPORT1

SID

ID1

C1

ID2

C2

ID3

C3

SUPORT1

1

2

23

4

15

5

0

Creates a SUPORT card, which defines free-body reaction points.

Parameters:
conidint

Case Control SUPORT id

nodeslist[int]

the nodes to release

Cslist[str]

components to support at each node

commentstr; default=’’

a comment for the card

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

add_suport1_to_set(suport1)[source]
cross_reference(model: BDF) None[source]

Cross links the card so referenced cards can be extracted directly

Parameters:
modelBDF()

the BDF object

property node_ids
raw_fields()[source]
safe_cross_reference(model: BDF, debug=True)[source]
type = 'SUPORT1'
uncross_reference() None[source]

Removes cross-reference links

write_card(size: int = 8, is_double: bool = False) str[source]

Writes the card with the specified width and precision

Parameters:
sizeint (default=8)

size of the field; {8, 16}

is_doublebool (default=False)

is this card double precision

Returns:
msgstr

the string representation of the card