00001 #ifndef CTLINTERFACE_H 00002 #define CTLINTERFACE_H 00003 00004 00005 #include <vector> 00006 #include <string> 00007 00008 class Ctlinterface 00009 { 00010 public: 00011 Ctlinterface(); 00012 Ctlinterface(const std::string& input); 00013 Ctlinterface( const std::string& input, const std::vector<double>& params ); 00014 ~Ctlinterface(); 00015 00016 void set_params( const std::vector<double>& params ); 00017 int solve(); 00018 void get_state( std::vector<double>& state ) const; 00019 void get_residual(const std::vector<double>& params,const std::vector<double>& state, const unsigned int niter, std::vector<double>& residual ) const; 00020 00021 }; 00022 00023 #endif