%% Function name % moduli_halphin %% Revised % 30 January 2014 %% Authors % Michael Cohen, Trey Moore, & Autar Kaw % Section: All % Semester: Fall 2013 %% Purpose % Given the elastic modulii, Poisson's ratios, of a fiber and matrix, % as well as the fiber volume fraction, output the elastic modulii % and Poisson's ratios of the lamina using the Halphin and Tsai % method %% Usage % function [moduli] = moduli_halphin(Ef,Em,nuf,numm,Vf,xi) % Input Variables % Ef=fiber elastic modulus % Em=matrix elastic modulus % nuf=fiber Poisson's ratio % numm=matrix Poisson's ratio % Vf=fiber volume fraction % xi=Halphin Tsai reinforcing factor % Output Variables % moduli=vector of elastic modulii and Poisson's ratio of unidirectional lamina % [E1 E2 nu12 G12] % Keyword % elastc modulii % Poisson's ratio % Halphin and Tsai method %% License Agreement % http://www.eng.usf.edu/~kaw/OCW/composites/license/limiteduse.pdf %% Testing code clc clear all %% Inputs % Mateial: Glass/Epoxy % Lamina: square array with circular fiber cross-sections Ef=85E9; Em=3.4E9; nuf=0.2; numm=0.3; xi=[2 1]; fprintf('\nFiber Elastic Modulus: %g',Ef) fprintf('\nMatrix Elastic Modulus: %g',Em) fprintf('\nFiber Poisson''s ratio: %g',nuf) fprintf('\nMatrix Poisson''s ratio: %g',numm) fprintf('\nHalphin Tsai reinforcing factor for elastic moduli: %g',xi(1)) fprintf('\nHalphin Tsai reinforcing factor for shear moduli: %g',xi(2)) %% Test 1 % Testing for a particular Vf % Input desired Vf Vf=0.6; % Call function: moduli_halphin [moduli] = moduli_halphin(Ef,Em,nuf,numm,Vf,xi); % Results for a particular Vf fprintf('\n\nFiber Volume Fraction: %G\n\n',Vf) disp('Lamina Modulii and Poisson''s Ratios') disp('____________________________________________') fprintf('\n Ex | %G\n Ey | %G\n nuxy | %G\n Gxy | %G\n\n\n\n',... moduli(1),moduli(2),moduli(3),moduli(4)) %% Test 2 % Table of elastic modulii and Poisson's ratios of a Unidirectional Lamina % as a Function of Fiber Volume Fraction for i=1:1:11 Vf(i)=i/10-0.1; [moduli] = moduli_halphin(Ef,Em,nuf,numm,Vf(i),xi); Ex(i)=moduli(1); Ey(i)=moduli(2); nuxy(i)=moduli(3); Gxy(i)=moduli(4); end % Table of results disp(' Lamina Modulii and Poisson''s Ratios') disp('___________________________________________________________________________________') disp(' Vf | Ex | Ey | nuxy | Gxy ') for i=1:1:11 fprintf(' %3.2f | %3.4E | %3.4E | %3.4f | %3.4E\n',... Vf(i),Ex(i),Ey(i),nuxy(i),Gxy(i)) end %% Test 3 % Graph of elastic modulii and Poisson's ratios of a Unidirectional Lamina % as a Function of Fiber Volume Fraction for i=1:1:101 Vf(i)=i/10-0.1; [moduli] = moduli_halphin(Ef,Em,nuf,numm,Vf(i),xi); Ex(i)=moduli(1); Ey(i)=moduli(2); nuxy(i)=moduli(3); Gxy(i)=moduli(4); end % Plot of elastic modulus figure hold on plot(Vf,Ex,'b','LineWidth',2) plot(Vf,Ey,'r','LineWidth',2) grid legend('Longitudinal Elastic Modulus','Transverse Elastic Modulus') title('Elastic Modulus vs. Fiber Volume Fraction') xlabel('Fiber Volume Fraction') ylabel('Elastic Modulus') hold off % Plot of Poisson's ratio figure hold on plot(Vf,nuxy,'b','LineWidth',2) grid legend('Poisson''s Ratio') title('Poisson''s Ratio vs. Fiber Volume Fraction') xlabel('Fiber Volume Fraction') ylabel('Poisson''s Ratio') hold off % Plot of shear modulus figure hold on plot(Vf,Gxy,'b','LineWidth',2) grid legend('Shear Modulus') title('Shear Modulus vs. Fiber Volume Fraction') xlabel('Fiber Volume Fraction') ylabel('Shear Modulus') hold off