How to obtain all the solutions of the equation in pure numerical calculation?

1 view (last 30 days)
(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

Answers (0)

Community Treasure Hunt

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

Start Hunting!