Thyra Namespace Reference


Classes

class  ModelEvaluator
 Pure abstract base interface for evaluating a stateless "model" that can be mapped into a number of different types of problems. More...
class  ModelEvaluatorBase
 Base subclass for ModelEvaluator that defines some basic types. More...
class  NonlinearSolverBuilderBase
 Abstract interface for an object that can create NonlinearSolverBase objects on demand. More...
class  NonlinearSolverBase
 Base class for all nonlinear equation solvers. More...
class  BlockedLinearOpWithSolveBase
 Base interface for linear operators with a solve that can be accessed as sub-blocks. More...
class  InverseLinearOpBase
 Base interface for <ttLinearOpBase objects that are implemented in terms of the solve function on a LinearOpWithSolveBase object. More...
class  LinearSolverBuilderBase
 Abstract interface for an object that can create LinearOpWithSolveFactoryBase objects on demand. More...
class  PhysicallyBlockedLinearOpWithSolveBase
 Base interface for linear operators with a solve that are composed out of individual LOB and LOWSB objects. More...
class  LinearOpSourceBase
 Base interface for objects that can return a linear operator. More...
class  LinearOpWithSolveBase
 Base class for all linear operators that can support a high-level solve operation. More...
class  LinearOpWithSolveFactoryBase
 Factory interface for creating LinearOpWithSolveBase objects from compatible LinearOpBase objects. More...
class  PreconditionerBase
 Simple interface class to access a precreated preconditioner as one or more linear operators objects and information on how they are ment to be applied. More...
class  PreconditionerFactoryBase
 Factory interface for creating precondtioner objects from LinearOpBase objects. More...
struct  SolveMeasureType
 Solve tolerance type. More...
struct  SolveCriteria
 Simple struct that defines the requested solution criteria for a solve. More...
struct  BlockSolveCriteria
 Simple struct that defines the requested solution criteria for a block solve. More...
class  CatastrophicSolveFailure
 Exception type thrown on an catastrophic solve failure. More...
struct  SolveStatus
 Simple struct for the return status from a solve. More...
class  AddedLinearOpBase
 Interface class for implicitly added linear operators. More...
class  BlockedLinearOpBase
 Base interface for linear operators that can be accessed as sub-blocks. More...
class  DiagonalLinearOpBase
 Interface class for for diagonal linear operators. More...
class  IdentityLinearOpBase
 Interface class for identity linear operators. More...
class  LinearOpTransformerBase
 Base interface for transforming a LinearOpBase object. More...
class  MultipliedLinearOpBase
 Interface class for implicitly multiplied linear operators. More...
class  MultiVectorFileIOBase
 Abstract strategy interface for reading and writing (multi)vector objects to and from files. More...
class  MultiVectorRandomizerBase
 Base interface for a strategy object for randomizing a multi-vector. More...
class  PhysicallyBlockedLinearOpBase
 Base interface for physically blocked linear operators. More...
class  ProductMultiVectorBase
 Base interface for product multi-vectors. More...
class  ProductVectorBase
 Base interface for product vectors. More...
class  ProductVectorSpaceBase
 Base interface for product vector spaces. More...
class  ScaledAdjointLinearOpBase
 Base class for LinearOpBase decorator subclasses that wrap a LinearOpBase object and adds on an extra scaling factor and/or a new transpose enum. More...
class  SpmdVectorSpaceBase
 Base abstract VectorSpaceBase class for all SPMD-based vector spaces. More...
class  VectorSpaceConverterBase
 Base interface for a factory that converts vector space types and vectors and multi-vectors from one scalar type to another. More...
class  ZeroLinearOpBase
 Interface class for zero linear operators. More...
class  LinearOpBase
 Base class for all linear operators. More...
class  MultiVectorBase
 Interface for a collection of column vectors called a multi-vector. More...
class  VectorBase
 Abstract interface for finite-dimensional dense vectors. More...
class  VectorSpaceBase
 Abstract interface for objects that represent a space for vectors. More...
class  VectorSpaceFactoryBase
 Abstract interface for objects that can create vector spaces of a specified dimension. More...
class  DefaultEvaluationLoggerModelEvaluator
 This class wraps any ModelEvaluator object and logs the evaluation of various functions. More...
class  DefaultFinalPointCaptureModelEvaluator
 This class wraps any ModelEvaluator object and allows the client to capture the final point that is returned by a client. More...
class  DefaultFiniteDifferenceModelEvaluator
 This class wraps any ModelEvaluator object and computes certain derivatives using finite differences. More...
class  DefaultInverseModelEvaluator
 This class wraps any ModelEvaluator object and adds a simple, but fairly general, inverse response function. More...
class  DefaultLumpedParameterModelEvaluator
 Decorator class that wraps any ModelEvaluator object and lumps parameters together using a linear basis matrix. More...
class  DefaultModelEvaluatorWithSolveFactory
 This class wraps any ModelEvaluator object and uses a compatible LinearOpWithSolveFactory object to create a LinearOpWithSolveBase version of W. More...
class  DefaultMultiPeriodModelEvaluator
 Composite subclass that takes a single ModelEvaluator object and represents it as a single aggregate multi-period ModelEvalator object. More...
class  DefaultNominalBoundsOverrideModelEvaluator
 This class wraps any ModelEvaluator object and allows the client to overide the state contained in the nominal values and the upper and lower bounds. More...
class  DirectionalFiniteDiffCalculator
 Utility calss for computing directional finite differences of a model. More...
class  ModelEvaluatorDefaultBase
 Default base class for concrete model evaluators. More...
class  ModelEvaluatorDelegatorBase
 This is a base class that delegetes almost all function to a wrapped model evaluator object. More...
class  ResponseOnlyModelEvaluatorBase
 This base class defines default function implementations appropritate for a response-only model evaluator (p) -> g(j), for j=0...Ng-1. More...
class  StateFuncModelEvaluatorBase
 This base class defines default function implementations appropritate for a set of nonlinear state functions of the form x -> f(x). More...
class  DampenedNewtonNonlinearSolver
 Simple dampended Newton solver using a Armijo line search :-). More...
class  DefaultNonlinearSolverBuilder
 Concrete subclass of Thyra::NonlinearSolverBuilderBase for creating NonlinearSolverBase objects and PreconditionerFactoryBase object on demand given configured factory objects. More...
class  DefaultStateEliminationModelEvaluator
 This class wraps any ModelEvaluator object along with a NonlinearSolverBase object and eliminates the steady-state equations f(x,...)=0. More...
class  LinearNonlinearSolver
 Concrete nonlinear solver for linear equations. More...
class  DefaultAdjointLinearOpWithSolve
 Default concreate decorator subclass for a transpose/adjoint LinearOpWithSolveBase object. More...
class  DefaultBlockedTriangularLinearOpWithSolve
 Concrete composite LinearOpWithSolveBase subclass that creates single upper or lower block triangular LOWSB object out of a set of LOWSB objects along the diagonal with LOB object on the off diagonal.. More...
class  DefaultBlockedTriangularLinearOpWithSolveFactory
 Implicit subclass that takes a blocked triangular LOWB object and turns it into a LOWSB object. More...
class  DefaultDiagonalLinearOpWithSolve
 Concrete LinearOpWithSolveBase subclass for diagonal linear operators. More...
class  DefaultInverseLinearOp
 Concrete LinearOpBase subclass that creates an implicit LinearOpBase object using the inverse action of a LinearOpWithSolveBase object. More...
class  DefaultLinearOpSource
 Default implementation of a LinearOpSourceBase that just accepts and gives up a single linear operator object. More...
class  DefaultMultiVectorLinearOpWithSolve
 Implicit concrete LinearOpWithSolveBase subclass that takes a flattended out multi-vector and performs a multi-RHS solve with it. More...
class  DefaultPreconditioner
 Default implementation of a PreconditionerBase that just accepts precreated preconditioner linear operators. More...
class  DefaultSerialDenseLinearOpWithSolve
 Simple concreate subclass of LinearOpWithSolveBase for serial dense matrices implemented using LAPACK. More...
class  DefaultSerialDenseLinearOpWithSolveFactory
 Concreate LinearOpWithSolveFactoryBase subclass that creates DefaultSerialDenseLinearOpWithSolve objects that use LAPACK. More...
class  DelayedLinearOpWithSolve
 Delayed linear solver construction LinearOpWithSolveBase decorator class. More...
class  DelayedLinearOpWithSolveFactory
 General delayed construction LinearOpWithSolveFactoryBase subclass. More...
class  LinearOpWithSolveTester
 Testing class for LinearOpWithSolveBase. More...
class  SingleRhsLinearOpWithSolveBase
  More...
class  SingleScalarLinearOpWithSolveBase
  More...
class  DefaultSerialVectorSpaceConverter
 Concrete subclass for a converter subclass for converting serial multi-vectors and vectors. More...
class  SerialLinearOpBase
 Base subclass for simplistic in-core serial linear operators. More...
class  SerialVectorSpaceConverterBase
 Node base class for converting serial multi-vectors (and vectors) from one scalar type to another. More...
class  DefaultClusteredSpmdProductVector
 Concrete implementation of a clustered Spmd-based product vector. More...
class  DefaultClusteredSpmdProductVectorSpace
 Concrete subclass of VectorSpaceBase that takes a collection of individual VectorSpaceBase objects distributed over many different processes and creates a single vector space. More...
class  CopyBackSpmdMultiVectorEntries
class  DefaultSpmdMultiVector
 Efficient concrete implementation subclass for SPMD multi-vectors. More...
class  DefaultSpmdMultiVectorFileIO
 Concrete implementation of MultiVectorFileIO that reads and writes SPMD-based (multi)vectors to and from files. More...
class  DefaultSpmdVector
 Efficient concrete implementation subclass for SPMD vectors. More...
class  DefaultSpmdVectorSpace
 Concrete implementation of an SPMD vector space subclass which creates DefaultSpmdVector and DefaultSpmdMultiVector objects. More...
class  DefaultSpmdVectorSpaceFactory
 Concrete implementation of a vector-space factory for a locally-replicated distributed DefaultSpmdVectorSpace objects. More...
class  ConstDetachedSpmdVectorView
 Create an explicit detached non-mutable (const) view of all of the local elements on this process of an VectorBase object. More...
class  DetachedSpmdVectorView
 Create an explicit detached mutable (non-const) view of all of the local elements on this process of an VectorBase object. More...
class  EuclideanLinearOpBase
 Base interface for Euclidean linear operators. More...
class  EuclideanScalarProd
 Concrete implementation of a scalar product for a Euclidean vector space (i.e. using the dot product). More...
class  LinearOpScalarProd
 Concrete implementation of a scalar product using a symmetric positive-definite linear operator. More...
class  ScalarProdBase
 Abstract interface for scalar products. More...
class  ScalarProdVectorSpaceBase
 Base subclass for VectorSpaceBase that allows the definition of an application-specific scalar product to be swapped in and out. More...
class  SingleRhsEuclideanLinearOpBase
 Base class for linear operators that can only implement a single RHS vector apply operation and only support one scalar type. More...
class  SingleScalarEuclideanLinearOpBase
 Base class for euclidean linear operators that can only handle a single scalar type. More...
class  SpmdLinearOpBase
 Base subclass for simplistic SPMD linear operators. More...
class  SpmdMultiVectorBase
 Base class for SPMD multi-vectors. More...
class  SpmdMultiVectorSerializer
 Concrete utility class for reading and writing SPMD-based MultiVectorBase objects to and from standard streams. More...
class  SpmdVectorBase
 Base class for SPMD vectors that can provide views of contiguous elements in a process. More...
class  SpmdVectorSpaceDefaultBase
 Base VectorSpaceBase class for all SPMD vector spaces with contiguous local-to-global indexing. More...
struct  dump_vec_spaces_t
class  DefaultAddedLinearOp
 Concrete composite LinearOpBase subclass that creates an implicitly added linear operator out of one or more constituent LinearOpBase objects. More...
class  DefaultBlockedLinearOp
 Concrete composite LinearOpBase subclass that creates single linear operator object out of a set of constituent LinearOpBase blocks. More...
class  DefaultColumnwiseMultiVector
 Default subclass for MultiVectorBase implemented using columns of separate abstract vectors. More...
class  DefaultDiagonalLinearOp
 Default concrete LinearOpBase subclass for diagonal linear operators. More...
class  DefaultIdentityLinearOp
 Represents a identity linear operator M = I. More...
class  DefaultMultipliedLinearOp
 Concrete composite LinearOpBase subclass that creates an implicitly multiplied linear operator out of one or more constituent LinearOpBase objects. More...
class  DefaultMultiVectorProductVector
 Concrete implementation of a product vector which is really composed out of the columns of a multi-vector. More...
class  DefaultMultiVectorProductVectorSpace
 Standard concrete implementation of a product vector space that creates product vectors fromed implicitly from the columns of a multi-vector. More...
class  DefaultProductMultiVector
 Concrete implementation of a product multi-vector. More...
class  DefaultProductVector
 Concrete implementation of a product vector. More...
class  DefaultProductVectorSpace
 Standard concrete implementation of a product vector space. More...
class  DefaultScaledAdjointLinearOp
 Concrete decorator LinearOpBase subclass that wraps a LinearOpBase object and adds on an extra scaling factor and/or a transpose enum. More...
class  DefaultZeroLinearOp
 Represents a zero linear operator M = 0. More...
class  ConstDetachedMultiVectorView
 Create an explicit non-mutable (const) view of a MultiVectorBase object. More...
class  DetachedMultiVectorView
 Create an explicit mutable (non-const) view of a MultiVectorBase object. More...
class  ConstDetachedVectorView
 Create an explicit non-mutable (const) view of a VectorBase object. More...
class  DetachedVectorView
 Create an explicit mutable (non-const) view of a VectorBase object. More...
class  ConvertibleToVector
class  OpTimesLC
class  LC2
class  LinearCombinationTester
class  LinearOpDefaultBase
 Node subclass that provides a good default implementation for the describe() function. More...
class  ConstLinearOperator
class  LinearOperator
class  LinearOpTester
 Testing class for LinearOpBase. More...
class  SymmetricLinearOpTester
class  ListedMultiVectorRandomizer
 MultiVectorRandomizerBase subclass that returns a revolving list of preset MultiVectorBase objects. More...
class  MultiVectorAllocator
 Allocator class to be used with Teuchos::AbstractFactoryStd to create MultiVectorBase objects of a given size. More...
class  MultiVectorDefaultBase
 Node subclass that uses a default MultiVectorBase implementation to provide default implementations for as many other functions in MultiVectorBase interface the as is reasonable. More...
class  MultiVectorStdOpsTester
 Testing class that tests all of the standard vector operations defined in ??? using an arbitrary vector space. More...
class  MultiVectorTester
 Unit testing class for a MultiVectorBase object. More...
class  ParameterDrivenMultiVectorInput
 Concrete utility class that an ANA can use for reading in a (multi)vector as directed by a parameter sublist. More...
class  SingleRhsLinearOpBase
 Base class for linear operators that can only implement a single RHS vector apply operation and only support one scalar type. More...
class  SingleScalarLinearOpBase
 Base class for linear operators that can only handle a single scalar type. More...
class  TesterBase
  More...
class  TestSpecifier
class  UniversalMultiVectorRandomizer
 Univeral MultiVectorRandomizerBase subclass that is compatible with all MultiVectorBase objects. More...
class  Converter
 Converter that defines the interface for objects that can be converted to vectors. More...
class  ConstVector
 Read-only handle class for wrapping Thyra::VectorBase objects and allowing for operator-overloading linear algebra. More...
class  Vector
 Read-write handle class for wrapping Thyra::VectorBase objects and allowing for operator-overloading linear algebra. More...
class  VectorDefaultBase
 Convenient node subclass for concrete VectorBase subclasses that relies on a default MultiVectorBase implementation. More...
class  VectorOpTester
class  VectorSpace
 Handle class for VectorSpaceBase. More...
class  CopyVectorViewBack
class  CopyMultiVectorViewBack
class  VectorSpaceDefaultBase
 Node VectorSpaceBase subclass that provides default implementations for many functions using a default multi-vectors implementation. More...
class  VectorSpaceTester
 Testing class for VectorSpace and the VectorBase and MultiVectorBase objects that it creates. More...
class  VectorStdOpsTesterComparable
class  VectorStdOpsTesterComparable< false, Scalar >
class  VectorStdOpsTesterComparable< true, Scalar >
class  VectorStdOpsTester
 Testing class that tests all of the standard vector operations defined in ??? using an arbitrary vector space. More...
class  VectorTester
 Unit testing class for a VectorBase object. More...
class  LinearOpChanger
 Silly abstract strategy interface for changing Thyra::LinearOpBase objects. More...
class  NullLinearOpChanger
 No-op changer. More...
class  DiagonalEpetraLinearOpWithSolveFactory
  More...
class  EpetraLinearOp
 Concrete LinearOpBase adapter subclass for Epetra_Operator object. More...
class  EpetraLinearOpBase
 Abstract base class for all LinearOpBase objects that can return an Epetra_Operator view of themselves and details about how to apply the view. More...
class  EpetraOperatorViewExtractorBase
 Strategy interface for extracting an Epetra_Operator view out of a Thyra::LinearOpBase<double> object. More...
class  EpetraOperatorViewExtractorStd
 Standard strategy subclass for extracting an Epetra_Operator view out of a Thyra::LinearOpBase<double> object by dynamic casting to the EpetraLinearOpBase interface. More...
class  EpetraOperatorWrapper
 Implements the Epetra_Operator interface with a Thyra LinearOperator. This enables the use of absrtact Thyra operators in AztecOO as preconditioners and operators, without being rendered into concrete Epetra matrices. More...
class  EpetraModelEvaluator
 Concrete Adapter subclass that takes an EpetraExt::ModelEvaluator object and wraps it as a Thyra::ModelEvaluator object. More...
class  EpetraExtAddTransformer
 Base interface for transforming a LinearOpBase object. More...
class  EpetraExtDiagScaledMatProdTransformer
 Base interface for transforming a LinearOpBase object. More...
class  EpetraExtDiagScalingTransformer
 Base interface for transforming a LinearOpBase object. More...
class  TpetraLinearOp
 Concrete LinearOpBase adapter subclass for Tpetra::Operator objects. More...
class  TpetraLinearOpBase
 Abstract base class for all LinearOpBase objects that can return an Tpetra::Operator view of themselves. More...

Namespaces

namespace  ModelEvaluatorHelperPack
namespace  Exceptions
namespace  DirectionalFiniteDiffCalculatorTypes
namespace  ModelEvaluatorDefaultBaseTypes
namespace  SpmdVectorSpaceUtilities
namespace  PDMVIUtilityPack
namespace  TpetraUtils

Typedefs

typedef Teuchos::Range1D::Index Ordinal
 Type for the dimension of a vector space.
typedef Ordinal Index
 Deprecated: Use Ordinal instead!
typedef Teuchos::Range1D Range1D
 Type for a range of indices.
typedef EOpTransp ETransp
 Deprecated.

Enumerations

enum  ESolveMeasureNormType {
  SOLVE_MEASURE_ONE, SOLVE_MEASURE_NORM_RESIDUAL, SOLVE_MEASURE_NORM_SOLUTION, SOLVE_MEASURE_NORM_INIT_RESIDUAL,
  SOLVE_MEASURE_NORM_RHS
}
 Type of solve measure norm. More...
enum  ESolveStatus { SOLVE_STATUS_CONVERGED, SOLVE_STATUS_UNCONVERGED, SOLVE_STATUS_UNKNOWN }
 Solution status. More...
enum  ESupportSolveUse { SUPPORT_SOLVE_UNSPECIFIED, SUPPORT_SOLVE_FORWARD_ONLY, SUPPORT_SOLVE_TRANSPOSE_ONLY, SUPPORT_SOLVE_FORWARD_AND_TRANSPOSE }
 Enum that specifies how a LinearOpWithSolveBase object will be used for solves after it is constructed. More...
enum  EPreconditionerInputType { PRECONDITIONER_INPUT_TYPE_AS_OPERATOR, PRECONDITIONER_INPUT_TYPE_AS_MATRIX }
 Enum defining the status of a preconditioner object. More...
enum  EConj { NONCONJ_ELE, CONJ_ELE }
 Enumeration for determining how a linear operator is applied. More...
enum  EOpTransp { NOTRANS, CONJ, TRANS, CONJTRANS }
 Enumeration for determining how a linear operator is applied. More...
enum  EViewType { VIEW_TYPE_DIRECT, VIEW_TYPE_DETACHED }
 Determines if a view is a direct view of data or a detached copy of data. More...
enum  EStrideType { STRIDE_TYPE_UNIT, STRIDE_TYPE_NONUNIT }
 Determine if data is unit stride or non-unit stride. More...
enum  EThrowOnSolveFailure { THROW_ON_SOLVE_FAILURE = 1, IGNORE_SOLVE_FAILURE = 0 }
  More...
enum  EM_VS { VS_RANGE, VS_DOMAIN }
enum  LCSign { LCAdd = 1, LCSubtract = -1 }
 LCSign is used to indicate whether a linear combination object represents addition or subtraction. More...
enum  EAdjointEpetraOp { EPETRA_OP_ADJOINT_SUPPORTED, EPETRA_OP_ADJOINT_UNSUPPORTED }
 Determine if adjoints are supported on Epetra_Opeator or not. More...
enum  EApplyEpetraOpAs { EPETRA_OP_APPLY_APPLY, EPETRA_OP_APPLY_APPLY_INVERSE }
 Determine how the apply an Epetra_Operator as a linear operator. More...
enum  EAdjointTpetraOp { TPETRA_OP_TRANSPOSE_ADJOINT_UNSUPPORTED, TPETRA_OP_ADJOINT_SUPPORTED, TPETRA_OP_TRANSPOSE_SUPPORTED, TPETRA_OP_TRANSPOSE_ADJOINT_SUPPORTED }
 Determine if adjoints are supported on Tpetra_Opeator or not. More...

Functions

