From ce599e4f9f94b4eb00c1b5edb85bce5431ab3df2 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeedu@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kig/misc/kignumerics.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 kig/misc/kignumerics.h (limited to 'kig/misc/kignumerics.h') diff --git a/kig/misc/kignumerics.h b/kig/misc/kignumerics.h new file mode 100644 index 00000000..7beef59f --- /dev/null +++ b/kig/misc/kignumerics.h @@ -0,0 +1,47 @@ +/** + This file is part of Kig, a KDE program for Interactive Geometry... + Copyright (C) 2002 Maurizio Paolini + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 + USA +**/ + +#ifndef KIG_MISC_KIGNUMERICS_H +#define KIG_MISC_KIGNUMERICS_H + +#include + +double calcCubicRoot ( double xmin, double xmax, double a, + double b, double c, double d, int root, bool& valid, int& numroots ); + +int calcCubicVariations (double x, double a, double b, double c, + double d, double p1a, double p1b, double p0a); + +double calcCubicRootwithNewton ( double ymin, double ymax, double a, + double b, double c, double d, double tol ); + +/** + * Gaussian Elimination. We return false if the matrix is singular, + * and can't be usefully eliminated.. + */ +bool GaussianElimination( double *matrix[], int numrows, int numcols, + int scambio[] ); + +void BackwardSubstitution( double *matrix[], int numrows, int numcols, + int scambio[], double solution[] ); + +bool Invert3by3matrix ( const double m[3][3], double inv[3][3] ); + +#endif // KIG_MISC_KIGNUMERICS_H -- cgit v1.2.1