Mercurial > hg > octave-lyh
diff liboctave/DASSL-opts.in @ 3998:f6df65db67f9
[project @ 2002-07-24 18:10:39 by jwe]
author | jwe |
---|---|
date | Wed, 24 Jul 2002 18:10:40 +0000 |
parents | |
children | 9678c5526190 |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/liboctave/DASSL-opts.in @@ -0,0 +1,62 @@ +CLASS = "DASSL" + +OPTION + NAME = "absolute tolerance" + TYPE = "Array<double>" + SET_ARG_TYPE = "const $TYPE&" + INIT_BODY + $OPTVAR.resize (1); + $OPTVAR(0) = ::sqrt (DBL_EPSILON); + END_INIT_BODY + SET_CODE + void set_$OPT (double val) + { + $OPTVAR.resize (1); + $OPTVAR(0) = (val > 0.0) ? val : ::sqrt (DBL_EPSILON); + } + + void set_$OPT (const $TYPE& val) + { $OPTVAR = val; } + END_SET_CODE +END_OPTION + +OPTION + NAME = "relative tolerance" + TYPE = "Array<double>" + SET_ARG_TYPE = "const $TYPE&" + INIT_BODY + $OPTVAR.resize (1); + $OPTVAR(0) = ::sqrt (DBL_EPSILON); + END_INIT_BODY + SET_CODE + void set_$OPT (double val) + { + $OPTVAR.resize (1); + $OPTVAR(0) = (val > 0.0) ? val : ::sqrt (DBL_EPSILON); + } + + void set_$OPT (const $TYPE& val) + { $OPTVAR = val; } + END_SET_CODE +END_OPTION + +OPTION + NAME = "initial step size" + TYPE = "double" + INIT_VALUE = "-1.0" + SET_EXPR = "(val >= 0.0) ? val : -1.0" +END_OPTION + +OPTION + NAME = "maximum step size" + TYPE = "double" + INIT_VALUE = "-1.0" + SET_EXPR = "(val >= 0.0) ? val : -1.0" +END_OPTION + +OPTION + NAME = "minimum step size" + TYPE = "double" + INIT_VALUE = "0.0" + SET_EXPR = "(val >= 0.0) ? val : 0.0" +END_OPTION