%% Function name % qqbar %% Revised % 30 January 2014 %% Author % Shyam Ramanath Thillainathan, Trey Moore, & Autar Kaw % Section: All % Semester: Fall 2013 %% Purpose % Given the four elastic moduli of plies, E1, E2, % nu12,G12, angle of plies and number of plies this % function calculates the Reduced Stiffness Matrix, Q % and the Transformed Reduced Stiffness Matrix Qbar of the plies. %% Usage % function [Qplies,Qbarplies] = qqbar(nplies,moduliplies,angleplies) % Input variables % nplies=number of plies % moduliplies=vector of elastic modulii and Poisson's ratio for each lamina % E1=longitudinal elastic modulus % E2=transverse elastic modulus % nu12=major Poisson's ratio % G12=in-plane shear modulus % angleplies=angle of ply in degrees for each lamina % Output variables % Qplies=reduced stiffness matrix for each lamina % Qbarplies=transformed reduced stiffness matrix for each lamina % Keyword % reduced stiffness matrix % transformed reduced stiffness matrix %% License Agreement % http://www.eng.usf.edu/~kaw/OCW/composites/license/limiteduse.pdf %% Testing code clc clear all %% Inputs % Material: Graphite/Epoxy % Lamina: 60/45/45/90 nplies=4; moduliplies=[181E9 10.3E9 0.28 7.17E9; 181E9 10.3E9 0.28 7.17E9; 181E9 ... 10.3E9 0.28 7.17E9; 181E9 10.3E9 0.28 7.17E9]; angleplies=[60 45 45 90]; fprintf('Number of plies: %g\n',nplies) for i=1:1:nplies fprintf('\nFor Ply: %g\n',i) fprintf('\n Angle of Ply: %g\n\n',angleplies(i)) disp(' Angle Lamina Engineering Constants') disp('___________________________________________') fprintf('\n E1 | %G\n E2 | %G\n nu12 | %G\n G12 | %G\n\n'... ,moduliplies(i,1),moduliplies(i,2),moduliplies(i,3),moduliplies(i,4)) end %% Test % Call function: qqbar [Qplies,Qbarplies] = qqbar(nplies,moduliplies,angleplies); for i=1:1:nplies fprintf('\nFor Ply: %g\n',i) fprintf('\n Angle of Ply: %g\n\n',angleplies(i)) disp(' Reduced Stiffness Matrix') disp('______________________________________________') disp(Qplies(:,:,i)) disp(' Transformed Reduced Stiffness Matrix') disp('______________________________________________') disp(Qbarplies(:,:,i)) end