Dear Barry,<div>   You really answer what I want to know. Thank you so much and sorry for my knowledge lacking of programming. </div><div>   I will go through those tutorial examples. </div><div>   You are really nice. </div>
<div><br></div><div>thanks,</div><div>Alan</div><div><br><div class="gmail_quote">On Wed, Aug 24, 2011 at 4:25 PM, Barry Smith <span dir="ltr">&lt;<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
  Alan,<br>
<br>
    PETSc is designed as an object oriented package; as such the objects are defined by the operations they perform, not the data stored inside them. So, for example, the Vec object is defined by all the VecXXX() operations you can call which are listed in the manual pages list.  You really don&#39;t want to see the details of the Vec data structure (for one thing it is different for different Vec implementations), they don&#39;t tell you what you can do with a Vec. (same of other objects). I suggest going through some of the examples and seeing the types of operations you can perform on different objects starting with the vec/vec/examples/tutorials examples.<br>

<font color="#888888"><br>
  Barry<br>
</font><div><div></div><div class="h5"><br>
<br>
<br>
On Aug 24, 2011, at 4:19 PM, Alan Wei wrote:<br>
<br>
&gt; Dear all,<br>
&gt;     I  hope you&#39;re having a nice day.<br>
&gt;     I&#39;m using PETSc as a beginner. I found it is very easy to find a definition of a function like &#39;DACreate2d&#39; online and it explains very clearly. However, I think it is really confusing for those explanation of data structures like DMMG, DA, DM and so on, or even Vec. I wonder if there is more details that I can read, like what is inside DMMG. For example, as I see, DM is a part of DMMG.<br>

&gt;<br>
&gt; thanks,<br>
&gt; Alan<br>
<br>
</div></div></blockquote></div><br></div>