PhysicsParameters

class qdflow.physics.simulation.PhysicsParameters(x=<factory>, V=None, q=-1, gates=<factory>, effective_peak_matrix=None, K_mat=None, K_0=5, sigma=60, g0_dx_K_plus_1_inv=None, mu=0.5, V_L=-0.01, V_R=0.01, g_0=0.0065, beta=100, kT=0.01, c_k=1.2, sensors=<factory>, screening_length=100, WKB_coef=0.01, barrier_current=1, short_circuit_current=10000000000.0, v_F=30000000000000.0, dot_regions=None)

Bases: object

Set of physical parameters of a quantum dot nanowire.

Parameters:
  • x (ndarray[float]) – A 1D array containing the x-values (in nm) used in the simulation. These values should be evenly spaced, e.g., use x = np.linspace(x_min, x_max, num_points).

  • V (ndarray[float] or None) – A 1D array with length len(x), containing the total potential \(V(x)\) (in mV) due to the gates. If absent, it will be automatically calculated.

  • q (float) – The charge of a particle: -1 for electrons, +1 for holes.

  • gates (list[GateParameters]) – List of GateParameters defining the relevant parameters for each the gates.

  • effective_peak_matrix (ndarray[float] or None) – The correction matrix used to inlcude effects of charge induced on gates from other gates. If absent, it will be automatically calculated.

  • K_mat (ndarray[float] or None) – A 2D array, with shape (len(x), len(x)), where K_mat[i, j] gives the value of the Coulomb interaction (in meV) between two particles at points x[i] and x[j]. If absent, it will be automatically calculated.

  • K_0 (float) – The electron-electron Coulomb interaction strength (in meV * nm) used to calculate the effect of electrons on the sensors and to calculate K_mat if it is not specified.

  • sigma (float) – A softening parameter (in nm) for the el-el Coulomb interaction used to avoid divergence when \(x_1 = x_2\). sigma should be on the scale of the width of the nanowire. If K_mat is specified, sigma will not be used.

  • g0_dx_K_plus_1_inv (ndarray[float] or None) – Inverse of (g_0 * delta_x * K_mat + identity). If absent, it will be automatically calculated.

  • mu (float) – The Fermi level (in meV), assumed to be equal for both leads.

  • V_L (float) – The voltage (in mV) applied to left lead.

  • V_R (float) – The voltage (in mV) applied to right lead.

  • g_0 (float) – Coefficient of the density of states (in 1/(meV*nm) for 2D), see Eq. (1) of J. Zwolak et al. PLoS ONE 13(10): e0205844..

  • beta (float) –

    The inverse temperature \(\frac{1}{k_B T}\) (in 1/meV) used for calculating n(x), where \(k_B\) is the Boltzmann constant. See Eq. (1) of J. Zwolak et al. PLoS ONE 13(10): e0205844..

  • kT (float) – The temperature \({k_B T}\) (in meV) used in the transport calculations, where \(k_B\) is the Boltzmann constant.

  • c_k (float) –

    Coefficient (in meV*nm) that determines the kenetic energy of the Fermi sea on each island. See Eq. (5) of J. Zwolak et al. PLoS ONE 13(10): e0205844..

  • sensors (ndarray[float]) – An array with shape (n_sensors, 3) listing the positions (x, y, z) (in nm) of the charge sensors, where x is the direction parallel to the nanowire, and y is the direction parallel to the gates.

  • screening_length (float) – The screening length (in nm) for the Coulomb interaction between the sensor and the particles in the nanowire.

  • WKB_coef (float) – Coefficient (with units \(\frac{1}{nm\sqrt{meV}}\)) which goes in the exponent while calculating the WKB probability, setting the strength of WKB tunneling. WKB_coef should be equal to \(\sqrt{2m}{\hbar}\), where \(m\) is the effective mass of a particle, and :math`hbar` is the reduced Planck’s constant.

  • barrier_current (float) – An arbitrary low current set to the device when in barrier mode.

  • short_circuit_current (float) – An arbitrary high current value given to the device when in open / short circuit mode.

  • v_F (float) – The fermi velocity (in nm/s).

  • dot_regions (ndarray[float] | None) – An array with shape (n_dots, 2), where dot_regions[i,0] < x < dot_regions[i,1] defines the region used to determine the state of dot i. If absent, automatically calculated assuming an alternating pattern of barrier and plunger gates.

__init__(x=<factory>, V=None, q=-1, gates=<factory>, effective_peak_matrix=None, K_mat=None, K_0=5, sigma=60, g0_dx_K_plus_1_inv=None, mu=0.5, V_L=-0.01, V_R=0.01, g_0=0.0065, beta=100, kT=0.01, c_k=1.2, sensors=<factory>, screening_length=100, WKB_coef=0.01, barrier_current=1, short_circuit_current=10000000000.0, v_F=30000000000000.0, dot_regions=None)

Methods

copy()

Creates a deep copy of a PhysicsParameters object.

from_dict(d)

Creates a new PhysicsParameters object from a dict of values.

to_dict()

Converts the PhysicsParameters object to a dict.