1 / 19

Exploring C-Chem with numeric MM and Ab-Initio methods

Masood Malekghassemi. Exploring C-Chem with numeric MM and Ab-Initio methods. The Project. Comptuational Chemistry Methods Step 1: Molecular Mechanics Step 2: Ab-initio quantum chemical methods Analysis and translation of Ab-initio quantum chemical methods to molecular mechanics rules

kerem
Télécharger la présentation

Exploring C-Chem with numeric MM and Ab-Initio methods

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Masood Malekghassemi Exploring C-Chem with numeric MM and Ab-Initio methods

  2. The Project • Comptuational Chemistry Methods • Step 1: Molecular Mechanics • Step 2: Ab-initio quantum chemical methods • Analysis and translation of Ab-initio quantum chemical methods to molecular mechanics rules • Step 3: AI

  3. Concepts of Molecular Mechanics • Force field • Defines how things interact • Simple particle mechanics, ball and spring model (basically what we did in AI mixed in with Parallel computing + making it look pretty)‏

  4. Framework for Molecular Mechanics • Identities • The different kinds of atoms and/or groups – may be particular atoms in specific functional groups • Rules • Governs the quantization of energy of particular shapes and orientations of the molecule's constituents • Atoms and Atom Collections • Atoms and/or groups governed by rules through their identities

  5. The Rules • The rules are the main difference between this program and other molecular mechanics programs • Provides a generic interface to govern a system through energetic interactions • Can be generated from arbitrary information • Will be made more generic by having types in themselves be data structures rather than hard-coded enumerations

  6. Molecular Mechanics • Self-Consistent Field Method (SCF)‏ • Iterate over various orientations and shapes, checking for lower energies. • Maximize energy or minimize energy • Genetic Algorithms (more easily made parallel in the future)‏ • Display via dynamically updating 'Rule' view • AtomsViewerRule utilizes a 'view' of an Atom Collection to allow the GUI module to display the simulated system at any point in the simulation

  7. Basics of Ab Initio methods • The underlying methods • Schrodinger equation: H*Psi = E*Psi • Pseudo-eigenvalue/eigenfunction form • H is a 'matrix' operator, Psi the wave'function', E the energy 'eigenvalue'. • Solve either Ab Initio or semi-empirically • Have finished neither – project may have been too ambitious in terms of what was necessary to self-teach • *cough*graduate-level-math*cough*

  8. Ab-initio Methods • Uses wavefunctions • Represented by various functions • Slater Type Orbitals: N*exp(-a*r)‏ • Gaussian Type Orbitals: N*exp(-a*r^2)‏ • General contraction: a linear combination • c1*f1(x) + c2*f2(x) ... cn*fn(x)‏ • Solves eqns via variational method • Think differential equations, except more epic

  9. Variational Method • The idea is to find minima: • The energy of a system with wavefunctions is given by <Psi|H|Psi> / <Psi|Psi> • Psi is parameterized • Find stationary points w.r.t. the parameters • Identify minima • Boom – you have your minimum energy

  10. Perturbation • The N-body problem is impossible to solve analytically • Simplify the problem of atoms and electrons to many 2-body problems • Add in the N-body elements later • Makes life a little bit easier with divide and conquer, essentially.

  11. Artificial Intelligence • The lofty goal of the project (of course it's unaccomplished). • Take the numeric values from all-periodic table calculations and transform them into force field input for molecular mechanics applications. • Not even at the point where I'm thinking about it.

  12. Previous incarnationImages:

  13. Current Project • ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

  14. More images Left: 4p orbital, only partially through (note only 3 nodes)‏ Up: 5f orbital – caught the image while it's refreshing, so you might see an artifact

  15. What It Does So Far: • It used to display the MM portion as it ran • Doesn't anymore – old version was lost in mad Eclipse IDE rampage‏ (no back-ups <_<)‏ • It displays the wavefunctions (based on the spherical harmonic function and a general contraction of gaussian functions). • Can perform overlap and KE integration of wavefunction representations over all space • Totally analytical (so much research...)‏

  16. Mini-CAS • To do the integrations, basically made a partial CAS • Represent multi-dimensional polynomials (the crux of the work)‏ • Integrate/Differentiate said polynomials • Cartesian Gaussian Functions (for GTOs)‏ • Expand the polynomials, are general enough for the following kinds: • Legendre • Laguerre • Ricola ← my personal misnomer

  17. Mini-CAS • Can perform Jacobi diagonalization of symmetric matrices • By extension, gets the eigenvectors (requisite for EHM + HF)‏ • By extension, it can find the eigenvalues of square matrices (requisite for Ab Initio methods)‏

  18. Math Library • As for actual programming techniques, there are a few I've employed • SFINAE (C++ specific)‏ • ScalarTraits • ScalarTraits_Tools • HalfInteger specializations • Class definition overloading • Variadic function argument iterators • Makes life easier when dealing with tensors in general

  19. Conclusions • Overestimated my ability to understand complex mathematics in the first quarter. • Restarted the molecular mechanics portion 5-6 times in the second and third quarters. • Currently have nothing to show from that work – it was all deleted after I'd screwed with my IDE too much... • Attempted to work on the Ab Initio portions fourth quarter – failed to make it in time for TJSTAR • Also got food poisoning the night before <_<

More Related