Skip to content

Failed to read ProcessSij000001WF.dat by PostProcessCQ #420

@zhonger

Description

@zhonger

Description

The error will appear when we want to generate the local density of states (LDOS) for each atom by PostProcessCQ with the following settings:

Image

Conquest_input

## DOS
IO.WFRangeRelative T
IO.min_wf_E -0.450   # 0.450 (Ha) = 12.245 eV
IO.max_wf_E  0.450
IO.MatrixFile.BinaryFormat T

IO.writeDOS T
IO.write_proj_DOS T

Process.Job pdos
Process.WFRangeRelative T
Process.min_DOS_E -0.450   # (Ha) = 12.245 eV
Process.max_DOS_E  0.450
Process.sigma_DOS 0.005     # (Ha, default 0.001)
Process.n_DOS     3601      # (default 1001)
Process.pDOS_l_resolved T
#Process.pDOS_lm_resolved T

The process is performed with two steps:

  • one-shot calculation for Process0000001WF.dat and ProcessSij000001WF.dat files by Conquest
  • LDOS generation by PostProcessCQ

Problem analysis

The problem is that IO.WFRangeRelative T is not working at all.

Image

The offset is set to the Fermi level or not, depending on flag_wf_range_Ef (IO.WFRangeRelative).

If we check init_read_module.f90 for the definition of flag_wf_range_Ef, it can be known that all the things are related by flag_out_wf (IO.OutputWF).

Image

Therefore, if IO.OutputWF is not set to True in Conquest_input, the IO.WFRangeRelative will never work.

Possible Solutions

One simple solution is to tell people to use IO.OutputWF T with IO.WFRangeRelative T.

Another better solution is to enable automatic settings for IO.OutputWF to be True when IO.write_proj_DOS is True by modifying the source code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions