MoochoPack : Framework for Large-Scale Optimization Algorithms
Version of the Day
|
Base class for evaluating a new point for the "Tailored Approach". More...
#include <MoochoPack_EvalNewPointTailoredApproach_Step.hpp>
Public types | |
enum | EFDDerivTesting |
Constructors / initializers | |
typedef Teuchos::RCP< const MatrixOp > | D_ptr_t |
STANDARD_COMPOSITION_MEMBERS (NLPDirectTester, deriv_tester) | |
<<std comp>="">> members for testing object for NLPDirect More... | |
STANDARD_COMPOSITION_MEMBERS (VariableBoundsTester, bounds_tester) | |
<<std comp>="">> Members for variable bounds tester object More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (EFDDerivTesting, fd_deriv_testing) | |
Set how and if finite derivatives are tested. More... | |
EvalNewPointTailoredApproach_Step (const deriv_tester_ptr_t &deriv_tester, const bounds_tester_ptr_t &bounds_tester, EFDDerivTesting fd_deriv_testing=FD_DEFAULT) | |
Overridden from AlgorithmStep | |
bool | do_step (Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss) |
void | print_step (const Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss, std::ostream &out, const std::string &leading_str) const |
To be overridden by subclasses | |
virtual void | uninitialize_Y_Uy (MatrixOp *Y, MatrixOp *Uy)=0 |
Call to uninitialize the matrices. More... | |
virtual void | calc_py_Y_Uy (const NLPDirect &nlp, const D_ptr_t &D, VectorMutable *py, MatrixOp *Y, MatrixOp *Uy, EJournalOutputLevel olevel, std::ostream &out)=0 |
Overridden by subclass to compute py , Y and Uy . More... | |
virtual void | recalc_py (const MatrixOp &D, VectorMutable *py, EJournalOutputLevel olevel, std::ostream &out)=0 |
Overridden by subclass to recompute py and Ypy . More... | |
virtual void | print_calc_py_Y_Uy (std::ostream &out, const std::string &leading_str) const =0 |
Overridden by subclass to print how py and Y are computed. More... | |
Base class for evaluating a new point for the "Tailored Approach".
Uses the NLPDirect
interface to compute Z = [ -inv(C)*N; I ]
and py = -inv(C)*c(decomp)
explicitly. Subclasses determine how py
and Y
are updated.
Definition at line 60 of file MoochoPack_EvalNewPointTailoredApproach_Step.hpp.
typedef Teuchos::RCP<const MatrixOp> MoochoPack::EvalNewPointTailoredApproach_Step::D_ptr_t |
Definition at line 75 of file MoochoPack_EvalNewPointTailoredApproach_Step.hpp.
Definition at line 68 of file MoochoPack_EvalNewPointTailoredApproach_Step.hpp.
MoochoPack::EvalNewPointTailoredApproach_Step::EvalNewPointTailoredApproach_Step | ( | const deriv_tester_ptr_t & | deriv_tester, |
const bounds_tester_ptr_t & | bounds_tester, | ||
EFDDerivTesting | fd_deriv_testing = FD_DEFAULT |
||
) |
Definition at line 61 of file MoochoPack_EvalNewPointTailoredApproach_Step.cpp.
MoochoPack::EvalNewPointTailoredApproach_Step::STANDARD_COMPOSITION_MEMBERS | ( | NLPDirectTester | , |
deriv_tester | |||
) |
<<std comp>="">> members for testing object for NLPDirect
MoochoPack::EvalNewPointTailoredApproach_Step::STANDARD_COMPOSITION_MEMBERS | ( | VariableBoundsTester | , |
bounds_tester | |||
) |
<<std comp>="">> Members for variable bounds tester object
MoochoPack::EvalNewPointTailoredApproach_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | EFDDerivTesting | , |
fd_deriv_testing | |||
) |
Set how and if finite derivatives are tested.
ToDo: Finish documentation.
bool MoochoPack::EvalNewPointTailoredApproach_Step::do_step | ( | Algorithm & | algo, |
poss_type | step_poss, | ||
IterationPack::EDoStepType | type, | ||
poss_type | assoc_step_poss | ||
) |
Definition at line 71 of file MoochoPack_EvalNewPointTailoredApproach_Step.cpp.
void MoochoPack::EvalNewPointTailoredApproach_Step::print_step | ( | const Algorithm & | algo, |
poss_type | step_poss, | ||
IterationPack::EDoStepType | type, | ||
poss_type | assoc_step_poss, | ||
std::ostream & | out, | ||
const std::string & | leading_str | ||
) | const |
Definition at line 379 of file MoochoPack_EvalNewPointTailoredApproach_Step.cpp.
|
pure virtual |
Call to uninitialize the matrices.
ToDo: Finish documentation!
Implemented in MoochoPack::EvalNewPointTailoredApproachOrthogonal_Step, and MoochoPack::EvalNewPointTailoredApproachCoordinate_Step.
|
pure virtual |
Overridden by subclass to compute py
, Y
and Uy
.
D | [in/out] Smart pointer to matrix D = -inv(C)*N . On output, D->count() may be incremented in order to initialize Y . |
py | [in/out] On input py = -inv(C)*c(decomp) . On output py = -inv((Gc(decomp)'*Y)*c(decomp) |
Y | [in/out] On ouput Y is initialized properly. |
Uy | [in/out] On ouput Uy is initialized properly. |
olevel | [in] Determines output level. |
out | [out] Journal outputting. |
Implemented in MoochoPack::EvalNewPointTailoredApproachOrthogonal_Step, and MoochoPack::EvalNewPointTailoredApproachCoordinate_Step.
|
pure virtual |
Overridden by subclass to recompute py
and Ypy
.
D | [in] matrix D = -inv(C)*N |
py | [in/out] On input py = -inv(C)*c(decomp) . On output py = -inv((Gc(decomp)'*Y)*c(decomp) |
Implemented in MoochoPack::EvalNewPointTailoredApproachOrthogonal_Step, and MoochoPack::EvalNewPointTailoredApproachCoordinate_Step.
|
pure virtual |
Overridden by subclass to print how py
and Y
are computed.
Implemented in MoochoPack::EvalNewPointTailoredApproachOrthogonal_Step, and MoochoPack::EvalNewPointTailoredApproachCoordinate_Step.