std::string toString (ModelEvaluatorBase::EInArgsMembers arg)
std::string toString (ModelEvaluatorBase::EOutArgsMembers arg)
std::string toString (ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
Thyra::ModelEvaluatorBase::EDerivativeMultiVectorOrientation getOtherDerivativeMultiVectorOrientation (ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
bool solveSupports (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp A_trans)
 Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve or not..
template<class Scalar>
bool solveSupportsSolveMeasureType (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp A_trans, const SolveMeasureType &solveMeasureType)
 Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve measure or not.
template<class Scalar>
void solve (const LinearOpWithSolveBase< Scalar > &M, const EOpTransp M_trans, const MultiVectorBase< Scalar > &B, MultiVectorBase< Scalar > *X, const int numBlocks, const BlockSolveCriteria< Scalar > blockSolveCriteria[], SolveStatus< Scalar > blockSolveStatus[])
 Solve a set of linear systems with different convergence criteria targeted to different blocks.
template<class Scalar>
SolveStatus< Scalar > solve (const LinearOpWithSolveBase< Scalar > &A, const EOpTransp A_trans, const MultiVectorBase< Scalar > &B, MultiVectorBase< Scalar > *X, const SolveCriteria< Scalar > *solveCriteria=NULL)
 Solve a set of forward linear systems with a single set of tolerances and a single scalar type.
template<class RangeScalar, class DomainScalar>
SolveStatus< typename LinearOpWithSolveBase<
RangeScalar, DomainScalar
>::PromotedScalar > 
solve (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< RangeScalar > &B, MultiVectorBase< DomainScalar > *X, const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *solveCriteria=NULL)
 Solve a set of forward linear systems with a single set of tolerances.
template<class RangeScalar, class DomainScalar>
SolveStatus< typename LinearOpWithSolveBase<
RangeScalar, DomainScalar
>::PromotedScalar > 
solveTranspose (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< DomainScalar > &B, MultiVectorBase< RangeScalar > *X, const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *solveCriteria=NULL)
 Solve a set of transpose linear systems with a single set of tolerances.
template<class RangeScalar, class DomainScalar>
void solve (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< RangeScalar > &B, MultiVectorBase< DomainScalar > *X, const int numBlocks, const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveCriteria[]=NULL, SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveStatus[]=NULL)
 Solve a set of forward linear systems with two or more sets of tolerances.
template<class RangeScalar, class DomainScalar>
void solveTranspose (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &A, const EConj conj, const MultiVectorBase< DomainScalar > &B, MultiVectorBase< RangeScalar > *X, const int numBlocks, const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveCriteria[]=NULL, SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > blockSolveStatus[]=NULL)
 Solve a set of transpose linear systems with two or more sets of tolerances.
const std::string toString (const ESolveMeasureNormType solveMeasureNormType)
 
std::string toString (const SolveMeasureType &solveMeasureType)
 
const std::string toString (const ESolveStatus solveStatus)
 
template<class Scalar>
std::ostream & operator<< (std::ostream &out_arg, const SolveStatus< Scalar > &solveStatus)
 Print the solve status to a stream.
template<class Scalar>
void accumulateSolveStatus (const SolveCriteria< Scalar > &overallSolveCriteria, const SolveStatus< Scalar > &solveStatus, SolveStatus< Scalar > *overallSolveStatus)
 Accumulate solve status objects for solving a block of RHSs is smaller sub-blocks.
template<class Scalar>
void unwrap (const LinearOpBase< Scalar > &Op,Scalar *scalar,EOpTransp *transp,const LinearOpBase< Scalar > **origOp)
 Extract the overallScalar, overallTransp and const origOp from a const LinearOpBase object.
template<class Scalar>
void unwrap (const Teuchos::RCP< const LinearOpBase< Scalar > > &Op,Scalar *scalar,EOpTransp *transp,Teuchos::RCP< const LinearOpBase< Scalar > > *origOp)
 Extract the overallScalar, overallTransp and Teuchos::RCP wrapped const origOp from a Teuchos::RCP wrapped const LinearOpBase object.
template<class Scalar>
void apply (const LinearOpBase< Scalar > &M, const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta)
template<class Scalar>
void apply (const LinearOpBase< Scalar > &M, const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha=static_cast< Scalar >(1.0), const Scalar beta=static_cast< Scalar >(0.0))
 Deprecated.
template<class Scalar>
bool isFullyUninitialized (const LinearOpBase< Scalar > &M)
template<class Scalar>
bool isPartiallyInitialized (const LinearOpBase< Scalar > &M)
template<class Scalar>
bool isFullyInitialized (const LinearOpBase< Scalar > &M)
template<class Scalar>
bool opSupported (const LinearOpBase< Scalar > &M, EOpTransp M_trans)
template<class RangeScalar, class DomainScalar>
void apply (const LinearOpBase< RangeScalar, DomainScalar > &M, const EConj conj, const MultiVectorBase< DomainScalar > &X, MultiVectorBase< RangeScalar > *Y, const RangeScalar alpha, const RangeScalar beta)
template<class RangeScalar, class DomainScalar>
void applyTranspose (const LinearOpBase< RangeScalar, DomainScalar > &M, const EConj conj, const MultiVectorBase< RangeScalar > &X, MultiVectorBase< DomainScalar > *Y, const DomainScalar alpha, const DomainScalar beta)
void apply (const LinearOpBase< double > &M, const EOpTransp M_trans, const MultiVectorBase< double > &X, const Ptr< MultiVectorBase< double > > &Y, const double alpha, const double beta)
template<class Scalar>
void apply (const LinearOpBase< Scalar > &M, const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta)
 Deprecated.
const char * toString (EConj conj)
 Return a string name for a EOpTransp value.
const char * toString (EOpTransp transp)
 Return a string name for a EOpTransp value.
EOpTransp real_trans (EOpTransp transp)
 Return NOTRANS or TRANS for real scalar valued operators and this also is used for determining structural transpose.
EOpTransp not_trans (EOpTransp transp)
 Perform a not operation on an EOpTransp value.
EOpTransp trans_trans (EOpTransp trans1, EOpTransp trans2)
 Combine two transpose arguments.
EConj transToConj (EOpTransp trans)
 Convert from EOpTransp to EConj.
EOpTransp applyConjToTrans (EConj conj)
 Convert from EConj to EOpTransp for forward apply.
EOpTransp applyTransposeConjToTrans (EConj conj)
 Convert from EConj to EOpTransp for forward apply.
template<class Scalar>
Teuchos::RCP< const Thyra::VectorSpaceBase<
Scalar > > 
makeHaveOwnership (const RCP< const VectorSpaceBase< Scalar > > &vs_in)
template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<
Scalar > > 
createMember (const RCP< const VectorSpaceBase< Scalar > > &vs, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<
Scalar > > 
createMember (const VectorSpaceBase< Scalar > &vs, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<
Scalar > > 
createMembers (const RCP< const VectorSpaceBase< Scalar > > &vs, int numMembers, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<
Scalar > > 
createMembers (const VectorSpaceBase< Scalar > &vs, int numMembers, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<
Scalar > > 
createMemberView (const RCP< const VectorSpaceBase< Scalar > > &vs, const RTOpPack::SubVectorView< Scalar > &raw_v, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<
Scalar > > 
createMemberView (const VectorSpaceBase< Scalar > &vs, const RTOpPack::SubVectorView< Scalar > &raw_v, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::VectorBase<
Scalar > > 
createMemberView (const RCP< const VectorSpaceBase< Scalar > > &vs, const RTOpPack::ConstSubVectorView< Scalar > &raw_v, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::VectorBase<
Scalar > > 
createMemberView (const VectorSpaceBase< Scalar > &vs, const RTOpPack::ConstSubVectorView< Scalar > &raw_v, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<
Scalar > > 
createMembersView (const RCP< const VectorSpaceBase< Scalar > > &vs, const RTOpPack::SubMultiVectorView< Scalar > &raw_mv, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<
Scalar > > 
createMembersView (const VectorSpaceBase< Scalar > &vs, const RTOpPack::SubMultiVectorView< Scalar > &raw_mv, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::MultiVectorBase<
Scalar > > 
createMembersView (const RCP< const VectorSpaceBase< Scalar > > &vs, const RTOpPack::ConstSubMultiVectorView< Scalar > &raw_mv, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::MultiVectorBase<
Scalar > > 
createMembersView (const VectorSpaceBase< Scalar > &vs, const RTOpPack::ConstSubMultiVectorView< Scalar > &raw_mv, const std::string &label)
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, VectorBase< Scalar > *f)
 Evaluate f(x).
template<class Scalar>
void eval_f_W (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, VectorBase< Scalar > *f, LinearOpWithSolveBase< Scalar > *W)
 Evaluate f(x) and W(x) = DfDx(x).
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, const Scalar &t, VectorBase< Scalar > *f)
 Evaluate f(x,t).
template<class Scalar>
void eval_g (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const int j, const Ptr< VectorBase< Scalar > > &g_j)
 Evaluate g(j)(p)).
template<class Scalar>
void eval_g (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const int j, VectorBase< Scalar > *g_j)
 Deprecated .
template<class Scalar>
void eval_g (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const Scalar &t, const int j, VectorBase< Scalar > *g_j)
 Evaluate g(j)(p,t)).
template<class Scalar>
void eval_g_DgDp (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const int j, const Ptr< VectorBase< Scalar > > &g_j, const ModelEvaluatorBase::Derivative< Scalar > &DgDp_j_l)
 Evaluate g(j)(p)) and/or D(g)/D(p).
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x_dot, const VectorBase< Scalar > &x, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, VectorBase< Scalar > *f)
 Evaluate f(x_dot,x,t).
template<class Scalar>
void eval_f_W (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x_dot, const VectorBase< Scalar > &x, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, const Scalar &alpha, const Scalar &beta, VectorBase< Scalar > *f, LinearOpWithSolveBase< Scalar > *W)
 Evaluate f(x_dot,x,t) and W(x_dot,x,t,alpha,beta) = alpha*DfDx_dot(x_dot,x,t) + beta*DfDx(x_dot,x,t).
template<class Scalar>
void eval_f_poly (const ModelEvaluator< Scalar > &model, const Teuchos::Polynomial< VectorBase< Scalar > > &x_poly, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, Teuchos::Polynomial< VectorBase< Scalar > > *f_poly)
 
template<class Scalar>
void eval_f_poly (const ModelEvaluator< Scalar > &model, const Teuchos::Polynomial< VectorBase< Scalar > > &x_dot_poly, const VectorBase< Scalar > &x_poly, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, Teuchos::Polynomial< VectorBase< Scalar > > *f_poly)
 
template<class Scalar>
Teuchos::RCP< Thyra::ModelEvaluatorBase::InArgs<
Scalar > > 
clone (const ModelEvaluatorBase::InArgs< Scalar > &inArgs)
template<class Scalar>
Thyra::ModelEvaluatorBase::Derivative<
Scalar > 
derivativeGradient (const RCP< MultiVectorBase< Scalar > > &grad)
template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<
Scalar > 
create_DfDp_mv (const ModelEvaluator< Scalar > &model, int l, ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<
Scalar > 
create_DgDx_dot_mv (const ModelEvaluator< Scalar > &model, int j, ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<
Scalar > 
create_DgDx_mv (const ModelEvaluator< Scalar > &model, int j, ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<
Scalar > 
create_DgDp_mv (const ModelEvaluator< Scalar > &model, int j, int l, ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<
Scalar > 
get_dmv (const ModelEvaluatorBase::Derivative< Scalar > &deriv, const std::string &derivName)
template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<
Scalar > > 
get_mv (const ModelEvaluatorBase::Derivative< Scalar > &deriv, const std::string &derivName, ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation)
template<class Scalar>
void assertDerivSpaces (const std::string &modelEvalDescription, const ModelEvaluatorBase::Derivative< Scalar > &deriv, const std::string &deriv_name, const VectorSpaceBase< Scalar > &fnc_space, const std::string &fnc_space_name, const VectorSpaceBase< Scalar > &var_space, const std::string &var_space_name)
template<class Scalar>
void assertInArgsOutArgsSetup (const std::string &modelEvalDescription, const ModelEvaluatorBase::InArgs< Scalar > &inArgs, const ModelEvaluatorBase::OutArgs< Scalar > &outArgs)
template<class Scalar>
void assertInArgsEvalObjects (const ModelEvaluator< Scalar > &model, const ModelEvaluatorBase::InArgs< Scalar > &inArgs)
template<class Scalar>
void assertOutArgsEvalObjects (const ModelEvaluator< Scalar > &model, const ModelEvaluatorBase::OutArgs< Scalar > &outArgs, const ModelEvaluatorBase::InArgs< Scalar > *inArgs)
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, VectorBase< Scalar > *f)
 Evaluate f(x).
template<class Scalar>
void eval_f_W (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, VectorBase< Scalar > *f, LinearOpWithSolveBase< Scalar > *W)
 Evaluate f(x) and W(x) = DfDx(x).
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x, const Scalar &t, VectorBase< Scalar > *f)
 Evaluate f(x,t).
template<class Scalar>
void eval_g (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const int j, const Ptr< VectorBase< Scalar > > &g_j)
 Evaluate g(j)(p)).
template<class Scalar>
void eval_g (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const Scalar &t, const int j, VectorBase< Scalar > *g_j)
 Evaluate g(j)(p,t)).
template<class Scalar>
void eval_g_DgDp (const ModelEvaluator< Scalar > &model, const int l, const VectorBase< Scalar > &p_l, const int j, const Ptr< VectorBase< Scalar > > &g_j, const ModelEvaluatorBase::Derivative< Scalar > &DgDp_j_l)
 Evaluate g(j)(p)) and/or D(g)/D(p).
template<class Scalar>
void eval_f (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x_dot, const VectorBase< Scalar > &x, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, VectorBase< Scalar > *f)
 Evaluate f(x_dot,x,t).
template<class Scalar>
void eval_f_W (const ModelEvaluator< Scalar > &model, const VectorBase< Scalar > &x_dot, const VectorBase< Scalar > &x, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, const Scalar &alpha, const Scalar &beta, VectorBase< Scalar > *f, LinearOpWithSolveBase< Scalar > *W)
 Evaluate f(x_dot,x,t) and W(x_dot,x,t,alpha,beta) = alpha*DfDx_dot(x_dot,x,t) + beta*DfDx(x_dot,x,t).
template<class Scalar>
void eval_f_poly (const ModelEvaluator< Scalar > &model, const Teuchos::Polynomial< VectorBase< Scalar > > &x_poly, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, Teuchos::Polynomial< VectorBase< Scalar > > *f_poly)
 
template<class Scalar>
void eval_f_poly (const ModelEvaluator< Scalar > &model, const Teuchos::Polynomial< VectorBase< Scalar > > &x_dot_poly, const VectorBase< Scalar > &x_poly, const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &t, Teuchos::Polynomial< VectorBase< Scalar > > *f_poly)
 
template<class Scalar>
RCP< LinearNonlinearSolver<
Scalar > > 
linearNonlinearSolver ()
template<class Scalar>
RCP< DefaultAdjointLinearOpWithSolve<
Scalar > > 
defaultAdjointLinearOpWithSolve (const RCP< const LinearOpWithSolveBase< Scalar > > &lows, const EOpTransp transp)
 Nonmember constructor.DefaultAdjointLinearOpWithSolve.
template<class Scalar>
RCP< DefaultAdjointLinearOpWithSolve<
Scalar > > 
defaultAdjointLinearOpWithSolveNonconst (const RCP< LinearOpWithSolveBase< Scalar > > &lows, const EOpTransp transp)
 Nonmember constructor.DefaultAdjointLinearOpWithSolve.
template<class Scalar>
RCP< const LinearOpWithSolveBase<
Scalar > > 
adjointLows (const RCP< const LinearOpWithSolveBase< Scalar > > &lows)
 Nonmember constructor.DefaultAdjointLinearOpWithSolve.
template<class Scalar>
RCP< LinearOpWithSolveBase<
Scalar > > 
nonconstAdjointLows (const RCP< LinearOpWithSolveBase< Scalar > > &lows)
 Nonmember constructor.DefaultAdjointLinearOpWithSolve.
template<class Scalar>
RCP< DefaultBlockedTriangularLinearOpWithSolveFactory<
Scalar > > 
defaultBlockedTriangularLinearOpWithSolveFactory (const RCP< LinearOpWithSolveFactoryBase< Scalar > > &lowsf)
 Nonmember constructor.
template<class Scalar>
RCP< DefaultBlockedTriangularLinearOpWithSolveFactory<
Scalar > > 
defaultBlockedTriangularLinearOpWithSolveFactory (const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &lowsf)
 Nonmember constructor.
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstInverse (const Teuchos::RCP< LinearOpWithSolveBase< Scalar > > &A, const SolveCriteria< Scalar > *fwdSolveCriteria, const EThrowOnSolveFailure throwOnFwdSolveFailure, const SolveCriteria< Scalar > *adjSolveCriteria, const EThrowOnSolveFailure throwOnAdjSolveFailure)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
inverse (const Teuchos::RCP< const LinearOpWithSolveBase< Scalar > > &A, const SolveCriteria< Scalar > *fwdSolveCriteria, const EThrowOnSolveFailure throwOnFwdSolveFailure, const SolveCriteria< Scalar > *adjSolveCriteria, const EThrowOnSolveFailure throwOnAdjSolveFailure)
RTOpPack::ETransp convertToRTOpPackETransp (const EOpTransp transp)
template<class Scalar>
RCP< DefaultSerialDenseLinearOpWithSolveFactory<
Scalar > > 
defaultSerialDenseLinearOpWithSolveFactory ()
 Nonmember constructor.
template<class Scalar>
bool isCompatible (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const LinearOpBase< Scalar > &fwdOp)
 Return if the forward operator is a compatible source for a LOWSFB object.
template<class Scalar>
void setDefaultObjectLabel (const LinearOpBase< Scalar > &fwdOp, LinearOpWithSolveBase< Scalar > *Op)
 Set default label on a LOWSB object.
template<class Scalar>
void initializeOp (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Initialize a pre-created LOWSB object given a forward operator.
template<class Scalar>
void initializeAndReuseOp (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, LinearOpWithSolveBase< Scalar > *Op)
 Reinitialize a pre-created LOWSB object given a forward operator, reusing a much as possible from the prior LOWSB object.
template<class Scalar>
void initializePreconditionedOp (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const Teuchos::RCP< const PreconditionerBase< Scalar > > &prec, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Initialize a preconditioned LOWSB object given an external preconditioner.
template<class Scalar>
void initializeApproxPreconditionedOp (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const Teuchos::RCP< const LinearOpBase< Scalar > > &approxFwdOp, LinearOpWithSolveBase< Scalar > *Op, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Initialize a preconditioned LOWSB object given an external operator to be used to generate the preconditioner internally.
template<class Scalar>
Teuchos::RCP< LinearOpWithSolveBase<
Scalar > > 
linearOpWithSolve (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Create and initialize a LinearOpWithSolveBase object from a LinearOpBase object using a LinearOpWithSolveFactoryBase strategy object.
template<class Scalar>
Teuchos::RCP< LinearOpBase<
Scalar > > 
inverse (const LinearOpWithSolveFactoryBase< Scalar > &LOWSF, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED, const SolveCriteria< Scalar > *fwdSolveCriteria=NULL, const EThrowOnSolveFailure throwOnFwdSolveFailure=THROW_ON_SOLVE_FAILURE, const SolveCriteria< Scalar > *adjSolveCriteria=NULL, const EThrowOnSolveFailure throwOnAdjSolveFailure=THROW_ON_SOLVE_FAILURE)
 Form a const implicit inverse operator <tt>M = inv(A) given a factory.
template<class Scalar>
void uninitializeOp (const LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, LinearOpWithSolveBase< Scalar > *Op, Teuchos::RCP< const LinearOpBase< Scalar > > *fwdOp=NULL, Teuchos::RCP< const PreconditionerBase< Scalar > > *prec=NULL, Teuchos::RCP< const LinearOpBase< Scalar > > *approxFwdOp=NULL, ESupportSolveUse *supportSolveUse=NULL)
 Uninitialized a pre-created LOWSB object, returning input objects used to initialize it.
template<class Scalar>
void assertSupportsSolveMeasureType (const LinearOpWithSolveBase< Scalar > &lows, const EOpTransp M_trans, const SolveMeasureType &solveMeasureType)
 Assert that a LOWSB object supports a particular solve type.
template<class Scalar>
void assertSupportsSolveMeasureType (const LinearOpWithSolveBase< Scalar > &lows, const EOpTransp M_trans, const SolveMeasureType &solveMeasureType)
 Assert that a LOWSB object supports a particular solve type.
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, check_forward_default_default_, true)
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, check_forward_residual_default_, true)
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, check_adjoint_default_default_, true)
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, check_adjoint_residual_default_, true)
 LOWST_DEFINE_MTD_STATIC_MEMBER (ScalarMag, warning_tol_default_, 1e-6)
 LOWST_DEFINE_MTD_STATIC_MEMBER (ScalarMag, error_tol_default_, 1e-5)
 LOWST_DEFINE_MTD_STATIC_MEMBER (ScalarMag, solve_tol_default_, 1e-5)
 LOWST_DEFINE_MTD_STATIC_MEMBER (ScalarMag, slack_warning_tol_default_, 1e-6)
 LOWST_DEFINE_MTD_STATIC_MEMBER (ScalarMag, slack_error_tol_default_, 1e-5)
 LOWST_DEFINE_RAW_STATIC_MEMBER (int, num_random_vectors_default_, 1)
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, show_all_tests_default_, false)
 LOWST_DEFINE_RAW_STATIC_MEMBER (bool, dump_all_default_, false)
 LOWST_DEFINE_RAW_STATIC_MEMBER (int, num_rhs_default_, 1)
 LOWST_DEFINE_RAW_STATIC_MEMBER (std::string, AllSolveTol_name_,"All Solve Tol")
 LOWST_DEFINE_RAW_STATIC_MEMBER (std::string, AllSlackWarningTol_name_,"All Slack Warning Tol")
 LOWST_DEFINE_RAW_STATIC_MEMBER (std::string, AllSlackErrorTol_name_,"All Slack Error Tol")
 LOWST_DEFINE_RAW_STATIC_MEMBER (std::string, ShowAllTests_name_,"Show All Tests")
 LOWST_DEFINE_RAW_STATIC_MEMBER (std::string, DumpAll_name_,"Dump All")
template<class Scalar>
void initializePrec (const PreconditionerFactoryBase< Scalar > &precFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, PreconditionerBase< Scalar > *prec, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Initialize a preconditioner from a forward linear operator.
template<class Scalar>
void uninitializePrec (const PreconditionerFactoryBase< Scalar > &precFactory, PreconditionerBase< Scalar > *prec, Teuchos::RCP< const LinearOpBase< Scalar > > *fwdOp=NULL, ESupportSolveUse *supportSolveUse=NULL)
 Uninitialize a preconditioner and optionally extra what was used to create it.
template<class Scalar>
Teuchos::RCP< PreconditionerBase<
Scalar > > 
prec (const PreconditionerFactoryBase< Scalar > &precFactory, const Teuchos::RCP< const LinearOpBase< Scalar > > &fwdOp, const ESupportSolveUse supportSolveUse=SUPPORT_SOLVE_UNSPECIFIED)
 Create and initialize a preconditioner from a forward linear operator.
template<class Scalar>
void apply_op_validate_input (const std::string &func_name, const VectorSpaceBase< Scalar > &space, const RTOpPack::RTOpT< Scalar > &op, const ArrayView< const Ptr< const VectorBase< Scalar > > > &vecs, const ArrayView< const Ptr< VectorBase< Scalar > > > &targ_vecs, const Ptr< RTOpPack::ReductTarget > &reduct_obj, const Index first_ele_offset, const Index sub_dim, const Index global_offset)
 Validate the inputs to VectorBase::applyOp().
template<class Scalar>
void apply_op_validate_input (const std::string &func_name, const VectorSpaceBase< Scalar > &domain, const VectorSpaceBase< Scalar > &range, const RTOpPack::RTOpT< Scalar > &primary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const ArrayView< const Ptr< RTOpPack::ReductTarget > > &reduct_objs, const Index primary_first_ele_offset, const Index primary_sub_dim, const Index primary_global_offset, const Index secondary_first_ele_offset, const Index secondary_sub_dim)
 Validate the inputs to MultiVectorBase::applyOp().
template<class Scalar>
dump_vec_spaces_t< Scalar > dump_vec_spaces (const Thyra::VectorSpaceBase< Scalar > &vec_space1, const std::string &vec_space1_name, const Thyra::VectorSpaceBase< Scalar > &vec_space2, const std::string &vec_space2_name)
template<class Scalar>
std::ostream & operator<< (std::ostream &o, const dump_vec_spaces_t< Scalar > &d)
template<class Scalar>
const Thyra::VectorSpaceBase<
Scalar > & 
linear_op_op (const Thyra::LinearOpBase< Scalar > &M, Thyra::EOpTransp M_trans, EM_VS M_VS)
 Utility function for selecting domain or range spaces.
template<class Scalar>
void assertLinearOpPlusLinearOpNames (const std::string &funcName, const LinearOpBase< Scalar > &M1, const EOpTransp M1_trans_in, const std::string &M1_name, const LinearOpBase< Scalar > &M2, const EOpTransp M2_trans_in, const std::string &M2_name)
template<class Scalar>
void assertLinearOpTimesLinearOpNames (const std::string &funcName, const LinearOpBase< Scalar > &M1, const EOpTransp M1_trans_in, const std::string &M1_name, const LinearOpBase< Scalar > &M2, const EOpTransp M2_trans_in, const std::string &M2_name)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstAdd (const RCP< LinearOpBase< Scalar > > &A, const RCP< LinearOpBase< Scalar > > &B, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
add (const RCP< const LinearOpBase< Scalar > > &A, const RCP< const LinearOpBase< Scalar > > &B, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstSubtract (const RCP< LinearOpBase< Scalar > > &A, const RCP< LinearOpBase< Scalar > > &B, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
subtract (const RCP< const LinearOpBase< Scalar > > &A, const RCP< const LinearOpBase< Scalar > > &B, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::DefaultBlockedLinearOp<
Scalar > > 
defaultBlockedLinearOp ()
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
block1x1 (const RCP< const LinearOpBase< Scalar > > &A00, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
block1x2 (const RCP< const LinearOpBase< Scalar > > &A00, const RCP< const LinearOpBase< Scalar > > &A01, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
block2x1 (const RCP< const LinearOpBase< Scalar > > &A00, const RCP< const LinearOpBase< Scalar > > &A10, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
block2x2 (const RCP< const LinearOpBase< Scalar > > &A00, const RCP< const LinearOpBase< Scalar > > &A01, const RCP< const LinearOpBase< Scalar > > &A10, const RCP< const LinearOpBase< Scalar > > &A11, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstBlock1x1 (const RCP< LinearOpBase< Scalar > > &A00, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstBlock1x2 (const RCP< LinearOpBase< Scalar > > &A00, const RCP< LinearOpBase< Scalar > > &A01, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstBlock2x1 (const RCP< LinearOpBase< Scalar > > &A00, const RCP< LinearOpBase< Scalar > > &A10, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstBlock2x2 (const RCP< LinearOpBase< Scalar > > &A00, const RCP< LinearOpBase< Scalar > > &A01, const RCP< LinearOpBase< Scalar > > &A10, const RCP< LinearOpBase< Scalar > > &A11, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
identity (const Teuchos::RCP< const VectorSpaceBase< Scalar > > &space, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstMultiply (const RCP< LinearOpBase< Scalar > > &A, const RCP< LinearOpBase< Scalar > > &B, const std::string &M_label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
multiply (const RCP< const LinearOpBase< Scalar > > &A, const RCP< const LinearOpBase< Scalar > > &B, const std::string &M_label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
multiply (const RCP< const LinearOpBase< Scalar > > &A, const RCP< const LinearOpBase< Scalar > > &B, const RCP< const LinearOpBase< Scalar > > &C, const std::string &M_label)
template<class Scalar>
Teuchos::RCP< Thyra::DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector ()
template<class Scalar>
Teuchos::RCP< Thyra::DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
template<class Scalar>
Teuchos::RCP< Thyra::DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs)
template<class Scalar>
Teuchos::RCP< Thyra::DefaultProductMultiVector<
Scalar > > 
defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs)
template<class Scalar>
Teuchos::RCP< const Thyra::ProductMultiVectorBase<
Scalar > > 
castOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< const MultiVectorBase< Scalar > > &mv)
template<class Scalar>
Teuchos::RCP< Thyra::ProductMultiVectorBase<
Scalar > > 
nonconstCastOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< MultiVectorBase< Scalar > > &mv)
template<class Scalar>
RCP< DefaultProductVector<
Scalar > > 
defaultProductVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< VectorBase< Scalar > > vecs[])
 Deprecated.
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstScale (const Scalar &scalar, const RCP< LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
scale (const Scalar &scalar, const RCP< const LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstAdjoint (const RCP< LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
adjoint (const RCP< const LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstTranspose (const RCP< LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
transpose (const RCP< const LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< Thyra::LinearOpBase<
Scalar > > 
nonconstScaleAndAdjoint (const Scalar &scalar, const EOpTransp &transp, const RCP< LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
scaleAndAdjoint (const Scalar &scalar, const EOpTransp &transp, const RCP< const LinearOpBase< Scalar > > &Op, const std::string &label)
template<class Scalar>
Teuchos::RCP< const Thyra::LinearOpBase<
Scalar > > 
zero (const Teuchos::RCP< const VectorSpaceBase< Scalar > > &range, const Teuchos::RCP< const VectorSpaceBase< Scalar > > &domain)
template<class RangeScalar, class DomainScalar>
void describeLinearOp (const LinearOpBase< RangeScalar, DomainScalar > &A,Teuchos::FancyOStream &out,const Teuchos::EVerbosityLevel verbLevel)
 Basic implementation of a describe function for a linear operator.
template<class Scalar, class Node>
Thyra::Vector< Scalar > formVector (const OpTimesLC< Scalar, Node > &lc)
template<class Scalar, class Node1, class Node2>
Thyra::Vector< Scalar > formVector (const LC2< Scalar, Node1, Node2 > &lc)
template<class Scalar, class Node>
OpTimesLC< Scalar, Node > operator * (const Scalar &alpha, const OpTimesLC< Scalar, Node > &x)
template<class Scalar, class Node>
OpTimesLC< Scalar, Node > operator * (const OpTimesLC< Scalar, Node > &x, const Scalar &alpha)
template<class Scalar, class Node1, class Node2>
OpTimesLC< Scalar, LC2< Scalar,
Node1, Node2 > > 
operator * (const Scalar &alpha, const LC2< Scalar, Node1, Node2 > &x)
template<class Scalar, class Node1, class Node2>
OpTimesLC< Scalar, LC2< Scalar,
Node1, Node2 > > 
operator * (const LC2< Scalar, Node1, Node2 > &x, const Scalar &alpha)
template<class Scalar>
OpTimesLC< Scalar, Thyra::ConstVector<
Scalar > > 
operator * (const ConstLinearOperator< Scalar > &op, const Thyra::ConstVector< Scalar > &x)
template<class Scalar, class Node>
OpTimesLC< Scalar, Node > operator * (const ConstLinearOperator< Scalar > &op, const OpTimesLC< Scalar, Node > &x)
template<class Scalar, class Node1, class Node2>
OpTimesLC< Scalar, LC2< Scalar,
Node1, Node2 > > 
operator * (const ConstLinearOperator< Scalar > &op, const LC2< Scalar, Node1, Node2 > &x)
template<class Scalar>
LC2< Scalar, Thyra::ConstVector<
Scalar >, Thyra::ConstVector<
Scalar > > 
operator+ (const Thyra::ConstVector< Scalar > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar>
LC2< Scalar, Thyra::ConstVector<
Scalar >, Thyra::ConstVector<
Scalar > > 
operator- (const Thyra::ConstVector< Scalar > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar, class Node>
LC2< Scalar, Thyra::ConstVector<
Scalar >, OpTimesLC< Scalar,
Node > > 
operator+ (const Thyra::ConstVector< Scalar > &x1, const OpTimesLC< Scalar, Node > &x2)
template<class Scalar, class Node>
LC2< Scalar, Thyra::ConstVector<
Scalar >, OpTimesLC< Scalar,
Node > > 
operator- (const Thyra::ConstVector< Scalar > &x1, const OpTimesLC< Scalar, Node > &x2)
template<class Scalar, class Node>
LC2< Scalar, OpTimesLC< Scalar,
Node >, Thyra::ConstVector<
Scalar > > 
operator+ (const OpTimesLC< Scalar, Node > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar, class Node>
LC2< Scalar, OpTimesLC< Scalar,
Node >, Thyra::ConstVector<
Scalar > > 
operator- (const OpTimesLC< Scalar, Node > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, OpTimesLC< Scalar,
Node1 >, OpTimesLC< Scalar,
Node2 > > 
operator+ (const OpTimesLC< Scalar, Node1 > &x1, const OpTimesLC< Scalar, Node2 > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, OpTimesLC< Scalar,
Node1 >, OpTimesLC< Scalar,
Node2 > > 
operator- (const OpTimesLC< Scalar, Node1 > &x1, const OpTimesLC< Scalar, Node2 > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, Thyra::ConstVector<
Scalar >, LC2< Scalar, Node1,
Node2 > > 
operator+ (const Thyra::ConstVector< Scalar > &x1, const LC2< Scalar, Node1, Node2 > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, Thyra::ConstVector<
Scalar >, LC2< Scalar, Node1,
Node2 > > 
operator- (const Thyra::ConstVector< Scalar > &x1, const LC2< Scalar, Node1, Node2 > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, Thyra::ConstVector<
Scalar > > 
operator+ (const LC2< Scalar, Node1, Node2 > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar, class Node1, class Node2>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, Thyra::ConstVector<
Scalar > > 
operator- (const LC2< Scalar, Node1, Node2 > &x1, const Thyra::ConstVector< Scalar > &x2)
template<class Scalar, class Node0, class Node1, class Node2>
LC2< Scalar, OpTimesLC< Scalar,
Node0 >, LC2< Scalar, Node1,
Node2 > > 
operator+ (const OpTimesLC< Scalar, Node0 > &x1, const LC2< Scalar, Node1, Node2 > &x2)
template<class Scalar, class Node0, class Node1, class Node2>
LC2< Scalar, OpTimesLC< Scalar,
Node0 >, LC2< Scalar, Node1,
Node2 > > 
operator- (const OpTimesLC< Scalar, Node0 > &x1, const LC2< Scalar, Node1, Node2 > &x2)
template<class Scalar, class Node1, class Node2, class Node3>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, OpTimesLC<
Scalar, Node3 > > 
operator+ (const LC2< Scalar, Node1, Node2 > &x1, const OpTimesLC< Scalar, Node3 > &x2)
template<class Scalar, class Node1, class Node2, class Node3>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, OpTimesLC<
Scalar, Node3 > > 
operator- (const LC2< Scalar, Node1, Node2 > &x1, const OpTimesLC< Scalar, Node3 > &x2)
template<class Scalar, class Node1, class Node2, class Node3, class Node4>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, LC2< Scalar,
Node3, Node4 > > 
operator+ (const LC2< Scalar, Node1, Node2 > &x1, const LC2< Scalar, Node3, Node4 > &x2)
template<class Scalar, class Node1, class Node2, class Node3, class Node4>
LC2< Scalar, LC2< Scalar,
Node1, Node2 >, LC2< Scalar,
Node3, Node4 > > 
operator- (const LC2< Scalar, Node1, Node2 > &x1, const LC2< Scalar, Node3, Node4 > &x2)
template<class Scalar>
ConstLinearOperator< Scalar > identity (const VectorSpace< Scalar > &space)
 Create an identity operator.
template<class Scalar>
ConstLinearOperator< Scalar > zero (const VectorSpace< Scalar > &range, const VectorSpace< Scalar > &domain)
 Create an identity operator.
template<class Scalar>
ConstLinearOperator< Scalar > operator * (const Scalar &a, const ConstLinearOperator< Scalar > &A)
template<class Scalar>
LinearOperator< Scalar > operator * (const Scalar &a, const LinearOperator< Scalar > &A)
template<class Scalar>
ConstLinearOperator< Scalar > operator * (const ConstLinearOperator< Scalar > &A, const ConstLinearOperator< Scalar > &B)
template<class Scalar>
LinearOperator< Scalar > operator * (const LinearOperator< Scalar > &A, const LinearOperator< Scalar > &B)
template<class Scalar>
ConstLinearOperator< Scalar > operator+ (const ConstLinearOperator< Scalar > &A, const ConstLinearOperator< Scalar > &B)
template<class Scalar>
LinearOperator< Scalar > operator+ (const LinearOperator< Scalar > &A, const LinearOperator< Scalar > &B)
template<class Scalar>
ConstLinearOperator< Scalar > block2x2 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A01, const ConstLinearOperator< Scalar > &A10, const ConstLinearOperator< Scalar > &A11)
template<class Scalar>
ConstLinearOperator< Scalar > block2x1 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A10)
template<class Scalar>
ConstLinearOperator< Scalar > block1x2 (const ConstLinearOperator< Scalar > &A00, const ConstLinearOperator< Scalar > &A01)
template<class Scalar>
LinearOperator< Scalar > block2x2 (const LinearOperator< Scalar > &A00, const LinearOperator< Scalar > &A01, const LinearOperator< Scalar > &A10, const LinearOperator< Scalar > &A11)
template<class Scalar>
LinearOperator< Scalar > block2x1 (const LinearOperator< Scalar > &A00, const LinearOperator< Scalar > &A10)
template<class Scalar>
LinearOperator< Scalar > block1x2 (const LinearOperator< Scalar > &A00, const LinearOperator< Scalar > &A01)
template<class Scalar>
Thyra::ConstLinearOperator<
Scalar > 
identity (const VectorSpace< Scalar > &space)
 Create an identity operator.
template<class Scalar>
Thyra::ConstLinearOperator<
Scalar > 
zero (const VectorSpace< Scalar > &range, const VectorSpace< Scalar > &domain)
 Create an identity operator.
template<class Scalar>
void norms (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector natural norm.
template<class Scalar, class NormOp>
void reductions (const MultiVectorBase< Scalar > &V, const NormOp &op, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector reductions.
template<class Scalar>
void dots (const MultiVectorBase< Scalar > &V1, const MultiVectorBase< Scalar > &V2, const ArrayView< Scalar > &dots)
 Multi-vector dot product.
template<class Scalar>
void sums (const MultiVectorBase< Scalar > &V, const ArrayView< Scalar > &sums)
 Multi-vector column sum.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_1 (const MultiVectorBase< Scalar > &V)
 Take the induced matrix one norm of a multi-vector.
template<class Scalar>
void scale (Scalar alpha, const Ptr< MultiVectorBase< Scalar > > &V)
 V = alpha*V.
template<class Scalar>
void scaleUpdate (const VectorBase< Scalar > &a, const MultiVectorBase< Scalar > &U, const Ptr< MultiVectorBase< Scalar > > &V)
 A*U + V -> V (where A is a diagonal matrix with diagonal a).
template<class Scalar>
void assign (const Ptr< MultiVectorBase< Scalar > > &V, Scalar alpha)
 V = alpha.
template<class Scalar>
void assign (const Ptr< MultiVectorBase< Scalar > > &V, const MultiVectorBase< Scalar > &U)
 V = U.
template<class Scalar>
void update (Scalar alpha, const MultiVectorBase< Scalar > &U, const Ptr< MultiVectorBase< Scalar > > &V)
 alpha*U + V -> V
template<class Scalar>
void update (const ArrayView< const Scalar > &alpha, Scalar beta, const MultiVectorBase< Scalar > &U, const Ptr< MultiVectorBase< Scalar > > &V)
 alpha[j]*beta*U(j) + V(j) - > V(j), for j = 0 ,,, U.domain()->dim()-1.
template<class Scalar>
void update (const MultiVectorBase< Scalar > &U, const ArrayView< const Scalar > &alpha, Scalar beta, const Ptr< MultiVectorBase< Scalar > > &V)
 U(j) + alpha[j]*beta*V(j) - > V(j), for j = 0 ,,, U.domain()->dim()-1.
template<class Scalar>
void linear_combination (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &X, const Scalar &beta, const Ptr< MultiVectorBase< Scalar > > &Y)
 Y.col(j)(i) = beta*Y.col(j)(i) + sum( alpha[k]*X[k].col(j)(i), k=0...m-1 ), for i = 0...Y->range()->dim()-1, j = 0...Y->domain()->dim()-1.
template<class Scalar>
void randomize (Scalar l, Scalar u, const Ptr< MultiVectorBase< Scalar > > &V)
 Generate a random multi-vector with elements uniformly distributed elements.
template<class Scalar>
void Vt_S (const Ptr< MultiVectorBase< Scalar > > &Z, const Scalar &alpha)
 Z(i,j) *= alpha, i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1.
template<class Scalar>
void Vp_S (const Ptr< MultiVectorBase< Scalar > > &Z, const Scalar &alpha)
 Z(i,j) += alpha, i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1.
template<class Scalar>
void Vp_V (const Ptr< MultiVectorBase< Scalar > > &Z, const MultiVectorBase< Scalar > &X)
 Z(i,j) += X(i,j), i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1.
template<class Scalar>
void V_VpV (const Ptr< MultiVectorBase< Scalar > > &Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Z(i,j) = X(i,j) + Y(i,j), i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1.
template<class Scalar>
void V_VmV (const Ptr< MultiVectorBase< Scalar > > &Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Z(i,j) = X(i,j) - Y(i,j), i = 0...Z->range()->dim()-1, j = 0...Z->domain()->dim()-1.
template<class Scalar>
void V_StVpV (const Ptr< MultiVectorBase< Scalar > > &Z, const Scalar &alpha, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Z(i,j) = alpha*X(i,j) + Y(i), i = 0...z->space()->dim()-1, , j = 0...Z->domain()->dim()-1.
template<class Scalar>
void norms_1 (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector one norm.
template<class Scalar>
void norms_2 (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector 2 (Euclidean) norm.
template<class Scalar>
void norms_inf (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector infinity norm.
template<class Scalar>
Array< typename ScalarTraits<
Scalar >::magnitudeType > 
norms_inf (const MultiVectorBase< Scalar > &V)
 Column-wise multi-vector infinity norm.
template<class Scalar>
void norms (const MultiVectorBase< Scalar > &V, typename ScalarTraits< Scalar >::magnitudeType norms_out[])
 Deprecated.
template<class Scalar, class NormOp>
void reductions (const MultiVectorBase< Scalar > &V, const NormOp &op, typename ScalarTraits< Scalar >::magnitudeType norms_out[])
 Deprecated.
template<class Scalar>
void norms_1 (const MultiVectorBase< Scalar > &V, typename ScalarTraits< Scalar >::magnitudeType norms_out[])
 Deprecated.
template<class Scalar>
void norms_2 (const MultiVectorBase< Scalar > &V, typename ScalarTraits< Scalar >::magnitudeType norms_out[])
 Deprecated.
template<class Scalar>
void norms_inf (const MultiVectorBase< Scalar > &V, typename ScalarTraits< Scalar >::magnitudeType norms_out[])
 Deprecated.
template<class Scalar>
void dots (const MultiVectorBase< Scalar > &V1, const MultiVectorBase< Scalar > &V2, Scalar dots_out[])
 Deprecated.
template<class Scalar>
void sums (const MultiVectorBase< Scalar > &V, Scalar sums_out[])
 Deprecated.
template<class Scalar>
void scale (Scalar alpha, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void scaleUpdate (const VectorBase< Scalar > &a, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void assign (MultiVectorBase< Scalar > *V, Scalar alpha)
 Deprecated.
template<class Scalar>
void assign (MultiVectorBase< Scalar > *V, const MultiVectorBase< Scalar > &U)
 Deprecated.
template<class Scalar>
void update (Scalar alpha, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void update (const Scalar alpha[], Scalar beta, const MultiVectorBase< Scalar > &U, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void update (const MultiVectorBase< Scalar > &U, Scalar alpha[], Scalar beta, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void linear_combination (const int m, const Scalar alpha[], const MultiVectorBase< Scalar > *X_in[], const Scalar &beta, MultiVectorBase< Scalar > *Y)
 Deprecated.
template<class Scalar>
void randomize (Scalar l, Scalar u, MultiVectorBase< Scalar > *V)
 Deprecated.
template<class Scalar>
void Vt_S (MultiVectorBase< Scalar > *Z, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void Vp_S (MultiVectorBase< Scalar > *Z, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void Vp_V (MultiVectorBase< Scalar > *Z, const MultiVectorBase< Scalar > &X)
 Deprecated.
template<class Scalar>
void V_VpV (MultiVectorBase< Scalar > *Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Deprecated.
template<class Scalar>
void V_VmV (MultiVectorBase< Scalar > *Z, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Deprecated.
template<class Scalar>
void V_StVpV (MultiVectorBase< Scalar > *Z, const Scalar &alpha, const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y)
 Deprecated.
template<class Scalar>
void norms_1 (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector one norm.
template<class Scalar>
void norms_2 (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector 2 (Euclidean) norm.
template<class Scalar>
void norms_inf (const MultiVectorBase< Scalar > &V, const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms)
 Column-wise multi-vector infinity norm.
template<class Scalar>
Teuchos::Array< typename Teuchos::ScalarTraits<
Scalar >::magnitudeType > 
norms_inf (const MultiVectorBase< Scalar > &V)
 Column-wise multi-vector infinity norm.
bool testBoolExpr (const std::string &boolExprName,const bool &boolExpr,const bool &boolExpected,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check a boolean result against expected result.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
relVectorErr (const VectorBase< Scalar > &v1, const VectorBase< Scalar > &v2)
 Return relative error of two vectors.
template<class Scalar1, class Scalar2, class ScalarMag>
bool testRelErrors (const int num_scalars,const std::string &v1_name,const Scalar1 v1[],const std::string &v2_name,const Scalar2 v2[],const std::string &maxRelErr_error_name,const ScalarMag &maxRelErr_error,const std::string &maxRelErr_warning_name,const ScalarMag &maxRelErr_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative errors in two scalar arays.
template<class Scalar>
bool testRelNormDiffErr (const std::string &v1_name, const VectorBase< Scalar > &v1, const std::string &v2_name, const VectorBase< Scalar > &v2, const std::string &maxRelErr_error_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_error, const std::string &maxRelErr_warning_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_warning, std::ostream *out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::VERB_LOW, const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative errors in two vectors.
template<class Scalar>
bool testMaxErr (const std::string &error_name,const Scalar &error,const std::string &max_error_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_error,const std::string &max_warning_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check that an error is less than some error tolerence.
template<class Scalar>
bool testMaxErrors (const int num_scalars,const std::string &error_name,const Scalar error[],const std::string &max_error_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_error,const std::string &max_warning_name,const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &max_warning,std::ostream *out,const std::string &leadingIndent=std::string(""))
 Check that an array of errors is less than some error tolerence.
template<class Scalar>
std::ostream & operator<< (std::ostream &o, const VectorBase< Scalar > &v)
 Output operator to pretty print any Thyra::VectorBase object.
template<class Scalar>
std::ostream & operator<< (std::ostream &o, const LinearOpBase< Scalar > &M)
 Output operator to pretty print any Thyra::LinearOpBase object.
const std::string passfail (const bool result)
 
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
relErr (const Scalar &s1, const Scalar &s2)
 
template<class Scalar>
bool testRelErr (const std::string &v1_name, const Scalar &v1, const std::string &v2_name, const Scalar &v2, const std::string &maxRelErr_error_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_error, const std::string &maxRelErr_warning_name, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType &maxRelErr_warning, std::ostream *out, const std::string &leadingIndent=std::string(""))
 Compute, check and optionally print the relative error in two scalars.
void printTestResults (const bool result, const std::string &test_summary, const bool show_all_tests, bool *success, std::ostream *out)
 Print summary outputting for a test or just passed or failed.
void printTestResults (const bool result, const std::string &test_summary, const bool show_all_tests, bool *success, std::ostream *out)
 Print summary outputting for a test or just passed or failed.
template<class Scalar>
Scalar convertTo (const LCSign sign)
 Convert LCSign to a floating-point Scalar object.
template<class Scalar>
ConstVector< Scalar > toVector (const Converter< Scalar, ConstVector< Scalar > > &x)
 THYRA_UNARY_VECTOR_OP_DECL (copy, copyInto, assign,"copy")
 THYRA_UNARY_VECTOR_OP_DECL (abs, absInto, abs,"absolute value")
 THYRA_UNARY_VECTOR_OP_DECL (reciprocal, reciprocalInto, reciprocal,"reciprocal")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (norm, norm,"natural norm")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (norm1, norm_1,"1-norm")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (norm2, norm_2,"2-norm")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (normInf, norm_inf,"inf-norm")
 THYRA_UNARY_VECTOR_ROP_DECL (sum, sum,"sum of the elements")
 THYRA_BINARY_VECTOR_ROP_DECL (inner, scalarProd,"Inner or scalar product")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (max, max,"max element")
 THYRA_UNARY_VECTOR_ROP_MAG_DECL (min, min,"min element")
template<class Scalar>
void setToConstant (Vector< Scalar > &x, const Scalar &a)
template<class Scalar>
void zeroOut (Vector< Scalar > &x)
template<class Scalar>
Scalar maxloc (const Converter< Scalar, ConstVector< Scalar > > &x, Index &index)
template<class Scalar>
Scalar minloc (const Converter< Scalar, ConstVector< Scalar > > &x, Index &index)
template<class Scalar>
Scalar minloc (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &bound, Index &index)
template<class Scalar>
Scalar maxloc (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &bound, Index &index)
template<class Scalar>
void dotStarInto (const Converter< Scalar, ConstVector< Scalar > > &x, const Converter< Scalar, ConstVector< Scalar > > &y, Vector< Scalar > &result)
template<class Scalar>
Vector< Scalar > dotStar (const Converter< Scalar, ConstVector< Scalar > > &xIn, const Converter< Scalar, ConstVector< Scalar > > &y)
template<class Scalar>
void dotSlashInto (const Converter< Scalar, ConstVector< Scalar > > &x, const Converter< Scalar, ConstVector< Scalar > > &y, Vector< Scalar > &result)
template<class Scalar>
Vector< Scalar > dotSlash (const Converter< Scalar, ConstVector< Scalar > > &xIn, const Converter< Scalar, ConstVector< Scalar > > &y)
template<class Scalar>
void axpy (const Scalar &a, const Converter< Scalar, ConstVector< Scalar > > &xIn, Vector< Scalar > &y)
template<class Scalar>
void scale (Vector< Scalar > &x, const Scalar &a)
template<class Scalar>
void scaleInto (const Converter< Scalar, ConstVector< Scalar > > &x, const Scalar &alpha, Vector< Scalar > &result)
template<class Scalar>
std::ostream & operator<< (std::ostream &os, const ConstVector< Scalar > &v)
template<class Scalar>
Index dim (const ConstVector< Scalar > &x)
template<class Scalar>
VectorSpace< Scalar > space (const ConstVector< Scalar > &x)
template<class Scalar>
Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
productSpace (const Teuchos::Array< VectorSpace< Scalar > > &spaces)
template<class Scalar>
Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
productSpace (VectorSpace< Scalar > &s1)
template<class Scalar>
Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
productSpace (VectorSpace< Scalar > &s1, VectorSpace< Scalar > &s2)
template<class Scalar>
Teuchos::RCP< const VectorSpaceBase<
Scalar > > 
productSpace (VectorSpace< Scalar > &s1, VectorSpace< Scalar > &s2, VectorSpace< Scalar > &s3)
template<class Scalar>
int lowestLocallyOwnedIndex (const VectorSpace< Scalar > &s)
template<class Scalar>
int numLocalElements (const VectorSpace< Scalar > &s)
template<class Scalar>
bool isSPMD (const VectorSpace< Scalar > &s)
template<class Scalar>
bool indexIsLocal (const VectorSpace< Scalar > &s, Index i)
template<class Scalar>
Scalar sum (const VectorBase< Scalar > &v)
 Sum of vector elements: result = sum( v(i), i = 0...v.space()->dim()-1 ).
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_1 (const VectorBase< Scalar > &v)
 One (1) norm: result = ||v||1.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_2 (const VectorBase< Scalar > &v)
 Euclidean (2) norm: result = ||v||2.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_2 (const VectorBase< Scalar > &w, const VectorBase< Scalar > &v)
 Weighted Euclidean (2) norm: result = sqrt( sum( w(i)*conj(v(i))*v(i)) ).
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm_inf (const VectorBase< Scalar > &v_rhs)
 Infinity norm: result = ||v||inf.
template<class Scalar>
Scalar dot (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Dot product: result = conj(x)'*y.
template<class Scalar>
Scalar get_ele (const VectorBase< Scalar > &v, Index i)
 Get single element: result = v(i).
template<class Scalar>
void set_ele (Index i, Scalar alpha, const Ptr< VectorBase< Scalar > > &v)
 Set single element: v(i) = alpha.
template<class Scalar>
void put_scalar (const Scalar &alpha, const Ptr< VectorBase< Scalar > > &y)
 Assign all elements to a scalar: y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void copy (const VectorBase< Scalar > &x, const Ptr< VectorBase< Scalar > > &y)
 Vector assignment: y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void add_scalar (const Scalar &alpha, const Ptr< VectorBase< Scalar > > &y)
 Add a scalar to all elements: y(i) += alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void scale (const Scalar &alpha, const Ptr< VectorBase< Scalar > > &y)
 Scale all elements by a scalar: y(i) *= alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void abs (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
 Element-wise absolute value: y(i) = abs(x(i)), i = 0...y->space()->dim()-1.
template<class Scalar>
void reciprocal (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
 Element-wise reciprocal: y(i) = 1/x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_prod (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, const Ptr< VectorBase< Scalar > > &y)
 Element-wise product update: y(i) += alpha * x(i) * v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_conj_prod (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, const Ptr< VectorBase< Scalar > > &y)
 Element-wise conjugate product update: y(i) += alpha * conj(x(i)) * v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_StVtV (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v)
 Element-wise product update: y(i) += alpha * x(i) * v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_prod_update (const Scalar &alpha, const VectorBase< Scalar > &x, const Ptr< VectorBase< Scalar > > &y)
 Element-wise product update: y(i) *= alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vt_StV (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Element-wise product update: y(i) *= alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void ele_wise_divide (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, const Ptr< VectorBase< Scalar > > &y)
 Element-wise division update: y(i) += alpha * x(i) / v(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void linear_combination (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const VectorBase< Scalar > > > &x, const Scalar &beta, const Ptr< VectorBase< Scalar > > &y)
 Linear combination: y(i) = beta*y(i) + sum( alpha[k]*x[k](i), k=0...m-1 ), i = 0...y->space()->dim()-1.
template<class Scalar>
void seed_randomize (unsigned int s)
 Seed the random number generator used in randomize().
template<class Scalar>
void randomize (Scalar l, Scalar u, const Ptr< VectorBase< Scalar > > &v)
 Random vector generation: v(i) = rand(l,u), , i = 1...v->space()->dim().
template<class Scalar>
void assign (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha)
 Assign all elements to a scalar: y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void assign (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
 Vector assignment: y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_S (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha)
 Add a scalar to all elements: y(i) += alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void Vt_S (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha)
 Scale all elements by a scalar: y(i) *= alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void V_StV (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Assign scaled vector: y(i) = alpha * x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_StV (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha, const VectorBase< Scalar > &x)
 AXPY: y(i) = alpha * x(i) + y(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void Vp_V (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x, const Scalar &beta=Teuchos::ScalarTraits< Scalar >::one())
 y(i) = x(i) + beta*y(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void V_V (const Ptr< VectorBase< Scalar > > &y, const VectorBase< Scalar > &x)
 y(i) = x(i), i = 0...y->space()->dim()-1.
template<class Scalar>
void V_S (const Ptr< VectorBase< Scalar > > &y, const Scalar &alpha)
 y(i) = alpha, i = 0...y->space()->dim()-1.
template<class Scalar>
void V_VpV (const Ptr< VectorBase< Scalar > > &z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = x(i) + y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_VmV (const Ptr< VectorBase< Scalar > > &z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = x(i) - y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_StVpV (const Ptr< VectorBase< Scalar > > &z, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 z(i) = alpha*x(i) + y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_VpStV (const Ptr< VectorBase< Scalar > > &z, const VectorBase< Scalar > &x, const Scalar &alpha, const VectorBase< Scalar > &y)
 z(i) = x(i) + alpha*y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
void V_StVpStV (const Ptr< VectorBase< Scalar > > &z, const Scalar &alpha, const VectorBase< Scalar > &x, const Scalar &beta, const VectorBase< Scalar > &y)
 z(i) = alpha*x(i) + beta*y(i), i = 0...z->space()->dim()-1.
template<class Scalar>
Scalar min (const VectorBase< Scalar > &x)
 Min element: result = min{ x(i), i = 0...x.space()->dim()-1 } .
template<class Scalar>
void min (const VectorBase< Scalar > &x, const Ptr< Scalar > &maxEle, const Ptr< Index > &maxIndex)
 Min element and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) <= x(i) for all i = 0...x.space()->dim()-1.
template<class Scalar>
void minGreaterThanBound (const VectorBase< Scalar > &x, const Scalar &bound, const Ptr< Scalar > &minEle, const Ptr< Index > &minIndex)
 Minimum element greater than some bound and its index: Returns minEle = x(k) and minIndex = k such that x(k) <= x(i) for all i where x(i) > bound.
template<class Scalar>
Scalar max (const VectorBase< Scalar > &x)
 Max element: result = max{ x(i), i = 1...n } .
template<class Scalar>
void max (const VectorBase< Scalar > &x, const Ptr< Scalar > &maxEle, const Ptr< Index > &maxIndex)
 Max element and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) >= x(i) for i = 0...x.space()->dim()-1.
template<class Scalar>
void maxLessThanBound (const VectorBase< Scalar > &x, const Scalar &bound, const Ptr< Scalar > &maxEle, const Ptr< Index > &maxIndex)
 Max element less than bound and its index: Returns maxEle = x(k) and maxIndex = k such that x(k) >= x(i) for all i where x(i) < bound.
template<class Scalar>
Scalar scalarProd (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Scalar product result = <x,y>.
template<class Scalar>
Scalar inner (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Inner/Scalar product result = <x,y>.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm (const VectorBase< Scalar > &v)
 Natural norm: result = sqrt(<v,v>).
template<class Scalar>
void set_ele (Index i, Scalar alpha, VectorBase< Scalar > *v)
 Deprecated.
template<class Scalar>
void put_scalar (const Scalar &alpha, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void copy (const VectorBase< Scalar > &x, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void add_scalar (const Scalar &alpha, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void scale (const Scalar &alpha, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void abs (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void reciprocal (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void ele_wise_prod (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void ele_wise_conj_prod (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void Vp_StVtV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v)
 Deprecated.
template<class Scalar>
void ele_wise_prod_update (const Scalar &alpha, const VectorBase< Scalar > &x, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void Vt_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void ele_wise_divide (const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &v, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void linear_combination (const int m, const Scalar alpha_in[], const VectorBase< Scalar > *x_in[], const Scalar &beta, VectorBase< Scalar > *y)
 Deprecated.
template<class Scalar>
void randomize (Scalar l, Scalar u, VectorBase< Scalar > *v)
 Deprecated.
template<class Scalar>
void assign (VectorBase< Scalar > *y, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void assign (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void Vp_S (VectorBase< Scalar > *y, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void Vt_S (VectorBase< Scalar > *y, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void V_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void Vp_StV (VectorBase< Scalar > *y, const Scalar &alpha, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void Vp_V (VectorBase< Scalar > *y, const VectorBase< Scalar > &x, const Scalar &beta=Teuchos::ScalarTraits< Scalar >::one())
 Deprecated.
template<class Scalar>
void V_V (VectorBase< Scalar > *y, const VectorBase< Scalar > &x)
 Deprecated.
template<class Scalar>
void V_S (VectorBase< Scalar > *y, const Scalar &alpha)
 Deprecated.
template<class Scalar>
void V_VpV (VectorBase< Scalar > *z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Deprecated.
template<class Scalar>
void V_VmV (VectorBase< Scalar > *z, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Deprecated.
template<class Scalar>
void V_StVpV (VectorBase< Scalar > *z, const Scalar &alpha, const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Deprecated.
template<class Scalar>
void V_StVpStV (VectorBase< Scalar > *z, const Scalar &alpha, const VectorBase< Scalar > &x, const Scalar &beta, const VectorBase< Scalar > &y)
 Deprecated.
template<class Scalar>
void min (const VectorBase< Scalar > &x, Scalar *maxEle, Index *maxIndex)
 Deprecated.
template<class Scalar>
void minGreaterThanBound (const VectorBase< Scalar > &x, const Scalar &bound, Scalar *minEle, Index *minIndex)
 Deprecated.
template<class Scalar>
void max (const VectorBase< Scalar > &x, Scalar *maxEle, Index *maxIndex)
 Deprecated.
template<class Scalar>
void maxLessThanBound (const VectorBase< Scalar > &x, const Scalar &bound, Scalar *maxEle, Index *maxIndex)
 Deprecated.
template<class Scalar>
Scalar scalarProd (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Scalar product result = <x,y>.
template<class Scalar>
Scalar inner (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y)
 Inner/Scalar product result = <x,y>.
template<class Scalar>
Teuchos::ScalarTraits< Scalar
>::magnitudeType 
norm (const VectorBase< Scalar > &v)
 Natural norm: result = sqrt(<v,v>).
std::string Thyra_Version ()
 Print the version of Thyra.
template<class Scalar>
bool run_linear_op_with_solve_tests (const int n, const typename ScalarTraits< Scalar >::magnitudeType maxRelErr, const bool showAllTests, const bool dumpAll, FancyOStream &out)
 Main test driver that tests the LinearOpWithSolveBase interface and supporting software.
template<class Scalar>
bool run_std_ops_tests (const int n, const typename Teuchos::ScalarTraits< Scalar >::magnitudeType max_rel_err, const bool dumpAll, Teuchos::FancyOStream *out_arg)
 Main test driver that runs tests on all standard operators.
Teuchos::RCP< Thyra::EpetraLinearOpnonconstEpetraLinearOp ()
Teuchos::RCP< Thyra::EpetraLinearOppartialNonconstEpetraLinearOp (const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain, const RCP< Epetra_Operator > &op, EOpTransp opTrans, EApplyEpetraOpAs applyAs, EAdjointEpetraOp adjointSupport)
Teuchos::RCP< Thyra::EpetraLinearOpnonconstEpetraLinearOp (const RCP< Epetra_Operator > &op, EOpTransp opTrans, EApplyEpetraOpAs applyAs, EAdjointEpetraOp adjointSupport, const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain)
Teuchos::RCP< const Thyra::EpetraLinearOpepetraLinearOp (const RCP< const Epetra_Operator > &op, EOpTransp opTrans, EApplyEpetraOpAs applyAs, EAdjointEpetraOp adjointSupport, const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain)
Teuchos::RCP< Thyra::EpetraLinearOpnonconstEpetraLinearOp (const RCP< Epetra_Operator > &op, const std::string &label, EOpTransp opTrans, EApplyEpetraOpAs applyAs, EAdjointEpetraOp adjointSupport, const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain)
Teuchos::RCP< const Thyra::EpetraLinearOpepetraLinearOp (const RCP< const Epetra_Operator > &op, const std::string &label, EOpTransp opTrans, EApplyEpetraOpAs applyAs, EAdjointEpetraOp adjointSupport, const RCP< const SpmdVectorSpaceBase< double > > &range, const RCP< const SpmdVectorSpaceBase< double > > &domain)
Teuchos::RCP< const Thyra::LinearOpBase<
double > > 
makeEpetraWrapper (const ConstLinearOperator< double > &thyraOp)
Teuchos::RCP< const Teuchos::Comm<
Thyra::Index > > 
create_Comm (const RCP< const Epetra_Comm > &epetraComm)
 Given an Epetra_Comm object, return an equivalent Teuchos::Comm object.
Teuchos::RCP< const Thyra::VectorSpaceBase<
double > > 
create_VectorSpace (const RCP< const Epetra_Map > &epetra_map)
 Create an VectorSpaceBase object given an Epetra_Map object.
Teuchos::RCP< const Thyra::VectorSpaceBase<
double > > 
create_LocallyReplicatedVectorSpace (const RCP< const VectorSpaceBase< double > > &parentSpace, const int dim)
 Create a VectorSpaceBase object that creates locally replicated vector objects.
Teuchos::RCP< Thyra::VectorBase<
double > > 
create_Vector (const RCP< Epetra_Vector > &epetra_v, const RCP< const VectorSpaceBase< double > > &space)
 Create a non-const VectorBase object from a non-const Epetra_Vector object.
Teuchos::RCP< const Thyra::VectorBase<
double > > 
create_Vector (const RCP< const Epetra_Vector > &epetra_v, const RCP< const VectorSpaceBase< double > > &space)
 Create an const VectorBase wrapper object for a const Epetra_Vector object.
Teuchos::RCP< Thyra::MultiVectorBase<
double > > 
create_MultiVector (const RCP< Epetra_MultiVector > &epetra_mv, const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain=Teuchos::null)
 Create a non-const MultiVectorBase object from a non-const Epetra_MultiVector object.
Teuchos::RCP< const Thyra::MultiVectorBase<
double > > 
create_MultiVector (const RCP< const Epetra_MultiVector > &epetra_mv, const RCP< const VectorSpaceBase< double > > &range, const RCP< const VectorSpaceBase< double > > &domain=Teuchos::null)
 Create an const MultiVectorBase wrapper object for a const Epetra_MultiVector object.
Teuchos::RCP< Epetra_Vector > get_Epetra_Vector (const Epetra_Map &map, const RCP< VectorBase< double > > &v)
 Get a non-const Epetra_Vector view from a non-const VectorBase object if possible.
Teuchos::RCP< const Epetra_Vector > get_Epetra_Vector (const Epetra_Map &map, const RCP< const VectorBase< double > > &v)
 Get a const Epetra_Vector view from a const VectorBase object if possible.
Teuchos::RCP< Epetra_MultiVector > get_Epetra_MultiVector (const Epetra_Map &map, const RCP< MultiVectorBase< double > > &mv)
 Get a non-const Epetra_MultiVector view from a non-const MultiVectorBase object if possible.
Teuchos::RCP< const Epetra_MultiVector > get_Epetra_MultiVector (const Epetra_Map &map, const RCP< const MultiVectorBase< double > > &mv)
 Get a const Epetra_MultiVector view from a const MultiVectorBase object if possible.
Teuchos::RCP< Epetra_MultiVector > get_Epetra_MultiVector (const Epetra_Map &map, MultiVectorBase< double > &mv)
 Get a non-const Epetra_MultiVector view from a non-const MultiVectorBase object if possible where the client must maintain the memory of the input multivector.
Teuchos::RCP< const Epetra_MultiVector > get_Epetra_MultiVector (const Epetra_Map &map, const MultiVectorBase< double > &mv)
 Get a const Epetra_MultiVector view from a const MultiVectorBase object if possible where the client must maintain the memory of the input multivector.
const std::string toString (const EAdjointEpetraOp adjointEpetraOp)
 
const std::string toString (const EApplyEpetraOpAs applyEpetraOpAs)
 
Teuchos::RCP< Epetra_Operator > get_Epetra_Operator (LinearOpBase< double > &op)
 Get smart pointer to non-const Epetra_Operator object from reference to a non-const EpetraLinearOp accessed through its LinearOpBase interface.
Teuchos::RCP< const Epetra_Operator > get_Epetra_Operator (const LinearOpBase< double > &op)
 Get smart pointer to const Epetra_Operator object from reference to a const EpetraLinearOp accessed through its LinearOpBase interface.
Teuchos::RCP< Thyra::EpetraModelEvaluatorepetraModelEvaluator (const RCP< const EpetraExt::ModelEvaluator > &epetraModel, const RCP< LinearOpWithSolveFactoryBase< double > > &W_factory)
Thyra::ModelEvaluatorBase::EDerivativeMultiVectorOrientation convert (const EpetraExt::ModelEvaluator::EDerivativeMultiVectorOrientation &mvOrientation)
EpetraExt::ModelEvaluator::EDerivativeMultiVectorOrientation convert (const ModelEvaluatorBase::EDerivativeMultiVectorOrientation &mvOrientation)
Thyra::ModelEvaluatorBase::DerivativeProperties convert (const EpetraExt::ModelEvaluator::DerivativeProperties &derivativeProperties)
Thyra::ModelEvaluatorBase::DerivativeSupport convert (const EpetraExt::ModelEvaluator::DerivativeSupport &derivativeSupport)
EpetraExt::ModelEvaluator::Derivative convert (const ModelEvaluatorBase::Derivative< double > &derivative, const RCP< const Epetra_Map > &fnc_map, const RCP< const Epetra_Map > &var_map)
template<typename Ordinal, typename Packet>
RCP< const Teuchos::Comm<
Index > > 
create_Comm (const RCP< const Tpetra::Comm< Ordinal, Packet > > &tpetraComm)
 Given a Tpetra::Comm object, return an equivalent Teuchos::Comm>/tt> object.
template<class Ordinal, class Scalar>
RCP< const SpmdVectorSpaceDefaultBase<
Scalar > > 
create_VectorSpace (const RCP< const Tpetra::VectorSpace< Ordinal, Scalar > > &tpetra_vs)
 Concrete an SpmdVectorSpaceBase object given an Tpetra::VectorSpace object.
template<class Ordinal, class Scalar>
RCP< SpmdVectorBase< Scalar > > create_Vector (const RCP< Tpetra::Vector< Ordinal, Scalar > > &tpetra_v, const RCP< const SpmdVectorSpaceBase< Scalar > > &space=Teuchos::null)
 Create a non-const SpmdVectorBase object from a const> Tpetra::Vector object.
template<class Ordinal, class Scalar>
RCP< const SpmdVectorBase<
Scalar > > 
create_Vector (const RCP< const Tpetra::Vector< Ordinal, Scalar > > &tpetra_v, const RCP< const SpmdVectorSpaceBase< Scalar > > &space=Teuchos::null)
 Create an const SpmdVectorBase wrapper object for a const Tpetra::Vector object.
template<class Ordinal, class Scalar>
RCP< Tpetra::Vector< Ordinal,
Scalar > > 
get_Tpetra_Vector (const Tpetra::VectorSpace< Ordinal, Scalar > &tpetra_vs, const RCP< VectorBase< Scalar > > &v)
 Get a non-const Tpetra::Vector view from a non-const VectorBase object if possible.
template<class Ordinal, class Scalar>
RCP< const Tpetra::Vector<
Ordinal, Scalar > > 
get_Tpetra_Vector (const Tpetra::VectorSpace< Ordinal, Scalar > &tpetra_vs, const RCP< const VectorBase< Scalar > > &v)
 Get a const Tpetra::Vector view from a const VectorBase object if possible.
template<class Ordinal, class Scalar>
RCP< Tpetra::Operator< Ordinal,
Scalar > > 
get_Tpetra_Operator (LinearOpBase< Scalar > &op)
 Get smart pointer to non-const Tpetra::Operator object from reference to a non-const TpetraLinearOp accessed through its LinearOpBase interface.
template<class Ordinal, class Scalar>
RCP< const Tpetra::Operator<
Ordinal, Scalar > > 
get_Tpetra_Operator (const LinearOpBase< Scalar > &op)
 Get smart pointer to const Tpetra::Operator object from reference to a const TpetraLinearOp accessed through its LinearOpBase interface.
template<typename Ordinal, typename Packet>
RCP< const Teuchos::Comm<
Thyra::Index > > 
create_Comm (const RCP< const Tpetra::Comm< Ordinal, Packet > > &tpetraComm)
 Given a Tpetra::Comm object, return an equivalent Teuchos::Comm>/tt> object.
template<class Ordinal, class Scalar>
RCP< const Thyra::SpmdVectorSpaceDefaultBase<
Scalar > > 
create_VectorSpace (const RCP< const Tpetra::VectorSpace< Ordinal, Scalar > > &tpetra_vs)
 Concrete an SpmdVectorSpaceBase object given an Tpetra::VectorSpace object.
template<class Ordinal, class Scalar>
RCP< Thyra::SpmdVectorBase<
Scalar > > 
create_Vector (const RCP< Tpetra::Vector< Ordinal, Scalar > > &tpetra_v, const RCP< const Thyra::SpmdVectorSpaceBase< Scalar > > &space_in)
template<class Ordinal, class Scalar>
RCP< const Thyra::SpmdVectorBase<
Scalar > > 
create_Vector (const RCP< const Tpetra::Vector< Ordinal, Scalar > > &tpetra_v, const RCP< const Thyra::SpmdVectorSpaceBase< Scalar > > &space_in)
template<class Ordinal, class Scalar>
RCP< Tpetra::Vector< Ordinal,
Scalar > > 
get_Tpetra_Vector (const Tpetra::VectorSpace< Ordinal, Scalar > &tpetra_vs, const RCP< Thyra::VectorBase< Scalar > > &v)
template<class Ordinal, class Scalar>
RCP< const Tpetra::Vector<
Ordinal, Scalar > > 
get_Tpetra_Vector (const Tpetra::VectorSpace< Ordinal, Scalar > &tpetra_vs, const RCP< const Thyra::VectorBase< Scalar > > &v)
template<class Ordinal, class Scalar>
RCP< Tpetra::Operator< Ordinal,
Scalar > > 
get_Tpetra_Operator (Thyra::LinearOpBase< Scalar > &op)
 Get smart pointer to non-const Tpetra::Operator object from reference to a non-const TpetraLinearOp accessed through its LinearOpBase interface.
template<class Ordinal, class Scalar>
RCP< const Tpetra::Operator<
Ordinal, Scalar > > 
get_Tpetra_Operator (const Thyra::LinearOpBase< Scalar > &op)
 Get smart pointer to const Tpetra::Operator object from reference to a const TpetraLinearOp accessed through its LinearOpBase interface.
const char * toString (const EAdjointTpetraOp adjointTpetraOp)
 


Enumeration Type Documentation

enum Thyra::EThrowOnSolveFailure

Enumerator:
THROW_ON_SOLVE_FAILURE  Throw an exception if a solve fails to converge.
IGNORE_SOLVE_FAILURE  Don't throw an exception if a solve fails to converge.

Definition at line 41 of file Thyra_DefaultInverseLinearOp_decl.hpp.

enum Thyra::EM_VS

Enumerator:
VS_RANGE 
VS_DOMAIN 

Definition at line 105 of file Thyra_AssertOp.hpp.


Function Documentation

std::string Thyra::toString ( ModelEvaluatorBase::EInArgsMembers  arg  )  [inline]

Definition at line 777 of file Thyra_ModelEvaluatorBase_decl.hpp.

References Thyra::ModelEvaluatorBase::IN_ARG_alpha, Thyra::ModelEvaluatorBase::IN_ARG_beta, Thyra::ModelEvaluatorBase::IN_ARG_t, Thyra::ModelEvaluatorBase::IN_ARG_x, Thyra::ModelEvaluatorBase::IN_ARG_x_dot, Thyra::ModelEvaluatorBase::IN_ARG_x_dot_poly, and Thyra::ModelEvaluatorBase::IN_ARG_x_poly.

Referenced by Thyra::VectorDefaultBase< Scalar >::apply(), Thyra::DefaultInverseLinearOp< Scalar >::apply(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::applyTranspose(), assertOutArgsEvalObjects(), assertSupportsSolveMeasureType(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::TpetraLinearOp< Ordinal, Scalar >::describe(), Thyra::EpetraLinearOp::describe(), Thyra::DefaultScaledAdjointLinearOp< Scalar >::describe(), Thyra::DefaultScaledAdjointLinearOp< Scalar >::description(), Thyra::EuclideanLinearOpBase< RangeScalar, DomainScalar >::euclideanApplyTranspose(), get_mv(), operator<<(), run_composite_linear_ops_tests(), Thyra::DefaultBlockedLinearOp< Scalar >::setBlockSpaces(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTranspose(), toString(), Thyra::DefaultMultipliedLinearOp< Scalar >::validateOps(), and Thyra::DefaultAddedLinearOp< Scalar >::validateOps().

std::string Thyra::toString ( ModelEvaluatorBase::EOutArgsMembers  arg  )  [inline]

Definition at line 804 of file Thyra_ModelEvaluatorBase_decl.hpp.

References Thyra::ModelEvaluatorBase::OUT_ARG_f, Thyra::ModelEvaluatorBase::OUT_ARG_f_poly, Thyra::ModelEvaluatorBase::OUT_ARG_W, and Thyra::ModelEvaluatorBase::OUT_ARG_W_op.

std::string Thyra::toString ( ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation  )  [inline]

Definition at line 825 of file Thyra_ModelEvaluatorBase_decl.hpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, and Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW.

Thyra::ModelEvaluatorBase::EDerivativeMultiVectorOrientation Thyra::getOtherDerivativeMultiVectorOrientation ( ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation  )  [related]

Definition at line 845 of file Thyra_ModelEvaluatorBase_decl.hpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, and Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW.

template<class Scalar>
bool Thyra::solveSupports ( const LinearOpWithSolveBase< Scalar > &  A,
const EOpTransp  A_trans 
)

Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve or not..

Definition at line 525 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References CONJ_ELE, NONCONJ_ELE, NOTRANS, real_trans(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveSupportsConj(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTransposeSupportsConj(), and TRANS.

Referenced by Thyra::DefaultInverseLinearOp< Scalar >::opSupported(), Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsTrans(), Thyra::DefaultMultiVectorLinearOpWithSolve< Scalar >::solveSupportsTrans(), Thyra::DefaultBlockedTriangularLinearOpWithSolve< Scalar >::solveSupportsTrans(), and Thyra::DefaultAdjointLinearOpWithSolve< Scalar >::solveSupportsTrans().

template<class Scalar>
bool Thyra::solveSupportsSolveMeasureType ( const LinearOpWithSolveBase< Scalar > &  A,
const EOpTransp  A_trans,
const SolveMeasureType &  solveMeasureType 
)

Determine if a LinearOpWithSolveBase<Scalar> object supports a particular type of solve measure or not.

Definition at line 547 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References CONJ_ELE, NONCONJ_ELE, NOTRANS, real_trans(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveSupportsSolveMeasureType(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTransposeSupportsSolveMeasureType(), and TRANS.

Referenced by assertSupportsSolveMeasureType(), Thyra::DelayedLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType(), Thyra::DefaultMultiVectorLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType(), Thyra::DefaultBlockedTriangularLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType(), and Thyra::DefaultAdjointLinearOpWithSolve< Scalar >::solveSupportsSolveMeasureType().

template<class Scalar>
void Thyra::solve ( const LinearOpWithSolveBase< Scalar > &  M,
const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  B,
MultiVectorBase< Scalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< Scalar >  blockSolveCriteria[],
SolveStatus< Scalar >  blockSolveStatus[] 
)

Solve a set of linear systems with different convergence criteria targeted to different blocks.

Definition at line 572 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References NOTRANS, real_trans(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solve(), Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTranspose(), and transToConj().

Referenced by Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), externalPreconditionerReuseWithSolves(), main(), singleLinearSolve(), solve(), Thyra::LinearNonlinearSolver< Scalar >::solve(), Thyra::DelayedLinearOpWithSolve< Scalar >::solve(), Thyra::DefaultMultiVectorLinearOpWithSolve< Scalar >::solve(), Thyra::DefaultBlockedTriangularLinearOpWithSolve< Scalar >::solve(), Thyra::DefaultAdjointLinearOpWithSolve< Scalar >::solve(), Thyra::DampenedNewtonNonlinearSolver< Scalar >::solve(), RealComplexFFTLinearOp< RealScalar >::solve(), solveMajorChangeSolve(), solveNumericalChangeSolve(), and solveSmallNumericalChangeSolve().

template<class Scalar>
SolveStatus<Scalar> Thyra::solve ( const LinearOpWithSolveBase< Scalar > &  A,
const EOpTransp  A_trans,
const MultiVectorBase< Scalar > &  B,
MultiVectorBase< Scalar > *  X,
const SolveCriteria< Scalar > *  solveCriteria = NULL 
)

Solve a set of forward linear systems with a single set of tolerances and a single scalar type.

This function allows a single interface for accessing LinearOpWithSolveBase::solve() or LinearOpWithSolveBase::solveTranspose() for operators only templated on a single scalar type for the domain and the range.

See the implementation of this function for details.

Definition at line 605 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References NOTRANS, real_trans(), solve(), solveTranspose(), and transToConj().

template<class RangeScalar, class DomainScalar>
SolveStatus<typename LinearOpWithSolveBase<RangeScalar,DomainScalar>::PromotedScalar> Thyra::solve ( const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< RangeScalar > &  B,
MultiVectorBase< DomainScalar > *  X,
const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *  solveCriteria = NULL 
)

Solve a set of forward linear systems with a single set of tolerances.

See the implementation of this function for details.

Definition at line 627 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References Thyra::LinearOpBase< Scalar >::domain(), and Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solve().

template<class RangeScalar, class DomainScalar>
SolveStatus<typename LinearOpWithSolveBase<RangeScalar,DomainScalar>::PromotedScalar> Thyra::solveTranspose ( const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< DomainScalar > &  B,
MultiVectorBase< RangeScalar > *  X,
const SolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar > *  solveCriteria = NULL 
)

Solve a set of transpose linear systems with a single set of tolerances.

See the implementation of this function for details.

Definition at line 661 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References Thyra::LinearOpBase< Scalar >::domain(), and Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTranspose().

Referenced by Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), solve(), and RealComplexFFTLinearOp< RealScalar >::solveTranspose().

template<class RangeScalar, class DomainScalar>
void Thyra::solve ( const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< RangeScalar > &  B,
MultiVectorBase< DomainScalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveCriteria[] = NULL,
SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveStatus[] = NULL 
)

Solve a set of forward linear systems with two or more sets of tolerances.

See the implementation of this function for details.

Definition at line 694 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solve().

template<class RangeScalar, class DomainScalar>
void Thyra::solveTranspose ( const LinearOpWithSolveBase< RangeScalar, DomainScalar > &  A,
const EConj  conj,
const MultiVectorBase< DomainScalar > &  B,
MultiVectorBase< RangeScalar > *  X,
const int  numBlocks,
const BlockSolveCriteria< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveCriteria[] = NULL,
SolveStatus< typename LinearOpWithSolveBase< RangeScalar, DomainScalar >::PromotedScalar >  blockSolveStatus[] = NULL 
)

Solve a set of transpose linear systems with two or more sets of tolerances.

See the implementation of this function for details.

Definition at line 718 of file Thyra_LinearOpWithSolveBaseDecl.hpp.

References Thyra::LinearOpWithSolveBase< RangeScalar, DomainScalar >::solveTranspose().

const std::string Thyra::toString ( const ESolveMeasureNormType  solveMeasureNormType  )  [inline]

Definition at line 59 of file Thyra_SolveSupportTypes.hpp.

References SOLVE_MEASURE_NORM_INIT_RESIDUAL, SOLVE_MEASURE_NORM_RESIDUAL, SOLVE_MEASURE_NORM_RHS, SOLVE_MEASURE_NORM_SOLUTION, and SOLVE_MEASURE_ONE.

std::string Thyra::toString ( const SolveMeasureType &  solveMeasureType  )  [inline]

Definition at line 117 of file Thyra_SolveSupportTypes.hpp.

References Thyra::SolveMeasureType::denominator, Thyra::SolveMeasureType::numerator, and toString().

const std::string Thyra::toString ( const ESolveStatus  solveStatus  )  [inline]

Definition at line 197 of file Thyra_SolveSupportTypes.hpp.

References SOLVE_STATUS_CONVERGED, SOLVE_STATUS_UNCONVERGED, and SOLVE_STATUS_UNKNOWN.

template<class Scalar>
std::ostream& Thyra::operator<< ( std::ostream &  out_arg,
const SolveStatus< Scalar > &  solveStatus 
)

Print the solve status to a stream.

Definition at line 246 of file Thyra_SolveSupportTypes.hpp.

References toString().

template<class Scalar>
void Thyra::unwrap ( const LinearOpBase< Scalar > &  Op,
Scalar *  scalar,
EOpTransp transp,
const LinearOpBase< Scalar > **  origOp 
)

Extract the overallScalar, overallTransp and const origOp from a const LinearOpBase object.

Parameters:
Op [in] The input, possibly scaled and/or adjoined, linear operator
scalar [out] The overall scaling factor.
transp [out] The overall adjoint (transposition) enum.
origOp [out] The underlying, non-scaled and non-adjoined linear operator. This pointer returns a non-persisting relationship that is to be used and then immediately forgotten.
Preconditions:

Postconditions:

The purpose of this function is to strip off the ScaledAdjointLinearOpBase wrapper and get at the underlying linear operator for the purpose of further dynamic casting to some more derived interface.

The implementation of this function is not too complicated and is appropriate for study.

Definition at line 37 of file Thyra_ScaledAdjointLinearOpBase.hpp.

References Thyra::ScaledAdjointLinearOpBase< Scalar >::getOrigOp(), NOTRANS, Thyra::ScaledAdjointLinearOpBase< Scalar >::overallScalar(), and Thyra::ScaledAdjointLinearOpBase< Scalar >::overallTransp().

Referenced by Thyra::EpetraOperatorViewExtractorStd::getEpetraOpView(), Thyra::EpetraOperatorViewExtractorStd::isCompatible(), Thyra::EpetraExtDiagScalingTransformer::isCompatible(), run_composite_linear_ops_tests(), Thyra::EpetraExtDiagScalingTransformer::transform(), Thyra::EpetraExtDiagScaledMatProdTransformer::transform(), and Thyra::EpetraExtAddTransformer::transform().

template<class Scalar>
void Thyra::unwrap ( const Teuchos::RCP< const LinearOpBase< Scalar > > &  Op,
Scalar *  scalar,
EOpTransp transp,
Teuchos::RCP< const LinearOpBase< Scalar > > *  origOp 
)

Extract the overallScalar, overallTransp and Teuchos::RCP wrapped const origOp from a Teuchos::RCP wrapped const LinearOpBase object.

Parameters:
Op [in] The input, possibly scaled and/or adjoined, linear operator
scalar [out] The overall scaling factor.
transp [out] The overall adjoint (transposition) enum.
origOp [out] The underlying, non-scaled and non-adjoined linear operator. This pointer returns a non-persisting relationship that is to be used and then immediately forgotten.
Preconditions:

Postconditions:

The purpose of this function is to strip off the ScaledAdjointLinearOpBase wrapper and get at the underlying linear operator for the purpose of further dynamic casting to some more derived interface.

The implementation of this function is not too complicated and is appropriate for study.

Definition at line 66 of file Thyra_ScaledAdjointLinearOpBase.hpp.

References NOTRANS.

template<class Scalar>
void Thyra::apply ( const LinearOpBase< Scalar > &  M,
const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
const Ptr< MultiVectorBase< Scalar > > &  Y,
const Scalar  alpha,
const Scalar  beta 
)

Definition at line 101 of file Thyra_LinearOpBase.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::apply(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::applyTranspose(), NOTRANS, real_trans(), and transToConj().

Referenced by apply(), Thyra::DelayedLinearOpWithSolve< Scalar >::apply(), Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::apply(), Thyra::DefaultScaledAdjointLinearOp< Scalar >::apply(), Thyra::DefaultProductMultiVector< Scalar >::apply(), Thyra::DefaultMultiVectorLinearOpWithSolve< Scalar >::apply(), Thyra::DefaultMultipliedLinearOp< Scalar >::apply(), Thyra::DefaultBlockedTriangularLinearOpWithSolve< Scalar >::apply(), Thyra::DefaultBlockedLinearOp< Scalar >::apply(), Thyra::DefaultAdjointLinearOpWithSolve< Scalar >::apply(), Thyra::DefaultAddedLinearOp< Scalar >::apply(), RealComplexFFTLinearOp< RealScalar >::apply(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::assembleParamDeriv(), Thyra::LinearOpTester< Scalar >::check(), Thyra::SymmetricLinearOpTester< Scalar >::checkSymmetry(), Thyra::LinearOpTester< Scalar >::compare(), describeLinearOp(), Thyra::LinearOpScalarProd< Scalar >::euclideanApplyImpl(), Thyra::DefaultInverseModelEvaluator< Scalar >::evalModelImpl(), main(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::map_from_p_to_p_orig(), run1DFFTExample(), Thyra::LinearOpScalarProd< Scalar >::scalarProdsImpl(), sillyCgSolve(), sillyPowerMethod(), and ComplexFFTLinearOp< RealScalar >::solve().

template<class Scalar>
void Thyra::apply ( const LinearOpBase< Scalar > &  M,
const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
MultiVectorBase< Scalar > *  Y,
const Scalar  alpha = static_cast< Scalar >(1.0),
const Scalar  beta = static_cast< Scalar >(0.0) 
) [inline]

Deprecated.

Definition at line 645 of file Thyra_LinearOpBaseDecl.hpp.

References apply().

template<class Scalar>
bool Thyra::isFullyUninitialized ( const LinearOpBase< Scalar > &  M  )  [related]

Definition at line 553 of file Thyra_LinearOpBaseDecl.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), and Thyra::LinearOpBase< RangeScalar, DomainScalar >::range().

Referenced by main().

template<class Scalar>
bool Thyra::isPartiallyInitialized ( const LinearOpBase< Scalar > &  M  )  [related]

Definition at line 560 of file Thyra_LinearOpBaseDecl.hpp.

References CONJ, CONJTRANS, Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), NOTRANS, opSupported(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::range(), and TRANS.

Referenced by main().

template<class Scalar>
bool Thyra::isFullyInitialized ( const LinearOpBase< Scalar > &  M  )  [related]

Definition at line 575 of file Thyra_LinearOpBaseDecl.hpp.

References CONJ, CONJTRANS, Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), NOTRANS, opSupported(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::range(), and TRANS.

Referenced by main().

template<class Scalar>
bool Thyra::opSupported ( const LinearOpBase< Scalar > &  M,
EOpTransp  M_trans 
) [related]

Definition at line 591 of file Thyra_LinearOpBaseDecl.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::applySupports(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::applyTransposeSupports(), NOTRANS, real_trans(), and transToConj().

Referenced by isFullyInitialized(), isPartiallyInitialized(), Thyra::DelayedLinearOpWithSolve< Scalar >::opSupported(), Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::opSupported(), Thyra::DefaultScaledAdjointLinearOp< Scalar >::opSupported(), Thyra::DefaultMultiVectorLinearOpWithSolve< Scalar >::opSupported(), Thyra::DefaultMultipliedLinearOp< Scalar >::opSupported(), Thyra::DefaultBlockedTriangularLinearOpWithSolve< Scalar >::opSupported(), Thyra::DefaultBlockedLinearOp< Scalar >::opSupported(), Thyra::DefaultAdjointLinearOpWithSolve< Scalar >::opSupported(), and Thyra::DefaultAddedLinearOp< Scalar >::opSupported().

template<class RangeScalar, class DomainScalar>
void Thyra::apply ( const LinearOpBase< RangeScalar, DomainScalar > &  M,
const EConj  conj,
const MultiVectorBase< DomainScalar > &  X,
MultiVectorBase< RangeScalar > *  Y,
const RangeScalar  alpha,
const RangeScalar  beta 
) [related]

Definition at line 601 of file Thyra_LinearOpBaseDecl.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::apply().

template<class RangeScalar, class DomainScalar>
void Thyra::applyTranspose ( const LinearOpBase< RangeScalar, DomainScalar > &  M,
const EConj  conj,
const MultiVectorBase< RangeScalar > &  X,
MultiVectorBase< DomainScalar > *  Y,
const DomainScalar  alpha,
const DomainScalar  beta 
) [related]

Definition at line 616 of file Thyra_LinearOpBaseDecl.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::applyTranspose().

Referenced by RealComplexFFTLinearOp< RealScalar >::applyTranspose(), and Thyra::LinearOpTester< Scalar >::check().

void Thyra::apply ( const LinearOpBase< double > &  M,
const EOpTransp  M_trans,
const MultiVectorBase< double > &  X,
const Ptr< MultiVectorBase< double > > &  Y,
const double  alpha,
const double  beta 
) [related]

Definition at line 630 of file Thyra_LinearOpBaseDecl.hpp.

template<class Scalar>
void Thyra::apply ( const LinearOpBase< Scalar > &  M,
const EOpTransp  M_trans,
const MultiVectorBase< Scalar > &  X,
MultiVectorBase< Scalar > *  Y,
const Scalar  alpha,
const Scalar  beta 
) [inline]

Deprecated.

Definition at line 645 of file Thyra_LinearOpBaseDecl.hpp.

References apply().

template<class Scalar>
Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar> > Thyra::makeHaveOwnership ( const RCP< const VectorSpaceBase< Scalar > > &  vs_in  )  [related]

Definition at line 111 of file Thyra_VectorSpaceBase_def.hpp.

Referenced by createMember(), createMembers(), createMembersView(), and createMemberView().

template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<Scalar> > Thyra::createMember ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
const std::string &  label 
) [related]

Definition at line 127 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

Referenced by buildADOperator(), buildBDGOperator(), Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcDerivatives(), Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcVariations(), Thyra::VectorTester< Scalar >::check(), Thyra::VectorSpaceTester< Scalar >::check(), Thyra::VectorStdOpsTester< Scalar >::checkStdOps(), Thyra::VectorDefaultBase< Scalar >::clone_v(), Thyra::VectorSpace< Scalar >::createMember(), createMember(), describeLinearOp(), Thyra::DefaultStateEliminationModelEvaluator< Scalar >::evalModelImpl(), Thyra::DefaultInverseModelEvaluator< Scalar >::evalModelImpl(), exampleImplicitlyComposedLinearOperators(), externallyPreconditionedLinearSolveUseCases(), Thyra::DefaultProductVector< Scalar >::initialize(), Thyra::DefaultDiagonalLinearOp< Scalar >::initialize(), Thyra::DefaultColumnwiseMultiVector< Scalar >::initialize(), Thyra::DefaultClusteredSpmdProductVector< Scalar >::initialize(), main(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::map_from_p_to_p_orig(), nonExternallyPreconditionedLinearSolveUseCases(), Thyra::ParameterDrivenMultiVectorInput< Scalar >::readVector(), Thyra::MultiVectorFileIOBase< Scalar >::readVectorFromFile(), relVectorErr(), run1DFFTExample(), run_product_space_tests(), run_scalar_product_tests(), runCgSolveExample(), sillyCgSolve(), sillyPowerMethod(), Simple2DModelEvaluator< Scalar >::Simple2DModelEvaluator(), Thyra::LinearNonlinearSolver< Scalar >::solve(), Thyra::DampenedNewtonNonlinearSolver< Scalar >::solve(), testRelNormDiffErr(), TEUCHOS_UNIT_TEST(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::updateNominalValuesAndBounds(), and Thyra::Vector< Scalar >::Vector().

template<class Scalar>
Teuchos::RCP< Thyra::VectorBase<Scalar> > Thyra::createMember ( const VectorSpaceBase< Scalar > &  vs,
const std::string &  label 
) [related]

Definition at line 149 of file Thyra_VectorSpaceBase_def.hpp.

References createMember().

template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<Scalar> > Thyra::createMembers ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
int  numMembers,
const std::string &  label 
) [related]

Definition at line 159 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

Referenced by Thyra::DefaultMultipliedLinearOp< Scalar >::apply(), Thyra::DefaultInverseLinearOp< Scalar >::apply(), RealComplexFFTLinearOp< RealScalar >::apply(), RealComplexFFTLinearOp< RealScalar >::applyTranspose(), Thyra::VectorSpaceTester< Scalar >::check(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::LinearOpTester< Scalar >::check(), Thyra::MultiVectorStdOpsTester< Scalar >::checkStdOps(), Thyra::SymmetricLinearOpTester< Scalar >::checkSymmetry(), Thyra::MultiVectorDefaultBase< Scalar >::clone_mv(), Thyra::LinearOpTester< Scalar >::compare(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::create_deriv_wrt_p_orig(), create_DfDp_mv(), create_DgDp_mv(), create_DgDx_dot_mv(), Simple2DModelEvaluator< Scalar >::create_W_op(), Thyra::ModelEvaluatorDefaultBase< Scalar >::createDefaultLinearOp(), Thyra::VectorSpace< Scalar >::createMembers(), createMembers(), Thyra::DefaultMultiVectorProductVectorSpace< Scalar >::createMembers(), Thyra::DefaultClusteredSpmdProductVectorSpace< Scalar >::createMembers(), Thyra::LinearOpScalarProd< Scalar >::euclideanApplyImpl(), Thyra::ModelEvaluatorDefaultBase< Scalar >::evalModel(), exampleImplicitlyComposedLinearOperators(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::generateParameterBasisMatrix(), Thyra::DefaultProductMultiVector< Scalar >::initialize(), main(), Thyra::DefaultMultiVectorProductVector< Scalar >::multiVectorProductVector(), run_composite_linear_ops_tests(), run_linear_op_with_solve_tests(), Thyra::LinearOpScalarProd< Scalar >::scalarProdsImpl(), sillyModifiedGramSchmidt(), RealComplexFFTLinearOp< RealScalar >::solve(), RealComplexFFTLinearOp< RealScalar >::solveTranspose(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
Teuchos::RCP< Thyra::MultiVectorBase<Scalar> > Thyra::createMembers ( const VectorSpaceBase< Scalar > &  vs,
int  numMembers,
const std::string &  label 
) [related]

Definition at line 182 of file Thyra_VectorSpaceBase_def.hpp.

References createMembers().

template<class Scalar>
Teuchos::RCP<Thyra::VectorBase<Scalar> > Thyra::createMemberView ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
const RTOpPack::SubVectorView< Scalar > &  raw_v,
const std::string &  label 
) [related]

Definition at line 193 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

Referenced by createMemberView(), and main().

template<class Scalar>
Teuchos::RCP<Thyra::VectorBase<Scalar> > Thyra::createMemberView ( const VectorSpaceBase< Scalar > &  vs,
const RTOpPack::SubVectorView< Scalar > &  raw_v,
const std::string &  label 
) [related]

Definition at line 210 of file Thyra_VectorSpaceBase_def.hpp.

References createMemberView().

template<class Scalar>
Teuchos::RCP<const Thyra::VectorBase<Scalar> > Thyra::createMemberView ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
const RTOpPack::ConstSubVectorView< Scalar > &  raw_v,
const std::string &  label 
) [related]

Definition at line 222 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

template<class Scalar>
Teuchos::RCP<const Thyra::VectorBase<Scalar> > Thyra::createMemberView ( const VectorSpaceBase< Scalar > &  vs,
const RTOpPack::ConstSubVectorView< Scalar > &  raw_v,
const std::string &  label 
) [related]

Definition at line 240 of file Thyra_VectorSpaceBase_def.hpp.

References createMemberView().

template<class Scalar>
Teuchos::RCP<Thyra::MultiVectorBase<Scalar> > Thyra::createMembersView ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
const RTOpPack::SubMultiVectorView< Scalar > &  raw_mv,
const std::string &  label 
) [related]

Definition at line 252 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

Referenced by createMembersView(), and main().

template<class Scalar>
Teuchos::RCP<Thyra::MultiVectorBase<Scalar> > Thyra::createMembersView ( const VectorSpaceBase< Scalar > &  vs,
const RTOpPack::SubMultiVectorView< Scalar > &  raw_mv,
const std::string &  label 
) [related]

Definition at line 269 of file Thyra_VectorSpaceBase_def.hpp.

References createMembersView().

template<class Scalar>
Teuchos::RCP<const Thyra::MultiVectorBase<Scalar> > Thyra::createMembersView ( const RCP< const VectorSpaceBase< Scalar > > &  vs,
const RTOpPack::ConstSubMultiVectorView< Scalar > &  raw_mv,
const std::string &  label 
) [related]

Definition at line 281 of file Thyra_VectorSpaceBase_def.hpp.

References makeHaveOwnership().

template<class Scalar>
Teuchos::RCP<const Thyra::MultiVectorBase<Scalar> > Thyra::createMembersView ( const VectorSpaceBase< Scalar > &  vs,
const RTOpPack::ConstSubMultiVectorView< Scalar > &  raw_mv,
const std::string &  label 
) [related]

Definition at line 299 of file Thyra_VectorSpaceBase_def.hpp.

References createMembersView().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
VectorBase< Scalar > *  f 
)

Evaluate f(x).

Definition at line 795 of file Thyra_ModelEvaluatorHelpers.hpp.

Referenced by Thyra::DampenedNewtonNonlinearSolver< Scalar >::solve().

template<class Scalar>
void Thyra::eval_f_W ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
VectorBase< Scalar > *  f,
LinearOpWithSolveBase< Scalar > *  W 
)

Evaluate f(x) and W(x) = DfDx(x).

Definition at line 811 of file Thyra_ModelEvaluatorHelpers.hpp.

Referenced by Thyra::LinearNonlinearSolver< Scalar >::solve(), and Thyra::DampenedNewtonNonlinearSolver< Scalar >::solve().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
const Scalar &  t,
VectorBase< Scalar > *  f 
)

Evaluate f(x,t).

Definition at line 835 of file Thyra_ModelEvaluatorHelpers.hpp.

template<class Scalar>
void Thyra::eval_g ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const int  j,
const Ptr< VectorBase< Scalar > > &  g_j 
)

Evaluate g(j)(p)).

Definition at line 853 of file Thyra_ModelEvaluatorHelpers.hpp.

Referenced by eval_g().

template<class Scalar>
void Thyra::eval_g ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const int  j,
VectorBase< Scalar > *  g_j 
)

Deprecated .

Definition at line 213 of file Thyra_ModelEvaluatorHelpers.hpp.

References eval_g().

template<class Scalar>
void Thyra::eval_g ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const Scalar &  t,
const int  j,
VectorBase< Scalar > *  g_j 
)

Evaluate g(j)(p,t)).

Definition at line 871 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), and Thyra::ModelEvaluator< Scalar >::evalModel().

template<class Scalar>
void Thyra::eval_g_DgDp ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const int  j,
const Ptr< VectorBase< Scalar > > &  g_j,
const ModelEvaluatorBase::Derivative< Scalar > &  DgDp_j_l 
)

Evaluate g(j)(p)) and/or D(g)/D(p).

Definition at line 891 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::Derivative< Scalar >::isEmpty().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x_dot,
const VectorBase< Scalar > &  x,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
VectorBase< Scalar > *  f 
)

Evaluate f(x_dot,x,t).

Definition at line 915 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_f_W ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x_dot,
const VectorBase< Scalar > &  x,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
const Scalar &  alpha,
const Scalar &  beta,
VectorBase< Scalar > *  f,
LinearOpWithSolveBase< Scalar > *  W 
)

Evaluate f(x_dot,x,t) and W(x_dot,x,t,alpha,beta) = alpha*DfDx_dot(x_dot,x,t) + beta*DfDx(x_dot,x,t).

Definition at line 942 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_f_poly ( const ModelEvaluator< Scalar > &  model,
const Teuchos::Polynomial< VectorBase< Scalar > > &  x_poly,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
Teuchos::Polynomial< VectorBase< Scalar > > *  f_poly 
)

Definition at line 975 of file Thyra_ModelEvaluatorHelpers.hpp.

template<class Scalar>
void Thyra::eval_f_poly ( const ModelEvaluator< Scalar > &  model,
const Teuchos::Polynomial< VectorBase< Scalar > > &  x_dot_poly,
const VectorBase< Scalar > &  x_poly,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
Teuchos::Polynomial< VectorBase< Scalar > > *  f_poly 
)

Definition at line 1000 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
Teuchos::RCP<Thyra::ModelEvaluatorBase::InArgs<Scalar> > Thyra::clone ( const ModelEvaluatorBase::InArgs< Scalar > &  inArgs  )  [related]

Definition at line 310 of file Thyra_ModelEvaluatorHelpers.hpp.

template<class Scalar>
Thyra::ModelEvaluatorBase::Derivative<Scalar> Thyra::derivativeGradient ( const RCP< MultiVectorBase< Scalar > > &  grad  )  [related]

Definition at line 321 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_GRADIENT_FORM.

template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<Scalar> Thyra::create_DfDp_mv ( const ModelEvaluator< Scalar > &  model,
int  l,
ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation 
) [related]

Definition at line 334 of file Thyra_ModelEvaluatorHelpers.hpp.

References createMembers(), Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, Thyra::ModelEvaluator< Scalar >::get_f_space(), and Thyra::ModelEvaluator< Scalar >::get_p_space().

template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<Scalar> Thyra::create_DgDx_dot_mv ( const ModelEvaluator< Scalar > &  model,
int  j,
ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation 
) [related]

Definition at line 347 of file Thyra_ModelEvaluatorHelpers.hpp.

References createMembers(), Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW, Thyra::ModelEvaluator< Scalar >::get_g_space(), and Thyra::ModelEvaluator< Scalar >::get_x_space().

Referenced by create_DgDx_mv().

template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<Scalar> Thyra::create_DgDx_mv ( const ModelEvaluator< Scalar > &  model,
int  j,
ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation 
) [related]

Definition at line 376 of file Thyra_ModelEvaluatorHelpers.hpp.

References create_DgDx_dot_mv().

Referenced by Thyra::DefaultInverseModelEvaluator< Scalar >::evalModelImpl().

template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<Scalar> Thyra::create_DgDp_mv ( const ModelEvaluator< Scalar > &  model,
int  j,
int  l,
ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation 
) [related]

Definition at line 388 of file Thyra_ModelEvaluatorHelpers.hpp.

References createMembers(), Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW, Thyra::ModelEvaluator< Scalar >::get_g_space(), and Thyra::ModelEvaluator< Scalar >::get_p_space().

template<class Scalar>
Thyra::ModelEvaluatorBase::DerivativeMultiVector<Scalar> Thyra::get_dmv ( const ModelEvaluatorBase::Derivative< Scalar > &  deriv,
const std::string &  derivName 
) [related]

Definition at line 418 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluatorBase::Derivative< Scalar >::getDerivativeMultiVector(), and Thyra::ModelEvaluatorBase::Derivative< Scalar >::getLinearOp().

Referenced by Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcDerivatives().

template<class Scalar>
Teuchos::RCP<Thyra::MultiVectorBase<Scalar> > Thyra::get_mv ( const ModelEvaluatorBase::Derivative< Scalar > &  deriv,
const std::string &  derivName,
ModelEvaluatorBase::EDerivativeMultiVectorOrientation  orientation 
) [related]

Definition at line 433 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluatorBase::Derivative< Scalar >::getDerivativeMultiVector(), Thyra::ModelEvaluatorBase::Derivative< Scalar >::getLinearOp(), and toString().

Referenced by Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcDerivatives().

template<class Scalar>
void Thyra::assertDerivSpaces ( const std::string &  modelEvalDescription,
const ModelEvaluatorBase::Derivative< Scalar > &  deriv,
const std::string &  deriv_name,
const VectorSpaceBase< Scalar > &  fnc_space,
const std::string &  fnc_space_name,
const VectorSpaceBase< Scalar > &  var_space,
const std::string &  var_space_name 
) [related]

Definition at line 461 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW, Thyra::ModelEvaluatorBase::Derivative< Scalar >::getLinearOp(), Thyra::ModelEvaluatorBase::Derivative< Scalar >::getMultiVector(), Thyra::ModelEvaluatorBase::Derivative< Scalar >::getMultiVectorOrientation(), and THYRA_ASSERT_VEC_SPACES_NAMES.

Referenced by assertOutArgsEvalObjects().

template<class Scalar>
void Thyra::assertInArgsOutArgsSetup ( const std::string &  modelEvalDescription,
const ModelEvaluatorBase::InArgs< Scalar > &  inArgs,
const ModelEvaluatorBase::OutArgs< Scalar > &  outArgs 
) [related]

Definition at line 526 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluatorBase::IN_ARG_alpha, Thyra::ModelEvaluatorBase::IN_ARG_beta, Thyra::ModelEvaluatorBase::IN_ARG_t, Thyra::ModelEvaluatorBase::IN_ARG_x, Thyra::ModelEvaluatorBase::IN_ARG_x_dot, Thyra::ModelEvaluatorBase::OutArgs< Scalar >::modelEvalDescription(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::modelEvalDescription(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::Ng(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::Np(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::Np(), Thyra::ModelEvaluatorBase::OUT_ARG_DgDx, Thyra::ModelEvaluatorBase::OUT_ARG_DgDx_dot, Thyra::ModelEvaluatorBase::OUT_ARG_W, Thyra::ModelEvaluatorBase::OUT_ARG_W_op, Thyra::ModelEvaluatorBase::OutArgs< Scalar >::supports(), and Thyra::ModelEvaluatorBase::InArgs< Scalar >::supports().

template<class Scalar>
void Thyra::assertInArgsEvalObjects ( const ModelEvaluator< Scalar > &  model,
const ModelEvaluatorBase::InArgs< Scalar > &  inArgs 
) [related]

Definition at line 624 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::get_p(), Thyra::ModelEvaluator< Scalar >::get_p_space(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::get_x(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::get_x_dot(), Thyra::ModelEvaluator< Scalar >::get_x_space(), Thyra::ModelEvaluatorBase::IN_ARG_x, Thyra::ModelEvaluatorBase::IN_ARG_x_dot, Thyra::ModelEvaluatorBase::InArgs< Scalar >::Np(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::supports(), and THYRA_ASSERT_VEC_SPACES.

template<class Scalar>
void Thyra::assertOutArgsEvalObjects ( const ModelEvaluator< Scalar > &  model,
const ModelEvaluatorBase::OutArgs< Scalar > &  outArgs,
const ModelEvaluatorBase::InArgs< Scalar > *  inArgs 
) [related]

Definition at line 661 of file Thyra_ModelEvaluatorHelpers.hpp.

References assertDerivSpaces(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::get_beta(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_DfDp(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_DgDp(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_DgDx(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_DgDx_dot(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_f(), Thyra::ModelEvaluator< Scalar >::get_f_space(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_g(), Thyra::ModelEvaluator< Scalar >::get_g_space(), Thyra::ModelEvaluator< Scalar >::get_p_space(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_W(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::get_W_op(), Thyra::ModelEvaluator< Scalar >::get_x_space(), Thyra::ModelEvaluatorBase::IN_ARG_alpha, Thyra::ModelEvaluatorBase::IN_ARG_beta, Thyra::ModelEvaluatorBase::OutArgs< Scalar >::Ng(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::Np(), Thyra::ModelEvaluatorBase::OUT_ARG_DfDp, Thyra::ModelEvaluatorBase::OUT_ARG_DgDp, Thyra::ModelEvaluatorBase::OUT_ARG_DgDx, Thyra::ModelEvaluatorBase::OUT_ARG_DgDx_dot, Thyra::ModelEvaluatorBase::OUT_ARG_f, Thyra::ModelEvaluatorBase::OUT_ARG_W, Thyra::ModelEvaluatorBase::OUT_ARG_W_op, Thyra::ModelEvaluatorBase::InArgs< Scalar >::supports(), Thyra::ModelEvaluatorBase::OutArgs< Scalar >::supports(), THYRA_ASSERT_VEC_SPACES, toString(), and zero().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
VectorBase< Scalar > *  f 
)

Evaluate f(x).

Definition at line 795 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), and Thyra::ModelEvaluator< Scalar >::evalModel().

template<class Scalar>
void Thyra::eval_f_W ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
VectorBase< Scalar > *  f,
LinearOpWithSolveBase< Scalar > *  W 
)

Evaluate f(x) and W(x) = DfDx(x).

Definition at line 811 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), and Thyra::ModelEvaluator< Scalar >::evalModel().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x,
const Scalar &  t,
VectorBase< Scalar > *  f 
)

Evaluate f(x,t).

Definition at line 835 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_g ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const int  j,
const Ptr< VectorBase< Scalar > > &  g_j 
)

Evaluate g(j)(p)).

Definition at line 853 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), and Thyra::ModelEvaluator< Scalar >::evalModel().

template<class Scalar>
void Thyra::eval_g ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const Scalar &  t,
const int  j,
VectorBase< Scalar > *  g_j 
)

Evaluate g(j)(p,t)).

Definition at line 871 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), and Thyra::ModelEvaluator< Scalar >::evalModel().

template<class Scalar>
void Thyra::eval_g_DgDp ( const ModelEvaluator< Scalar > &  model,
const int  l,
const VectorBase< Scalar > &  p_l,
const int  j,
const Ptr< VectorBase< Scalar > > &  g_j,
const ModelEvaluatorBase::Derivative< Scalar > &  DgDp_j_l 
)

Evaluate g(j)(p)) and/or D(g)/D(p).

Definition at line 891 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::Derivative< Scalar >::isEmpty().

template<class Scalar>
void Thyra::eval_f ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x_dot,
const VectorBase< Scalar > &  x,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
VectorBase< Scalar > *  f 
)

Evaluate f(x_dot,x,t).

Definition at line 915 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_f_W ( const ModelEvaluator< Scalar > &  model,
const VectorBase< Scalar > &  x_dot,
const VectorBase< Scalar > &  x,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
const Scalar &  alpha,
const Scalar &  beta,
VectorBase< Scalar > *  f,
LinearOpWithSolveBase< Scalar > *  W 
)

Evaluate f(x_dot,x,t) and W(x_dot,x,t,alpha,beta) = alpha*DfDx_dot(x_dot,x,t) + beta*DfDx(x_dot,x,t).

Definition at line 942 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_f_poly ( const ModelEvaluator< Scalar > &  model,
const Teuchos::Polynomial< VectorBase< Scalar > > &  x_poly,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
Teuchos::Polynomial< VectorBase< Scalar > > *  f_poly 
)

Definition at line 975 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
void Thyra::eval_f_poly ( const ModelEvaluator< Scalar > &  model,
const Teuchos::Polynomial< VectorBase< Scalar > > &  x_dot_poly,
const VectorBase< Scalar > &  x_poly,
const typename ModelEvaluatorBase::InArgs< Scalar >::ScalarMag &  t,
Teuchos::Polynomial< VectorBase< Scalar > > *  f_poly 
)

Definition at line 1000 of file Thyra_ModelEvaluatorHelpers.hpp.

References Thyra::ModelEvaluator< Scalar >::createInArgs(), Thyra::ModelEvaluator< Scalar >::createOutArgs(), Thyra::ModelEvaluator< Scalar >::evalModel(), and Thyra::ModelEvaluatorBase::IN_ARG_t.

template<class Scalar>
RCP<LinearNonlinearSolver<Scalar> > Thyra::linearNonlinearSolver (  ) 

Nonmember constructor.

Definition at line 105 of file Thyra_LinearNonlinearSolver.hpp.

template<class Scalar>
RCP<DefaultAdjointLinearOpWithSolve<Scalar> > Thyra::defaultAdjointLinearOpWithSolve ( const RCP< const LinearOpWithSolveBase< Scalar > > &  lows,
const EOpTransp  transp 
)

Nonmember constructor.DefaultAdjointLinearOpWithSolve.

Definition at line 155 of file Thyra_DefaultAdjointLinearOpWithSolveDecl.hpp.

template<class Scalar>
RCP<DefaultAdjointLinearOpWithSolve<Scalar> > Thyra::defaultAdjointLinearOpWithSolveNonconst ( const RCP< LinearOpWithSolveBase< Scalar > > &  lows,
const EOpTransp  transp 
)

Nonmember constructor.DefaultAdjointLinearOpWithSolve.

Definition at line 172 of file Thyra_DefaultAdjointLinearOpWithSolveDecl.hpp.

template<class Scalar>
RCP<const LinearOpWithSolveBase<Scalar> > Thyra::adjointLows ( const RCP< const LinearOpWithSolveBase< Scalar > > &  lows  ) 

Nonmember constructor.DefaultAdjointLinearOpWithSolve.

Definition at line 189 of file Thyra_DefaultAdjointLinearOpWithSolveDecl.hpp.

References CONJTRANS.

Referenced by run_linear_op_with_solve_tests().

template<class Scalar>
RCP<LinearOpWithSolveBase<Scalar> > Thyra::nonconstAdjointLows ( const RCP< LinearOpWithSolveBase< Scalar > > &  lows  ) 

Nonmember constructor.DefaultAdjointLinearOpWithSolve.

Definition at line 201 of file Thyra_DefaultAdjointLinearOpWithSolveDecl.hpp.

References CONJTRANS.

template<class Scalar>
RCP<DefaultBlockedTriangularLinearOpWithSolveFactory<Scalar> > Thyra::defaultBlockedTriangularLinearOpWithSolveFactory ( const RCP< LinearOpWithSolveFactoryBase< Scalar > > &  lowsf  ) 

Nonmember constructor.

DefaultBlockedTriangularLinearOpWithSolveFactory

Definition at line 255 of file Thyra_DefaultBlockedTriangularLinearOpWithSolveFactoryDecl.hpp.

template<class Scalar>
RCP<DefaultBlockedTriangularLinearOpWithSolveFactory<Scalar> > Thyra::defaultBlockedTriangularLinearOpWithSolveFactory ( const RCP< const LinearOpWithSolveFactoryBase< Scalar > > &  lowsf  ) 

Nonmember constructor.

DefaultBlockedTriangularLinearOpWithSolveFactory

Definition at line 271 of file Thyra_DefaultBlockedTriangularLinearOpWithSolveFactoryDecl.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstInverse ( const Teuchos::RCP< LinearOpWithSolveBase< Scalar > > &  A,
const SolveCriteria< Scalar > *  fwdSolveCriteria,
const EThrowOnSolveFailure  throwOnFwdSolveFailure,
const SolveCriteria< Scalar > *  adjSolveCriteria,
const EThrowOnSolveFailure  throwOnAdjSolveFailure 
) [related]

Definition at line 365 of file Thyra_DefaultInverseLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::inverse ( const Teuchos::RCP< const LinearOpWithSolveBase< Scalar > > &  A,
const SolveCriteria< Scalar > *  fwdSolveCriteria,
const EThrowOnSolveFailure  throwOnFwdSolveFailure,
const SolveCriteria< Scalar > *  adjSolveCriteria,
const EThrowOnSolveFailure  throwOnAdjSolveFailure 
) [related]

Definition at line 383 of file Thyra_DefaultInverseLinearOp_def.hpp.

Referenced by run_linear_op_with_solve_tests().

RTOpPack::ETransp Thyra::convertToRTOpPackETransp ( const EOpTransp  transp  )  [inline]

Definition at line 43 of file Thyra_DefaultSerialDenseLinearOpWithSolveDecl.hpp.

References CONJ, RTOpPack::CONJTRANS, CONJTRANS, RTOpPack::NOTRANS, NOTRANS, RTOpPack::TRANS, and TRANS.

Referenced by Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::backsolve().

template<class Scalar>
RCP<DefaultSerialDenseLinearOpWithSolveFactory<Scalar> > Thyra::defaultSerialDenseLinearOpWithSolveFactory (  ) 

Nonmember constructor.

DefaultSerialDenseLinearOpWithSolveFactory

Definition at line 152 of file Thyra_DefaultSerialDenseLinearOpWithSolveFactoryDecl.hpp.

template<class Scalar>
void Thyra::assertSupportsSolveMeasureType ( const LinearOpWithSolveBase< Scalar > &  lows,
const EOpTransp  M_trans,
const SolveMeasureType &  solveMeasureType 
)

Assert that a LOWSB object supports a particular solve type.

This function will throw an excetion with a very good error message if the requested solve type is not supported.

Definition at line 63 of file Thyra_LinearOpWithSolveHelpers.hpp.

References Thyra::SolveMeasureType::denominator, Thyra::SolveMeasureType::numerator, solveSupportsSolveMeasureType(), and toString().

template<class Scalar>
void Thyra::assertSupportsSolveMeasureType ( const LinearOpWithSolveBase< Scalar > &  lows,
const EOpTransp  M_trans,
const SolveMeasureType &  solveMeasureType 
)

Assert that a LOWSB object supports a particular solve type.

This function will throw an excetion with a very good error message if the requested solve type is not supported.

Definition at line 63 of file Thyra_LinearOpWithSolveHelpers.hpp.

References Thyra::SolveMeasureType::denominator, Thyra::SolveMeasureType::numerator, solveSupportsSolveMeasureType(), and toString().

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
check_forward_default_default_  ,
true   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
check_forward_residual_default_  ,
true   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
check_adjoint_default_default_  ,
true   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
check_adjoint_residual_default_  ,
true   
)

Thyra::LOWST_DEFINE_MTD_STATIC_MEMBER ( ScalarMag  ,
warning_tol_default_  ,
1e-  6 
)

Thyra::LOWST_DEFINE_MTD_STATIC_MEMBER ( ScalarMag  ,
error_tol_default_  ,
1e-  5 
)

Thyra::LOWST_DEFINE_MTD_STATIC_MEMBER ( ScalarMag  ,
solve_tol_default_  ,
1e-  5 
)

Thyra::LOWST_DEFINE_MTD_STATIC_MEMBER ( ScalarMag  ,
slack_warning_tol_default_  ,
1e-  6 
)

Thyra::LOWST_DEFINE_MTD_STATIC_MEMBER ( ScalarMag  ,
slack_error_tol_default_  ,
1e-  5 
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( int  ,
num_random_vectors_default_  ,
 
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
show_all_tests_default_  ,
false   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( bool  ,
dump_all_default_  ,
false   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( int  ,
num_rhs_default_  ,
 
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( std::string  ,
AllSolveTol_name_  ,
"All Solve Tol"   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( std::string  ,
AllSlackWarningTol_name_  ,
"All Slack Warning Tol"   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( std::string  ,
AllSlackErrorTol_name_  ,
"All Slack Error Tol"   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( std::string  ,
ShowAllTests_name_  ,
"Show All Tests"   
)

Thyra::LOWST_DEFINE_RAW_STATIC_MEMBER ( std::string  ,
DumpAll_name_  ,
"Dump All"   
)

template<class Scalar>
void Thyra::initializePrec ( const PreconditionerFactoryBase< Scalar > &  precFactory,
const Teuchos::RCP< const LinearOpBase< Scalar > > &  fwdOp,
PreconditionerBase< Scalar > *  prec,
const ESupportSolveUse  supportSolveUse = SUPPORT_SOLVE_UNSPECIFIED 
)

Initialize a preconditioner from a forward linear operator.

Definition at line 44 of file Thyra_PreconditionerFactoryHelpers.hpp.

References Thyra::PreconditionerFactoryBase< RangeScalar, DomainScalar >::initializePrec(), and prec().

template<class Scalar>
void Thyra::uninitializePrec ( const PreconditionerFactoryBase< Scalar > &  precFactory,
PreconditionerBase< Scalar > *  prec,
Teuchos::RCP< const LinearOpBase< Scalar > > *  fwdOp = NULL,
ESupportSolveUse supportSolveUse = NULL 
)

Uninitialize a preconditioner and optionally extra what was used to create it.

Definition at line 59 of file Thyra_PreconditionerFactoryHelpers.hpp.

References prec(), and Thyra::PreconditionerFactoryBase< RangeScalar, DomainScalar >::uninitializePrec().

template<class Scalar>
Teuchos::RCP<PreconditionerBase<Scalar> > Thyra::prec ( const PreconditionerFactoryBase< Scalar > &  precFactory,
const Teuchos::RCP< const LinearOpBase< Scalar > > &  fwdOp,
const ESupportSolveUse  supportSolveUse = SUPPORT_SOLVE_UNSPECIFIED 
)

Create and initialize a preconditioner from a forward linear operator.

Definition at line 76 of file Thyra_PreconditionerFactoryHelpers.hpp.

References Thyra::PreconditionerFactoryBase< RangeScalar, DomainScalar >::createPrec(), and Thyra::PreconditionerFactoryBase< RangeScalar, DomainScalar >::initializePrec().

Referenced by Thyra::DelayedLinearOpWithSolve< Scalar >::initialize(), initializePrec(), initializePreconditionedOp(), Thyra::DelayedLinearOpWithSolveFactory< Scalar >::initializePreconditionedOp(), runTest(), runTests(), runVectorTests(), uninitializeOp(), Thyra::DiagonalEpetraLinearOpWithSolveFactory::uninitializeOp(), Thyra::DelayedLinearOpWithSolveFactory< Scalar >::uninitializeOp(), Thyra::DefaultSerialDenseLinearOpWithSolveFactory< Scalar >::uninitializeOp(), Thyra::DefaultBlockedTriangularLinearOpWithSolveFactory< Scalar >::uninitializeOp(), and uninitializePrec().

template<class Scalar>
dump_vec_spaces_t<Scalar> Thyra::dump_vec_spaces ( const Thyra::VectorSpaceBase< Scalar > &  vec_space1,
const std::string &  vec_space1_name,
const Thyra::VectorSpaceBase< Scalar > &  vec_space2,
const std::string &  vec_space2_name 
) [inline]

Definition at line 67 of file Thyra_AssertOp.hpp.

template<class Scalar>
std::ostream& Thyra::operator<< ( std::ostream &  o,
const dump_vec_spaces_t< Scalar > &  d 
)

Definition at line 86 of file Thyra_AssertOp.hpp.

template<class Scalar>
void Thyra::assertLinearOpPlusLinearOpNames ( const std::string &  funcName,
const LinearOpBase< Scalar > &  M1,
const EOpTransp  M1_trans_in,
const std::string &  M1_name,
const LinearOpBase< Scalar > &  M2,
const EOpTransp  M2_trans_in,
const std::string &  M2_name 
)

Definition at line 258 of file Thyra_AssertOp.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), NOTRANS, Thyra::LinearOpBase< RangeScalar, DomainScalar >::range(), real_trans(), and THYRA_ASSERT_VEC_SPACES_NAMES.

template<class Scalar>
void Thyra::assertLinearOpTimesLinearOpNames ( const std::string &  funcName,
const LinearOpBase< Scalar > &  M1,
const EOpTransp  M1_trans_in,
const std::string &  M1_name,
const LinearOpBase< Scalar > &  M2,
const EOpTransp  M2_trans_in,
const std::string &  M2_name 
)

Definition at line 297 of file Thyra_AssertOp.hpp.

References Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), NOTRANS, Thyra::LinearOpBase< RangeScalar, DomainScalar >::range(), real_trans(), THYRA_ASSERT_VEC_SPACES_NAMES, and TRANS.

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstAdd ( const RCP< LinearOpBase< Scalar > > &  A,
const RCP< LinearOpBase< Scalar > > &  B,
const std::string &  label 
) [related]

Definition at line 312 of file Thyra_DefaultAddedLinearOp.hpp.

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::add ( const RCP< const LinearOpBase< Scalar > > &  A,
const RCP< const LinearOpBase< Scalar > > &  B,
const std::string &  label 
) [related]

Definition at line 334 of file Thyra_DefaultAddedLinearOp.hpp.

Referenced by buildAddOperator(), exampleImplicitlyComposedLinearOperators(), and run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstSubtract ( const RCP< LinearOpBase< Scalar > > &  A,
const RCP< LinearOpBase< Scalar > > &  B,
const std::string &  label 
) [related]

Definition at line 356 of file Thyra_DefaultAddedLinearOp.hpp.

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::subtract ( const RCP< const LinearOpBase< Scalar > > &  A,
const RCP< const LinearOpBase< Scalar > > &  B,
const std::string &  label 
) [related]

Definition at line 380 of file Thyra_DefaultAddedLinearOp.hpp.

Referenced by exampleImplicitlyComposedLinearOperators(), and run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<Thyra::DefaultBlockedLinearOp<Scalar> > Thyra::defaultBlockedLinearOp (  )  [related]

Definition at line 711 of file Thyra_DefaultBlockedLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::block1x1 ( const RCP< const LinearOpBase< Scalar > > &  A00,
const std::string &  label 
)

Definition at line 719 of file Thyra_DefaultBlockedLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::block1x2 ( const RCP< const LinearOpBase< Scalar > > &  A00,
const RCP< const LinearOpBase< Scalar > > &  A01,
const std::string &  label 
)

Definition at line 737 of file Thyra_DefaultBlockedLinearOp_def.hpp.

Referenced by exampleImplicitlyComposedLinearOperators(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::block2x1 ( const RCP< const LinearOpBase< Scalar > > &  A00,
const RCP< const LinearOpBase< Scalar > > &  A10,
const std::string &  label 
)

Definition at line 757 of file Thyra_DefaultBlockedLinearOp_def.hpp.

Referenced by block1x2(), block2x1(), exampleImplicitlyComposedLinearOperators(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::block2x2 ( const RCP< const LinearOpBase< Scalar > > &  A00,
const RCP< const LinearOpBase< Scalar > > &  A01,
const RCP< const LinearOpBase< Scalar > > &  A10,
const RCP< const LinearOpBase< Scalar > > &  A11,
const std::string &  label 
)

Definition at line 777 of file Thyra_DefaultBlockedLinearOp_def.hpp.

Referenced by block2x2(), exampleImplicitlyComposedLinearOperators(), runTest(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstBlock1x1 ( const RCP< LinearOpBase< Scalar > > &  A00,
const std::string &  label 
)

Definition at line 801 of file Thyra_DefaultBlockedLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstBlock1x2 ( const RCP< LinearOpBase< Scalar > > &  A00,
const RCP< LinearOpBase< Scalar > > &  A01,
const std::string &  label 
)

Definition at line 819 of file Thyra_DefaultBlockedLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstBlock2x1 ( const RCP< LinearOpBase< Scalar > > &  A00,
const RCP< LinearOpBase< Scalar > > &  A10,
const std::string &  label 
)

Definition at line 839 of file Thyra_DefaultBlockedLinearOp_def.hpp.

Referenced by block1x2(), and block2x1().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstBlock2x2 ( const RCP< LinearOpBase< Scalar > > &  A00,
const RCP< LinearOpBase< Scalar > > &  A01,
const RCP< LinearOpBase< Scalar > > &  A10,
const RCP< LinearOpBase< Scalar > > &  A11,
const std::string &  label 
)

Definition at line 859 of file Thyra_DefaultBlockedLinearOp_def.hpp.

Referenced by block2x2().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::identity ( const Teuchos::RCP< const VectorSpaceBase< Scalar > > &  space,
const std::string &  label 
) [related]

Definition at line 142 of file Thyra_DefaultIdentityLinearOp.hpp.

References space().

Referenced by exampleImplicitlyComposedLinearOperators(), identity(), and run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstMultiply ( const RCP< LinearOpBase< Scalar > > &  A,
const RCP< LinearOpBase< Scalar > > &  B,
const std::string &  M_label 
) [related]

Definition at line 339 of file Thyra_DefaultMultipliedLinearOp_def.hpp.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::multiply ( const RCP< const LinearOpBase< Scalar > > &  A,
const RCP< const LinearOpBase< Scalar > > &  B,
const std::string &  M_label 
) [related]

Definition at line 356 of file Thyra_DefaultMultipliedLinearOp_def.hpp.

Referenced by buildADOperator(), buildBDGOperator(), buildBGOperator(), exampleImplicitlyComposedLinearOperators(), run_composite_linear_ops_tests(), runCgSolveExample(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::multiply ( const RCP< const LinearOpBase< Scalar > > &  A,
const RCP< const LinearOpBase< Scalar > > &  B,
const RCP< const LinearOpBase< Scalar > > &  C,
const std::string &  M_label 
) [related]

Definition at line 373 of file Thyra_DefaultMultipliedLinearOp_def.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::DefaultProductMultiVector<Scalar> > Thyra::defaultProductMultiVector (  )  [related]

Definition at line 715 of file Thyra_DefaultProductMultiVector_def.hpp.

template<class Scalar>
Teuchos::RCP<Thyra::DefaultProductMultiVector<Scalar> > Thyra::defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const int  numMembers 
) [related]

Definition at line 723 of file Thyra_DefaultProductMultiVector_def.hpp.

References productSpace().

template<class Scalar>
Teuchos::RCP<Thyra::DefaultProductMultiVector<Scalar> > Thyra::defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< MultiVectorBase< Scalar > > > &  multiVecs 
) [related]

Definition at line 736 of file Thyra_DefaultProductMultiVector_def.hpp.

References productSpace().

template<class Scalar>
Teuchos::RCP<Thyra::DefaultProductMultiVector<Scalar> > Thyra::defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &  multiVecs 
) [related]

Definition at line 750 of file Thyra_DefaultProductMultiVector_def.hpp.

References productSpace().

template<class Scalar>
Teuchos::RCP<const Thyra::ProductMultiVectorBase<Scalar> > Thyra::castOrCreateSingleBlockProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const RCP< const MultiVectorBase< Scalar > > &  mv 
) [related]

Definition at line 764 of file Thyra_DefaultProductMultiVector_def.hpp.

References productSpace().

template<class Scalar>
Teuchos::RCP<Thyra::ProductMultiVectorBase<Scalar> > Thyra::nonconstCastOrCreateSingleBlockProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const RCP< MultiVectorBase< Scalar > > &  mv 
) [related]

Definition at line 779 of file Thyra_DefaultProductMultiVector_def.hpp.

References productSpace().

template<class Scalar>
RCP< DefaultProductVector< Scalar > > Thyra::defaultProductVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const RCP< VectorBase< Scalar > >  vecs[] 
)

Deprecated.

Definition at line 319 of file Thyra_DefaultProductVector_decl.hpp.

References productSpace().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstScale ( const Scalar &  scalar,
const RCP< LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 632 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References NOTRANS.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::scale ( const Scalar &  scalar,
const RCP< const LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 652 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References NOTRANS.

Referenced by Thyra::DefaultZeroLinearOp< Scalar >::apply(), Thyra::DefaultInverseLinearOp< Scalar >::apply(), Thyra::DefaultBlockedLinearOp< Scalar >::apply(), buildADOperator(), buildBDGOperator(), buildBGOperator(), createScaledAdjointLinearOpWithSolve(), Thyra::TpetraLinearOp< Ordinal, Scalar >::euclideanApply(), Thyra::EpetraLinearOp::euclideanApply(), Thyra::OpTimesLC< Scalar, Node >::evalInto(), Thyra::DefaultMultiPeriodModelEvaluator< Scalar >::evalModelImpl(), exampleImplicitlyComposedLinearOperators(), Thyra::OpTimesLC< Scalar, Node >::formVector(), linear_combination(), run_composite_linear_ops_tests(), runCgSolveExample(), scale(), sillyModifiedGramSchmidt(), TEUCHOS_UNIT_TEST(), and Vt_S().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstAdjoint ( const RCP< LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 670 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References CONJTRANS.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::adjoint ( const RCP< const LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 689 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References CONJTRANS.

Referenced by buildBDGOperator(), buildBGOperator(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), createScaledAdjointLinearOpWithSolve(), exampleImplicitlyComposedLinearOperators(), run_composite_linear_ops_tests(), run_scalar_product_tests(), and runCgSolveExample().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstTranspose ( const RCP< LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 708 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References TRANS.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::transpose ( const RCP< const LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 727 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

References TRANS.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<Thyra::LinearOpBase<Scalar> > Thyra::nonconstScaleAndAdjoint ( const Scalar &  scalar,
const EOpTransp transp,
const RCP< LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 746 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::scaleAndAdjoint ( const Scalar &  scalar,
const EOpTransp transp,
const RCP< const LinearOpBase< Scalar > > &  Op,
const std::string &  label 
) [related]

Definition at line 765 of file Thyra_DefaultScaledAdjointLinearOp_decl.hpp.

Referenced by run_composite_linear_ops_tests().

template<class Scalar>
Teuchos::RCP<const Thyra::LinearOpBase<Scalar> > Thyra::zero ( const Teuchos::RCP< const VectorSpaceBase< Scalar > > &  range,
const Teuchos::RCP< const VectorSpaceBase< Scalar > > &  domain 
) [related]

Definition at line 142 of file Thyra_DefaultZeroLinearOp.hpp.

Referenced by Thyra::VectorDefaultBase< Scalar >::apply(), Thyra::DefaultInverseLinearOp< Scalar >::apply(), assertOutArgsEvalObjects(), Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcDerivatives(), Thyra::DirectionalFiniteDiffCalculator< Scalar >::calcVariations(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::VectorStdOpsTesterComparable< true, Scalar >::checkComparableStdOps(), Thyra::VectorStdOpsTester< Scalar >::checkStdOps(), describeLinearOp(), Thyra::VectorOpTester< Scalar >::dotStarTest(), Thyra::TpetraLinearOp< Ordinal, Scalar >::euclideanApply(), Thyra::SpmdMultiVectorBase< Scalar >::euclideanApply(), ExampleTridiagSpmdLinearOp< Scalar >::euclideanApply(), ExampleTridiagSerialLinearOp< Scalar >::euclideanApply(), Thyra::DefaultMultiPeriodModelEvaluator< Scalar >::evalModelImpl(), Thyra::DefaultInverseModelEvaluator< Scalar >::evalModelImpl(), externalPreconditionerReuseWithSolves(), Thyra::ModelEvaluatorBase::InArgs< Scalar >::InArgs(), main(), Thyra::VectorOpTester< Scalar >::overloadedUpdateTest(), Thyra::ParameterDrivenMultiVectorInput< Scalar >::readMultiVector(), run_composite_linear_ops_tests(), runCgSolveExample(), runPowerMethodExample(), Thyra::VectorOpTester< Scalar >::scalarMultTest(), Thyra::DefaultProductVectorSpace< Scalar >::scalarProd(), Thyra::DefaultProductVectorSpace< Scalar >::scalarProdsImpl(), scale(), Thyra::VectorOpTester< Scalar >::setElementUsingBracketTest(), silliestCgSolve(), sillyCgSolve(), Simple2DModelEvaluator< Scalar >::Simple2DModelEvaluator(), singleLinearSolve(), Thyra::LinearNonlinearSolver< Scalar >::solve(), Thyra::DefaultDiagonalLinearOpWithSolve< Scalar >::solve(), Thyra::DampenedNewtonNonlinearSolver< Scalar >::solve(), RealComplexFFTLinearOp< RealScalar >::solve(), Thyra::VectorOpTester< Scalar >::sumTest(), Thyra::DefaultScaledAdjointLinearOp< Scalar >::uninitialize(), Thyra::DefaultLumpedParameterModelEvaluator< Scalar >::updateNominalValuesAndBounds(), RealComplexFFTLinearOp< RealScalar >::updateReal(), V_StV(), V_StVpStV(), V_StVpV(), V_VmV(), V_VpStV(), V_VpV(), zero(), Thyra::LC2< Scalar, Node1, Node2 >::zero(), Thyra::OpTimesLC< Scalar, Node >::zero(), and zeroOut().

template<class RangeScalar, class DomainScalar>
void Thyra::describeLinearOp ( const LinearOpBase< RangeScalar, DomainScalar > &  A,
Teuchos::FancyOStream &  out_arg,
const Teuchos::EVerbosityLevel  verbLevel 
)

Basic implementation of a describe function for a linear operator.

Definition at line 40 of file Thyra_describeLinearOp.hpp.

References apply(), assign(), createMember(), Thyra::LinearOpBase< RangeScalar, DomainScalar >::domain(), NONCONJ_ELE, Thyra::LinearOpBase< RangeScalar, DomainScalar >::range(), set_ele(), and zero().

Referenced by Thyra::LinearOpDefaultBase< RangeScalar, DomainScalar >::describe().

template<class Scalar, class Node>
Thyra::Vector<Scalar> Thyra::formVector ( const OpTimesLC< Scalar, Node > &  lc  )  [inline]

Definition at line 122 of file Thyra_LinearCombinationDecl.hpp.

References Thyra::OpTimesLC< Scalar, Node >::formVector().

Referenced by Thyra::LC2< Scalar, Node1, Node2 >::formVector(), and Thyra::OpTimesLC< Scalar, Node >::formVector().

template<class Scalar, class Node1, class Node2>
Thyra::Vector<Scalar> Thyra::formVector ( const LC2< Scalar, Node1, Node2 > &  lc  )  [inline]

Definition at line 172 of file Thyra_LinearCombinationDecl.hpp.

References Thyra::LC2< Scalar, Node1, Node2 >::formVector().

template<class Scalar, class Node>
OpTimesLC<Scalar, Node> Thyra::operator * ( const Scalar &  alpha,
const OpTimesLC< Scalar, Node > &  x 
) [inline]

Definition at line 200 of file Thyra_LinearCombinationImpl.hpp.

References Thyra::OpTimesLC< Scalar, Node >::alpha(), Thyra::OpTimesLC< Scalar, Node >::node(), and Thyra::OpTimesLC< Scalar, Node >::op().

template<class Scalar, class Node>
OpTimesLC<Scalar, Node> Thyra::operator * ( const OpTimesLC< Scalar, Node > &  x,
const Scalar &  alpha 
) [inline]

Definition at line 209 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2>
OpTimesLC<Scalar, LC2<Scalar, Node1, Node2> > Thyra::operator * ( const Scalar &  alpha,
const LC2< Scalar, Node1, Node2 > &  x 
) [inline]

Definition at line 224 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2>
OpTimesLC<Scalar, LC2<Scalar, Node1, Node2> > Thyra::operator * ( const LC2< Scalar, Node1, Node2 > &  x,
const Scalar &  alpha 
) [inline]

Definition at line 233 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar>
OpTimesLC<Scalar, Thyra::ConstVector<Scalar> > Thyra::operator * ( const ConstLinearOperator< Scalar > &  op,
const Thyra::ConstVector< Scalar > &  x 
) [inline]

Definition at line 249 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node>
OpTimesLC<Scalar, Node> Thyra::operator * ( const ConstLinearOperator< Scalar > &  op,
const OpTimesLC< Scalar, Node > &  x 
) [inline]

Definition at line 259 of file Thyra_LinearCombinationImpl.hpp.

References Thyra::OpTimesLC< Scalar, Node >::alpha(), Thyra::OpTimesLC< Scalar, Node >::node(), and Thyra::OpTimesLC< Scalar, Node >::op().

template<class Scalar, class Node1, class Node2>
OpTimesLC<Scalar, LC2<Scalar, Node1, Node2> > Thyra::operator * ( const ConstLinearOperator< Scalar > &  op,
const LC2< Scalar, Node1, Node2 > &  x 
) [inline]

Definition at line 278 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar>
LC2<Scalar, Thyra::ConstVector<Scalar>, Thyra::ConstVector<Scalar> > Thyra::operator+ ( const Thyra::ConstVector< Scalar > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 294 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar>
LC2<Scalar, Thyra::ConstVector<Scalar>, Thyra::ConstVector<Scalar> > Thyra::operator- ( const Thyra::ConstVector< Scalar > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 303 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node>
LC2<Scalar, Thyra::ConstVector<Scalar>, OpTimesLC<Scalar, Node> > Thyra::operator+ ( const Thyra::ConstVector< Scalar > &  x1,
const OpTimesLC< Scalar, Node > &  x2 
) [inline]

Definition at line 318 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node>
LC2<Scalar, Thyra::ConstVector<Scalar>, OpTimesLC<Scalar, Node> > Thyra::operator- ( const Thyra::ConstVector< Scalar > &  x1,
const OpTimesLC< Scalar, Node > &  x2 
) [inline]

Definition at line 327 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node>
LC2<Scalar, OpTimesLC<Scalar, Node>, Thyra::ConstVector<Scalar> > Thyra::operator+ ( const OpTimesLC< Scalar, Node > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 337 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node>
LC2<Scalar, OpTimesLC<Scalar, Node>, Thyra::ConstVector<Scalar> > Thyra::operator- ( const OpTimesLC< Scalar, Node > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 346 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, OpTimesLC<Scalar, Node1>, OpTimesLC<Scalar, Node2> > Thyra::operator+ ( const OpTimesLC< Scalar, Node1 > &  x1,
const OpTimesLC< Scalar, Node2 > &  x2 
) [inline]

Definition at line 363 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, OpTimesLC<Scalar, Node1>, OpTimesLC<Scalar, Node2> > Thyra::operator- ( const OpTimesLC< Scalar, Node1 > &  x1,
const OpTimesLC< Scalar, Node2 > &  x2 
) [inline]

Definition at line 373 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, Thyra::ConstVector<Scalar>, LC2<Scalar, Node1, Node2> > Thyra::operator+ ( const Thyra::ConstVector< Scalar > &  x1,
const LC2< Scalar, Node1, Node2 > &  x2 
) [inline]

Definition at line 392 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, Thyra::ConstVector<Scalar>, LC2<Scalar, Node1, Node2> > Thyra::operator- ( const Thyra::ConstVector< Scalar > &  x1,
const LC2< Scalar, Node1, Node2 > &  x2 
) [inline]

Definition at line 401 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, LC2<Scalar, Node1, Node2>, Thyra::ConstVector<Scalar> > Thyra::operator+ ( const LC2< Scalar, Node1, Node2 > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 412 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2>
LC2<Scalar, LC2<Scalar, Node1, Node2>, Thyra::ConstVector<Scalar> > Thyra::operator- ( const LC2< Scalar, Node1, Node2 > &  x1,
const Thyra::ConstVector< Scalar > &  x2 
) [inline]

Definition at line 421 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node0, class Node1, class Node2>
LC2<Scalar, OpTimesLC<Scalar, Node0>, LC2<Scalar, Node1, Node2> > Thyra::operator+ ( const OpTimesLC< Scalar, Node0 > &  x1,
const LC2< Scalar, Node1, Node2 > &  x2 
) [inline]

Definition at line 439 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node0, class Node1, class Node2>
LC2<Scalar, OpTimesLC<Scalar, Node0>, LC2<Scalar, Node1, Node2> > Thyra::operator- ( const OpTimesLC< Scalar, Node0 > &  x1,
const LC2< Scalar, Node1, Node2 > &  x2 
) [inline]

Definition at line 449 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node1, class Node2, class Node3>
LC2<Scalar, LC2<Scalar, Node1, Node2>, OpTimesLC<Scalar, Node3> > Thyra::operator+ ( const LC2< Scalar, Node1, Node2 > &  x1,
const OpTimesLC< Scalar, Node3 > &  x2 
) [inline]

Definition at line 460 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2, class Node3>
LC2<Scalar, LC2<Scalar, Node1, Node2>, OpTimesLC<Scalar, Node3> > Thyra::operator- ( const LC2< Scalar, Node1, Node2 > &  x1,
const OpTimesLC< Scalar, Node3 > &  x2 
) [inline]

Definition at line 470 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar, class Node1, class Node2, class Node3, class Node4>
LC2<Scalar, LC2<Scalar, Node1, Node2>, LC2<Scalar, Node3, Node4> > Thyra::operator+ ( const LC2< Scalar, Node1, Node2 > &  x1,
const LC2< Scalar, Node3, Node4 > &  x2 
) [inline]

Definition at line 488 of file Thyra_LinearCombinationImpl.hpp.

template<class Scalar, class Node1, class Node2, class Node3, class Node4>
LC2<Scalar, LC2<Scalar, Node1, Node2>, LC2<Scalar, Node3, Node4> > Thyra::operator- ( const LC2< Scalar, Node1, Node2 > &  x1,
const LC2< Scalar, Node3, Node4 > &  x2 
) [inline]

Definition at line 499 of file Thyra_LinearCombinationImpl.hpp.

References LCSubtract.

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::identity ( const VectorSpace< Scalar > &  space  ) 

Create an identity operator.

Definition at line 253 of file Thyra_LinearOperatorImpl.hpp.

References identity(), and space().

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::zero ( const VectorSpace< Scalar > &  range,
const VectorSpace< Scalar > &  domain 
)

Create an identity operator.

Definition at line 260 of file Thyra_LinearOperatorImpl.hpp.

References zero().

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::operator * ( const Scalar &  a,
const ConstLinearOperator< Scalar > &  A 
) [inline]

Definition at line 150 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
LinearOperator<Scalar> Thyra::operator * ( const Scalar &  a,
const LinearOperator< Scalar > &  A 
) [inline]

Definition at line 158 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::operator * ( const ConstLinearOperator< Scalar > &  A,
const ConstLinearOperator< Scalar > &  B 
) [inline]

Definition at line 166 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
LinearOperator<Scalar> Thyra::operator * ( const LinearOperator< Scalar > &  A,
const LinearOperator< Scalar > &  B 
) [inline]

Definition at line 174 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::operator+ ( const ConstLinearOperator< Scalar > &  A,
const ConstLinearOperator< Scalar > &  B 
) [inline]

Definition at line 182 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
LinearOperator<Scalar> Thyra::operator+ ( const LinearOperator< Scalar > &  A,
const LinearOperator< Scalar > &  B 
) [inline]

Definition at line 190 of file Thyra_LinearOperatorImpl.hpp.

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::block2x2 ( const ConstLinearOperator< Scalar > &  A00,
const ConstLinearOperator< Scalar > &  A01,
const ConstLinearOperator< Scalar > &  A10,
const ConstLinearOperator< Scalar > &  A11 
) [inline]

Definition at line 198 of file Thyra_LinearOperatorImpl.hpp.

References block2x2().

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::block2x1 ( const ConstLinearOperator< Scalar > &  A00,
const ConstLinearOperator< Scalar > &  A10 
) [inline]

Definition at line 208 of file Thyra_LinearOperatorImpl.hpp.

References block2x1().

template<class Scalar>
ConstLinearOperator<Scalar> Thyra::block1x2 ( const ConstLinearOperator< Scalar > &  A00,
const ConstLinearOperator< Scalar > &  A01 
) [inline]

Definition at line 216 of file Thyra_LinearOperatorImpl.hpp.

References block2x1().

template<class Scalar>
LinearOperator<Scalar> Thyra::block2x2 ( const LinearOperator< Scalar > &  A00,
const LinearOperator< Scalar > &  A01,
const LinearOperator< Scalar > &  A10,
const LinearOperator< Scalar > &  A11 
) [inline]

Definition at line 224 of file Thyra_LinearOperatorImpl.hpp.

References nonconstBlock2x2().

template<class Scalar>
LinearOperator<Scalar> Thyra::block2x1 ( const LinearOperator< Scalar > &  A00,
const LinearOperator< Scalar > &  A10 
) [inline]

Definition at line 234 of file Thyra_LinearOperatorImpl.hpp.

References nonconstBlock2x1().

template<class Scalar>
LinearOperator<Scalar> Thyra::block1x2 ( const LinearOperator< Scalar > &  A00,
const LinearOperator< Scalar > &  A01 
) [inline]

Definition at line 242 of file Thyra_LinearOperatorImpl.hpp.

References nonconstBlock2x1().

template<class Scalar>
Thyra::ConstLinearOperator<Scalar> Thyra::identity ( const VectorSpace< Scalar > &  space  ) 

Create an identity operator.

Definition at line 253 of file Thyra_LinearOperatorImpl.hpp.

References identity(), and space().

template<class Scalar>
Thyra::ConstLinearOperator<Scalar> Thyra::zero ( const VectorSpace< Scalar > &  range,
const VectorSpace< Scalar > &  domain 
)

Create an identity operator.

Definition at line 260 of file Thyra_LinearOperatorImpl.hpp.

References zero().

void Thyra::printTestResults ( const bool  result,
const std::string &  test_summary,
const bool  show_all_tests,
bool *  success,
std::ostream *  out 
) [inline]

Print summary outputting for a test or just passed or failed.

Parameters:
result [in] Bool for of the test was successful or unsuccessful.
test_summary [in] The summary of the test that was just completed.
show_all_tests [in] Bool for if the test summary should be shown even if the test passed.
success [out] Update of the success bool.
out [out] Stream where output will be sent if *out!=NULL.
Preconditions:

Preconditions:

Just look at the definition of this function to see what it does.

Definition at line 263 of file Thyra_TestingToolsDecl.hpp.

Referenced by Thyra::VectorTester< Scalar >::check(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::LinearOpTester< Scalar >::check(), and Thyra::LinearOpTester< Scalar >::compare().

void Thyra::printTestResults ( const bool  result,
const std::string &  test_summary,
const bool  show_all_tests,
bool *  success,
std::ostream *  out 
) [inline]

Print summary outputting for a test or just passed or failed.

Parameters:
result [in] Bool for of the test was successful or unsuccessful.
test_summary [in] The summary of the test that was just completed.
show_all_tests [in] Bool for if the test summary should be shown even if the test passed.
success [out] Update of the success bool.
out [out] Stream where output will be sent if *out!=NULL.
Preconditions:

Preconditions:

Just look at the definition of this function to see what it does.

Definition at line 263 of file Thyra_TestingToolsDecl.hpp.

Referenced by Thyra::LinearOpTester< Scalar >::check(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::VectorTester< Scalar >::check(), and Thyra::LinearOpTester< Scalar >::compare().

template<class Scalar>
ConstVector<Scalar> Thyra::toVector ( const Converter< Scalar, ConstVector< Scalar > > &  x  )  [inline]

Definition at line 192 of file Thyra_VectorDecl.hpp.

Referenced by dotSlash(), dotSlashInto(), dotStar(), dotStarInto(), maxloc(), and minloc().

Thyra::THYRA_UNARY_VECTOR_OP_DECL ( copy  ,
copyInto  ,
assign  ,
"copy"   
)

Thyra::THYRA_UNARY_VECTOR_OP_DECL ( abs  ,
absInto  ,
abs  ,
"absolute value"   
)

Thyra::THYRA_UNARY_VECTOR_OP_DECL ( reciprocal  ,
reciprocalInto  ,
reciprocal  ,
"reciprocal"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( norm  ,
norm  ,
"natural norm"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( norm1  ,
norm_1  ,
"1-norm"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( norm2  ,
norm_2  ,
"2-norm"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( normInf  ,
norm_inf  ,
"inf-norm"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_DECL ( sum  ,
sum  ,
"sum of the elements"   
)

Thyra::THYRA_BINARY_VECTOR_ROP_DECL ( inner  ,
scalarProd  ,
"Inner or scalar product"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( max  ,
max  ,
"max element"   
)

Thyra::THYRA_UNARY_VECTOR_ROP_MAG_DECL ( min  ,
min  ,
"min element"   
)

template<class Scalar>
void Thyra::setToConstant ( Vector< Scalar > &  x,
const Scalar &  a 
) [inline]

Definition at line 39 of file Thyra_VectorHandleOpsImpl.hpp.

References put_scalar().

Referenced by zeroOut().

template<class Scalar>
void Thyra::zeroOut ( Vector< Scalar > &  x  )  [inline]

Definition at line 45 of file Thyra_VectorHandleOpsImpl.hpp.

References setToConstant(), and zero().

Referenced by Thyra::EpetraOperatorWrapper::Apply(), dotSlashInto(), dotStarInto(), runTest(), and Thyra::VectorOpTester< Scalar >::setElementUsingBracketTest().

template<class Scalar>
Scalar Thyra::maxloc ( const Converter< Scalar, ConstVector< Scalar > > &  x,
Index index 
) [related]

Definition at line 71 of file Thyra_VectorHandleOpsImpl.hpp.

References max(), and toVector().

Referenced by Thyra::VectorOpTester< Scalar >::setElementUsingBracketTest().

template<class Scalar>
Scalar Thyra::minloc ( const Converter< Scalar, ConstVector< Scalar > > &  x,
Index index 
) [related]

Definition at line 81 of file Thyra_VectorHandleOpsImpl.hpp.

References min(), and toVector().

Referenced by Thyra::VectorOpTester< Scalar >::setElementUsingBracketTest().

template<class Scalar>
Scalar Thyra::minloc ( const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  bound,
Index index 
) [related]

Definition at line 91 of file Thyra_VectorHandleOpsImpl.hpp.

References minGreaterThanBound(), and toVector().

template<class Scalar>
Scalar Thyra::maxloc ( const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  bound,
Index index 
) [related]

Definition at line 102 of file Thyra_VectorHandleOpsImpl.hpp.

References maxLessThanBound(), and toVector().

template<class Scalar>
void Thyra::dotStarInto ( const Converter< Scalar, ConstVector< Scalar > > &  x,
const Converter< Scalar, ConstVector< Scalar > > &  y,
Vector< Scalar > &  result 
) [inline]

Definition at line 113 of file Thyra_VectorHandleOpsImpl.hpp.

References ele_wise_prod(), toVector(), and zeroOut().

Referenced by dotStar().

template<class Scalar>
Vector<Scalar> Thyra::dotStar ( const Converter< Scalar, ConstVector< Scalar > > &  xIn,
const Converter< Scalar, ConstVector< Scalar > > &  y 
) [related]

Definition at line 124 of file Thyra_VectorHandleOpsImpl.hpp.

References dotStarInto(), space(), and toVector().

Referenced by Thyra::VectorOpTester< Scalar >::dotStarTest().

template<class Scalar>
void Thyra::dotSlashInto ( const Converter< Scalar, ConstVector< Scalar > > &  x,
const Converter< Scalar, ConstVector< Scalar > > &  y,
Vector< Scalar > &  result 
) [inline]

Definition at line 134 of file Thyra_VectorHandleOpsImpl.hpp.

References ele_wise_divide(), toVector(), and zeroOut().

Referenced by dotSlash().

template<class Scalar>
Vector<Scalar> Thyra::dotSlash ( const Converter< Scalar, ConstVector< Scalar > > &  xIn,
const Converter< Scalar, ConstVector< Scalar > > &  y 
) [related]

Definition at line 145 of file Thyra_VectorHandleOpsImpl.hpp.

References dotSlashInto(), space(), and toVector().

Referenced by Thyra::VectorOpTester< Scalar >::dotStarTest().

template<class Scalar>
void Thyra::axpy ( const Scalar &  a,
const Converter< Scalar, ConstVector< Scalar > > &  xIn,
Vector< Scalar > &  y 
) [related]

Definition at line 155 of file Thyra_VectorHandleOpsImpl.hpp.

References p, and Vp_StV().

Referenced by Thyra::ConstVector< Scalar >::addInto(), and Thyra::OpTimesLC< Scalar, Node >::addInto().

template<class Scalar>
void Thyra::scale ( Vector< Scalar > &  x,
const Scalar &  a 
) [related]

Definition at line 166 of file Thyra_VectorHandleOpsImpl.hpp.

References p, and scale().

template<class Scalar>
void Thyra::scaleInto ( const Converter< Scalar, ConstVector< Scalar > > &  x,
const Scalar &  alpha,
Vector< Scalar > &  result 
) [related]

Definition at line 174 of file Thyra_VectorHandleOpsImpl.hpp.

References Thyra::Vector< Scalar >::scale().

template<class Scalar>
std::ostream& Thyra::operator<< ( std::ostream &  os,
const ConstVector< Scalar > &  v 
) [related]

Definition at line 74 of file Thyra_VectorImpl.hpp.

template<class Scalar>
Index Thyra::dim ( const ConstVector< Scalar > &  x  )  [related]

Definition at line 106 of file Thyra_VectorImpl.hpp.

References Thyra::ConstVector< Scalar >::space().

Referenced by apply_op_validate_input(), Thyra::MultiVectorBase< Scalar >::applyOp(), Thyra::VectorDefaultBase< Scalar >::description(), Thyra::DefaultSerialDenseLinearOpWithSolve< Scalar >::factorize(), main(), Thyra::DefaultSpmdMultiVector< Scalar >::nonconstColImpl(), Thyra::ParameterDrivenMultiVectorInput< Scalar >::readMultiVector(), and TEUCHOS_UNIT_TEST().

template<class Scalar>
VectorSpace<Scalar> Thyra::space ( const ConstVector< Scalar > &  x  )  [related]

Definition at line 112 of file Thyra_VectorImpl.hpp.

References Thyra::ConstVector< Scalar >::space().

Referenced by apply_op_validate_input(), Thyra::EpetraOperatorWrapper::copyEpetraIntoThyra(), Thyra::EpetraOperatorWrapper::copyThyraIntoEpetra(), create_Vector(), Thyra::VectorSpace< Scalar >::createMember(), Thyra::DefaultDiagonalLinearOp< Scalar >::DefaultDiagonalLinearOp(), Thyra::DefaultIdentityLinearOp< Scalar >::DefaultIdentityLinearOp(), dotSlash(), dotStar(), Thyra::VectorOpTester< Scalar >::dotStarTest(), identity(), Thyra::DefaultIdentityLinearOp< Scalar >::initialize(), Thyra::DefaultDiagonalLinearOp< Scalar >::initialize(), Thyra::DiagonalEpetraLinearOpWithSolveFactory::initializeOp(), Thyra::ListedMultiVectorRandomizer< Scalar >::isCompatible(), SymmetricComplexMultiVectorRandomizer< RealScalar >::isCompatible(), Thyra::DefaultMultiVectorProductVectorSpace< Scalar >::multiVectorProductVectorSpace(), Thyra::ConstVector< Scalar >::numBlocks(), Thyra::VectorOpTester< Scalar >::overloadedUpdateTest(), run_composite_linear_ops_tests(), runTest(), runTests(), runVectorTests(), Thyra::VectorOpTester< Scalar >::scalarMultTest(), Thyra::VectorOpTester< Scalar >::setElementUsingBracketTest(), silliestCgSolve(), sillyCgSolve(), and Thyra::VectorOpTester< Scalar >::sumTest().

template<class Scalar>
Teuchos::RCP<const VectorSpaceBase<Scalar> > Thyra::productSpace ( const Teuchos::Array< VectorSpace< Scalar > > &  spaces  )  [related]

Definition at line 143 of file Thyra_VectorSpaceImpl.hpp.

Referenced by castOrCreateSingleBlockProductMultiVector(), defaultProductMultiVector(), defaultProductVector(), Thyra::DefaultProductVector< Scalar >::defaultProductVector(), Thyra::DefaultMultiVectorProductVector< Scalar >::multiVectorProductVector(), nonconstCastOrCreateSingleBlockProductMultiVector(), and runVectorTests().

template<class Scalar>
Teuchos::RCP<const VectorSpaceBase<Scalar> > Thyra::productSpace ( VectorSpace< Scalar > &  s1  )  [related]

Definition at line 156 of file Thyra_VectorSpaceImpl.hpp.

template<class Scalar>
Teuchos::RCP<const VectorSpaceBase<Scalar> > Thyra::productSpace ( VectorSpace< Scalar > &  s1,
VectorSpace< Scalar > &  s2 
) [related]

Definition at line 164 of file Thyra_VectorSpaceImpl.hpp.

template<class Scalar>
Teuchos::RCP<const VectorSpaceBase<Scalar> > Thyra::productSpace ( VectorSpace< Scalar > &  s1,
VectorSpace< Scalar > &  s2,
VectorSpace< Scalar > &  s3 
) [related]

Definition at line 173 of file Thyra_VectorSpaceImpl.hpp.

template<class Scalar>
int Thyra::lowestLocallyOwnedIndex ( const VectorSpace< Scalar > &  s  )  [related]

Definition at line 181 of file Thyra_VectorSpaceImpl.hpp.

References isSPMD().

Referenced by Thyra::EpetraOperatorWrapper::copyEpetraIntoThyra(), Thyra::EpetraOperatorWrapper::copyThyraIntoEpetra(), and Thyra::EpetraOperatorWrapper::thyraVSToEpetraMap().

template<class Scalar>
int Thyra::numLocalElements ( const VectorSpace< Scalar > &  s  )  [related]

Definition at line 191 of file Thyra_VectorSpaceImpl.hpp.

References isSPMD().

Referenced by Thyra::EpetraOperatorWrapper::copyEpetraIntoThyra(), Thyra::EpetraOperatorWrapper::copyThyraIntoEpetra(), and Thyra::EpetraOperatorWrapper::thyraVSToEpetraMap().

template<class Scalar>
bool Thyra::isSPMD ( const VectorSpace< Scalar > &  s  )  [related]

Definition at line 201 of file Thyra_VectorSpaceImpl.hpp.

Referenced by Thyra::EpetraOperatorWrapper::copyEpetraIntoThyra(), Thyra::EpetraOperatorWrapper::copyThyraIntoEpetra(), Thyra::EpetraOperatorWrapper::getEpetraComm(), lowestLocallyOwnedIndex(), numLocalElements(), and Thyra::EpetraOperatorWrapper::thyraVSToEpetraMap().

template<class Scalar>
bool Thyra::indexIsLocal ( const VectorSpace< Scalar > &  s,
Index  i 
) [related]

Definition at line 208 of file Thyra_VectorSpaceImpl.hpp.

References STRIDE_TYPE_UNIT, and VIEW_TYPE_DIRECT.

std::string Thyra::Thyra_Version (  ) 

Print the version of Thyra.

Definition at line 32 of file Thyra_Version.cpp.

template<class Scalar>
bool Thyra::run_linear_op_with_solve_tests ( const int  n,
const typename ScalarTraits< Scalar >::magnitudeType  maxRelErr,
const bool  showAllTests,
const bool  dumpAll,
FancyOStream &  out 
)

Main test driver that tests the LinearOpWithSolveBase interface and supporting software.

Definition at line 56 of file test_linear_op_with_solve.cpp.

References adjointLows(), Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check(), Thyra::LinearOpTester< Scalar >::check(), Thyra::LinearOpTester< Scalar >::compare(), createMembers(), inverse(), Thyra::LinearOpTester< Scalar >::set_all_error_tol(), Thyra::LinearOpTester< Scalar >::set_all_warning_tol(), and Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::setParameterList().

Referenced by main().

template<class Scalar>
bool Thyra::run_std_ops_tests ( const int  n,
const typename Teuchos::ScalarTraits< Scalar >::magnitudeType  max_rel_err,
const bool  dumpAll,
Teuchos::FancyOStream *  out_arg 
)

Main test driver that runs tests on all standard operators.

Definition at line 45 of file test_std_ops.cpp.

References Thyra::MultiVectorStdOpsTester< Scalar >::checkStdOps(), and Thyra::VectorStdOpsTester< Scalar >::checkStdOps().

Referenced by main().

Teuchos::RCP<Thyra::EpetraLinearOp> Thyra::nonconstEpetraLinearOp (  )  [related]

Definition at line 615 of file Thyra_EpetraLinearOp.cpp.

Referenced by Thyra::EpetraExtDiagScalingTransformer::createOutputOp(), Thyra::EpetraExtDiagScaledMatProdTransformer::createOutputOp(), Thyra::EpetraExtAddTransformer::createOutputOp(), and main().

Teuchos::RCP<Thyra::EpetraLinearOp> Thyra::partialNonconstEpetraLinearOp ( const RCP< const VectorSpaceBase< double > > &  range,
const RCP< const VectorSpaceBase< double > > &  domain,
const RCP< Epetra_Operator > &  op,
EOpTransp  opTrans,
EApplyEpetraOpAs  applyAs,
EAdjointEpetraOp  adjointSupport 
) [related]

Definition at line 622 of file Thyra_EpetraLinearOp.cpp.

Referenced by Thyra::EpetraModelEvaluator::create_epetra_W_op(), and main().

Teuchos::RCP<Thyra::EpetraLinearOp> Thyra::nonconstEpetraLinearOp ( const RCP< Epetra_Operator > &  op,
EOpTransp  opTrans,
EApplyEpetraOpAs  applyAs,
EAdjointEpetraOp  adjointSupport,
const RCP< const VectorSpaceBase< double > > &  range,
const RCP< const VectorSpaceBase< double > > &  domain 
) [related]

Definition at line 640 of file Thyra_EpetraLinearOp.cpp.

Teuchos::RCP<const Thyra::EpetraLinearOp> Thyra::epetraLinearOp ( const RCP< const Epetra_Operator > &  op,
EOpTransp  opTrans,
EApplyEpetraOpAs  applyAs,
EAdjointEpetraOp  adjointSupport,
const RCP< const VectorSpaceBase< double > > &  range,
const RCP< const VectorSpaceBase< double > > &  domain 
) [related]

Definition at line 658 of file Thyra_EpetraLinearOp.cpp.

Referenced by main(), makeEpetraWrapper(), and TEUCHOS_UNIT_TEST().

Teuchos::RCP<Thyra::EpetraLinearOp> Thyra::nonconstEpetraLinearOp ( const RCP< Epetra_Operator > &  op,
const std::string &  label,
EOpTransp  opTrans,
EApplyEpetraOpAs  applyAs,
EAdjointEpetraOp  adjointSupport,
const RCP< const VectorSpaceBase< double > > &  range,
const RCP< const VectorSpaceBase< double > > &  domain 
) [related]

Definition at line 677 of file Thyra_EpetraLinearOp.cpp.

Teuchos::RCP<const Thyra::EpetraLinearOp> Thyra::epetraLinearOp ( const RCP< const Epetra_Operator > &  op,
const std::string &  label,
EOpTransp  opTrans,
EApplyEpetraOpAs  applyAs,
EAdjointEpetraOp  adjointSupport,
const RCP< const SpmdVectorSpaceBase< double > > &  range,
const RCP< const SpmdVectorSpaceBase< double > > &  domain 
) [related]

Definition at line 697 of file Thyra_EpetraLinearOp.cpp.

RCP< const LinearOpBase< double > > Thyra::makeEpetraWrapper ( const ConstLinearOperator< double > &  thyraOp  ) 

Wrap a Thyra operator in the Epetra_Operator interface, and then wrap it again in a Thyra operator interface. This lets an arbitrary Thyra operator be given to the Thyra AztecOO adapters.

Definition at line 341 of file Thyra_EpetraOperatorWrapper.cpp.

References epetraLinearOp().

Teuchos::RCP<Thyra::EpetraModelEvaluator> Thyra::epetraModelEvaluator ( const RCP< const EpetraExt::ModelEvaluator > &  epetraModel,
const RCP< LinearOpWithSolveFactoryBase< double > > &  W_factory 
) [related]

Definition at line 1390 of file Thyra_EpetraModelEvaluator.cpp.

Thyra::ModelEvaluatorBase::EDerivativeMultiVectorOrientation Thyra::convert ( const EpetraExt::ModelEvaluator::EDerivativeMultiVectorOrientation &  mvOrientation  )  [related]

Definition at line 1400 of file Thyra_EpetraModelEvaluator.cpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, and Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW.

Referenced by convert().

EpetraExt::ModelEvaluator::EDerivativeMultiVectorOrientation Thyra::convert ( const ModelEvaluatorBase::EDerivativeMultiVectorOrientation &  mvOrientation  ) 

Definition at line 1417 of file Thyra_EpetraModelEvaluator.cpp.

References Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, and Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW.

Thyra::ModelEvaluatorBase::DerivativeProperties Thyra::convert ( const EpetraExt::ModelEvaluator::DerivativeProperties &  derivativeProperties  )  [related]

Definition at line 1434 of file Thyra_EpetraModelEvaluator.cpp.

References Thyra::ModelEvaluatorBase::DERIV_LINEARITY_CONST, Thyra::ModelEvaluatorBase::DERIV_LINEARITY_NONCONST, Thyra::ModelEvaluatorBase::DERIV_LINEARITY_UNKNOWN, Thyra::ModelEvaluatorBase::DERIV_RANK_DEFICIENT, Thyra::ModelEvaluatorBase::DERIV_RANK_FULL, and Thyra::ModelEvaluatorBase::DERIV_RANK_UNKNOWN.

Thyra::ModelEvaluatorBase::DerivativeSupport Thyra::convert ( const EpetraExt::ModelEvaluator::DerivativeSupport &  derivativeSupport  )  [related]

Definition at line 1472 of file Thyra_EpetraModelEvaluator.cpp.

References Thyra::ModelEvaluatorBase::DERIV_LINEAR_OP, Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, Thyra::ModelEvaluatorBase::DERIV_TRANS_MV_BY_ROW, and Thyra::ModelEvaluatorBase::DerivativeSupport::plus().

EpetraExt::ModelEvaluator::Derivative Thyra::convert ( const ModelEvaluatorBase::Derivative< double > &  derivative,
const RCP< const Epetra_Map > &  fnc_map,
const RCP< const Epetra_Map > &  var_map 
) [related]

Definition at line 1488 of file Thyra_EpetraModelEvaluator.cpp.

References convert(), Thyra::ModelEvaluatorBase::DERIV_MV_BY_COL, get_Epetra_MultiVector(), Thyra::ModelEvaluatorBase::Derivative< Scalar >::getDerivativeMultiVector(), and Thyra::ModelEvaluatorBase::Derivative< Scalar >::getLinearOp().

template<typename Ordinal, typename Packet>
RCP<const Teuchos::Comm<Index> > Thyra::create_Comm ( const RCP< const Tpetra::Comm< Ordinal, Packet > > &  tpetraComm  ) 

Given a Tpetra::Comm object, return an equivalent Teuchos::Comm>/tt> object.

If a successful conversion could not be performed then return.get()==NULL.

Definition at line 280 of file Thyra_TpetraThyraWrappers.hpp.

template<class Ordinal, class Scalar>
RCP<Tpetra::Operator<Ordinal,Scalar> > Thyra::get_Tpetra_Operator ( LinearOpBase< Scalar > &  op  ) 

Get smart pointer to non-const Tpetra::Operator object from reference to a non-const TpetraLinearOp accessed through its LinearOpBase interface.

Parameters:
op [in] Reference to operator to extract Tpetra::Operator out of.
Preconditions:

This function is designed to provide an easy way for non-C++ experts to get at the Tpetra::Operator object that was stuck into an TpetraLinearOp object.

If the dynamic cast fails then a std::bad_cast exception is thrown containing a very detailed error message as to why the cast failed.

This function is simple enough and developers can see what needs to be done to accomplish this type of access by looking at the source code by clicking on:

Definition at line 555 of file Thyra_TpetraThyraWrappers.hpp.

template<class Ordinal, class Scalar>
RCP<const Tpetra::Operator<Ordinal,Scalar> > Thyra::get_Tpetra_Operator ( const LinearOpBase< Scalar > &  op  ) 

Get smart pointer to const Tpetra::Operator object from reference to a const TpetraLinearOp accessed through its LinearOpBase interface.

Parameters:
op [in] Reference to operator to extract Tpetra::Operator out of.
Preconditions:

This function is designed to provide an easy way for non-C++ experts to get at the Tpetra::Operator object that was stuck into an TpetraLinearOp object.

If the dynamic cast fails then a std::bad_cast exception is thrown containing a very detailed error message as to why the cast failed.

This function is simple enough and developers can see what needs to be done to accomplish this type of access by looking at the source code by clicking on:

Definition at line 562 of file Thyra_TpetraThyraWrappers.hpp.

template<typename Ordinal, typename Packet>
RCP<const Teuchos::Comm<Thyra::Index> > Thyra::create_Comm ( const RCP< const Tpetra::Comm< Ordinal, Packet > > &  tpetraComm  ) 

Given a Tpetra::Comm object, return an equivalent Teuchos::Comm>/tt> object.

If a successful conversion could not be performed then return.get()==NULL.

Definition at line 280 of file Thyra_TpetraThyraWrappers.hpp.

template<class Ordinal, class Scalar>
RCP<Thyra::SpmdVectorBase<Scalar> > Thyra::create_Vector ( const RCP< Tpetra::Vector< Ordinal, Scalar > > &  tpetra_v,
const RCP< const Thyra::SpmdVectorSpaceBase< Scalar > > &  space_in 
)

Definition at line 351 of file Thyra_TpetraThyraWrappers.hpp.

References space().

template<class Ordinal, class Scalar>
RCP<const Thyra::SpmdVectorBase<Scalar> > Thyra::create_Vector ( const RCP< const Tpetra::Vector< Ordinal, Scalar > > &  tpetra_v,
const RCP< const Thyra::SpmdVectorSpaceBase< Scalar > > &  space_in 
)

Definition at line 382 of file Thyra_TpetraThyraWrappers.hpp.

References space().

template<class Ordinal, class Scalar>
RCP<Tpetra::Vector<Ordinal,Scalar> > Thyra::get_Tpetra_Vector ( const Tpetra::VectorSpace< Ordinal, Scalar > &  tpetra_vs,
const RCP< Thyra::VectorBase< Scalar > > &  v 
)

Definition at line 413 of file Thyra_TpetraThyraWrappers.hpp.

References Thyra::VectorSpaceBase< Scalar >::dim(), Thyra::SpmdVectorSpaceBase< Scalar >::localOffset(), Thyra::SpmdVectorSpaceBase< Scalar >::localSubDim(), and THYRA_ASSERT_VEC_SPACES.

template<class Ordinal, class Scalar>
RCP<const Tpetra::Vector<Ordinal,Scalar> > Thyra::get_Tpetra_Vector ( const Tpetra::VectorSpace< Ordinal, Scalar > &  tpetra_vs,
const RCP< const Thyra::VectorBase< Scalar > > &  v 
)

Definition at line 493 of file Thyra_TpetraThyraWrappers.hpp.

References Thyra::VectorSpaceBase< Scalar >::dim(), Thyra::SpmdVectorSpaceBase< Scalar >::localOffset(), Thyra::SpmdVectorSpaceBase< Scalar >::localSubDim(), and THYRA_ASSERT_VEC_SPACES.

template<class Ordinal, class Scalar>
RCP<Tpetra::Operator<Ordinal,Scalar> > Thyra::get_Tpetra_Operator ( LinearOpBase< Scalar > &  op  ) 

Get smart pointer to non-const Tpetra::Operator object from reference to a non-const TpetraLinearOp accessed through its LinearOpBase interface.

Parameters:
op [in] Reference to operator to extract Tpetra::Operator out of.
Preconditions:

This function is designed to provide an easy way for non-C++ experts to get at the Tpetra::Operator object that was stuck into an TpetraLinearOp object.

If the dynamic cast fails then a std::bad_cast exception is thrown containing a very detailed error message as to why the cast failed.

This function is simple enough and developers can see what needs to be done to accomplish this type of access by looking at the source code by clicking on:

Definition at line 555 of file Thyra_TpetraThyraWrappers.hpp.

template<class Ordinal, class Scalar>
RCP<const Tpetra::Operator<Ordinal,Scalar> > Thyra::get_Tpetra_Operator ( const LinearOpBase< Scalar > &  op  ) 

Get smart pointer to const Tpetra::Operator object from reference to a const TpetraLinearOp accessed through its LinearOpBase interface.

Parameters:
op [in] Reference to operator to extract Tpetra::Operator out of.
Preconditions:

This function is designed to provide an easy way for non-C++ experts to get at the Tpetra::Operator object that was stuck into an TpetraLinearOp object.

If the dynamic cast fails then a std::bad_cast exception is thrown containing a very detailed error message as to why the cast failed.

This function is simple enough and developers can see what needs to be done to accomplish this type of access by looking at the source code by clicking on:

Definition at line 562 of file Thyra_TpetraThyraWrappers.hpp.


Generated on Wed May 12 21:29:20 2010 for Thyra Package Browser (Single Doxygen Collection) by  doxygen 1.4.7