dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #22311
Re: curved elements
On 24 March 2011 18:13, Peter Brune <prbrune@xxxxxxxxx> wrote:
>
>> It does support fractions, but maybe I don't quite follow your
>> objection. It's difficult to give pointers when the code in question
>> is secret....
>>
>
> Point #1:
> http://bazaar.launchpad.net/~unicorn-core/unicorn/unstable/view/head:/ucsolver/icns-iso/unicorn/isoparametry.py
> seems pretty out in the open to me. It just got left in the context where I
> built it due to general apathy and frustration with FFC and the half-based
> interface and implementation designs people were proposing.
>
> Point #2: The error I get is:
>
> Compiler stage 3: Optimizing intermediate representation
> --------------------------------------------------------
> Optimising expressions for cell integral
> Traceback (most recent call last):
> File "/home/prbrune/fenics/fenics_tip/local/bin/ffc", line 176, in
> <module>
> sys.exit(main(sys.argv[1:]))
> File "/home/prbrune/fenics/fenics_tip/local/bin/ffc", line 157, in main
> compile_form(ufd.forms, ufd.object_names, prefix, parameters)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/compiler.py",
> line 145, in compile_form
> oir = optimize_ir(ir, parameters)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/optimization.py",
> line 38, in optimize_ir
> oir_integrals = [_optimize_integral_ir(ir, parameters) for ir in
> ir_integrals]
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/optimization.py",
> line 56, in _optimize_integral_ir
> oir = r.optimize_integral_ir(ir, parameters)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/quadrature/quadratureoptimization.py",
> line 32, in optimize_integral_ir
> _simplify_expression(integrals, geo_consts, psi_tables_map)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/quadrature/quadratureoptimization.py",
> line 60, in _simplify_expression
> value = optimise_code(val, ip_consts, geo_consts, t_set)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/quadrature/symbolics.py",
> line 182, in optimise_code
> ip_expressions = ip_expr.expand().reduce_vartype(IP)
> File
> "/home/prbrune/fenics/fenics_tip/local/lib/python2.6/site-packages/ffc/quadrature/fraction.py",
> line 287, in reduce_vartype
> raise RuntimeError("This case is not handled")
> RuntimeError: This case is not handled
>
> from running ffc -l dolfin -O --verbose Volume.ufl on the code in Point #3.
Could you file a FFC bug report on a reduced (if possible) version of
Volume.ufl, so it doesn't get lost?
Kristian
> Point #3: Code that works with modern FEniCS tools:
> https://bitbucket.org/prbrune/isoparametry/
>
> I just spent a plane ride writing up a README and comments, but ask any
> additional questions. It turns out that P2 with P2 coordinates is
> interestingly only 3X slower, so I don't know what's up with P1 (other than
> very good optimization of the original assembly) In any case I'm declaring
> victory.
>
> Point #4: I am not going to put substantial effort into this until June as
> it is not part of my thesis. Do with it what you will.
>
> - Peter
>
Follow ups
References