> On Dec 3, 2018, at 4:49 PM, Ali Reza Khaz'ali <arkhaz...@cc.iut.ac.ir> wrote: > > Hi, > > I think that the topic is more suited for PETSc-developers than its users; > therefore, I move it to the dev list. > > Continuing the discussion on implementing a variable-block size BILU > preconditioner, would it be possible to change the block size parameter (bs) > on BAIJ format such that it can handle variable block sizes? (i.e., instead > of it being a scalar, it can be an array). Although BILU does not necessarily > require rectangular blocks, I think, it leads to less messy code.
That is an alternative to using the AIJ format. The problem with this approach is you will need to write a lot of code for the variable block size BAIJ; MatSetValues_SeqVBAIJ, MatMult_SeqVBAIJ, etc etc. While if you reuse the AIJ you only need to write new factorization and solve routines (much less code). > > Also, being a newbie on PETSc code, I do not understand some parts of the > code, especially distributed matrix storage and some of the implemented > numerical algorithms. Is there any reference that I can use for this? There is a little discussion at the end chapters of the users manual, plus you should read the developers manual. But there is not a lot of detail except in the actual code. Barry > > > -- > Ali Reza Khaz’ali > Assistant Professor of Petroleum Engineering, > Department of Chemical Engineering > Isfahan University of Technology > Isfahan, Iran >