#include <cctbx/uctbx.h>#include <scitbx/matrix/eigensystem.h>#include <scitbx/matrix/tensor_rank_2.h>#include <scitbx/array_family/tiny_algebra.h>#include <scitbx/type_holder.h>#include <cctbx/error.h>Go to the source code of this file.
Namespaces | |
| namespace | cctbx |
| namespace | cctbx::adptbx |
Classes | |
| struct | factor_u_cart_u_iso |
| Factorization into isotropic and remaining anisotropic contributions. More... | |
| struct | factor_u_star_u_iso |
| Factorization into isotropic and remaining anisotropic contributions. More... | |
| struct | factor_u_cif_u_iso |
| Factorization into isotropic and remaining anisotropic contributions. More... | |
| struct | factor_beta_u_iso |
| Factorization into isotropic and remaining anisotropic contributions. More... | |
| class | eigensystem |
| Group of associated eigenvectors and eigenvalues. More... | |
Functions | |
| void | throw_not_positive_definite () |
| double | u_as_b (double u_iso) |
| Converts isotropic displacement parameter U -> B. | |
| double | b_as_u (double b_iso) |
| Converts isotropic displacement parameter B -> U. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_as_b (sym_mat3< FloatType > const &u_aniso) |
| Converts anisotropic displacement parameters U -> B. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | b_as_u (sym_mat3< FloatType > const &b_aniso) |
| Converts anisotropic displacement parameters B -> U. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cif_as_u_star (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cif) |
| Converts anisotropic displacement parameters u_cif -> u_star. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_star_as_u_cif (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_star) |
| Converts anisotropic displacement parameters u_star -> u_cif. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cart_as_u_star (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cart) |
| Converts anisotropic displacement parameters u_cart -> u_star. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_star_as_u_cart (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_star) |
| Converts anisotropic displacement parameters u_star -> u_cart. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cart_as_u_cif (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cart) |
| Converts anisotropic displacement parameters u_cart -> u_cif. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cif_as_u_cart (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cif) |
| Converts anisotropic displacement parameters u_cif -> u_cart. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_star_as_beta (sym_mat3< FloatType > const &u_star) |
| Converts anisotropic displacement parameters u_star -> beta. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | beta_as_u_star (sym_mat3< FloatType > const &beta) |
| Converts anisotropic displacement parameters beta -> u_star. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cart_as_beta (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cart) |
| Converts anisotropic displacement parameters u_cart -> beta. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | beta_as_u_cart (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &beta) |
| Converts anisotropic displacement parameters beta -> u_cart. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_cif_as_beta (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cif) |
| Converts anisotropic displacement parameters u_cif -> beta. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | beta_as_u_cif (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &beta) |
| Converts anisotropic displacement parameters beta -> u_cif. | |
| template<typename FloatType> | |
| FloatType | u_cart_as_u_iso (sym_mat3< FloatType > const &u_cart) |
| Converts anisotropic displacement parameters u_cart -> u_iso. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_iso_as_u_cart (FloatType const &u_iso) |
| Converts u_iso -> anisotropic displacement parameters u_cart. | |
| template<typename FloatType> | |
| FloatType | u_star_as_u_iso (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_star) |
| Converts u_star -> u_iso. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_iso_as_u_star (uctbx::unit_cell const &unit_cell, FloatType const &u_iso) |
| Converts u_iso -> u_star. | |
| template<typename FloatType> | |
| FloatType | u_cif_as_u_iso (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &u_cif) |
| Converts u_cif -> u_iso. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_iso_as_u_cif (uctbx::unit_cell const &unit_cell, FloatType const &u_iso) |
| Converts u_iso -> u_cif. | |
| template<typename FloatType> | |
| FloatType | beta_as_u_iso (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &beta) |
| Converts beta -> u_iso. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | u_iso_as_beta (uctbx::unit_cell const &unit_cell, FloatType const &u_iso) |
| Converts u_iso -> beta. | |
| double | debye_waller_factor_exp (const char *u_type, double arg, double max_arg=50) |
| std::exp with upper limit for argument value. | |
| double | debye_waller_factor_b_iso (double stol_sq, double b_iso) |
| Isotropic Debye-Waller factor given (sin(theta)/lambda)^2 and b_iso. | |
| double | debye_waller_factor_u_iso (double stol_sq, double u_iso) |
| Isotropic Debye-Waller factor given (sin(theta)/lambda)^2 and u_iso. | |
| double | debye_waller_factor_b_iso (uctbx::unit_cell const &unit_cell, miller::index<> const &h, double b_iso) |
| Isotropic Debye-Waller factor given a Miller index and b_iso. | |
| double | debye_waller_factor_u_iso (uctbx::unit_cell const &unit_cell, miller::index<> const &h, double u_iso) |
| Isotropic Debye-Waller factor given a Miller index and u_iso. | |
| template<typename FloatType> | |
| FloatType | debye_waller_factor_u_star (miller::index<> const &h, sym_mat3< FloatType > const &u_star) |
| Anisotropic Debye-Waller factor given a Miller index and u_star. | |
| template<typename NumType> | |
| sym_mat3< NumType > | debye_waller_factor_u_star_gradient_coefficients (miller::index<> const &h, scitbx::type_holder< NumType > holder=scitbx::type_holder< NumType >()) |
| Coefficients for gradients of Debye-Waller factor w.r.t. u_star. | |
| template<typename NumType> | |
| af::shared< NumType > | debye_waller_factor_u_star_curvature_coefficients (miller::index<> const &h, scitbx::type_holder< NumType >) |
| Coefficients for curvatures of Debye-Waller factor w.r.t. u_star. | |
| template<typename FloatType> | |
| FloatType | debye_waller_factor_beta (miller::index<> const &h, sym_mat3< FloatType > const &beta) |
| Anisotropic Debye-Waller factor given a Miller index and beta. | |
| template<typename FloatType> | |
| FloatType | debye_waller_factor_u_cif (uctbx::unit_cell const &unit_cell, miller::index<> const &h, sym_mat3< FloatType > const &u_cif) |
| Anisotropic Debye-Waller factor given a Miller index and u_cif. | |
| template<typename FloatType> | |
| FloatType | debye_waller_factor_u_cart (uctbx::unit_cell const &unit_cell, miller::index<> const &h, sym_mat3< FloatType > const &u_cart) |
| Anisotropic Debye-Waller factor given a Miller index and u_cart. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | grad_u_star_as_u_cart (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &grad_u_star) |
| Transformation of gradients w.r.t. u_star to gradients w.r.t. u_cart. | |
| template<typename FloatType> | |
| af::shared< sym_mat3< FloatType > > | grad_u_star_as_u_cart (uctbx::unit_cell const &unit_cell, af::const_ref< sym_mat3< FloatType > > const &grad_u_star) |
| Transformation of gradients w.r.t. u_star to gradients w.r.t. u_cart. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | grad_u_cart_as_u_star (uctbx::unit_cell const &unit_cell, sym_mat3< FloatType > const &grad_u_cart) |
| Transformation of gradients w.r.t. u_cart to gradients w.r.t. u_star. | |
| template<typename FloatType> | |
| af::shared< sym_mat3< FloatType > > | grad_u_cart_as_u_star (uctbx::unit_cell const &unit_cell, af::const_ref< sym_mat3< FloatType > > const &grad_u_cart) |
| Transformation of gradients w.r.t. u_cart to gradients w.r.t. u_star. | |
| template<typename FloatType> | |
| vec3< FloatType > | eigenvalues (sym_mat3< FloatType > const &adp) |
| Determines the eigenvalues of the anisotropic displacement tensor. | |
| template<typename FloatType> | |
| bool | is_positive_definite (vec3< FloatType > const &adp_eigenvalues) |
| Tests if the anisotropic displacement tensor is positive definite, given adp_eigenvalues. | |
| template<typename FloatType> | |
| bool | is_positive_definite (vec3< FloatType > const &adp_eigenvalues, FloatType const &tolerance) |
| Tests if the anisotropic displacement tensor is positive definite, given adp_eigenvalues. | |
| template<typename FloatType> | |
| bool | is_positive_definite (sym_mat3< FloatType > const &adp) |
| Tests if the anisotropic displacement tensor is positive definite. | |
| template<typename FloatType> | |
| bool | is_positive_definite (sym_mat3< FloatType > const &adp, FloatType const &tolerance) |
| Tests if the anisotropic displacement tensor is positive definite. | |
| template<typename FloatType> | |
| af::shared< bool > | is_positive_definite (af::const_ref< sym_mat3< FloatType > > const &adp, FloatType const &tolerance) |
| True if adp is positive definite, else False. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | eigenvalue_filtering (sym_mat3< FloatType > const &u_cart, FloatType const &u_min=0, FloatType const &u_max=0) |
| Modifies u_cart such that all eigenvalues are >= u_min and <= u_max. | |
| template<typename FloatType> | |
| sym_mat3< FloatType > | c_u_c_transpose (mat3< FloatType > const &c, sym_mat3< FloatType > const &u) |
| Tensor transformation: c * u * c.transpose(). | |
1.5.6