1. Homepage
  2. Programming
  3. Math 9 Spring 2023 Final Project Description: Approximation of Pi

Math 9 Spring 2023 Final Project Description: Approximation of Pi

Engage in a Conversation
USUniversity of California IrvineUC IrvineMath 9Introduction to Programming in Numerical AnalysisPython

Math 9 Spring 2023 Final Project Description CourseNana.COM

Approximation of Pi

This final project serves as the open-note programming final exam of this course, counting 10 points in total grades, and with a possibility of 1.5 bonus credit at maximum (described below). The “stepsize” in grading is 0.5, meaning that whenever one requirement below is not satisfied, at least 0.5 points will be subtracted. It also means your answer should be perfect in order to receive the possible bonus credits. CourseNana.COM

Submission: upload the report in the format of Matlab livescript file to Canvas. The submission should be a well-organized report (with well-structured sections, clear figures and necessary descriptions as text in the livescript file, with all code blocks already executed). Submitting merely the codes and/or incomplete results will severely impact your grades. Please include everything in one single mlx file, and any other formats (.pdf, .doc ...or even .m script /Jupyter notebook) or redundant files are not valid and won’t be graded. Please define all the functions in the livescript. CourseNana.COM

Your report should address all the tasks as follows (not necessarily follow the order, but all the required parts should be included in the report). CourseNana.COM

Task 1 (1pt)

Give your report an appropriate title reflecting its scientific contents (don’t simply name it as Math9 Final Project). CourseNana.COM

Write your student id and name under title. CourseNana.COM

Acknowledging the final project policy by reading and copying the following paragraph (displayed in Italic font) at the beginning of your report and keeping the requirements in your mind. CourseNana.COM

I hereby confirm that the present report is my own work and that I am not allowed to seek help from anyone else in this project. If any texts or codes from books, papers, the Web or any other sources have been copied or in any other way used, all references have been acknowledged and cited. I am aware that the instructor has the authority to report and investigate any potential academic misconduct in this course, and such misconduct could lead to failing this course. If I have employed any AI models (including but not limited to ChatGPT), I have appropriately and explicitly acknowledged their use in the report whenever the results were generated with the aid of AI. CourseNana.COM

Task 2 (6pt)

In this final project, the major aim is to approximate the digits of pi with different numerical methods. Throughout the quarter, we have learned many different ways: 1) through numerical integral (left-end/right-end/midpoint/trapezoidal), for example ∫$ √1 − 𝑥! = ", 2) infinite series %# as appeared in Homework 3, 3) Monte-Carlo methods in lecture 7. In the final report, it’s required to implement at least six methods (Different numerical integral formulas can be counted as different methods. Different infinite series can also be counted as different methods). You may find useful resources here CourseNana.COM

https://en.wikipedia.org/wiki/Approximations_of_%CF%80 CourseNana.COM

Below are the specific requirements: CourseNana.COM

Define the in-script function calculate_pi(method, n) which outputs the scalar that approximates pi. The input method could either be a character/string or a number, representing the different methods you’re using (at least six options should be provided), and the input n might have different meanings for each method. For example, n denotes number of integrals in the integration method, the total terms in the infinite series method, and the number of random simulations/steps/points in Monte-Carlo method. CourseNana.COM

(1pt) Write the function with correct input and output form as the in-script function. Under the function name, add function description as comments below the function definition line (followed with %). In the description, especially elaborate on the input of “method”, to at least include 1) what are the possible choices 2) how to call the function to use each method 3) what does input n exactly mean in each method. CourseNana.COM

(3pt) Write the correct codes for each method to approximate the pi (hint: you may need to use if or switch to let user specify different methods). CourseNana.COM

(2pt) In the live script, for each of the method your function supported, 1) introduce the formula/method used with text and equations, 2) use some code lines as the example to show how to use your calculate_pi function to realize the method, and obtain a reasonable estimation of pi (to display digits better, please use format long). If the method is not introduced in this course, please include the sources. Reminder : 1) Don’t use any method that does not involve iterations or repetitions (i.e. the input n in your defined function must be meaningful in each method) in calculating pi (for example, it’s NOT good to use some direct formula such as 22/7 and other formulas appeared in “Miscellaneous approximations” or “Machin-like formula” section of https://en.wikipedia.org/wiki/Approximations_of_%CF%80) CourseNana.COM

2) It’s okay to define as many as function upon your convenience. However, the calculate_pi function itself should support at least six choices of methods, instead of defining six separate functions. 3) Make sure that the function outputs the approximated pi instead of other values (e.g. pi/4). Matlab variable pi is not allowed to appear in the function. CourseNana.COM

