00001 00002 #include "Sym.h" 00003 #include "MultiFunction.h" 00004 #include "FunDef.h" 00005 00006 using namespace std; 00007 00008 int main() { 00009 00010 Sym v = SymVar(0); 00011 Sym c = SymConst(0.1); 00012 00013 Sym sym = inv(v) + c; 00014 Sym a = sym; 00015 00016 sym = sym * sym; 00017 Sym b = sym; 00018 sym = sym + sym; 00019 00020 c = sym; 00021 00022 vector<Sym> pop; 00023 pop.push_back(sym); 00024 00025 MultiFunction m(pop); 00026 00027 00028 vector<double> vec(1); 00029 vec[0] = 10.0; 00030 cout << sym << endl; 00031 00032 cout << "Eval " << eval(sym, vec); 00033 00034 vector<double> y(1); 00035 00036 m(vec,y); 00037 00038 cout << " " << y[0] << endl; 00039 00040 cout << "3 " << eval(a,vec) << endl; 00041 cout << "4 " << eval(b, vec) << endl; 00042 cout << "5 " << eval(c, vec) << endl; 00043 00044 } 00045