function [band_sto]=choice_band(vec,val,band_index)
%根据band_index选择能带
%vec,val是最原始的vec,val
val=real(sqrt(diag(val)));%w/c,,real可改,决定画能带的实部还是虚部
[~,order]=sort(val);%w/c
band_sto=zeros(size(vec,1),length(band_index));
for count=1:length(band_index)
tp=band_index(count);
band_sto(:,count)=vec(:,order(tp));
end
end
带选择程序(未测试)
最新推荐文章于 2024-06-10 22:21:04 发布
该MATLAB函数`choice_band`用于根据输入的`band_index`选择能带,通过对`val`的实部进行排序。它首先对`val`的对角元素取平方根并排序,然后按排序后的顺序将`vec`的相应列存储到结果矩阵`band_sto`中。
摘要由CSDN通过智能技术生成