FeResPost Web Site                     FeResPost Online User Manual

IV.3.4.4 Properties of the laminates defined in an ESAComp file

The third example, defined in file “testCla3.rb” illustrates the creation of a ClaLoad object and the calculation of corresponding ply stresses and strains. It is reproduced extensively below:

require "FeResPost"
require "extendedCLA"
include FeResPost

   db=ClaDb.new
   db.Id="testDB"
   db.readEdf("test.edf")

   tmpLoad=ClaLoad.new
   tmpLoad.Id="testF0T"
   tmpLoad.setT(20.0)
   tmpLoad.setMembrane([0.03,0.0,0.1],"SC","SC","SC")
   tmpLoad.setFlexural([0.000000e+00,0.000000e+00,0.000000e+00],"SC","SC","SC")
   tmpLoad.setOutOfPlane([100.0,200.0],"FM","FM")

   lam=db.getLaminateCopy("testLam2")
   lam.setAllPliesIlss(3.0e+7)
   lam.setLaminateIlss(3.0e+7)

   theta=45.0
   lam.calcResponse(db,theta,tmpLoad,true,false,true)
   lam.write_loadResponse(STDOUT,theta)
   STDOUT.printf("\n")
   lam.write_loadResponse(STDOUT,0.0)
   STDOUT.printf("\n")

   lam.write_PliesInPlaneStrainsAndStresses(STDOUT)
   STDOUT.printf("\n")
   lam.write_PliesTemperatures(STDOUT)
   STDOUT.printf("\n")

   criteria=["Tresca2D","VonMises2D","MaxStress","MaxStrain",\
      "TsaiHill","TsaiWu","Hoffman","Puck","Puck_b","Puck_c",\
      "Hashin","YamadaSun","CombStrain2D","Ilss"]
   lam.write_crit(STDOUT,db,criteria)
   STDOUT.printf("\n")

This example has been used for mainly debugging composite classes. It illustrates the calculation of failure indices, reserve factors and equivalent stresses in a laminate for a given loading. The reader should examine carefully the result for interlaminar shear.

Note that some criterion may give infinite or NaN values because all the material allowables have not been initialized. (See for example the failure indices of Tresca and Von Mises criteria.)