
SavePath = ''
str_file = 'device_bias_'

# Load DeviceConfiguration list
device_configuration_list = []
import glob, os
for filename in glob.glob(SavePath+str_file+'*.hdf5'):
    if processIsMaster():
        print('file read: ',filename)
    device_configuration_list.append(nlread(filename, DeviceConfiguration)[-1])

bias_list = []
for i in range(0,len(device_configuration_list)):
    V_L = device_configuration_list[i].calculator().electrodeVoltages()[0].inUnitsOf(Volt)
    V_R = device_configuration_list[i].calculator().electrodeVoltages()[1].inUnitsOf(Volt)
    bias = V_L - V_R
    bias_list.append(bias)

    # Generate and save transmission spectrum for each device_configuration:
    transmission_spectrum = TransmissionSpectrum(
        configuration=device_configuration_list[i],
        energies=numpy.linspace(-1.3,1.3,701)*eV,
        kpoints=MonkhorstPackGrid(21,21),
        self_energy_calculator=RecursionSelfEnergy(),
        energy_zero_parameter=AverageFermiLevel,
        infinitesimal=1e-06*eV,
        )
    nlsave(SavePath+"biasscan_TS_std.hdf5", transmission_spectrum)

nlsave(SavePath+"biaslist_std.hdf5", numpy.array([bias_list]))
