dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #22308
Re: curved elements
> 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.pyseems
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.
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