Расчёт абсолютных погрешностей вычислений темератур
This commit is contained in:
44
Error_folder/combine_ansys.py
Normal file
44
Error_folder/combine_ansys.py
Normal file
@@ -0,0 +1,44 @@
|
||||
import re
|
||||
|
||||
def parse_temp_file(temp_file):
|
||||
node_temps = {}
|
||||
with open(temp_file, 'r') as f:
|
||||
for line in f:
|
||||
match = re.match(r'^\s*(\d+)\s+([\d.]+)\s*$', line.strip())
|
||||
if match:
|
||||
node = int(match.group(1))
|
||||
temp = float(match.group(2))
|
||||
node_temps[node] = temp
|
||||
return node_temps
|
||||
|
||||
def parse_node_file(node_file):
|
||||
node_coords = {}
|
||||
with open(node_file, 'r') as f:
|
||||
for line in f:
|
||||
match = re.match(r'^\s*(\d+)\s+([-\d.Ee]+)\s+([-\d.Ee]+)\s+([-\d.Ee]+)\s+[-\d.]+', line.strip())
|
||||
if match:
|
||||
node = int(match.group(1))
|
||||
x = float(match.group(2))
|
||||
y = float(match.group(3))
|
||||
node_coords[node] = (x, y)
|
||||
return node_coords
|
||||
|
||||
def process_files(temp_file, node_file, output_file):
|
||||
node_temps = parse_temp_file(temp_file)
|
||||
node_coords = parse_node_file(node_file)
|
||||
|
||||
with open(output_file, 'w') as f:
|
||||
for node in node_temps:
|
||||
if node in node_coords:
|
||||
x, y = node_coords[node]
|
||||
temp = node_temps[node]
|
||||
f.write(f"100 {int(x)} {int(y)} {temp}\n")
|
||||
else:
|
||||
print(f"Warning: Node {node} not found in coordinate file")
|
||||
|
||||
temp_file = "temp_data.txt"
|
||||
node_file = "node_data.txt"
|
||||
output_file = "ansys.txt"
|
||||
|
||||
process_files(temp_file, node_file, output_file)
|
||||
print(f"Output written to {output_file}")
|
||||
Reference in New Issue
Block a user