<div>I am all for doing things the legal way :-)</div><div><br></div>Where should this routine be added and how should it look like for shell vectors? I had assumed that<div>such changes should be done in user defined MatGetVecs routine. Clearly this is not happening. Can you</div>

<div>comment on proper construction of duplicated Vecs which are needed by Krylov solver of PETSc? The way I am</div>
<div>doing is :</div><div><br></div><div>a) Create a wrapper Vec (x), which holds SAMRAI vector.</div><div>b) Define a x->ops->duplicatevector for this wrapper vector.</div><div>c) Create a VecNest (X) of these wrapper Vecs.</div>


<div>d) Define MatGetVecs routine, which will duplicate X by the call </div><div>    VecDuplicate(X,left/right)</div><div><br><div class="gmail_quote">On Thu, Feb 28, 2013 at 2:27 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This is calling VecValidValues() checks for vec->ops->getarray. Since VecGetArray_Nest() is implemented, it calls the routine. I'm inclined to add a vec->ops->validvalues() and _not_ try to hack it in terms of VecGetArray().</blockquote>


</div><br><br><br clear="all"><div><br></div>-- <br><div>Amneet <br><br></div><div><br></div><div><br></div>
</div>