comparison src/expression.h @ 173:9e944b0d0fc8

Some Formatting improvements (?)
author gedeone-octave <marcovass89@hotmail.it>
date Sat, 12 Oct 2013 16:06:00 +0100
parents 5fe2a157f4eb
children
comparison
equal deleted inserted replaced
172:8ea37cfc7a14 173:9e944b0d0fc8
28 28
29 class expression : public dolfin::Expression 29 class expression : public dolfin::Expression
30 { 30 {
31 31
32 public: 32 public:
33 expression() : dolfin::Expression() {} 33 expression()
34 : dolfin::Expression() {}
34 35
35 expression (octave_fcn_handle & _f) : 36 expression (octave_fcn_handle & _f)
36 dolfin::Expression (), f (new octave_fcn_handle (_f)) {} 37 : dolfin::Expression (), f (new octave_fcn_handle (_f)) {}
37 38
38 expression (octave_fcn_handle & _f, std::size_t _n) : 39 expression (octave_fcn_handle & _f,
39 dolfin::Expression (_n), f (new octave_fcn_handle (_f)) {} 40 std::size_t _n)
41 : dolfin::Expression (_n), f (new octave_fcn_handle (_f)) {}
40 42
41 ~expression (void) { delete f; } 43 ~expression (void) { delete f; }
42 44
45 void
46 eval (dolfin::Array<double>& values,
47 const dolfin::Array<double>& x) const
48 {
49 octave_value_list b;
50 b.resize (x.size ());
51 for (std::size_t i = 0; i < x.size (); ++i)
52 b(i) = x[i];
53 octave_value_list tmp = feval (f->function_value (), b);
54 Array<double> res = tmp(0).array_value ();
43 55
44 void eval (dolfin::Array<double>& values, const dolfin::Array<double>& x) const 56 for (std::size_t i = 0; i < values.size (); ++i)
45 { 57 values[i] = res(i);
46 octave_value_list b; 58 }
47 b.resize (x.size ());
48 for (std::size_t i = 0; i < x.size (); ++i)
49 b(i) = x[i];
50 octave_value_list tmp = feval (f->function_value (), b);
51 Array<double> res = tmp(0).array_value ();
52
53 for (std::size_t i = 0; i < values.size (); ++i)
54 values[i] = res(i);
55 }
56 59
57 private: 60 private:
58 octave_fcn_handle * f; 61 octave_fcn_handle * f;
59 }; 62 };
60 #endif 63 #endif