Run Options

Run Options#

run_op:
type: dict
argument path: run_op
task_options:
type: dict, optional
argument path: run_op/task_options

the task to run, includes: band, dos, pdos, FS2D, FS3D, ifermi

Depending on the value of task, different sub args are accepted.

task:
type: str (flag key)
argument path: run_op/task_options/task
The string define the task DeePTB conduct, includes:
  • band: for band structure plotting.

  • dos: for density of states plotting.

  • pdos: for projected density of states plotting.

  • FS2D: for 2D fermi-surface plotting.

  • FS3D: for 3D fermi-surface plotting.

  • write_sk: for transcript the nnsk model to standard sk parameter table

  • ifermi: for fermi surface plotting.

  • negf: for non-equilibrium green function calculation.

  • tbtrans_negf: for non-equilibrium green function calculation with tbtrans.

When task is set to band:

kline_type:
type: str
argument path: run_op/task_options[band]/kline_type
The different type to build kpath line mode.
  • “abacus” : the abacus format

  • “vasp” : the vasp format

  • “ase” : the ase format

kpath:
type: str | list
argument path: run_op/task_options[band]/kpath

for abacus, this is list, for vasp it is a string to specifc the kpath.

klabels:
type: list, optional, default: ['']
argument path: run_op/task_options[band]/klabels

the labels for high symmetry kpoint

E_fermi:
type: float | int | NoneType, optional, default: None
argument path: run_op/task_options[band]/E_fermi

the fermi level used to plot band

emin:
type: float | int | NoneType, optional, default: None
argument path: run_op/task_options[band]/emin

the min energy to show the band plot

emax:
type: float | int | NoneType, optional, default: None
argument path: run_op/task_options[band]/emax

the max energy to show the band plot

nkpoints:
type: int, optional, default: 0
argument path: run_op/task_options[band]/nkpoints

the max energy to show the band plot

ref_band:
type: str | NoneType, optional, default: None
argument path: run_op/task_options[band]/ref_band

the reference band structure to be ploted together with dptb bands.

nel_atom:
type: dict | NoneType, optional, default: None
argument path: run_op/task_options[band]/nel_atom

the valence electron number of each type of atom.

When task is set to dos:

mesh_grid:
type: list
argument path: run_op/task_options[dos]/mesh_grid
sigma:
type: float
argument path: run_op/task_options[dos]/sigma
npoints:
type: int
argument path: run_op/task_options[dos]/npoints
width:
type: list
argument path: run_op/task_options[dos]/width
E_fermi:
type: float | int | NoneType, optional, default: None
argument path: run_op/task_options[dos]/E_fermi
gamma_center:
type: bool, optional, default: False
argument path: run_op/task_options[dos]/gamma_center

When task is set to pdos:

mesh_grid:
type: list
argument path: run_op/task_options[pdos]/mesh_grid
sigma:
type: float
argument path: run_op/task_options[pdos]/sigma
npoints:
type: int
argument path: run_op/task_options[pdos]/npoints
width:
type: list
argument path: run_op/task_options[pdos]/width
E_fermi:
type: float | int | NoneType, optional, default: None
argument path: run_op/task_options[pdos]/E_fermi
atom_index:
type: list
argument path: run_op/task_options[pdos]/atom_index
orbital_index:
type: list
argument path: run_op/task_options[pdos]/orbital_index
gamma_center:
type: bool, optional, default: False
argument path: run_op/task_options[pdos]/gamma_center

When task is set to FS2D:

mesh_grid:
type: list
argument path: run_op/task_options[FS2D]/mesh_grid
sigma:
type: float
argument path: run_op/task_options[FS2D]/sigma
E0:
type: int
argument path: run_op/task_options[FS2D]/E0
intpfactor:
type: int
argument path: run_op/task_options[FS2D]/intpfactor

When task is set to FS3D:

mesh_grid:
type: list
argument path: run_op/task_options[FS3D]/mesh_grid
sigma:
type: float
argument path: run_op/task_options[FS3D]/sigma
E0:
type: int
argument path: run_op/task_options[FS3D]/E0
intpfactor:
type: int
argument path: run_op/task_options[FS3D]/intpfactor

When task is set to write_sk:

format:
type: str, optional, default: sktable
argument path: run_op/task_options[write_sk]/format
thr:
type: float, optional, default: 0.001
argument path: run_op/task_options[write_sk]/thr

