<div dir="ltr"><div><br></div>Matt beat me to the punch... :D<br>Anyway, here is my more detailed answer.<br><div><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;color:rgb(0,0,0);font-size:14px;font-family:Calibri,sans-serif"><div></div><div><br></div><div><div>Thanks!  Somehow I missed DM{Get,Create}LocalVector().  BTW what is the difference between the Get and Create versions?  It is not obvious from the documentation.</div></div></div></blockquote><div><br></div><div>The DMDA contains a pool of vectors (both local and global) which can be re-used by the user. This avoids the need to continually allocate and deallocate memory. Thus, the Get methods are simply an optimization.<br><br>The Get methods retrieve from the pool, a vector which isn't currently in use. In this case, You can think of Restore as returning the vector back to the pool to be used somewhere else.<br>If all vectors in the pool are in use, a new one will be allocated for you. In this case, Restore will actually deallocate memory.<br><br></div><div>Since Get methods may return vectors which have been used else where in the code, you should always call VecZeroEntries() on them.<br></div><div><br></div><div>The Create methods ALWAYS allocate new memory and thus you ALWAYS need to call Destroy on them. Vectors obtained via VecCreate() will always be initialized with 0's.<br></div><div><br><br></div><div>Thanks,<br></div><div>  Dave<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;color:rgb(0,0,0);font-size:14px;font-family:Calibri,sans-serif"><div><div><br></div><div>Also, can you explain the difference between DMDAVecGetArrayDOF and DMDAVecGetArrayDOFRead?</div><div><br></div><div>Thanks again,</div><div>Sean</div></div><span><div><br></div><div><br></div><span><blockquote style="BORDER-LEFT:#b5c4df 5 solid;PADDING:0 0 0 5;MARGIN:0 0 0 5"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>Thanks,</div><div>  Dave</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="word-wrap:break-word"><div><br></div><div>Thanks very much!</div><span><font color="#888888"><div><br></div><div>Sean Dettrick</div>
                
        
        
                <div title="Page 52" style="color:rgb(0,0,0);font-family:Calibri,sans-serif;font-size:14px">
                        <div>
                                <div>
                                        <div><div><div><br></div></div></div></div></div></div></font></span></div></blockquote></div><br></div></div></blockquote></span></span></div>
</blockquote></div><br></div></div></div>