diff --git a/src/main.py b/src/main.py index 26f1e0f..4a306fc 100644 --- a/src/main.py +++ b/src/main.py @@ -1,31 +1,37 @@ -############################################# -# EECS 442: Computer Vision - W19 # -############################################# -# Authors: Sravan Balaji & Kevin Monpara # -# Filename: main.py # -# Description: # -############################################# - -import numpy as np +############################################################# +# EECS 442: Computer Vision - W19 # +############################################################# +# Authors: Sravan Balaji & Kevin Monpara # +# Filename: main.py # +# Description: # +# Read data file to get specimen dimensions. # +# Read in load and displacement data for each frame. # +# Calculate stress from load and cross-sectional area. # +############################################################# class FrameData: load = 0 # Load in N disp = 0 # Displacement in mm + stress = 0 # Stress in MPa - def __init__(self, load, disp): + def __init__(self, load, disp, stress): self.load = load self.disp = disp + self.stress = stress -def calc_stress(): - file = open("../Section001_Data.txt", "r") - +class SpecimenDimensions: w = 0 # Specimen Width in mm t = 0 # Specimen Thickness in mm gl = 0 # Specimen Gauge Length in mm ol = 0 # Specimen Overall Length in mm + +def read_file(filepath): + file = open(filepath, "r") + + specimen = SpecimenDimensions() load_disp_data = dict() data_start = -1 @@ -34,19 +40,19 @@ def calc_stress(): for line in file: if "Width" in line: index = line.find("\t") - w = float(line[index + 1:]) + specimen.w = float(line[index + 1:]) if "Thickness" in line: index = line.find("\t") - t = float(line[index + 1:]) + specimen.t = float(line[index + 1:]) if "Gauge Length" in line: index = line.find("\t") - gl = float(line[index + 1:]) + specimen.gl = float(line[index + 1:]) if "Overall Length" in line: index = line.find("\t") - ol = float(line[index + 1:]) + specimen.ol = float(line[index + 1:]) if "Frame #" in line: data_start = 2 @@ -60,13 +66,19 @@ def calc_stress(): if in_frame_data: if line != '\t\t\n': frame_num_str, load_str, disp_str = line.split("\t") + frame_num = int(frame_num_str) + load = float(load_str) disp = float(disp_str) - load_disp_data[frame_num] = FrameData(load, disp) + stress = load / (specimen.w * specimen.t) - print("Done") + load_disp_data[frame_num] = FrameData(load, disp, stress) + + file.close() + + return specimen, load_disp_data if __name__ == "__main__": - calc_stress() + specimen, load_disp_data = read_file("../Section001_Data.txt")