GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
LSODE.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 1996-2017 John W. Eaton
4 
5 This file is part of Octave.
6 
7 Octave is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 3 of the License, or (at your
10 option) any later version.
11 
12 Octave is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, see
19 <http://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if ! defined (octave_LSODE_h)
24 #define octave_LSODE_h 1
25 
26 #include "octave-config.h"
27 
28 #include <cfloat>
29 
30 #include "LSODE-opts.h"
31 
32 class
33 OCTAVE_API
34 LSODE : public ODE, public LSODE_options
35 {
36 public:
37 
38  LSODE (void)
39  : ODE (), LSODE_options (), initialized (false), method_flag (0),
40  maxord (0), itask (0), iopt (0), itol (0), liw (0), lrw (0),
41  iwork (), rwork (), rel_tol (0.0), abs_tol () { }
42 
43  LSODE (const ColumnVector& s, double tm, const ODEFunc& f)
44  : ODE (s, tm, f), LSODE_options (), initialized (false), method_flag (0),
45  maxord (0), itask (0), iopt (0), itol (0), liw (0), lrw (0),
46  iwork (), rwork (), rel_tol (0.0), abs_tol () { }
47 
48  ~LSODE (void) { }
49 
50  ColumnVector do_integrate (double t);
51 
52  Matrix do_integrate (const ColumnVector& tout);
53 
54  Matrix do_integrate (const ColumnVector& tout, const ColumnVector& tcrit);
55 
56  std::string error_message (void) const;
57 
58 private:
59 
61 
67 
70 
73 
74  double rel_tol;
75 
77 };
78 
79 #endif
Array< double > abs_tol
Definition: LSODE.h:76
octave_idx_type maxord
Definition: LSODE.h:63
octave_idx_type method_flag
Definition: LSODE.h:62
bool initialized
Definition: LSODE.h:60
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE * f
octave_idx_type itol
Definition: LSODE.h:66
Array< octave_idx_type > iwork
Definition: LSODE.h:71
octave_idx_type itask
Definition: LSODE.h:64
OCTAVE_EXPORT octave_value_list return the number of command line arguments passed to Octave If called with the optional argument the function t
Definition: ov-usr-fcn.cc:935
s
Definition: file-io.cc:2682
Definition: LSODE.h:32
Definition: ODE.h:31
Array< double > rwork
Definition: LSODE.h:72
LSODE(void)
Definition: LSODE.h:38
is false
Definition: cellfun.cc:398
LSODE(const ColumnVector &s, double tm, const ODEFunc &f)
Definition: LSODE.h:43
Definition: dMatrix.h:37
octave_idx_type iopt
Definition: LSODE.h:65
double rel_tol
Definition: LSODE.h:74
octave_idx_type lrw
Definition: LSODE.h:69
octave_idx_type liw
Definition: LSODE.h:68
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
Definition: utils.cc:854
~LSODE(void)
Definition: LSODE.h:48