Exemplo n.º 1
0
def generate(fin='rna.pdb', fout='rna.dcd', frames=1000):
    path = os.path.dirname(os.path.realpath(__file__))
    fin = os.path.join(path, '../', 'data', 'pdb_common', fin)
    if not os.path.exists(fin):
        raise Exception, fin + ' does not exist while generating huge rna dcd files'
        return
    #fout = os.path.join(path,'../','data','dcd_common',fout)
    fout = os.path.join('/tmp/', fout)
    if os.path.exists(fout):
        return
    o = s.SasMol(0)
    o.read_pdb(fin)
    outfile = dcdio.open_dcd_write(fout)
    nset = frames
    natoms = o._coor[0, :, 0].shape[0]
    istart = 0
    nsavc = 1
    delta = 1.0
    o.write_dcd_header(outfile, frames)
    tx = o.coor()[0, :, 0].astype(np.float32)
    ty = o.coor()[0, :, 1].astype(np.float32)
    tz = o.coor()[0, :, 2].astype(np.float32)
    for i in range(frames):
        dcdio.write_dcdstep(outfile, tx, ty, tz, i + 1)
    o.close_dcd_write(outfile)
Exemplo n.º 2
0
   def test_file_doesnt_exist(self):
      '''
	   test a dcd which doent exist
	   '''
      filename = 'file-notexist.dcd'
      dcdFile = moduleDataPath+'test-results/'+filename
      stdoutFile = filename+'.stdiout'
      pf = dcdio.open_dcd_write(dcdFile)
      sys.stdout = open(stdoutFile,'w')
      self.o.close_dcd_write(pf)
      sys.stdout = sys.__stdout__
      code=string.split(open(stdoutFile).read())[2]
      self.assertEqual(int(code), 0)
      os.remove(stdoutFile)
      os.remove(dcdFile)
   def test_1CRN(self):
      '''
	   test a dcd from a small protein (crambin)
	   '''
      #
      pdbFileName = DataPath+'1CRN.pdb'
      self.o.read_pdb(pdbFileName)
      nset = 3
      #
      dcdFileName = moduleDataPath+'test-results/1CRN-writedcd_header-test.dcd'
      fp = dcdio.open_dcd_write(dcdFileName)
      self.o.write_dcd_header(fp, nset)
      dcdio.close_dcd_write(fp)
      fsize = os.path.getsize(dcdFileName)
      print fsize
      self.assertTrue(fsize>0)
      os.remove(dcdFileName)
   def test_2AAD(self):
      '''
	   test a dcd with 3 frames based on a 2-aa pdb
	   '''
      #
      pdbFileName = DataPath+'2AAD.pdb'
      self.o.read_pdb(pdbFileName)
      nset = 3
      #
      dcdFileName = moduleDataPath+'test-results/2AAD-writedcd_header-test.dcd'
      fp = dcdio.open_dcd_write(dcdFileName)
      self.o.write_dcd_header(fp, nset)
      dcdio.close_dcd_write(fp)
      fsize = os.path.getsize(dcdFileName)
      print fsize
      self.assertTrue(fsize>0)
      os.remove(dcdFileName)
   def test_rna_1to10frames(self):
      '''
	   test a dcd of 10 frames based on a rna molecule
	   '''
      #
      pdbFileName = DataPath+'rna.pdb'
      self.o.read_pdb(pdbFileName)
      nset = 10
      #
      dcdFileName = moduleDataPath+'test-results/rna-1to10-writedcd_header-test.dcd'      
      fp = dcdio.open_dcd_write(dcdFileName)
      self.o.write_dcd_header(fp, nset)
      dcdio.close_dcd_write(fp)
      fsize = os.path.getsize(dcdFileName)
      print fsize
      self.assertTrue(fsize>0)
      os.remove(dcdFileName)
   def test_1KP8(self):
      '''
	   test a dcd from a large protein complex (groel)
	   '''
      #
      pdbFileName = DataPath+'1KP8.pdb'
      self.o.read_pdb(pdbFileName)
      nset = 3
      #
      dcdFileName = moduleDataPath+'test-results/1KP8-writedcd_header-test.dcd'
      fp = dcdio.open_dcd_write(dcdFileName)
      self.o.write_dcd_header(fp, nset)
      dcdio.close_dcd_write(fp)
      fsize = os.path.getsize(dcdFileName)
      print fsize
      self.assertTrue(fsize>0)
      os.remove(dcdFileName)
Exemplo n.º 7
0
    def test_1CRN(self):
        '''
	   test a dcd from a small protein (crambin)
	   '''
        #
        pdbFileName = DataPath + '1CRN.pdb'
        self.o.read_pdb(pdbFileName)
        nset = 3
        #
        dcdFileName = moduleDataPath + 'test-results/1CRN-writedcd_header-test.dcd'
        fp = dcdio.open_dcd_write(dcdFileName)
        self.o.write_dcd_header(fp, nset)
        dcdio.close_dcd_write(fp)
        fsize = os.path.getsize(dcdFileName)
        print fsize
        self.assertTrue(fsize > 0)
        os.remove(dcdFileName)
