How to obtain all the solutions of the equation in pure numerical calculation?
1 view (last 30 days)
Show older comments
(kz)=det(tuu) is a polynomial of kz generated through the determinant of matrix tuu. Now, I want to get all the solutions of dtuu(kz)==0, and because the power of kz is 10, there will be 10 solutions. vpasolve function can get all the solutions, but it can only deal with symbolic equation. How to obtain all the solutions of dtuu(kz)==0 in pure numerical calculation? Many thanks!
The codes of dtuu(kz) are as following:
function U=dtuu(kz)
x=0.1;
y=0.2;
m = 2;
vh = 4;
mu = 11;
delta = 8;
HBAR = 1.05457266e-34;
ME = 9.1093897e-31;
ELEC = 1.60217733e-19;
Kh = 2.106;
vKh = [0,0,0;Kh,0,0;-Kh,0,0;0,Kh,0;0,-Kh,0];
kc = sqrt(2.*ME.*ELEC/HBAR^2).*1e-10;
ku = kc.*sqrt(mu+delta);
kd = kc.*sqrt(mu-delta);
a3 = [pi/Kh,pi/Kh,sqrt(2).*pi/Kh];
kuu =[-ku.*sin(x).*cos(y), -ku.*sin(x).*sin(y), kz];
n=0:m;
for p=1:5;
for q=1:5;
tuu(p,q)= (sum((kuu + vKh(p,:)).^2)-ku^2).*(p==q)+ kc^2*vh*sum(exp(i.*n.*sum((vKh(q,:)-vKh(p,:)).*a3)))/(m+1).*(p~=q);
end
end
U=det(tuu);
end
0 Comments
Answers (0)
See Also
Categories
Find more on Numerical Integration and Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!