Go to the documentation of this file.
56 #include "Teuchos_GlobalMPISession.hpp"
62 int main(
int argc,
char *argv[]) {
64 Teuchos::GlobalMPISession mpiSession(&argc, &argv);
67 int iprint = argc - 1;
68 ROL::Ptr<std::ostream> outStream;
71 outStream = ROL::makePtrFromRef(std::cout);
73 outStream = ROL::makePtrFromRef(bhs);
85 ROL::ParameterList parlist;
86 parlist.sublist(
"Step").sublist(
"Line Search").sublist(
"Descent Method").set(
"Type",
"Newton-Krylov");
87 parlist.sublist(
"Status Test").set(
"Gradient Tolerance",1.e-12);
88 parlist.sublist(
"Status Test").set(
"Step Tolerance",1.e-14);
89 parlist.sublist(
"Status Test").set(
"Iteration Limit",100);
95 ROL::Ptr<std::vector<RealT> > x_ptr = ROL::makePtr<std::vector<RealT>>(dim, 0.0);
97 for (
int i=0; i<dim/2; i++) {
99 (*x_ptr)[2*i+1] = 1.0;
104 algo.
run(x, obj,
true, *outStream);
107 ROL::Ptr<std::vector<RealT> > xtrue_ptr = ROL::makePtr<std::vector<RealT>>(dim, 1.0);
114 *outStream << std::scientific <<
"\n Absolute Error: " << abserr;
115 *outStream << std::scientific <<
"\n Relative Error: " << relerr <<
"\n";
116 if ( relerr > sqrt(ROL::ROL_EPSILON<RealT>()) ) {
120 catch (std::logic_error err) {
121 *outStream << err.what() <<
"\n";
126 std::cout <<
"End Result: TEST FAILED\n";
128 std::cout <<
"End Result: TEST PASSED\n";
int main(int argc, char *argv[])
void axpy(const Real alpha, const Vector< Real > &x)
Compute where .
Real norm() const
Returns where .
TRIBITS_ADD_EXECUTABLE(example_01 SOURCES example_01.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_02 SOURCES example_02.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_03 SOURCES example_03.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_04 SOURCES example_04.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_05 SOURCES example_05.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_06 SOURCES example_06.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_07 SOURCES example_07.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(example_08 SOURCES example_08.cpp ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(BurgersControlDataCopy SOURCE_FILES input.xml SOURCE_DIR "$
basic_nullstream< char, char_traits< char > > nullstream
Contains definitions for Rosenbrock's function.
TRIBITS_ADD_EXECUTABLE_AND_TEST(FLETCHER SOURCES test_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BOUNDFLETCHER SOURCES test_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(ALLPROBLEMS SOURCES test_03.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(StepFletcherTestDataCopy SOURCE_FILES input.xml input_ex02.xml input_ex03.xml SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(DerivativeCheck SOURCES test_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BarrierFunctionCheck SOURCES test_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BlockOperatorCheck SOURCES test_03.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(SimOptSolveCheck SOURCES test_04.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(NonlinearLeastSquaresCheck SOURCES test_05.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(StdObjectiveCheck SOURCES test_06.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(CompositeObjectiveCheck SOURCES test_07.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(CompositeObjectiveSimOptCheck SOURCES test_08.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(ConstraintPartionedCheck SOURCES test_09.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(CompositeConstraintCheck SOURCES test_10.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(ColemanLiModelCheck SOURCES test_11.cpp ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(HouseholderReflectorCheck SOURCES test_12.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BinaryConstraintCheck SOURCES test_13.cpp ARGS PrintItAll PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(BinaryConstraintDataCopy SOURCE_FILES binary_constraint.xml SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(StdVectorInterface SOURCES test_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(PartitionedVectorInterface SOURCES test_04.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(ScaledStdVectorInterface SOURCES test_05.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(ProfiledVectorInterface SOURCES test_06.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(RieszVectorInterface SOURCES test_07.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(VectorCloneInterface SOURCES test_09.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE(VectorWorkspace SOURCES test_10.cpp ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(VectorTestDataCopy SOURCE_FILES parameters.xml SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(LineSearch SOURCES test_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(TrustRegion SOURCES test_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BoxConstrained_LineSearch SOURCES test_03.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BoxConstrained_TrustRegion SOURCES test_04.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BoxConstrained_PrimalDualActiveSet SOURCES test_05.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(LineSearchTypes SOURCES test_06.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(StepNotImplemented SOURCES test_12.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(InteriorPointStep SOURCES test_13.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(MoreauYosidaPenaltyStep SOURCES test_14.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(BoxConstrained_LM_TrustRegion SOURCES test_15.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(AugmentedLagrangianStep SOURCES test_16.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(FletcherStep SOURCES test_17.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(StepTestDataCopy SOURCE_FILES input.xml SOURCE_DIR "$
Provides an interface to run optimization algorithms.
virtual std::vector< std::string > run(Vector< Real > &x, Objective< Real > &obj, bool print=false, std::ostream &outStream=std::cout, bool printVectors=false, std::ostream &vectorStream=std::cout)
Run algorithm on unconstrained problems (Type-U). This is the primary Type-U interface.
TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01 SOURCES example_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_02 SOURCES example_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(ZakharovDataCopy SOURCE_FILES parameters.xml SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01 SOURCES example_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_02 SOURCES example_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(PoissonControlDataCopy SOURCE_FILES input.xml example_02.xml SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01 SOURCES example_01.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_02 SOURCES example_02.cpp ARGS "default" "exactsolve" NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(GrossPitaevskiiDataCopy SOURCE_FILES parameters.xml SOURCE_DIR "$
include_directories(${JSONCPP_INCLUDE_DIRS}) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01 SOURCES example_01.cpp IMPORTEDLIBS jsoncpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(JsonDataCopy SOURCE_FILES parameters.json SOURCE_DIR "$
TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01a SOURCES example_01a.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_01b SOURCES example_01b.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_ADD_EXECUTABLE_AND_TEST(example_02 SOURCES example_02.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(SacadoDataCopy SOURCE_FILES parameters.xml SOURCE_DIR "$
Provides the ROL::Vector interface for scalar values, to be used, for example, with scalar constraint...
Implements the MINRES algorithm for solving symmetric indefinite systems.
Provides a "smart" cloning manager to be used a member variable in a class and called in the member f...
Defines a no-output stream class ROL::NullStream and a function makeStreamPtr which either wraps a re...