A component of the Math 251 course is exploring and learning to use a computer algebra system to analyze and solve problems in multivariable calculus. This will be continued throughout Math 244 and Math 252, and will be a useful skill in future math classes going forward.

The point of these assignments is three-fold:

- Students should be able to use a computer package to help visualize problems in 3-dimensions. A lot of Calculus 3 is centered around these types of problems, and being able to visualize them can help with learning how to solve them.
- Students should be able to use a computer package to solve problems that are more complicated than can be done by hand. While pretty much everything in this class is done in 3 dimensions, a lot of real-world problems have more than 3 variables, and the same methods can be used to solve them. They would take forever to work out by hand, so we use computer systems to speed up the process.
- Students should gain intuition as to how to solve problems in these classes based on visualization and breaking down the problem into steps that a computer can solve. If a student knows how to write a program for it, they should be able to work out a simpler version of the problem by hand.

There are three mathematical packages that can be used to do these assignments, and each student is welcome to choose whichever they prefer.

- Maple is the package that has traditionally been used for these assignments. It has a very well-formulated symbolic package (for manipulating algebraic expressions) and is also fairly straight-forward in how pictures and plots are generated. It is available in any of the Rutgers Computer Labs and can be purchased to download on a student's laptop.
- Matlab is the standard in Engineering fields for computational programming. It is very strong in the numerical computation aspect and can also generate figures, although it is a little more involved. Students in engineering majors should use Matlab for these assignments. It is available in any of the Rutgers Computer Labs and can also be downloaded for free onto student's laptops.
- Mathematica is another mathematical package with a fairly intuitive coding interface (it runs on the same engine as Wolfram Alpha). It can very easily handle symbolic calculations
and can be used to generate very nice images and figures. It is available in any of the Rutgers Computer Labs and can also be downloaded for free to student's laptops.
**Note: There is currently no support for Mathematica. If you know how to use it, you are welcome to do so, but there is no help for it.**

For any of the downloads, students should go to the Rutgers Software Portal. An introduction to each of the three systems and how they work can be found at the following pages for Maple, Matlab, and Mathematica.

The first (or second) recitation for Math 251 will take place in a computer lab. Students will get their first introduction to these computational packages there. The goal for the class will be to work on Lab 0 in whichever package the student chooses and get a feel for how it works. The recitation instructor may have a preferred numerical package, but each student is allowed to use whichever they want. Lab 0 will not have a graded component, but working through all of the steps will make the remaining labs significantly easier.

Each of the remaining labs have an assignment sheet outlining what the student is supposed to do for the lab, background information on the concepts covered in class pertaining to the lab, and a set of helpful commands for each of the software packages. Students may still need to look up other commands online, and there may be some unnecessary commands on these pages, especially if the student does the problem differently than the designer intended. That doesn't mean the solution is wrong, just that the student went about it in a different way. The final component of each lab is the randomized student data that each student will input into their code when they build it.

The labs will be graded on each of the components described in the assignment sheet, weighted appropriately. Each student will also be expected to include the final version of the code that was used to do the computation/generate the images. These will need to be printed out and handed in during recitation or lecture, according to the individual instructor's direction. In addition, the intuition and understanding from these labs may also be tested on in-class examinations and quizzes.

Title | Assignment | Background | Helpful Commands |
---|---|---|---|

Lab 0: Introduction to Computing |
Lab 0 Assignment | Lab 0 Background | Maple |

Matlab | |||

Mathematica | |||

Lab 1: Vectors and Triangles |
Lab 1 Assignment | Lab 1 Background | Maple |

Matlab | |||

Mathematica | |||

Lab 2: Arc Length Parametrization |
Lab 2 Assignment | Lab 2 Background | Maple |

Matlab | |||

Mathematica | |||

Lab 3: Tangent Planes |
Lab 3 Assignment | Lab 3 Background | Maple |

Matlab | |||

Mathematica | |||

Lab 4: Optimization and Lagrange Multipliers |
Lab 4 Assignment | Lab 4 Background | Maple |

Matlab | |||

Mathematica | |||

Lab 5: Center of Mass |
Lab 5 Assignment | Lab 5 Background | Maple |

Matlab | |||

Mathematica |

The TA and instructor will be able to help with the content of each of these labs. For coding issues in particular, the TA will be a more available resource. In addition, all students are welcome to go to any of the TAs for Math 251 in order to get help with the Computational Labs. Not all of the TAs are equally versed in the different numerical systems, so if a student is working with a software package that their TA is not familiar with, they are welcome to go to a different TA for help on that assignment.

A departmental Frequently Asked Questions page about this class is also available.