calc_current

static ThomasFermi.calc_current(physics, G, dist, energy_matrix, approximate_charges, p_WKB, is_short_circuit)

Calculates the current running through the wire, from the Markov graph.

Parameters:
  • physics (PhysicsParameters) – The physical device parameters.

  • G (networkx.DiGraph) – A graph with tuple[int, …] nodes representing possible charge configurations. This graph is a Markov graph where edges represent the transition rates between possible configurations.

  • dist (ndarray[float]) – An array with length equal to len(G) representing the steady-state of the Markov graph.

  • energy_matrix (ndarray[float]) – A 2D array with shape (num_islands, num_islands) giving the energy matrix (in meV) of the capacitance model.

  • approximate_charges (ndarray[float]) – An array with length equal to the number of islands, where each entry of the array is the integral of n(x) over the corresponding island.

  • p_WKB (ndarray[float]) – An array with length equal to the number of barriers, where each entry is the transition rate across the corresponding barrier.

  • is_short_circuit (bool) – True if n is above the cutoff threshold everywhere along the x-axis, False otherwise.

Returns:

The current running through the wire, defined to be the sum over all tunneling events of: (rate at which the tunneling event occurs) * (probability of initial node, given by dist) * (change in number of charges in the left sink). A positive value indicates charges traveling from left to right.

Return type:

float