How to obtain all the solutions of the equation in pure numerical calculation?
1 回表示 (過去 30 日間)
古いコメントを表示
(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 件のコメント
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Numerical Integration and Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!