Borrar filtros
Borrar filtros

I want to plot my eigenvector against r and theta, but I don't know how?

1 visualización (últimos 30 días)
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)

Respuestas (1)

Ashutosh Singh Baghel
Ashutosh Singh Baghel el 21 de Sept. de 2021
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
Please feel free to refer to the documentation to the 'ezplot' function in MATLAB Documentation.

Categorías

Más información sobre Line Plots en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by