← Back to team overview

ffc team mailing list archive

Re: Status update

 

On Tue, Jan 26, 2010 at 12:37:12PM +0100, Kristian Oelgaard wrote:
> 2010/1/25 Anders Logg <logg@xxxxxxxxx>:
> > On Mon, Jan 25, 2010 at 07:14:20PM +0100, Kristian Oelgaard wrote:
> >
> >> 2010/1/25 Anders Logg <logg@xxxxxxxxx>:
> >> >It's starting to look better. The following 8 tests are currently failing:
> >> >
> >> >Generating code
> >> >---------------
> >> >
> >> >1. ElementRestriction.ufl failed
> >> >
> >> >*** FFC: Sorry, finite element of type "ElementRestriction" are not
> >> >supported by FIAT.
> >> >
> >> >I assume Kristian knows what to do.
> >>
> >> Yes, but I'll fix evaluate_basis and get correct results for
> >> quadrature code first.
> >
> > ok.
> >
> >> >2. QuadratureElement.ufl failed
> >> >
> >> >*** FFC: Sorry, finite element of type "Quadrature" are not
> >> >supported by FIAT.
> >> >
> >> >I assume Kristian knows what to do.
> >>
> >> Yes, we should manually check for family == "Quadrature" then return a FFC.QuadratureElement and make sure it has the same member functions as the FIAT.FiniteElement that we currently expects around the code.
> >
> > ok.
> >
> >> >3. TensorWeightedPoisson.ufl failed
> >> >
> >> >*** FFC: Can only handle rank 0 or rank 1 tensors.
> >> >
> >> >This is a bug in the selection of representation. The tensor
> >> >representation should realize earlier that it can't handle tensors
> >> >so quadrature should be selected.
> >>
> >> I assume Anders knows what to do. :)
> >
> > Yes! I'm working on it now.
> >
> >> >Building test programs
> >> >----------------------
> >> >
> >> >4. Constant failed
> >> >
> >> >Constant.h:1044: error: unused variable ‘x’
> >> >
> >> >Bug in evaluate_basis or removed_unused?
> >>
> >> I'm looking into this now. It is related to how intelligent remove_unused is.
> >> I think the easiest solution is to create a set of used variables when generating the code and the have remove_unused operate on the jacobian snippets, which will be the fastest way of doing things anyway.
> >> A fix will be on it's way tomorrow.
> >
> > Yes, that's the best way. That is how I do it in the tensor code
> > generator.
>
> Actually, it turns out that if I remove the line in remove_unused (not
> just comment it, I guess this is for debugging?) it works fine.

Very strange... I had some problems with the tensor code generation
yesterday and then it turned out that commenting instead of removing
made it work... :-)

Does the tensor representation work for terms involving interior_facet
integrals? Can you check if SubDomains.ufl still goes through the
regression tests? I had problems compiling it because unused
variables were not removed correctly.

> I have all demos (not Restriction and Quadrature) compiling, including
> gcc, but apparently I have no internet on my computer at the moment so
> I can't push the fixes. I'll keep working on getting the numbers
> correct for the tabulate_tensor() function for quadrature code w.r.t.
> the old references.

ok!

--
Anders



> Kristian
>
> >> >5. FacetIntegrals failed
> >> >
> >> >Same problem in evaluate_basis
> >> >
> >> >6. MixedMixedElement failed
> >> >
> >> >Same problem in evaluate_basis
> >> >
> >> >7. VectorLaplaceGradCurl failed
> >> >
> >> >VectorLaplaceGradCurl.h:3650: error: ‘K_00’ was not declared in this
> >> >scope> >> >
> >> >Another problem in evaluate_basis
> >>
> >> I'll take a look, should be a format thing from changing from Jinv_ -> K
> >
> > ok.
> >
> >> >Validating generated programs
> >> >-----------------------------
> >> >
> >> >8. P5tet.bin failed
> >> >
> >> >Segmentation fault when calling evaluate_basis_derivatives
> >>
> >> I don't know what to make of this, but I'll take a look once the
> >> other issues has been sorted out.
> >
> > I tried to see what goes wrong and it was very strange. The variable
> > num_derivatives gets the value 1 and then it changes to some
> > completely strange value (like 2312391239123). Looks like a memory
> > allocation problem. It shouldn't be ruled out that the problem is how
> > the function is called from within ufctest.h (some array not allocated
> > properly).
> >
> >> When running the regression tests, I guess that if the generated code is equal to the reference code there is no need to proceed compiling and running the test program. This will save us some time when running the test suite.
> >
> > Yes, this will be added.
> >
> >
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.4.9 (GNU/Linux)
> >
> > iEYEARECAAYFAktd5kgACgkQTuwUCDsYZdHNFwCffDN0qOR1ydfwCgNCt46685I6
> > N/MAn1Rq8t4lDNSv12NwdZUYekjgw9b9
> > =ADQt
> > -----END PGP SIGNATURE-----
> >
> >

Attachment: signature.asc
Description: Digital signature


References