Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download

This repository contains the course materials from Math 157: Intro to Mathematical Software.

Creative Commons BY-SA 4.0 license.

Views: 3037
License: OTHER
Kernel: SageMath 8.1
###### Math 157: Intro to Mathematical Software ## UC San Diego, winter 2018

Final project, part 2: due March 16, 2018

The final project consists of two parts, each of equal value. Both parts will be submitted in this folder, just like a homework assignment. However, the final project is not equivalent to a homework assignment from the point of view of course grading; it is a separate contribution, and cannot be dropped.

Part 2 is an open-ended assignment, in which you will be making a presentation to some of your fellow students on one of these topics:

  • Combinatorial designs in Sage (see sage.combinat.designs)

  • Fast Fourier transforms (see scipy.fftpack)

  • Linear feedback shift registers in Sage (see sage.crypto)

  • Permutation groups in Sage (see sage.groups and related functions)

  • Model selection for machine learning (see sklearn.model_selection)

  • Numerical solution of ODEs (see scipy.integrate.ode)

Detailed instructions are given below. Note that you are not being asked to edit this notebook in any way; any material added to this notebook will not be counted for credit.

To complete the final project successfully, please follow these steps.

  • As soon as possible (preferably by Wednesday, February 28), fill out this Google Form indicating your first and second choices of topic.

  • My intention is for everyone to get their first choice; however, if too many people have the same first choice, I will announce this on Wednesday, February 28 and give you a chance to reconsider.

  • You will also be assigned randomly to a group of 3 or 4 in which all of you have chosen different topics (this being the reason why not too many people can choose the same topic). These groups will be announced (and the list made available in the shared project) by Monday, March 5. If I do not have your topic preferences at this point, you will be assigned both a group and a topic.

  • Prepare a Jupyter notebook called "presentation-xxx.ipynb" where xxx is your UCSD email address (without the @ucsd.edu part).

  • Your notebook should be in the style of a lecture of this course, but of half the length (20-30 minutes).

  • Your intended audience is a typical student in this course. In particular, do not assume any prerequisites beyond those required for this course.

  • You should cover material that has not already been presented in the course.

  • You should include an appropriate balance of expository text, examples, and references for further information.

  • You should include at least two sample exercises with solutions for a hypothetical problem set on this topic; these should appear at the end of your notebook.

  • As always, cite all sources and collaborators.

  • Meet with your assigned group and have each person make a presentation based on their notebook (excluding the exercises).

  • I don't expect you to have access to a video projector (though if you do, so much the better). Just have everyone crowd around your device as you go through your presentation.

  • Your group can choose any mutually agreeable time(s) for the presentations as long as you get them done in time to submit the project. However, there will be no lectures on Monday, March 12 or Wednesday, March 14, so you may find it convenient to use these times for this purpose.

  • You may wish to share your notebook with the students in your group. You can do this by transferring files through the shared project; creating a new project with your group members as the collaborators; or downloading and uploading files out of CoCalc.

  • It is permitted to revise your notebook after making your presentation; in this case, you will be asked to submit an extra file summarizing these changes.

  • Please make contact with your group no later than Friday, March 9. If you are unable to contact one of the members of your group, please let me know as soon as possible.

  • Submit, in this folder, the following files.

  • presentation-xxx.ipynb: your presentation notebook.

  • changes-xxx.txt (optional): a description of any changes you made to your presentation based on feedback from your group.

  • feedback-xxx-yyy.txt: for each other member of your group, your comments on their presentation. Here yyy is the other person's UCSD email address, again without @ucsd.edu. (So if your group consists of 4 people, you will submit 3 files of this type.)

Grading criteria:

  • Presentation (50%):

    • Completeness: Did you include enough material for 20-30 minutes? Is your material at a suitable depth?

    • Correctness: Do your examples work?

    • Exposition: Does your text actually explain what is going on?

  • Exercise set and solution key (30%):

    • Completeness: Did you include enough material for two exercises? Is your material at a suitable depth?

    • Correctness: Are your solutions correct?

    • Exposition: Do your problems serve to elucidate your chosen topic?

  • Feedback (20%):

    • Thoroughness: Did you provide comments on all of your assigned presentations?

    • Thoughtfulness: Were you paying attention? Are your comments germane?