From 825908f674b7d3136043d51794c8f81a84d804e8 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Miyazaki Date: Thu, 5 Feb 2026 16:22:57 +0900 Subject: [PATCH 1/2] Boundary in the DOS calculations has been changed (PostProcess). Boundary in the DOS calculations has been changed (PostProcess). Now, the range of calculated DOS is reduced to have the correct DOS values in this range. --- tools/PostProcessing/process_module.f90 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/PostProcessing/process_module.f90 b/tools/PostProcessing/process_module.f90 index 17fdb09e6..80b413b3c 100644 --- a/tools/PostProcessing/process_module.f90 +++ b/tools/PostProcessing/process_module.f90 @@ -339,8 +339,8 @@ subroutine process_dos if(six*sigma_DOS < dE_DOS) write(*,fmt='(4x,"Sigma is much less than bin size: this may cause errors")') end if ! Adjust limits to allow full peak to be seen - E_DOS_min = E_DOS_min - four*sigma_DOS - E_DOS_max = E_DOS_max + four*sigma_DOS + E_DOS_min = E_DOS_min + four*sigma_DOS + E_DOS_max = E_DOS_max - four*sigma_DOS ! Recalculate dE_DOS now that we've broadened it dE_DOS = (E_DOS_max - E_DOS_min)/real(n_DOS-1,double) write(*,fmt='(2x,"Dividing DOS into ",i5," bins of width ",f12.6," Ha")') n_DOS, dE_DOS From edbe8c3f985ceeb4f662aae6ebfca3c5a84cfd80 Mon Sep 17 00:00:00 2001 From: David Bowler Date: Fri, 6 Feb 2026 10:50:29 +0000 Subject: [PATCH 2/2] Adjust default sigma for DOS --- tools/PostProcessing/read_module.f90 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/PostProcessing/read_module.f90 b/tools/PostProcessing/read_module.f90 index 6f82c58de..1f419359e 100644 --- a/tools/PostProcessing/read_module.f90 +++ b/tools/PostProcessing/read_module.f90 @@ -272,7 +272,7 @@ subroutine read_input ! Add flag for window relative to Fermi level E_DOS_min = fdf_double('Process.min_DOS_E',E_wf_min) E_DOS_max = fdf_double('Process.max_DOS_E',E_wf_max) - sigma_DOS = fdf_double('Process.sigma_DOS',zero) ! Adjust to minimum of 4*energy spacing + sigma_DOS = fdf_double('Process.sigma_DOS',0.001_double) ! Better than adaptive n_DOS = fdf_integer('Process.n_DOS',1001) flag_total_iDOS = fdf_boolean('Process.TotalIntegratedDOS',.false.) if(i_job==7) then @@ -478,7 +478,7 @@ subroutine read_eigenvalues write(*,fmt='(4x,"Fermi level: ",f12.5," Ha (=",f10.3," eV)")') efermi(1), efermi(1)*HaToeV else read(17,fmt='(a6,2f18.10)') str,efermi(1), efermi(2) - write(*,fmt='(4x,"Fermi levels: ",2f12.5," Ha (=",2f10.3" eV)")') efermi, efermi*HaToeV + write(*,fmt='(4x,"Fermi levels: ",2f12.5," Ha (=",2f10.3," eV)")') efermi, efermi*HaToeV end if read(17,*) str ! Allocate memory