For information on CS 121 - Computation Lab I - Summer 2007

CS 121 - Computation Lab I - Summer 2007

Frequently Asked Questions | AnnouncementsSchedule of Events  | Grading Policy  | Course Resources

Course Description


Introduces mathematical computation and computer programming through the use of a symbolic computation system.  Programming techniques and algorithmic problem solving are introduced in the context of the differential calculus.  Illustrates the power and limitations of the computer in solving mathematical problems.

Course Goals

To provide students with the skills to effectively use a symbolic computation system to solve mathematical problems and to introduce students to programming and algorithmic thinking.  To reinforce concepts from mathematics by presenting them in an algorithmic and computational manner and to learn concepts from computer science in the context of mathematical computation.

Course Objectives Audience

This is a required freshman level course for all engineering and computer science students.  

Classroom


CS 121 is offered this term as an online course. 

Instructors
 
Course Instructor Position Email Office Hours
  Dr. Frederick W. Chapman Course Coordinator    
CS 121 Mr. Nam Pham Course Instructor nhp25@drexel.edu By appointment
CS 122 Mr. Timothy Cheeseman Course Instructor twc24@drexel.edu By appointment
CS 123 Mr. Daniel De Sousa Course Instructor dsd33@drexel.edu By appointment

Course Communications

To access the official web page for this course, please use the web address

    www.pages.drexel.edu/~nhp25/cs121.html


Textbook

