//============================================================================= int Amesos_Klu::SetParameters( Teuchos::ParameterList &ParameterList ) { // ========================================= // // retrive KLU's parameters from list. // // default values defined in the constructor // // ========================================= // // retrive general parameters SetStatusParameters( ParameterList ); SetControlParameters( ParameterList ); if (ParameterList.isParameter("TrustMe") ) TrustMe_ = ParameterList.get<bool>( "TrustMe" ); #if 0 unused for now if (ParameterList.isSublist("Klu") ) { Teuchos::ParameterList KluParams = ParameterList.sublist("Klu") ; } #endif return 0; }
//============================================================================= int Amesos_Umfpack::SetParameters( Teuchos::ParameterList &ParameterList ) { // ========================================= // // retrive UMFPACK's parameters from list. // // default values defined in the constructor // // ========================================= // // retrive general parameters SetStatusParameters( ParameterList ) ; SetControlParameters( ParameterList ) ; return 0; }
//============================================================================= int Amesos_Dscpack::SetParameters( Teuchos::ParameterList &ParameterList) { // ========================================= // // retrive DSCPACK's parameters from list. // // default values defined in the constructor // // ========================================= // // retrive general parameters SetStatusParameters( ParameterList ); SetControlParameters( ParameterList ); // MS // NO DSCPACK-specify parameters at this point, uncomment // MS // as necessary /* if (ParameterList.isSublist("Dscpack") ) { Teuchos::ParameterList DscpackParams = ParameterList.sublist("Dscpack") ; } */ return 0; }
int Amesos_Scalapack::SetParameters( Teuchos::ParameterList &ParameterList ) { if( debug_ == 1 ) std::cout << "Entering `SetParameters()'" << std::endl; // retrive general parameters SetStatusParameters( ParameterList ); SetControlParameters( ParameterList ); // // We have to set these to their defaults here because user codes // are not guaranteed to have a "Scalapack" parameter list. // TwoD_distribution_ = true; grid_nb_ = 32; // Some compilers reject the following cast: // if( &ParameterList == 0 ) return 0; // ========================================= // // retrive ScaLAPACK's parameters from list. // // ========================================= // // retrive general parameters // check to see if they exist before trying to retrieve them if (ParameterList.isSublist("Scalapack") ) { const Teuchos::ParameterList ScalapackParams = ParameterList.sublist("Scalapack") ; // Fix Bug #3251 if ( ScalapackParams.isParameter("2D distribution") ) TwoD_distribution_ = ScalapackParams.get<bool>("2D distribution"); if ( ScalapackParams.isParameter("grid_nb") ) grid_nb_ = ScalapackParams.get<int>("grid_nb"); } return 0; }
//============================================================================= int Amesos_Mumps::SetParameters( Teuchos::ParameterList & ParameterList) { // ========================================= // // retrive MUMPS' parameters from list. // // default values defined in the constructor // // ========================================= // // retrive general parameters SetStatusParameters(ParameterList); SetControlParameters(ParameterList); if (ParameterList.isParameter("NoDestroy")) NoDestroy_ = ParameterList.get<bool>("NoDestroy"); // can be use using mumps sublist, via "ICNTL(2)" // if (debug_) // MDS.ICNTL(2) = 6; // Turn on Mumps verbose output // retrive MUMPS' specific parameters if (ParameterList.isSublist("mumps")) { Teuchos::ParameterList MumpsParams = ParameterList.sublist("mumps") ; // ICNTL for (int i = 1 ; i <= 40 ; ++i) { char what[80]; sprintf(what, "ICNTL(%d)", i); if (MumpsParams.isParameter(what)) SetICNTL(i, MumpsParams.get<int>(what)); } // CNTL for (int i = 1 ; i <= 5 ; ++i) { char what[80]; sprintf(what, "CNTL(%d)", i); if (MumpsParams.isParameter(what)) SetCNTL(i, MumpsParams.get<double>(what)); } // ordering if (MumpsParams.isParameter("PermIn")) { int* PermIn = 0; PermIn = MumpsParams.get<int*>("PermIn"); if (PermIn) SetOrdering(PermIn); } // Col scaling if (MumpsParams.isParameter("ColScaling")) { double * ColSca = 0; ColSca = MumpsParams.get<double *>("ColScaling"); if (ColSca) SetColScaling(ColSca); } // Row scaling if (MumpsParams.isParameter("RowScaling")) { double * RowSca = 0; RowSca = MumpsParams.get<double *>("RowScaling"); if (RowSca) SetRowScaling(RowSca); } // that's all folks } return(0); }