Purpose:
In doing many different types of physics projects over the years a common experience is the challenge of seeing the simple core inside the real and more complex problem you are interested in. This challenge no doubt arises from a variety of experiences and expectations not the least of which is wanting to get right to the final answer and not "waste" a lot of time with intermediate steps. My experience of reality in the work world is that if you don't start with something that is so simple that you are sure you understand how it should work you will be unable to check or test the validity of your more complex model. One of the questions you will get asked is "Why do you think this model is giving us good predictions?" and there is no satisfying way to answer that unless you can clearly show the progression from simpler models that everyone is confident they understand. I can not say it often enough -- there is tremendous value in simple and conceptual models and understanding! This first implementation step in your project asks you to implement the simplest model you can imagine that has some features of the bigger project and you are clear in your mind what the results should be.
Process:
A consistent feature of early coding efforts by nearly everyone (myself included) is that we jump right into the coding and don't spend nearly enough effort verbalizing what we are doing and what assumptions and simplifications we are making. This is one of the really important features of Jupyter notebooks because it integrates an effective descriptive tool for science and engineering (markdown cells that can display complex mathematical information clearly) with the coding. In this first coding step I hope to see much more writing and description than actual code.
Here are the elements I expect to see in your Jupyter notebook for this lab.
Please Note!: Most of the requirements above are about the written part of the notebook. Please take heed. This initial project lab is much more about your ability to describe and present your project than it is about the actual coding.I: Title and atribution etc etc. Who is writing this notebook and how could someone get in contact with the author?
II: A written description of the problem you are seeking to address. In that description you should clearly indicate in what ways the problem would be difficult to address with the physics tools you currently have available and how the ability to code it in python (or any other coding language) starts to solve that problem.
III: A written description of the simplest version of the problem along with a presentation of the mathematics that you will code to implement that model. In this description you will also indicate where the model is over simplified and how you will incrementally improve the model in future labs.
IV: Implementation of the code for your simplest model for your project. As we have been practicing in previous Jupyter labs be sure that you create clear and detailed documentation of what you are doing in each cell. One giant code cell with a few cryptic comments in the code will not be deemed sufficient to meet this requirement.
- Project: Simplest Model:
1) Meet the requirements stated above and turn in the pdf of your notebook!