10#ifndef THYRA_DEFAULT_MULTI_VECTOR_PRODUCT_VECTOR_SPACE_DECL_HPP 
   11#define THYRA_DEFAULT_MULTI_VECTOR_PRODUCT_VECTOR_SPACE_DECL_HPP 
   13#include "Thyra_ProductVectorSpaceBase.hpp"  
   14#include "Thyra_DefaultProductVectorSpace.hpp"  
   15#include "Thyra_VectorSpaceDefaultBase.hpp" 
  182  void assertInitialized() 
const;
 
 
  191template<
class Scalar>
 
  204template<
class Scalar>
 
  213    multiVectorProductVectorSpace<Scalar>();
 
  214  multiVecProdVecSpace->initialize(space,numColumns);
 
  215  return multiVecProdVecSpace;
 
 
  223template<
class Scalar>
 
  228  return defaultProdVecSpc_;
 
 
  232template<
class Scalar>
 
Standard concrete implementation of a product vector space that creates product vectors fromed implic...
 
RCP< const DefaultProductVectorSpace< Scalar > > getDefaultProductVectorSpace() const
 
RCP< const VectorSpaceBase< Scalar > > clone() const
Clones the object as promised.
 
DefaultMultiVectorProductVectorSpace()
Construct to an uninitialized state.
 
RCP< MultiVectorBase< Scalar > > createMembers(int numMembers) const
Returns a DefaultColumnwiseMultiVector object.
 
RCP< const VectorSpaceFactoryBase< Scalar > > smallVecSpcFcty() const
Returns getBlock(0)->smallVecSpcFcty().
 
void initialize(const RCP< const VectorSpaceBase< Scalar > > &space, const int numColumns)
Initialize with a list of constituent vector spaces.
 
bool isCompatible(const VectorSpaceBase< Scalar > &vecSpc) const
 
std::string description() const
Prints just the name DefaultMultiVectorProductVectorSpace along with the overall dimension and the nu...
 
void scalarProdsImpl(const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, const ArrayView< Scalar > &scalarProds) const
Returns the sum of the scalar products of each of the columns of the constituent multi-vectors.
 
RCP< VectorBase< Scalar > > createMember() const
Returns a DefaultMultiVectorProductVector object.
 
bool hasInCoreView(const Range1D &rng, const EViewType viewType, const EStrideType strideType) const
Returns true if all of the constituent vector spaces return true.
 
Scalar scalarProd(const VectorBase< Scalar > &x, const VectorBase< Scalar > &y) const
Returns the sum of the scalar products of the constituent vectors.
 
void uninitialize(RCP< const VectorSpaceBase< Scalar > > *space=0, int *numColumns=0)
Uninitialize.
 
void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Prints the details about the constituent vector space.
 
RCP< const VectorSpaceBase< Scalar > > getBlock(const int k) const
 
RCP< DefaultMultiVectorProductVectorSpace< Scalar > > multiVectorProductVectorSpace()
Nonmember constructor function.
 
RCP< DefaultMultiVectorProductVectorSpace< Scalar > > multiVectorProductVectorSpace(const RCP< const VectorSpaceBase< Scalar > > &space, const int numColumns)
Nonmember constructor function.
 
Interface for a collection of column vectors called a multi-vector.
 
Abstract interface for finite-dimensional dense vectors.
 
Abstract interface for objects that represent a space for vectors.
 
void scalarProds(const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, const ArrayView< Scalar > &scalarProds_out) const
Return the scalar product of each column in two multi-vectors in the vector space.
 
Node VectorSpaceBase subclass that provides default implementations for many functions using a defaul...
 
#define TEUCHOS_TEST_FOR_EXCEPT(throw_exception_test)
 
EStrideType
Determine if data is unit stride or non-unit stride.
 
EViewType
Determines if a view is a direct view of data or a detached copy of data.
 
Teuchos::Ordinal Ordinal
Type for the dimension of a vector space. `*.
 
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)