| MyraMath
    | 
Computes a plane rotation, either single sided (rotate1) or double sided (rotate2). More...
Go to the source code of this file.
| Classes | |
| class | myra::Matrix22< Number > | 
| Matrix type with fixed size 2x2.  More... | |
| class | myra::gesvd2_output< Number > | 
| Return type of gesvd2()  More... | |
| Functions | |
| std::pair< NumberS, NumberS > | myra::rotate1 (NumberS a0, NumberS a1) | 
| Single sided rotation. Returns a (c,s) pair such that [c s; -s' c] * [a0; a1] = [x 0], and x is real. | |
| std::pair< NumberD, NumberD > | myra::rotate1 (NumberD a0, NumberD a1) | 
| Single sided rotation. Returns a (c,s) pair such that [c s; -s' c] * [a0; a1] = [x 0], and x is real. | |
| std::pair< NumberC, NumberC > | myra::rotate1 (NumberC a0, NumberC a1) | 
| Single sided rotation. Returns a (c,s) pair such that [c s; -s' c] * [a0; a1] = [x 0], and x is real. | |
| std::pair< NumberZ, NumberZ > | myra::rotate1 (NumberZ a0, NumberZ a1) | 
| Single sided rotation. Returns a (c,s) pair such that [c s; -s' c] * [a0; a1] = [x 0], and x is real. | |
| Matrix22< NumberS > | myra::make_Matrix22 (NumberS a0, NumberS a1) | 
| Populates a Matrix22 rotation from a (c,s) pair returned by rotate1(), returns [c s; -s' c]. | |
| Matrix22< NumberD > | myra::make_Matrix22 (NumberD a0, NumberD a1) | 
| Populates a Matrix22 rotation from a (c,s) pair returned by rotate1(), returns [c s; -s' c]. | |
| Matrix22< NumberC > | myra::make_Matrix22 (NumberC a0, NumberC a1) | 
| Populates a Matrix22 rotation from a (c,s) pair returned by rotate1(), returns [c s; -s' c]. | |
| Matrix22< NumberZ > | myra::make_Matrix22 (NumberZ a0, NumberZ a1) | 
| Populates a Matrix22 rotation from a (c,s) pair returned by rotate1(), returns [c s; -s' c]. | |
| Matrix22< NumberS > | myra::sy_rotate2 (NumberS a00, NumberS a11, NumberS a10) | 
| Double sided rotation, symmetric case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10; a10 a11] * Rt = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberD > | myra::sy_rotate2 (NumberD a00, NumberD a11, NumberD a10) | 
| Double sided rotation, symmetric case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10; a10 a11] * Rt = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberC > | myra::sy_rotate2 (NumberC a00, NumberC a11, NumberC a10) | 
| Double sided rotation, symmetric case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10; a10 a11] * Rt = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberZ > | myra::sy_rotate2 (NumberZ a00, NumberZ a11, NumberZ a10) | 
| Double sided rotation, symmetric case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10; a10 a11] * Rt = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberS > | myra::sy_rotate2 (const Matrix22< NumberS > &A) | 
| Double sided symmetric rotations that work directly on a symmetric Matrix22 input. | |
| Matrix22< NumberD > | myra::sy_rotate2 (const Matrix22< NumberD > &A) | 
| Double sided symmetric rotations that work directly on a symmetric Matrix22 input. | |
| Matrix22< NumberC > | myra::sy_rotate2 (const Matrix22< NumberC > &A) | 
| Double sided symmetric rotations that work directly on a symmetric Matrix22 input. | |
| Matrix22< NumberZ > | myra::sy_rotate2 (const Matrix22< NumberZ > &A) | 
| Double sided symmetric rotations that work directly on a symmetric Matrix22 input. | |
| Matrix22< NumberC > | myra::he_rotate2 (NumberS a00, NumberS a11, NumberC a10) | 
| Double sided rotation, hermitian case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10'; a10 a11] * Rh = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberZ > | myra::he_rotate2 (NumberD a00, NumberD a11, NumberZ a10) | 
| Double sided rotation, hermitian case. Returns unitary plane rotation R (R*Rh = Rh*R = I) such that R * [a00 a10'; a10 a11] * Rh = [x 0; 0 y] is diagonal and real. | |
| Matrix22< NumberC > | myra::he_rotate2 (const Matrix22< NumberC > &A) | 
| Double sided hermitian rotations that work directly on a hermitian Matrix22 input. | |
| Matrix22< NumberZ > | myra::he_rotate2 (const Matrix22< NumberZ > &A) | 
| Double sided hermitian rotations that work directly on a hermitian Matrix22 input. | |
| gesvd2_output< NumberS > | myra::gesvd2 (const Matrix22< NumberS > &A) | 
| Computes the svd of a Matrix22, A = U*S*V. The outputs U and V are orthogonal (U'U = VV' = I), while S is real and diagonal. | |
| gesvd2_output< NumberD > | myra::gesvd2 (const Matrix22< NumberD > &A) | 
| Computes the svd of a Matrix22, A = U*S*V. The outputs U and V are orthogonal (U'U = VV' = I), while S is real and diagonal. | |
| gesvd2_output< NumberC > | myra::gesvd2 (const Matrix22< NumberC > &A) | 
| Computes the svd of a Matrix22, A = U*S*V. The outputs U and V are orthogonal (U'U = VV' = I), while S is real and diagonal. | |
| gesvd2_output< NumberZ > | myra::gesvd2 (const Matrix22< NumberZ > &A) | 
| Computes the svd of a Matrix22, A = U*S*V. The outputs U and V are orthogonal (U'U = VV' = I), while S is real and diagonal. | |
Computes a plane rotation, either single sided (rotate1) or double sided (rotate2).
 1.8.13
 1.8.13