Mercurial > octave
annotate liboctave/numeric/DASSL-opts.in @ 33658:b1d6e40ac737 stable tip
NEWS.9.md: Fix typo and minor formatting changes.
* etc/NEWS.9.md: Fix typo. Adjust whitespace. Use markdown syntax for code
snippets.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Wed, 05 Jun 2024 11:27:35 +0200 |
parents | 2e484f9f1f18 |
children |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 ######################################################################## |
29357
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
2 ## |
32632
2e484f9f1f18
maint: update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
31706
diff
changeset
|
3 ## Copyright (C) 2002-2024 The Octave Project Developers |
29357
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
4 ## |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
5 ## See the file COPYRIGHT.md in the top-level directory of this |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
6 ## distribution or <https://octave.org/copyright/>. |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
7 ## |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
8 ## This file is part of Octave. |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
9 ## |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
10 ## Octave is free software: you can redistribute it and/or modify it |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
11 ## under the terms of the GNU General Public License as published by |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
12 ## the Free Software Foundation, either version 3 of the License, or |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
13 ## (at your option) any later version. |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
14 ## |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
15 ## Octave is distributed in the hope that it will be useful, but |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
16 ## WITHOUT ANY WARRANTY; without even the implied warranty of |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
17 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
18 ## GNU General Public License for more details. |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
19 ## |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
20 ## You should have received a copy of the GNU General Public License |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
21 ## along with Octave; see the file COPYING. If not, see |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
22 ## <https://www.gnu.org/licenses/>. |
bbbe4dcc7200
use the same comment style for copyright headers in .m files and shell scripts
John W. Eaton <jwe@octave.org>
parents:
27923
diff
changeset
|
23 ## |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 ######################################################################## |
7017 | 25 |
3998 | 26 CLASS = "DASSL" |
27 | |
4044 | 28 INCLUDE = "DAE.h" |
29 | |
3998 | 30 OPTION |
31 NAME = "absolute tolerance" | |
4050 | 32 DOC_ITEM |
33 Absolute tolerance. May be either vector or scalar. If a vector, it | |
34 must match the dimension of the state vector, and the relative | |
35 tolerance must also be a vector of the same length. | |
10840 | 36 |
4050 | 37 END_DOC_ITEM |
3998 | 38 TYPE = "Array<double>" |
39 SET_ARG_TYPE = "const $TYPE&" | |
40 INIT_BODY | |
11574
a83bad07f7e3
attempt better backward compatibility for Array resize functions
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
41 $OPTVAR.resize (dim_vector (1, 1)); |
15220
61822c866ba1
use std::numeric_limits<T>::epsilon in C++ code
John W. Eaton <jwe@octave.org>
parents:
14138
diff
changeset
|
42 $OPTVAR(0) = ::sqrt (std::numeric_limits<double>::epsilon ()); |
3998 | 43 END_INIT_BODY |
44 SET_CODE | |
45 void set_$OPT (double val) | |
46 { | |
11574
a83bad07f7e3
attempt better backward compatibility for Array resize functions
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
47 $OPTVAR.resize (dim_vector (1, 1)); |
15220
61822c866ba1
use std::numeric_limits<T>::epsilon in C++ code
John W. Eaton <jwe@octave.org>
parents:
14138
diff
changeset
|
48 $OPTVAR(0) = (val > 0.0) ? val : ::sqrt (std::numeric_limits<double>::epsilon ()); |
30046
b3717fd85e49
maint: use "m_" prefix for member variables ODE/DAE classes in liboctave/numeric.
Rik <rik@octave.org>
parents:
29358
diff
changeset
|
49 m_reset = true; |
3998 | 50 } |
51 | |
52 void set_$OPT (const $TYPE& val) | |
30046
b3717fd85e49
maint: use "m_" prefix for member variables ODE/DAE classes in liboctave/numeric.
Rik <rik@octave.org>
parents:
29358
diff
changeset
|
53 { $OPTVAR = val; m_reset = true; } |
3998 | 54 END_SET_CODE |
55 END_OPTION | |
56 | |
57 OPTION | |
58 NAME = "relative tolerance" | |
4050 | 59 DOC_ITEM |
60 Relative tolerance. May be either vector or scalar. If a vector, it | |
61 must match the dimension of the state vector, and the absolute | |
62 tolerance must also be a vector of the same length. | |
63 | |
64 The local error test applied at each integration step is | |
4051 | 65 |
4050 | 66 @example |
9067
8970b4b10e9f
Cleanup documentation for quad.texi and diffeq.texi
Rik <rdrider0-list@yahoo.com>
parents:
7017
diff
changeset
|
67 @group |
5016 | 68 abs (local error in x(i)) |
69 <= rtol(i) * abs (Y(i)) + atol(i) | |
9067
8970b4b10e9f
Cleanup documentation for quad.texi and diffeq.texi
Rik <rdrider0-list@yahoo.com>
parents:
7017
diff
changeset
|
70 @end group |
4050 | 71 @end example |
10840 | 72 |
4050 | 73 END_DOC_ITEM |
3998 | 74 TYPE = "Array<double>" |
75 SET_ARG_TYPE = "const $TYPE&" | |
76 INIT_BODY | |
11574
a83bad07f7e3
attempt better backward compatibility for Array resize functions
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
77 $OPTVAR.resize (dim_vector (1, 1)); |
15220
61822c866ba1
use std::numeric_limits<T>::epsilon in C++ code
John W. Eaton <jwe@octave.org>
parents:
14138
diff
changeset
|
78 $OPTVAR(0) = ::sqrt (std::numeric_limits<double>::epsilon ()); |
3998 | 79 END_INIT_BODY |
80 SET_CODE | |
81 void set_$OPT (double val) | |
82 { | |
11574
a83bad07f7e3
attempt better backward compatibility for Array resize functions
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
83 $OPTVAR.resize (dim_vector (1, 1)); |
15220
61822c866ba1
use std::numeric_limits<T>::epsilon in C++ code
John W. Eaton <jwe@octave.org>
parents:
14138
diff
changeset
|
84 $OPTVAR(0) = (val > 0.0) ? val : ::sqrt (std::numeric_limits<double>::epsilon ()); |
30046
b3717fd85e49
maint: use "m_" prefix for member variables ODE/DAE classes in liboctave/numeric.
Rik <rik@octave.org>
parents:
29358
diff
changeset
|
85 m_reset = true; |
3998 | 86 } |
87 | |
88 void set_$OPT (const $TYPE& val) | |
30046
b3717fd85e49
maint: use "m_" prefix for member variables ODE/DAE classes in liboctave/numeric.
Rik <rik@octave.org>
parents:
29358
diff
changeset
|
89 { $OPTVAR = val; m_reset = true; } |
3998 | 90 END_SET_CODE |
91 END_OPTION | |
92 | |
93 OPTION | |
4047 | 94 NAME = "compute consistent initial condition" |
4050 | 95 DOC_ITEM |
7007 | 96 If nonzero, @code{dassl} will attempt to compute a consistent set of initial |
4050 | 97 conditions. This is generally not reliable, so it is best to provide |
98 a consistent set and leave this option set to zero. | |
10840 | 99 |
4050 | 100 END_DOC_ITEM |
5275 | 101 TYPE = "octave_idx_type" |
4047 | 102 INIT_VALUE = "0" |
103 SET_EXPR = "val" | |
104 END_OPTION | |
105 | |
106 OPTION | |
107 NAME = "enforce nonnegativity constraints" | |
4050 | 108 DOC_ITEM |
109 If you know that the solutions to your equations will always be | |
10711
fbd7843974fa
Periodic grammar check of documentation files to ensure common format.
Rik <octave@nomad.inbox5.com>
parents:
10350
diff
changeset
|
110 non-negative, it may help to set this parameter to a nonzero |
4050 | 111 value. However, it is probably best to try leaving this option set to |
112 zero first, and only setting it to a nonzero value if that doesn't | |
113 work very well. | |
10840 | 114 |
4050 | 115 END_DOC_ITEM |
5275 | 116 TYPE = "octave_idx_type" |
4047 | 117 INIT_VALUE = "0" |
118 SET_EXPR = "val" | |
119 END_OPTION | |
120 | |
121 OPTION | |
3998 | 122 NAME = "initial step size" |
4050 | 123 DOC_ITEM |
7001 | 124 Differential-algebraic problems may occasionally suffer from severe |
4050 | 125 scaling difficulties on the first step. If you know a great deal |
126 about the scaling of your problem, you can help to alleviate this | |
127 problem by specifying an initial stepsize. | |
10840 | 128 |
4050 | 129 END_DOC_ITEM |
3998 | 130 TYPE = "double" |
131 INIT_VALUE = "-1.0" | |
132 SET_EXPR = "(val >= 0.0) ? val : -1.0" | |
133 END_OPTION | |
134 | |
135 OPTION | |
4044 | 136 NAME = "maximum order" |
4050 | 137 DOC_ITEM |
138 Restrict the maximum order of the solution method. This option must | |
139 be between 1 and 5, inclusive. | |
10840 | 140 |
4050 | 141 END_DOC_ITEM |
5275 | 142 TYPE = "octave_idx_type" |
4044 | 143 INIT_VALUE = "-1" |
144 SET_EXPR = "val" | |
145 END_OPTION | |
146 | |
147 OPTION | |
3998 | 148 NAME = "maximum step size" |
4050 | 149 DOC_ITEM |
150 Setting the maximum stepsize will avoid passing over very large | |
4051 | 151 regions (default is not specified). |
10840 | 152 |
4050 | 153 END_DOC_ITEM |
3998 | 154 TYPE = "double" |
155 INIT_VALUE = "-1.0" | |
156 SET_EXPR = "(val >= 0.0) ? val : -1.0" | |
157 END_OPTION | |
4429 | 158 |
159 OPTION | |
160 NAME = "step limit" | |
161 DOC_ITEM | |
162 Maximum number of integration steps to attempt on a single call to the | |
163 underlying Fortran code. | |
164 END_DOC_ITEM | |
5275 | 165 TYPE = "octave_idx_type" |
4429 | 166 INIT_VALUE = "-1" |
167 SET_EXPR = "(val >= 0) ? val : -1" | |
168 END_OPTION |