フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

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

2 ビュー (過去 30 日間)
Tyler
Tyler 2013 年 3 月 29 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
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!!

回答 (0 件)

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by