42 #include "MoochoPack_EvalNewPointTailoredApproachCoordinate_Step.hpp"
43 #include "ConstrainedOptPack_MatrixIdentConcatStd.hpp"
44 #include "NLPInterfacePack_NLPDirect.hpp"
45 #include "AbstractLinAlgPack_MatrixOp.hpp"
46 #include "AbstractLinAlgPack_MatrixZero.hpp"
47 #include "AbstractLinAlgPack_VectorMutable.hpp"
48 #include "Teuchos_dyn_cast.hpp"
50 namespace MoochoPack {
52 EvalNewPointTailoredApproachCoordinate_Step::EvalNewPointTailoredApproachCoordinate_Step(
53 const deriv_tester_ptr_t& deriv_tester
54 ,
const bounds_tester_ptr_t& bounds_tester
76 ,EJournalOutputLevel olevel
80 namespace rcp = MemMngPack;
84 &cY =
dyn_cast<MatrixIdentConcatStd>(*Y);
90 VectorSpace::space_ptr_t
91 space_x = nlp.space_x(),
92 space_xD = space_x->sub_space(nlp.var_dep())->clone(),
93 space_xI = space_x->sub_space(nlp.var_indep())->clone();
97 ,MatrixIdentConcatStd::BOTTOM
112 ,EJournalOutputLevel olevel
120 std::ostream& out,
const std::string& L
124 << L <<
"*** Coordinate decomposition\n"
125 << L <<
"py_k = py_k\n"
126 << L <<
"Y = [ I ; 0 ] <: R^(n x m) [0 represented using MatrixZero]\n"
127 << L <<
"Uy = Gc(var_dep,con_undecomp)\'\n"
void uninitialize_Y_Uy(MatrixOp *Y, MatrixOp *Uy)
void recalc_py(const MatrixOp &D, VectorMutable *py, EJournalOutputLevel olevel, std::ostream &out)
void calc_py_Y_Uy(const NLPDirect &nlp, const D_ptr_t &D, VectorMutable *py, MatrixOp *Y, MatrixOp *Uy, EJournalOutputLevel olevel, std::ostream &out)
T_To & dyn_cast(T_From &from)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
void print_calc_py_Y_Uy(std::ostream &out, const std::string &leading_str) const
Base class for evaluating a new point for the "Tailored Approach".