FINAL COMPUTATIONAL PROJECT for Phys 2210 (Sp 12)
(Grading information at bottom of this page)
What is this assignment? At the end of this term (due dates below) we are going to ask you to turn in a homework-scale paper which will summarize a computational project in which you solve a physics problem of your choosing. The project can involve any physics you have learned this semester (it should be a classical mechanics/math methods topic), but should not be a "textbook homework problem" that can be completely solved analytically. We want to see a numerical solution as part of it! It's a project - we expect you will need to do a little outside reading and learning as part of the problem.
We strongly encourage you find (a) partner(s). Pairs are fine - groups of 3 will be fine too (but then our expectations will be raised a bit for the quality of the final product!) Groups of 4 or more are too large. If you want to work alone, that's acceptable, but it'll end up being more work for you that way - take advantage of your partner's skills!
What will it look like? The final project will be a paper writeup - I expect some analytic calculations (which you may hand-write, as you normally do in homeworks), some computer output (code and plots, which you selectively turn in), and a typed summary document which explains the problem, discusses what you did, and most important, clearly summarizes your results and conclusions- what physics have you learned? The typed document is the primary outcome - I would expect it will run a couple of pages. The rest (calculations, code, plots) will be "attachments", (like the appendix in modern journal articles!)
Grading: See bottom of this page for details. We will ask you to let us know individually what the contributions of you and your partner(s) were. In general, we expect to give the same grade to all partners, unless one of you indicates there was a serious mismatch of efforts (in which case we will talk with you and your partner(s) to figure out what to do) The grading rubric will appear on this page (soon) - grading will be similar in rigor to how your homeworks are graded. Treat this project like you would treat any (long) homework set. Expect it to take about that amount of time and effort, perhaps a bit more (because that's the nature of solving richer physics problems!)
If you are having problems working with your partner(s), let us know early on so we can help you work it out.
Below, we will provide a list of suggested problems. Pick one, or invent one of your own. (If you invent one, though, you need to run it by Steve or Danny FIRST)
What are the deadlines?
For HW 9 (Due Mar 15) we will ask you to tell us who your choice of partner(s), if any, is.
For HW 11 (Due Apr 5) we will ask you to decide what problem you have chosen. If you plan to invent your own problem rather than choosing one of our suggestions, we need you to contact us (in person or in writing) BEFORE Apr 5 with enough details so that we can provide you with guidance (so it's not too easy/quick, and also not a PhD thesis project!)
For HW 13 (Due Apr 19) we will ask you to write a brief "progress report" which should include at least some sample code and/or setup calculations, so we know you're getting started. If you have found some resource (a paper or book) which is guiding you, we want to know about it here.
Here is a SAMPLE PROGRESS REPORT we made for you to look at.
For HW 15 (Due May 3) we want the final product.
Here is a SAMPLE FINAL PROJECT WRITEUP we made for you to look at.
What's the scale of this project? We expect each group member to put in the kind of time we expect on a hard problem set - perhaps of order 10 hours. There will be more variability here than on homeworks - it's up to you, we'd like you to find something you're personally interested in so you'll want to play with it and spend some time on it!
Project suggestions: You are free to choose your own project, and we encourage that. But, it's VERY HARD to come up with a Goldilocks problem (not too easy, not too hard), so if you want to do this, talk/work with us in advance (see deadlines above) In any case, please read the following suggestions to give yourself some ideas about the scope of what we have in mind.
Warning: These are not "homework problems", I haven't solved them myself! They are starting ideas to give you an idea about what you might investigate. Some of these ideas may prove to be too much - and some might be too narrow and require some creative extensions on your part!
In all these projects, you must a) pick a physical system to investigate b) establish the basic (simple) equations you are solving (and most likely solve them analytically for some simple limiting case, so you can check your code later! c) Decide what exactly you want to solve for d) Solve for that thing numerically e) think of ways to check that your code is not outputing nonsense f) tell us what you have learned. Summarize the outcome in words!
- Coupled ODES. Remember back in Homework 2 when we had the coupled ODEs for Romeo and Juliet's love? How about solving those equations numerically, and investigating what happens for different starting conditions and different "personalities" (we touched on this in the homework, but only very qualitatively) This is a very rich system, part of the fun is thinking about how to represent your results. There are many different outcomes depending on the coupling constants and the starting conditions, lots to explore.
- If you found the Romeo and Juliet equations too contrived (it's not physics, after all) find another pair of coupled ODEs that represents a more realistic physical system (Like, predator/prey models, or models of laser populations. We can help you find examples if you're intereste.! Don't try to get too fancy - what's remarkable is the setup doesn't have to be complicated at all - look how simple the Romeo/Juliet equations were. Two coupled variables, even with fairly simple couplings, can lead to very rich behaviour.
- On this note, how about modeling the Zombie Apocalypse? (That's really just a predator/prey model, where you have two populations that depend on time, and each other, with certain interactions). Here the fun would be "modeling" the pair of differential equations. (Do humans ever have a fighting chance when you work out the math? What determines our survival?)
- Also related, but less whimsical, coupled oscillations. What does motion look like when you have not one but two simple harmonic oscillators that interact with one another by a simple force of your choice.What physical system are you thinking about? One example might be two pendulums that are side by side, and connected by a little spring. Turns out lots of realistic systems are a bit like this, and you will see problems of this nature in future classes!) Taylor Ch 11 can provide some background.
Also related - Simple Chaos: See Taylor Ch 12. Almost all physics is non-linear! So there are many systems that you might investigate here. For example, the Lorenz attractor is a very interesting model proposed for weather prediction, but is a simple set of 3 coupled ODEs. This model can describe the "The Chaotic Waterwheel" exactly.
- Or, you might consider modeling a simple electric circuit with a non-linear element (like a diode).
- Or, you might think bifurcations are really cool. How do we get qualitatively different behavior by just tweaking a single parameter?!
- Or, you might be interested in how systems transition to chaos. There's a great discussion of this in Steven Strogatz's textbook (on reserve in the library) and in many other places on the web.
For each of these topics, we are interested in your modeling some system which you can make sense of. Don't get too fancy; some simple systems are really interesting dynamics!
- Realistic projectile motion. Calculate the motion of baseballs (or, the projectile in your sport of choice!), accounting for realistic drag, spin, atmospheric conditions, whatever seems important in the real world... (E.g. you might want to look up the formula for the Magnus force which takes into account spinning of a ball) You would want to set up and discuss the model you are using (what are all the influences you are including? Why them and what are you still missing?), and decide what exactly you want to compute (range? trajectory? time of flight?)
You can't account for everything -your model is YOUR CHOICE, you can simplify, just defend the choice and work with it!
Or, instead of a sport, you could consider military projectiles - what new physics gets introduced when
the range is so far (and you're on a spherical, rotating earth, with an atmosphere that varies with height, ... Again, don't try to account for it all - pick something that seems important to you, and see what impact it has!)
In both of the above projects, we'd expect a calculation without the "extra effects", a discussion of the physics of the effect you're adding (with references if need be), and then some output. Play a little - what can you learn? There is a slight risk that this choice of project could prove too simple. (E.g., just adding drag to a projectile is something we've already done in homeworks - so, you'll have to push a little bit until you find the right balance of new physics to learn about and solve for!)
- Gravity and Kepler's laws. We tend to assume orbits are circular when solving them analytically, but in real life they are elliptical. Can you set up a code to investigate/verify Kepler's laws numerically? (This may be harder than it looks. What would you compute? How would you represent it?)
Or, what if the force is "central" but not 1/r^2? Can you find the orbital path for some other force law? (Do Kepler's laws still hold? Are the orbits "closed") ? Is this "make-believe" physics, or are you modeling a real system? You can make up a model for this project (even if it's not physical), just for the fun of investigating a "what if" problem (what if gravity dropped off like 1/r^3 instead of 1/r^2?) Just decide for yourself what you want to study and defend it.
- Gravity and the 3-body problem. We solve for orbits with 2 bodies, but what if there's a third body? This problem cannot be solved in general, but if you make some simplifying assumptions you can learn a lot (like, suppose two of the bodies are "fixed" in space, and the third is free to orbit, attracted gravitationally to both of the others. What would such orbits look like?)
-
Alternatively, could you make a model to compute gravity when the earth is not a perfect sphere, or not uniform? (See our website from the week we discussed gravity for more ideas about this!) What would you like to compute here? (Gravitational force? Potential energy? Contours? You decide!) I'm not sure how easy or hard this one will be, but if you're interested in geophysics, you might already know more about it than I do!
- Oscillations. We will be solving analytically for the motion of a harmonic oscillator including linear drag and even a time dependent driving force. But we're only doing it in 1D. What happens in 2D? (or 3D! In which case, maybe I would drop the driving force to keep the problem from getting too complex).
- Or, what if we stick to 1D, but the system is more realistic, like two atoms that interact with a real-world potential (see a Chemistry text for some examples, like the "Morse" potential or the "6-12" potential.
What can you study here? (The period as a function of starting distance? Or, motion as a function of time?) What might a chemist be interested in?
-
Or, what if you pick a more interesting driving force for a mass on a 1D spring than just a pure "sinusoid"? Is there any real physical system that this models that you might find interesting?
- Or, what if the spring is real? (massive, with damping, or a "not Hooke's law" force) Or, what if the 'oscillator' is a pendulum, not a spring? What if you added other aspects to the pendulum rod(like, finite mass)?
- Relativity - We solved for rocket motion back in Ch 3. What about special relativity? (If the rocket gets going REALLY fast, what's the motion like?) Only do this one if you feel pretty good about the relativity portion of Phys 2170, of course!
- Investigating numerical analysis for it's own sake: Remember the homework where you solved an ODE with the Euler-Cromer method? You could look up some more sophisticated method, and use that to solve some (nontrivial) ODE. Here the focus might not so much be on the physics model (you could keep that fairly simple), but on learning about how to make good robust numerical integration. (E.g. look up Verlet method, or Dorman-Prince, or Runge-Kutta, ....)
________________
GRADING:We will be looking for (and separately grading, with higher expectations in each category for larger groups)
1) PRESENTATION: You must write clearly in a way that we can read. Please use a spell checker, format your pages so it's readable, etc. Having a non-physics friend read your paper can really help improve it.
2) PHYSICS: A clear description of the physics/science of your problem. It doesn't need to be fancy, in fact, the simpler and clearer the better.
3) MODEL: A clear description of what your model is. This includes both mathematical aspects, but also (and most importantly) sensemaking. Explain the model, what do the parameters mean or tell us, what are the approximations, or limits of applicability?
4) PREDICTIONS/OUTCOMES: A clear description/presentation of the outcomes/predictions of your model. This can include "analytics" (calculations) and also probably plots or images of some kind, but you need to help the reader understand them. (When you are working on your code, you will have a very clear idea of what is being shown in a plot: but now you need to communicate that to us.)
5) SYNTHESIS: A summary of what you have learned. If you just write down some equations, do a computation, and present a plot, that's great, but what physics have you learned? This is really the crux and conclusion of your project. Synthesize your hard work.
6) REFERENCES: References are important - let us know what resources you used. If you got code from somewhere, you need to acknowledge that, and let us know what and how you made your own.
7) WORKING CODE: In the REPORT, we don't need much. It's tempting to swamp us with your code, but certainly we don't need to see all the bits you worked hard on that didn't get used. Perhaps a short appendix with the code that generated your plots would be sufficient.
However, we'd like you to separately upload the code (mathematica notebook, for example) separately. Don't forget to put your names at the top.
If you have any additional comments (e.g. if one person in the group didn't participate much) that you would like to share, you can do so privately or in an appendix.