Skip to content

Instantly share code, notes, and snippets.

Avatar
🧑‍💻
I may be slow to respond. Busy writing proposals and teaching

Geoff Hutchison ghutchis

🧑‍💻
I may be slow to respond. Busy writing proposals and teaching
View GitHub Profile
@ghutchis
ghutchis / orbitals.py
Created September 14, 2023 02:57
Avogadro Batch Render Orbitals
View orbitals.py
#!/usr/bin/python
import json
import socket
import struct
import glob
import tempfile
import os
import time
@ghutchis
ghutchis / cclib-rdkit.py
Created August 4, 2023 20:55
Import cclib files to RDKit molecules
View cclib-rdkit.py
#!/usr/bin/env python
import sys
import os
import cclib
from cclib.parser import ccopen
from rdkit import Chem
try:
@ghutchis
ghutchis / screenshots.py
Created April 9, 2023 18:58
Avogadro2 XYZ directory to PNG
View screenshots.py
#!/usr/bin/python
import json
import socket
import struct
import glob
import tempfile
import os
class Connection:
@ghutchis
ghutchis / chemicaljson.py
Last active August 4, 2022 14:17
Draft pydantic model for Chemical JSON (cjson)
View chemicaljson.py
from __future__ import annotations
from typing import List, Optional
from pydantic import BaseModel, Field
# todo:
# - double-check open-spin systems
# - other suggestions
@ghutchis
ghutchis / cjson.patch
Created June 8, 2022 13:19
OB CJSON support
View cjson.patch
diff --git a/src/formats/formats.cmake b/src/formats/formats.cmake
index c94c8def2..70ee7d81c 100644
--- a/src/formats/formats.cmake
+++ b/src/formats/formats.cmake
@@ -77,6 +77,7 @@ endif(MSVC OR HAVE_REGEX_H)
if(WITH_JSON)
set(formats_json
chemdoodlejsonformat
+ chemicaljsonformat
pubchemjsonformat
@ghutchis
ghutchis / pywrl.py
Created February 3, 2022 18:25
Open Babel to VRML script
View pywrl.py
#!/usr/bin/env python
import sys, os, math, random
from openbabel import pybel
from openbabel import openbabel as ob
colors = [ [ 0, 0, 0 ], # Du
[0.75, 0.75, 0.75], # H
[0.85, 1.00, 1.00], # He
@ghutchis
ghutchis / nConf20.py
Created May 17, 2021 15:46
nConf20 descriptor from Wicker and Cooper 2016 - https://pubs.acs.org/doi/10.1021/acs.jcim.6b00565
View nConf20.py
# Calculate nConf20 - from https://pubs.acs.org/doi/10.1021/acs.jcim.6b00565
# Jerome G. P. Wicker and Richard I. Cooper J. Chem. Inf. Model. 2016 56(12) pp. 2347-2352
# reformatted for Python3 by Geoffrey R. Hutchison https://hutchison.chem.pitt.edu
from collections import OrderedDict
import fileinput
import numpy as np
from rdkit import Chem
@ghutchis
ghutchis / molml.py
Last active July 21, 2022 21:53
Open Babel / Pybel script to report all bonds, angles, torsions, and non-bonded interactions
View molml.py
#!/usr/bin/env python
import sys, os
from openbabel import openbabel as ob
from openbabel import pybel
# syntax:
# molml.py [files]
View spectra.py
#!/usr/bin/env python
from __future__ import print_function
import sys
from cclib.parser import ccopen
import logging
def spectra(etens, etoscs, low = 0.5, high = 10.0, resolution = 0.01, smear = 0.04):
"""Return arrays of the energies and intensities of a Lorentzian-blurred spectrum"""
View builder-test.patch
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 1a53e8cdd..bbf92481c 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -23,7 +23,7 @@ set (cpptests
)
set (alias_parts 1)
set (automorphism_parts 1 2 3 4 5 6 7 8 9 10)
-set (builder_parts 1 2 3 4 5)
+set (builder_parts 1 2 3 4 5 6)