CS 310: Problem Solving for Engineers
Lecs 1 & 2, Spring 2019

Class Times:

  • Lecture 1: Tuesday, 11:00 am - 12:15 pm, L196 Education
  • Lecture 2: Tuesday, 2:30 pm - 3:45 pm, 2103 Chamberlin

  • Team Lab 301: Thursday, 9:30 am - 10:45 am, 1370 CS
  • Team Lab 302: Thursday, 11:00 am - 12:15 pm, 1370 CS
  • Team Lab 303: Thursday, 1:00 pm - 2:15 pm, 1370 CS
  • Team Lab 304: Thursday, 2:30 pm - 3:45 pm, 1370 CS
  • Team Lab 305: Thursday, 4:00 pm - 5:15 pm, 1370 CS
  • Team Lab 306: Friday, 9:30 am - 10:45 am, 1370 CS
  • Team Lab 307: Friday, 11:00 am - 12:15 pm, 1370 CS

Instructor:

  • Beck Hasti
    5375 Computer Sciences, 263-2622, hasti (at) cs.wisc.edu
    Office Hours:
      9:30 - 10:30 am Wednesdays
    • 2 - 3 pm Wednesdays
    • 1 - 3 pm Fridays
    • and by appointment

TAs:

  • Jeff Burge
  • Mehmet Demirel
  • Karan Dharni
  • Vinay Patil
  • Wen Xu

Course Announcements:

  • The CS 310 website is under construction for the spring 2019 semester.
  • Labs will meet the first week of classes ( Thursday, January 24, and Friday, January 25)
  • Useful links:

  • Each week's readings, team labs, and handouts from class will be posted in the Modules of the Canvas site (which is not yet accessible). In the meantime, here are links to the first week's materials:

    • Readings: Ch. 1 and Ch. 2 of the zyBook (focus on doing the participation activities -- it's fine to leave the challenge activities until after the team lab and next week's lecture)
    • Team lab 1: write-up
    • Lecture handout: course information handout

    Here are the links to the second week's materials:

    • Readings: Ch. 3 and Ch. 4 of the zyBook (focus on doing the participation activities -- it's fine to leave the challenge activities until after the team lab)
    • Team lab 2: write-up
    • Lecture handouts: released soon MATLAB Basics Review, MATLAB Functions
  • If you have conflict with one or more of the exams or are requesting exam accommodations, please fill out the CS 310 Alternate Exam Request Form.

  • We will be using an electronic text provided through zyBooks and a set of on-line readings developed specifically for this course. In addition to readings, the zyBook also provides interactive demonstrations and activities that facilitate active learning. More information about the zyBook is below.

  • Contact Beck Hasti within the first three weeks of classes to set up a meeting if:
    • you participate in religious observances that may conflict with course requirements.
    • you are requesting disability-related accommodations (additionally, make sure that you have used McBurney Connect to generate and send a Faculty Notification Letter to Beck Hasti).

Course Description:

CS 310 gives engineering students an introduction to programming and developing analytical skills to use in their subsequent course work and professional development. It presents several techniques using computers to solve problems, including the use of symbolic manipulation languages and elementary programming techniques. Techniques are illustrated using sample problems drawn from elementary engineering. Emphasis is on introduction of algorithms with the use of specific tools to illustrate the techniques.

NEEP 271 covers similar topics and is recommended for Nuclear Physics students. Students can not get credit for both CS 310 and NEEP 271.

Topics: numeric computation vs symbolic computation, linear systems, data interpolation and approximation, programmed solutions to complex problems, successive numeric approximation algorithms, min/max problems, volume of revolution problems, introduction to ordinary differential equations; see the Schedule below for more information.

Prereqs: One year of calculus (Math 221 and Math 222). Maximum benefit will accrue to students who take CS 310 early in their college careers. Students are expected to be able to draw upon information from prior (high school) math and science classes.

How the course works:

Students attend one lecture and one team lab each week.

Course Grading:

Final letter grades are determined from the final cumulative score that is computed using the following breakdown:

  • 60% Exams :
    3 exams, 2 during the semester and one during the final exam period each worth 20% of your final grade
  • 10% Homeworks :
    4 homework assignments, accepted up to 24 hours late with 10% penalty
  • 12% Quizzes :
    13 quizzes, no make-ups, lowest score is dropped
  • 13% Team Lab Participation :
    14 team labs, no make-ups, lowest score is dropped
  • 5% zyBook Activities : Participation and challenge activities in the zyBooks e-text

Letter grades are assigned at the end of the semester. The curve is determined after the final exam is completed. The median student's course grade is usually a low B.

Schedule:

Below is an overview of the weekly schedule of topics:

  1. Intro to CS 310 and MATLAB
  2. MATLAB basics (matrix creation, plotting), functions
  3. Linear systems
  4. Data fitting (interpolation, approximation)
  5. Advanced functions (function handles, anonymous functions)
  6. Sequential and iterative execution
  7. Conditional execution and code tracing
  8. Nesting and debugging
  9. Successive numeric approximation
  10. More programming practice
  11. Intro to Maple and symbolic computation, solving systems of equations
  12. Differentiaion and integration
  13. Symbolic solutions of ordinary differential equations
  14. Numeric solutions of ordinary differential equations

Getting Started:

Checklist of things to do to get started with the course:

  • Register for the course zyBook
    We will be using an electronic text provided through zyBooks. In addition to readings, it also provides interactive demonstrations and activities that facilitate active learning. Participation activities and challenge activities count for 5% of the course grade.

    1. Use your NetID based @wisc.edu email address to sign up for an account at https://learn.zybooks.com
    2. Enter the zyBook code: WISCCOMPSCI310HastiSpring2019
    3. Click Subscribe (cost is $77)
    4. If you've never used zyBooks before, complete the How to Use zyBooks
  • Activate your Piazza Account
    Piazza is a free online tool for asking and answering questions related to CS 310 material.

    1. Follow the Piazza account activation link
    2. Click "Join Classes"
    3. Be careful to include your NetID based @wisc.edu email address when creating this account.

  • Check your schedule for exam conflicts
    The exams are:

    • Exam 1 : Monday, March 4th, 7:15 pm to 9:15 pm
    • Exam 2 : Monday, April 8th, 7:15 pm to 9:15 pm
    • Exam 3 : Wednesday, May 8th, 7:45 am to 9:45 am
  • Complete zyBook Chapters 1 (Introduction to MATLAB) and 2 (Matrices, Vectors, and Arrays) before your first team lab (on Thursday or Friday).

Last Updated: 1/29/2019     ©2019 Beck Hasti