Boost logo

Ublas :

From: Prasad Ramanan (prasad.ramanan_at_[hidden])
Date: 2005-11-15 10:10:58


Hello again,

I am solving the equation Ax = b for x, where A is of size n*n ~
1100*1100, and A is a symmetric, dense matrix. (A(i,j) = A(j,i) for 1
<= i,j <= n). Using lu_factorize and lu_substitute takes about 50
seconds to solve the equation, but I am not taking advantage of the
fact that A is symmetric.

Does anyone have any suggestions for methods in ublas that I can use
to take advantage of this structure while solving this equation? I
have a piece of linear/quadratic optimization software that solves the
problem in less than 3 seconds on the same machine (the optimization
program knows that A is symmetric and dense, so I am guessing there is
probably a way to do this.

Thanks for your help,

Prasad

On 11/15/05, Prasad Ramanan <prasad.ramanan_at_[hidden]> wrote:
> Hi there,
>
> Thanks so much for your speedy help! The fix works and I will download
> and install boost 1.33 as soon as I get the chance.
>
>
>
> On 11/15/05, Gunter Winkler <gunter.winkler_at_[hidden]> wrote:
> > On Tuesday 15 November 2005 14:30, Prasad Ramanan wrote:
> > > I am compiling using Visual Studio .Net 2003 (version 1.1.4322 of the
> > > .NET framework), and I am using the ublas library that came with boost
> > > version 1_32.
> >
> > This should be the first lines of lu.hpp
> >
> > #include <boost/numeric/ublas/operation.hpp>
> > #include <boost/numeric/ublas/vector_proxy.hpp>
> > #include <boost/numeric/ublas/matrix_proxy.hpp>
> > #include <boost/numeric/ublas/vector.hpp>
> > #include <boost/numeric/ublas/triangular.hpp>
> >
> > you use an old version of ublas which has some missing includes. As a quick
> > fix you can add the above lines to your sample program. The preferred fix is
> > to use boost 1.33.0 or the current beta 1.33.1
> >
> > mfg
> > Gunter
> > _______________________________________________
> > ublas mailing list
> > ublas_at_[hidden]
> > http://lists.boost.org/mailman/listinfo.cgi/ublas
> >
>