dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #09148
Re: Visualizing basis functions
On Tue, Aug 19, 2008 at 5:04 PM, Marie Rognes <meg@xxxxxxxxxxx> wrote:
> Evan Lezar wrote:
>
>> Marie
>>
>> I have been playing around with the code an little and have now got the p0
>> Nedelec functions plotting directly in python as well. Thanks for the code
>> - it really helped.
>>
>>
> Good :)
>
> I do have one quick question regarding the extension to the Nedelec basis
>> functions of higher degree. Now as soon as I increase the degree of the
>> finite elements (to say 1), then the number of basis functions increases,
>> which is expected. However, I am not 100% sure why the dimension of the
>> space is 8 for a degree of 1 - is there some documentation regarding the
>> basis functions.
>>
>
> Are you in 2 or 3D?
>
I am working in 2D. I just realized what the issue is. The Nedelec basis
functions that are implemented by FFC are of the first kind and thus have a
reduced order gradient subspace - this is what it says in the FFC manual at
least. Also, the degree specified is the degree of the gradient subspace
with the rotational subspace being one degree higher - and thus explaining
the 8 basis functions (6 edge-based and 2 face based) over a triangle. This
does not resolve the question regarding the heirarchical nature of the basis
functions though.
>
> I have done some work in the past on sets of higher degree basis functons
>> (mostly those of Webb (1999)), and as far as I can remember there should be
>> 6 basisfunctions of degree 1.
>>
>>
> In 3D, there are 6 basis functions in the lowest order case. We start the
> numbering for the Nedelecs at 0.
>
> In 2D, there are 3 basis functions in the lowest order case (degree = 0)
> and as far as I remember 8 for the next.
>
> Then, the Nedelec set of basis functions are heirarchical and thus a set
>> of a given degree should include the basis functions of a lower degree - the
>> reason that I bring this up is that if I simply increase the degree of the
>> finite element in the code sample that you supplied (as well as adjust the
>> dimension of the space accordingly) then the basis functions plotted for
>> degree 0 are not present in the 8 basis functions that are plotted. In
>> addition, the normal component along an edge seems to be quadratic. I would
>> expect at most a linear variation in the normal component. I think the
>> problem is more than likely that the degree I specify when constructing the
>> element (FiniteElement("Nedelec", "triangle", degree)) does not mean what I
>> think it does.
>>
>> Thank you in advance for your response.
>>
>>
>
> Have to run now, but will comment more later. Feel free to attach code so
> that I can see exactly what you mean...
>
>
No problem. Will send some code when I get a chance.
Evan
Follow ups
References