← Back to team overview

ffc team mailing list archive

Re: Release plans

 


Anders Logg wrote:
> On Fri, Jan 29, 2010 at 10:54:54AM +0000, Garth N. Wells wrote:
>>
>> Anders Logg wrote:
>>> On Fri, Jan 29, 2010 at 10:31:05AM +0000, Garth N. Wells wrote:
>>>> Anders Logg wrote:
>>>>> On Fri, Jan 29, 2010 at 10:10:37AM +0000, Garth N. Wells wrote:
>>>>>
>>>>>>> Sub domains seem to be very different, but the other two cases just
>>>>>>> seem to be a matter of some dofs being "active" and the other zeroed
>>>>>>> out. This is what Marie suggested yesterday, that a restricted element
>>>>>>> only considers a subset of the dofs of some given element.
>>>>>>>
>>>>>> Sounds good.
>>>>>>
>>>>>>> The thing I don't understand yet is the selection of which dofs should
>>>>>>> be active. If we think of the case with restriction to facets, then
>>>>>>> the element needs to be restricted to different facets depending on
>>>>>>> which facet we are integrating over, or are we always mapping one
>>>>>>> specific facet of the reference cell to the current facet?
>>>>>>>
>>>>>> It works the same way as the DG elements, just the internal dofs are
>>>>>> thrown away, which is the latter if the above, right?
>>>>>>
>>>>>>> Say we have P1 elements in 2D which have 3 dofs. Then we could
>>>>>>> restrict that element to the dofs on the first facet (facet 0). These
>>>>>>> dofs are then labeled 1 and 2. But sometimes a facet in the mesh will
>>>>>>> correspond to the edge between 0 and 1 or 0 and 2.
>>>>>>>
>>>>>> We don't restrict to individual facets, but to all facts of a cell.
>>>>> That makes sense, but one thing still confuses me. Say that we have a
>>>>> P1 element and restrict it to facets. Then all dofs are on the facets
>>>>> so the result of the restriction is just a new P1 element. Same for P2
>>>>> where the result again is a new P2 element.
>>>> Yes.
>>>>
>>>>> For P3, the result is P3
>>>>> element minus just one dof.
>>>> Yes.
>>>>
>>>>> So does this make much difference for
>>>>> other than very high degree elements?
>>>>>
>>>> It is only needed for k > 2. It's important because everything in
>>>> FFC/UFL works for arbitrary orders.
>>> Yes, it should work for any order. I was just questioning the
>>> usefulness of it if it results in standard P1 and P2 elements for
>>> k = 1,2.
>>>
>>> Then I think I understand how it all works.
>>>
>>> But does the FFC demo make any sense?
>> We have a demo?
> 
> Yes, it's called ElementRestriction.ufl. :-)
> 

I've just changed it. It doesn't test extensively, but it does hopefully
illustrate now better its purpose.

On a related note, it would be useful if we could have multiple forms in
one file and have all of them compiled. Can this be done already?

Garth

>>> Could we simplify it so that it
>>> just defines a finite element restricted to a facet and then some dS
>>> integral?
>>>
>> Sounds good.
> 
> Could you post something simple and I'll add it.
> 
>>> It currently breaks the code we added for RestrictedElement yesterday
>>> because it has a complex nesting of restriction, then mixed with
>>> another element and then restricted again. It looks like this is not
>>> how you are using it in your solver.
>>>
>> The concept is very simple, so its implementation should be pretty
>> simple too.
> 
> Yes.
> 
> --
> Anders




References