commons-issues mailing list archives

Site index · List index
Message view
Top
From "Gilles (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (MATH-613) Equivalent of Blas DAXPY
Date Wed, 27 Jul 2011 12:51:10 GMT
```
[ https://issues.apache.org/jira/browse/MATH-613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071696#comment-13071696
]

Gilles commented on MATH-613:
-----------------------------

{quote}
You should be picky!
{quote}
So... I think that you forgot to click on "Grant license to ASF for inclusion [...]" when
attaching the diff file.

> Equivalent of Blas DAXPY
> ------------------------
>
>                 Key: MATH-613
>                 URL: https://issues.apache.org/jira/browse/MATH-613
>             Project: Commons Math
>          Issue Type: New Feature
>    Affects Versions: 3.0
>            Reporter: Sébastien Brisard
>            Priority: Minor
>              Labels: linear, vector
>         Attachments: MATH-613-20110727.patch, MATH-613-20110727.patch
>
>
> In Blas, the method {{DAXPY}} computes an in-place linear combination of two vectors.
More precisely, a call to {{DAXPY(a, x, y)}} updates vector {{y}} with the value of {{a *
x + y}}. This can lead to very compact code, which I feel the need for in Commons-Math. However,
DAXPY also has its limitations. For example, it cannot perform the other combination {{y <-
x + a * y}}.
> I think it would be useful that {{RealVector}} had a method for computing {{a * this
+ b * y}}, and storing the result in {{this}}. In the spirit of the {{mapToSelf}} method,
I propose to create two new methods in {{Interface RealVector}}
> {noformat}RealVector map(BivariateRealFunction f, RealVector y){noformat}
> and
> {noformat}RealVector mapToSelf(BivariateRealFunction f, RealVector y){noformat}
> The former would return a new vector {{v}} such that
> {noformat}v[i] <- f(this[i], y[i])}}{noformat}
> and the latter would update {{this}},
> {noformat}this[i] <- f(this[i], y[i]){noformat}
> Emulating {{DAXPY}} would then simply be a matter of implementing the appropriate bivariate
function.
> While we are at it, how about
> {noformat}RealVector map(TrivariateRealFunction f, RealVector y, RealVector z){noformat}
> {noformat}RealVector mapToSelf(TrivariateRealFunction f, RealVector y, RealVector z){noformat}

--
This message is automatically generated by JIRA.