<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div dir="ltr">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, Jan 22, 2019 at 5:07 PM Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
"Zhang, Junchao" <<a href="mailto:jczhang@mcs.anl.gov" target="_blank">jczhang@mcs.anl.gov</a>> writes:<br>
<br>
> On Tue, Jan 22, 2019 at 4:08 PM Jed Brown <<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a><mailto:<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>>> wrote:<br>
>> It is not supported at this time.  What does your use case look like?<br>
>> Do roots have degree greater than 1?<br>
><br>
> Yes. Imagine a vecscatter x[0]->y[0], x[1]->y[0], x[1]->y[1],x[2]->y[1]. I build an SF for SCATTER_FORWARD. Now I wan to do SCATTER_REVERSE with ADD_VALUES.<br>
> To solve this problem without creating another SF and without breaking current SF API, I propose to add PetscSFBcastAndOp(sf, unit, rootdata, leafdata, op)<br>
<br>
Is this pattern needed for some algorithm or application or is this<br>
about implementing the full VecScatter interface (modulo ill-defined<br>
operations) in terms of SF?  If the former, I'd like to understand it.<br>
If the latter, I'm okay with you extending the interface as proposed.<br>
</blockquote>
<div>It is the latter.</div>
<div> </div>
</div>
</div>
</body>
</html>