← Back to team overview

dolfin team mailing list archive

Re: [HG DOLFIN] Added slicing capabilities for GenericVector interface in PyDOLFIN:

 

On Fri, Apr 17, 2009 at 09:25:16AM +0200, Johan Hake wrote:
> On Friday 17 April 2009 09:20:20 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:   6003:010f9db3ecb7456374a12e3510ff1c93847d5f6b
> > tag:         tip
> > user:        "Johan Hake <hake@xxxxxxxxx>"
> > date:        Fri Apr 17 09:20:16 2009 +0200
> > files:       ChangeLog dolfin/swig/dolfin_la_post.i
> > dolfin/swig/dolfin_la_pre.i test/unit/la/python/test.py description:
> > Added slicing capabilities for GenericVector interface in PyDOLFIN:
> >
> >    We can now e.g. do things like:
> >       v = Vector(10)
> >       v[:] = 1.0
> >       v[0:10:2] = 2.0
> >       v[0:10:2] = v[1:10:2]
> >       v[[0,3,4,6,9]] = v[1:10:2]
> >
> >    in the PyDOLFIN interface. A sliced Vector returns a copy of the old
> > Vector. I have added a bunch of tests that covers some user cases, but
> > please report any missbehaviours.
> 
> This is a nice feature that makes python programming more smooth. The 
> implementation is done totally in an extended c++ layer of the proxy classes 
> in swig. 
> 
> There are some code duplications, which probably could be eliminated, and it 
> does not support numpy arrays on the right hand side, but this could be added 
> in the future.
> 
> Cheers!
> 
> Johan

That's really cool. Can you do the same for matrices?

-- 
Anders

Attachment: signature.asc
Description: Digital signature


Follow ups

References