Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Intro to Lasers - Homework Overview

This overviews expectations for homework in Lasers and Optomechanics.

You will need to complete the questions in this jupyter notebook and submit it via gitlab Instructions for submitting homework:

  1. git clone the class github repository to your computer.

  2. Make your own github or gitlab repository for submitting homeworks in this class. You may call it lasers-and-optomechanics-homework-solutions. You can keep it private between us or make it public, your choice. My github and gitlab username are both ccahilla.

  3. Copy the jupyter notebook containing the homework .ipynb file from the github repository to your repository.

  4. Complete the homework questions in the jupyter notebook. Be sure to git commit and git push your solutions often as your work through them.

  5. The homeworks will be due on Fridays at 5 pm. Send me a link to your git committed assignment. I will mostly be grading for completeness.

Technical requirements

python

You will need to know python to be successful in this class.
Part of the goal of this class will be to develop your coding ability, and create plots as to illustrate your analytic results. You will need to develop expertise in the following python packages:

  1. numpy

  2. matplotlib

  3. jupyter

LaTeX\LaTeX

Also, LaTeX\LaTeX is required for this class.
For most syntax, surround your math statements with dollar signs:

$ y = m x + b $ y=mx+b\qquad \rightarrow \qquad y = m x + b

jupyter notebook

jupyter notebooks like this have multiple blocks called ‘cells’, that can be either Code, Markdown, or Raw.
This one is Markdown, and so allows us to use LaTeX and other Markdown techniques.

Any cell can be run by hitting Shift + Enter at any time.
If the cell is Code, the python code will be run.
If the cell is Markdown, the markdown in the cell will be interpreted and displayed.
This allows for quick interactive feedback on whether your code is working or not.

Homework Submission Expectations

Some questions will require you to do a calculation in python,
others will require a plot to be produced and displayed via matplotlib,
and still others will ask for a mathematical derivation.
For the derivations, they may be done either by pencil and paper and scanned into in a Markdown cell, transcribed in LaTeX\LaTeX in a Markdown cell, or directly in sympy in a Code cell.

Tech References

  1. Jupyter notebook tutorial

  2. Latex reference

  3. Markdown Cheat Sheet