hdiff output

r33368/clean_directories.sh 2017-10-04 18:30:32.876511100 +0100 r33367/clean_directories.sh 2017-10-04 18:30:38.804589300 +0100
  1:   1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/TESTS/OPTIM/clean_directories.sh' in revision 33367
  2: for test in GEOPT PATH DOUBLE_ENDED FRQS; do 
  3:  
  4: #    for sys in AMBER12 AMBER9 AMBER9_genrigid BLJ60 BOWMAN LJ38 SD TIP4P_genrigid TIP4P_rbaa TTM3 VARIABLES; do 
  5:     for sys in AMBER12 BLJ60 LJ38 SD TIP4P_genrigid TIP4P_rbaa TTM3 VARIABLES; do  # Quick list! 
  6:  
  7:         cd ${test}/${sys} 
  8:  
  9:         if [ "${test}" == "FRQS" ]; then 
 10:             for test2 in GEOPT PATH DOUBLE_ENDED; do 
 11:                 cd ${test2} 
 12:                 rm min.data.info output points* energies odata.new chirality_readable initial_c*_states min.out EofS* path.* fort.* neb* *ofI > /dev/null 2>&1 
 13:                 cd .. 
 14:             done 
 15:         else 
 16:             rm min.data.info output points* energies odata.new chirality_readable initial_c*_states min.out EofS* path.* fort.* neb* *ofI > /dev/null 2>&1 
 17:         fi 
 18:  
 19:         cd ../.. 
 20:  
 21:      done 
 22: done 
 23:  
 24:    


r33368/connect_test_parser.py 2017-10-04 18:30:31.780496644 +0100 r33367/connect_test_parser.py 2017-10-04 18:30:37.716574943 +0100
 36:                 if abs((E1[i]-E2[j])/E1[i]) < tol: 36:                 if abs((E1[i]-E2[j])/E1[i]) < tol:
 37:                     mapping[i] = j 37:                     mapping[i] = j
 38:                     mapping[j] = i 38:                     mapping[j] = i
 39:                     break 39:                     break
 40:             if mapping[i]==i: 40:             if mapping[i]==i:
 41:                 print "Failed to find a stationary point with the same energy as ", i 41:                 print "Failed to find a stationary point with the same energy as ", i
 42:                 print "Mapping points together is not possible." 42:                 print "Mapping points together is not possible."
 43:                 return None  # Failure: there is no configuration which matches configuration i. 43:                 return None  # Failure: there is no configuration which matches configuration i.
 44:     return mapping 44:     return mapping
 45:  45: 
 46: nconfigs = 3*int(sys.argv[1]) 46: nconfigs = int(sys.argv[1])
 47: ncoords = int(sys.argv[2]) 47: ncoords = int(sys.argv[2])
 48:  48: 
 49: tol = 1.0e-4 49: tol = 1.0e-4
 50: fname1 = 'path.info' 50: fname1 = 'path.info'
 51: fname2 = 'expected_output/path.info' 51: fname2 = 'expected_output/path.info'
 52:  52: 
 53: n_coord_lines = int(np.floor(ncoords/3.0)) + ncoords%3 53: n_coord_lines = int(np.floor(ncoords/3.0)) + ncoords%3
 54: print "Expecting ", n_coord_lines, "lines of coordinates per configuration" 54: print "Expecting ", n_coord_lines, "lines of coordinates per configuration"
 55:  55: 
 56: print "Comparing ", fname1, "with ", fname2 56: print "Comparing ", fname1, "with ", fname2


