solid
Module¶
![Inheritance diagram of pyNastran.bdf.cards.elements.solid](../../../../_images/inheritance-eedf70fc1457a347aa3810c6de50a3180e34093c.png)
All solid elements are defined in this file. This includes:
- CHEXA8
- CHEXA20
- CPENTA6
- CPENTA15
- CTETRA4
- CTETRA10
- CIHEX1
- CIHEX2
All solid elements are SolidElement and Element objects.
-
class
pyNastran.bdf.cards.elements.solid.
CHEXA20
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CHEXA EID PID G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 G13 G14 G15 G16 G17 G18 G19 G20 Creates a CHEXA20
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=20
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CHEXA20 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
get_face_area_centroid_normal
(self, nid, nid_opposite)[source]¶ Parameters: - nid : int
G1 - a grid point on the corner of a face
- nid_opposite : int
G3 - the grid point diagonally opposite of G1
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CHEXA'¶
-
class
pyNastran.bdf.cards.elements.solid.
CHEXA8
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CHEXA EID PID G1 G2 G3 G4 G5 G6 G7 G8 Creates a CHEXA8
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=8
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CHEXA8 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
get_edge_ids
(self)[source]¶ Return the edge IDs # top (5-6-7-8) # btm (1-2-3-4) # left (1-2-3-4) # right (5-6-7-8) # front (1-5-8-4) # back (2-6-7-3)
-
get_face_area_centroid_normal
(self, nid, nid_opposite)[source]¶ Parameters: - nid : int
G1 - a grid point on the corner of a face
- nid_opposite : int
G3 - the grid point diagonally opposite of G1
-
material_coordinate_system
(self, xyz=None)[source]¶ http://www.ipes.dk/Files/Ipes/Filer/nastran_2016_doc_release.pdf
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CHEXA'¶
-
class
pyNastran.bdf.cards.elements.solid.
CIHEX1
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.CHEXA8
-
type
= 'CIHEX1'¶
-
-
class
pyNastran.bdf.cards.elements.solid.
CIHEX2
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.CHEXA20
-
type
= 'CIHEX2'¶
-
-
class
pyNastran.bdf.cards.elements.solid.
CPENTA15
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CPENTA EID PID G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 G13 G14 G15 Creates a CPENTA15
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=15
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CPENTA15 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CPENTA'¶
-
class
pyNastran.bdf.cards.elements.solid.
CPENTA6
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CPENTA EID PID G1 G2 G3 G4 G5 G6 - ::
- 3 6
———-
/ /
/ A / c ——–—– 1 2 4 5 V = (A1+A2)/2 * norm(c1-c2) C = (c1-c2)/2
Creates a CPENTA6
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=6
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CPENTA6 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
material_coordinate_system
(self, xyz=None)[source]¶ http://www.ipes.dk/Files/Ipes/Filer/nastran_2016_doc_release.pdf
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CPENTA'¶
-
class
pyNastran.bdf.cards.elements.solid.
CPYRAM13
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CPYRAM EID PID G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 -
classmethod
add_card
(card, comment='')[source]¶ Adds a CPYRAM13 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CPYRAM'¶
-
classmethod
-
class
pyNastran.bdf.cards.elements.solid.
CPYRAM5
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 CPYRAM EID PID G1 G2 G3 G4 G5 -
classmethod
add_card
(card, comment='')[source]¶ Adds a CPYRAM5 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CPYRAM'¶
-
classmethod
-
class
pyNastran.bdf.cards.elements.solid.
CTETRA10
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 8 9 CTETRA EID PID G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 CTETRA 1 1 239 229 516 99 335 103 265 334 101 102 Creates a CTETRA10
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=10
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CTETRA10 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Note
The order of the nodes are consistent with ANSYS numbering; is this current? ..
Warning
higher order element ids not verified with ANSYS; is this current? ..
Examples
>>> print(element.faces)
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CTETRA'¶
-
class
pyNastran.bdf.cards.elements.solid.
CTETRA4
(eid, pid, nids, comment='')[source]¶ Bases:
pyNastran.bdf.cards.elements.solid.SolidElement
1 2 3 4 5 6 7 CTETRA EID PID G1 G2 G3 G4 Creates a CTETRA4
Parameters: - eid : int
element id
- pid : int
property id (PSOLID, PLSOLID)
- nids : List[int]
node ids; n=4
- comment : str; default=’‘
a comment for the card
-
classmethod
add_card
(card, comment='')[source]¶ Adds a CTETRA4 card from
BDF.add_card(...)
Parameters: - card : BDFCard()
a BDFCard object
- comment : str; default=’‘
a comment for the card
-
ansys_faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with ANSYS numbering. ..
Warning
higher order element ids not verified with ANSYS. ..
Examples
>>> print(element.faces)
-
cross_reference
(self, model)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
eid
= None¶ Element ID
-
faces
¶ Gets the faces of the element
Returns: - faces : Dict[int] = [face1, face2, …]
key = face number value = a list of nodes (integer pointers) as the values.
Note
The order of the nodes are consistent with normals that point outwards The face numbering is meaningless
Examples
>>> print(element.faces)
-
material_coordinate_system
(self, xyz=None)[source]¶ http://www.ipes.dk/Files/Ipes/Filer/nastran_2016_doc_release.pdf
-
node_ids
¶
-
safe_cross_reference
(self, model, xref_errors)[source]¶ Cross links the card so referenced cards can be extracted directly
Parameters: - model : BDF()
the BDF object
-
type
= 'CTETRA'¶
-
class
pyNastran.bdf.cards.elements.solid.
SolidElement
[source]¶ Bases:
pyNastran.bdf.cards.base_card.Element
-
_properties
= ['faces']¶
-
-
pyNastran.bdf.cards.elements.solid.
area_centroid
(n1, n2, n3, n4)[source]¶ Gets the area, \(A\), and centroid of a quad.:
1-----2 | / | | / | 4-----3
-
pyNastran.bdf.cards.elements.solid.
chexa_face_area_centroid_normal
(nid, nid_opposite, nids, nodes_ref)[source]¶ Parameters: - nid : int
G1 - a grid point on the corner of a face
- nid_opposite : int
G3 - the grid point diagonally opposite of G1
- nodes_ref : List[GRID]
the GRID objects
- # top (7-6-5-4)
- # btm (0-1-2-3)
- # left (0-3-7-4)
- # right (5-6-2-1)
- # front (4-5-1-0)
- # back (2-6-7-3)
-
pyNastran.bdf.cards.elements.solid.
cpenta_face_area_centroid_normal
(nid, nid_opposite, nids, nodes_ref)[source]¶ Parameters: - nid : int
G1 - a grid point on the corner of a face
- nid_opposite : int / None
G3 - the grid point diagonally opposite of G1