Package lib :: Package frame_order :: Module iso_cone_torsionless
[hide private]
[frames] | no frames]

Module iso_cone_torsionless

source code

Module for the handling of Frame Order.

Functions [hide private]
 
compile_1st_matrix_iso_cone_torsionless(matrix, R_eigen, cone_theta)
Generate the 1st degree Frame Order matrix for the torsionless isotropic cone.
source code
 
compile_2nd_matrix_iso_cone_torsionless(matrix, Rx2_eigen, cone_theta)
Generate the rotated 2nd degree Frame Order matrix for the torsionless isotropic cone.
source code
 
pcs_numeric_qr_int_iso_cone_torsionless(points=None, max_points=None, theta_max=None, c=None, full_in_ref_frame=None, r_pivot_atom=None, r_pivot_atom_rev=None, r_ln_pivot=None, A=None, R_eigen=None, RT_eigen=None, Ri_prime=None, pcs_theta=None, pcs_theta_err=None, missing_pcs=None)
Determine the averaged PCS value via numerical integration.
source code
float
pcs_numeric_quad_int_iso_cone_torsionless(theta_max=None, c=None, r_pivot_atom=None, r_ln_pivot=None, A=None, R_eigen=None, RT_eigen=None, Ri_prime=None)
Determine the averaged PCS value via numerical integration.
source code
Variables [hide private]
  __package__ = 'lib.frame_order'

Imports: cos, pi, divide, dot, eye, float64, multiply, swapaxes, tensordot, dblquad, pcs_pivot_motion_torsionless_qr_int, pcs_pivot_motion_torsionless_quad_int, rotate_daeg


Function Details [hide private]

compile_1st_matrix_iso_cone_torsionless(matrix, R_eigen, cone_theta)

source code 

Generate the 1st degree Frame Order matrix for the torsionless isotropic cone.

Parameters:
  • matrix (numpy 3D, rank-2 array) - The Frame Order matrix, 1st degree to be populated.
  • R_eigen (numpy 3D, rank-2 array) - The eigenframe rotation matrix.
  • cone_theta (float) - The cone opening angle.

compile_2nd_matrix_iso_cone_torsionless(matrix, Rx2_eigen, cone_theta)

source code 

Generate the rotated 2nd degree Frame Order matrix for the torsionless isotropic cone.

The cone axis is assumed to be parallel to the z-axis in the eigenframe.

Parameters:
  • matrix (numpy 9D, rank-2 array) - The Frame Order matrix, 2nd degree to be populated.
  • Rx2_eigen (numpy 9D, rank-2 array) - The Kronecker product of the eigenframe rotation matrix with itself.
  • cone_theta (float) - The cone opening angle.

pcs_numeric_qr_int_iso_cone_torsionless(points=None, max_points=None, theta_max=None, c=None, full_in_ref_frame=None, r_pivot_atom=None, r_pivot_atom_rev=None, r_ln_pivot=None, A=None, R_eigen=None, RT_eigen=None, Ri_prime=None, pcs_theta=None, pcs_theta_err=None, missing_pcs=None)

source code 

Determine the averaged PCS value via numerical integration.

Parameters:
  • points (numpy rank-2, 3D array) - The Sobol points in the torsion-tilt angle space.
  • max_points (int) - The maximum number of Sobol' points to use. Once this number is reached, the loop over the Sobol' torsion-tilt angles is terminated.
  • theta_max (float) - The half cone angle.
  • c (numpy rank-1 array) - The PCS constant (without the interatomic distance and in Angstrom units).
  • full_in_ref_frame (numpy rank-1 array) - An array of flags specifying if the tensor in the reference frame is the full or reduced tensor.
  • r_pivot_atom (numpy rank-2, 3D array) - The pivot point to atom vector.
  • r_pivot_atom_rev (numpy rank-2, 3D array) - The reversed pivot point to atom vector.
  • r_ln_pivot (numpy rank-2, 3D array) - The lanthanide position to pivot point vector.
  • A (numpy rank-2, 3D array) - The full alignment tensor of the non-moving domain.
  • R_eigen (numpy rank-2, 3D array) - The eigenframe rotation matrix.
  • RT_eigen (numpy rank-2, 3D array) - The transpose of the eigenframe rotation matrix (for faster calculations).
  • Ri_prime (numpy rank-3, array of 3D arrays) - The array of pre-calculated rotation matrices for the in-frame torsionless isotropic cone motion, used to calculate the PCS for each state i in the numerical integration.
  • pcs_theta (numpy rank-2 array) - The storage structure for the back-calculated PCS values.
  • pcs_theta_err (numpy rank-2 array) - The storage structure for the back-calculated PCS errors.
  • missing_pcs (numpy rank-2 array) - A structure used to indicate which PCS values are missing.

pcs_numeric_quad_int_iso_cone_torsionless(theta_max=None, c=None, r_pivot_atom=None, r_ln_pivot=None, A=None, R_eigen=None, RT_eigen=None, Ri_prime=None)

source code 

Determine the averaged PCS value via numerical integration.

Parameters:
  • theta_max (float) - The half cone angle.
  • c (float) - The PCS constant (without the interatomic distance and in Angstrom units).
  • r_pivot_atom (numpy rank-1, 3D array) - The pivot point to atom vector.
  • r_ln_pivot (numpy rank-1, 3D array) - The lanthanide position to pivot point vector.
  • A (numpy rank-2, 3D array) - The full alignment tensor of the non-moving domain.
  • R_eigen (numpy rank-2, 3D array) - The eigenframe rotation matrix.
  • RT_eigen (numpy rank-2, 3D array) - The transpose of the eigenframe rotation matrix (for faster calculations).
  • Ri_prime (numpy rank-2, 3D array) - The empty rotation matrix for the in-frame isotropic cone motion, used to calculate the PCS for each state i in the numerical integration.
Returns: float
The averaged PCS value.