Course information

Course Syllabus

The course syllabus can be found here.

Lectures and readings

Lecture attendance and required reading are mandatory. The lecture/reading schedule is on the course website.


Grading

80% problem sets and reading memos/quizzes/discussion

20% News & Views final project

Lecture attendance and required readings are mandatory. In-class quizzes may be given.


Honor Code

Unless otherwise noted on a particular problem set, you may discuss assignments with other students. The work, however, should be substantially your own. It is a violation of the Honor Code to copy solutions from classmates or to use course materials from previous years.


Homework

All problem sets must be submitted by 1 pm on the stated dates (i.e., before class starts) and the News & Views must be submitted by 5pm on Dec 11. Each student is allocated 6 “grace days” which can be allocated to any assignments with no deduction (e.g., turn in PS1 2 days late, and PS3 4 days late with no deduction). Note: 1 grace day corresponds to any number of hours up to 24 (e.g., turning a set in 4 hours late counts as 1 grace day). After the 6 grace days have been used up for the term, late assignments will not be accepted. Late work submitted with a note from a Dean (e.g., for medical reasons) does not count against your 6 grace days. Please note that no assignment can be turned in after Friday, Dec 11 due to the term ending.

News & Views

An article in the News & Views section of Nature typically describes a current research paper to a non-expert audience. The articles are between 1.5 and 2 pages in length, typically have a single figure, and usually have about eight references. They provide a basic contextual background for the highlighted paper, describe its major findings, and pose open questions in the field. Check out Nature’s website for examples of recent News & Views articles.

Your final project is to select a current research paper (no more than three years old) and write a News & Views piece. The paper can be in any journal, but the News & Views should be written in the style of Nature. It should be no more than two single-spaced pages in length (11 pt font, 1 inch margins), including a figure that you create (i.e., not taken from the original paper, but designed to tell the story for your piece) and 5 to 10 references.

Computing

Homework is completed as Jupyter notebooks, which allow mixing executable code and its output with text and images, including equations. The equations are rendered using LaTeX. Please consult tutorials on using Jupyter notebooks and LaTex.


This course requires use of NUPACK, a growing software suite for the analysis and design of nucleic acid structures, devices, and systems. Additionally, you will need to use other Python-based software, such as NumPy. You can use a computing resource on the Pierce Lab server cluster that we set up for you. This already has the latest version of NUPACK (NUPACK 4.0) installed, along with Python wrappers to aid in its use, and other Python packages you will need. To start, you will need to create a GitHub account (if you don't already have one) by visiting https://github.com/join. Send your GitHub username to caltech.chebe163@gmail.com to be approved for access to the cluster.


To launch a NUPACK server (**PLEASE only have 1 server running. Do not start multiple servers for this course.**):

  1. Visit https://notebooks.bopcluster.net/hub/login
  2. Login with your GitHub credentials (this will work after your GitHub username is approved).
  3. You will be redirected to the "Servers" page.
  4. You have the option to name your server (in the field labeled Name your server). IF you choose to do so, name your server using lowercase letters a-z or numbers 0-9, no punctuation.
  5. Click "Add New Server".
  6. Select "ChE/BE 163" under server options and click "Start".
  7. Next to your new server, under "Actions" select Start My Server.
  8. When your server is running (under "Actions" it should now say Stop My Server), click on the link in the "URL" column to access your Jupyter Lab instance.
  9. You are now able to create Python notebooks from this Jupyter Lab page.

You may choose to stop your server between sessions. To start it again follow Step 6.


Documentation of NUPACK 4.0 Python Executables is available at https://nupack-user-guide.bopcluster.net/.


To view a list of imported NUPACK python functions you can run either of the following commands in a python cell:

Alternatively, you may choose to install the Python distribution on your personal computer. To do so, follow the instructions under "Installation" on the NUPACK Documentation site.