I want to plot my eigenvector against r and theta, but I don't know how?
2 次查看(过去 30 天)
显示 更早的评论
syms S r a theta
sigma_rr = (S/2)*(1-(a/r)^2)+(S/2)*(1-4*((a/r)^2)+3*(a/r)^4)*cos(2*theta)
sigma_00 = (S/2)*(1+(a/2)^2)-(S/2)*(1+3*(a/3)^4)*cos(2*theta)
sigma_0r = -(S/2)*(1+(2*(a/r)^2)-3*(a/r)^4)*sin(2*theta)
A= [sigma_rr, sigma_0r ; sigma_0r, sigma_00]
B= [cos(theta), sin(theta) ; -sin(theta), cos(theta)]
C=transpose(B)
D = C*B*A
e= eig(D)
[V,E]= eig(D)
plotmatrix(A)
0 个评论
回答(1 个)
Ashutosh Singh Baghel
2021-9-21
Hi Friso,
I understand that you wish to plot the symbolic equations related to 'e'(eigenvector) against 'r' and 'theta'.
Please refer to the following workaround.
S = 5; %Define S;
a = 5; %Define a;
syms r theta
sigma_rr = (S/2)*(1-(a/r)^2)+(S/2)*(1-4*((a/r)^2)+3*(a/r)^4)*cos(2*theta);
sigma_00 = (S/2)*(1+(a/2)^2)-(S/2)*(1+3*(a/3)^4)*cos(2*theta);
sigma_0r = -(S/2)*(1+(2*(a/r)^2)-3*(a/r)^4)*sin(2*theta);
A = [sigma_rr, sigma_0r ; sigma_0r, sigma_00];
B = [cos(theta), sin(theta) ; -sin(theta), cos(theta)];
C = transpose(B);
D = C*B*A;
e = eig(D);
[V,E] = eig(D);
count = 0;
for i = [1 2]
subplot(2,1,i);
ezplot(e(i,1),[-10,10],[-2*pi,2*pi]);
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Troubleshooting in MATLAB Compiler SDK 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!