Hi Rick,

On Fri, May 5, 2017 at 7:37 AM, Rick Muller <[email protected]> wrote:
> Ondrej,
>
> (Apologies for the length...)
>
> Here's my larger plan. It's strictly a night-and-weekends thing, but I'd be 
> interested in working with you (or anyone else here) who thinks this is fun.
>
> I'd like to get better at generating expressions for correlated wave 
> functions. Both to evaluate and optimize their energy using programs like 
> PyQuante, Pyscf, Psi4, or whatever, and to generate quantum circuits (i.e. 
> sequences of Clifford group operators in a quantum circuit) to run on quantum 
> emulators like ProjectQ and others.

Is it like the Hylleraas’ method for He?

>
> Hirata's tensor contraction engine is really impressive, and it's written in 
> Python, although it doesn't make use of a lot of tools like Sympy that I 
> think could substantially simplify it. I'm not as interested in generating 
> optimized, parallel code (yet), mostly just with generating correct code 
> right now.
>
> There are two sympy paths to this: first, using the sympy.physics.secondquant 
> operators to generate expressions. I'm getting up to speed on this as quickly 
> as I can.
>
> My post in this thread is for the second path, which is more of a first 
> quantization approach, where we create operators that are terms of the energy 
> expression. A lot of my thesis work took simple MC-SCF energy expressions:
>
> E = sum_i f(i)I1(i,i) + sum_ij a(i,j)I2(i,i,j,j) + b(i,j)I2(i,j,i,j)
>
> And creating expressions to optimize the corresponding set of equations, 
> essentially using variational calculus (i.e. j <- j + dj). Sympy should be 
> able to do this automatically, provided we can generate I1 and I2 operators 
> that can simplify expressions in the right way.

Would you mind sending me your thesis? I know you can write expression
for the energy E like that, but I thought that's the end, then you
just have to implement it. I've written code generation for MBPT,
where you have lots of such expressions too and one has to keep track
of them, but I generated the expressions directly from the graph, and
then I wrote code to generate all graphs.

>
> I think the little toy code I posted will work for the above expressions. But 
> it doesn't use any of the substantial power of the sympy tensor operators, 
> which I'm only just now learning about. I'd be interested in seeing whether 
> using something more powerful than my little sympy objects that simplify in 
> the right way could open up new avenues, again, with the goal of generating 
> something like TCE in python.
>
> Sorry for the long post, trying to give you context. I think there's a real 
> opportunity here for sympy, and I'd be willing to get together for an offline 
> discussion with you or anyone else who would be interested in this.

I'd like to understand more what your idea is.

Ondrej

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVAqztTjRKz0qrib7hCaQDJgG4ScFYoYpzuCQoHbfbrctg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to