Here is the basic hierarchical structure of the top level parameter list that is passed to a NOX::Solver::Factory object or the builder method.
NOTE: This list will carry any number of linear solver options depending upon the concrete implementation of the linear solver used in the applyJacobianInverse() method of the NOX::Abstract::Group class. For Epetra support, this option list can be found in the NOX::Epetra::LinearSystemAztecOO object.
Teuchos::RCP<NOX::Abstract::PrePostOperator> ppo = Teuchos::rcp(new UserPrePostOperator(printing)); nlParams.sublist("Solver Options").set("User Defined Pre/Post Operator", ppo);
NOTE: The type of object set in the parameter list MUST be an RCP of the type NOX::Abstract::PrePostOperator. It can NOT be a derived type!
Teuchos::RCP<UserMeritFunction> mf = Teuchos::rcp(new UserMeritFunction); nlParams.sublist("Solver Options").set <NOX::MeritFunction::Generic>("User Defined Merit Function", mf);
A user can build a set of status tests from an independent parameter list using the NOX::StatusTest::Factory. See this objects documentation for details on how to build that parameter list.
1.4.7