Dear Amrita,

If you want to plot a given propagating mode, you just need to calculate your wave function and then choose your mode as follows:

calculate the wave function
wf=kwant.wave_function(sys, energy)

choose the modes coming from a given lead (lead 0 for example):
wf_0=wf(0)

and then choose for example the mode number 5:

my_mode=wf_0[5]

you can plot it as follows: kwant.plotter.map(sys,my_mode)

I hope this helps.

On Tue, Mar 13, 2018 at 11:07 PM, amrita chapagain wrote:
Hi all,

Thank you for addressing my previous query.

I am trying to plot first few incoming transverse waveguide modes on lead 0. I am wondering whether it is possible to plot all incoming modes on Lead 0. kwant.physics.modes gives me PropagatingModes and Stabilized modes but I want to select just first few modes of incoming flux.
Here is the sample code of my system

```import kwant
import numpy as np
from matplotlib import pyplot
from numpy import sqrt
from math import *

#======================================================================
# Define the shape -------------------
#======================================================================
def shape(pos):
x, y = pos
return (np.abs(2.0*x)<=L)&(np.abs(y)<W1/2.0)
#----------------------------------------------------------------------

a      = 1;
t      = 1;
E0L    = 0*t
L      = 10;  # Length of the
W1   = 30;  # Width on the left

# Define geometry
--------------------------------------------------------------------------
sys0 = kwant.Builder()
lat  = kwant.lattice.square(a)
#--------------------------------------------------------------------------------------------
# Define onsite energies and couplings
----------------------------------------------------
sys0[lat.shape(wv_shape,(0,0))] = E0     # To make all sites the same
sys0[lat.neighbors()]           = t
#--------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------
left_lead[(lat(0,y) for y in range(int(-W1/2+1),int(W1/2)))] = E0L
#--------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------
right_lead[(lat(0,y) for y in range(int(-W1/2+1),int(W1/2)))] = E0L
#---------------------------------------------------------------------------------------------
sys = sys0.finalized()
kwant.plot(sys);

def plot_conductance(sys, energies):

data = []
for energy in energies:
smatrix = kwant.smatrix(sys, energy)
data.append(smatrix.transmission(2, 0)+smatrix.transmission(1,2) )

pyplot.figure()
pyplot.plot(energies, data)
pyplot.xlabel("energy [t]")
pyplot.ylabel("conductance [e^2/h]")
pyplot.show()
energies=[-3+i*0.02 for i in range(100)]
plot_conductance(sys,energies)```

--