Teuchos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Teuchos_Details_LapackLongDouble.cpp
Go to the documentation of this file.
1 // @HEADER
2 // ***********************************************************************
3 //
4 // Teuchos: Common Tools Package
5 // Copyright (2004) Sandia Corporation
6 //
7 // Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
8 // license for use of this work by or on behalf of the U.S. Government.
9 //
10 // Redistribution and use in source and binary forms, with or without
11 // modification, are permitted provided that the following conditions are
12 // met:
13 //
14 // 1. Redistributions of source code must retain the above copyright
15 // notice, this list of conditions and the following disclaimer.
16 //
17 // 2. Redistributions in binary form must reproduce the above copyright
18 // notice, this list of conditions and the following disclaimer in the
19 // documentation and/or other materials provided with the distribution.
20 //
21 // 3. Neither the name of the Corporation nor the names of the
22 // contributors may be used to endorse or promote products derived from
23 // this software without specific prior written permission.
24 //
25 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
26 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
29 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36 //
37 // Questions? Contact Michael A. Heroux (maherou@sandia.gov)
38 //
39 // ***********************************************************************
40 // @HEADER
41 
44 
45 #ifdef HAVE_TEUCHOS_LONG_DOUBLE
46 namespace Teuchos {
47 namespace Details {
48 
49 void
50 LapackLongDouble::
51 GETRF (const int M, const int N, long double A[],
52  const int LDA, int IPIV[], int* INFO) const
53 {
55  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GETRF: Not implemented yet.");
56 }
57 
58 void
59 LapackLongDouble::
60 LASWP (const int N, long double A[], const int LDA, const int K1,
61  const int K2, const int IPIV[], const int INCX) const
62 {
64  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::LASWP: Not implemented yet.");
65 }
66 
67 void
68 LapackLongDouble::
69 GETRI (const int /* N */, long double /* A */ [], const int /* LDA */,
70  int /* IPIV */ [], long double /* WORK */ [], const int /* LWORK */,
71  int* /* INFO */) const
72 {
74  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GETRI: Not implemented yet.");
75 }
76 
77 
78 void
79 LapackLongDouble::
80 GETRS (const char TRANS, const int N, const int NRHS,
81  const long double A[], const int LDA, const int IPIV[],
82  long double B[], const int LDB, int* INFO) const
83 {
85  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GETRS: Not implemented yet.");
86 }
87 
88 long double
89 LapackLongDouble::
90 LAPY2 (const long double& x, const long double& y) const
91 {
93  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::LAPY2: Not implemented yet.");
94 }
95 
96 void
97 LapackLongDouble::
98 ORM2R (const char side, const char trans,
99  const int m, const int n, const int k,
100  const long double A[], const int lda,
101  const long double* const tau,
102  long double C[], const int ldc,
103  long double work[], int* const info) const
104 {
106  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::ORM2R: Not implemented yet.");
107 }
108 
109 namespace { // (anonymous)
110 
111  int
112  ILADLC (const int m, const int n, const long double A[], const int lda)
113  {
115  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::ILADLC: Not implemented yet.");
116  return 0;
117  }
118 
119  int
120  ILADLR (const int m, const int n, const long double A[], const int lda)
121  {
123  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::ILADLR: Not implemented yet.");
124  return 0;
125  }
126 } // namespace (anonymous)
127 
128 void
129 LapackLongDouble::
130 LARF (const char side,
131  const int m,
132  const int n,
133  const long double v[],
134  const int incv,
135  const long double tau,
136  long double C[],
137  const int ldc,
138  long double work[]) const
139 {
141  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::LARF: Not implemented yet.");
142 }
143 
144 
145 void
146 LapackLongDouble::
147 LARFG (const int N, long double* const ALPHA,
148  long double X[], const int INCX, long double* const TAU) const
149 {
151  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::LARFG: Not implemented yet.");
152 }
153 
154 void
155 LapackLongDouble::
156 GEQR2 (const int /* M */,
157  const int /* N */,
158  long double /* A */ [],
159  const int /* LDA */,
160  long double /* TAU */ [],
161  long double /* WORK */ [],
162  int* const /* INFO */ ) const
163 {
165  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GEQR2: Not implemented yet.");
166 }
167 
168 void
169 LapackLongDouble::
170 GEQRF (const int M,
171  const int N,
172  long double A[],
173  const int LDA,
174  long double TAU[],
175  long double WORK[],
176  const int LWORK,
177  int* const INFO) const
178 {
180  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GEQRF: Not implemented yet.");
181 }
182 
183 void
184 LapackLongDouble::
185 ORGQR (const int /* M */,
186  const int /* N */,
187  const int /* K */,
188  long double /* A */ [],
189  const int /* LDA */,
190  const long double /* TAU */ [],
191  long double /* WORK */ [],
192  const int /* LWORK */,
193  int* const /* INFO */) const
194 {
196  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GEQR2: Not implemented yet.");
197 }
198 
199 void
200 LapackLongDouble::
201 UNGQR (const int /* M */,
202  const int /* N */,
203  const int /* K */,
204  long double /* A */ [],
205  const int /* LDA */,
206  const long double /* TAU */ [],
207  long double /* WORK */ [],
208  const int /* LWORK */,
209  int* const /* INFO */) const
210 {
212  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GEQR2: Not implemented yet.");
213 }
214 
215 void
216 LapackLongDouble::
217 LASCL (const char TYPE,
218  const int kl,
219  const int ku,
220  const long double cfrom,
221  const long double cto,
222  const int m,
223  const int n,
224  long double* A,
225  const int lda,
226  int* info) const
227 {
229  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::LASCL: Not implemented yet.");
230 }
231 
232 void
233 LapackLongDouble::
234 GBTRF (const int m,
235  const int n,
236  const int kl,
237  const int ku,
238  long double* A,
239  const int lda,
240  int* IPIV,
241  int* info) const
242 {
244  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GBTRF: Not implemented yet.");
245 }
246 
247 void
248 LapackLongDouble::
249 GBTRS (const char TRANS,
250  const int n,
251  const int kl,
252  const int ku,
253  const int nrhs,
254  const long double* A,
255  const int lda,
256  const int* IPIV,
257  long double* B,
258  const int ldb,
259  int* info) const
260 {
262  (true, std::logic_error, "Teuchos::LAPACK<int, long double>::GBTRS: Not implemented yet.");
263 }
264 
265 } // namespace Details
266 } // namespace Teuchos
267 #endif // HAVE_TEUCHOS_LONG_DOUBLE
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Macro for throwing an exception with breakpointing to ease debugging.
Declaration and definition of Teuchos::Details::LapackLongDouble, a partial implementation of Teuchos...
Standard test and throw macros.