Rosetta 3.3

#include <SVD_Solver.hh>
Public Member Functions  
SVD_Solver ()  
~SVD_Solver ()  
SVD_Solver (platform::Size const M, platform::Size const N)  
M is the size of vector b (experimental data); N is the size of the vector to optimize M >= N.  
SVD_Solver &  operator= (SVD_Solver const &other) 
SVD_Solver (SVD_Solver const &other)  
void  set_vector_b (utility::vector1< double > const &b) 
set the vector b of Ax=b  
void  set_matrix_A (utility::vector1< utility::vector1< double > > const &A) 
set the matrix A of Ax=b  
void  set_vector_b (FArray1D< double > const &b) 
set the vector b of Ax=b (FArray1D version)  
void  set_matrix_A (FArray2D< double > const &A) 
set the matrix A of Ax=b (FArray2D version)  
void  run_decomp_svd () 
decompose the matrix A. Can be called after the matrix A and vector b are set (with set_matrix_A and set_vector_b)  
void  run_solve_svd () 
minimize the cost sqrt( A x  b^2 ) (but doesn't calculate it) Can be called after run_decomp_svd()  
double  run_score_svd_on_matrix (utility::vector1< utility::vector1< double > > const &cppstyle_A) const 
return the score given the matrix A Can be called after run_decomp_svd()  
double  run_score_svd_on_matrix (FArray2D< double > const &A) const 
return the score given the matrix A (FArray2D version) Can be called after run_decomp_svd()  
double  run_score_svd_without_solving () 
return the minimzed score without the need to call run_solve_svd() Can be called after run_decomp_svd()  
utility::vector1< double > const &  get_svd_solution () const 
return the vector x that minimize Ax  b^2 Can be called after run_solve_svd() 
basic::svd::SVD_Solver::SVD_Solver  (  ) 
References utility_exit_with_message.
basic::svd::SVD_Solver::~SVD_Solver  (  ) 
basic::svd::SVD_Solver::SVD_Solver  (  platform::Size const  M, 
platform::Size const  N  
) 
M is the size of vector b (experimental data); N is the size of the vector to optimize M >= N.
References color_pdb::i, and utility_exit_with_message.
basic::svd::SVD_Solver::SVD_Solver  (  SVD_Solver const &  other  ) 
utility::vector1< double > const & basic::svd::SVD_Solver::get_svd_solution  (  )  const 
return the vector x that minimize Ax  b^2 Can be called after run_solve_svd()
Return the optimized vector x. Can be called only when Axb^2 has been minimized.
References utility_exit_with_message.
SVD_Solver & basic::svd::SVD_Solver::operator=  (  SVD_Solver const &  other  ) 
References color_pdb::i, and utility_exit_with_message.
void basic::svd::SVD_Solver::run_decomp_svd  (  ) 
decompose the matrix A. Can be called after the matrix A and vector b are set (with set_matrix_A and set_vector_b)
Decomposition of the matrix A. Can be called only when A is set. You can't decompose twice in a row without reseting the matrix A.
References utility_exit_with_message.
return the score given the matrix A (FArray2D version) Can be called after run_decomp_svd()
Return the score SQRT(Axb^2). Can be called only when Axb^2 has been minimized. You need the give the original A matrix as argument.
References ObjexxFCL::fmt::A(), color_pdb::i, basic::options::OptionKeys::AnchoredDesign::filters::score, color_pdb::temp, and utility_exit_with_message.
double basic::svd::SVD_Solver::run_score_svd_on_matrix  (  utility::vector1< utility::vector1< double > > const &  cppstyle_A  )  const 
return the score given the matrix A Can be called after run_decomp_svd()
Return the score SQRT(Axb^2). Can be called only when Axb^2 has been minimized. You need the give the original A matrix as argument.
References color_pdb::i, basic::options::OptionKeys::AnchoredDesign::filters::score, color_pdb::temp, and utility_exit_with_message.
double basic::svd::SVD_Solver::run_score_svd_without_solving  (  ) 
return the minimzed score without the need to call run_solve_svd() Can be called after run_decomp_svd()
Attempt to speed up calculation of the cost without actually solving Ax = b The routine works, but is not faster (nor slower)
References color_pdb::i, basic::options::OptionKeys::AnchoredDesign::filters::score, color_pdb::temp, and utility_exit_with_message.
void basic::svd::SVD_Solver::run_solve_svd  (  ) 
minimize the cost sqrt( A x  b^2 ) (but doesn't calculate it) Can be called after run_decomp_svd()
Minimize Ax  b^2. Can be called only when b is set and A is decomposed. You are allowed to update the vector b and minimize again.
References utility_exit_with_message.
set the matrix A of Ax=b (FArray2D version)
To minimize Ax  b^2, you need to set the matrix A.
References ObjexxFCL::fmt::A(), color_pdb::i, ObjexxFCL::FArray< T >::size(), and utility_exit_with_message.
void basic::svd::SVD_Solver::set_matrix_A  (  utility::vector1< utility::vector1< double > > const &  A  ) 
set the matrix A of Ax=b
To minimize Ax  b^2, you need to set the matrix A.
References ObjexxFCL::fmt::A(), color_pdb::i, amino_acids::size, and utility_exit_with_message.
set the vector b of Ax=b (FArray1D version)
To minimize Ax  b^2, you need to set the vector b.
References test::T850_SubClassing::b, color_pdb::i, ObjexxFCL::FArray< T >::size(), and utility_exit_with_message.
void basic::svd::SVD_Solver::set_vector_b  (  utility::vector1< double > const &  b  ) 
set the vector b of Ax=b
To minimize Ax  b^2, you need to set the vector b.
References color_pdb::i, and utility_exit_with_message.