diff --git a/examples/check_ngbs.py b/examples/check_ngbs.py index a074b436c9fa47d85a98079f34d0ce40f9290b55..6b403c6a4555c442e3004921748c57890cdb2e0f 100644 --- a/examples/check_ngbs.py +++ b/examples/check_ngbs.py @@ -149,12 +149,17 @@ neighbour_ids_force_sort = file_sort["/PartType0/Ids_ngb_force"][:] #wcount_sort = wcount_sort * np.power(h_sort,3) * kernel_norm # Cross check +max_density_ngbs_naive = np.max(num_density_naive) +max_density_ngbs_sort = np.max(num_density_sort) +max_force_ngbs_naive = np.max(num_force_naive) +max_force_ngbs_sort = np.max(num_force_sort) + print " Min Mean Max " print " ---------------------" -print "Ngbs density naiv: ", np.min(num_density_naive), np.mean(num_density_naive), np.max(num_density_naive) -print "Ngbs density sort: ", np.min(num_density_sort), np.mean(num_density_sort), np.max(num_density_sort) -print "Ngbs force naiv: ", np.min(num_force_naive), np.mean(num_force_naive), np.max(num_force_naive) -print "Ngbs force sort: ", np.min(num_force_sort), np.mean(num_force_sort), np.max(num_force_sort) +print "Ngbs density naiv: ", np.min(num_density_naive), np.mean(num_density_naive), max_density_ngbs_naive +print "Ngbs density sort: ", np.min(num_density_sort), np.mean(num_density_sort), max_density_ngbs_sort +print "Ngbs force naiv: ", np.min(num_force_naive), np.mean(num_force_naive), max_force_ngbs_naive +print "Ngbs force sort: ", np.min(num_force_sort), np.mean(num_force_sort), max_force_ngbs_sort #print "Wcount naiv: ", np.min(wcount_naive), np.mean(wcount_naive), np.max(wcount_naive) #print "Wcount sort: ", np.min(wcount_sort), np.mean(wcount_sort), np.max(wcount_sort) @@ -179,6 +184,23 @@ h_sort = h_sort[index_sort] pos_naive = pos_naive[index_naive] pos_sort = pos_sort[index_sort] +neighbour_length_naive = len(neighbour_ids_density_naive[0]) +neighbour_length_sort = len(neighbour_ids_density_sort[0]) + +# Check that input files are logging the same number of neighbours +if neighbour_length_naive != neighbour_length_sort: + print "Input files have logged different numbers of neighbour lengths!" + print "{} has logged: {} neighbours".format(inputFile1, neighbour_length_naive) + print "{} has logged: {} neighbours".format(inputFile2, neighbour_length_sort) + exit(1) + +if (max_density_ngbs_naive > neighbour_length_naive or max_force_ngbs_naive > neighbour_length_naive or + max_density_ngbs_sort > neighbour_length_sort or max_force_ngbs_sort > neighbour_length_sort): + print "The number of neighbours has exceeded the number of neighbours logged." + print "Modify NUM_OF_NEIGHBOURS in hydro_part.h to log more neighbours." + print "The highest neighbour count is: ", max(max_density_ngbs_naive,max_force_ngbs_naive, max_density_ngbs_sort,max_force_ngbs_sort) + exit(1) + # First check print "\n Min Max" print " ----------"