Transport input documentation

Compose a System to calculate from its pieces. Each piece could be provided as an object or a dictionary of parameters suitable for initializing that object.

Used to initialize class qimpy.transport.Transport.

YAML template:

ab-initio:                                          # Ab-initio material:
  file: [string]                                    # Name of HDF5 file to load materials data from.
  T: [float]                                        # Temperature.
  mu: 0.0                                           # Chemical potential in equilbrium.
  rotation: null                                    # 3 x 3 rotation matrix from material to simulation frame.
  orbital-zeeman: null                              # Whether to include L matrix elements in Zeeman coupling.
  observable-names: n                               # Control which observables will be output.
  relaxation-time:                                  # Relaxation-time approximation to scattering:
    tau-e: inf                                      # Conduction bands relaxation time.
    tau-h: inf                                      # Valance bands relaxation time.
    tau-s-e: inf                                    # Electron spin relaxation time.
    tau-s-h: inf                                    # Hole spin relaxation time.
    tau-eh: inf                                     # Relaxation time of conduction-valance off diagonal terms.
    max-dmu: 0.001                                  # Maximum mu change in Newton-Rhapson method.
    tau-recomb: inf                                 # Recombination time.
    nv: 0                                           # Number of valance bands.
    eps: 1e-12                                      # Precision in the determination of mu_e and mu_h.
    only-diagonal: yes                              # Whether only diagonal terms change.

  lindblad:                                         # Ab-initio lindblad scattering:
    scale-factor: 1.0                               # Overall scale factor for scattering rate.

  light:                                            # Light-matter interaction (coherent / Lindblad):
    coherent: yes                                   # Switch between coherent and Lindbladian implementations.
    gauge: velocity                                 # Switch between 'velocity' or 'length' gauge.
    A0: null                                        # Vector potential amplitude.
    E0: null                                        # Electric-field amplitude.
    omega: 0.0                                      # Angular frequency / photon energy of the light.
    t0: 0.0                                         # Center of Gaussian pulse, used only if sigma is non-zero.
    sigma: 0.0                                      # Time width of Gaussian pulse, if non-zero.
    smearing: 0.001                                 # Width of Gaussian function to represent delta function.

  emField:                                          # Electromagnetic fields:
    grad-phi: (0.0, 0.0, 0.0)                       # Scalar potential.

  pulseB:                                           # Magnetic field pulses:
    B0: (0.0, 0.0, 0.0)                             # Magnetic field amplitude vector.
    g: 0.0                                          # Gyromagnetic ratio magnitude to calculate mean Larmor frequency.
    g-flip: 0.0                                     # Gyromagnetic ratio magnitude to calculate flip time.
    t-starts: (0.0,)                                # Start times of oscillating magnetic field pulse.
    angles: (3.141592653589793,)                    # Corresponding target spin rotation angles (in radians).

fermi-circle:                                       # Fermi-circle material for graphene/2DEG:
  kF: [float]                                       # Fermi wave vector in atomic units.
  vF: [float]                                       # Fermi velocity in atomic units.
  N-theta: [int]                                    # Number of k along Fermi circle.
  r-c: inf                                          # Cyclotron radius, corresponding to external magnetic field
  theta0: 0.0                                       # Angle of first k-point.
  specularity: 1.0                                  # Specularity of reflection at all surfaces.