When task is set to ifermi:

fermisurface:
type: dict
argument path: run_op/task_options[ifermi]/fermisurface
mesh_grid:
type: list
argument path: run_op/task_options[ifermi]/fermisurface/mesh_grid
mu:
type: float | int
argument path: run_op/task_options[ifermi]/fermisurface/mu
sigma:
type: float, optional, default: 0.1
argument path: run_op/task_options[ifermi]/fermisurface/sigma
intpfactor:
type: int
argument path: run_op/task_options[ifermi]/fermisurface/intpfactor
wigner_seitz:
type: bool, optional, default: True
argument path: run_op/task_options[ifermi]/fermisurface/wigner_seitz
nworkers:
type: int, optional, default: -1
argument path: run_op/task_options[ifermi]/fermisurface/nworkers
plot_type:
type: str, optional, default: plotly
argument path: run_op/task_options[ifermi]/fermisurface/plot_type

plot_type: Method used for plotting. Valid options are: matplotlib, plotly, mayavi, crystal_toolkit.

use_gui:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/fermisurface/use_gui
plot_fs_bands:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/fermisurface/plot_fs_bands
fs_plane:
type: list, optional, default: [0, 0, 1]
argument path: run_op/task_options[ifermi]/fermisurface/fs_plane
fs_distance:
type: float | int, optional, default: 0
argument path: run_op/task_options[ifermi]/fermisurface/fs_distance
plot_options:
type: dict, optional, default: {}
argument path: run_op/task_options[ifermi]/fermisurface/plot_options
colors:
type: str | dict | NoneType | list, optional, default: None
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/colors
The color specification for the iso-surfaces. Valid options are:
  • A single color to use for all Fermi surfaces, specified as a tuple of rgb values from 0 to 1. E.g., red would be (1, 0, 0).

  • A list of colors, specified as above.

  • A dictionary of {Spin.up: color1, Spin.down: color2}, where the colors are specified as above.

  • A string specifying which matplotlib colormap to use. See https://matplotlib.org/tutorials/colors/colormaps.html for more information.

  • None, in which case the default colors will be used.

projection_axis:
type: list | NoneType, optional, default: None
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/projection_axis
projection_axis: Projection axis that can be used to calculate the color of

vector properties. If None, the norm of the properties will be used, otherwise the color will be determined by the dot product of the properties with the projection axis. Only has an effect when used with the vector_properties option.

hide_surface:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/hide_surface

hide_surface: Whether to hide the Fermi surface. Only recommended in combination with the vector_properties option.

hide_labels:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/hide_labels

hide_labels: Whether to show the high-symmetry k-point labels.

hide_cell:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/hide_cell

hide_cell: Whether to show the reciprocal cell boundary.

vector_spacing:
type: float, optional, default: 0.2
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/vector_spacing
vector_spacing: The rough spacing between arrows. Uses a custom algorithm

for resampling the Fermi surface to ensure that arrows are not too close together. Only has an effect when used with the vector_properties option.

azimuth:
type: float, optional, default: 45.0
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/azimuth

azimuth: The azimuth of the viewpoint in degrees. i.e. the angle subtended by the position vector on a sphere projected on to the x-y plane.

elevation:
type: float, optional, default: 35.0
argument path: run_op/task_options[ifermi]/fermisurface/plot_options/elevation

The zenith angle of the viewpoint in degrees, i.e. the angle subtended by the position vector and the z-axis.

property:
type: dict, optional, default: {}
argument path: run_op/task_options[ifermi]/property
velocity:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/property/velocity
color_properties:
type: str | bool, optional, default: False
argument path: run_op/task_options[ifermi]/property/color_properties
color_properties: Whether to use the properties to color the Fermi surface.

If the properties is a vector then the norm of the properties will be used. Note, this will only take effect if the Fermi surface has properties. If set to True, the viridis colormap will be used. Alternative colormaps can be selected by setting color_properties to a matplotlib colormap name. This setting will override the colors option. For vector properties, the arrows are colored according to the norm of the properties by default. If used in combination with the projection_axis option, the color will be determined by the dot product of the properties with the projection axis.

