import sys def validateBranch(tree, node): if node[0] == -1: if node[3] == 0: return else: sys.exit("Bad branch") return node = tree[node[0]] validateBranch(tree, node) outfile = 'trees_099.0.vector' trees = bctDevV2.read_binary(outfile) debug = False branchingTrees = [] for i in range(len(trees)): if (trees[i][0]['Len'] > 0): branchingTrees.append(i) print("Num trees =", len(branchingTrees)) massiveTrees = [] for treenum in tqdm(branchingTrees): temp = trees[treenum] if debug: print(temp) for index in range(len(temp) - 1): if abs(temp[index + 1]['FirstHaloInFOFGroupOffset'] -
import bctDevV2 import numpy as np from tqdm import tqdm from struct import pack import sys ##################################################################################################################### infile='../../lgalLarge/MergerTrees/LJDS/treedata/_trees_099.0' outfile='../../lgalLarge/MergerTrees/LJDS/treedata/trees_099.0' #infile='cutMill5002.0' #outfile='../../lgalMill/MergerTrees/MR/treedata/trees_063.5' trees=bctDevV2.read_binary(infile) print("Num trees =", len(trees)) ##################################################################################################################### outputTrees=[] # Iterate through 'straight' trees for treenum in tqdm(trees): temp = trees[treenum].copy() for num in range(len(temp)): if temp[num]['M_Crit200']!=0.0: #temp[num]['Len']=1e-10 #temp[num]['M_Crit200']=1e-10 #temp[num]['Vmax']=1e-10 #temp[num]['VelDisp']=1e-10 temp[num]['Spin_x']=1e-10 temp[num]['Spin_y']=1e-10