## Submitting Homework

*Submit homework assignments via gradescope. *

By submitting homework, you certify that your solution represents your own work. Submitting others’ work constitutes cheating and will result in automatic failure of this class.

### Homework Submission Instructions

- Each problem should be solved in a
Jupyter notebook.*separate* - Submit
the Jupyter notebook (.ipynb)**both**a PDF copy of the notebook.**and**- Ensure that your notebook runs properly before submitting it. Do:
`Kernel -> Restart & Run All`

to ensure that there are no errors. - Include any supplemental files needed to run your notebook in your submission (images, data files that are loaded by your notebook, images loaded, etc.)
- To generate a PDF of your notebook:
`File -> Print Preview`

followed by printing to a PDF from your browser.

or:

`File -> Download as -> PDF via LaTeX`

.

- Ensure that your notebook runs properly before submitting it. Do:
- If this doesn’t look correct, try first exporting as an HTML file and then converting that to PDF (load it in a web browser and print it to PDF).
- Submit the .ipynb notebook
*and*the .pdf version of it! - If your PDF version is not generated properly, you may lose credit, so please ensure that it captures the notebook properly.
- Submit via gradescope. You should receive a confirmation email after submitting.

#### To receive credit for a homework assignment, ensure that you follow these rules:

- Homework solutions must be submitted electronically as a Jupyter notebook
as a PDF.*and* - No late homework submissions will be accepted unless arrangements are made
to the due date with Prof. Sutherland.*prior* - Unless stated otherwise in the homework problem,
**provide a separate report for each problem**. - Reports should contain a brief description of the problem, a description of how you solved it, and a discussion of the results. Also include relevant figures, tables, etc.
- Be sure that you submit your own work. Do not copy others’ work – no matter the source. Submitting others’ work constitutes cheating and will result in failure of this class.

## Homework Resources

Properties

- Various physical properties of selected substances
- Property selection heuristics
- Property databases from the Marriot Library
- NIST property database for fluids
- Henry's Law Constants
- Dortmund Data Bank (DDB) UNIFACC Activity Coefficients
- Critical properties of some fluids
- Antoine Equation Parameters (and lots of other data)

### Jupyter Notebooks

#### Cloud-based access (recommended)

- Point your web browser to ondemand-class.chpc.utah.edu if you donâ€™t want to install python and Jupyter on your own computer. If you are off campus, you may need a VPN connection.
- Follow instructions here to activate your account and log in.

#### Local installations

- For a local installation, I strongly recommend using Anaconda, which will make using Jupyter seamless. If you use a local installation, be sure to use Python 3.x (
*not*2.7). - Be sure to install nbextensions, which provides LaTeX support like equation cross-referencing.
- If you use a local installation, I also suggest that you upload your notebook to ondemand-class.chpc.utah.edu (be sure that you configure it first) to verify that it works properly.

#### Some Jupyter Resources

### Python Resources

General Python programming resources:- CodeAcademy Python class and the you-tube versionGoogle’s Python classPython for data scienceTrinket is an online programming platform that provides some pretty good python documentation/tutorials.

- matplotlib provides very powerful (but sometimes challenging to use) plotting capabilities. A quick way to get started on a plot is to look at the matplotlib gallery to obtain code to generate a plot like the one you want to create. Here is another great resource on matplotlib.
- NumPy provides really powerful array handling capabilities like those in Matlab to allow you to create and manipulate arrays of data. It also has some algorithms that operate on the data. We will use numpy extensively in this class.
- SciPy has a large number of algorithms such as interpolation, quadrature (numerical integration), optimization, ODE solvers, linear algebra tools, etc. There is some duplication between NumPy and SciPy.
- pandas provides a lot of data analysis tools. This includes tools to read/write data, analyze and manipulate data, etc.SymPy provides support for symbolic mathematics within Python.

**Matlab user**, here are a few resources to help you in python:

- Numpy for Matlab users (I find this quite useful as a general summary of common Python operations)Python primer for Matlab users

#### LaTeX information:

Here is a useful web page that provides the LaTeX command to generate numerous mathematical symbols.

#### Coming from Matlab

- Numpy for Matlab users (I find this quite useful as a general summary of common Python operations)

## Homework Assignments

- Homework 1 due Wednesday, January 21 at 8:30 AM. Here’s a template for problem 1. Here’s images for problems 3 & 4 if you want those.
- Solutions (zip file)

- Homework 2 due Monday, January 31 at 8:30 AM. Here’s a zip file with some templates. You’ll need this data.csv file for problem 4.
- Solutions (zip file)

- Homework 3 due Friday, February 11 at 11:59 PM.
- Homework 4 due Wednesday, February 23 at 11:59 PM.
- Solutions: problem 1, problem 2 (loads beaker.png), problem 3, problem 4.

- Homework 5 due Friday, March 4 by midnight. Here’s an image for problem 2 that you can load in your notebook if you’d like. Use a command like this:
`<img src="fig_04_34.jpg" width="400"/>`

and be sure that you use the appropriate name for the image in that command (whatever you saved it as). - Homework 6 due Friday, March 18 by midnight.
- Homework 7 due Wednesday, March 30 at the beginning of class (8:35 AM). A few things that might be helpful:
- Template notebook for problem 3.
- Note that there are several python files to help with the thermodynamics calculations available on the lectures page.
- A diagram for problem 4 in case you want to include it in your notebook
- A ternary diagram for problem 5
- Solutions (zip file)

- Homework 8 due Monday, April 11 at 11:59 PM. Here’s a template for problem 1 that helps with generating the plot with all of the stepping in it if you decide to do this using all python.
- Homework 9 due Friday, April 15 at 11:59 PM. Here’s the csv file you’ll need: Txy.csv