hdiff output

r31241/dijkstra_test.py 2016-10-05 15:30:11.193714297 +0100 r31240/dijkstra_test.py 2016-10-05 15:30:12.189723369 +0100
  1: #!/usr/bin/env python  1: #!/usr/bin/env python
  2: import networkx as nx  2: import networkx as nx
  3: import numpy as np  3: import numpy as np
  4: import sys  4: import sys
  5: import math 
  6:   5: 
  7: def duplicate_test(graph,min1,min2):  6: def duplicate_test(graph,min1,min2):
  8:     return min1 in G.neighbors(min2)  7:     return min1 in G.neighbors(min2)
  9: if len(sys.argv) < 4:  8: if len(sys.argv) < 3:
 10:    print 'dijkstra_test.py minA minBi npairs ([True/False] for debugging)'  9:    print 'dijkstra_test.py minA minB ([True/False] for debugging)'
 11:    exit() 10:    exit()
 12:     11:    
 13: A = int(sys.argv[1]) 12: A = int(sys.argv[1])
 14: B = int(sys.argv[2]) 13: B = int(sys.argv[2])
 15: npairs = int(sys.argv[3]) 14: if len(sys.argv) > 3:
 16: if len(sys.argv) == 5:  15:    debug = sys.argv[3]
 17:    debug = sys.argv[4] 
 18: else: 16: else:
 19:    debug = False 17:    debug = False
 20:  18: 
 21: #default for input files 19: #default for input files
 22: min_f = "min.data" 20: min_f = "min.data"
 23: ts_f = "ts.data" 21: ts_f = "ts.data"
 24: paird_f = "pairdist" 22: paird_f = "pairdist"
 25: pairl_f = "pairlist" 23: pairl_f = "pairlist"
 26:  24: 
 27: print 25: print
 35: print '##############################################################################' 33: print '##############################################################################'
 36: print 34: print
 37:  35: 
 38: #read files into arrays 36: #read files into arrays
 39: mindata = np.genfromtxt(min_f , dtype="float,float,int,float,float,float") 37: mindata = np.genfromtxt(min_f , dtype="float,float,int,float,float,float")
 40: tsdata = np.genfromtxt(ts_f , dtype="float,float,int,int,int,float,float,float") 38: tsdata = np.genfromtxt(ts_f , dtype="float,float,int,int,int,float,float,float")
 41: paird = np.genfromtxt(paird_f , dtype = float) 39: paird = np.genfromtxt(paird_f , dtype = float)
 42: pairl = np.genfromtxt(pairl_f , dtype = int) 40: pairl = np.genfromtxt(pairl_f , dtype = int)
 43:  41: 
 44: #reshape paird and pairl to 100 entries per minima as it ought to be (genfromtxt reads it as 10x10 for each minima) 42: #reshape paird and pairl to 100 entries per minima as it ought to be (genfromtxt reads it as 10x10 for each minima)
 45: paird.shape = paird.shape[0]/(npairs/10),npairs 43: paird.shape = paird.shape[0]/10,100
 46: pairl.shape = pairl.shape[0]/(npairs/10),npairs 44: pairl.shape = pairl.shape[0]/10,100
 47:  45: 
 48: if (paird.shape[0] != pairl.shape[0]) or (paird.shape[0] != mindata.shape[0]): 46: if (paird.shape[0] != pairl.shape[0]) or (paird.shape[0] != mindata.shape[0]):
 49:    raise Exception('Number of minima and number of pair entries are not equal.') 47:    raise Exception('Number of minima and number of pair entries are not equal.')
 50:     48:    
 51:  49: 
 52: nmin = mindata.shape[0] 50: nmin = mindata.shape[0]
 53: nts = tsdata.shape[0] 51: nts = tsdata.shape[0]
 54:  52: 
 55: #print 'There are',nmin,'minima and',nts,'transition states.' 53: #print 'There are',nmin,'minima and',nts,'transition states.'
 56:  54: 
 71:              print 'Read TS between minima',tsdata[ts][3],'and',tsdata[ts][4] 69:              print 'Read TS between minima',tsdata[ts][3],'and',tsdata[ts][4]
 72:    # else: 70:    # else:
 73:       # print 'TS',ts+1,'connects minimum',tsdata[ts][3],'with itself' 71:       # print 'TS',ts+1,'connects minimum',tsdata[ts][3],'with itself'
 74:  72: 
 75: #add egdes for every pair in pairl and use paird as weight 73: #add egdes for every pair in pairl and use paird as weight
 76:  74: 
 77: for minima in xrange(nmin): 75: for minima in xrange(nmin):
 78:     for entry in xrange(len(pairl[minima])): 76:     for entry in xrange(len(pairl[minima])):
 79:         if not duplicate_test(G , minima + 1 , pairl[minima][entry]): 77:         if not duplicate_test(G , minima + 1 , pairl[minima][entry]):
 80:            G.add_edge(minima + 1 , pairl[minima][entry] , weight = paird[minima][entry]) 78:            G.add_edge(minima + 1 , pairl[minima][entry] , weight = paird[minima][entry])
 81:           # G.add_edge(minima + 1 , pairl[minima][entry] , weight = math.exp(paird[minima][entry])) 
 82:            if debug: 79:            if debug:
 83:               print 'Added edge between minima',minima + 1,'and',pairl[minima][entry] 80:               print 'Added edge between minima',minima + 1,'and',pairl[minima][entry]
  81: 
 84: try: 82: try:
 85:    wtot = nx.dijkstra_path_length(G,A,B) 83:    wtot = nx.dijkstra_path_length(G,A,B)
 86:    print 'The shortest dijkstra path has weight',wtot 84:    print 'The shortest dijkstra path has weight',wtot
 87:    path = nx.dijkstra_path(G,A,B) 
 88:    sum_ = 0  
 89:    for node in xrange(len(path)-1): 
 90:       sum_ += math.exp(G[path[node]][path[node+1]]['weight']) 
 91:       print '%6d %6d %12.4f  %16.8g' %(path[node], path[node+1], G[path[node]][path[node+1]]['weight'], sum_) 
 92: except nx.exception.NetworkXNoPath: 85: except nx.exception.NetworkXNoPath:
 93:    print 'The A and B sets are not connected by ts.data and pairlist.' 86:    print 'The A and B sets are not connected by ts.data and pairlist.'


