bsearch< real_t > Struct Template Reference

#include <system_descartes1d.hpp>

List of all members.

Public Member Functions

Public Attributes


Detailed Description

template<class real_t>
struct mmx::solvers::bsearch< real_t >

Definition at line 25 of file system_descartes1d.hpp.


Constructor & Destructor Documentation

bsearch ( const In &  bzrep,
unsigned  sz 
) [inline]

Definition at line 34 of file system_descartes1d.hpp.

References mmx::sparse::copy(), bsearch< real_t >::m_data, and bsearch< real_t >::m_mons.

00034                                               : m_sz(sz) 
00035     {
00036       m_data = new real_t[ 2*sz ];
00037       std::copy( bzrep, bzrep + sz, m_data );
00038       m_mons = m_data + sz;
00039       std::copy( m_data, m_data + sz, m_mons );
00040       bernstein::bzenv<real_t>::_default_->toMonoms( m_mons, sz );
00041     };

~bsearch (  )  [inline]

Definition at line 42 of file system_descartes1d.hpp.

References bsearch< real_t >::m_data.

00042 { delete[] m_data; };


Member Function Documentation

void reach ( real_t *  lbzrep,
real_t &  a,
real_t &  b,
const real_t &  eps 
) [inline]

Definition at line 44 of file system_descartes1d.hpp.

References mmx::upoldse_::horner(), bsearch< real_t >::m_mons, and bsearch< real_t >::m_sz.

00045     {
00046       real_t m;
00047       if ( lbzrep[m_sz-1] > lbzrep[0] ) 
00048         do
00049           if ( upoldse_::horner( m_mons, m_sz, m=(a+b)/2.0 ) < 0  ) a = m; else b = m; 
00050         while( b-a > eps ) ;
00051       else
00052         do
00053           if ( upoldse_::horner( m_mons, m_sz, m=(a+b)/2.0 ) < 0  ) b = m; else a = m;
00054         while( b-a > eps ); 
00055     };


Member Data Documentation

real_t* m_data
real_t* m_mons

Definition at line 28 of file system_descartes1d.hpp.

Referenced by bsearch< real_t >::bsearch(), and bsearch< real_t >::reach().

unsigned m_mxsz

Definition at line 30 of file system_descartes1d.hpp.

unsigned m_sz

Definition at line 29 of file system_descartes1d.hpp.

Referenced by bsearch< real_t >::reach().


The documentation for this struct was generated from the following file:

Generated on 6 Dec 2012 for realroot by  doxygen 1.6.1