<font color="#000000"><br>Hi,<br><br>I am using Petsc to write a multi-block CFD solver.<br>Sometimes I just need access one or two specific DMs in a DMComposite, I just wonder how I can do this work other than to list all DMs in those DMComposite- functions with variable arguments, such as <br></font><pre width="80"><font color="#000000"> <a target="_blank">DMCompositeGetEntries(...), etc.<br><br>Why the developer not choose the arguments by number of DM to be accessed and then an array of pointers to them? Or is it possible for user to rewrite our own version of the above functions, like<br><br> DM* da_array[2];<br></a></font><a target="_blank"> </a><a target="_blank">DMCompositeGetEntries</a>(user->pack,2,da_array);<a target="_blank"><br></a></pre><font color="#000000"><br>Thanks a lot for your attention,<br><br>Zhenyu Zhang<br><br><br><span></span></font>