dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #14819
Re: [HG DOLFIN] merge
On Monday 17 August 2009 22:46:52 DOLFIN wrote:
> One or more new changesets pushed to the primary dolfin repository.
> A short summary of the last three changesets is included below.
>
> changeset: 6772:51528af1906a38b3827848f70488381ce425767f
> tag: tip
> parent: 6771:85ed50477f156d01ef91f9e2a5b25d6db31cefef
> parent: 6770:6e6853794f50445131ed68bf42fa7512eb6dfc12
> user: "Johan Hake <hake@xxxxxxxxx>"
> date: Mon Aug 17 22:46:44 2009 +0200
> files:
> description:
> merge
>
>
> changeset: 6771:85ed50477f156d01ef91f9e2a5b25d6db31cefef
> parent: 6769:ddab144e5a88ce577f083c29969a5bccfc6b83f3
> user: "Johan Hake <hake@xxxxxxxxx>"
> date: Mon Aug 17 22:46:01 2009 +0200
> files: site-packages/dolfin/__init__.py
> site-packages/dolfin/compile_extension_module.py
> site-packages/dolfin/compile_function.py
> site-packages/dolfin/compile_functions.py
> site-packages/dolfin/compile_subdomains.py site-packages/dolfin/function.py
> description:
> Added a compile_extension_module function to PyDOLFIN.
>
> - It provides somewhat generic JIT compilation of C++ DOLFIN code
> for PyDOLFIN
The syntax for this function is simplistic. It takes a C++ code block that is
defined within a dolfin namespace {...}, puts it into a proper SWIG interface
file, add appropriate declarations, like shared_ptr declarations, and compiles
the module. It needs documentation. However a simple example could be
something like:
compiled_module = compile_extension_module(code,
dolfin_import_files=["mesh/SubDomain.h","function/Function.h"])
where code is a C++ code block, and dolfin_import_files are optionals.
Including them will reduce the compilation time.
I know Garth asked for something like this. It would be nice if you could
provide some code that I can throw at it.
If nothing comes out of this, I have at least reused alot of code in the
compile_{functions,subdomains} functions :)
Johan
> - The function returns the compiled extension module
> - Both compile_functions and compile_subdomains use it
> - Needs some more work on numpy typemaps.
> - removed old compile_function file
> - compile_subdomains need some more love, but it is featurewise
> compatible with the old compile_subdomains
>
>
> changeset: 6770:6e6853794f50445131ed68bf42fa7512eb6dfc12
> user: Anders Logg <logg@xxxxxxxxx>
> date: Mon Aug 17 22:42:45 2009 +0200
> files: site-packages/dolfin/utils.py
> description:
> Move getoutput and getstatusoutput to dolfin.utils. To be reused in
> testing framework.
>
> ----------------------------------------------------------------------
> For more details, visit http://www.fenics.org/hg/dolfin
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
Follow ups
References