linbox
DenseContainer< Field, Vector, RandIter > Class Template Reference

Limited doc so far. More...

#include <dense-container.h>

+ Inheritance diagram for DenseContainer< Field, Vector, RandIter >:

Public Types

typedef BlackboxContainerBase< Field, Vector >::Blackbox Blackbox
 
typedef Field::Element Element
 

Public Member Functions

 DenseContainer ()
 
 DenseContainer (const Blackbox *D, typename Field::Element *U, size_t ldu, const Field &F, const Vector &u0)
 
 DenseContainer (const Blackbox *D, typename Field::Element *U, size_t ldu, const Field &F, const Vector &u0, const Vector &v0)
 
 DenseContainer (const Blackbox *D, typename Field::Element *U, size_t ldu, const Field &F, RandIter &g)
 
const_iterator begin ()
 
const_iterator end ()
 
long size () const
 
const FieldgetField () const
 
const Fieldfield () const
 
VectorgetBB () const
 

Protected Member Functions

void _launch ()
 Launches a process to do the computation of the next sequence value: $v^T A^{i+1} u$.
 
void _wait ()
 If a separate process is computing the next value of $v^T A^{i+1} u$, _wait() blocks until the value is ready.
 
const Elementgetvalue ()
 
Elementinit (const Vector1 &uu, const Vector2 &vv)
 Initializers.
 
Elementinit (RandIter &g)
 Random Left vectors, Zero Right vector.
 
Elementinit (const Vector &uu)
 User Left vectors, Zero Right vector.
 

Protected Attributes

Vector w
 
Field::Element * Up
 
size_t _ldu
 
const Field_field
 Members.
 
VectorDomain< Field_VD
 
const Vector_BB
 
long _size
 
long casenumber
 
BlasVector< Fieldu
 
BlasVector< Fieldv
 
Element _value
 

Detailed Description

template<class Field, class Vector, class RandIter = typename Field::RandIter>
class LinBox::DenseContainer< Field, Vector, RandIter >

Limited doc so far.

Member Typedef Documentation

◆ Blackbox

template<class Field, class Vector, class RandIter = typename Field::RandIter>
typedef BlackboxContainerBase<Field,Vector>::Blackbox Blackbox

◆ Element

typedef Field::Element Element
inherited

Constructor & Destructor Documentation

◆ DenseContainer() [1/4]

template<class Field, class Vector, class RandIter = typename Field::RandIter>
DenseContainer ( )
inline

◆ DenseContainer() [2/4]

template<class Field, class Vector, class RandIter = typename Field::RandIter>
DenseContainer ( const Blackbox * D,
typename Field::Element * U,
size_t ldu,
const Field & F,
const Vector & u0 )
inline

◆ DenseContainer() [3/4]

template<class Field, class Vector, class RandIter = typename Field::RandIter>
DenseContainer ( const Blackbox * D,
typename Field::Element * U,
size_t ldu,
const Field & F,
const Vector & u0,
const Vector & v0 )
inline

◆ DenseContainer() [4/4]

template<class Field, class Vector, class RandIter = typename Field::RandIter>
DenseContainer ( const Blackbox * D,
typename Field::Element * U,
size_t ldu,
const Field & F,
RandIter & g )
inline

Member Function Documentation

◆ _launch()

template<class Field, class Vector, class RandIter = typename Field::RandIter>
void _launch ( )
inlineprotectedvirtual

Launches a process to do the computation of the next sequence value: $v^T A^{i+1} u$.

...or just does it.

Implements BlackboxContainerBase< Field, Vector >.

◆ _wait()

template<class Field, class Vector, class RandIter = typename Field::RandIter>
void _wait ( )
inlineprotectedvirtual

If a separate process is computing the next value of $v^T A^{i+1} u$, _wait() blocks until the value is ready.

Implements BlackboxContainerBase< Field, Vector >.

◆ begin()

const_iterator begin ( )
inlineinherited

◆ end()

const_iterator end ( )
inlineinherited

◆ size()

long size ( ) const
inlineinherited

◆ getField()

const Field & getField ( ) const
inlineinherited

◆ field()

const Field & field ( ) const
inlineinherited

◆ getBB()

Vector * getBB ( ) const
inlineinherited

◆ getvalue()

const Element & getvalue ( )
inlineprotectedinherited

◆ init() [1/3]

Element & init ( const Vector1 & uu,
const Vector2 & vv )
inlineprotectedinherited

Initializers.

User Left and Right vectors

◆ init() [2/3]

Element & init ( RandIter & g)
inlineprotectedinherited

Random Left vectors, Zero Right vector.

◆ init() [3/3]

Element & init ( const Vector & uu)
inlineprotectedinherited

User Left vectors, Zero Right vector.

Field Documentation

◆ w

template<class Field, class Vector, class RandIter = typename Field::RandIter>
Vector w
protected

◆ Up

template<class Field, class Vector, class RandIter = typename Field::RandIter>
Field::Element* Up
protected

◆ _ldu

template<class Field, class Vector, class RandIter = typename Field::RandIter>
size_t _ldu
protected

◆ _field

const Field* _field
protectedinherited

Members.

◆ _VD

VectorDomain<Field> _VD
protectedinherited

◆ _BB

const Vector* _BB
protectedinherited

◆ _size

long _size
protectedinherited

◆ casenumber

long casenumber
protectedinherited

◆ u

BlasVector<Field> u
protectedinherited

◆ v

BlasVector<Field> v
protectedinherited

◆ _value

Element _value
protectedinherited

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