SEP Solver Library  1.0
 All Classes Namespaces Files Functions Variables Typedefs Macros
Public Member Functions | List of all members
SEP::inCoreFloat Class Reference

#include <inCoreFloat.h>

Inheritance diagram for SEP::inCoreFloat:
SEP::Space SEP::Writeable SEP::inCoreFloat1D SEP::inCoreFloat2D SEP::inCoreFloat3D SEP::inCoreFloat4D SEP::inCoreFloat5D SEP::inCoreFloat6D SEP::inCoreFloat7D

Public Member Functions

 inCoreFloat ()
 
virtual void linearCombo (float a, dataContainer *x, float b, dataContainer *y) const
 
virtual double innerProd (dataContainer *x, dataContainer *y) const
 
virtual void addInv (dataContainer *x) const
 
virtual void addInv (dataContainer *x, dataContainer *xNeg) const
 
virtual void scale (float a, dataContainer *x) const
 
virtual void scale (float a, dataContainer *x, dataContainer *ax) const
 
virtual void zeroElement (dataContainer *x) const
 
virtual void random (dataContainer *x) const
 
virtual void print_it ()
 
virtual ~inCoreFloat ()
 
void set_n123 (long long n)
 
long long get_n123 ()
 
void push_back_n (long long i)
 
std::vector< long long > get_ns () const
 
long long get_n (int iax) const
 
- Public Member Functions inherited from SEP::Space
 Space ()
 
virtual ~Space ()
 
virtual dataContainerbuildDataContainer () const
 
boost::shared_ptr< int > get_key () const
 
virtual void set_key (const boost::shared_ptr< int > &k)
 
virtual bool isCompatible (dataContainer *otherContainer) const =0
 
virtual bool isCompatible (Space *otherSpace, bool makeSame=false) const =0
 
virtual bool operator== (const Space &otherSpace) const
 

Detailed Description

Definition at line 12 of file inCoreFloat.h.

Constructor & Destructor Documentation

SEP::inCoreFloat::inCoreFloat ( )
inline

Definition at line 15 of file inCoreFloat.h.

virtual SEP::inCoreFloat::~inCoreFloat ( )
inlinevirtual

Definition at line 26 of file inCoreFloat.h.

Member Function Documentation

void SEP::inCoreFloat::addInv ( dataContainer x) const
virtual

Sets x = -x, the additive inverse (uses openmp and vectorization)

Implements SEP::Space.

Definition at line 42 of file inCoreFloat.cpp.

void SEP::inCoreFloat::addInv ( dataContainer x,
dataContainer xNeg 
) const
virtual

Calculates xneg = -x (using openmp and vectorization)

Implements SEP::Space.

Definition at line 67 of file inCoreFloat.cpp.

long long SEP::inCoreFloat::get_n ( int  iax) const
inline

Definition at line 37 of file inCoreFloat.h.

long long SEP::inCoreFloat::get_n123 ( )
inlinevirtual

Implements SEP::Space.

Definition at line 30 of file inCoreFloat.h.

std::vector<long long> SEP::inCoreFloat::get_ns ( ) const
inline

Definition at line 32 of file inCoreFloat.h.

double SEP::inCoreFloat::innerProd ( dataContainer x,
dataContainer y 
) const
virtual

Calculates the inner product of x and y as a double (uses openmp, vectorization, and smaller sub-sums to increase accuracy).

Implements SEP::Space.

Definition at line 199 of file inCoreFloat.cpp.

void SEP::inCoreFloat::linearCombo ( float  a,
dataContainer x,
float  b,
dataContainer y 
) const
virtual

Calculate x = ax + by. Note that this can use vectorization/openmp.

Implements SEP::Space.

Definition at line 8 of file inCoreFloat.cpp.

virtual void SEP::inCoreFloat::print_it ( )
inlinevirtual

Reimplemented from SEP::Space.

Reimplemented in SEP::inCoreFloat1D.

Definition at line 25 of file inCoreFloat.h.

void SEP::inCoreFloat::push_back_n ( long long  i)
inline

Definition at line 31 of file inCoreFloat.h.

void SEP::inCoreFloat::random ( dataContainer x) const
virtual

Fills x with random data selected from a uniform distribution between -0.5 and 0.5 (uses openmp and vectorization)

Implements SEP::Space.

Definition at line 174 of file inCoreFloat.cpp.

void SEP::inCoreFloat::scale ( float  a,
dataContainer x 
) const
virtual

Calculates x = ax (using openmp and vectorization)

Implements SEP::Space.

Definition at line 123 of file inCoreFloat.cpp.

void SEP::inCoreFloat::scale ( float  a,
dataContainer x,
dataContainer ax 
) const
virtual

Calculates y = ax (uses openmp and vectorization)

Implements SEP::Space.

Definition at line 95 of file inCoreFloat.cpp.

void SEP::inCoreFloat::set_n123 ( long long  n)
inline

Definition at line 29 of file inCoreFloat.h.

void SEP::inCoreFloat::zeroElement ( dataContainer x) const
virtual

Fills in x with all zero data of the right dimensions (uses openmp and vectorization)

Implements SEP::Space.

Definition at line 148 of file inCoreFloat.cpp.


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