| 
    STARS-H
    
   Software for Testing Accuracy, Reliability and  Scalability of Hierarchical computations 
   | 
 
Non-nested block low-rank matrix. More...
#include <starsh.h>
Data Fields | |
| STARSH_blrf * | format | 
| Pointer to block low-rank format.  | |
| int * | far_rank | 
| Rank of each far-field block.  | |
| Array ** | far_U | 
| Low rank factor of each far-field block.  More... | |
| Array ** | far_V | 
| Low rank factor of each far-field block.  More... | |
| int | onfly | 
Equal to 1 to store dense blocks, 0 to compute it on demand.  | |
| Array ** | near_D | 
| Array of pointers to dense near-field blocks.  | |
| void * | alloc_U | 
Pointer to memory buffer, holding all far_U.  | |
| void * | alloc_V | 
Pointer to memory buffer, holding all far_V.  | |
| void * | alloc_D | 
Pointer to memory buffer, holding all near_D.  | |
| char | alloc_type | 
| Type of memory allocation.  More... | |
| size_t | nbytes | 
| Total size of block low-rank matrix, including auxiliary buffers.  | |
| size_t | data_nbytes | 
| Size of low-rank factors and dense blocks in block low-rank matrix.  | |
Non-nested block low-rank matrix.
Stores approximation or dense form of each admissible blocks.Division into blocks is defined by corresponding block low-rank format.
| char starsh_blrm::alloc_type | 
Type of memory allocation.
Equal to 1 if allocating 3 big buffers U_alloc, V_alloc and D_alloc; 2 if allocating many small buffers for each far_U, far_V and near_D. 
| Array** starsh_blrm::far_U | 
Low rank factor of each far-field block.
Multiplication of far_U[i] by transposed far_V[i] is an approximation of i-th far-field block. 
| Array** starsh_blrm::far_V | 
Low rank factor of each far-field block.
Multiplication of far_U[i] by transposed far_V[i] is an approximation of i-th far-field block.