New step tutorial elastic wave equation with PMLs, complex-valued algebra

60 views
Skip to first unread message

Daniel Garcia

unread,
Apr 28, 2018, 5:49:40 AM4/28/18
to deal.II User Group
Hi,

I'm a researcher at the CNRS (Paris). My nickname in GitHub is dangars (I contributed with a couple of pull requests)

I work in optomechanics/phononics. I've been using deal.ii for 6 months and it works great! I developed a model of the elastic wave equation in 2D that uses PMLs.

I'm preparing a contribution of a new step tutorial of the elastic wave equation with PMLs in 3D to GitHub/dealii. This will be useful for the phononics and optomechanics communities.

The separation real/imag works very well with PMLs.

The elastic/PML matrix with real/imag separation is big. If I use complex numbers the matrix will be compact and will fit in one line (much better for a step tutorial)

What is the status of complex valued calculations? Is it ready to solve a differential equations? Is there a performance penalty with complex numbers vs separate real/imag parts?

According to this, it seems to be almost ready:

Thanks,
Daniel Garcia

Denis Davydov

unread,
Apr 29, 2018, 12:36:03 AM4/29/18
to deal.II User Group
Hi Daniel,

Thanks for willing to contribute the tutorial.

As far as as recall there just a few things left related to complex numbers. 
The biggest one is complex-valued Dirichlet constraints in ConstraintMatrix object
That's not possible yet. Otherwise all the solvers and linear algebra is ready. So you can certainly assemble system and solve it.

Denis.

Daniel Garcia

unread,
Apr 29, 2018, 2:02:56 AM4/29/18
to deal.II User Group
Thanks Denis,

I will try to assemble and solve the system using complex-valued algebra.

Best,
Daniel

Wolfgang Bangerth

unread,
Apr 29, 2018, 11:10:19 PM4/29/18
to dea...@googlegroups.com
On 04/28/2018 10:36 PM, Denis Davydov wrote:
>
> As far as as recall there just a few things left related to complex numbers.
> The biggest one is complex-valued Dirichlet constraints in ConstraintMatrix object
> https://github.com/dealii/dealii/issues/1760
> That's not possible yet. Otherwise all the solvers and linear algebra is
> ready. So you can certainly assemble system and solve it.

Denis -- out of curiosity, what solver are you using for complex-valued linear
systems? I don't think the deal.II SolverGMRES class works, and obviously the
other iterative solvers don't either. Nor does UMFPACK.

Best
W.

--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/

Denis Davydov

unread,
Apr 30, 2018, 1:13:26 AM4/30/18
to dea...@googlegroups.com


> On 30 Apr 2018, at 04:54, Wolfgang Bangerth <bang...@colostate.edu> wrote:
>
> On 04/28/2018 10:36 PM, Denis Davydov wrote:
>> As far as as recall there just a few things left related to complex numbers.
>> The biggest one is complex-valued Dirichlet constraints in ConstraintMatrix object
>> https://github.com/dealii/dealii/issues/1760
>> That's not possible yet. Otherwise all the solvers and linear algebra is ready. So you can certainly assemble system and solve it.
>
> Denis -- out of curiosity, what solver are you using for complex-valued linear systems? I don't think the deal.II SolverGMRES class works, and obviously the other iterative solvers don't either. Nor does UMFPACK.

I would not be so sure about it, but I have not tried either.
I am quite certain complex-valued PETSc will work.

ps. I don’t use any of them, some time ago I invested a lot of efforts to push forward
complex-valued algebra in deal.II (which was also followed by others), but strangely enough I never used it.

>
> Best
> W.
>
> --
> ------------------------------------------------------------------------
> Wolfgang Bangerth email: bang...@colostate.edu
> www: http://www.math.colostate.edu/~bangerth/
>
> --
> 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 a topic in the Google Groups "deal.II User Group" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/dealii/N-V-8geRLrA/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to dealii+un...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Daniel Garcia

unread,
Apr 30, 2018, 4:05:02 AM4/30/18
to deal.II User Group


On Monday, April 30, 2018 at 7:13:26 AM UTC+2, Denis Davydov wrote:


> On 30 Apr 2018, at 04:54, Wolfgang Bangerth <bang...@colostate.edu> wrote:
>
> On 04/28/2018 10:36 PM, Denis Davydov wrote:
>> As far as as recall there just a few things left related to complex numbers.
>> The biggest one is complex-valued Dirichlet constraints in ConstraintMatrix object
>> https://github.com/dealii/dealii/issues/1760
>> That's not possible yet. Otherwise all the solvers and linear algebra is ready. So you can certainly assemble system and solve it.
>
> Denis -- out of curiosity, what solver are you using for complex-valued linear systems? I don't think the deal.II SolverGMRES class works, and obviously the other iterative solvers don't either. Nor does UMFPACK.

I would not be so sure about it, but I have not tried either.
I am quite certain complex-valued PETSc will work.

ps. I don’t use any of them, some time ago I invested a lot of efforts to push forward
complex-valued algebra in deal.II (which was also followed by others), but strangely enough I never used it.


 
I will write the first version of the code with real/imag separation and UMFPACK. This works well with PML matrices.

Then I will modify the code and use complex-valued algebra with PETSc.

This is an extra-step, but it will allow to compare the results. 

Best,
Daniel
Reply all
Reply to author
Forward
0 new messages