lp:~florian-rathgeber/fluidity/femtools-python-swig-object
- Get this branch:
- bzr branch lp:~florian-rathgeber/fluidity/femtools-python-swig-object
Branch merges
Branch information
Recent revisions
- 3506. By Florian Rathgeber
-
Implement SWIG wrapper to get_element returning a python element object
This is an implementation of a SWIG wrapped python module get_element
that provides a method:e = get_element(dim, vertices, quadrature_degree, polynomial_degree)
where e is a python element object, equivalent to the struct returned by
the get_element function in C, with the following members:dim - integer
ngi - integer
polynomial_degree - integer
quadrature_degree - integer
quadrature_family - integer
vertices - integerget_dn - method returning dn as NumPy array
get_l - method returning l as NumPy array
get_n - method returning n as NumPy array
get_weight - method returning weight as NumPy array - 3502. By Florian Rathgeber
-
Remove argout typemap and wrap only function with the changed signature
This hides the element struct from the python caller. Now only this
method is available from python:weight, l, n, dn = get_element(dim, vertices, quadrature_degree, polynomial_degree)
- 3500. By Florian Rathgeber
-
Add typemaps to SWIG interface file to convert double* to NumPy array
Instead of only filling the element struct, a tuple of NumPy arrays is
returned. This changes the signature of the python function to:weight, l, n, dn = get_element(dim, vertices, quadrature_degree, polynomial_degree, element)
To avoid the necessity of creating an element object and passing it in
in the first place, SWIG adds another function that internally creates
an element object and hides it entirely from the caller, again
returning a tuple of NumPy arrays:weight, l, n, dn = get_element(dim, vertices, quadrature_degree, polynomial_degree)
- 3499. By Florian Rathgeber
-
Add SWIG wrapper to expose get_element as a python module
The python interface is generated with SWIG and all the module get_element
depends on are built into a shared object which is then loaded by the python
module.Currently the actual data is exposed to python as double* and is hence not
useable. It needs to be wrapped as a NumPy array. - 3498. By Florian Rathgeber
-
Add F90 subroutine to extract quadrature and shape information from element
Subroutine get_element will be exposed to python via a wrapper in C and
hence needs to be C interoperable. It takes a C interoperable derived
type c_element_type as last parameter with intent inout containing all
the requested information about an element given its dimension,
vertices, polynomial degree and quadrature degree.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp:fluidity