Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - sulee

Pages: [1]
1
Dear Quantumwise,

I am trying to calculate current at fixed drain bias (1.8V) and changing gate bias from 0.0 V to 7.0 V.
And I wan to read Self-consistent calculation result from previous step whenever gate bias is changed.
So, I prepared input files.
But, it seems that the "zero drain bias calculation" is executed at every gate bias calculation step.

1. Please look at my input files, and please let me know what is wrong.
2. When I use LDA or GGA, I got follow message, I don't know the reason.
    The computed multigrid residual is greater than the required accuracy.
3. I am wondering my models are correct, size and thickness of metallic and dielectric regions.
4. My system has 51 k-points. So, when I use 72core system,  some cores are idle.
    How can I use all cores?

I would really appreciate if you can help us.

Sincerely yours,

Sang Uck Lee

Followings are gate bias calculation part.

#----------------------------------------
# FET Calculation
#----------------------------------------
kpoint_grid = MonkhorstPackGrid()

name ='A9_SE'

gate_voltage_list=numpy.linspace(0.0,7.0,15)*Volt
for gatev in gate_voltage_list:

    # Add metallic region                                                                                                                                                     
    metallic_region_0 = BoxRegion(
        gatev,
        xmin = 0.0*Angstrom, xmax = 23.0*Angstrom,
        ymin = 0.0*Angstrom, ymax = 1.0*Angstrom,
        zmin = 4.318*Angstrom, zmax = 38.861*Angstrom,
        )

    metallic_regions = [metallic_region_0]
    central_region.setMetallicRegions(metallic_regions)

    # Add dielectric region                                                                                                                                                                                                                                                                         
    dielectric_region_0 = BoxRegion(
        4.0,
        xmin = 0.0*Angstrom, xmax = 23.0*Angstrom,
        ymin = 1.0*Angstrom, ymax = 7.16*Angstrom,
        zmin = 4.318*Angstrom, zmax = 38.861*Angstrom,
        )

    dielectric_regions = [dielectric_region_0]
    central_region.setDielectricRegions(dielectric_regions)
   
    device_configuration = DeviceConfiguration(
        central_region,
        [left_electrode, right_electrode]
        )

    device_configuration.setCalculator(calculator)
    nlprint(device_configuration)
    device_configuration.update()
    nlsave(name+"G.nc", device_configuration)
   
    # -------------------------------------------------------------
    # IV Curve
    # -------------------------------------------------------------
    # Set new calculator with modified electrode voltages on the configuration                                                     \         

    # use the self consistent state of the old calculation as starting input.                                                      \         

    device_configuration.setCalculator(calculator(electrode_voltages=(0.9,-0.9)*Volt),
                                       initial_state=device_configuration)


    transmission_spectrum = TransmissionSpectrum(
        configuration=device_configuration,
        energies=numpy.linspace(-2,2,401)*eV,
        kpoints=kpoint_grid,
        energy_zero_parameter=AverageFermiLevel,
        infinitesimal=1e-06*eV,
        self_energy_calculator=RecursionSelfEnergy(),
        )
    i_all=transmission_spectrum.current()
    nlprint(i_all)
   
    device_configuration.update()

    nlsave(name+"_%g.nc" % gatev.inUnitsOf(Volt), device_configuration, object_id='dev'+str(gatev))
    nlsave(name+"_%g.nc" % gatev.inUnitsOf(Volt), transmission_spectrum.current(), object_id='current'+str(gatev))
    nlsave(name+"_%g.nc" % gatev.inUnitsOf(Volt), transmission_spectrum, object_id='trans'+str(gatev))

    nlsave(name+"G.nc", transmission_spectrum.current(), object_id='current'+str(gatev))
    nlsave(name+"G.nc", transmission_spectrum, object_id='trans'+str(gatev))
    nlprint(transmission_spectrum)
    nlprint(transmission_spectrum.current())

2
General Questions and Answers / Miniband Conduction
« on: February 7, 2018, 13:59 »
Is there some way to calculate miniband conduction of superlattice structure using ATK?

For example alternating AlAs and GaAs layers.


3
Thanks for your answer. I will try it.

4
Can I calculate the mobility of n-type and p-type semiconductor using Boltzmann transport equation?
https://docs.quantumwise.com/tutorials/mobility/mobility.html

And also, is it possible to calculate the Gate dependency of the mobility?

5
General Questions and Answers / NEB Calculation
« on: April 18, 2017, 11:02 »
Dear Sir/Madam,

I have tried to use NEB input generator.
I want to calculate oxygen diffusion energy barrier.
But, the generated images have so many ionic rearrangement, even though I expect only one oxygen movement.
Please find the attached files.

Please let me know how can I generate proper NEB image structures.

Best regards,

Sang Uck Lee

Pages: [1]