Task 3 (2pt+0.5 bonus credit)

Now start with a separate section in the livescript. For each method, use the defined function to explore the relationship between n and absolute error to approximate pi (use matlab variable pi as the ground truth – although it’s not perfect) similar to what you did in Homework 4. Plot such relation for different methods in one figure with correct axis labels (hint: you might need logarithm scale to better illustrate the results. Consult and modify the provided code in Homework 4 to generate plot). Describe your observation with texts in live script. For some Monte-Carlo methods, the result could be “noisy”, and that is totally acceptable as long as you faithfully describe what you observe and the code is correct. CourseNana.COM

(Optional 0.5pt bonus) Fitting the quantitative relation between n and absolute error for each method, and you might earn 0.5 bonus points if this can be satisfactorily and appropriately implemented. Note that for some methods, the relationship might no longer be linear, therefore the input to polyfit should be adjusted accordingly. You may also use other functions in matlab to fit the trend. To get the bonus point, please describe in detail with texts about how you fit the quantitative relation, and what is the conclusion. Merely calling the function without detailed explanation is not sufficient to get bonus points. CourseNana.COM

Hint: some methods (e.g. infinite series) are highly efficient to calculate the digits. Therefore, you might include some very small n in the calculation to observe the trend. CourseNana.COM

Task 4 (1pt): organizing and formatting your report well in live script.

1) Organize your report in sections/subsections with section titles in the format of different heading levels. The section titles should NOT be like “Task 1”, “Task 2” ... but instead reflecting the scientific contents in each section. If you have addressed this appropriately, the table of contents can be automatically inserted at the beginning of the report to reflect its structure. Generate such a table of contents after the acknowledgement part. 2) Do not submit with a live script with merely codes. Imagine you’re writing a report/manual for users/even a thesis. Add text whenever it is necessary. The texts should at least cover 1) Motivation and background (brief introduction to the history of pi approximation, what’s your goal in this report) 2) the formula you used – you must type them in the livescript, 3) Explanation about how to use the function you defined to calculate pi, 4) and all other texts required in Task 2-3. 3) Figures generated in this report should have clear and correct axis labels. CourseNana.COM

4) It’s OK to use online materials (including codes), but make sure you fully understand them and cite them. Task 5 (Bonus 1pt): Use Python to address all the tasks above within a Jupyter notebook file. The grading policy for this bonus point is at the discretion of instructor and a near-perfect report (including text, figure, and codes) is expected in order to get the bonus point (submit through a separate assignment) More References: History of Pi: https://en.wikipedia.org/wiki/Pi#cite_note-137 CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
US代写,University of California代写, Irvine代写,UC Irvine代写,Math 9代写,Introduction to Programming in Numerical Analysis代写,Python代写,US代编,University of California代编, Irvine代编,UC Irvine代编,Math 9代编,Introduction to Programming in Numerical Analysis代编,Python代编,US代考,University of California代考, Irvine代考,UC Irvine代考,Math 9代考,Introduction to Programming in Numerical Analysis代考,Python代考,UShelp,University of Californiahelp, Irvinehelp,UC Irvinehelp,Math 9help,Introduction to Programming in Numerical Analysishelp,Pythonhelp,US作业代写,University of California作业代写, Irvine作业代写,UC Irvine作业代写,Math 9作业代写,Introduction to Programming in Numerical Analysis作业代写,Python作业代写,US编程代写,University of California编程代写, Irvine编程代写,UC Irvine编程代写,Math 9编程代写,Introduction to Programming in Numerical Analysis编程代写,Python编程代写,USprogramming help,University of Californiaprogramming help, Irvineprogramming help,UC Irvineprogramming help,Math 9programming help,Introduction to Programming in Numerical Analysisprogramming help,Pythonprogramming help,USassignment help,University of Californiaassignment help, Irvineassignment help,UC Irvineassignment help,Math 9assignment help,Introduction to Programming in Numerical Analysisassignment help,Pythonassignment help,USsolution,University of Californiasolution, Irvinesolution,UC Irvinesolution,Math 9solution,Introduction to Programming in Numerical Analysissolution,Pythonsolution,