Subject: [FEniCS-dev] FEM for Electromagnetics

From: "Lezar, Evan, Mr <[email-masked]>" <[email-masked]>
Date: Wed, 26 Mar 2008 13:25:12 +0200

Hi all

I have recently come across Fenics in my search for a finite element
library to use in my PhD research.  I am involved in computational
electromagnetics and typically use tangentially continuous edge, face
and volume based vector basis functions to solve Maxwell's equations.
These are higher order Nedelec basis functions.

At the moment I am trying to come to terms with what is going on the in
the code base and thought a good start would be to implement a solver
for a simple 2D waveguide eigenvalue problem (The source-free vector
Helmholtz equation). 

Is there anyone that has tackled something similar, or can give me a
couple of pointers to get going?

Thanks in advance

Evan Lezar

---

From: Andy Ray Terrel <[email-masked]>
Date: Wed, 26 Mar 2008 08:08:10 -0500

Hello Evan,

I would look at start at the demos (dolfin/src/demo/pde). The 
mixedpoisson and stokes demos have vector elements, unfortunately in my 
quick test it looks like Nedelec hasn't been fully integrated in dolfin 
just yet. The convectiondiffusion demo gives some time stepping routines 
that might be helpful.

-- Andy

Lezar, Evan, Mr <[email-masked]> wrote:
> and volume based vector basis functions to solve Maxwell’s equations. 
> At the moment I am trying to come to terms with what is going on the 
> in the code base and thought a good start would be to implement a 
> solver for a simple 2D waveguide eigenvalue problem (The source-free 
> vector Helmholtz equation).
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> FEniCS-dev mailing list
> [email-masked]
> http://www.fenics.org/mailman/listinfo/fenics-dev
>   

-- 

====================
Andy Terrel
Computer Science Dept
University of Chicago
[email-masked]
---------------------

Failure has a thousand explanations,
Success doesn't need one.
                   -Sir Alec Guiness

---

From: Anders Logg <[email-masked]>
Date: Wed, 26 Mar 2008 17:31:35 +0100

> just yet. The convectiondiffusion demo gives some time stepping routines 

What's the problem with Nedelec? I thought it worked.

-- 
Anders

---

From: Andy Ray Terrel <[email-masked]>
Date: Wed, 26 Mar 2008 11:46:44 -0500

> What's the problem with Nedelec? I thought it worked.
 
First time I tried using it I got:

terminate called after throwing an instance of 'std::runtime_error'
  what():  evaluate_dof not implemented for this type of element
Abort trap

Which comments in ffc claim that nedelec is not supported for the 
evaluate_basis functions.

If I just stick to the mixed poisson demo it works fine, but it is 
producing a different picture than the BDM element.  Of course this 
could just be that the plotting is not really doing the right thing.

I guess it really depends on what you mean by working, although the 
issues I bring up could not be important for a specific user.

-- Andy

====================
Andy Terrel
Computer Science Dept
University of Chicago
[email-masked]
---------------------

---

From: Anders Logg <[email-masked]>
Date: Wed, 26 Mar 2008 18:11:11 +0100

> issues I bring up could not be important for a specific user.

Yes, evaluate_dof is needed for setting BCs and this function was long
missing, but it should be there now. (Marie and Rob added the missing
pieces in FIAT with the class Functionaltype.)

-- 
Anders