By using the examples for Li chain optimization in ATKmanual, I tried to calculate lattice constant of Titanium linear chain.
Lattice constant must be around 2.3 Angstrom for linear chains but my result is around 0.7 Angstrom. (see attachment)
What is wrong in this simple calculation ?
my script:
# Set the basis set to be SZ
basis_set = basisSetParameters(type=DoubleZetaDoublePolarized)
# Define the density grid cut-off
electron_density_params = electronDensityParameters(
mesh_cutoff=150*Rydberg
)
# Define the k-point sampling
bz_integration = brillouinZoneIntegrationParameters( (1,1,100) )
# Define the DFT method
dft_method = KohnShamMethod(
basis_set_parameters=basis_set,
brillouin_zone_integration_parameters=bz_integration,
electron_density_parameters=electron_density_params
)
# Open file for storing the results
f = open('lattice.dat', 'w')
# Loop over lattice constants
import numpy
for c in numpy.arange(0.5,5.5,0.1):
# Create the unit cell for 1D chain
unit_cell = [[10.0, 0.0, 0.0],
[ 0.0, 10.0, 0.0],
[ 0.0, 0.0, c ]]*Angstrom
# Create the atomic configuration
ti_chain = PeriodicAtomConfiguration(unit_cell,[Titanium],
[ (0.0, 0.0, 0.0)*Angstrom ] )
# Execute the self-consistent calculation
dft_calculation = dft_method.apply(ti_chain)
# Calculate the system energy
energy = calculateTotalEnergy(dft_calculation)
# Write lattice constant and energy to file and screen
s = '%.4f %.10f \n' % (c, energy.inUnitsOf(Rydberg))
f.write(s)
print s,
# Close file and exit
f.close()