35
35
#include "Thyra_LinearOpWithSolveFactoryHelpers.hpp"
36
36
#include "Thyra_LinearOpTester.hpp"
37
37
#include "Thyra_LinearOpWithSolveTester.hpp"
38
#include "Thyra_MultiVectorStdOps.hpp"
38
39
#include "Thyra_TestingTools.hpp"
39
40
#include "Teuchos_GlobalMPISession.hpp"
40
41
#include "Teuchos_CommandLineProcessor.hpp"
211
212
} // namespace Thyra
214
int main( int argc, char* argv[] ) {
215
int main( int argc, char* argv[] )
216
218
using Teuchos::CommandLineProcessor;
217
219
using Teuchos::ScalarTraits;
218
220
using Teuchos::as;
220
222
bool success = true;
223
224
Teuchos::GlobalMPISession mpiSession(&argc,&argv);
240
241
clp.setOption( "n", &n, "Size of the system." );
242
double epsScale = 200.0;
243
double epsScale = 2e+2;
243
244
clp.setOption( "eps-scale", &epsScale,
244
245
"Constant (greater than 1) to scale eps by in error tests." );
246
clp.setOption( "verbose", "quiet", &verbose,
247
"Determines if any output is printed or not." );
249
247
bool showAllTests = false;
250
248
clp.setOption( "show-all-tests", "no-show-all-tests", &showAllTests,
251
249
"Determines if detailed tests are shown or not." );
264
262
#ifdef HAVE_THYRA_TEUCHOS_BLASFLOAT
265
263
if( !Thyra::run_linear_op_with_solve_tests<float>(
266
n, as<float>(epsScale*ScalarTraits<float>::eps()),showAllTests, dumpAll, *out)
264
n, as<float>(epsScale*ScalarTraits<float>::eps()), showAllTests, dumpAll, *out)
267
265
) success = false;
269
267
if( !Thyra::run_linear_op_with_solve_tests<double>(
270
n, as<double>(epsScale*ScalarTraits<double>::eps()),showAllTests, dumpAll, *out)
268
n, as<double>(epsScale*ScalarTraits<double>::eps()), showAllTests, dumpAll, *out)
271
269
) success = false;
272
#if defined(HAVE_COMPLEX) && defined(HAVE_TEUCHOS_COMPLEX) && defined(HAVE_THYRA_TEUCHOS_BLASFLOAT)
270
#if defined(HAVE_THYRA_COMPLEX) && defined(HAVE_THYRA_TEUCHOS_BLASFLOAT)
273
271
if( !Thyra::run_linear_op_with_solve_tests<std::complex<float> >(
274
n, as<float>(epsScale*ScalarTraits<float>::eps()),showAllTests, dumpAll, *out)
272
n, as<float>(epsScale*ScalarTraits<float>::eps()), showAllTests, dumpAll, *out)
275
273
) success = false;
277
#if defined(HAVE_COMPLEX) && defined(HAVE_TEUCHOS_COMPLEX)
275
#if defined(HAVE_THYRA_COMPLEX)
278
276
if( !Thyra::run_linear_op_with_solve_tests<std::complex<double> >(
279
n, as<double>(epsScale*ScalarTraits<double>::eps()),showAllTests, dumpAll, *out)
277
n, as<double>(epsScale*ScalarTraits<double>::eps()), showAllTests, dumpAll, *out)
280
278
) success = false;