Skip to content

Lab 2: Benchmarking, Big O analysis, Numerical Stability, Defensive Programming

License

Notifications You must be signed in to change notification settings

PsuAstro528/lab2-start-Spring2019

Repository files navigation

Astro 528: Lab 2

Before starting this lab, make sure you've successfully gotten setup to use git, Jupyter, Julia. The previous lab contained detailed instructions for using the Jupyter notebook server.

Remember, that you need follow the provided link to create your own private copy of this lab's repository on GitHub.com. See the help on the course website for instructions on cloning, commiting, pushing and submiting your work

Exercise 1: Benchmarking Code, Big-O notation, Compute vs Memory Limits

Goal 1: Benchmark functions accurately

Goal 2: Predict cost of an algorithm based on Big-O notation

Goal 3: Identify real world complications that affect scaling

From your Jupyter notebook server, work through ex1.ipynb.

Exercise 2: Numerical Stability of N-body Integration

Goal 1: Integrate differential equations

Goal 2: Compare the accuracy of results as a function of time step, order and algorithm

Goal 3: Recognize importance of numerical stability

From your Jupyter notebook server, work through ex2.ipynb.

Exercise 3: Model for Radial Velocity of a Star

Goal: Write effective tests for floating point calculations

Goal: Reduce risk of bugs by using composite types and named function parameters

Goal: Catch problems early by adding assertions

Goal: Implement continuous integration testing

Goal: Calculate the likelihood of simulated observations accurately

Goal: Validate code via both visual and quantiative tests

From your Jupyter notebook server, work through ex3.ipynb. For this exercise, you will also edit 'test/test3.jl'.

Submit your repository

Once you're ready to commit and push your responces, look at the help on the course website for instructions on creating ex?.jmd files, commiting, pushing and submiting your work via a pull request from your repository.

About

Lab 2: Benchmarking, Big O analysis, Numerical Stability, Defensive Programming

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published