In [2]:
import os
import sys
import random
import time
from random import seed, randint
import argparse
import platform
from datetime import datetime
import imp
import numpy as np
import fileinput
from itertools import product
import pandas as pd
from scipy.interpolate import griddata
from scipy.interpolate import interp2d
import seaborn as sns
from os import listdir

import matplotlib.pyplot as plt
import seaborn as sns
from scipy.interpolate import griddata
import matplotlib as mpl
# sys.path.insert(0,'..')
# from notebookFunctions import *
# from .. import notebookFunctions

from Bio.PDB.PDBParser import PDBParser
from pyCodeLib import *
%matplotlib inline
plt.rcParams['figure.figsize'] = [16.18033, 10]    #golden ratio
plt.rcParams['figure.facecolor'] = 'w'
# %matplotlib notebook
%load_ext autoreload
%autoreload 2

In [3]:
OPENAWSEM_LOCATION = "/Users/weilu/openmmawsem/"
sys.path.append(OPENAWSEM_LOCATION)

In [4]:
from helperFunctions.myFunctions import cleanPdb, duplicate_pdb

In [5]:
import glob
a = glob.glob("/Users/weilu/Downloads/pdb/*.pdb")

In [6]:
len(a)


Out[6]:
9112

In [13]:
random.seed(1)
subset = random.sample(a, 5)
offset_all = np.arange(-50, 50, 5)

In [22]:
pre = "/Users/weilu/Research/server/april_second_2019/optimization_k_relative/"
with open(f"{pre}/proteins_name_list/proteins_name_list.txt", "w") as out:
    for one in subset:
        name = one.split("/")[-1][:4]
        out.write(f"{name}\n")

In [23]:
pre = "/Users/weilu/Research/server/april_second_2019/optimization_k_relative/"
for one in subset:
    name = one.split("/")[-1][:4]
    
    with open(f"{pre}/decoys/shifted/{name}.decoys", "w") as out:
        for offset in offset_all:
            out.write(f"decoyData/{name}/{name}_{offset}\n")

In [32]:
len(np.arange(-40, 40, 5))


Out[32]:
16

In [19]:
for one in subset:
    name = one.split("/")[-1][:4]
    print(name)
    os.system(f"mkdir -p {pre}/decoyData/{name}")
    for offset in offset_all:
        duplicate_pdb(f"{pre}/database/cleaned_pdbs/{name}.pdb", f"{pre}/decoyData/{name}/{name}_{offset}.pdb", offset_z=offset, new_chain="A")


6cm4
4r50
2o9f
1kn9
2xkm

In [ ]:
for one in subset:
    name = one.split("/")[-1][:4]
    for offset in offset_all:
        cleanPdb([f"{name}_{offset}"], )

In [33]:
len(np.arange(-50, 50, 5))


Out[33]:
20

In [34]:
len(np.arange(-50, 50, 2))


Out[34]:
50

In [35]:
os.getcwd()


Out[35]:
'/Users/weilu/Research/server/april_second_2019/optimization_k_relative/database'

In [39]:
(np.array([1,2,3]) == 1).sum()


Out[39]:
1

In [38]:
1 in np.array([1,2,3])


Out[38]:
True

In [9]:
random.seed(2)
random.sample(a, 2)


Out[9]:
['/Users/weilu/Downloads/pdb/1nru.pdb', '/Users/weilu/Downloads/pdb/5ule.pdb']

In [ ]: