ET181:Computer Methods in Engineering - 1
Fall 2008 Calendar

Purpose: A first course in object oriented engineering computer programming and problem solving using the ANSI C++ language on a networked workstation environment. We use a SUN SPARC 10 computer named "condor".

Prerequisite: Math 163A, Math 263A, or equivalent. For those of you who do not have previous computer programming experience, during the first two weeks you will probably feel overwhelmed and rather lost. This is normal. Try to spend as much time as possible in the lab going over the examples and getting help from your colleages, lab tutor, and teacher.

Web Resource: This course is integrated into OU's web based Blackboard 6 system. This is be used mainly for posting announcements, grades, surveys, anonymous feedback, and email communication.

Course Textbook: "Problem Solving, Abstraction, and Design Using C++", by Frank L. Friedman and Elliot B. Koffman, Addison Wealey, (either Fourth Edition, 2004 or Fifth Edition 2007). We will cover the first ten chapters of the book. The various relevant examples in the book have been uploaded onto "condor" and augmented with examples and labs developed by your instructor.

Attendance policy: Attendance at the lectures is not compulsory, however if you do attend classes you should remain for the entire class period or not at all. If you need to leave a class early then let the instructor know beforehand. Please do not come late for class, and please turn off all cellphones before entering the classroom.

Computor Laboratory: Stocker Center room 308. There are no scheduled laboratory sessions for programming assignments and you will be expected to do your assignments in your own time. The lab will be open from Monday through Friday from 9:00 a.m. through 11:30 p.m. On Saturday and Sunday it will be open from noon through 8:00 p.m. The Computer lab will be scheduled every Tuesday and Thursday from 1:00 p.m. to 3:00 p.m. for the two 2-hour lab sessions (you are only required to attend one of these sessions per week).

Lab Sessions: All lab sessions are held in Stocker Center room 308:

Programming Exercises: There are six programming exercises scheduled for this quarter, each worth 80 points. They are all based on a common engineering theme which is intuitively obvious, however is nonlinear and requires a numerical computer approach to solution. This quarter the theme will be on Hot Air Balloons

Programs are due at 10am on the posted due date. Shortly thereafter a master program automatically compiles and executes your program exercise, and printouts are automatically generated. You do not need to hand in listings of your programs. Some of the lab sessions are directly related to the current programming exercise, hence it is important to attend all the lab sessions. For a list of the assignments type hw on condor. Note: If your program did not compile or could not be graded you will be allowed to resubmit it up to two days later (and suffer a reduction in grade). During the quarter you are only be allowed three resubmissions

Quizzes: There are eight quizzes scheduled for this quarter. These normally take up the last 15 to 20 minutes of the Friday class period and in all cases require the actual writing of C++ program code. Typically a partially complete program would be presented and you would be requested to complete the program. Following the completion of the in-class portion of the quiz you will have the weekend to complete the computer solution of that quiz on condor. Each quiz is graded out of 25 points, of which 10 points are assigned to the computer solution of the quiz. There is no makeup allowed for the quizzes - if you have a valid reason to miss a quiz then please let the instructor know beforehand.

Final Exam: The 2 hour Final exam includes the in-class writing of C++ program code only, and is worth 200 points. Since the Final exam is comprehensive, it replaces the eight quiz (test plus program) grades if it is higher. This is explained in the (partial) computer program class definition shown below.

Labs: Eight of the nine labs count for 15 points each. The lab grade can only be received for work done during the specific lab session and demonstrated or handed in to your lab tutor. In previous quarters the lab tutor has given bonus points to those students who (during at least 5 labs) remain and help their colleagues after completing their own labs.

Academic Dishonesty: In all assignments and examinations the work you submit must be your own. Plagiarism in any form will result in penalties ranging from zero on an assignment to submission to the Judiciary for possible suspension.

Anonymous Feedback: Please use this form often to give us feedback on how the course is progressing or any problems that you are having. Your identity is protected when you use this form - your instructor receives your comments in an email message from an anonymous sender.

Instructor:
Israel Urieli -- Room 265 Stocker Center, phone 593-1560, email: urieli@bobcat.ent.ohiou.edu
Office Hours: 3:00 - 4:00 p.m. Monday, Wednesday, Friday, and 11:00 - 12:00 p.m. Tuesday and Thursday. Otherwise email me to make an appointment.

Grading method: From the above description we notice that their are four components to the complete grade, being the quiz, endterm, program and eight of the nine labs, Together these amount to 1000 points. of which we find that 680 points are due to actual programming on condor, and 320 points are due to in-class writing of C++ code.
Try to understand how the grade is determined from the following C++
partial class definition. In particular the method finalmark() determines the total points, and the method finalgrade() determines the final letter grade. The complete program file is named grade.cpp and can be found in directory /home/condor/et181/week4, and will be discussed during the fourth week of class.

class Grade{ // (partial) - evaluate the student's final letter grade
private:
   int quiz, // the total of all 8 quizes        (max 200 points) 
       endterm, // the endterm test mark         (max 200 points)
       program, // the total of all 6 programs   (max 480 points)
       lab; // the total of 8 selected labs      (max 120 points)
public:
   int finalmark() // evaluate the student's final mark
   {
      int test, total;
      if(quiz > endterm)
         test = quiz + endterm;
      else
         test = 2 * endterm;
      total = test + program + lab;
      return (total); // maximum 1000 points
   }
   //=============================================================
   void finalgrade(int total) // display the student's final grade
   {
      if(total >= 930)
         cout << "total: " << total << ", grade: A. Jolly good show!\n";
      else if(total >= 900)
         cout << "total: " << total << ", grade: A-\n";
      else if(total >= 870)
         cout << "total: " << total << ", grade: B+\n";
      else if(total >= 830)
         cout << "total: " << total << ", grade: B\n";
      else if(total >= 800)
         cout << "total: " << total << ", grade: B-\n";
      else if(total >= 770)
         cout << "total: " << total << ", grade: C+\n";
      else if(total >= 730)
         cout << "total: " << total << ", grade: C\n";
      else if(total >= 700)
         cout << "total: " << total << ", grade: C-\n";
      else if(total >= 670)
         cout << "total: " << total << ", grade: D+\n";
      else if(total >= 630)
         cout << "total: " << total << ", grade: D\n";
      else if(total >= 600)
         cout << "total: " << total << ", grade: D-\n";
      else
         cout << "total: " << total << ", grade: F. Hard cheese old chap\n";
   }
};

Requred Course Outcomes:
 [ABET-a and ASME-1,2,&3] OU ME graduates will demonstrate a familiarity with statistics and linear algebra, a knowledge of chemistry and calculus-based physics (with depth in physics), and an ability to apply their knowledge of advanced mathematics (through multivariate calculus and differential equations), science, and engineering.

 In order to demonstrate achievement of the technical skills - fundamentals outcome (ABET-a), OU ME graduates will demonstrate

  • a.3) An ability to apply knowledge of Engineering Sciences
    |
    |
    • f. Fundamental Skills in Computer Methods
      • 1. An ability to write procedural and object-oriented computer programs, including

1.1. classes and objects to define engineering systems.
1.2. functions to perform engineering calculations.
1.3. functions to simulate the performance of engineering systems.
1.4. functions to apply basic numerical methods such as root finding or numerical integration.
1.5. functions to read from or write to external data files.

[Competence; ET181; Computers, Programming and Simulation]

Telnet: "condor"