colormap:
type: str, optional, default: viridis
argument path: run_op/task_options[ifermi]/property/colormap
prop_plane:
type: list, optional, default: [0, 0, 1]
argument path: run_op/task_options[ifermi]/property/prop_plane
prop_distance:
type: float | int, optional, default: 0
argument path: run_op/task_options[ifermi]/property/prop_distance
plot_options:
type: dict, optional, default: {}
argument path: run_op/task_options[ifermi]/property/plot_options
colors:
type: str | dict | NoneType | list, optional, default: None
argument path: run_op/task_options[ifermi]/property/plot_options/colors
The color specification for the iso-surfaces. Valid options are:
  • A single color to use for all Fermi surfaces, specified as a tuple of rgb values from 0 to 1. E.g., red would be (1, 0, 0).

  • A list of colors, specified as above.

  • A dictionary of {Spin.up: color1, Spin.down: color2}, where the colors are specified as above.

  • A string specifying which matplotlib colormap to use. See https://matplotlib.org/tutorials/colors/colormaps.html for more information.

  • None, in which case the default colors will be used.

projection_axis:
type: list | NoneType, optional, default: None
argument path: run_op/task_options[ifermi]/property/plot_options/projection_axis
projection_axis: Projection axis that can be used to calculate the color of

vector properties. If None, the norm of the properties will be used, otherwise the color will be determined by the dot product of the properties with the projection axis. Only has an effect when used with the vector_properties option.

hide_surface:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/property/plot_options/hide_surface

hide_surface: Whether to hide the Fermi surface. Only recommended in combination with the vector_properties option.

hide_labels:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/property/plot_options/hide_labels

hide_labels: Whether to show the high-symmetry k-point labels.

hide_cell:
type: bool, optional, default: False
argument path: run_op/task_options[ifermi]/property/plot_options/hide_cell

hide_cell: Whether to show the reciprocal cell boundary.

vector_spacing:
type: float, optional, default: 0.2
argument path: run_op/task_options[ifermi]/property/plot_options/vector_spacing
vector_spacing: The rough spacing between arrows. Uses a custom algorithm

for resampling the Fermi surface to ensure that arrows are not too close together. Only has an effect when used with the vector_properties option.

azimuth:
type: float, optional, default: 45.0
argument path: run_op/task_options[ifermi]/property/plot_options/azimuth

azimuth: The azimuth of the viewpoint in degrees. i.e. the angle subtended by the position vector on a sphere projected on to the x-y plane.

elevation:
type: float, optional, default: 35.0
argument path: run_op/task_options[ifermi]/property/plot_options/elevation

The zenith angle of the viewpoint in degrees, i.e. the angle subtended by the position vector and the z-axis.

When task is set to negf:

scf:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/scf
block_tridiagonal:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/block_tridiagonal
ele_T:
type: float | int
argument path: run_op/task_options[negf]/ele_T
unit:
type: str, optional, default: Hartree
argument path: run_op/task_options[negf]/unit
scf_options:
type: dict, optional, default: {}
argument path: run_op/task_options[negf]/scf_options

Depending on the value of mode, different sub args are accepted.

mode:
type: str (flag key), default: PDIIS
argument path: run_op/task_options[negf]/scf_options/mode
possible choices: PDIIS

When mode is set to PDIIS:

mixing_period:
type: int, optional, default: 3
argument path: run_op/task_options[negf]/scf_options[PDIIS]/mixing_period
step_size:
type: float | int, optional, default: 0.05
argument path: run_op/task_options[negf]/scf_options[PDIIS]/step_size
n_history:
type: int, optional, default: 6
argument path: run_op/task_options[negf]/scf_options[PDIIS]/n_history
abs_err:
type: float | int, optional, default: 1e-06
argument path: run_op/task_options[negf]/scf_options[PDIIS]/abs_err
rel_err:
type: float | int, optional, default: 0.0001
argument path: run_op/task_options[negf]/scf_options[PDIIS]/rel_err
max_iter:
type: int, optional, default: 100
argument path: run_op/task_options[negf]/scf_options[PDIIS]/max_iter
stru_options:
type: dict
argument path: run_op/task_options[negf]/stru_options
device:
type: dict
argument path: run_op/task_options[negf]/stru_options/device
id:
type: str
argument path: run_op/task_options[negf]/stru_options/device/id
sort:
type: bool, optional, default: True
argument path: run_op/task_options[negf]/stru_options/device/sort
lead_L:
type: dict
argument path: run_op/task_options[negf]/stru_options/lead_L
id:
type: str
argument path: run_op/task_options[negf]/stru_options/lead_L/id
voltage:
type: float | int
argument path: run_op/task_options[negf]/stru_options/lead_L/voltage
lead_R:
type: dict
argument path: run_op/task_options[negf]/stru_options/lead_R
id:
type: str
argument path: run_op/task_options[negf]/stru_options/lead_R/id
voltage:
type: float | int
argument path: run_op/task_options[negf]/stru_options/lead_R/voltage
kmesh:
type: list, optional, default: [1, 1, 1]
argument path: run_op/task_options[negf]/stru_options/kmesh
pbc:
type: list, optional, default: [False, False, False]
argument path: run_op/task_options[negf]/stru_options/pbc
gamma_center:
type: list | bool, optional, default: True
argument path: run_op/task_options[negf]/stru_options/gamma_center
time_reversal_symmetry:
type: list | bool, optional, default: True
argument path: run_op/task_options[negf]/stru_options/time_reversal_symmetry
poisson_options:
type: dict, optional, default: {}
argument path: run_op/task_options[negf]/poisson_options

