Mercurial > octave-nkf
annotate liboctave/DASPK.h @ 11502:4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 13 Jan 2011 03:16:40 -0500 |
parents | cbc402e64d83 |
children | fd0a3ac60b0e |
rev | line source |
---|---|
3912 | 1 /* |
2 | |
7017 | 3 Copyright (C) 1996, 1997, 2002, 2003, 2004, 2005, 2006, 2007 |
4 John W. Eaton | |
3912 | 5 |
6 This file is part of Octave. | |
7 | |
8 Octave is free software; you can redistribute it and/or modify it | |
9 under the terms of the GNU General Public License as published by the | |
7016 | 10 Free Software Foundation; either version 3 of the License, or (at your |
11 option) any later version. | |
3912 | 12 |
13 Octave is distributed in the hope that it will be useful, but WITHOUT | |
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
16 for more details. | |
17 | |
18 You should have received a copy of the GNU General Public License | |
7016 | 19 along with Octave; see the file COPYING. If not, see |
20 <http://www.gnu.org/licenses/>. | |
3912 | 21 |
22 */ | |
23 | |
24 #if !defined (octave_DASPK_h) | |
25 #define octave_DASPK_h 1 | |
26 | |
27 #include <cfloat> | |
28 | |
3998 | 29 #include "DASPK-opts.h" |
7231 | 30 #include "lo-math.h" |
3912 | 31 |
32 class | |
6108 | 33 OCTAVE_API |
3912 | 34 DASPK : public DAE, public DASPK_options |
35 { | |
36 public: | |
37 | |
11502
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
38 DASPK (void) |
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
39 : DAE (), DASPK_options (), initialized (false), liw (0), lrw (0), |
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
40 info (), iwork (), rwork (), abs_tol (), rel_tol () { } |
3912 | 41 |
4587 | 42 DASPK (const ColumnVector& s, double tm, DAEFunc& f) |
11502
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
43 : DAE (s, tm, f), DASPK_options (), initialized (false), liw (0), |
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
44 lrw (0), info (), iwork (), rwork (), abs_tol (), rel_tol () { } |
3912 | 45 |
4587 | 46 DASPK (const ColumnVector& s, const ColumnVector& deriv, |
10312
cbc402e64d83
untabify liboctave header files
John W. Eaton <jwe@octave.org>
parents:
10158
diff
changeset
|
47 double tm, DAEFunc& f) |
11502
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
48 : DAE (s, deriv, tm, f), DASPK_options (), initialized (false), |
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
49 liw (0), lrw (0), info (), iwork (), rwork (), abs_tol (), |
4638800cd660
delete data pointer members from liboctave ODE/DAE classes; make destuctors virtual in ODE/DAE base classes
John W. Eaton <jwe@octave.org>
parents:
10312
diff
changeset
|
50 rel_tol () { } |
3912 | 51 |
52 ~DASPK (void) { } | |
53 | |
54 ColumnVector do_integrate (double t); | |
55 | |
56 Matrix do_integrate (const ColumnVector& tout); | |
57 | |
58 Matrix do_integrate (const ColumnVector& tout, const ColumnVector& tcrit); | |
59 | |
60 Matrix integrate (const ColumnVector& tout, Matrix& xdot_out); | |
61 | |
62 Matrix integrate (const ColumnVector& tout, Matrix& xdot_out, | |
10312
cbc402e64d83
untabify liboctave header files
John W. Eaton <jwe@octave.org>
parents:
10158
diff
changeset
|
63 const ColumnVector& tcrit); |
3912 | 64 |
3995 | 65 std::string error_message (void) const; |
66 | |
3912 | 67 private: |
68 | |
4049 | 69 bool initialized; |
70 | |
5275 | 71 octave_idx_type liw; |
72 octave_idx_type lrw; | |
4049 | 73 |
5275 | 74 Array<octave_idx_type> info; |
75 Array<octave_idx_type> iwork; | |
4049 | 76 |
3912 | 77 Array<double> rwork; |
78 | |
4049 | 79 Array<double> abs_tol; |
80 Array<double> rel_tol; | |
3912 | 81 }; |
82 | |
83 #endif |