Tetragonal (TET)#
Pearson symbol: tP
Constructor: TET()
It is defined by two parameters: \(a\) and \(c\) with primitive and conventional lattice:
Cell standardization#
Length of third lattice vector has to be different from the first two. If this condition is not satisfied, then the lattice is transformed to the standard form:
- If \(\vert\boldsymbol{a}_1\vert = \vert\boldsymbol{a}_3\vert \ne \vert\boldsymbol{a}_2\vert\)
- \[(\boldsymbol{a}_1, \boldsymbol{a}_2, \boldsymbol{a}_3) \rightarrow (\boldsymbol{a}_3, \boldsymbol{a}_1, \boldsymbol{a}_2)\]
- If \(\vert\boldsymbol{a}_2\vert = \vert\boldsymbol{a}_3\vert \ne \vert\boldsymbol{a}_1\vert\)
- \[(\boldsymbol{a}_1, \boldsymbol{a}_2, \boldsymbol{a}_3) \rightarrow (\boldsymbol{a}_2, \boldsymbol{a}_3, \boldsymbol{a}_1)\]
K-path#
\(\mathrm{\Gamma-X-M-\Gamma-Z-R-A-Z\vert X-R\vert M-A}\)
Point |
\(\times\boldsymbol{b}_1\) |
\(\times\boldsymbol{b}_2\) |
\(\times\boldsymbol{b}_3\) |
|---|---|---|---|
\(\mathrm{\Gamma}\) |
\(0\) |
\(0\) |
\(0\) |
\(\mathrm{A}\) |
\(1/2\) |
\(1/2\) |
\(1/2\) |
\(\mathrm{M}\) |
\(1/2\) |
\(1/2\) |
\(0\) |
\(\mathrm{R}\) |
\(0\) |
\(1/2\) |
\(1/2\) |
\(\mathrm{X}\) |
\(0\) |
\(1/2\) |
\(0\) |
\(\mathrm{Z}\) |
\(0\) |
\(0\) |
\(1/2\) |
Variations#
There are no variations for tetragonal lattice.
One example is predefined: tet with \(a = \pi\) and \(c = 1.5\pi\)
Examples#
Brillouin zone and default kpath#
# RAD-tools - Sandbox (mainly condense matter plotting).
# Copyright (C) 2022-2024 Andrey Rybakov
#
# e-mail: anry@uv.es, web: rad-tools.org
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
import radtools as rad
l = rad.lattice_example("TET")
backend = rad.PlotlyBackend()
backend.plot(l, kind="brillouin-kpath")
# Save an image:
backend.save("tet_brillouin.png")
# Interactive plot:
backend.show()
Primitive and conventional cell#
# RAD-tools - Sandbox (mainly condense matter plotting).
# Copyright (C) 2022-2024 Andrey Rybakov
#
# e-mail: anry@uv.es, web: rad-tools.org
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
import radtools as rad
l = rad.lattice_example("TET")
backend = rad.PlotlyBackend()
backend.plot(l, kind="primitive")
# Save an image:
backend.save("tet_real.png")
# Interactive plot:
backend.show()
Wigner-Seitz cell#
# RAD-tools - Sandbox (mainly condense matter plotting).
# Copyright (C) 2022-2024 Andrey Rybakov
#
# e-mail: anry@uv.es, web: rad-tools.org
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
import radtools as rad
l = rad.lattice_example("TET")
backend = rad.PlotlyBackend()
backend.plot(l, kind="wigner-seitz")
# Save an image:
backend.save("tet_wigner-seitz.png")
# Interactive plot:
backend.show()
Edge cases#
If \(a = c\), then the lattice is Cubic (CUB).