Exemplo n.º 8
0
    def test_2AAD(self):
        '''
	   test a dcd with 3 frames based on a 2-aa pdb
	   '''
        #
        pdbFileName = DataPath + '2AAD.pdb'
        self.o.read_pdb(pdbFileName)
        nset = 3
        #
        dcdFileName = moduleDataPath + 'test-results/2AAD-writedcd_header-test.dcd'
        fp = dcdio.open_dcd_write(dcdFileName)
        self.o.write_dcd_header(fp, nset)
        dcdio.close_dcd_write(fp)
        fsize = os.path.getsize(dcdFileName)
        print fsize
        self.assertTrue(fsize > 0)
        os.remove(dcdFileName)
Exemplo n.º 9
0
    def test_rna_1to10frames(self):
        '''
	   test a dcd of 10 frames based on a rna molecule
	   '''
        #
        pdbFileName = DataPath + 'rna.pdb'
        self.o.read_pdb(pdbFileName)
        nset = 10
        #
        dcdFileName = moduleDataPath + 'test-results/rna-1to10-writedcd_header-test.dcd'
        fp = dcdio.open_dcd_write(dcdFileName)
        self.o.write_dcd_header(fp, nset)
        dcdio.close_dcd_write(fp)
        fsize = os.path.getsize(dcdFileName)
        print fsize
        self.assertTrue(fsize > 0)
        os.remove(dcdFileName)
Exemplo n.º 10
0
    def test_1KP8(self):
        '''
	   test a dcd from a large protein complex (groel)
	   '''
        #
        pdbFileName = DataPath + '1KP8.pdb'
        self.o.read_pdb(pdbFileName)
        nset = 3
        #
        dcdFileName = moduleDataPath + 'test-results/1KP8-writedcd_header-test.dcd'
        fp = dcdio.open_dcd_write(dcdFileName)
        self.o.write_dcd_header(fp, nset)
        dcdio.close_dcd_write(fp)
        fsize = os.path.getsize(dcdFileName)
        print fsize
        self.assertTrue(fsize > 0)
        os.remove(dcdFileName)
Exemplo n.º 11
0
   def test_1ATM(self):
      '''
	   test a dcd with 2 frames based on an 1-atom pdb
	   '''
      #
      filename = '1ATM.dcd'
      dcdFile = commonDcdDataPath+filename
      tmpDcdFile = moduleDataPath+'test-results/'+filename
      shutil.copy(dcdFile, tmpDcdFile)
      stdoutFile = filename+'.stdiout'
      pf = dcdio.open_dcd_write(tmpDcdFile)
      sys.stdout = open(stdoutFile,'w')
      self.o.close_dcd_write(pf)
      sys.stdout = sys.__stdout__
      code=string.split(open(stdoutFile).read())[2]
      self.assertEqual(int(code), 0)
      os.remove(stdoutFile)
      os.remove(tmpDcdFile)
Exemplo n.º 12
0
   def test_rna_6point4gb(self):
      '''
	   test a dcd of size 6.4gb based on a rna molecule
	   '''
      #
      filename = "rna-6.4g.dcd"
      dcdFile = os.path.join('/tmp/',filename)
      tmpDcdFile = moduleDataPath+'test-results/'+filename
      shutil.copy(dcdFile, tmpDcdFile)
      stdoutFile = filename+'.stdiout'
      pf = dcdio.open_dcd_write(tmpDcdFile)
      sys.stdout = open(stdoutFile,'w')
      self.o.close_dcd_write(pf)
      sys.stdout = sys.__stdout__
      code=string.split(open(stdoutFile).read())[2]
      self.assertEqual(int(code), 0)
      os.remove(stdoutFile)
      os.remove(tmpDcdFile)
Exemplo n.º 13
0
def generate(fin='rna.pdb', fout='rna.dcd', frames=1000):
  path = os.path.dirname(os.path.realpath(__file__))
  fin = os.path.join(path,'../','data','pdb_common',fin)
  if not os.path.exists(fin):
    raise Exception,fin+' does not exist while generating huge rna dcd files'
    return
  #fout = os.path.join(path,'../','data','dcd_common',fout)
  fout = os.path.join('/tmp/',fout)
  if os.path.exists(fout):
    return
  o=s.SasMol(0)
  o.read_pdb(fin)
  outfile = dcdio.open_dcd_write(fout)
  nset = frames
  natoms = o._coor[0,:,0].shape[0]
  istart = 0 ; nsavc = 1 ; delta = 1.0	
  o.write_dcd_header(outfile,frames)
  tx=o.coor()[0,:,0].astype(np.float32)	
  ty=o.coor()[0,:,1].astype(np.float32)	
  tz=o.coor()[0,:,2].astype(np.float32)	
  for i in range(frames):
    dcdio.write_dcdstep(outfile,tx,ty,tz,i+1)
  o.close_dcd_write(outfile)