QuantumATK Forum

QuantumATK => General Questions and Answers => Topic started by: fangyongxinxi on December 13, 2012, 15:17

Title: The mesh-cutoff set in ATK-SE
Post by: fangyongxinxi on December 13, 2012, 15:17
Hello,

I use atk(2012.08.r1)-slater-koster method to do a calculation. When I test the mesh cut-off, got strange result: the system has the same Energy for all the mesh cut-off number. Is that right ?

Thanks.


the input file:

# -------------------------------------------------------------
# Bulk configuration
# -------------------------------------------------------------

# Set up lattice
vector_a = [4.9649236399, 2.22044604925e-16, 0.0]*Angstrom
vector_b = [-1.65497454663, 4.68097489846, 2.17714856586e-15]*Angstrom
vector_c = [-1.65497454663, -2.34048744923, 4.05384317654]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)

# Define elements
elements = [Iron, Iron, Iron, Iron, Iron, Iron, Iron, Iron]

# Define coordinates
fractional_coordinates = [[  0.00000000e+00,   0.00000000e+00,   0.00000000e+00],
                          [ -2.77555756e-17,   0.00000000e+00,   5.00000000e-01],
                          [  5.09977520e-17,   5.00000000e-01,  -4.93038066e-32],
                          [ -5.55111512e-17,   5.00000000e-01,   5.00000000e-01],
                          [  5.00000000e-01,   3.08148791e-33,   2.73691106e-48],
                          [  5.00000000e-01,  -2.77555756e-17,   5.00000000e-01],
                          [  5.00000000e-01,   5.00000000e-01,  -4.93038066e-32],
                          [  5.00000000e-01,   5.00000000e-01,   5.00000000e-01]]

# Set up configuration
bulk_configuration = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates
    )

# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
#----------------------------------------
# Basis Set
#----------------------------------------
basis_set = DFTBDirectory("dftb/mio/")

#----------------------------------------
# Pair Potentials
#----------------------------------------
pair_potentials = DFTBDirectory("dftb/mio/")

for mcut in (2,4,6,8,10,20,40,50):

    numerical_accuracy_parameters = NumericalAccuracyParameters(
        grid_mesh_cutoff=mcut*Hartree,
        k_point_sampling=(10, 10, 10),
        )

    iteration_control_parameters = IterationControlParameters()

    calculator = SlaterKosterCalculator(
        basis_set=basis_set,
        pair_potentials=pair_potentials,
        numerical_accuracy_parameters=numerical_accuracy_parameters,
        iteration_control_parameters=iteration_control_parameters,
        )

    bulk_configuration.setCalculator(calculator)
    nlprint(bulk_configuration)
    bulk_configuration.update()
    nlsave('mesh_test.nc', bulk_configuration)

# -------------------------------------------------------------
# Total energy
# -------------------------------------------------------------
    total_energy = TotalEnergy(bulk_configuration)
    nlsave('mesh_test.nc', total_energy)
    nlprint(total_energy)
Title: Re: The mesh-cutoff set in ATK-SE
Post by: Nordland on December 13, 2012, 18:12
It is because your system is the same element sitting in equivalent positions, and hence there is no charge transfer
between the atoms, and therefore the solution to the Poisson equation is zero regardless of the mesh-cutoff.

Change a single element to something else, and see the effect.
Title: Re: The mesh-cutoff set in ATK-SE
Post by: fangyongxinxi on December 14, 2012, 06:38
Thanks for your answer.
Title: Re: The mesh-cutoff set in ATK-SE
Post by: ams_nanolab on December 14, 2012, 09:29
When I increase the mesh cut-off, I usually get a larger number of bands ( a wider range from -ve to + ve energies) is that okay?
Title: Re: The mesh-cutoff set in ATK-SE
Post by: Anders Blom on December 17, 2012, 13:16
In ATK you will not get this, no. With a plane wave code maybe, but not with ATK.