def testWithoutProteinPrepare(self): from htmd.builder.solvate import solvate # Test without proteinPrepare pdbids = ['3PTB'] # pdbids = ['3PTB', '1A25', '1GZM', '1U5U'] for pid in pdbids: np.random.seed(1) mol = Molecule(pid) mol.filter('protein') if mol._checkInsertions(): mol.renumberResidues() smol = solvate(mol) ffs = defaultFf() tmpdir = os.path.join(self.testDir, 'withoutProtPrep', pid) _ = build(smol, ff=ffs, outdir=tmpdir) refdir = home(dataDir=join('test-amber-build', 'nopp', pid)) TestAmberBuild._compareResultFolders(refdir, tmpdir, pid)
def testWithProteinPrepare(self): from htmd.builder.preparation import proteinPrepare from htmd.builder.solvate import solvate # Test with proteinPrepare pdbids = ['3PTB'] # pdbids = ['3PTB', '1A25', '1GZM'] # '1U5U' out because it has AR0 (no parameters) for pid in pdbids: np.random.seed(1) mol = Molecule(pid) mol.filter('protein') if mol._checkInsertions(): mol.renumberResidues() mol = proteinPrepare(mol) mol.filter( 'protein') # Fix for bad proteinPrepare hydrogen placing smol = solvate(mol) ffs = defaultFf() tmpdir = os.path.join(self.testDir, 'withProtPrep', pid) _ = build(smol, ff=ffs, outdir=tmpdir) refdir = home(dataDir=join('test-amber-build', 'pp', pid)) TestAmberBuild._compareResultFolders(refdir, tmpdir, pid)
from htmd.builder.preparation import proteinPrepare import os from glob import glob import numpy as np # Use pre-prepared files so we can tell whether the error is in prepare or in build # Inputs are reference outputs of proteinprepare. preparedInputDir = home(dataDir='test-proteinprepare') pdbids = ['3PTB', '1A25', '1GZM', '1U5U'] for pdb in pdbids: inFile = os.path.join(preparedInputDir, pdb, "{}-prepared.pdb".format(pdb)) mol = Molecule(inFile) mol.filter('protein') # Fix for bad proteinPrepare hydrogen placing if mol._checkInsertions(): mol.renumberResidues() np.random.seed(1) # Needed for ions smol = solvate(mol) topos = ['top/top_all36_prot.rtf', 'top/top_water_ions.rtf'] params = ['par/par_all36_prot_mod.prm', 'par/par_water_ions.prm'] tmpdir = tempname() bmol = build(smol, topo=topos, param=params, outdir=tmpdir) compareDir = home(dataDir=os.path.join('test-charmm-build', pdb)) assertSameAsReferenceDir(compareDir, tmpdir) # shutil.rmtree(tmpdir) from htmd.ui import *
from htmd.util import tempname, assertSameAsReferenceDir from htmd.builder.preparation import proteinPrepare import os from glob import glob import numpy as np # Use pre-prepared files so we can tell whether the error is in prepare or in build # Inputs are reference outputs of proteinprepare. preparedInputDir = home(dataDir='test-proteinprepare') pdbids = ['3PTB', '1A25', '1GZM', '1U5U'] for pdb in pdbids: inFile = os.path.join(preparedInputDir, pdb, "{}-prepared.pdb".format(pdb)) mol = Molecule(inFile) mol.filter('protein') # Fix for bad proteinPrepare hydrogen placing if mol._checkInsertions(): mol.renumberResidues() np.random.seed(1) # Needed for ions smol = solvate(mol) topos = ['top/top_all36_prot.rtf', 'top/top_water_ions.rtf'] params = ['par/par_all36_prot_mod.prm', 'par/par_water_ions.prm'] tmpdir = tempname() bmol = build(smol, topo=topos, param=params, outdir=tmpdir) compareDir = home(dataDir=os.path.join('test-charmm-build', pdb)) assertSameAsReferenceDir(compareDir, tmpdir) shutil.rmtree(tmpdir) from htmd.ui import *