<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span style="font-size: 14px;" class="">Hello PETSc members,</span>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class="">Sorry for asking for help about the ASM in petsc4py.</span></div>
<div class=""><span style="font-size: 14px;" class="">Currently I am using your ASM as my preconditioned in my solver.</span></div>
<div class=""><span style="font-size: 14px;" class="">I know how to setup the PCASM based on the ex8.c in the following link.</span></div>
<div class=""><span style="font-size: 14px;" class=""><a href="http://www.mcs.anl.gov/petsc/petsc-3.4/src/ksp/ksp/examples/tutorials/ex8.c" class="">http://www.mcs.anl.gov/petsc/petsc-3.4/src/ksp/ksp/examples/tutorials/ex8.c</a></span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class="">But when using the function “getASMSubKSP” in petsc4py, </span></div>
<div class=""><span style="font-size: 14px;" class="">I have tried several methods, but still cannot get the subksp from each mpi.</span></div>
<div class=""><span style="font-size: 14px;" class="">Here is the snippet of the code of the function.</span></div>
<div class="">
<pre class=""><span style="font-size: 14px;" class="">def getASMSubKSP(self):
<a name="l-266" class=""></a>        cdef PetscInt i = 0, n = 0
<a name="l-267" class=""></a>        cdef PetscKSP *p = NULL
<a name="l-268" class=""></a>        CHKERR( PCASMGetSubKSP(self.pc, <span class="err">&</span>n, NULL, <span class="err">&</span>p) )
<a name="l-269" class=""></a>        return <span class="cp">[</span><span class="nx">ref_KSP</span><span class="p">(</span><span class="nx">p</span><span class="err">[</span><span class="nx">i</span><span class="cp">]</span>) for i from 0 <span class="err"><</span>= i <span class="nt"><n</span><span class="err">]</span></span></pre>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
</div>
<div class=""><span style="font-size: 14px;" class="">In ex8.c, we could use a “FOR” loop to access the indiivdual subksp.</span></div>
<div class=""><span style="font-size: 14px;" class="">But in python, could I use “FOR” loop to get all the subksps with:</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class="">subksp[i] = pc.getASMSubKSP[i] </span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class="">Another question is in ex8.c, it seems I don’t need to do any setup to decompose the RHS vector.</span></div>
<div class=""><span style="font-size: 14px;" class="">But do I need to decompose the RHS vector with any settings if I don’t use PETSc solvers but with your preconditioners?</span></div>
<div class=""><span style="font-size: 14px;" class="">Thanks very much.</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><span style="font-size: 14px;" class="">Best,</span></div>
<div class=""><span style="font-size: 14px;" class="">Chih-Hao</span></div>
<div class=""><span style="font-size: 14px;" class=""><br class="">
</span></div>
<div class=""><br class="">
</div>
</body>
</html>