Code references¶
- class composipy.laminate_class.Laminate(layup)[source]¶
This class creates laminate object. It needs ply objects and the angle information. Some formulation characteristics are: Laminate formulations ares used (see References) Main reference is the chapter 4 of reference 2.
- Parameters
layup (list) –
The layup instance is composed of a list containing a tuple to each ply. The tuple must contain the ply angle (float in degrees) with relation to the 1 direciton and a ply object (of Ply class).
[(angle_of_ply_1, ply_1), (angle_of_ply_2, ply_2), … (angle_of_ply_n, ply_n)]
- Return type
None
Example
>>> from composipy import Ply, Laminate >>> ply_1 = Ply(129500, 9370, 0.38, 5240, 0.2) >>> layup_1 = [(90, ply_1), (0, ply_1), (90, ply_1)] >>> laminate = Laminate(layup_1) >>> laminate_1.D # retunrs a array containing bending stiffness matrix [D] of the laminate >>> laminate_1.A # retunrs a array containing stiffness matrix [A] of the laminate >>> laminate_1.B # retunrs a array containing coupled stiffness matrix [B] of the laminate >>> laminate_1.print_ABD() # method that prints ABD matrices of the laminate >>> laminate_1.ABD_p # returns an array containing the ABD prime matricies of the laminate
References
1 - JONES, M. Robert. Mechanics of Composite Materials. Taylor & Francis: 2nd ed 1999. 2 - Analysis and Design of composite structures. Class notes. ITA 2020.
- property A¶
[A] Matrix as numpy.ndarray
- property B¶
[B] Matrix as numpy.ndarray
- property D¶
[D] Matrix as numpy.ndarray
- property ABD_p¶
[A’,B’,D’], which is inverse of ABD Matrix, as numpy.ndarray
- class composipy.ply_class.Ply(e1, e2, v12, g12, thickness, t1=None, c1=None, t2=None, c2=None, s=None, name=None)[source]¶
Creates an instance of Ply.
- Parameters
e1 (float, int) – Young modulus in the 1st direction
e2 (float, int) – Young modulus in the 2nd direction
v12 (float) – poisson modulus 12
g12 (float, int) – Shear modulus
thickness (float, int) – thickness of the ply
t1 (float, default None) – tension allowable in direction 1.
c1 (float, default None) – compression allowable in direction 1.
t2 (float, default None) – tension allowable in direction 2.
c2 (float, default None) – compression allowable in direction 2.
s (float, default None) – shear allowable.
name (str, default None) – Name of the ply
Examples
>>> from composipy import Ply >>> ply_1 = Ply(129500, 9370, 0.38, 5240, 0.2) >>> ply_1.Q_0 # get the compliance matrix of the lamina Out: array([[130867.31382151, 3598.19426713, 0. ], [ 3598.19426713, 9468.93228191, 0. ], [ 0. , 0. , 5240. ]])
References
JONES, M. Robert. Mechanics of Composite Materials. Taylor & Francis: 2nd ed 1999.
Analysis and Design of composite structures. Class notes. ITA 2020.
- property Q_0¶
Get the compliance matrix of the instance. This is for a lamina under plane stress It uses the engineering constants of the instance.
- Parameters
self (self) – Instance of Ply
- Returns
self.Q_0 – Compliance matrix of the ply
- Return type
numpy.ndarray