Skip to content

PDBXtra and Josico presents: Animating Quantum Mechanics Molecules... now in Blender

Notifications You must be signed in to change notification settings

vagra98/WiggleJiggleMol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

WiggleJiggleMol

PDBXtra and Josico presents: Animating Quantum Mechanics Molecules... now in Blender This repository provides a script to create, optimize, and animate molecular structures using Blender and various computational tools such as ASE, TorchANI, and NumPy.

Usage A. Build Initial Non-Optimized Structure

A1. Creates the Balls for All Atom Positions
Load the molecule from an XYZ file using ASE.
Create a dictionary to map each atom to a Blender object (ball).
Scale the balls based on predefined atom sizes.

A2. Create Bonds with Cylinders
Generate possible bonds between atoms.
Create cylinders to represent bonds and set their positions.

B. Add Axis to Move the Whole Molecule

Add a mover object to allow moving the entire molecule within the Blender scene.

C. Color and Smooth the Balls

C1. Color
Assign colors to atoms based on their element type.

C2. Smooth the Objects

Smooth the balls and bonds in the Blender scene.

D. Geometry Optimization

D1. Do the Optimization
Perform molecular geometry optimization using TorchANI and ASE.    
D2. Do the Animation
Animate the optimized molecule by updating atom positions over the frames.

E. Frequency Calculation

E1. Do the Frequency Calculation
Calculate vibrational frequencies using TorchANI.
E2. Animate the Frequencies
Animate the molecule to visualize the vibrational modes.

TODO

Generalize the directory for pip installation.
Add scaling for all periodic table elements.
Add distances for making bonds appear or disappear based on length.
Add colors for all the atoms.
Improve implementation of dictionaries for atom-symbol and ball mappings.
Implement a cutoff for bonds to optimize performance.
Ask user if they want to perform geometry optimization.
Add Psi4/PySCF for quantum mechanical optimization.
Provide user options for animation trajectory length.
Ask user for a pause between optimization and frequency animation.
Allow user to select specific frequencies to display and number of wiggles.

About

PDBXtra and Josico presents: Animating Quantum Mechanics Molecules... now in Blender

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages