Home Teaching Research CV Timetable

Prev: P1 Next: P3
Back to week 3 page: Link



# P2 Programming Problem Instruction

📗 Enter your ID (the wisc email ID without @wisc.edu) here: and click (or hit enter key)
📗 The due date is Feb 16, late submissions within a week will be accepted without penalty, but please submit a regrade request form: Link.
📗 The same ID should generate the same set of questions. Your answers are not saved when you refresh the page or close the browser.
📗 To input your answers, you could (1) copy and paste your answers to the text boxes for individual questions, or (2) print your answers to text files and load them into the text boxes for individual questions, or (3) print all your outputs to a single text file and load it using the button at the bottom of the page under the Submission section. More details at the bottom of page W1.
📗 Please report any bugs on Piazza.

# Warning: please enter your ID before you start!



# Questions 1 to 3 Instruction

📗 Create a matrix with four columns: the first column contains the principal amount that is deposited in a bank, and the next three columns are the total amount (with interest) in the bank after ??? years. Use the principal amounts and compound interest rate specified in each question. Enter the matrix you created in the text box below each question.
📗 Use the compound interest formula to compute the total amount \(x = p \cdot \left(1 + r\right)^{n}\), where \(p\) is the principal, \(r\) is the interest rate, \(n\) is the number of years. Details see: Wikipedia.
📗 Note: you are allowed to use loops (for), but it is highly recommended that you do not use these, and vectorize instead, whenever you can. Details see: Doc.

# Question 1

📗 [1 point] Create the vector based on the principal of ??? and the interest rate ???.
📗 Answer:


# Question 2

📗 [1 point] Create the matrix based on the principals of ??? and the interest rate ???.
📗 Answer:


# Question 3

📗 [1 point] Create the matrix based on the principals of ??? and the interest rate ???.
📗 Answer:


# Questions 4 to 6 Instruction

📗 Create a matrix containing values of dry air density as a function of the temperature (in degrees Fahrenheit) and the pressure (in Pascal). The rows correspond to different values of the temperature and the columns correspond to different values of the pressure. (This means the entry in row \(i\) and column \(j\) of your matrix should be the density given the temperature is equal to the \(i\)th value in the temperature list and given the pressure is equal to the \(j\)th value in the pressure list.) Use the list of temperature and pressure values specified in each question. Use the specific gas constant ???. Enter the matrix you created in the text box below each question.
📗 Use the ideal gas law formula to compute the dry air density: \(\rho = \dfrac{p}{R \cdot T}\), where \(p\) is the pressure, \(T\) is the temperature measured in Kelvins, and \(R\) is the specific gas constant. Details see: Wikipedia
📗 Use the Fahrenheit to Kelvin conversion formula: \(K = \dfrac{5}{9} \left(F + 459.67\right)\). Details see: Wikipedia.
📗 Note: you are allowed to use loops (for), but it is highly recommended that you do not use these, and vectorize instead, whenever you can. Details see: Doc.

# Question 4

📗 [1 point] Create the vector based on the pressures of ??? and the temperature of ??? in degrees Fahrenheit.
📗 Answer:


# Question 5

📗 [1 point] Create the matrix (or "column vector") based on the pressure of ??? and the temperatures of ??? in degrees Fahrenheit.
📗 Answer:


# Question 6

📗 [1 point] Create the matrix based on the pressure of ??? and the temperature of ??? in degrees Fahrenheit.
📗 Answer:


# Questions 7 to 9 Instruction

📗 Create a matrix with two rows, the first row contains a partition of the domain \(x\), and the second row contains the values of the function \(\dfrac{1}{2} \left(1 + \text{erf} \left(\dfrac{x - \mu}{\sigma \sqrt{2}}\right)\right)\) with \(\mu\) = ??? and standard deviation \(\sigma\) = ???. (This means the \(i\)th entry of the second row of your matrix is the value of the function evaluated at \(x\) = \(i\)th value in the first row.) Use the discretization (partition) specified in each question. Enter the matrix you created in the text box below each question.
📗 Aside: the above expression involving the error function (erf) is used to compute the probability that a Gaussian random variable with mean \(\mu\) and standard deviation \(\sigma\) is less than \(x\). Details see: Wikipedia.
📗 You can use the erf function in MATLAB: Doc or some numerical approximations of it.
📗 Note: you are allowed to use loops (for), but it is highly recommended that you do not use these, and vectorize instead, whenever you can. Details see: Doc.

# Question 7

📗 [1 point] Create the matrix based on the partition \(x\) = ???.
📗 Answer:


# Question 8

📗 [1 point] Create the matrix based on the partition \(x\) = ???.
📗 Answer:


# Question 9

📗 [1 point] Create the matrix based on the partition \(x\) = ???.
📗 Answer:


# Question 10

📗 [1 point] Please enter any comments and suggestions including possible mistakes and bugs with your version of the questions and the auto-grading, and materials relevant to solving the question that you think are not covered well during the lectures. If you have no comments, please enter "None": do not leave it blank.
📗 Answer: .

# Grade


 ***** ***** ***** ***** ***** 

 ***** ***** ***** ***** *****

# Submission



📗 Please do not modify the content in the above text field: use the "Grade" button to update.
📗 Warning: grading may take a few seconds. Please be patient and do not click "Grade" multiple times.


📗 You could submit multiple times (but please do not submit too often): the submission with the highest grade will be counted.
📗 Please also save the text in the above text box to a file using the button or copy and paste it into a file yourself .
📗 You could also load your answers from the text (or txt file) in the text box below using the button . The first two lines should be "##p: 2" and "##id: your id", and the format of the remaining lines should be "##1: your answer to question 1" newline "##2: your answer to question 2", etc. Please make sure that your answers are loaded correctly before submitting them.



📗 Saving and loading may take a few seconds. Please be patient and do not click "Load" multiple times.

# Code

📗 Please submit your code (.m, .txt, or .pdf are all acceptable) on Canvas Assignment P2.
📗 Your coding style and technique will not be graded, but please consider the following:
(1) Add comments to describe what the code is doing.
(2) Indent "for" loops and "if" blocks.
(3) Use descriptive but short variable names.
(4) Add white spaces and/or blank lines for readability.
📗 It is highly recommended that you use the commands and functions from the lectures, but you are allowed to use any built-in MATLAB commands and functions.
📗 Example solution: .m File, .txt File .pdf File.
📗 Example solution that writes all the answers into one file: .m File, .txt File
(1) Please do not use the example solution as the starter code. You should write all the code yourself and only use the example solution as a reference when you get stuck.
(2) Please do not use the example solution as a guide for coding style. It is written so that it only solves a specific version of the problems. You code should be more general: you should define variables for constants, define functions for repetitive actions, and use descriptive variable names.
📗 Please report possible mistakes in the solution, and if you have better (shorter or more efficient) ways of solving the same problem, you can share your code on Piazza (but please do so after the due dates).
📗 If you use one or more lines of code from the example solution, other students in the class, or code you found on the Internet, you must give attribution by putting a comment at the beginning of your code submission, for example:
% Code attribution: P2 example solution.
% Code attribution: (student name)'s P2 solution.
% Code attribution: (student name)'s answer on Piazza: (link to Piazza post).
% Code attribution: (person name)'s answer on Stack Overflow: (link to page).






Last Updated: April 29, 2024 at 1:11 AM