|
NumericAL
A header-only C++20 lexer built on REAL
|
One block of divide_and_conquer's tree: its rows [0, n) of the diagonal d its parent reads, the diagonal and subdiagonal it is solved on (its own copies scaled by a power of two, or d and the parent's), and its diagonal block of the eigenvector matrix, q, rows ldq apart.
More...
#include <decomposition.hpp>
Public Attributes | |
| double * | d {} |
| The diagonal its parent reads, the eigenvalues once solved. | |
| double * | work_d {} |
| The diagonal it is solved on. | |
| const double * | work_e {} |
| The subdiagonal it is solved on. | |
| std::size_t | n {} |
| Its order. | |
| double * | q {} |
| Its diagonal block of the eigenvectors. | |
| std::size_t | ldq {} |
The distance between the rows of q. | |
| int | exponent {0} |
| The power of two it is scaled down by. | |
| buffer< double > | scaled_d {} |
The scaled diagonal, when exponent is not 0. | |
| buffer< double > | scaled_e {} |
The scaled subdiagonal, when exponent is not 0. | |
| std::size_t | n1 {0} |
| The order of its first half; 0 for a leaf. | |
| double | beta {} |
| The coupling of its halves. | |
| std::size_t | depth {} |
| Its distance from the root. | |
| std::size_t | first {} |
| Its first half. | |
| std::size_t | second {} |
| Its second half. | |
One block of divide_and_conquer's tree: its rows [0, n) of the diagonal d its parent reads, the diagonal and subdiagonal it is solved on (its own copies scaled by a power of two, or d and the parent's), and its diagonal block of the eigenvector matrix, q, rows ldq apart.
Definition at line 3986 of file decomposition.hpp.
| double numerical::detail::divide_node::beta {} |
The coupling of its halves.
Definition at line 3998 of file decomposition.hpp.
| double* numerical::detail::divide_node::d {} |
The diagonal its parent reads, the eigenvalues once solved.
Definition at line 3988 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::depth {} |
Its distance from the root.
Definition at line 3999 of file decomposition.hpp.
| int numerical::detail::divide_node::exponent {0} |
The power of two it is scaled down by.
Definition at line 3994 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::first {} |
Its first half.
Definition at line 4000 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::ldq {} |
The distance between the rows of q.
Definition at line 3993 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::n {} |
Its order.
Definition at line 3991 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::n1 {0} |
The order of its first half; 0 for a leaf.
Definition at line 3997 of file decomposition.hpp.
| double* numerical::detail::divide_node::q {} |
Its diagonal block of the eigenvectors.
Definition at line 3992 of file decomposition.hpp.
The scaled diagonal, when exponent is not 0.
Definition at line 3995 of file decomposition.hpp.
The scaled subdiagonal, when exponent is not 0.
Definition at line 3996 of file decomposition.hpp.
| std::size_t numerical::detail::divide_node::second {} |
Its second half.
Definition at line 4001 of file decomposition.hpp.
| double* numerical::detail::divide_node::work_d {} |
The diagonal it is solved on.
Definition at line 3989 of file decomposition.hpp.
The subdiagonal it is solved on.
Definition at line 3990 of file decomposition.hpp.