annotate src/feval.cc @ 268:61830a4f9ab9

Improve formatting
author Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
date Thu, 14 Aug 2014 12:26:55 +0200
parents 5e9b5bbdc56b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
1 /*
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
2 Copyright (C) 2013 Marco Vassallo <gedeone-octave@users.sourceforge.net>
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
3 Copyright (C) 2014 Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
4
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
5 This program is free software; you can redistribute it and/or modify it under
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
6 the terms of the GNU General Public License as published by the Free Software
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
7 Foundation; either version 3 of the License, or (at your option) any later
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
8 version.
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
9
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
10 This program is distributed in the hope that it will be useful, but WITHOUT
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
13 details.
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
14
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
15 You should have received a copy of the GNU General Public License along with
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
16 this program; if not, see <http://www.gnu.org/licenses/>.
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
17 */
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
18
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
19 #include "function.h"
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
20 #include <stdexcept>
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
21 #include <vector>
253
5e9b5bbdc56b Support both DOLFIN 1.3.0 and 1.4.0
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 241
diff changeset
22 #include "dolfin_compat.h"
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
23
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
24 DEFUN_DLD (feval, args, nargout, "-*- texinfo -*-\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
25 @deftypefn {Function File} {[@var{fx}, @var{fy}, @var{fz}]} = \
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
26 feval (@var{function_name}, @var{x}, @var{y}, @var{z})\n\
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
27 Evaluate a function at a specific point of the domain and return the value. \n\
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
28 The input parameters are the function and the coordinates of the point where \n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
29 it has to be evaluated.\n\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
30 Be aware that the number of input arguments and outputs depends on the \n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
31 dimensions of its domain and codomain.\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
32 @example\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
33 value = feval (p, x , y)\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
34 @end example\n\
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
35 This is the expected call for a scalar field on a bidimensional domain.\n\
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
36 @seealso{Function}\n\
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
37 @end deftypefn")
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
38 {
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
39
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
40 int nargin = args.length ();
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
41 octave_value_list retval;
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
42
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
43 if (! function_type_loaded)
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
44 {
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
45 function::register_type ();
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
46 function_type_loaded = true;
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
47 mlock ();
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
48 }
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
49
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
50 if (args(0).type_id () == function::static_type_id ())
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
51 {
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
52 const function & fspo =
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
53 static_cast<const function &> (args(0).get_rep ());
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
54
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
55 if (!error_state)
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
56 {
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
57 const SHARED_PTR <const dolfin::Function>
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
58 & f = fspo.get_pfun ();
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
59
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
60 octave_idx_type pdim = f->geometric_dimension ();
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
61 if (nargin != pdim + 1)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
62 { print_usage (); }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
63 else
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
64 {
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
65 std::vector <Matrix> coordinates;
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
66 dim_vector dims;
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
67
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
68 for (octave_idx_type in = 1; in <= pdim; ++in)
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
69 {
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
70 if (! args(in).is_real_type ())
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
71 { error ("invalid argument"); }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
72 else
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
73 {
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
74 Matrix aux = args(in).matrix_value ();
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
75 if (in == 1)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
76 { dims = aux.dims (); }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
77 else
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
78 {
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
79 dim_vector newdims = aux.dims ();
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
80 if (dims != newdims)
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
81 {
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
82 std::string msg = "all the input matrices should";
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
83 msg += " have the same size";
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
84 error (msg.c_str ());
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
85 break;
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
86 }
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
87 }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
88 coordinates.push_back (aux);
233
b07ec30369ab Add checks to feval
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 216
diff changeset
89 }
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
90 }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
91
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
92 if (! error_state)
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
93 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
94 octave_idx_type vdim = f->value_dimension (0);
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
95 if (nargout != vdim)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
96 { error ("wrong number of output arguments"); }
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
97 else
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
98 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
99 std::vector <Matrix> evaluations;
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
100 for (octave_idx_type out = 0; out < vdim; ++out)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
101 { evaluations.push_back (Matrix (dims)); }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
102
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
103 for (octave_idx_type k = 0; k < dims.numel (); ++k)
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
104 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
105 Array<double> point (dim_vector (pdim, 1));
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
106 for (octave_idx_type el = 0; el < pdim; ++el)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
107 { point (el) = coordinates[el] (k); }
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
108 dolfin::Array<double>
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
109 x (point.length (), point.fortran_vec ());
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
110
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
111 Array<double> res (dim_vector (vdim, 1));
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
112 dolfin::Array<double>
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
113 values (res.length (), res.fortran_vec ());
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
114 try
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
115 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
116 f->eval (values, x);
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
117 }
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
118 catch (std::runtime_error & err)
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
119 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
120 std::string msg = "cannot evaluate a function";
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
121 msg += " outside of its domain";
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
122 error (msg.c_str ());
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
123 break;
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
124 }
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
125
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
126 for (octave_idx_type el = 0; el < vdim; ++el)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
127 { evaluations[el] (k) = res (el); }
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
128 }
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
129
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
130 if (! error_state)
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
131 {
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
132 for (std::vector<Matrix>::iterator it =
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
133 evaluations.begin ();
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
134 it != evaluations.end (); ++it)
268
61830a4f9ab9 Improve formatting
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 253
diff changeset
135 { retval.append (octave_value (*it)); }
241
0f14cdbcaed3 feval.cc: stop computation after an error occurs
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 237
diff changeset
136 }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
137 }
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
138 }
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
139 }
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
140 }
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
141 }
237
418a5119047b New interface for function evaluation
Eugenio Gianniti <eugenio.gianniti@mail.polimi.it>
parents: 236
diff changeset
142
216
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
143 return retval;
a28b50969020 New version of feval which accept a matrix or an array as points
gedeone-octave <marcovass89@hotmail.it>
parents: 212
diff changeset
144 }