47 int main(
int argc, 
char* argv[])
 
   65     std::string     matrixFile             = 
"";
 
   66     bool            testTranspose          = 
true;
 
   67     int             numRandomVectors       = 1;
 
   68     double          maxFwdError            = 1e-14;
 
   69     int             maxIterations          = 400;
 
   70     double          maxResid               = 1e-6;
 
   71     double          maxSolutionError       = 1e-6;
 
   74     std::string     aztecOutputLevel       = 
"freq";
 
   75     int             aztecOutputFreq        = 0;
 
   76     std::string     aztecPrec              = 
"none";
 
   77     std::string     aztecSubdomainSolve    = 
"ilu";
 
   79     CommandLineProcessor  clp(
false); 
 
   80     clp.setOption( 
"matrix-file", &matrixFile, 
"Matrix input file [Required]." );
 
   81     clp.setOption( 
"test-transpose", 
"no-test-transpose", &testTranspose, 
"Test the transpose solve or not." );
 
   82     clp.setOption( 
"num-random-vectors", &numRandomVectors, 
"Number of times a test is performed with different random vectors." );
 
   83     clp.setOption( 
"max-fwd-error", &maxFwdError, 
"The maximum relative error in the forward operator." );
 
   84     clp.setOption( 
"max-iters", &maxIterations, 
"The maximum number of linear solver iterations to take." );
 
   85     clp.setOption( 
"max-resid", &maxResid, 
"The maximum relative error in the residual." );
 
   86     clp.setOption( 
"max-solution-error", &maxSolutionError, 
"The maximum relative error in the solution of the linear system." );
 
   87     clp.setOption( 
"verbose", 
"quiet", &verbose, 
"Set if output is printed or not." );
 
   88     clp.setOption( 
"show-all-tests", 
"no-show-all-tests", &showAllTests, 
"Set if all the tests are shown or not." );
 
   89     clp.setOption( 
"dump-all", 
"no-dump-all", &dumpAll, 
"Determines if vectors are printed or not." );
 
   90     clp.setOption( 
"aztec-output-level", &aztecOutputLevel, 
"Aztec output level (freq,last,summary,warnings,all)" );
 
   91     clp.setOption( 
"aztec-output-freq", &aztecOutputFreq, 
"Aztec output freqency (> 0)" );
 
   92     clp.setOption( 
"aztec-prec", &aztecPrec, 
"Type of aztec preconditioner (none,sym_GS,Neumann,Jacobi,ls,dom_decomp)" );
 
   93     clp.setOption( 
"aztec-subdomain-solve", &aztecSubdomainSolve, 
"Type of subdomain solve for --aztec-prec==dom_decomp only (ilu,ilut)" );
 
   94     CommandLineProcessor::EParseCommandLineReturn parse_return = clp.parse(argc,argv);
 
   95     if( parse_return != CommandLineProcessor::PARSE_SUCCESSFUL ) 
return parse_return;
 
  100       paramList(
"AztecOOLinearOpWithSolve");
 
  102       &fwdSolveParamList = paramList.
sublist(
"Forward Solve"),
 
  103       &adjSolveParamList = paramList.
sublist(
"Adjoint Solve");
 
  104     fwdSolveParamList.
set(
"Max Iterations",maxIterations);
 
  105     adjSolveParamList.
set(
"Max Iterations",maxIterations);
 
  129       = Thyra::test_single_aztecoo_thyra_solver(
 
  130         matrixFile,testTranspose,numRandomVectors
 
  131         ,maxFwdError,maxResid,maxSolutionError,showAllTests,dumpAll
 
  137   catch( 
const std::exception &excpt ) {
 
  138     std::cerr << 
"*** Caught standard exception : " << excpt.what() << std::endl;
 
  142     std::cerr << 
"*** Caught an unknown exception\n";
 
  147     if(success)  out << 
"\nCongratulations! All of the tests checked out!\n";
 
  148     else         out << 
"\nOh no! At least one of the tests failed!\n";
 
  151   return ( success ? 0 : 1 );
 
int main(int argc, char *argv[])
 
ParameterList & set(std::string const &name, T const &value, std::string const &docString="", RCP< const ParameterEntryValidator > const &validator=null)
 
RCP< ParameterList > sublist(const RCP< ParameterList > ¶mList, const std::string &name, bool mustAlreadyExist=false, const std::string &docString="")
 
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
 
#define TEUCHOS_TEST_FOR_EXCEPT(throw_exception_test)