r31241/make_min_data_frqs.sh 2016-10-05 15:30:11.441716561 +0100 r31240/make_min_data_frqs.sh 2016-10-05 15:30:12.441725659 +0100
  1: awk '{printf "%20s\n", $1}' min.data.removed > energy.tmp  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/SCRIPTS/PATHSAMPLE/make_min_data_frqs.sh' in revision 31240
  2: awk '{printf "%20s\n", $2}' frqs.sorted.min > frqs.tmp 
  3: paste  energy.tmp frqs.tmp> min.data.frqs.tmp 
  4: awk '{printf "%4s %20s %20s %20s\n", $3, $4, $5, $6}' min.data.removed > tmp 
  5: paste   min.data.frqs.tmp tmp > min.data.frqs 
  6: rm *tmp 


r31241/make_ts_data_frqs.sh 2016-10-05 15:30:11.685718776 +0100 r31240/make_ts_data_frqs.sh 2016-10-05 15:30:12.681727851 +0100
  1: awk '{printf "%20s\n", $1}' ts.data.removed > energy.tmp  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/SCRIPTS/PATHSAMPLE/make_ts_data_frqs.sh' in revision 31240
  2: awk '{printf "%20s\n", $2}' frqs.sorted.ts > frqs.tmp 
  3: paste  energy.tmp frqs.tmp> ts.data.frqs.tmp 
  4: awk '{printf "%4s %6s %6s %20s %20s %20s\n", $3, $4, $5, $6, $7, $8}' ts.data.removed > tmp 
  5: paste   ts.data.frqs.tmp tmp > ts.data.frqs 
  6: rm *tmp 


r31241/sort_frqs.py 2016-10-05 15:30:11.937721096 +0100 r31240/sort_frqs.py 2016-10-05 15:30:12.929730105 +0100
  1: import sys  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/SCRIPTS/PATHSAMPLE/sort_frqs.py' in revision 31240
  2:  
  3: f_in = sys.argv[1] 
  4: n_sp = int(sys.argv[2]) 
  5: dic_frqs = {} 
  6:  
  7: for i in xrange(n_sp): 
  8:     dic_frqs[i+1] = [] 
  9:  
 10:  
 11: with open(f_in , "r") as f: 
 12:     for line in f: 
 13:         sp_id = int(line.split()[0]) 
 14:         dic_frqs[sp_id].append(float(line.split()[1])) 
 15:  
 16: out_f = open('frqs.sorted' , "w") 
 17: removed = open('sp.remove' , "w") 
 18: remove = 0 
 19: string = '' 
 20: for entry in dic_frqs.keys(): 
 21:     if len(dic_frqs[entry]) >= 1: 
 22:         frq = str("%20.10f") % dic_frqs[entry][0] 
 23:         id_sp = str("%8i") % entry 
 24:         out_f.write(id_sp + '      ' + frq + "\n") 
 25:     else: 
 26:         remove += 1  
 27:         string += str("%8i") % entry 
 28:         string += "\n" 
 29:         print 'No frequency found for stationary point: ',entry 
 30:  
 31: out_f.close() 
 32:  
 33: if remove > 0: 
 34:     removed = open('sp.remove' , "w") 
 35:     removed.write(str(remove) + "\n" + string) 
 36:     removed.close() 
 37:  
 38:  


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0