MOOCHO (Single Doxygen Collection)
Version of the Day
|
Interface for objects responsible for configuring an rSQP algorithm. More...
#include <MoochoPack_NLPAlgoConfig.hpp>
Classes | |
class | InvalidNLPType |
Thrown if NLP type is incompatible with this config. More... | |
Private Attributes | |
OptionsFromStreamPack::OptionsFromStream * | options |
Public types | |
typedef Teuchos::RCP< const OptionsFromStreamPack::OptionsFromStream > | options_ptr_t |
Constructors/destructors | |
virtual | ~NLPAlgoConfig () |
Set options | |
virtual void | set_options (const options_ptr_t &options)=0 |
Set the OptionsFromStreamPack::OptionsFromStream to extract the options for the configuration from. More... | |
virtual const options_ptr_t & | get_options () const =0 |
Get the OptionsFromStream object being used to extract the options from. More... | |
Algorithm configuration and initialization | |
virtual void | config_algo_cntr (NLPAlgoContainer *algo_cntr, std::ostream *trase_out=0)=0 |
Configure the rSQP algorithm container with an rSQP algorithm object. More... | |
virtual void | init_algo (NLPAlgoInterface *algo)=0 |
Initialize the rSQP algorithm object for the start of SQP iterations. More... | |
Interface for objects responsible for configuring an rSQP algorithm.
Objects of this type configure a NLPAlgoContainer
object with an rSQP algorithm object, configuring the algo with step, state etc. objects and initailizing the algorithm before the interations start.
Definition at line 62 of file MoochoPack_NLPAlgoConfig.hpp.
typedef Teuchos::RCP< const OptionsFromStreamPack::OptionsFromStream> MoochoPack::NLPAlgoConfig::options_ptr_t |
Definition at line 73 of file MoochoPack_NLPAlgoConfig.hpp.
|
inlinevirtual |
Definition at line 81 of file MoochoPack_NLPAlgoConfig.hpp.
|
pure virtual |
Set the OptionsFromStreamPack::OptionsFromStream
to extract the options for the configuration from.
options | [in] Smart pointer to an OptionsFromStream object that the solver will extract options from. If options.get() != NULL then this object must not be destroyed until this->set_options(other_options) is called where other_options.get() != options.get() or this is destoryed. If options.get() == NULL then a default set of options will be used. |
Postconditions:
this->get_options().get() = options.get()
It is allowed for options in the underlying *options
object to be modified without recalling this->set_options()
again.
Implemented in MoochoPack::NLPAlgoConfigMamaJama, and MoochoPack::NLPAlgoConfigIP.
|
pure virtual |
Get the OptionsFromStream
object being used to extract the options from.
Implemented in MoochoPack::NLPAlgoConfigMamaJama, and MoochoPack::NLPAlgoConfigIP.
|
pure virtual |
Configure the rSQP algorithm container with an rSQP algorithm object.
algo_cntr | [in/out] On input, algo_cntr may or may not already have a configured algorithm. The options set from the interface NLPSolverClientInterface may be used determine how the algorithm is to be configured. On output, algo_cntr will have a configured algorithm (ready to call algo_cntr->algo() .interface_print_algorithm(...)). |
trase_out | [in/out] If trase_out != NULL on input, then *trase_out will recieve a discription about the logic of how the algorithm is configured. |
Preconditions:
algo_cntr != NULL
(throw ???
) algo_cntr->get_nlp().get() != NULL
(throw ???
) algo_cntr->get_track().get() != NULL
(throw ???
) Postconditions:
algo_cntr->get_algo().get() != NULL
(throw ???
) Note that if the type of NLP return by algo_cntr->nlp()
is not supported by this configuration object, then a InvalidNLPType
exception will be thrown.
Implemented in MoochoPack::NLPAlgoConfigMamaJama, and MoochoPack::NLPAlgoConfigIP.
|
pure virtual |
Initialize the rSQP algorithm object for the start of SQP iterations.
algo_cntr | [in/out] On input, algo_cntr must already have a configured algorithm. On output, algo_cntr will be ready to solve the NLP (i.e. ready to call algo_cntr->algo() .dispatch(...)). |
Preconditions:
algo_cntr != NULL
(throw ???
) algo_cntr->get_nlp().get() != NULL
(throw ???
) algo_cntr->get_track().get() != NULL
(throw ???
) algo_cntr->get_algo().get() != NULL
(throw ???
) Postconditions:
algo_cntr
ready to solve the NLP. Implemented in MoochoPack::NLPAlgoConfigMamaJama, and MoochoPack::NLPAlgoConfigIP.
|
private |
Definition at line 178 of file MoochoPack_NLPAlgoConfig.hpp.