Mercurial > octave-nkf
view examples/code/oregonator.cc @ 20633:ffc6cdcd02c5 stable
Fix segfault when complex double matrix calls ZGETRF (bug #45577).
* CMatrix.cc (finverse, determinant, rcond, fsolve): Calculate norm of matrix
and if it is NaN, skip calling ZGETRF in LAPACK and set info to non-zero value
to signal an error.
author | Rik <rik@octave.org> |
---|---|
date | Sat, 10 Oct 2015 16:46:00 -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); }