Slides black

Preview:

Citation preview

Teaching Quantum Chemistry With Python

Thomas Markovich thomasmarkovich@gmail.com

Graduate Student at Harvard University

Alán Aspuru-Guzik

David TempelAdrian Jinich

What is Quantum Chemistry"The underlying physical laws necessary for the mathematical theory of a large part of physics and the whole of chemistry are thus completely known, and the difficulty is only that the exact application of these laws leads to equations much too complicated to be soluble. It therefore becomes desirable that approximate practical methods of applying quantum mechanics should be developed, which can lead to an explanation of the main features of complex atomic systems without too much computation.”

- PAM Dirac, 1929

How is Quantum Chemistry Normally Taught?

• Quantum Mechanics (QM) first, Chemistry second

• QM requires a solid understanding of ODEs, PDEs, Linear Algebra

• Give chemists a crash course in math

• Solve toy models

Goals of This Course

• Have the computer take care of the mechanics

• Focus on realistic models

• Bring the chemical intuition back to quantum chemistry

• Teach basic python (this was most students first experience with programming)

Set-Up of The Course

• In class lectures that covered material and programming

• Python homework assignments

• All programming done in iPython

• Used Virtualbox with 32-bit linux mint

In-Class Demo

Final Exercises

Successes

• Students learned a lot of python basics

• Students learned a lot of quantum chemistry

• Students wrote a complete hartree fock code

Lessons

• Virtualization is a “resource hog”

• Mental models of your program are incredibly important

• Debugging is a nontrivial skill, and something we should have emphasized more

Thanks!!

Recommended