Quadrature vs uflacs Representation
3 months ago by
I'm using both of these representations but they are not clear on my mind. I check the book and it says
"The quadrature approach can deal with cases in which not all functions come from a finite elementspace, using ‘quadrature functions’ that can be evaluated directly at quadrature points. The tensor representation approach only supports cases in which all functions come from a finite element space(using interpolation if necessary)."
So, I understand that if I use Quadrature functionspace I have to use Quadrature Representation and for rest of the case it is good to use uflacs. What about visa versa ? What could be happen if I use uflacs while using Quadrature functionspace ? Actually the main question is, where should I use Quadrature and uflacs representation ? What is their main difference ? (Is the difference the way of calcaulation of integrals in the system ?)
Community: FEniCS Project
3 months ago by
Representations govern the code generation for assembly kernels. Different representation results in different but equivalent code. Quadrature representation is deprecated and will be obsolete. UFLACS is more modern rewrite performing usually better both at compile-time and run-time.
From user point-of-view one should not need to switch the representation and should keep it auto which defaults to UFLACS, unless trying to circumvent a bug present in UFLACS; see https://bitbucket.org/fenics-project/ffc/issues?status=new&status=open&component=uflacs-repr for the list of bugs in UFLACS.
Another modern implementation of form compiler is TSFC representation, see http://fenics.readthedocs.io/projects/ffc/en/latest/installation.html#tsfc-requirements for installation of its additional dependencies.
Please login to add an answer/comment or follow this question.