clear; // *** 設定ファイルの読み込み *** // bcc Fe //exec('bccFe.sce'); // fcc Ni //exec('fccNi.sce'); // hcp Co //exec('hcpCo.sce'); // Simple cubic SrTiO3 (perovskite) exec('scSrTiO3.sce'); // *** 各k点間の分割数 *** n = 101; // *** k点のグリッドを作成 *** kpath = [linspace(k(1,1),k(2,1),n)', linspace(k(1,2),k(2,2),n)', linspace(k(1,3),k(2,3),n)']; for i = 2:(size(k,'r') - 1) do kx = linspace(k(i,1),k(i + 1,1),n)'; ky = linspace(k(i,2),k(i + 1,2),n)'; kz = linspace(k(i,3),k(i + 1,3),n)'; kpath = [kpath; [kx(2:$), ky(2:$), kz(2:$)]]; end // *** k点をつなぐパスの表示 *** param3d(kpath(:,1),kpath(:,2),kpath(:,3)); // *** k点をつなぐパスの道のり *** klength = [0]; for i = 2:size(k,'r') do dkx = (k(i,1) - k(i - 1,1)) * %pi / a; dky = (k(i,2) - k(i - 1,2)) * %pi / (boa * a); dkz = (k(i,3) - k(i - 1,3)) * %pi / (coa * a); klength = [klength, (klength($) + sqrt(dkx ^ 2 + dky ^ 2 + dkz ^ 2))]; end // *** ファイルの書き出し *** fprintfMat("akaikkr.txt",kpath); fprintfMat("gnuplot.txt",klength);