Macaulay2 Engine
Loading...
Searching...
No Matches
DetComputation Class Reference

Computation of minors of a matrix. More...

#include <det.hpp>

Inheritance diagram for DetComputation:
our_new_delete

Public Member Functions

 DetComputation (const Matrix *M, int p, bool do_exterior, int strategy)
 ~DetComputation ()
int step ()
int calc (int nsteps)
void clear ()
void discard ()
void set_next_minor (const int *rows, const int *cols)
Matrixdeterminants ()

Private Types

using ColRowIndices = std::pair<std::vector<int>, std::vector<int>>
using Subdeterminant
using MinorsSubCache
using MinorsCache = std::vector<MinorsSubCache, gc_allocator<MinorsSubCache>>

Private Member Functions

void get_minor (size_t *r, size_t *c, int p, ring_elem **D)
int make_dynamic_cache ()
bool get_pivot (ring_elem **D, size_t p, ring_elem &pivot, size_t &pivot_col)
ring_elem detmult (ring_elem f1, ring_elem g1, ring_elem f2, ring_elem g2, ring_elem d)
void gauss (ring_elem **D, size_t i, size_t r, size_t pivot_col, ring_elem lastpivot)
ring_elem calc_det (size_t *r, size_t *c, int p)
ring_elem bareiss_det ()

Private Attributes

const RingR
const MatrixM
const FreeModuleF
MatrixConstructor result
bool done
int p
bool do_exterior
int strategy
size_trow_set
size_tcol_set
int this_row
int this_col
ring_elem ** D
MinorsCache dynamic_cache
std::map< int, introw_lookup

Additional Inherited Members

Static Public Member Functions inherited from our_new_delete
static void * operator new (size_t size)
static void * operator new[] (size_t size)
static void operator delete (void *obj)
static void operator delete[] (void *obj)
static void * operator new (size_t size, void *existing_memory)
static void * operator new[] (size_t size, void *existing_memory)
static void operator delete (void *obj, void *existing_memory)
static void operator delete[] (void *obj, void *existing_memory)

Detailed Description

Computation of minors of a matrix.

Definition at line 54 of file det.hpp.


The documentation for this class was generated from the following files: