Check out https://github.com/ubsuny/CompPhys/Calculus and generate a library calculus.py
with functions / methods needed for Task 1 and 2.
In particular fullfill three tasks (one for each group member):
Task 1:
Use the four integral algorithms (simpson, adaptive trapezoid, trapezoid) to create a Jupyter notebook that imports the functions from calculus.py
and use them to calculate and plot the integral of:
with different boundaries:
$$ [0,10\cdot\textrm{GroupNumber}],]0,\pi\cdot\textrm{GroupNumber}],[-1,1] $$
(Pay attention to the boundary brackets ][)
Additionally, compare the accuracies (how many digits are correct) and efficiencies (how many steps does it take to reach a given accuracy).
Task 2: Compare the accuracies (how many digits are correct) and efficiencies (how many steps does it take to reach a given accuracy) for any two root-finding algorithms on the two functions
$$ y(x) = \tan(x) \textrm{ and} $$
$$ y(x) = \tanh(x). $$
Task 3:
calculus.py
calculus.py
calculus.py
For this you have to complete the following steps:
calculus.py
with functions for task 1 and 2 from compphysAlso use discord for discussing solutions to any issues popping up.
Homework Points | |||
---|---|---|---|
Interaction on own project | |||
Category | min per person | point factor | max points |
Commits | 6 | 1 | 6 |
Merge requests | 3 | 1 | 3 |
Merge Accepted | 1 | 1 | 1 |
Branches | 2 | 0.5 | 1 |
Issues | 10 | 0.5 | 5 |
Closed Issues | 5 | 0.2 | 1 |
# Conversations | 30 | 0.2 | 6 |
Total | 23 | ||
Shared project points | |||
# Label | 5 | 0.2 | 1 |
# Milestones | 2 | 1 | 2 |
# Tags | 0 | 1 | 0 |
Total | 7 | 5 | |
Interaction on others project(s) | |||
Category | min per person | point factor | max points |
Commits | 3 | 1 | 3 |
Branches | 1 | 0.5 | 0.5 |
Issues | 9 | 0.5 | 4.5 |
# Conversations | 15 | 0.2 | 3 |
Total | 22 | 11 | |
Result | |||
Task completion | 5 | 1 | 5 |
Sum | 42 |