Thread Previous • Date Previous • Date Next • Thread Next |
Kristian Oelgaard wrote:
2010/1/27 Medhi Nikbakht <m.nikbakht@xxxxxxxxxx>:On Wed, 2010-01-27 at 15:50 +0100, Marie Rognes wrote:FFC compilation fails for ElementRestriction.uflThe error message says that "ElementRestriction" is not supported by FIAT. How will the restricted elements be implemented? Wouldn't it be better to support them inside FFC?There are two types of restrictions supported in UFL (and the old FFC). 1) Restriction onto Measure (like 'dc'), which is what you want.2) Restriction onto Cell, as for instance restricting a Lagrange element defined on a 'triangle' to its facets.The third restriction that we might want in the future is restriction onto subdomains possible in UFL but not in FFC.To implement 1) I think it is enough to just attach the Measure as a member to the fiat_element and the simply look for it in appropriate places when generating the code. That means handle it in FFC.fiatinterface, could that work?To implement 2) I modified the return value of entity_dofs() and tabulate() accordingly. To do it this way again we will need to make changes in FIAT_NEW.FiniteElement and FFC.MixedElement. I'm not sure it is a good idea to make FIAT_NEW.PolynomialSet aware of restrictions, but I don't know enough about the FIAT internals to back up this claim.
How about adding a class RestrictedElement that contains an element and (based on the restriction) a list of relevant basis function indices, and overrides the methods as FiniteElement/MixedElement?
No need to make FIAT aware of this. -- Marie
I'm not really sure how to handle the restriction onto subdomains, but it should most likely be implemented in FFC.KristianMehdiQuadratureElement.ufl TensorWeightedPoisson.ufl Running test programs fails for P5tet.bin (Segmentation faults after evaluate_basis(0, ...) Differences in output evaluate_basis* FacetIntegrals.out (missing value in generated code (many)) SubDomain.out (missing value in generated code (tabulate_tensor)) Others:tabulate_entity_dofs (errors thrown are all wrong. Marie will fix)-- Marie _______________________________________________ Mailing list: https://launchpad.net/~ffc Post to : ffc@xxxxxxxxxxxxxxxxxxx Unsubscribe : https://launchpad.net/~ffc More help : https://help.launchpad.net/ListHelp_______________________________________________ Mailing list: https://launchpad.net/~ffc Post to : ffc@xxxxxxxxxxxxxxxxxxx Unsubscribe : https://launchpad.net/~ffc More help : https://help.launchpad.net/ListHelp
Thread Previous • Date Previous • Date Next • Thread Next |