r33368/output_parser.sh 2017-10-04 18:30:32.000499545 +0100 r33367/output_parser.sh 2017-10-04 18:30:37.932577798 +0100
 13: fi 13: fi
 14:  14: 
 15: len1=`wc expected_output/path.info | awk '{print $1}'` 15: len1=`wc expected_output/path.info | awk '{print $1}'`
 16: len2=`wc path.info | awk '{print $1}'` 16: len2=`wc path.info | awk '{print $1}'`
 17:  17: 
 18: if [ $len1 != $len2 ]; then 18: if [ $len1 != $len2 ]; then
 19:   echo "path.info files are of different lengths. Test failed." 19:   echo "path.info files are of different lengths. Test failed."
 20:   exit 1 20:   exit 1
 21: fi 21: fi
 22:  22: 
 23: ntriples1=`grep "TS in the path" expected_output/output | awk '{print $8}'` 23: nconfigs1=`grep "TS in the path" expected_output/output | awk '{print $8}'`
 24: ntriples2=`grep "TS in the path" output | awk '{print $8}'` 24: nconfigs2=`grep "TS in the path" output | awk '{print $8}'`
 25:  25: 
 26: if [ $ntriples1 != $ntriples2 ]; then 26: if [ $nconfigs1 != $nconfigs2 ]; then
 27:   echo "Different discrete path lengths. Test failed." 27:   echo "Different discrete path lengths. Test failed."
 28:   exit 1 28:   exit 1
 29: fi 29: fi
 30:  30: 
 31: python connect_test_parser.py $ntriples1 $natoms1 31: python connect_test_parser.py $nconfigs1 $natoms1
 32: exit $? 32: exit $?


r33368/path_test_parser.py 2017-10-04 18:30:32.660508252 +0100 r33367/path_test_parser.py 2017-10-04 18:30:38.588586450 +0100
  1: import sys  1: import sys
  2: import numpy as np  2: import numpy as np
  3: import rb_to_atomistic as rb  3: import rb_to_atomistic as rb
  4:   4: 
  5: def get_Is(config):  5: def get_Is(config):
  6:     Q = np.array(config).reshape(-1,3)  6:     Q = np.array(config).reshape(-1,3)
  7:     Q = rb.to_atomistic(Q)  7:     Q = rb.to_atomistic(Q)
  8: #    print "Atomistic coords"  8:     print "Atomistic coords"
  9:       9:     
 10:     CoM = np.average(Q,axis=0) 10:     CoM = np.average(Q,axis=0)
 11:     Q-=CoM 11:     Q-=CoM
 12: #    print Q 12:     print Q
 13:     I = np.zeros((3,3))  # non-mass-weighted Inertia tensor 13:     I = np.zeros((3,3))  # non-mass-weighted Inertia tensor
 14:     for atom in Q: 14:     for atom in Q:
 15:         I[0][0]+=atom[1]*atom[1]+atom[2]*atom[2] 15:         I[0][0]+=atom[1]*atom[1]+atom[2]*atom[2]
 16:         I[1][1]+=atom[0]*atom[0]+atom[2]*atom[2] 16:         I[1][1]+=atom[0]*atom[0]+atom[2]*atom[2]
 17:         I[2][2]+=atom[1]*atom[1]+atom[0]*atom[0] 17:         I[2][2]+=atom[1]*atom[1]+atom[0]*atom[0]
 18:         I[0][1]-=atom[0]*atom[1] 18:         I[0][1]-=atom[0]*atom[1]
 19:         I[0][2]-=atom[0]*atom[2] 19:         I[0][2]-=atom[0]*atom[2]
 20:         I[1][2]-=atom[1]*atom[2] 20:         I[1][2]-=atom[1]*atom[2]
 21:     I[1][0] = I[0][1] 21:     I[1][0] = I[0][1]
 22:     I[2][0] = I[0][2] 22:     I[2][0] = I[0][2]
 23:     I[2][1] = I[1][2] 23:     I[2][1] = I[1][2]
 24:  24: 
 25: #    print "Final inertia matrix" 25:     print "Final inertia matrix"
 26: #    print I 26:     print I
 27:  27: 
 28:     return np.linalg.eigvalsh(I)  # The eigenvalues of I 28:     return np.linalg.eigvalsh(I)  # The eigenvalues of I
 29:  29: 
 30:  30: 
 31: def read_pathinfo(fname, nconfigs): 31: def read_pathinfo(fname, nconfigs):
 32:     fin = open(fname,'r') 32:     fin = open(fname,'r')
 33:  33: 
 34:     energies = [] 34:     energies = []
 35:     symmetries = [] 35:     symmetries = []
 36:     inertias = [] 36:     inertias = []
 37:     thisconfig = [] 37:     thisconfig = []
 38:  38: 
 39:     sline = fin.readline().split() # Read the first energy line 39:     sline = fin.readline().split() # Read the first energy line
 40:     for i in xrange(nconfigs): 40:     for i in xrange(nconfigs):
 41:         if len(sline)!=1: 41:         if len(sline)!=1:
 42:             raise ValueError("Energy line appears to have multiple entries. Check nconfigs = "+str(nconfigs)) 42:             raise ValueError("Energy line appears to have multiple entries. Check nconfigs = "+str(nconfigs))
 43:         energies.append(float(sline[0]))   # Save the energy of this configuration 43:         energies.append(float(sline[0]))   # Save the energy of this configuration
 44: #        print "Energy ", energies[-1] 44:         print "Energy ", energies[-1]
 45:         symmetries.append(fin.readline())  # Read point group information for this configuration 45:         symmetries.append(fin.readline())  # Read point group information for this configuration
 46:         sline = fin.readline().split()     # Read the first coordinate/frequency line 46:         sline = fin.readline().split()     # Read the first coordinate/frequency line
 47:         while len(sline)==3: 47:         while len(sline)==3:
 48:             thisconfig.append(map(float, sline)) 48:             thisconfig.append(map(float, sline))
 49:             sline = fin.readline().split() # Read the next coordinate/frequency line. 49:             sline = fin.readline().split() # Read the next coordinate/frequency line.
 50:                                            # When this readline() encounters the start of the next configuration, 50:                                            # When this readline() encounters the start of the next configuration,
 51:                                            # we exit the loop with sline containing the next energy line, ready for 51:                                            # we exit the loop with sline containing the next energy line, ready for
 52:                                            # the next cycle of the loop over i. 52:                                            # the next cycle of the loop over i.
 53:         Is = get_Is(thisconfig) 53:         Is = get_Is(thisconfig)
 54:         inertias.append(Is)                # Save principle moments of inertia for the current configuration 54:         inertias.append(Is)                # Save principle moments of inertia for the current configuration
 55:         thisconfig=[]                      # and empty ready to receive the next 55:         thisconfig=[]                      # and empty ready to receive the next
 56: #        print "Inertias", Is 56:         print "Inertias", Is
 57:  57: 
 58:     fin.close() 58:     fin.close()
 59:  59: 
 60:     return energies, symmetries, inertias 60:     return energies, symmetries, inertias
 61:  61: 
 62: def check_ordering(E1, E2, tol): 62: def check_ordering(E1, E2, tol):
 63:     nconfigs = len(E1) 63:     nconfigs = len(E1)
 64:     mapping = range(nconfigs) 64:     mapping = range(nconfigs)
 65:     for i in xrange(nconfigs): 65:     for i in xrange(nconfigs):
 66:         if mapping[i]==i and abs((E1[i]-E2[i])/E1[i]) > tol: 66:         if mapping[i]==i and abs((E1[i]-E2[i])/E1[i]) > tol:


