### assemble: quadrature representation vs uflacs

160

views

0

I'm using

to get a diagonal-only mass matrix. This now generates the warning

Simply replacing

(Compare with https://bitbucket.org/fenics-project/ffc/issues/145/uflacs-error-for-vertex-quadrature-scheme#.) Any hints here?

```
A = assemble(
u * v * dx,
form_compiler_parameters={'quadrature_rule': 'vertex',
'representation': 'quadrature'}
)
```

to get a diagonal-only mass matrix. This now generates the warning

```
*** ===================================================== ***
*** FFC: quadrature representation is deprecated! It will ***
*** likely be removed in 2018.1.0 release. Use uflacs ***
*** representation instead. ***
*** ===================================================== ***
```

Simply replacing

`quadrature`

by `uflacs`

leads to the error```
/tmp/tmpr8d_d99f/ffc_form_bdf3fbee4fe9e8f4ced9697b51091e53930253ee.cpp:104:29: error: ‘FE6_C0_Q3’ was not declared in this scope
TF0[iq] = fw0 * FE6_C0_Q3[0][iq][iq];
^~~~~~~~~
```

(Compare with https://bitbucket.org/fenics-project/ffc/issues/145/uflacs-error-for-vertex-quadrature-scheme#.) Any hints here?

Community: FEniCS Project

### 1 Answer

3

That's right. Quadrature is deprecated and uflacs has the bug (in fact more bugs which are blocking removing of quadrature). You can remove the warning by something like

```
import warnings
from ffc.quadrature.deprecation import QuadratureRepresentationDeprecationWarning
warnings.simplefilter("once", QuadratureRepresentationDeprecationWarning)
```

Note that quadrature will likely not be removed in 2018.1.0 because of a lack of manpower. It has already been removed from X.

Please login to add an answer/comment or follow this question.