I am learning MATLAB, and am having a problem with the following program. The error is in the for loop. I am unfamiliar with MATLAB errors, but it shows a gray circle with a green arrow pointing at line #39. Line 39 is the end statement that ends my if else (as opposed to the end that ends my for loop). Thanks for taking a look. I know I have a few output errors, and the formatting needs some work, I am just trying to fix this before moving on. I will also be plotting x vs y later. EDIT: When I hover over the gray circle I see a tooltip that says "Save file to synchronize breakpoints. Line 39. Status: Enabled"
clear all;close all;clc;conversion = 12;num_points = 20;truck_lbs = 97000;yield_str = 15000;omega = 105.0;modulus = 30000000;x = 0.0;disp('BEET TRUCK BRIDGE SAFETY');disp('-------------------------------------------');length_ft = input('Enter the length of the bridge (ft): ');num_beams = input('Number of I-Beams: ');h_beam = input('I-Beam height (in): ');i_beam = input('Moment of inertia for one I-Beam (in^4): ');i_bridge = i_beam*num_beams;length_in = length_ft*conversion;max_inertia = (truck_lbs + omega * length_in) * 0.25 * length_in;c = h_beam * 0.5;max_stress = max_inertia * c / i_bridge;disp(' RESULTS\n');disp('---------------------------------------------');x_step = length_in / (num_points - 1.0);disp(' Position on Bridge (in) Deflection in the Bridge (in)');for i = 0:1.0:num_pointsif x <= (length_in / 2.0) y = x/(12*modulus*i_bridge)*( truck_lbs*(3*length_in^2*0.25-x^2)+omega*0.5*(length_in^3-2*length_in*x^2+x^3 ));else y = (length_in-x)/(12*modulus*i_bridge)*( truck_lbs*(3*length_in^2*0.25-(length_in-x)^2)+omega*0.5*(length_in^3-2*length_in*(length_in-x)^2+(length_in-x)^3 ));end disp([' ' num2str(x) ' ' num2str(y)]); x = x + x_step;enddisp([' Maximum Stress (psi): ' num2str(max_stress) ]);if max_stress < yield_str disp('Permanent damage will occur if truck crosses the bridge');elseif max_stress > (0.5 * yield_str) disp('Load is more than twice the safety limit');elseif max_stress > (0.25 * yield_str) disp('Load exceeds the safety limit');end
Best Answer