Closed stephankramer closed 7 years ago
This isn't a TSFC issue, so it should be posted in https://github.com/firedrakeproject/firedrake/issues (Slate only uses TSFC to generate local tensor assembly kernels). But I'll look into this and update. For now, repost this issue in the Firedrake github for reference.
TSFC is responsible for the compilation of UFL only, SLATE is a separate story. The SLATE language and its compilation resides in Firedrake, so please post this issue there as Thomas have suggested.
I am trying to use SLATE to implement a preconditioner for a Schur system A11-A10 A00^{-1} A01, where A00 is a DG mass matrix that assembles the Schur system explicitly (on @wence- 's suggestion here: https://github.com/thetisproject/thetis/pull/97#discussion_r116945058). The relevant code is:
here
a
is the form of the coupled SWE system (only linear terms). This fails in the last step with a compilation error because the generated code contains a subroutine:which contains a
w_6
argument twice.Unfortunately I haven't been able to reproduce in a standalone test yet. To reproduce in thetis, checkout the assembledschur-slate branch of thetis, and run
py.test -k pressurep -svx test/swe2d/test_standing_wave.py
.