Hi,
Using the old build system I could do: #include <dolfin/uBlasDenseMatrix.h> and uBlasDenseMatrix A,B,C,D; axpy_prod(trans(A), prod(B, C), D, true); but now with scons and #include <dolfin/la/uBlasDenseMatrix.h> I get the following error: g++ -o LiftingAssembler.o -c -pthread -I/home/oelgaard/fenics/clone/dolfin/local/include -I/usr/lib/python2.5/site-packages/numpy/core/include -I/home/oelgaard/slepc-2.3.3 -I/home/oelgaard/slepc-2.3.3/include -I/usr/include/suitesparse -I/usr/include/python2.5 -I/home/oelgaard/petsc-2.3.3-p7/bmake/linux-gnu-cxx-debug -I/home/oelgaard/petsc-2.3.3-p7/include -I/home/oelgaard/petsc-2.3.3-p7/externalpackages/mpich2-1.0.5p4/linux-gnu-cxx-debug/include -I/home/oelgaard/local/include -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include LiftingAssembler.cpp /usr/include/boost/numeric/ublas/matrix_expression.hpp: In function 'typename boost::numeric::ublas::matrix_matrix_binary_traits<typename E1::value_type, E1, typename E2::value_type, E2>::result_type boost::numeric::ublas::prod(const boost::numeric::ublas::matrix_expression<E>&, const boost::numeric::ublas::matrix_expression<E2>&) [with E1 = boost::numeric::ublas::matrix_unary2<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::scalar_identity<double> >, E2 = boost::numeric::ublas::matrix_matrix_binary<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix_matrix_prod<double, double, double> >]': /usr/include/boost/numeric/ublas/operation.hpp:518: instantiated from 'M& boost::numeric::ublas::axpy_prod(const boost::numeric::ublas::matrix_expression<E2>&, const boost::numeric::ublas::matrix_expression<E2>&, M&, TRI, boost::numeric::ublas::dense_proxy_tag, boost::numeric::ublas::row_major_tag) [with M = dolfin::uBlasMatrix<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > > >, E1 = boost::numeric::ublas::matrix_unary2<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::scalar_identity<double> >, E2 = boost::numeric::ublas::matrix_matrix_binary<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix_matrix_prod<double, double, double> >, TRI = boost::numeric::ublas::basic_full<unsigned int>]' /usr/include/boost/numeric/ublas/operation.hpp:724: instantiated from 'M& boost::numeric::ublas::axpy_prod(const boost::numeric::ublas::matrix_expression<E2>&, const boost::numeric::ublas::matrix_expression<E2>&, M&, bool) [with M = dolfin::uBlasDenseMatrix, E1 = boost::numeric::ublas::matrix_unary2<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::scalar_identity<double> >, E2 = boost::numeric::ublas::matrix_matrix_binary<boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix<double, boost::numeric::ublas::basic_row_major<unsigned int, int>, boost::numeric::ublas::unbounded_array<double, std::allocator<double> > >, boost::numeric::ublas::matrix_matrix_prod<double, double, double> >]' LiftingAssembler.cpp:685: instantiated from here /usr/include/boost/numeric/ublas/matrix_expression.hpp:4815: error: invalid application of 'sizeof' to incomplete type 'boost::STATIC_ASSERTION_FAILURE<false>' scons: *** [LiftingAssembler.o] Error 1 scons: building terminated because of errors. If I just do: axpy_prod(trans(A), B, C, true); it will compile but this is, of course, not what I want... Kristian _______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
