Re: LAPACK bindings error
dmitrypek <[email protected]>
| Newsgroups | gmane.comp.lib.boost.ublas |
|---|---|
| Message-ID | <CAHLG0o93XcE98OU2jr=omuJZDqQ1fngeEXy4kvK8v7=_15XH1A@mail.gmail.com> |
Thanks - this seemed to work, at least for compiling the program. Now I am facing incorrect results, which I will investigate. Thank you for your help. Dmitry On Mon, Mar 24, 2014 at 10:29 AM, Thomas Klimpel-2 [via Boost] < [email protected]> wrote: > Hi, > > > > Is this the latest version of boost/numeric/bindings? > > > https://svn.boost.org/svn/boost/sandbox/numeric_bindings/boost/numeric/bindings/ > > Yes, at least that's the version I use. (Maybe I should try to get up to > speed with "git", so I could answer such questions with more confidence.) > > > I think the errors that you showed now should be fixable. The first error > I see is > > /home/dmitry/zfilter/boost_1_55_0/boost/numeric/bindings/lapack/driver/gesv.hpp: > > 191:9: error: invalid application of 'sizeof' to incomplete type > 'boost::STATIC_ASSERTION_FAILURE<false>' > BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixB > >::value) ); > > One issue here is that the lapack routine xGESV expects two matrices: A of > size (n,n), and B of size(n,nrhs). The bindings are generated > automatically, and we didn't generate a version to also accept a vector for > B. (Not sure whether this would be desirable.) > In case you already tried to use a matrix for B, you might have forgotten > to add "blas::column_major", i.e. "ublas::matrix<double, > ublas::column_major>" instead of just "ublas::matrix<double>", because > lapack always expects column_major matrices. > > > Another error I see is > > /home/dmitry/zfilter/boost_1_55_0/boost/numeric/bindings/detail/property_map.hpp > > :30:85: error: no type named 'property_map' in 'struct > boost::numeric::bindings::detail::adaptor_access<const > boost::numeric::ublas::permutation_matrix<long unsigned int>, void>' > typedef typename mpl::at< typename adaptor_access<T>::property_map, > Key >::type type; > > The type "ublas::permutation_matrix" from "numeric/ublas/lu.hpp" is > totally unrelated to lapack and the bindings. You just need a vector of > integers here (for example ublas::vector<fortran_int_t> or > std::vector<fortran_int_t> would work, if you include > numeric/bindings/std/vector.hpp), lapack will know how to interpret this as > a permutation matrix. > > Regards, > > Thomas Klimpel > _______________________________________________ > ublas mailing list > [hidden email] <http://user/SendEmail.jtp?type=node&node=4660672&i=0> > http://lists.boost.org/mailman/listinfo.cgi/ublas > Sent to: [hidden email]<http://user/SendEmail.jtp?type=node&node=4660672&i=1> > > ------------------------------ > If you reply to this email, your message will be added to the discussion > below: > > http://boost.2283326.n4.nabble.com/LAPACK-bindings-error-tp4660582p4660672.html > To unsubscribe from LAPACK bindings error, click here<http://boost.2283326.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=4660582&code=ZG1pdHJ5cGVrQGdtYWlsLmNvbXw0NjYwNTgyfC03ODMyMzUzMTI=> > . > NAML<http://boost.2283326.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml> > -- View this message in context: http://boost.2283326.n4.nabble.com/LAPACK-bindings-error-tp4660582p4660737.html Sent from the Boost - uBLAS mailing list archive at Nabble.com.