> I found an error in your implementation in fiat, Nico.

Are you talking about [1]?

> Is there an easy fix for this?

I can't reproduce the issue by your description. Could you provide a
complete example? Or even better: a test for it that I could merge
into the feature branch?

FWIW, I never consciously touched the linear elements during the
replacement of ScientificPython.

--Nico


[1] https://bitbucket.org/nschloe/fiat/branch/improve-tests


On Wed, Jul 23, 2014 at 1:59 PM, Aslak Bergersen
<[email protected]> wrote:
> Hi!
>
> I found an error in your implementation in fiat, Nico. And I'm having some
> trouble removing it. It is an error for all linear elements (which is not
> tested by fiat), and can be easy be reconstructed by running
>
> element = FiniteElement("Lagrange", interval, 1)
>
> The problem seems to be that tabulate_derivative in LineExpansionSet is not
> changed to return the same as tabulate_derivative in TriangleExpansionSet
> and TetrahedronExpansionSet. Is there an easy fix for this?
>
> Aslak
>
>
> 2014-06-29 22:31 GMT+02:00 Nico Schlömer <[email protected]>:
>
>> > Changing idioms
>> > 2py3 changes idioms that are "outdated". When running the script it
>> > changes
>> > type(t) != type(q)  to not isinstance(t, type(q)). Is this this
>> > something I
>> > should do?
>> >
>> > Python syntax
>> > The 2to3 scripts have the possibility to change the comma-syntax to
>> > correct
>> > python syntax. For example, it changes (a,b) to (a, b). Should I run
>> > this on
>> > the files as well?
>>
>> Those are things that Python2 linters like
>>
>> pep8
>> pyflakes
>> flake8
>>
>> usually bring up too. I would say that getting FEniCS clean w.r.t. to
>> those three (largely overlapping) improves the code readability and
>> quality.
>>
>> Cheers,
>> Nico
>>
>>
>> On Fri, Jun 27, 2014 at 9:21 AM, Aslak Bergersen
>> <[email protected]> wrote:
>> > Hi!
>> >
>> > I have some questions about the supporting to python 3.x. You can take a
>> > look at the changes I have done if you want (or need).
>> >
>> > Testing with python 3.3
>> > I have installed python 3.3 such that I can use it when I want (e.g. py3
>> > script.py). However, when I'm running the tests all the dependencies are
>> > missing (For now I'm running python -3). So how do I build it with
>> > python 3?
>> >
>> > Support python 3.1
>> > callable() returned in python 3.2, so there is no need to change it,
>> > unless
>> > we want to support python 3.1?
>> >
>> > Changing idioms
>> > 2py3 changes idioms that are "outdated". When running the script it
>> > changes
>> > type(t) != type(q)  to not isinstance(t, type(q)). Is this this
>> > something I
>> > should do?
>> >
>> > Python syntax
>> > The 2to3 scripts have the possibility to change the comma-syntax to
>> > correct
>> > python syntax. For example, it changes (a,b) to (a, b). Should I run
>> > this on
>> > the files as well?
>> >
>> > Six module
>> > I have used the six modules to make it compatible with 2.x and 3.x, but
>> > I'm
>> > a bit unsure where to put it, or how to properly include it to the
>> > project
>> > such that all files have access.
>> >
>> > --
>> > Mvh
>> > Aslak Bergersen
>> > 993 22 848
>> >
>> >
>> > 2014-05-23 12:56 GMT+02:00 Martin Sandve Alnæs <[email protected]>:
>> >
>> >> UFL doesn't use __metaclass__ but it uses __new__, is the behaviour of
>> >> that the same? I'd like to clean up those parts at some point but I
>> >> won't
>> >> have time before the summer.
>> >>
>> >> If we have to change behaviour of Expression we should consider doing
>> >> that
>> >> simultaneously with the introduction of an Expression-like ufl type
>> >> which
>> >> will have several advantages.
>> >>
>> >> Martin
>> >>
>> >>
>> >> On 23 May 2014 12:24, Johan Hake <[email protected]> wrote:
>> >>>
>> >>> And then there is the change of syntax for metaclasses in Python3...
>> >>> Just
>> >>> goggle metaclass python 3 and there are several pointers to the
>> >>> different
>> >>> syntax.
>> >>>
>> >>> Maybe this will be a good point to throw out the usage of metaclasses
>> >>> in
>> >>> DOLFIN? What we need is to add a distinction between
>> >>> CompiledExpression and
>> >>> Expression. I have tried this before with no luck ;)
>> >>>
>> >>> Johan
>> >>>
>> >>>
>> >>> On Thu, May 22, 2014 at 11:40 AM, Martin Sandve Alnæs
>> >>> <[email protected]> wrote:
>> >>>>
>> >>>> Yes, and if we're lucky we can get to that point without as much work
>> >>>> as
>> >>>> sympy, since we don't have as much code.
>> >>>>
>> >>>> The 2to3 tool can do selective changes like change print "" to
>> >>>> print("")
>> >>>> and fix exception syntax, which are compatible with 2.7.
>> >>>>
>> >>>> It can also do things like change "a = dict.iteritems()" into "a =
>> >>>> dict.items()" which changes the memory usage when run on 2.7. These
>> >>>> differences can instead be resolved by using the python module "six"
>> >>>> which
>> >>>> implements cross-compatible helper functions for a lot of things.
>> >>>>
>> >>>> Btw when we switch we should go straight to python 3.3-3.4.
>> >>>> Supporting 3.0-3.2 side by side with 2.7 is apparently harder.
>> >>>>
>> >>>> (Note to Aslak: read the link from Jan!)
>> >>>>
>> >>>> Martin
>> >>>>
>> >>>>
>> >>>> On 22 May 2014 11:22, Jan Blechta <[email protected]> wrote:
>> >>>>>
>> >>>>> Note that there is also an approach of having simultaneously 2.x and
>> >>>>> 3.x
>> >>>>> compatible codebase without a need of using 2to3. Allegedly, this is
>> >>>>> used in SymPy, NumPy and SciPy projects. See
>> >>>>>
>> >>>>>
>> >>>>> http://ondrejcertik.blogspot.cz/2013/08/how-to-support-both-python-2-and-3.html
>> >>>>>
>> >>>>> Jan
>> >>>>>
>> >>>>>
>> >>>>> On Thu, 22 May 2014 11:05:43 +0200
>> >>>>> Martin Sandve Alnæs <[email protected]> wrote:
>> >>>>>
>> >>>>> > The plan for the initial work here is to keep the code python 2.7
>> >>>>> > compatible but ready for a later swift switch to 3 only. I suggest
>> >>>>> > we
>> >>>>> > release fenics 1.5 with python 2.7 compatibility intact but
>> >>>>> > convertible to python 3 by just running py2to3. Otherwise there
>> >>>>> > will
>> >>>>> > be too much simultaneous breakage. Then we can discuss whether we
>> >>>>> > leave python 2.7 behind in fenics 1.6 or not.
>> >>>>> >
>> >>>>> > However, I haven't thought about the swig side in dolfin, and as
>> >>>>> > Johan
>> >>>>> > mentions keeping the Python CAPI code compatible is not covered by
>> >>>>> > py2to3. I'll discuss this with Johan and Aslak.
>> >>>>> >
>> >>>>> > Martin
>> >>>>> >
>> >>>>> >
>> >>>>> > On 22 May 2014 10:49, Garth N. Wells <[email protected]> wrote:
>> >>>>> >
>> >>>>> > > Nice. Do we want to support Python 2.7 and 3, or would it be
>> >>>>> > > more
>> >>>>> > > sustainable to go all Python 3? My preference is for simplicity
>> >>>>> > > and
>> >>>>> > > low maintenance, which points to Python 3 only support.
>> >>>>> > >
>> >>>>> > > Garth
>> >>>>> > > On Thu, 22 May, 2014 at 9:39 AM, Martin Sandve Alnæs
>> >>>>> > > <[email protected]> wrote:
>> >>>>> > >
>> >>>>> > >> We have a summer intern at Simula, Aslak Bergersen,
>> >>>>> > >> who will work on preparations for python 3 support in FEniCS,
>> >>>>> > >> as well as some other FEniCS tasks, from late June and
>> >>>>> > >> throughout July.
>> >>>>> > >>
>> >>>>> > >> The preparations for python 3 involves mainly:
>> >>>>> > >> - Replacing ScientificPython for AD in FIAT
>> >>>>> > >> - Applying and committing backwards compatible parts of py2to3
>> >>>>> > >> - Replacing several functions such as dict.iteritems with
>> >>>>> > >> six.iteritems in UFL and possibly FFC to make sure we keep the
>> >>>>> > >> same performance and memory behaviour with python 2 and 3.
>> >>>>> > >>
>> >>>>> > >> I will be on vacation part of his time here so please
>> >>>>> > >> help him out if he has questions to the list.
>> >>>>> > >>
>> >>>>> > >> Martin
>> >>>>> > >>
>> >>>>> > >
>> >>>>> > >
>> >>>>>
>> >>>>
>> >>>>
>> >>>> _______________________________________________
>> >>>> fenics mailing list
>> >>>> [email protected]
>> >>>> http://fenicsproject.org/mailman/listinfo/fenics
>> >>>>
>> >>>
>> >>
>> >
>> >
>> >
>> > --
>> > Mvh
>> > Aslak Bergersen
>> > 993 22 848
>> >
>> >
>> > _______________________________________________
>> > fenics mailing list
>> > [email protected]
>> > http://fenicsproject.org/mailman/listinfo/fenics
>> >
>
>
>
>
> --
> Mvh
> Aslak Bergersen
> 993 22 848
>
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to