Hi,

I know you guys are busy... But do you have an approximate schedule
for when the patches may go into trunk?

Ondrej, do you disagree with the previous posts?

Øyvind


On 27 Okt, 21:54, Brian Granger <ellisonbg....@gmail.com> wrote:
> I am fine with this plan.  It will be good to get it in.
>
> Brian
>
> On Tue, Oct 27, 2009 at 1:39 PM, Øyvind Jensen <jensen.oyv...@gmail.com>wrote:
>
>
>
> > I disabled the failing doctest and pushed a commit to the branch wick3
> > in my repo.
>
> > I am also extremely busy, so I am afraid I cannot spend much more time
> > on this right now.  It seems though, that from a user perspective, the
> > missing documentation strings are not that important.  And from a
> > hacking perspective most the methods are either standard sympy methods
> > or quite short and self explaining.
>
> > Since it appears nobody has time to spend right now, let's look into
> > Brians suggestions in a later revision of the module.  At least the
> > current implementation provides something to compare with for future
> > iterations.
>
> > Øyvind
>
> > to., 22.10.2009 kl. 13.31 -0700, skrev Ondrej Certik:
> > > Hi,
>
> > > I don't have time to finish the doctests myself, but on the other hand
> > > I don't want to hold this anymore either. The current status is:
>
> > > $ bin/coverage_doctest.py sympy/physics/secondquant.py
> > > ----------------------------------------------------------------------
> > > sympy/physics/secondquant.py
>
> > > Missing documentation:
> > >        * canonize(cls, arg)
> > >        * eval(cls, arg)
> > >        * wrap_tuples(*args, **kw_args)
> > >        * symbol(self)
> > >        * upper(self)
> > >        * lower(self)
> > >        * doit(self, **kw_args)
> > >        * eval(cls, i, j)
> > >        * indices_contain_equal_information(self)
> > >        * is_symbolic(self)
> > >        * apply_operator(self, state)
> > >        * apply_operator(self, state)
> > >        * apply_operator(self, state)
> > >        * apply_operator(self, state)
> > >        * apply_operator(self, state)
> > >        * up(self, i)
> > >        * down(self, i)
> > >        * split_commutative_parts(m)
> > >        * canonize(cls, bra, ket)
> > >        * eval(cls, bra, ket)
> > >        * bra(self)
> > >        * ket(self)
> > >        * index(self, state)
> > >        * state(self, i)
> > >        * index(self, state)
> > >        * state(self, i)
> > >        * doit(self,**hints)
> > >        * doit(self, **kw_args)
> > >        * iter_q_annihilators(self)
> > >        * iter_q_creators(self)
>
> > > Missing doctests:
> > >        * eval(cls,symbol, upper, lower)
> > >        * doit(self,**kw_args)
> > >        * apply_Mul(m)
> > >        * apply_operators(e)
> > >        * matrix_rep(op, basis)
> > >        * move(e, i, d)
> > >        * eval(cls, a,b)
> > >        * eval(cls,arg)
>
> > > SCORE sympy/physics/secondquant.py: 44% (31 of 69)
> > > ----------------------------------------------------------------------
>
> > > All tests pass except:
>
> > > _______________________ sympy.physics.secondquant.wicks
> > ________________________
> > > File "/home/ondrej/repos/sympy/sympy/physics/secondquant.py", line
> > > 2569, in sympy.physics.secondquant.wicks
> > > Failed example:
> > >     wicks(Fd(p)*(F(q)+F(r)), keep_only_fully_contracted=True)
> > > Expected:
> > >     KroneckerDelta(_i, _r)*KroneckerDelta(_p, _r) + KroneckerDelta(_i,
> > > _q)*KroneckerDelta(_p, _q)
> > > Got:
> > >     KroneckerDelta(_i, _q)*KroneckerDelta(_p, _q) + KroneckerDelta(_i,
> > > _r)*KroneckerDelta(_p, _r)
>
> > > ============= tests finished: 341 passed, 1 failed in 6.34 seconds
> > =============
>
> > > So this has to be fixed. Rebased patches are in my "wick3" branch at
> > github.
>
> > > Let's get these patches in.
>
> > > Ondrej
>
> > > On Sun, Oct 18, 2009 at 2:09 PM, jegerjensen <jensen.oyv...@gmail.com>
> > wrote:
>
> > > > And another push... I overlooked the substitution Wicks -> wicks.
>
> > > > Øyvind
>
> > > > On 18 Okt, 22:51, jegerjensen <jensen.oyv...@gmail.com> wrote:
> > > >> I just pushed some of the trivial fixes to github, please pull.
>
> > > >> Ondrej, I fixed the 'str' variable as well.
>
> > > >> Øyvind
>
> > > >> On 15 Okt, 18:54, Brian Granger <ellisonbg....@gmail.com> wrote:
>
> > > >> > On Thu, Oct 15, 2009 at 2:26 AM, Øyvind Jensen <
> > jensen.oyv...@gmail.com>wrote:
>
> > > >> > > Brian, thanks for your input!
>
> > > >> > > I will make that Exception baseclass, and raise those
> > > >> > > NotImplementedErrors.  I'll do it the coming weekend.
>
> > > >> > > I really like your idea of implementing the particle/hole stuff on
> > a
> > > >> > > higher level, and creating algorithms independent of boson/fermi
> > > >> > > formalism.  That is a great suggestion.  However, I think it
> > should be
> > > >> > > done in such a way that the user still has a readily available
> > > >> > > particle/hole formalism.  Let's not sacrifice practical usefulness
> > for
> > > >> > > programming aesthetics.
>
> > > >> > > Right now the above/below fermi checks take care of a mixture of
> > things.
> > > >> > > At least:
> > > >> > >  1) Test if two indices have overlapping ranges in the
> > KroneckerDelta
> > > >> > > implementation + possibly elsewhere (maybe even implicitly!)
> > > >> > >  2) Normal ordering, contractions
> > > >> > >  3) Hole/Particle stuff in FermionState
> > > >> > >  4) Maybe I forget about something
>
> > > >> > > I'm curious to how we could leverage the new assumption system to
> > factor
> > > >> > > out the particle/hole stuff.  At least 1) seems like a good
> > candidate
> > > >> > > for that.
>
> > > >> > > I don't think 3) is that important, as the calculations are
> > usually
> > > >> > > applied to operators, not the states directly.
>
> > > >> > > This leaves 2).  The algorithms could be made boson/fermion
> > agnostic by
> > > >> > > implementing normal ordering and contractions as methods of
> > > >> > > FermionicOperator and BosonicOperator.  Then particle/holes would
> > still
> > > >> > > be low-level, but completely encapsulated in FermionicOperator.
> >  What do
> > > >> > > you think?
>
> > > >> > I think I would love to think about this more today but I have a big
> > > >> > deadline at 5 pm ;-)
>
> > > >> > I will try to get back to this F, Sat or Sun.
>
> > > >> > Cheers,
>
> > > >> > Brian
>
> > > >> > > Øyvind
>
> > > >> > > on., 14.10.2009 kl. 12.08 -0700, skrev Brian Granger:
> > > >> > > > Thanks for putting a github branch up.
>
> > > >> > > > I am crazy busy, but I did glance though things a bit...
>
> > > >> > > > * Can you create a base class for all exceptions in secondquant,
> > like
>
> > > >> > > > class SecondQuantError(Exception):
> > > >> > > >   pass
>
> > > >> > > > and make all other exceptions subclasses of this.
>
> > > >> > > > * Also, what happens if you pass bosonic operators to the new
> > > >> > > > functions like NO, Wicks.  If they don't work for Bosons, they
> > should
> > > >> > > > raise a NotImplementedError (unless you want to make them work
> > for
> > > >> > > > Bosons ;-))
>
> > > >> > > > * It looks like the idea of the fermi surface is built into the
> > > >> > > > fermion operators and states at the lowest level.  I have
> > thought
> > > >> > > > about this for a few days, and I am not sure this is the best
> > way of
> > > >> > > > handling it.  I realize the using particles and holes is
> > extremely
> > > >> > > > useful for practical calculations, but...
>
> > > >> > > > There are many situations where you want to work with the
> > fermion
> > > >> > > > operators, but don't want to think about particles and holes.
> >  The
> > > >> > > > formalism of second quantization for fermions doesn't need to
> > assume
> > > >> > > > anything about particles and holes.
>
> > > >> > > > Having particles and holes built in to the lowest level of the
> > > >> > > > fermionic implementation means that we can't easily implement
> > things
> > > >> > > > like wicks theorem in a general boson/fermion independent
> > manner.
>
> > > >> > > > Do you think it would be possible to implement the fermionic
> > stuff in
> > > >> > > > a way that didn't assume the particle/hole stuff up front, but
> > that
> > > >> > > > stuff could be added in a high-level.  The situation is similar
> > for
> > > >> > > > bosons where you have to do tricks to handle the population of
> > the
> > > >> > > > ground state.
>
> > > >> > > > Cheers,
>
> > > >> > > > Brian
>
> > > >> > > > Cheers,
>
> > > >> > > > Brian
>
> > > >> > > > On Tue, Oct 13, 2009 at 10:58 AM, jegerjensen
> > > >> > > > <jensen.oyv...@gmail.com> wrote:
>
> > > >> > > >         I implemented lots of doctests, and pushed to my new
> > github
> > > >> > > >         account:
>
> > > >> > > >         git://github.com/jegerjensen/sympy.git
>
> > > >> > > >         There is still some doctests missing, but I think all
> > the
> > > >> > > >         important
> > > >> > > >         stuff is covered.
>
> > > >> > > >         Øyvind
>
>

--

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.
For more options, visit this group at 
http://groups.google.com/group/sympy-patches?hl=.


Reply via email to