Author Topic: Straining a Hexagonal Cell  (Read 4391 times)

0 Members and 1 Guest are viewing this topic.

Offline markmick

  • Heavy QuantumATK user
  • ***
  • Posts: 36
  • Country: us
  • Reputation: 0
    • View Profile
Straining a Hexagonal Cell
« on: April 15, 2016, 23:49 »
I'm applying (uniaxial) strain to a Hexagonal unit cell for transition metal dichalcognides.  To change the Unit Cell, I had to manually modify the POSCAR file (since it's no longer a true Hexagonal lattice).  I tried "Stretch Cell", but that retains the symmetry.

Is there a way of straining the unit cell using VNL, so the lattice is changed in POSCAR?

Also, Reciprocal Space changes with strain.  KPOINTS should be equally strained, the routes don't change.  Can VNL modify the KPOINTS file to reflect strain on K-Space?  Otherwise, I have to do it manually.

0.000000 0.000000 0.000000 ! G
0.000000 0.500000 0.000000 ! M

0.000000 0.500000 0.000000 ! M
0.333333 0.333333 0.000000 ! K

0.333333 0.333333 0.000000 ! K
0.000000 0.000000 0.000000 ! G

Thanks,
Mark

Offline Jess Wellendorff

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 933
  • Country: dk
  • Reputation: 29
    • View Profile
Re: Straining a Hexagonal Cell
« Reply #1 on: April 18, 2016, 08:36 »
I am not sure about the k-points, but it sounds like you need to transform the Hex unit cell to the more general "UnitCell". See the Bulk Tools --> Supercell plugin. However, in that case, the k-space symmetry points natively known by ATK is
{'A': array([ 0. ,  0.5,  0.5]),
 'B': array([ 0.5,  0. ,  0.5]),
 'C': array([ 0.5,  0.5,  0. ]),
 'G': array([ 0.,  0.,  0.]),
 'L': array([ 0.5,  0.5,  0.5]),
 'X': array([ 0.5,  0. ,  0. ]),
 'Y': array([ 0. ,  0.5,  0. ]),
 'Z': array([ 0. ,  0. ,  0.5])}

You can of course modify this list as needed.

Offline Petr Khomyakov

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1290
  • Country: dk
  • Reputation: 25
    • View Profile
Re: Straining a Hexagonal Cell
« Reply #2 on: April 29, 2016, 15:29 »
I did a test for a hexagonal lattice by straining a graphite lattice, using 'Stretch Cell', and then exported the strained graphite structure to POSCAR. It worked for me. The strained lattice vectors in POSCAR are exactly as they were in VNL for the unit cell stretched. The lattice symmetry retains only if one deforms the lattice unit cell in a very specific way, e.g., by applying hydrostatic stress.

I guess stretching of the lattice vectors does not allow applying an arbitrary deformation to the crystal structure. You may, however, re-define the lattice parameters explicitly in Bulk Tools -> Lattice Parameters to model any strain configuration of the crystal structure.   

Regarding the k-lines in KPOINTS, one may use the k-point coordinates (given in a Cartesian coordinate system) as defined for the Brilloiun zone (BZ) of the pristine lattice. This allows using the corresponding KPOINTS file for the pristine crystal structure, BUT the k-points are to be given in 'Cartesian', i.e., not in 'Direct'. I guess, at the end you want to see the effect of strain on the band energies at the symmetry k-points of the original, pristine material.

Otherwise, one has to specify the k-lines in KPOINTS manually since the choice depends on what you actually want to get from the band stricture calculations of the strained material.