QuantumATK Forum
QuantumATK => General Questions and Answers => Topic started by: fangyongxinxi on January 14, 2013, 03:10
-
Hello,
I want to get the lattcie parameters of the B2 phase of TiNi alloys (BCC structure, with Ti(0, 0, 0), Ni(0.5,0.5,0.5)), other peoples' works show that the lattice constant is 3.009-3.012 Angstrom,
( Ref: 1. http://www.nature.com/nmat/journal/v2/n5/pdf/nmat884.pdf 2. http://prb.aps.org/pdf/PRB/v79/i2/e020202 )
I redo the structure relax by VASP, almost get the same lattice constant.
My problem is: when I relax the structure with ATK with different input parameters (such as SZP, DZP, spin-polarized), get the lattice constant is:2.59-2.64 Angstrom. It seems the error is big.
Could you help me about this question? Thanks.
my input file for atk is :
# -------------------------------------------------------------
# Bulk configuration
# -------------------------------------------------------------
# Set up lattice
vector_a = [3.009, 0.0, 0.0]*Angstrom
vector_b = [0.0, 3.009, 0.0]*Angstrom
vector_c = [0.0, 0.0, 3.009]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)
# Define elements
elements = [Titanium, Nickel]
# Define coordinates
fractional_coordinates = [[ 0, 0, 0 ],
[ 0.5, 0.5, 0.5 ]]
# Set up configuration
bulk_configuration = BulkConfiguration(
bravais_lattice=lattice,
elements=elements,
fractional_coordinates=fractional_coordinates
)
# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
#----------------------------------------
# Basis Set
#----------------------------------------
basis_set = [
GGABasis.Titanium_SingleZetaPolarized,
GGABasis.Nickel_SingleZetaPolarized,
]
#----------------------------------------
# Exchange-Correlation
#----------------------------------------
exchange_correlation = SGGA.BLYP
numerical_accuracy_parameters = NumericalAccuracyParameters(
k_point_sampling=(10, 10, 12),
)
calculator = LCAOCalculator(
basis_set=basis_set,
exchange_correlation=exchange_correlation,
numerical_accuracy_parameters=numerical_accuracy_parameters,
)
bulk_configuration.setCalculator(calculator)
nlprint(bulk_configuration)
bulk_configuration.update()
nlsave('tini_unit_opt.nc', bulk_configuration)
bulk_configuration = OptimizeGeometry(
bulk_configuration,
max_forces=0.02*eV/Ang,
max_stress=0.02*eV/Ang**3,
max_steps=200,
max_step_length=0.5*Ang,
trajectory_filename=None,
optimizer_method=QuasiNewton(),
)
nlsave('tini_unit_opt.nc', bulk_configuration)
nlprint(bulk_configuration)
-
Your script file is wrong, because you have mentioned that TiNi is a bcc structure and you define a simple cubic lattice for it. You should modify the lattice vectors for TiNi as the following format:
v1 = a * (-1/2, 1/2, 1/2),
v2= a * ( 1/2, -1/2, 1/2),
v3 = a * (1/2, 1/2, -1/2).
If you persist the use a simple cubic lattice for TiNi, more atoms rather than 2 atoms in the unit cell should be given.
-
Your script file is wrong, because you have mentioned that TiNi is a bcc structure and you define a simple cubic lattice for it. You should modify the lattice vectors for TiNi as the following format:
v1 = a * (-1/2, 1/2, 1/2),
v2= a * ( 1/2, -1/2, 1/2),
v3 = a * (1/2, 1/2, -1/2).
If you persist the use a simple cubic lattice for TiNi, more atoms rather than 2 atoms in the unit cell should be given.
Thanks for your reply, but I can not agree with you.
Though I build a simple cubic unit-cell, I put the 2 atoms in the right position.
( the same thing , I can build a simple cubic, and put 4 atoms in right position, and get FCC structure)
the model, I think, is no problem, the question is it OK to use ATK to optmize the TiNi structure ?
Looking forward to your reply.
Thanks again.
-
Yes, that's correct, B2 has a simple cubic cell.
Both article mention a very (very!) high k-point sampling, so that is worth looking into. Moreover, I would not do a geometry/strain optimization for such a case, since it's hard to know what the proper stopping criterion is for the stress. I would just compute the total energy for 10 value of the lattice constant a, and fit a parabola to the values.
Also, if you are looking for good accuracy, don't choose a smallish basis set, use DoubleZetaPolarized at least.
Why BLYP? The articles use LDA and PBE, try to stick with the more standard functionals.
-
Hello,
I want to get the lattcie parameters of the B2 phase of TiNi alloys (BCC structure, with Ti(0, 0, 0), Ni(0.5,0.5,0.5)), other peoples' works show t
Your information is misleading.
Have you first checked the lattice constants of bulk Ni (bcc) and Ti (hcp)?