[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-17 Thread 'yy.wayne' via deal.II User Group
Thank you Peter. Best. Wayne 在2022年11月18日星期五 UTC+8 13:32:27 写道: > Hi Wayne, > > currently MGTransferBlockGlobalCoarsening takes in the constructor only a > single MGTransferGlobalCoarsening instance and uses this for all blocks > (i.e., uses the same AffineConstraints instance for all

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-17 Thread Peter Munch
Hi Wayne, currently MGTransferBlockGlobalCoarsening takes in the constructor only a single MGTransferGlobalCoarsening instance and uses this for all blocks (i.e., uses the same AffineConstraints instance for all blocks):

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-17 Thread 'yy.wayne' via deal.II User Group
Hi Peter, sorry for coming back to this discussion again. I've applied the vmult function and compute diagonal function for a complex MatrixFree object, and tested these functions. But there's one last ingredient absent in the multi-component MatrixFree framework with p-coarsening, transfers.

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-03 Thread 'yy.wayne' via deal.II User Group
Thanks for you patience and wonderful answer :) Best, Wayne 在2022年11月4日星期五 UTC+8 00:06:28 写道: > Hi Wayne, > > in that case I would provide the same DoFHandler to MatrixFree twice and > two different AffineConstraint objects. See the version of > MatrixFree::reinit() that takes vectors >

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-03 Thread Peter Munch
Hi Wayne, in that case I would provide the same DoFHandler to MatrixFree twice and two different AffineConstraint objects. See the version of MatrixFree::reinit() that takes vectors https://www.dealii.org/developer/doxygen/deal.II/classMatrixFree.html#abb081e301fadbfd94e0169611bae3838. Peter

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-03 Thread 'yy.wayne' via deal.II User Group
Hi Peter, Thanks for your comprehensive reply, really helpful. By assemble actually I mean the MatrixFree integrator part which corresponds to assembling in MatrixBased form :). But you resolve my question, since my main concern is one scalar DoFHandler describing both real and imaginary part.

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-03 Thread Peter Munch
Hi Wayne, > The solution in HeatProblem is a non-complex one then(half size of src and dst processed in MatrixFree operator)? We are solving equation (10) from the paper; it is the reformulated version of equation (9), which is a complex system. The heat equation is indeed not complex; but

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-02 Thread 'yy.wayne' via deal.II User Group
Thank you peter. It looks awesome! I've got a few question about it. 1. In your github code, you actually assemble a block matrix system(in MatrixFree) but didn't renumber dofs as done in most Stokes examples? There's no multi dof_handlers. The solution in HeatProblem is a non-complex

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-02 Thread Peter Munch
Hi The block version of MGTransferGlobalCoarsening is MGTransferBlockGlobalCoarsening (see https://www.dealii.org/developer/doxygen/deal.II/classMGTransferBlockGlobalCoarsening.html). I don't know the details of step-29. But what I would recommend you to do is to take a look at

[deal.II] Re: How to specify finite element component in MatrixFree?

2022-11-02 Thread 'yy.wayne' via deal.II User Group
I tried to modify my code that FEEvaluation is constructed without matrix_free_data as in the above .cc in dealii/test, but get following error information: "FEEvaluation was initialized without a matrix-free object. Integer indexing is not possible". Guess the only method to do