Skip to content

Instantly share code, notes, and snippets.

View amrhamedp's full-sized avatar

amr abdallah amrhamedp

  • Basel University
View GitHub Profile
@amrhamedp
amrhamedp / virtual_site_comparison
Created January 4, 2022 20:32
virtual_site_comparison
<mdtraj.Trajectory with 1 frames, 40585 atoms, 12844 residues, and unitcells>
[Vec3(x=9.059788703918457, y=0.0, z=0.0), Vec3(x=0.0, y=5.983500957489014, z=0.0), Vec3(x=0.0, y=0.0, z=7.570346832275391)] nm
-133850.6219610522
<class 'simtk.openmm.openmm.HarmonicBondForce'> 640.2855721759976
<class 'simtk.openmm.openmm.HarmonicAngleForce'> 1742.1832987272935
<class 'simtk.openmm.openmm.CustomTorsionForce'> 783.5984530913894
<class 'simtk.openmm.openmm.NonbondedForce'> -155693.45684747622
<class 'simtk.openmm.openmm.CustomNonbondedForce'> 18676.809925262485
<class 'simtk.openmm.openmm.MonteCarloBarostat'> 0.0
<mdtraj.Trajectory with 1 frames, 40585 atoms, 12844 residues, and unitcells>
@amrhamedp
amrhamedp / desmond_openmm.py
Last active December 3, 2021 14:14
desmond_openmm.py
from __future__ import print_function
from simtk.openmm import app
import simtk.openmm as mm
from simtk import unit
from sys import stdout
import parmed
import sys
import simtk.unit as units
from MDAnalysis.coordinates.DCD import DCDFile
from __future__ import print_function
from simtk.openmm import app
import simtk.openmm as mm
from simtk import unit
from sys import stdout
import parmed
import sys
import simtk.unit as units
from MDAnalysis.coordinates.DCD import DCDFile
from MDAnalysis.coordinates.DCD import DCDFile
dms = app.DesmondDMSFile('a.dms')
system = dms.createSystem(nonbondedMethod=app.PME,
nonbondedCutoff=9.0*unit.angstroms,OPLS=True)
import simtk.openmm as openmm
system.addForce(openmm.MonteCarloBarostat(1 * units.bar, 300*unit.kelvin))
integrator = mm.LangevinIntegrator(300*unit.kelvin, 1.0/unit.picoseconds,
2.0*unit.femtoseconds)
integrator.setConstraintTolerance(0.00001)
platform = mm.Platform.getPlatformByName('CUDA')
@amrhamedp
amrhamedp / numpy-sqlite3.py
Created December 27, 2017 06:10 — forked from pnavarro-algometrics/numpy-sqlite3.py
Insert numpy array into a sqlite3 database
import sqlite3
import numpy
# Array of 4 columns and 100 rows
data = numpy.random.rand(100, 4)
# Create a sample database
conn = sqlite3.connect('/tmp/sample.db')
cursor = conn.cursor()
@amrhamedp
amrhamedp / conf_gen.py
Created July 29, 2017 14:38 — forked from tdudgeon/conf_gen.py
Conformer generation using RDKit
import sys
from rdkit import Chem
from rdkit.Chem import AllChem, TorsionFingerprints
from rdkit.ML.Cluster import Butina
def gen_conformers(mol, numConfs=100, maxAttempts=1000, pruneRmsThresh=0.1, useExpTorsionAnglePrefs=True, useBasicKnowledge=True, enforceChirality=True):
ids = AllChem.EmbedMultipleConfs(mol, numConfs=numConfs, maxAttempts=maxAttempts, pruneRmsThresh=pruneRmsThresh, useExpTorsionAnglePrefs=useExpTorsionAnglePrefs, useBasicKnowledge=useBasicKnowledge, enforceChirality=enforceChirality, numThreads=0)
return list(ids)
@amrhamedp
amrhamedp / FileRead.cpp
Created July 29, 2017 05:09 — forked from skymarionsky/FileRead.cpp
read file and do something line by line with c++
#include <iostream>
#include <fstream>
#include <sstream>
using namespace std;
int main(int argc, char* argv[])
{
ifstream file(argv[1]); // pass file name as argment
string linebuffer;
@amrhamedp
amrhamedp / 0_reuse_code.js
Created April 17, 2017 06:53
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console