All students should have access to a copy of Maple 10 (available through Drexel's site license).  Instead of a text book, this course will rely on Maple documentation and course notes/labs provided as Maple worksheets (see course web page).


Course Motivation

Maple has a wealth of mathematical knowledge built into it and can be used throughout your college studies and professional career whenever mathematical computations are required.  Maple "knows" all or almost all of the mathematics you will see in your mathematics, science, and engineering courses at Drexel.  In particular, Maple has commands to perform all of the computations you will learn about in your calculus courses (e.g. limits, differentiation, integration) and provides functionality, such as plotting, numeric and symbolic computation, and scripting that will allow you to explore these concepts. 

The purpose of this course is to help you  become familiar with the capabilities—and limitations—of Maple and to teach you how to effectively use Maple to explore mathematics, science, and engineering concepts.  Maple is a very powerful tool—it is the result of more than two decades of development by numerous computer scientists and mathematicians.  Consequently, Maple can be complicated to use; however, we hope that after this course, you will become sophisticated enough in its use that you can overcome these difficulties and can benefit from its considerable power.

In order to become an Maple effective user, you must learn some concepts from computer science; e.g., evaluation (names vs. values), programming, data structures, algorithms, graphics, user interface design, theory of computation (what can and cannot be computed).  This computer science course will introduce you to these concepts in the context of computations which arise in your calculus course.  This course will not only help you better understand the material in your calculus course—it will also provide you with powerful computational tools so that you can apply your understanding of calculus effectively throughout your careers as practicing engineers.

Course Topics

  1. The use of maple (interface, symbolic computation, numeric computation, graphics, and an interactive programming environment). 
  2. Experimental mathematics (properties of sequences, equations, and functions)
  3. Algorithmic mathematics (differentiation and equation solving)
  4. Elementary programming constructs (variables, loops, conditionals,  functions)
  5. Elementary data structures (sequences, lists, sets, trees)

Grading Policy

ComponentQuantityWeightDescription
Final Labs 20%Taken individually. Submitted via Blackboard.
Biweekly Labs 480% Taken individually. Submitted via Blackboard.


Course Resources

Software

Maple 10 is available in the CS and Drexel computing labs. Students may also download a personal copy of Maple 10 and install it on their own Windows PC, Macintosh, or Linux computer.  To download Maple 10, visit the Drexel IRT web page

http://www.drexel.edu/IRT/services/comp_mark/software.html

and follow the downloading instructions.  Please consult the web page

http://www.drexel.edu/IRT/support/sw_site/index.html

for help resolving any problems you may encounter while trying to download the software.

Documentation

Full documentation for Maple 10 is available online via the links listed below.
  1. Maple Getting Started Guide.
  2. Maple User Manual.
  3. Maple Introductory Programming Guide.
  4. Maple Advanced Programming Guide.
  5. Maple 10 Quick Reference Card - Windows Version.
  6. Maple 10 Quick Reference Card - Mac OS X Version.
  7. Maple 10 Quick Reference Card - UNIX Version.
Reference Books
  1. Charles F. van Loan, Introduction to Scientific Computing, 2nd Ed., Prentice Hall, 2000. 
Web Pages
  1. Maplesoft
  2. Maple Student Center
  3. Maple Essentials
  4. Maple Programming
  5. Maple Application Center 
  6. MaplePrimes Online Maple Community
 


Look Here for Important Announcements


DateSubjectAnnouncement
   


Schedule of Events

The contents of the labs for this term are tentative and subject to change.

Event Date(s)DescriptionLinks
Week  16/25-7/1 No Lab 
Week 27/2-7/8Lab 1:  Drawing Lines—A Slippery Slope:  An Introduction to Maple.  Reviews high school algebra using Maple.  Introduces plotting and equation solving.  Students will use Maple to determine a line given two distinct points, interpolate a quadratic through three points, and find the best line going through a collection of points scattered about a line.  Discussion will introduce interpolation and least squares.

Submit via Blackboard

Lab 1 Worksheet

Lab 1 Summary
Week 3 7/9-7/15No Lab 
Week 47/16-7/22Lab 2:  The Quadratic Formula—Searching for Your Roots.  Reviews high school algebra using Maple (quadratic equation and complex numbers). Students will investigate which quadratic equations have real roots and will empirically compute the probability that a random quadratic equation has real roots. The empirical investigation will require students to write small Maple scripts (programming with loops and conditionals). Beyond the introduction to programming, the lab will attempt to convey the spirit of using Maple in particular and computers in general to perform empirical studies. Discussion will introduce polynomial root finding and solvability of polynomial equations.

Submit via Blackboard

Lab 2 Worksheet

Lab 2 Summary
Week 5 7/23-7/29No Lab 
Week 67/30-8/5Lab 3:  Sequences, Limits, Functions, and Procedures.  This lab revisits sequences and introduces Maple procedures and recursion.  Sequences are used to empirically study limits, and Maple's limit command is used to symbolically verify the empirical behavior that is witnessed.  We will see that it is easy to define your own functions in Maple.  The arrow operator can be used to define simple functions that map an input to an arbitrary Maple expression.  More complicated functions (for example, using arbitrary programming constructs such as loops and conditionals) can be defined using Maple procedures.  Maple procedures let you extend Maple by adding your own commands.

Submit via Blackboard

Lab 3 Worksheet
Week  7 8/6-8/12No Lab 
Week 88/13-8/19Lab 4:  Computing Derivatives.  This lab shows how to differentiate Maple expressions and functions.  First, the limit command is used to compute derivatives using the definition of the derivative, and then Maple's diff command is used to symbolically differentiate Maple expressions.  Maple's differentiation operator D(...) is used to symbolically differentiate Maple functions.  The lab gives some indication of how Maple's diff command could be implemented and illustrates how to compute the value of the derivative of a function at a point using a process called "numeric differentiation."

Submit via Blackboard

Lab 4 Worksheet
Week 9 8/20-8/26No Lab 
Week 108/27-9/2 Final Lab will cover Labs 1–3 and will use Maple.  Lab 4 will be tested next term.  Exams will be submitted online using Blackboard.

Submit via Blackboard

 


Frequently Asked Questions (FAQ)

FAQ1:  How often does this class meet?

This is an online course so there will be no class meeting.

FAQ2:  Do we submit the labs to be graded?

Yes, you have to submit your lab using Blackboard. It will be graded by your instructor and returned in the next week.

FAQ3:  When am I expected to finish each lab?

Yes, you have to submit your lab before the due date using Blackboard. In case Blackboard has problem, you might send your lab to my email. Remember to include your full name, your student ID number and your DrexelOne username.

FAQ4:  Where can I get extra help outside of class?

Currently I am not holding any office hour. If you need extra help, you can always send email to me. You can also get extra help any time via the online course discussion group on Blackboard. If all else fails, please email me to set up an appointment.  

FAQ5:  May I attend CS 121, CS 122 and CS 123 at a same time?

Yes, you can. But it will be more difficult since CS 122 requires some knowledge from CS 121, as well as CS 123.

FAQ6:  How do I make up a missed lab?

Since all labs are posted online, I am not accepting any missed lab.

FAQ7:  May I submit my labs a few weeks before the due date?

Yes, you are encouraged to do the labs as soon as possible.