27 #include "Epetra_Comm.h" 30 #include "Epetra_CrsMatrix.h" 31 #include "Epetra_Map.h" 32 #include "Epetra_Vector.h" 33 #include "Epetra_LinearProblem.h" 53 double &maxrelresidual,
59 const Epetra_Comm& Comm = Amat->Comm();
67 ParamList.
set(
"MaxProcs", 100000 );
90 std::cout <<
"Amesos_Scalapack failed with error code " << Errors<< std::endl ;
95 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
96 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
100 if (
verbose) std::cout <<
" TestScalapack NumErrors = " << NumErrors
101 << __FILE__ <<
"::" << __LINE__
104 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
105 (transpose?
"true":
"false") << std::endl ;
113 ParamList.
set(
"MaxProcs", 2 );
114 ParamList.
set(
"ComputeTrueResidual",
true );
115 ParamList.
set(
"OutputLevel", 0 );
134 if (
verbose ) std::cout <<
"Amesos_Scalapack" <<
" not built in this executable " << std::endl ;
137 NumErrors += Errors ;
139 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
140 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
144 if (
verbose) std::cout <<
" TestScalapack NumErrors = " << NumErrors
145 << __FILE__ <<
"::" << __LINE__
148 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
149 (transpose?
"true":
"false") << std::endl ;
161 ParamList.
set(
"MaxProcs", 2 );
162 ParamList.
set(
"ComputeTrueResidual",
true );
163 ParamList.
set(
"OutputLevel", 0 );
167 ScalapackParams.
set(
"grid_nb", 2 );
185 if (
verbose ) std::cout <<
"Amesos_Scalapack" <<
" not built in this executable " << std::endl ;
188 NumErrors += Errors ;
190 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
191 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
195 if (
verbose) std::cout <<
" TestScalapack NumErrors = " << NumErrors <<
" " 196 << __FILE__ <<
"::" << __LINE__
199 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
200 (transpose?
"true":
"false") << std::endl ;
207 ParamList.
set(
"MaxProcs", 1000 );
208 ParamList.
set(
"ComputeTrueResidual",
true );
209 ParamList.
set(
"OutputLevel", 0 );
212 ScalapackParams.
set(
"grid_nb", 3 );
230 if (
verbose ) std::cout <<
"Amesos_Scalapack" <<
" not built in this executable " << std::endl ;
233 NumErrors += Errors ;
235 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
236 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
241 << __FILE__ <<
"::" << __LINE__
242 <<
" TestScalapack NumErrors = " << NumErrors << std::endl ;
244 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
245 (transpose?
"true":
"false") << std::endl ;
253 ParamList.
set(
"MaxProcs", 1000 );
254 ParamList.
set(
"ComputeTrueResidual",
true );
255 ParamList.
set(
"OutputLevel", 0 );
257 ScalapackParams.
set(
"2D distribution",
false );
276 if (
verbose ) std::cout <<
"Amesos_Scalapack" <<
" not built in this executable " << std::endl ;
279 NumErrors += Errors ;
281 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
282 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
287 << __FILE__ <<
"::" << __LINE__
288 <<
" TestScalapack NumErrors = " << NumErrors << std::endl ;
290 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
291 (transpose?
"true":
"false") << std::endl ;
318 if (
verbose ) std::cout <<
"Amesos_Scalapack" <<
" not built in this executable " << std::endl ;
321 NumErrors += Errors ;
323 maxrelerror = EPETRA_MAX( relerror, maxrelerror ) ;
324 maxrelresidual = EPETRA_MAX( relresidual, maxrelresidual ) ;
329 << __FILE__ <<
"::" << __LINE__
330 <<
" TestScalapack NumErrors = " << NumErrors << std::endl ;
332 std::cout <<
"Amesos_Scalapack" <<
" failed with transpose = " <<
333 (transpose?
"true":
"false") << std::endl ;
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="")
int TestScalapack(Epetra_CrsMatrix *&Amat, int EpetraMatrixType, bool transpose, bool verbose, int Levels, const double Rcond, double &maxrelerror, double &maxrelresidual, int &NumTests)