Mercurial > hg > octave-lyh
view liboctave/ODESSA-opts.in @ 4210:b6e652bf4e5f
[project @ 2002-12-04 00:40:13 by jwe]
author | jwe |
---|---|
date | Wed, 04 Dec 2002 00:40:13 +0000 |
parents | b79da8779a0e |
children | 1032fb9ec0d1 |
line wrap: on
line source
CLASS = "ODESSA" INCLUDE = "ODES.h" OPTION NAME = "absolute tolerance" DOC_ITEM Absolute tolerance. May be either vector or scalar. If a vector, it must match the dimension of the state vector. END_DOC_ITEM 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); reset = true; } void set_$OPT (const $TYPE& val) { $OPTVAR = val; reset = true; } END_SET_CODE END_OPTION OPTION NAME = "relative tolerance" TYPE = "double" INIT_VALUE = "::sqrt (DBL_EPSILON)" SET_EXPR = "(val > 0.0) ? val : ::sqrt (DBL_EPSILON)" END_OPTION OPTION NAME = "integration method" DOC_ITEM Relative tolerance parameter. Unlike the absolute tolerance, this parameter may only be a scalar. The local error test applied at each integration step is @example abs (local error in x(i)) <= rtol * abs (y(i)) + atol(i) @end example END_DOC_ITEM TYPE = "std::string" SET_ARG_TYPE = "const $TYPE&" INIT_VALUE = {"stiff"} SET_BODY if (val == "stiff" || val == "bdf") $OPTVAR = "stiff"; else if (val == "non-stiff" || val == "adams") $OPTVAR = "non-stiff"; else (*current_liboctave_error_handler) ("lsode_options: method must be \"stiff\", \"bdf\", \"non-stiff\", or \"adams\""); END_SET_BODY END_OPTION OPTION NAME = "initial step size" DOC_ITEM The step size to be attempted on the first step (default is determined automatically). END_DOC_ITEM TYPE = "double" INIT_VALUE = "-1.0" SET_EXPR = "(val >= 0.0) ? val : -1.0" END_OPTION OPTION NAME = "maximum step size" DOC_ITEM Setting the maximum stepsize will avoid passing over very large regions (default is not specified). END_DOC_ITEM TYPE = "double" INIT_VALUE = "-1.0" SET_EXPR = "(val >= 0.0) ? val : -1.0" END_OPTION OPTION NAME = "minimum step size" DOC_ITEM The minimum absolute step size allowed (default is 0). END_DOC_ITEM TYPE = "double" INIT_VALUE = "0.0" SET_EXPR = "(val >= 0.0) ? val : 0.0" END_OPTION OPTION NAME = "step limit" DOC_ITEM Maximum number of steps allowed (default is 100000). END_DOC_ITEM TYPE = "int" INIT_VALUE = "100000" SET_EXPR = "val" END_OPTION