NOX
Development
|
Updates an inverse row sum scaling vector at the beginning of a solve. More...
#include <NOX_PrePostOperator_RowSumScaling.H>
Public Types | |
enum | ENOX_WhenToUpdateScaling { UpdateInvRowSumVectorAtBeginningOfSolve, UpdateInvRowSumVectorAtBeginningOfIteration } |
Public Member Functions | |
RowSumScaling (const Teuchos::RCP< ::Thyra::VectorBase< double > > &inv_row_sum_vec, ENOX_WhenToUpdateScaling s) | |
void | runPreIterate (const NOX::Solver::Generic &solver) |
User defined method that will be executed at the start of a call to NOX::Solver::Generic::step(). | |
void | runPreSolve (const NOX::Solver::Generic &solver) |
User defined method that will be executed at the start of a call to NOX::Solver::Generic::solve(). | |
Teuchos::RCP< const ::Thyra::VectorBase< double > > | getInvRowSumScalingVector () const |
Public Member Functions inherited from NOX::Observer | |
Observer () | |
Constructor. | |
virtual | ~Observer () |
Destructor. | |
virtual void | runPostIterate (const NOX::Solver::Generic &) |
User defined method that will be executed at the end of a call to NOX::Solver::Generic::step(). | |
virtual void | runPostSolve (const NOX::Solver::Generic &) |
User defined method that will be executed at the end of a call to NOX::Solver::Generic::solve(). | |
virtual void | runPreSolutionUpdate (const NOX::Abstract::Vector &, const NOX::Solver::Generic &) |
User defined method that will be executed prior to the update of the solution vector during a call to NOX::Solver::Generic::step(). This is intended to allow users to adjust the direction before the solution update, typically based on knowledge of the problem formulation. The direction is const as we can't guarantee that changes to the direction won't violate assumptions of the solution algorithm. Users can change the update/direciton after a const cast, but NOX may not function as expected. Use at your own risk! More... | |
virtual void | runPostSolutionUpdate (const NOX::Solver::Generic &) |
User defined method that will be executed after the update of the solution vector during a call to NOX::Solver::Generic::step(). This is intended to allow users to adjust the direction after the solution update, typically based on knowledge of the problem formulation (e.g. clipping negative mass fractions). The direction is const as we can't guarantee that changes to the direction won't violate assumptions of the solution algorithm. Users can change the update/direciton after a const cast, but NOX may not function as expected. Use at your own risk! More... | |
virtual void | runPreLineSearch (const NOX::Solver::Generic &) |
User defined method that will be executed before a call to NOX::LineSearch::Generic::compute(). Only to be used in NOX::Solver::LineSearchBased! | |
virtual void | runPostLineSearch (const NOX::Solver::Generic &) |
User defined method that will be executed after a call to NOX::LineSearch::Generic::compute(). Only to be used in NOX::Solver::LineSearchBased! | |
Updates an inverse row sum scaling vector at the beginning of a solve.
NOX::RowSumScaling::RowSumScaling | ( | const Teuchos::RCP< ::Thyra::VectorBase< double > > & | inv_row_sum_vec, |
ENOX_WhenToUpdateScaling | s | ||
) |
sv
is the scaling vector