aboutsummaryrefslogtreecommitdiffstats
path: root/utilities/opt_types.hpp
blob: 815afc9244da8004ee55717d3df142b0c8ef0b76 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/**
   \file opt_types
   \brief define some usually used template
   \author Junhua Gu
 */


#ifndef OPT_TYPES_HPP
#define OPT_TYPES_HPP
#define OPT_HEADER
#include <core/optimizer.hpp>
#include <core/fitter.hpp>
#include <data_sets/default_data_set.hpp>
#include <methods/powell/powell_method.hpp>
#include <statistics/chisq.hpp>
#include <statistics/leastsq.hpp>
#include <vector>

namespace opt_utilities
{
  
  template <typename Ty,typename Tx,typename Tp,typename Ts,typename Tstr>
  class opt_types
  {
  public:
    typedef ::opt_utilities::fitter<Ty,Tx,Tp,Ts,Tstr> fitter;
    typedef ::opt_utilities::chisq<Ty,Tx,Tp,Ts,Tstr> chisq;
    typedef ::opt_utilities::leastsq<Ty,Tx,Tp,Ts,Tstr> leastsq;
    typedef ::opt_utilities::powell_method<Ty,Tp> powell_method;
    typedef ::opt_utilities::model<Ty,Tx,Tp,Tstr> model;
    typedef ::opt_utilities::default_data_set<Ty,Ty> data_set;
    typedef ::opt_utilities::optimizer<Ty,Tp> optimizer;
    typedef ::opt_utilities::func_obj<Ty,Tp> func_obj;
    typedef ::opt_utilities::opt_method<Ty,Tp> opt_method;
  };

  typedef opt_types<double,double,std::vector<double>,double,std::string> dopt;
  
}




#endif
//EOF