r33368/run_all_tests.sh 2017-10-04 18:30:33.092513950 +0100 r33367/run_all_tests.sh 2017-10-04 18:30:39.024592202 +0100
  1: exec=${1}  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/TESTS/OPTIM/run_all_tests.sh' in revision 33367
  2:  
  3: if [ -z "${exec}" ]; then 
  4:   echo "No executable specified." 
  5:   exit 1 
  6: fi 
  7:  
  8: bash clean_directories.sh 
  9: touch tests_output 
 10: echo "New exec: ${exec}" >> tests_output 
 11:  
 12:  
 13: for test in GEOPT PATH DOUBLE_ENDED FRQS; do 
 14:  
 15: #    for sys in AMBER12 AMBER9 AMBER9_genrigid BLJ60 BOWMAN LJ38 SD TIP4P_genrigid TIP4P_rbaa TTM3 VARIABLES; do 
 16:     for sys in AMBER12 BLJ60 LJ38 SD TIP4P_genrigid TIP4P_rbaa TTM3 VARIABLES; do  # Quick list! 
 17:  
 18:         echo "********************Running test ${test} for system ${sys}********************" 
 19:         echo "********************Running test ${test} for system ${sys}********************" >> tests_output 
 20:  
 21:         cd ${test}/${sys} 
 22:  
 23:         if [ "${test}" == "FRQS" ]; then 
 24:             for test2 in GEOPT PATH DOUBLE_ENDED; do 
 25:                 cd ${test2} 
 26:                 ${exec} > output 
 27:                 cd .. 
 28:             done 
 29:         else 
 30:             ${exec} > output 
 31:         fi 
 32:  
 33:         bash output_parser.sh >> ../../tests_output 2>&1 
 34:         cd ../.. 
 35:  
 36:      done 
 37: done 
 38:    


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0