Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

lssolve.cpp File Reference

#include "mat.hpp"
#include <cstring>
#include <iostream>
#include <cassert>
#include "vec.hpp"
#include <cmath>

Go to the source code of this file.

Functions

static void lu (const Mat< double > &X, Mat< double > &L, Mat< double > &U, Vec< int > &p)
 This stuff is shamelessly ripped from IT++.
static void interchangePermutations (Vec< double > &b, const Vec< int > &p)
static void forwardSubstitution (const Mat< double > &L, const Vec< double > &b, Vec< double > &x)
static void backwardSubstitution (const Mat< double > &U, const Vec< double > &b, Vec< double > &x)
static Vec< double > lsSolve (const Mat< double > &L, const Mat< double > &U, const Vec< double > &b)
Vec< double > lsSolve (const Mat< double > &A, const Vec< double > &b)

Function Documentation

static void backwardSubstitution ( const Mat< double > &  U,
const Vec< double > &  b,
Vec< double > &  x 
) [static]

Definition at line 114 of file lssolve.cpp.

References Mat< T >::data(), Vec< T >::size(), Mat< T >::xs(), and Mat< T >::ys().

Referenced by lsSolve().

static void forwardSubstitution ( const Mat< double > &  L,
const Vec< double > &  b,
Vec< double > &  x 
) [static]

Definition at line 94 of file lssolve.cpp.

References Mat< T >::data(), Vec< T >::size(), Mat< T >::xs(), and Mat< T >::ys().

Referenced by lsSolve().

static void interchangePermutations ( Vec< double > &  b,
const Vec< int > &  p 
) [static]

Definition at line 84 of file lssolve.cpp.

References Vec< T >::size(), and SWAP.

Referenced by lsSolve().

Vec<double> lsSolve ( const Mat< double > &  A,
const Vec< double > &  b 
)

Definition at line 149 of file lssolve.cpp.

References interchangePermutations(), lsSolve(), and lu().

Referenced by Resistance::ComputeScores().

static Vec<double> lsSolve ( const Mat< double > &  L,
const Mat< double > &  U,
const Vec< double > &  b 
) [static]

Definition at line 138 of file lssolve.cpp.

References backwardSubstitution(), forwardSubstitution(), and Mat< T >::ys().

Referenced by lsSolve().

static void lu ( const Mat< double > &  X,
Mat< double > &  L,
Mat< double > &  U,
Vec< int > &  p 
) [static]

This stuff is shamelessly ripped from IT++.

Original copyright notice follows.

---------------------------------------------------------------------------* IT++ * ---------------------------------------------------------------------------* Copyright (c) 1995-2001 by Tony Ottosson, Thomas Eriksson, Pål Frenger, * Tobias Ringström, and Jonas Samuelsson. * * Permission to use, copy, modify, and distribute this software and its * documentation under the terms of the GNU General Public License is hereby * granted. No representations are made about the suitability of this * software for any purpose. It is provided "as is" without expressed or * implied warranty. See the GNU General Public License for more details. * ---------------------------------------------------------------------------

Definition at line 24 of file lssolve.cpp.

References Mat< T >::data(), Mat< T >::setSize(), Vec< T >::setSize(), Mat< T >::swapRows(), Mat< T >::xs(), and Mat< T >::ys().

Referenced by lsSolve().


6 Jan 2011 Doxygen 1.6.3