Dear all,<div>    I have a question of the access of the DM in PETSc.</div><div>1) I used </div><div>  DMDACreate2d(..., &amp;da), where &#39;da&#39; is a DM parameter;</div><div><br></div><div>2) and a DMDASetUniformCoordinates(da, ...) was used to set up a coordinate system on &#39;da&#39;. </div>
<div><br></div><div>3) Then I used </div><div>  DMDAGetCoordinateDA(da, &amp;cda);</div><div>  DMDAGetGhostedCoordinates(da, &amp;gc);</div><div>  DMDAVecGetArray(cda, gc, &amp;coors); </div><div>  So that I can access the coordinate values of each points in &#39;da&#39;. </div>
<div><br></div><div>4) My question is,</div><div>  4.1) in spite of &#39;coors&#39;, is there any other values stored in &#39;da&#39; for every points of it;</div><div>  4.2) I want to store other parameters associating with &#39;da&#39;, what should I do for that? for example, since &#39;da&#39; has a coordinate, I treat it as a uniform mesh. In addition to coordinate values, I hope I can store u and v (x/y-direction velocity magnitude) in each node of this coordinate. I thought about use DMDACreate2d to create other two distributed matrices. However, I&#39;m not sure that these three DM (including &#39;da&#39;) has the same allocation in parallel computational nodes. Like, &#39;da&#39; is assigned x = 0~4 to rank-0 and x = 5~10 to rank-1; while DM for &#39;u&#39; is arranged x = 0~5 to rank-0 and x = 6~10 to rank-1.</div>
<div><br></div><div>Thanks,</div><div>Alan</div>