solid Module

digraph inheritance209ebe70b1 { 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.base_card.Property" [URL="../pyNastran.bdf.cards.base_card.html#pyNastran.bdf.cards.base_card.Property",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 Property Class"]; "pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.base_card.Property" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.properties.solid.PCOMPLS" [URL="#pyNastran.bdf.cards.properties.solid.PCOMPLS",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.base_card.Property" -> "pyNastran.bdf.cards.properties.solid.PCOMPLS" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.properties.solid.PCOMPS" [URL="#pyNastran.bdf.cards.properties.solid.PCOMPS",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.base_card.Property" -> "pyNastran.bdf.cards.properties.solid.PCOMPS" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.properties.solid.PIHEX" [URL="#pyNastran.bdf.cards.properties.solid.PIHEX",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.properties.solid.PSOLID" -> "pyNastran.bdf.cards.properties.solid.PIHEX" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.properties.solid.PLSOLID" [URL="#pyNastran.bdf.cards.properties.solid.PLSOLID",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 fully nonlinear (i.e., large strain and large rotation)"]; "pyNastran.bdf.cards.base_card.Property" -> "pyNastran.bdf.cards.properties.solid.PLSOLID" [arrowsize=0.5,style="setlinewidth(0.5)"]; "pyNastran.bdf.cards.properties.solid.PSOLID" [URL="#pyNastran.bdf.cards.properties.solid.PSOLID",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.base_card.Property" -> "pyNastran.bdf.cards.properties.solid.PSOLID" [arrowsize=0.5,style="setlinewidth(0.5)"]; }
All solid properties are defined in this file. This includes:
  • PCOMPS

  • PCOMPLS

  • PLSOLID

  • PSOLID

All solid properties are Property objects.

class pyNastran.bdf.cards.properties.solid.PCOMPLS(pid, global_ply_ids, mids, thicknesses, thetas, direct=1, cordm=0, sb=None, analysis='ISH', c8=None, c20=None, comment='')[source]

Bases: Property

PCOMPLS

PID

DIRECT

CORDM

SB

ANAL

C8

BEH8

INT8

BEH8H

INT8H

C20

BEH20

INT20

BEH20H

INT20H

ID1

MID1

T1

THETA1

ID2

MID2

T2

THETA2

PCOMPLS

782

1

1001

171

.3

12.3

100

175

.7

77.7

PCOMPLS | PID | DIRECT | CORDM | SB | ANAL |
| C8 | BEH8 | INT8 | BEH8H | INT8H |
| C20 | BEH20 | INT20 | BEH20H | INT20H |
| ID1 | MID1 | T1 | THETA1 | |
| ID2 | MID2 | T2 | THETA2 | |
Mid(iply: int = 0)[source]

returns the material ID of an element

Returns:
midint

the Material ID

Mids()[source]
Rho()[source]

Returns the density

Thickness(iply: int = 0)[source]
classmethod _init_from_empty()[source]
classmethod add_card(card: BDFCard, comment='')[source]

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]
property material_ids: list[int]
property nplies: int
raw_fields()[source]
PCOMPLS | PID | DIRECT | CORDM | SB | ANAL |
| C8 | BEH8 | INT8 | BEH8H | INT8H |
| C20 | BEH20 | INT20 | BEH20H | INT20H |
| ID1 | MID1 | T1 | THETA1 | |
| ID2 | MID2 | T2 | THETA2 | |
repr_fields()[source]

Gets the fields in their simplified form

Returns:
fieldslist[varies]

the fields that define the card

type = 'PCOMPLS'
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.properties.solid.PCOMPS(pid, global_ply_ids, mids, thicknesses, thetas, cordm=0, psdir=13, sb=None, nb=None, tref=0.0, ge=0.0, failure_theories=None, interlaminar_failure_theories=None, souts=None, comment='')[source]

Bases: Property

dummy init

Mid(iply: int = 0)[source]

returns the material ID of an element

Returns:
midint

the Material ID

Mids()[source]
Rho()[source]

Returns the density

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]
property material_ids
raw_fields()[source]
repr_fields()[source]

Gets the fields in their simplified form

Returns:
fieldslist[varies]

the fields that define the card

type = 'PCOMPS'
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.properties.solid.PIHEX(pid, mid, cordm=0, integ=None, stress=None, isop=None, fctn='SMECH', comment='')[source]

Bases: PSOLID

Creates a PSOLID card

Parameters:
pidint

property id

midint

material id

cordmint; default=0

material coordinate system

integint; default=None

None-varies depending on element type 0, ‘BUBBLE’ 1, ‘GAUSS’ 2, ‘TWO’ 3, ‘THREE’ REDUCED FULL

stressint/str; default=None

None/GRID, 1-GAUSS

isopint/str; default=None

0-REDUCED 1-FULL

fctnstr; default=’SMECH’

PFLUID/SMECH

commentstr; default=’’

a comment for the card

raw_fields()[source]
repr_fields()[source]

Gets the fields in their simplified form

Returns:
fieldslist[varies]

the fields that define the card

type = 'PIHEX'
class pyNastran.bdf.cards.properties.solid.PLSOLID(pid, mid, stress_strain='GRID', ge=0.0, comment='')[source]

Bases: Property

Defines a fully nonlinear (i.e., large strain and large rotation) hyperelastic solid element.

1

2

3

4

PLSOLID

PID

MID

STR

PLSOLID

20

21

Creates a PLSOLID card

Parameters:
pidint

property id

midint

material id

stress_strainstr

Location of stress and strain output valid types = {GRID, GAUSS}

gefloat; default=0.

damping coefficient

commentstr; default=’’

a comment for the card

Rho()[source]

Returns the density

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

Adds a PLSOLID 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

mid

Material ID

pid

Property ID

raw_fields()[source]
stress_strain

Location of stress and strain output

type = 'PLSOLID'
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.properties.solid.PSOLID(pid, mid, cordm=0, integ=None, stress=None, isop=None, fctn='SMECH', comment='')[source]

Bases: Property

1

2

3

4

5

6

7

8

PSOLID

PID

MID

CORDM

IN

STRESS

ISOP

FCTN

PSOLID

1

1

0

PSOLID

2

100

6

TWO

GRID

REDUCED

Creates a PSOLID card

Parameters:
pidint

property id

midint

material id

cordmint; default=0

material coordinate system

integint; default=None

None-varies depending on element type 0, ‘BUBBLE’ 1, ‘GAUSS’ 2, ‘TWO’ 3, ‘THREE’ REDUCED FULL

stressint/str; default=None

None/GRID, 1-GAUSS

isopint/str; default=None

0-REDUCED 1-FULL

fctnstr; default=’SMECH’

PFLUID/SMECH

commentstr; default=’’

a comment for the card

E()[source]
G()[source]
Nu()[source]
Rho()[source]

Returns the density

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

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

Parameters:
cardBDFCard()

a BDFCard object

commentstr; default=’’

a comment for the card

cross_reference(model: BDF) None[source]

cross reference method for a PSOLID

classmethod export_to_hdf5(h5_file, model, pids)[source]

exports the properties in a vectorized way

materials()[source]
mid

Material ID

pid

Property ID

raw_fields()[source]
repr_fields()[source]

Gets the fields in their simplified form

Returns:
fieldslist[varies]

the fields that define the card

type = 'PSOLID'
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