# HG changeset patch # User jwe # Date 777598847 0 # Node ID 39b315350976c0380238098fe3ae1b669c384b25 # Parent ddc21c0f008918e5faa124cecbd283b90f7e9aee [project @ 1994-08-22 23:40:47 by jwe] diff -r ddc21c0f0089 -r 39b315350976 src/data.cc --- a/src/data.cc Fri Aug 19 22:20:16 1994 +0000 +++ b/src/data.cc Mon Aug 22 23:40:47 1994 +0000 @@ -74,6 +74,29 @@ return retval; } +DEFUN ("atan2", Fatan2, Satan2, 3, 1, + "atan2 (Y, X): atan (Y / X) in range -pi to pi") +{ + Octave_object retval; + + if (args.length () != 3) + print_usage ("atan2"); + else + { + double y = args(1).double_value (); + + if (! error_state) + { + double x = args(2).double_value (); + + if (! error_state) + retval = atan2 (y, x); + } + } + + return retval; +} + DEFUN ("cumprod", Fcumprod, Scumprod, 2, 1, "cumprod (X): cumulative products") { @@ -257,7 +280,7 @@ get_dimensions (const tree_constant& a, const char *warn_for, int& nr, int& nc) { - tree_constant tmpa = a.make_numeric (); + tree_constant tmpa = a; if (tmpa.is_scalar_type ()) { @@ -273,6 +296,9 @@ { ColumnVector v = tmpa.vector_value (); + if (error_state) + return; + nr = NINT (v.elem (0)); nc = NINT (v.elem (1)); } @@ -287,8 +313,8 @@ get_dimensions (const tree_constant& a, const tree_constant& b, const char *warn_for, int& nr, int& nc) { - tree_constant tmpa = a.make_numeric (); - tree_constant tmpb = b.make_numeric (); + tree_constant tmpa = a; + tree_constant tmpb = b; if (tmpa.is_scalar_type () && tmpb.is_scalar_type ()) {