class kwant.solvers.common.SMatrix(data, lead_info, out_leads, in_leads)

Bases: kwant.solvers.common.BlockResult

A scattering matrix.

Transport properties can be easily accessed using the transmission method (don’t be fooled by the name, it can also compute reflection, which is just transmission from one lead back into the same lead.)

SMatrix however also allows for a more direct access to the result: The data stored in SMatrix is a scattering matrix with respect to lead modes and these modes themselves. The details of this data can be directly accessed through the instance variables data and lead_info. Subblocks of data corresponding to particular leads are conveniently obtained by submatrix.


data (NumPy array) a matrix containing all the requested matrix elements of the scattering matrix.
lead_info (list of data) a list containing kwant.physics.PropagatingModes for each lead.
out_leads, in_leads (list of integers) indices of the leads where current is extracted (out) or injected (in). Only those are listed for which SMatrix contains the calculated result.


block_coords(lead_out, lead_in)

Return slices corresponding to the block from lead_in to lead_out.


Return a slice with the columns in the block corresponding to lead_in.


Return a slice with the rows in the block corresponding to lead_out.

submatrix(lead_out, lead_in)

Return the matrix elements from lead_in to lead_out.

transmission(lead_out, lead_in)

Return transmission from lead_in to lead_out.

Previous topic


Next topic


This Page