44 #include "MoochoPack_ReducedGradientStd_Step.hpp"
45 #include "MoochoPack_moocho_algo_conversion.hpp"
46 #include "IterationPack_print_algorithm_step.hpp"
47 #include "AbstractLinAlgPack_VectorMutable.hpp"
48 #include "AbstractLinAlgPack_VectorOut.hpp"
49 #include "AbstractLinAlgPack_MatrixOpNonsing.hpp"
50 #include "AbstractLinAlgPack_LinAlgOpPack.hpp"
52 namespace MoochoPack {
60 using LinAlgOpPack::V_MtV;
62 NLPAlgo &algo = rsqp_algo(_algo);
65 EJournalOutputLevel olevel = algo.algo_cntr().journal_output_level();
66 EJournalOutputLevel ns_olevel = algo.algo_cntr().null_space_journal_output_level();
70 if( static_cast<int>(olevel) >= static_cast<int>(PRINT_ALGORITHM_STEPS) ) {
71 using IterationPack::print_algorithm_step;
72 print_algorithm_step( _algo, step_poss, type, assoc_step_poss, out );
76 IterQuantityAccess<VectorMutable>
79 IterQuantityAccess<MatrixOp>
83 V_MtV( &rGf_iq.set_k(0), Z_iq.get_k(0),
trans, Gf_iq.get_k(0) );
85 if( static_cast<int>(ns_olevel) >=
static_cast<int>(PRINT_ALGORITHM_STEPS) ) {
86 out <<
"\n||rGf||inf = " << rGf_iq.get_k(0).norm_inf() << std::endl;
89 if( static_cast<int>(ns_olevel) >= static_cast<int>(PRINT_VECTORS) ) {
90 out <<
"\nrGf_k =\n" << rGf_iq.get_k(0);
98 ,
poss_type assoc_step_poss, std::ostream& out,
const std::string& L
102 << L <<
"*** Evaluate the reduced gradient of the objective funciton\n"
103 << L <<
"rGf_k = Z_k' * Gf_k\n";
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
bool do_step(Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss)
rSQP Algorithm control class.
virtual std::ostream & journal_out() const
Reduced space SQP state encapsulation interface.
AlgorithmTracker & track()
NLPAlgoState & rsqp_state()
<<std aggr>="">> members for algo_cntr