Depending on the value of solver, different sub args are accepted.

solver:
type: str (flag key), default: fmm
argument path: run_op/task_options[negf]/poisson_options/solver
possible choices: fmm

When solver is set to fmm:

err:
type: float | int, optional, default: 1e-05
argument path: run_op/task_options[negf]/poisson_options[fmm]/err
sgf_solver:
type: str, optional, default: Sancho-Rubio
argument path: run_op/task_options[negf]/sgf_solver
espacing:
type: float | int
argument path: run_op/task_options[negf]/espacing
emin:
type: float | int
argument path: run_op/task_options[negf]/emin
emax:
type: float | int
argument path: run_op/task_options[negf]/emax
e_fermi:
type: float | int
argument path: run_op/task_options[negf]/e_fermi
density_options:
type: dict, optional, default: {}
argument path: run_op/task_options[negf]/density_options

Depending on the value of method, different sub args are accepted.

method:
type: str (flag key), default: Ozaki
argument path: run_op/task_options[negf]/density_options/method
possible choices: Ozaki

When method is set to Ozaki:

R:
type: float | int, optional, default: 1000000.0
argument path: run_op/task_options[negf]/density_options[Ozaki]/R
M_cut:
type: int, optional, default: 30
argument path: run_op/task_options[negf]/density_options[Ozaki]/M_cut
n_gauss:
type: int, optional, default: 10
argument path: run_op/task_options[negf]/density_options[Ozaki]/n_gauss
eta_lead:
type: float | int, optional, default: 1e-05
argument path: run_op/task_options[negf]/eta_lead
eta_device:
type: float | int, optional, default: 0.0
argument path: run_op/task_options[negf]/eta_device
out_dos:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_dos
out_tc:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_tc
out_density:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_density
out_potential:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_potential
out_current:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_current
out_current_nscf:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_current_nscf
out_ldos:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_ldos
out_lcurrent:
type: bool, optional, default: False
argument path: run_op/task_options[negf]/out_lcurrent

When task is set to tbtrans_negf:

scf:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/scf
block_tridiagonal:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/block_tridiagonal
ele_T:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/ele_T
unit:
type: str, optional, default: Hartree
argument path: run_op/task_options[tbtrans_negf]/unit
scf_options:
type: dict, optional, default: {}
argument path: run_op/task_options[tbtrans_negf]/scf_options

Depending on the value of mode, different sub args are accepted.

mode:
type: str (flag key), default: PDIIS
argument path: run_op/task_options[tbtrans_negf]/scf_options/mode
possible choices: PDIIS

When mode is set to PDIIS:

