|
Boost : |
Subject: Re: [boost] [ublas] bugfix for matrix operation /
From: Mario Mulansky (mario.mulansky_at_[hidden])
Date: 2013-04-17 10:08:30
On Tuesday, April 16, 2013 08:16:57 PM Steven Watanabe wrote:
> AMDG
>
> On 04/16/2013 07:20 PM, Mario Mulansky wrote:
> > Hi,
> >
> > I wanted to add an elementwise divide operations for ublas matrices using
> > operator /
>
> I don't think that's such a great idea.
> Using regular operators for elementwise
> operations is likely to be surprising.
> i.e. if you can do (A / B) you should
> be able to do (A * B) as well, and it
> you be the inverse of A / B. But
> multiplication is defined for matrices
> and is *not* an elementwise operation.
> There is no way to define this that
> won't surprise someone. There's a
> good reason why uBlas doesn't provide
> these operators already and why MATLAB
> has a separate set of operators for
> elementwise operations.
uh wait, i dont want to add this operator to ublas. I need it within odeint
and it would be part of some ublas_extension.hpp in odeint, it would be merely
an implementation detail no user would encounter. The problem is just that
currently any definition of operater/ for two matrices is hidden by the ublas
implementation of matrix-skalar division. So I would like to add an enabler to
this, just as it is already there for the multiplication operator *, for
example.
>
> > Unfortunately, there is operator/ defined for matrix and integral types
> > which hides any other operator definition (matrix_expression.hpp l. 3388)
> > and thus makes it impossible to add this functionality. I would like to
> > add an enable_if statement there that checks if the second argument is
> > convertible to matrix::value_type, as is done for other operators. Who
> > would be responsible for this small change? I can provide the according
> > patch, it's almost trivial.
> In Christ,
> Steven Watanabe
>
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk