You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hama.apache.org by "Edward J. Yoon (JIRA)" <ji...@apache.org> on 2009/10/21 07:13:59 UTC

[jira] Updated: (HAMA-190) Bug in Matrix-Vector multiplication

     [ https://issues.apache.org/jira/browse/HAMA-190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward J. Yoon updated HAMA-190:
--------------------------------

    Resolution: Fixed
        Status: Resolved  (was: Patch Available)

It was committed.

> Bug in Matrix-Vector multiplication
> -----------------------------------
>
>                 Key: HAMA-190
>                 URL: https://issues.apache.org/jira/browse/HAMA-190
>             Project: Hama
>          Issue Type: Bug
>          Components: matrix
>    Affects Versions: 0.1.0
>            Reporter: Edward J. Yoon
>            Assignee: Edward J. Yoon
>             Fix For: 0.1.0
>
>         Attachments: HAMA-190.patch
>
>
> Hi again,
> Since I've more complex operations, (such as multiply, inverse, load...) I decided coding instead of use the shell.
> I've wrote simple example to multiple 2 matrixes, and got incorrect results, can you let me know if I've some mistake, or it's well known bug.
> A =     1,2
>        3,4
> B =     1
>        2
> The result should be (C = A * B):
> C =     5
>        11
> But I got incorrect results from the example below:
> 1.0,2.0
> 3.0,6.0
> The code:
> public static void main(String[] args) throws IOException {
>        conf.set("hbase.rootdir", "hdfs://lb-emu-2:54310/hbase");
>        conf.set("hbase.master", "lb-emu-2:60000");
>        conf.set("mapred.jar", "/app/installs/hama/hama-0.1.0-dev.jar");
>        DenseMatrix a = new DenseMatrix(conf, "A", true);
>        a.setDimension(2, 2);
>        a.set(0, 0, 1);
>        a.set(0, 1, 2);
>        a.set(1, 0, 3);
>        a.set(1, 1, 4);
>        DenseMatrix b = new DenseMatrix(conf, "B", true);
>        b.setDimension(2, 1);
>        b.set(0, 0, 1);
>        b.set(0, 1, 2);
>        DenseMatrix c = a.mult(b);
>        for (int i = 0; i < c.getRows(); i++) {
>            for (int j = 0; j < c.getColumns(); j++) {
>                System.out.print(c.get(i, j) + " ");
>            }
>            System.out.println("");
>        }
>    }
> Thanks again,
> Nir.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.