Hi,

On Mon, Aug 16, 2010 at 03:05:27PM -0700, Ondrej Certik wrote:
> Hi Matt and Addison,
> 
> great job! Some comments below:
> 
> On Mon, Aug 16, 2010 at 12:19 PM, Matt Curry <mattjcu...@gmail.com> wrote:
> > Addison and I have been working on adding features to sympy.physics
> > for our GSoC project. We started off working on separate branches,
> > but, as time progressed, our two branches merged together. Here is a
> > description of what we have added:
> >
> > We have added a general quantum mechanical framework using Dirac
> > notation. This includes the ability to create bras, kets, inner/outer
> > products, and other useful objects for symbolic quantum mechanics. The
> > base classes for states can be sub-classed if users wish to create
> > their own states with custom representation. We have created custom
> > quantum versions of the Mul, Add, and Pow classes in order to preserve
> > the special operation rules between these objects. Hilbert spaces from
> > the hilbert.py file are used to check the dimensions of objects for
> > validation of binary operations. We have also included an example file
> > (particle in a box: piab.py), which gives a taste of how this module
> > can be used.
> >
> > Also included in the branch is a module for modeling quantum
> > computation. The module (which uses the quantum base) gives the user
> > the ability to create quantum gates (both single qbit and multi-qbit
> > gates) as well as the qbit states on which they act. These gates can
> > be either applied directly, or represented in their matrix form. Also,
> > the module has a notion of measurement and can preform the quantum
> > Fourier transform using elementary gates. The underlying framework is
> > flexible enough that further addition of gates can be accomplished by
> > simply sub-classing Gate and specifying its matrix.
> >
> > The branch has extensive tests and documentation (including doctests).
> > The code is ready for review and can be found at
> > http://github.com/mattcurry/sympy/tree/hilbert2/sympy/physics/.
> 
> Here is a diff against our current master:
> 
> http://github.com/mattcurry/sympy/compare/sympy:master...mattcurry:hilbert2
> 
> 
> I noticed that lots of the classes/methods are missing docstrings and
> doctests. For example:
> 
> sympy/physics/shor.py
> 
> Also, do you think you can write a page about all the modules that you
> wrote into docs/ ? So that it looks something like this:
> 
> http://docs.sympy.org/modules/polys/index.html
> 
> e.g. some introduction and then lots of examples how to use it. Some
> cool things that can be done with the code you wrote. It doesn't have
> to be that long, it's just to give you some inspiration. In
> particular, it'd be cool to have some examples for all the things that
> you mentioned in your email above.
> 
> I would suggest to write such examples as doctests, and then you can
> use the autodocs feature of sphinx, that pulls those docstrings into
> the docs, that way it will be easy to maintain it (as doctests) and
> easy to generate the docs.
> 

This is precisely what I'm missing in the branch. One thing are
docstrings and doctests, i.e. technical documentation, and the
other is text (with examples) that can give a bigger picture of
a piece of software (physics module in this case).

It would be very good if you could write documentation as Ondrej
suggested, or even go further and put together something more
elaborate. This does not have to be long, just meaningful. See

http://mattpap.github.com/masters-thesis/html/src/groebner.html

as an example.

Now a short story. Suppose I would go to a conference or some meeting
where it would talk about SymPy. I would also like to say a few words
about the very new physics module that was developed by GSoC students.
I'm not a physicist, nor I work any near physics, so at this point I
can say almost nothing about the module. However, if there was some
(non-technical) documentation that I could read, then I could spread
a word about physics module in SymPy, show some nice examples etc.
This way we could attract more people to use the module or even
improve it in future.

> Let me know if you have any questions about this.
> 
> Otherwise, since this branch doesn't remove or change any old code and
> only add things into sympy/physics, I don't have any problems with it,
> as long as tests run (didn't try it yet). But the doctests/docstrings
> should be improved.
> 
> Ondrej
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sympy-patches" group.
> To post to this group, send email to sympy-patc...@googlegroups.com.
> To unsubscribe from this group, send email to 
> sympy-patches+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/sympy-patches?hl=en.
> 

-- 
Mateusz

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to