Belos  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BelosStubTsqrAdapter.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Belos: Block Linear Solvers Package
4 //
5 // Copyright 2004-2016 NTESS and the Belos contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef __Belos_StubTsqrAdapter_hpp
11 #define __Belos_StubTsqrAdapter_hpp
12 
13 #include <BelosConfigDefs.hpp>
14 #include <Teuchos_ParameterListAcceptorDefaultBase.hpp>
15 #include <Teuchos_ScalarTraits.hpp>
18 #include <stdexcept>
19 
22 
23 namespace Belos {
24 namespace details {
25 
51  template<class MultiVectorType>
53  public:
54  typedef MultiVectorType MV;
55  typedef double scalar_type; // This doesn't really matter
56  typedef int ordinal_type; // This doesn't matter either
57  typedef int node_type; // Nor does this
60 
68  {
69  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
70  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
71  << " is not yet implemented.");
72  }
73 
76  {
77  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
78  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
79  << " is not yet implemented.");
80  }
81 
84  {
85  (void) rhs;
86  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
87  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
88  << " is not yet implemented.");
89  }
90 
94  {
95  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
96  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
97  << " is not yet implemented.");
98  }
99 
101  void
103  {
104  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
105  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
106  << " is not yet implemented.");
107  }
108 
110  void
112  MV& Q,
114  const bool forceNonnegativeDiagonal=false)
115  {
116  TEUCHOS_TEST_FOR_EXCEPTION(true, std::logic_error, "TSQR adapter for "
117  "multivector type \"" << Teuchos::TypeNameTraits<MV>::name()
118  << " is not yet implemented.");
119  }
120 
122  int
125  const magnitude_type& tol)
126  {
127  // mfh 07 Sep 2012: In order to prevent compiler warnings on
128  // some platforms, we simply return some value. This code can
129  // never execute anyway, since it is in an instance method and
130  // all of the constructors throw exceptions. (We've overridden
131  // the default and copy constructors to throw exceptions.)
132  return 0;
133  }
134  };
135 
136 } // namespace details
137 } // namespace Belos
138 
139 #endif // __Belos_StubTsqrAdapter_hpp
140 
StubTsqrAdapter()
Default constructor (stub; throws std::logic_error).
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
StubTsqrAdapter(const StubTsqrAdapter &rhs)
Copy constructor (throws std::logic_error).
Teuchos::ScalarTraits< scalar_type >::magnitudeType magnitude_type
Teuchos::SerialDenseMatrix< ordinal_type, scalar_type > dense_matrix_type
StubTsqrAdapter(const Teuchos::RCP< Teuchos::ParameterList > &plist)
Constructor (that accepts a parameter list).
&quot;Stub&quot; TSQR adaptor for unsupported multivector types.
int revealRank(MV &Q, dense_matrix_type &R, const magnitude_type &tol)
Rank-revealing decomposition (stub; does nothing).
void factorExplicit(MV &A, MV &Q, dense_matrix_type &R, const bool forceNonnegativeDiagonal=false)
Compute QR factorization [Q,R] = qr(A,0) (stub; throws std::logic_error).
void setParameterList(const Teuchos::RCP< Teuchos::ParameterList > &plist)
Set parameters (stub; throws std::logic_error).
Belos header file which uses auto-configuration information to include necessary C++ headers...
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Get list of valid default parameters (stub; throws std::logic_error).

Generated on Fri Nov 22 2024 09:23:06 for Belos by doxygen 1.8.5