defread_inp(self, inp_path, result_path): lnum_node = 0# Node number start lnum_element = 0# Node number end lnum_element_end = 0# Element number end node_dic = {} # Node dictionary: node number and coordinate ele_dic = {} # Node dictionary: node number and coordinate
if result_path: result_file = open(result_path) result_lines = result_file.readlines()
# Node information for i inrange(len(inp_lines)): if inp_lines[i] == '*Node\n': lnum_node = i + 1 print('Current line number of *Node: ', lnum_node) if inp_lines[i] == '*Element, type=C3D8R\n': lnum_element = i + 1 print('Current line number of *Element: ', lnum_element) if inp_lines[i] == '*End Part\n': lnum_element_end = i + 1 print('Current line number of *End Part: ', lnum_element_end)
# Element information for i inrange(lnum_node, lnum_element-1): current_line = inp_lines[i] current_line = current_line.replace(' ', '').replace('\n', '').split(',') current_coord = [] for j inrange(len(current_line)): current_coord.append(float(current_line[j])) node_dic[current_line[0]] = current_coord[1:]
for i inrange(lnum_element, lnum_element_end-1): current_line = inp_lines[i] current_line = current_line.replace(' ', '').replace('\n', '').split(',') current_node_group = [] for j inrange(len(current_line)): current_node_group.append(int(current_line[j])) ele_dic[i - lnum_element + 1] = current_node_group[1:]