Mercurial > hg > octave-nkf
view examples/code/oregonator.cc @ 20800:7c0e10f035bd
Extend parser to accept binary constants that begin with '0b' or '0B'.
* NEWS: Announce change:
* lex.ll: Define NUMBIN to be 0[bB] followed by 0,1, or '_'.
Define NUMBER to be NUMREAL|NUMHEX|NUMBIN.
*lex.ll (looks_like_bin): New function to detect 0[bB] prefix.
*lex.ll (handle_numbe): Call looks_like_bin() and if found then convert
binary string to double.
* parser.tst: Add tests for new behavior.
author | Rik <rik@octave.org> |
---|---|
date | Fri, 09 Oct 2015 18:52:58 -0700 |
parents | c8240a60dd01 |
children |
line wrap: on
line source
#include <octave/oct.h> DEFUN_DLD (oregonator, args, , "The `oregonator'.\n\ \n\ Reference:\n\ \n\ Oscillations in chemical systems. IV. Limit cycle behavior in a\n\ model of a real chemical reaction. Richard J. Field and Richard\n\ M. Noyes, The Journal of Chemical Physics, Volume 60 Number 5,\n\ March 1974.") { ColumnVector dx (3); ColumnVector x (args(0).vector_value ()); dx(0) = 77.27 * (x(1) - x(0)*x(1) + x(0) - 8.375e-06*pow (x(0), 2.0)); dx(1) = (x(2) - x(0)*x(1) - x(1)) / 77.27; dx(2) = 0.161*(x(0) - x(2)); return octave_value (dx); }