Info

This question is closed. Reopen it to edit or answer.

Trouble integrating function & trouble plotting it to see if there are singularities

1 view (last 30 days)
Hi all,
I have a rather complex function that i am trying to integrate - it is the result of trying to re-orient the compliance matrix of a fibre reinforced epoxy.
the compliance matrix (S) is a 6X6 matrix and is an input The transformation matrices are 2 6x6 matrices (T1, T2)
function[S_prime] = orientation_random_3(S)
% 3D Orientational average of compliance matrix as defined by RUC subject
% to periodic BC's
% T1 = Stress Transformation Matrix
% T2 = Strain Transformation Matrix
% S = Compliance Matrix of RUC
% theta = angle from X1 axis
% phi = angle from X3 axis
% Input 6x6 compliance matrix
% Output 6x6 orientational averaged compliance matrix
syms('x','y');
pi = 3.14159265359;
S_prime_variable = zeros(6); S_Prime = zeros(6);
T1 = [cos(y).^2.*cos(x).^2,sin(y).^2.*cos(x).^2,sin(x).^2,-2.*sin(y).*cos(x).*sin(x),-2.*cos(y).*cos(x).*sin(x),2.*cos(y).*sin(y).*cos(x).^2;sin(y).^2,cos(y).^2,0,0,0,2.*cos(y).*sin(y);cos(y).^2.*sin(x).^2,sin(y).^2.*sin(x).^2,cos(x).^2,-2.*sin(y).*cos(x).*sin(x),2.*cos(y).*cos(x).*sin(x),-2.*cos(y).*sin(y).*sin(x).^2;sin(y).*cos(y).*sin(x),-sin(y).*cos(y).*sin(x),0,cos(y).*cos(x),sin(y).*cos(x),(cos(y).^2-sin(y).^2).*sin(x);cos(y).^2.*cos(x).*sin(x),-sin(y).^2.*cos(x).*sin(x),-sin(x).*cos(x),sin(y).*(cos(x).^2+sin(x).^2),cos(y).*(cos(x).^2-sin(x).^2),0;cos(y).*sin(y).*cos(x),cos(y).*sin(y).*cos(x),0,-cos(y).*sin(x),-sin(y).*sin(x),(cos(y).^2+sin(y).^2).*cos(x)];
T2 = [cos(y).^2.*cos(x).^2,sin(y).^2.*cos(x).^2,sin(x).^2,-sin(y).*cos(x).*sin(x),-cos(y).*cos(x).*sin(x),cos(y).*sin(y).*cos(x).^2;sin(y).^2,cos(y).^2,0,0,0,cos(y).*sin(y);cos(y).^2.*sin(x).^2,sin(y).^2.*sin(x).^2,cos(x).^2,-sin(y).*cos(x).*sin(x),cos(y).*cos(x).*sin(x),-cos(y).*sin(y).*sin(x).^2;2.*sin(y).*cos(y).*sin(x),-2.*sin(y).*cos(y).*sin(x),0,cos(y).*cos(x),sin(y).*cos(x),(cos(y).^2-sin(y).^2).*sin(x);2.*cos(y).^2.*cos(x).*sin(x),-2.*sin(y).^2.*cos(x).*sin(x),-2.*sin(x).*cos(x),sin(y).*(cos(x).^2+sin(x).^2),cos(y).*(cos(x).^2-sin(x).^2),0;2.*cos(y).*sin(y).*cos(x),2.*cos(y).*sin(y).*cos(x),0,-cos(y).*sin(x),-sin(y).*sin(x),(cos(y).^2+sin(y).^2).*cos(x)];
S_prime_variable = T2\S*T1;
%My goal is to integrate each of the 36 terms of S_prime_variable from 0->pi over x, and 0->2pi over y.
for j=1:6
for i=1:6
fun = matlabFunction(S_prime_variable(i,j)*sin(x));
k = int(fun,x);
l = subs(k,x,pi);
m = subs(k,x,0);
n = l-m;
n2 = matlabFunction(n);
o = int(n2,y);
p = subs(o,y,2*pi);
q = subs(o,y,0);
S_Prime(i,j) = (p-q);
end
end
with the above code i get an error @ o:
Error using mupadmex
Error in MuPAD command: Unexpected 'identifier' [line 1, col 253]
Error in sym/int (line 110)
r = mupadmex('symobj::intindef',f.s,x.s,options);
Error in orientation_random_2 (line 46)
o = int(n2,y);
I am only integrating this way because i have had incredible amount of trouble trying 2D integration techniques.
Further, while trying to evaluate the functions by creating a meshgrid and meshing the surfaces, i get the following error:
Error using mesh (line 76)
X, Y, Z, and C cannot be complex.
Here is an example input compliance matrix:
X = [0.2174,-0.0630,-0.0630,0,0,0;-0.0630,0.5832,-0.2748,0,0,0;-0.0630,-0.2748,0.5832,0,0,0;0,0,0,0.858,0,0;0,0,0,0,0.858,0;0,0,0,0,0,0.858]
Does anyone have an idea how to evaluate at least what is going on? Im totally lost here and have been struggling for over a week.
Any help would be greatly appreciated!!

Answers (0)

This question is closed.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!