Dear all,

This is a similar question related to a post two years ago:
https://groups.google.com/g/dealii/c/1L6gLFtvTCo/m/frIyTDXbBwAJ

I am developing a fractional time stepping algorithm based on an operator 
split. Basically, I can obtain the following monolithc system after the 
finite element discretization:
*                                   A   B   0                        u1    
                b1*
*tangent matrix =     B   C   D  , solution =  u2,       RHS = b2*
*                                   E   0    F                        u3    
                b3*
where *tangent matrix* is a 3 by 3 BlockSparseMatrix. 

During a time interval, I want to use the first split operator
*A  B * u1 = b1  *to solve* u1 *and* u2.*
*B  C    u2    b2*
Then, plug the solved u1 and u2 into the second split operator
*F * u3 = b3*
where *F* contains the information of the newly solved *u1* and *u2*.

My question is, is there an easy way now to extract the sparse matrices *A, 
B, B, C* to form a new BlockSparseMatrix, something like the following:

new BlockSparseMatrix =   *tangent matrix*.block(0, 0), *tangent 
matrix*.block(0, 
1) 
                                                 *tangent matrix*.block(1, 
0), *tangent matrix*.block(1, 1)


Thank you

Tao

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/844f4391-91ac-419a-a197-576aa015ab45n%40googlegroups.com.

Reply via email to