ca05 review - problem solving Problem Statement #1: A cable of length l0 is needed to suspend an object of mass mobj from the ceiling. The load, T = mobjg, is the force that the mass exerts on the cable. The deflection (elongation) of the cable under the load must be less than lmax. Ignoring the mass of the cable (mcable, which adds to the load), what cable mass is required to just support the load without permanent deformation? step 1: draw a sketch!!! ceiling l0 mobj T = mobjg Engr 0012 (04-1) LecNotes 06-01 needs l0 mobj lmax step 2: review relevant engineering strain stress-strain problem: S = Ee stress elastic (Young’s) modulus permanent deformation when S > Sy looking for mass of cable mcable V need equation for volume A0 material property look it up add to needs list Engr 0012 (04-1) LecNotes 06-02 l0 step 2: review relevant engineering V A0 l 0 d l 0 / 4 2 already on needs list need equation T S A0 needs list l0 mobj lmax Sy Engr 0012 (04-1) LecNotes 06-03 4T S 2 d can calculate T = mobjg 4T d S need value use Sy add to needs list step 3: restate problem Design a MATLAB script to find the minimum mass of a cable required to support an object hanging from a ceiling given the mass of the object, initial length of the cable, maximum deflection, cable density, and cable yield stress. step 4: algorithm 1. Ask user for mass of the object, initial length of the cable, maximum deflection, cable density, and cable yield stress. 2. Compute mass of cable. 3. Report mass of cable. Engr 0012 (04-1) LecNotes 06-04 step 5: expand step 2 of algorithm 2. Compute mass of cable. a. Compute tension. b. Compute cable diameter. c. Compute cable volume. d. Compute cable mass. Engr 0012 (04-1) LecNotes 06-05 ca05 review - problem solving Problem Statement #2: My boss at the Internal Revenue Service (IRS) has asked me to develop a program that will determine how much taxes are due based upon a taxpayer’s annual salary. The tax due is based upon a provided table. step 1: draw a sketch!!! Can’t - not applicable. step 2: review relevant information Percentage Salary Range, $ Base Tax, $ on Excess, % 0 - 14,999 0 15 15,000 - 29,999 2,250 18 30,000 - 49,999 5,400 22 50,000 - 79,999 11,000 27 80,000 & above 21,600 33 Engr 0012 (04-1) LecNotes 06-06 needs list salary Need to find where salary falls in table. Compute tax due as base + % time amount in excess of minimum in range step 3: restate problem Design a MATLAB script to find the tax due based upon a taxpayer’s salary. step 4: algorithm 1. Ask user for salary. 2. Compute tax due. 3. Report tax due. step 5: expand step 2 of algorithm 2. Compute tax due. a. Use salary and if/elseif/else structure to find appropriate row in table b. Compute appropriate excess. c. Compute appropriate tax due. Engr 0012 (04-1) LecNotes 06-07 decision making - design issues Whenever you need to make a decision, make a decision table condition action Raining Take umbrella Cloudy Take hat Sunny Take sunblock and hat A decision table is a simple listing of conditions and actions that result if the condition is met. Engr 0012 (04-1) LecNotes 06-08 decision making - design issues Two types of decision conditions Mutually exclusive conditions Conditions have no overlap, i.e., only one of the conditions can be true Nonexclusive conditions Conditions can overlap, i.e., one or more of the conditions can be true at same time Example Condition Action Raining Take umbrella Cloudy Take hat Sunny Take sunblock and hat Engr 0012 (04-1) LecNotes 06-09 Nonexclusive - Why? decision making - design issues Example Condition Score < 60 Score >= 60 Score >= 70 Score >= 80 Score >= 90 Action Earned F Earned D Earned C Earned B Earned A Nonexclusive - Why? score of 84 satisfies conditions 2, 3, and 4 Important because we will use an if/elseif command structure to find proper condition and action Engr 0012 (04-1) LecNotes 06-10 if/else if/else command structure first conditon from table if (condition 1) perform condition elseif (condition 2) perform condition elseif (condition 3) perform condition else perform “default” end if none of the conditons are met Engr 0012 (04-1) LecNotes 06-11 first conditon actions 1 actions from table 2 actions 3 actions actions perform these actions default is frequently omitted decision making - MATLAB syntax Example Condition Score < 60 Score >= 60 Score >= 70 Score >= 80 Score >= 90 (score < 60) grade = ‘F’; elseif (score >= grade = ‘D’; elseif (score >= grade = ‘C’; elseif (score >= grade = ‘B’; elseif (score >= grade = ‘A’; end Action Earned F Earned D Earned C Earned B Earned A if Engr 0012 (04-1) LecNotes 06-12 60) 70) 80) 90) MATLAB moves through structure looking for first condition that is satisfied. MATLAB then executes the “action statements” under the condition. When the last “action statement” is finished, MATLAB goes to the end. decision making - nonexclusive conditions nonexclusive conditions are a problem - can either rearrange table to make sure order of execution is appropriate Condition Score >= 90 Score >= 80 Score >= 70 Score >= 60 Score < 60 Action Earned A Earned B Earned C Earned D Earned F note use of default rather than condition Engr 0012 (04-1) LecNotes 06-13 if (score >= 90) grade = ‘A’; elseif (score >= 80) grade = ‘B’; elseif (score >= 70) grade = ‘C’; elseif (score >= 60) grade = ‘D’; else grade = ‘F’; end decision making - nonexclusive conditions nonexclusive conditions are a problem - can either rearrange table to make sure order of execution is appropriate or make Condition Action conditions mutually exclusive if (score < 60) grade = ‘F’; elseif (score >= 60 & score < 70) grade = ‘D’; elseif (score >= 70 & score < 80) grade = ‘C’; elseif (score >= 80 & score < 90) grade = ‘B’; else grade = ‘A’; end Engr 0012 (04-1) LecNotes 06-14 Score < 60 Score >= 60 and Score < 70 Score >= 70 and Score < 80 Score >= 80 and Score < 90 Score >= 90 Earned F Earned D Earned C Earned B Earned A Order of execution of mutually exclusive conditions not important because only one condition can be true decision making operators comparison (relational) operators greater than less than greater than or equal less than or equal is the same as is not the same as logical (set) operators and or not Engr 0012 (04-1) LecNotes 06-15 & | ~ > < >= <= == ~= example function using decision making grade_earned.m how do you know it is working properly? test it!!! Engr 0012 (04-1) LecNotes 06-16 programming assignment 03 due Wed 17 Sep class activity 06 : ca06_e12(04-1).pdf Engr 0012 (04-1) LecNotes 06-17
© Copyright 2024 Paperzz