radtools.TRI_variation#

radtools.TRI_variation(k_alpha: float, k_beta: float, k_gamma: float, eps: float)[source]#

Four variations of the TRI lattice.

Conditions \(k_{\alpha} \ne 90^{\circ}\) and \(k_{\beta} \ne 90^{\circ}\) are assumed.

\(\text{TRI}_{1a} k_{\alpha} > 90^{\circ}, k_{\beta} > 90^{\circ}, k_{\gamma} > 90^{\circ}, k_{\gamma} = \min(k_{\alpha}, k_{\beta}, k_{\gamma})\)

\(\text{TRI}_{1b} k_{\alpha} < 90^{\circ}, k_{\beta} < 90^{\circ}, k_{\gamma} < 90^{\circ}, k_{\gamma} = \max(k_{\alpha}, k_{\beta}, k_{\gamma})\)

\(\text{TRI}_{2a} k_{\alpha} > 90^{\circ}, k_{\beta} > 90^{\circ}, k_{\gamma} = 90^{\circ}\)

\(\text{TRI}_{2b} k_{\alpha} < 90^{\circ}, k_{\beta} < 90^{\circ}, k_{\gamma} = 90^{\circ}\)

Parameters:
k_alphafloat

Angle between reciprocal vectors \(b_2\) and \(b_3\). In degrees.

k_betafloat

Angle between reciprocal vectors \(b_1\) and \(b_3\). In degrees.

k_gammafloat

Angle between reciprocal vectors \(b_1\) and \(b_2\). In degrees.

epsfloat

Tolerance for numerical comparison.

Returns:
variationstr

Variation of the lattice. Either "TRI1a", "TRI1b", "TRI2a" or "TRI2b".

Raises:
ValueError

If \(k_{\alpha} == 90^{\circ}\) or \(k_{\beta} == 90^{\circ}\) with given tolerance eps.