|
MoochoPack : Framework for Large-Scale Optimization Algorithms Version of the Day
|
00001 // @HEADER 00002 // *********************************************************************** 00003 // 00004 // Moocho: Multi-functional Object-Oriented arCHitecture for Optimization 00005 // Copyright (2003) Sandia Corporation 00006 // 00007 // Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive 00008 // license for use of this work by or on behalf of the U.S. Government. 00009 // 00010 // This library is free software; you can redistribute it and/or modify 00011 // it under the terms of the GNU Lesser General Public License as 00012 // published by the Free Software Foundation; either version 2.1 of the 00013 // License, or (at your option) any later version. 00014 // 00015 // This library is distributed in the hope that it will be useful, but 00016 // WITHOUT ANY WARRANTY; without even the implied warranty of 00017 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 // Lesser General Public License for more details. 00019 // 00020 // You should have received a copy of the GNU Lesser General Public 00021 // License along with this library; if not, write to the Free Software 00022 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00023 // USA 00024 // Questions? Contact Roscoe A. Bartlett (rabartl@sandia.gov) 00025 // 00026 // *********************************************************************** 00027 // @HEADER 00028 // 00029 #include "MoochoPack_IpState.hpp" 00030 #include "AbstractLinAlgPack_MatrixSymDiagStd.hpp" 00031 00032 // Iteration Quantity Strings 00033 const std::string MoochoPack::barrier_parameter_name = "barrier_parameter"; 00034 const std::string MoochoPack::barrier_obj_name = "barrier_obj"; 00035 const std::string MoochoPack::grad_barrier_obj_name = "grad_barrier_obj"; 00036 const std::string MoochoPack::e_tol_name = "e_tol"; 00037 const std::string MoochoPack::comp_err_mu_name = "comp_err_mu"; 00038 const std::string MoochoPack::Vu_name = "Vu"; 00039 const std::string MoochoPack::Vl_name = "Vl"; 00040 const std::string MoochoPack::invXu_name = "invXu"; 00041 const std::string MoochoPack::invXl_name = "invXl"; 00042 const std::string MoochoPack::rHB_name = "rHB"; 00043 const std::string MoochoPack::B_name = "B"; 00044 const std::string MoochoPack::Sigma_name = "Sigma"; 00045 const std::string MoochoPack::w_sigma_name = "w_sigma"; 00046 const std::string MoochoPack::dvl_name = "dvl"; 00047 const std::string MoochoPack::dvu_name = "dvu"; 00048 const std::string MoochoPack::alpha_vl_name = "alpha_vl"; 00049 const std::string MoochoPack::alpha_vu_name = "alpha_vu"; 00050 00051 namespace MoochoPack { 00052 00053 IpState::IpState( 00054 const decomp_sys_ptr_t& decomp_sys 00055 ,const vec_space_ptr_t& space_x 00056 ,const vec_space_ptr_t& space_c 00057 ,const vec_space_ptr_t& space_range 00058 ,const vec_space_ptr_t& space_null 00059 ) 00060 : 00061 NLPAlgoState(decomp_sys, space_x, space_c, space_range, space_null) 00062 { 00063 } 00064 00065 IpState::~IpState() 00066 { 00067 } 00068 00070 00071 STATE_SCALAR_IQ_DEF(IpState, barrier_parameter, barrier_parameter_name) 00072 00073 STATE_SCALAR_IQ_DEF(IpState, barrier_obj, barrier_obj_name) 00074 00075 STATE_VECTOR_IQ_DEF(IpState, grad_barrier_obj, grad_barrier_obj_name, get_space_x(), VST_SPACE_X) 00076 00077 STATE_SCALAR_IQ_DEF(IpState, e_tol, e_tol_name) 00078 00079 STATE_SCALAR_IQ_DEF(IpState, comp_err_mu, comp_err_mu_name) 00080 00081 STATE_IQ_DEF(IpState, MatrixSymDiagStd, Vu, Vu_name) 00082 00083 STATE_IQ_DEF(IpState, MatrixSymDiagStd, Vl, Vl_name) 00084 00085 STATE_IQ_DEF(IpState, MatrixSymDiagStd, invXu, invXu_name) 00086 00087 STATE_IQ_DEF(IpState, MatrixSymDiagStd, invXl, invXl_name) 00088 00089 STATE_IQ_DEF(IpState, MatrixSymOp, rHB, rHB_name) 00090 00091 STATE_IQ_DEF(IpState, MatrixSymOp, B, B_name) 00092 00093 STATE_IQ_DEF(IpState, MatrixSymDiagStd, Sigma, Sigma_name) 00094 00095 STATE_VECTOR_IQ_DEF(IpState, w_sigma, w_sigma_name, get_space_null(), VST_SPACE_NULL ) 00096 STATE_VECTOR_IQ_DEF(IpState, dvl, dvl_name, get_space_x(), VST_SPACE_X) 00097 STATE_VECTOR_IQ_DEF(IpState, dvu, dvu_name, get_space_x(), VST_SPACE_X) 00098 00099 STATE_SCALAR_IQ_DEF(IpState, alpha_vl, alpha_vl_name) 00100 STATE_SCALAR_IQ_DEF(IpState, alpha_vu, alpha_vu_name) 00101 } // end namespace MoochoPack
1.7.4