Mercurial > hg > octave-nkf
view liboctave/dbleLU.cc @ 7923:c3d21b9b94b6
eliminate octave_call_stack member functions caller_user_script and caller_user_function, and unused difference_type args
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 11 Jul 2008 15:43:10 -0400 |
parents | 29980c6b8604 |
children | 445d27d79f4e |
line wrap: on
line source
/* Copyright (C) 1994, 1995, 1996, 1997, 1999, 2002, 2003, 2004, 2005, 2007 John W. Eaton This file is part of Octave. Octave 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 3 of the License, or (at your option) any later version. Octave 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 Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include "dbleLU.h" #include "f77-fcn.h" #include "lo-error.h" // Instantiate the base LU class for the types we need. #include <base-lu.h> #include <base-lu.cc> template class base_lu <Matrix, double, Matrix, double>; // Define the constructor for this particular derivation. extern "C" { F77_RET_T F77_FUNC (dgetrf, DGETRF) (const octave_idx_type&, const octave_idx_type&, double*, const octave_idx_type&, octave_idx_type*, octave_idx_type&); } LU::LU (const Matrix& a) { octave_idx_type a_nr = a.rows (); octave_idx_type a_nc = a.cols (); octave_idx_type mn = (a_nr < a_nc ? a_nr : a_nc); ipvt.resize (mn); octave_idx_type *pipvt = ipvt.fortran_vec (); a_fact = a; double *tmp_data = a_fact.fortran_vec (); octave_idx_type info = 0; F77_XFCN (dgetrf, DGETRF, (a_nr, a_nc, tmp_data, a_nr, pipvt, info)); ipvt -= static_cast<octave_idx_type> (1); } /* ;;; Local Variables: *** ;;; mode: C++ *** ;;; End: *** */