<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Jed,<br>
<br>
This matrix is rather grid o values. <br>
The operation is very simply, it's scalar. Let's say we have this
matrix A of size MxN and I want to apply thw following operation to
each element of the matrix:<br>
<br>
A(i,j) = log( (A(i,j) - a(j)) / (b(j) - A(i,j)) ), <br>
i=0..M-1 j=0..N-1<br>
<br>
the vectors a,b are just arrays size of N and have them on each
processor. <br>
<br>
Regards,<br>
Alexander<br>
<br>
On 16.06.2011 13:10, Jed Brown wrote:
<blockquote
cite="mid:BANLkTim+Cq2hnTJsp5=Z4L+pW6F6Ap=5jQ@mail.gmail.com"
type="cite">
<div class="gmail_quote">On Thu, Jun 16, 2011 at 12:59, Alexander
Grayver <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:agrayver@gfz-potsdam.de">agrayver@gfz-potsdam.de</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
0.8ex; border-left: 1px solid rgb(204, 204, 204);
padding-left: 1ex;">
<div id=":68k"> ! store transformed elements<br>
call
MatSetValues(A,1,rowidx,nvals,cols,transformedvals,INSERT_VALUES,ierr);CHKERRQ(ierr);<br>
call
MatRestoreRow(A,i,nvals,cols,vals,ierr);CHKERRQ(ierr); </div>
</blockquote>
</div>
<br>
<div>You can't mix these because MatGetRow() needs an assembled
matrix, and MatSetValues() makes the matrix be unassembled.</div>
<div><br>
</div>
<div>What do you want the parallel semantics to be during this
transformation?</div>
<div><br>
</div>
<div>The MatGetArray() for MPIDense just gives you access to the
"diagonal" block.</div>
<div><br>
</div>
<div>What is the high-level description of the operation you're
trying to do? Is this "matrix" actually being used as a linear
operator, or is it a grid of values?</div>
</blockquote>
<br>
</body>
</html>