mixing_period:
type: int, optional, default: 3
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/mixing_period
step_size:
type: float | int, optional, default: 0.05
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/step_size
n_history:
type: int, optional, default: 6
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/n_history
abs_err:
type: float | int, optional, default: 1e-06
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/abs_err
rel_err:
type: float | int, optional, default: 0.0001
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/rel_err
max_iter:
type: int, optional, default: 100
argument path: run_op/task_options[tbtrans_negf]/scf_options[PDIIS]/max_iter
stru_options:
type: dict
argument path: run_op/task_options[tbtrans_negf]/stru_options
device:
type: dict
argument path: run_op/task_options[tbtrans_negf]/stru_options/device
id:
type: str
argument path: run_op/task_options[tbtrans_negf]/stru_options/device/id
sort:
type: bool, optional, default: True
argument path: run_op/task_options[tbtrans_negf]/stru_options/device/sort
lead_L:
type: dict
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_L
id:
type: str
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_L/id
voltage:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_L/voltage
lead_R:
type: dict
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_R
id:
type: str
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_R/id
voltage:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/stru_options/lead_R/voltage
kmesh:
type: list, optional, default: [1, 1, 1]
argument path: run_op/task_options[tbtrans_negf]/stru_options/kmesh
pbc:
type: list, optional, default: [False, False, False]
argument path: run_op/task_options[tbtrans_negf]/stru_options/pbc
gamma_center:
type: list | bool, optional, default: True
argument path: run_op/task_options[tbtrans_negf]/stru_options/gamma_center
time_reversal_symmetry:
type: list | bool, optional, default: True
argument path: run_op/task_options[tbtrans_negf]/stru_options/time_reversal_symmetry
poisson_options:
type: dict, optional, default: {}
argument path: run_op/task_options[tbtrans_negf]/poisson_options

Depending on the value of solver, different sub args are accepted.

solver:
type: str (flag key), default: fmm
argument path: run_op/task_options[tbtrans_negf]/poisson_options/solver
possible choices: fmm

When solver is set to fmm:

err:
type: float | int, optional, default: 1e-05
argument path: run_op/task_options[tbtrans_negf]/poisson_options[fmm]/err
sgf_solver:
type: str, optional, default: Sancho-Rubio
argument path: run_op/task_options[tbtrans_negf]/sgf_solver
espacing:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/espacing
emin:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/emin
emax:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/emax
e_fermi:
type: float | int
argument path: run_op/task_options[tbtrans_negf]/e_fermi
density_options:
type: dict, optional, default: {}
argument path: run_op/task_options[tbtrans_negf]/density_options

Depending on the value of method, different sub args are accepted.

method:
type: str (flag key), default: Ozaki
argument path: run_op/task_options[tbtrans_negf]/density_options/method
possible choices: Ozaki

When method is set to Ozaki:

R:
type: float | int, optional, default: 1000000.0
argument path: run_op/task_options[tbtrans_negf]/density_options[Ozaki]/R
M_cut:
type: int, optional, default: 30
argument path: run_op/task_options[tbtrans_negf]/density_options[Ozaki]/M_cut
n_gauss:
type: int, optional, default: 10
argument path: run_op/task_options[tbtrans_negf]/density_options[Ozaki]/n_gauss
eta_lead:
type: float | int, optional, default: 1e-05
argument path: run_op/task_options[tbtrans_negf]/eta_lead
eta_device:
type: float | int, optional, default: 0.0
argument path: run_op/task_options[tbtrans_negf]/eta_device
out_dos:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_dos
out_tc:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_tc
out_density:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_density
out_potential:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_potential
out_current:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_current
out_current_nscf:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_current_nscf
out_ldos:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_ldos
out_lcurrent:
type: bool, optional, default: False
argument path: run_op/task_options[tbtrans_negf]/out_lcurrent

When task is set to write_block:

structure:
type: str | NoneType, optional, default: None
argument path: run_op/structure

the structure to run the task

use_gui:
type: bool, optional, default: False
argument path: run_op/use_gui

To use the GUI or not

device:
type: str | NoneType, optional, default: None
argument path: run_op/device

The device to run the calculation, choose among cpu and cuda[:int], Default: None. default None means to use the device seeting in the model ckpt file.

dtype:
type: str | NoneType, optional, default: None
argument path: run_op/dtype
The digital number’s precison, choose among:
Default: None,
  • float32: indicating torch.float32

  • float64: indicating torch.float64

default None means to use the device seeting in the model ckpt file.

AtomicData_options:
type: dict
argument path: run_op/AtomicData_options
r_max:
type: dict | float | int
argument path: run_op/AtomicData_options/r_max

the cutoff value for bond considering in TB model.

er_max:
type: dict | float | int | NoneType, optional, default: None
argument path: run_op/AtomicData_options/er_max

The cutoff value for environment for each site for env correction model. should set for nnsk+env correction model.

oer_max:
type: dict | float | int | NoneType, optional, default: None
argument path: run_op/AtomicData_options/oer_max

The cutoff value for onsite environment for nnsk model, for now only need to set in strain and NRL mode.

pbc:
type: bool
argument path: run_op/AtomicData_options/pbc

The periodic condition for the structure, can bool or list of bool to specific x,y,z direction.