kpoint — A description of k-points for quantum Hamiltonians.
The kpoint element contains parameters defining control parameters for a kpoint.
Create a set of k-points for total energy or band struture calculations.
Optional, the type of kpoint. The valid values of the datatype attribute are
| auto | Default MP mesh is generated. |
| list | Use a set of the k-points and weights as listed. |
| band | The k-point set is determined by the start and end special k-points. |
Optional, the valid values of the condition attribute are
| half | Default. Use all the k-points excluding the duplicates related by the time-reversal symmetry, i.e., k=-k |
| reduced | The number of k-point is reduced by the symmetry of the crystalline system. |
| band | The k-point set is a simple list for band structure calculations. |
Optional, (none | distributed). If "distributed", the k-points can be distributed over mpi processors.
Optional, the number of k-points. The value of size should be provided if condition="list".
Optional, an external source for k-point data.
Optional, the type of an external source, if the extension is not sufficient to instruct an application what the source is.
The datatype attribute is an input instruction to the applications to generate a k-point set. Its value limits the valid state described by the condition.
The condition refines the property of the k-point set and reflects the state of the set in an application. It is not necessary as an input but the output document will contain the state of the k-point set appropriate for the simulation as used in the applications.
Example 4. Generation of MP mesh
This example shows how to use reduced 2x2x2 k-point mesh for quantum simulations.
<kpoint datatype="auto" condition="reduced">
<parameter name="grid"> 2 2 2 </parameter>
<parameter name="origin"> 0.5 0.5 0.5 </parameter>
</kpoint>
Example 5. A list of k-points and weights
This example shows how to use a list to set the k-points. This is a part of an output, root.es.kpt.xml generated by ohmms with the example to generate MP mesh.
<kpoint datatype="list" condition="reduced" size="2">
<attrib name="k">
2.5000000000e-01 0.0000000000e+00 0.0000000000e+00
2.5000000000e-01 5.0000000000e-01 0.0000000000e+00
</attrib>
<attrib name="weight">
2.5000000000e-01 7.5000000000e-01
</attrib>
</kpoint>
Example 6. A list of k-points and weights II
This example is equivalent to the example above but shows to use an attrib with name="k_and_w" which enables cut-and-paste from other common k-point input formats.
<kpoint datatype="list" condition="reduced" size="2">
<!-- k_and_w default conditoin="1": k1 k2 k3 w -->
<attrib name="k_and_w">
2.5000000000e-01 0.0000000000e+00 0.0000000000e+00 0.25
2.5000000000e-01 5.0000000000e-01 0.0000000000e+00 0.75
</attrib>
</kpoint>
Example 7. How to set up k-points for a band structure calculation
This example shows how to tell ohmms to generate k-points for a band structure calculation for a fcc crystalline system. The outcome of the input below will be a band structure from gamma-X-L-gamma-K and the sizes are used to pick the points between the end points.
<kpoint datatype="band"> <sk name="gamma" size="0"> 0.0 0.0 0.0 </sk> <sk name="X-cubic" size="10"> 0.0 0.5 0.5 </sk> <sk name="L" size="10"> 0.0 0.5 0.5 </sk> <sk name="gamma" size="10"> 0.0 0.0 0.0 </sk> <sk name="K" size="10"> 0.375 0.375 0.75 </sk> </kpoint>