ClearAll["`*"]

Introduction to 
Classical Lamination Theory 
using Mathematica; Part - 2

by  
 Zafer Gurdal © Copyright 1993, 1999
 Departments of Aerospace and Ocean Engineering 
  and Engineering Science and Mechanics 
 Virginia Polytehnic Institute and State University
 Blacksburg, VA 24061-0219

Initializations

$PrePrint = If[MatrixQ[#1], MatrixForm[#1], #1]&; $DefaultFont = {"Times-Italic", 12};

Load the program file using   <<   with appropriate path leading to the directory in which the file you want to load resides from the  current directory

<< "clt.m"

In order to find the operations that are currently supported by the clt.m package use;

?CLT

The functions of some of these modules, and the input required to call them will be explained in the following sections.  However, for those who would like to know about these modules before getting into the tutorial, information can be obtained by typing a question mark followed by the name of the module.

Properties of  Off-axis Laminae

Since unidirectional layers are generally rotated with respect to a reference coordinate system, x-y, the stress-strain relations given in the principal directions of material orthotropy must be transformed to the reference axes. The transformation of stresses or strains can be accomplished by using the matrix   Tmatrix,

?Tmatrix

Tmatrix[th]

The transformation matrix can be used to determine the reduced stiffness matrix of an off-axis layer, which is called the transformed reduced stiffness matrix  Qbarmatrix .

?Qbarmatrix

qbm = Qbarmatrix[tht, {u1, u2, u3, u4, u5}]

qbm[[1, 1]]

qbm[[1, 2]]

qbm[[1, 3]]

uvect = InvariantU[{e1, e2, g12, nu12}]

qbm = Qbarmatrix[th, uvect]

qbm[[1, 1]]

Factor[%, Trig -> True]

Alternate way of  deriving the transformed reduced stiffness matrix.

rmatr = {{1, 0, 0}, {0, 1, 0}, {0, 0, 2}}

qr = {{q11, q12, 0}, {q12, q22, 0}, {0, 0, q66}}

tra = Tmatrix[th]

intra = Simplify[Inverse[tra]]

altqbm = intra.qr.rmatr /. Sin[2 th] -> 2 Sin[th] Cos[th]

tra.Inverse[rmatr]

altqbm = altqbm.%

Factor[altqbm[[1, 1]]]

Expand[%, Trig -> True]

As opposed to the reduced stiffness matrix where the (Subscript[Q, 16]) and  (Subscript[Q, 26]) terms are zero, the transformed stiffness matrix (and its inverse) is fully populated.  Therefore, all three stress components are coupled to the three strain components, and vice versa.   Following example demonstrates this coupling.

An off-axis graphite/epoxy lamina is under the action of a uniaxial stress state of (Subscript[σ, x]) = 100 MPa, (Subscript[σ, y])  =  (Subscript[τ, xy])  =  0 .  Determine the lamina strains as a function of the off-axis fiber orientation.

qbm = 
      Qbarmatrix[th, InvariantU[MaterialProperties["T300/5208"]]]

epsvec = Inverse[qbm].{100 (10^6), 0, 0}

epsvec = Simplify[%]

Plot[
      epsvec[[1]], {th, 0, (π/2)}]

Plot[
      epsvec[[2]], {th, 0, (π/2)}]

Plot[
      epsvec[[3]], {th, 0, (π/2)}]

th = ((ang π)/180)

Plot[{100 epsvec[[1]], 
        -1000 epsvec[[2]], 
        -100 epsvec[[3]]}, {ang, 0, 
        90}, Ticks 
        -> {{0, {2, ""}, {4, ""}, {6, ""}, {8, ""}, 
            10, {12, ""}, {14, ""}, {16, ""}, {18, ""}, 
            20, {22, ""}, {24, ""}, {26, ""}, {28, ""}, 
            30, {32, ""}, {34, ""}, {36, ""}, {38, ""}, 
            40, {42, ""}, {44, ""}, {46, ""}, {48, ""}, 
            50, {52, ""}, {54, ""}, {56, ""}, {58, ""}, 
            60, {62, ""}, {64, ""}, {66, ""}, {68, ""}, 
            70, {72, ""}, {74, ""}, {76, ""}, {78, ""}, 
            80, {82, ""}, {84, ""}, {86, ""}, {88, ""}, 90}, 
          Automatic}]

th =. ;