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

show_ABD()[source]

This method prints ABD Matrix

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

  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 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