def __init__(self): self.filename_nodes = 'node_coordinates' self.filename_hex8 = 'cell_connectivity_hex8' self.filename_tet4 = 'cell_connectivity_tet4' # self.hex8 = [] self.tet4 = [] # print "number of volumes = " + str(cubit.get_volume_count()) print "number of hexes in entire mesh: cubit.get_hex_count = " + str( cubit.get_hex_count()) print "number of tets in entire mesh: cubit.get_tet_count = " + str( cubit.get_tet_count()) # for volume in cubit.get_entities("volume"): print "VOLUME " + str(volume) + ":" print " number of elements: " + str( cubit.get_volume_element_count(volume)) hex8_list = cubit.get_volume_hexes(volume) self.hex8 += hex8_list print " number of hexes: " + str(len(hex8_list)) tet4_list = cubit.get_volume_tets(volume) self.tet4 += tet4_list print " number of tets: " + str(len(tet4_list)) # print "number of hexes found while iterating over all volumes: " + str( len(self.hex8)) print "number of tets found while iterating over all volumes: " + str( len(self.tet4))
def selectedVolumesAsComp(comp_name, mesh, vsys): """ Create a shadow compartment using selected volumes. Parameters: * comp_name Name of the compartment * mesh ShadowMesh object * vsys List of STEPS volume system ids for the compartment Return: ShadowComp object """ vols = getSelectedVolumes() idxs = [] for v in vols: idxs.extend(cubit.get_volume_tets(v)) return ShadowComp(comp_name, mesh, idxs, vsys)
for id in volumeIds: overLapping = cubit.get_overlapping_volumes ([id, volIdCutter]) for vol in overLapping: if vol != volIdCutter: searchVolumes.append (vol) # Report print "Found " + str (len (searchVolumes)) + " intersecting volumes." # Find overlapping ids. overlap_tets = [] # Save to temp file. saveTmpFile () for id in searchVolumes: openTmpFile () print "Finding tets in volume: " + str (id), tet_list = cubit.get_volume_tets (id) temp = es.getTetsOverlapPassedVols (tet_list, [volIdCutter]) overlap_tets.extend (temp) removeTmpFile () cubit.silent_cmd ('set duplicate block elements on') cubit.silent_cmd ('block 100 tet ' + es.toStr (overlap_tets)) cubit.silent_cmd ('block 100 name "kernel"') cubit.silent_cmd ('set large exodus file on') cubit.silent_cmd ('export mesh "' + kernelWritePath + '/kernelMesh.ex2" block 100 overwrite')