single-band:                                        # Single-band model material for energy-resolved charge transport:
  lattice:                                          # Bulk lattice vectors / unit cell definition:
    system: null                                    # Specify crystal system and geometry parameters.
    vectors: null                                   # Three lattice vectors, each with (x, y, z) in bohrs.
    Rbasis: null                                    # Real-space basis vectors in columns.
    scale: 1.0                                      # Scale factor for lattice vectors.
    compute-stress: no                              # Whether to compute and report stress.
    movable: no                                     # Whether to move lattice during geometry relaxation / dynamics.
    move-scale: (1.0, 1.0, 1.0)                     # Scale factor for moving each lattice vector.
    periodic: (yes, yes, yes)                       # Whether each lattice direction is periodic.
    center: (0.0, 0.0, 0.0)                         # Center of cell for periodicity break along non-periodic directions.

  kmesh: [list of int, or <class 'numpy.ndarray'>]  # Uniform k-point mesh from which to select relevant k-points.
  v: 0.0                                            # Velocity specifying a linear dispersion model.
  m: 0.0                                            # Effective mass specifying a quadratic dispersion model.
  mu: [float]                                       # Backround/reference chemical potential of initial state
  T: [float]                                        # Backround/reference temperature of initial state
  nT-below: 5                                       # Include states with energies starting at this many T below mu.
  nT-above: 5                                       # Include states with energies up to this many T above mu.
  scatter:                                          # Explicit state-dependent scattering kernel:
    dE: [float]                                     # Energy conservation width.
    epsilon-bg: [float]                             # Background dielectric constant.
    lambda-D: [float]                               # Debye screening length of electrons.
    block-size: 128                                 # Number of real-space points to calculate together.
    conserve-energy: yes                            # Whether to enforce exact energy conservation of e-e scattering.

patch-set:                                          # Geometry consisting of bicubic patches:
  svg-file: [string]                                # Path to an SVG file containing the input geometry
  svg-unit: 1.0                                     # Real length corresponding to one unit of distance in SVG.
  grid-spacing: [float]                             # Maximum spacing between grid points anywhere in the geometry.
  contacts: [string or typing.Optional[dict]]       # Dictionary of contact names to parameters.
  grid-size-max: 0                                  # Maximum grid points per dimension after quad subdvision.
  save-rho: no                                      # Whether to write the full density matrices to the checkpoint file.
  cent-diff-deriv: no                               # Whether to use the simple central-difference derivative operator.

parameter-grid:                                     # Virtual geometry of disconnected points for batched dynamics:
  shape: [int]                                      # Dimensions of parameter grid (always 2D).
  dimension1: null                                  # Parameter names and values to sweep along dimension 1.
  dimension2: null                                  # Parameter names and values to sweep along dimension 2.
  save-rho: no                                      # Whether to write the full density matrices to the checkpoint file.

time-evolution:                                     # Time integration options:
  dt: 0.0                                           # Time step for evolution.
  dt-save: 0.0                                      # Time interval at which to save results.
  t-max: 0.0                                        # Stop evolution at this time.
  n-collate: 0                                      # Number of save-steps to collect into each checkpoint file.
  integrator: RK2                                   # Integrator for time-stepping: RK2 or RK4.
  steady-state: null                                # Steady state options.

checkpoint: null                                    # Checkpoint file to read at start-up.
checkpoint-out: null                                # Checkpoint file pattern to write at regular intervals.

Component classes:

Parameters:

ab-initio

Type: AbInitio, Default: null

Ab-initio material. Exactly one supported material type must be specified.

fermi-circle

Type: FermiCircle, Default: null

Fermi-circle material for graphene/2DEG. Exactly one supported material type must be specified.

single-band

Type: SingleBand, Default: null

Single-band model material for energy-resolved charge transport. Exactly one supported material type must be specified.

patch-set

Type: PatchSet, Default: null

Geometry consisting of bicubic patches. Exactly one supported geometry type must be specified.

parameter-grid

Type: ParameterGrid, Default: null

Virtual geometry of disconnected points for batched dynamics. Exactly one supported geometry type must be specified.

time-evolution

Type: TimeEvolution, Default: null

Time integration options.

checkpoint

Type: string or null, Default: null

Checkpoint file to read at start-up.

checkpoint-out

Type: string or null, Default: null

Checkpoint file pattern to write at regular intervals. The pattern should contain an integer format eg. ‘{:04d}’ that can be replaced with the frame number.