[petsc-users] reference, copy or constant view?
Andrew Spott
ansp6066 at colorado.edu
Wed Dec 10 11:20:56 CST 2014
In the slepc and petsc docs, is there a way to tell if a function is going to copy, modify, or just “look” at a petsc object that is a parameter?
Specifically there are two examples that I’m curious about (I’m trying to chase down a bug):
EPSSetOperators(EPS, Mat, Mat)
I know the first argument is changed, but are the two later arguments modified? It appears that they are destroyed when EPSSetOperators is called a second time (in STSetOperators), but this isn’t clear in the API. After looking at the source, I assume that if I’m running an eigensolve on the same Operator Matrix, but the matrix values have changed, then I shouldn’t do another EPSSetOperators (or EPSSetProblemType, EPSSetTarget, EPSSetDimensions, etc?). Is this correct?
VecDot(Vec,Vec,*PetscScalar)
I assume that the two Vectors will not be changed, however it is hard to tell even from the source (it calls a function pointer which I don’t know how to find the source of).
ps. what does “collective on {EPS,Mat,Vec,etc.}” mean?
Thanks for the help,
-Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20141210/9c8f3189/attachment.html>
More information about the petsc-users
mailing list