"Smith, Barry F. via petsc-dev" <petsc-dev@mcs.anl.gov> writes:
>> 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). Sure, but the result isn't really different (modulo associativity) from normal ILU applied to a block matrix (at least unless you start considering fill with incomplete blocks). Ali, what are you hoping to achieve with variable block ILU? >> 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 >>