What you say is precisely what I would like to do. I don't know how to
copy the sparsity patterns from sparsity_M et al. The copy_from method
and = operators both throw errors, so those aren't right. sparsity_M is
of type SparsityPattern. How do I assign that to block_sparsity.block(0,0)?
Did you try
block_sparsity.block(0,0).copy_from (sparsity_M)
? If you do this for all blocks, you'll have to call
block_sparsity.collect_sizes()
at the end to make sure you have all the correct sizes propagated from
the individual blocks to the outer object.
I cannot use the DoFTools::make_sparsity_pattern for the following
reason: in essence, I am doing an FE system without using FESystem. The
components of the system (real and imaginary parts) use the same FE
space and satisfy dual PDEs--so it's really a waste to use FESystem.
You have other good reasons, but I'd like to point out that for coupled
systems the majority of the memory is used for the linear system, not
the DoFHandler etc. I bet you don't save very much memory with your
approach. But that's just a side note.
Cheers
W.
------------------------------------------------------------------------
Wolfgang Bangerth email: [email protected]
www: http://www.math.tamu.edu/~bangerth/
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii