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);
92 ROL::Ptr<ROL::Step<RealT>>
93 step = ROL::makePtr<ROL::LineSearchStep<RealT>>(parlist);
94 ROL::Ptr<ROL::StatusTest<RealT>>
95 status = ROL::makePtr<ROL::StatusTest<RealT>>(parlist);
99 ROL::Ptr<std::vector<RealT> > x_ptr = ROL::makePtr<std::vector<RealT>>(
dim, 0.0);
101 for (
int i=0; i<
dim/2; i++) {
102 (*x_ptr)[2*i] = -1.2;
103 (*x_ptr)[2*i+1] = 1.0;
108 algo.run(x, obj,
true, *outStream);
111 ROL::Ptr<std::vector<RealT> > xtrue_ptr = ROL::makePtr<std::vector<RealT>>(
dim, 1.0);
118 *outStream << std::scientific <<
"\n Absolute Error: " << abserr;
119 *outStream << std::scientific <<
"\n Relative Error: " << relerr <<
"\n";
120 if ( relerr > sqrt(ROL::ROL_EPSILON<RealT>()) ) {
124 catch (std::logic_error& err) {
125 *outStream << err.what() <<
"\n";
130 std::cout <<
"End Result: TEST FAILED\n";
132 std::cout <<
"End Result: TEST PASSED\n";
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_ADD_EXECUTABLE_AND_TEST(CubicTest SOURCES test_18.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 "$
int main(int argc, char *argv[])
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_ADD_EXECUTABLE_AND_TEST(example_03 SOURCES example_03.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 input_ex03.xml example_02.xml SOURCE_DIR "$
void axpy(const Real alpha, const Vector< Real > &x)
Compute where .
Real norm() const
Returns where .
basic_nullstream< char, char_traits< char > > nullstream
Contains definitions for Rosenbrock's function.
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_ADD_EXECUTABLE_AND_TEST(StdArrayInterface SOURCES test_11.cpp ARGS PrintItAll NUM_MPI_PROCS 1 PASS_REGULAR_EXPRESSION "TEST PASSED" ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(VectorTestDataCopy SOURCE_FILES parameters.xml SOURCE_DIR "$
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(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_ADD_EXECUTABLE(example_10 SOURCES example_10.cpp ADD_DIR_TO_NAME) TRIBITS_COPY_FILES_TO_BINARY_DIR(BurgersControlDataCopy SOURCE_FILES input.xml input_ex10.xml SOURCE_DIR "$
Provides an interface to run optimization algorithms.
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 "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...