PHYS 220, Spring 2008 — Course Outline
Week #1: 24–25 Jan 2008
Lab #0 Introduction to MATLAB, programming & the Noyes Lab
⊕ No HW this week
© Some codes from lecture: floatRep.m, powerpoint.m
Week #2: 28 Jan–1 Feb 2008
Lab #1
HW #1 (due 4 Feb)
© Some codes from lecture & lab: expDec.m, simpPend.m and simpPend2.m.
∇ Here is a link to Numerical Recipes in C, 2nd ed. in an on-line version. For this week (and beyond) you may find these sections highly useful as a reference: Ch. 16.0 Integrating ODEs, Ch. 16.1 Runge-Kutta Method (Euler is also described), and a more advanced section on adaptive stepsize for ODE solvers in Ch. 16.2.
Week #3: 4–8 Feb 2008
Lab #2 (part I, we'll continue next week)
HW #2 (due 11 Feb)
∇ A great way to learn more about programming languages is to take someone else's code and play with it, modifying parts, seeing what works, what doesn't — the "how & why" of things. You should play with the codes below if you're having trouble getting going with the labs and/or homework.
© Some codes from lecture: odeStep_euler.m, genericEuler.m, hookeLaw.m, hookeLaw_example.m
Week #4: 11–15 Feb 2008
Lab #2 (part II, we'll conclude here)
HW #3 (due 18 Feb)
© Some more potentially useful codes from lecture: odeStep_midPt.m (rk2 function), odeStep_rk4.m, genericODE.m (slightly more complex, allows for a change of ode method as another function handle)
® Here are some example codes for Lab #2, in particular, the solution to problems 5-7, including the automatic search for the angle that gives the same range as 35° (double, nested while loop): artyShell_1.m the derivative function, fireArty_Lab2_5_7.m the wrapper script that accomplishes the task & calls the ode integrator, fireArty_Lab2_5_7errors.m the code that arrives at an estimate of errors in the problem. This code interpImpact.m does a linear interpolation between the last positive and first negative elevation points to find the horizontal distance at which y = 0 was obtained.
Week #5: 18–22 Feb 2008
Lab #3
HW #4 (due 25 Feb)
© Some more potentially useful codes from lecture: lyapPlot.m for crude estimation of Lyapunov estimates, and deModTh.m for ensuring θ ∈ [-π,&pi);
Week #6: 25–28 Feb 2008
Lab #4, (due 3 Mar)
HW #5 (due 7 Mar)
© Some more potentially useful codes from lecture: logParab.m and logParabBifurc.m for investigating the logistic map
Week #7: 3–7 Mar 2008
Project proposals due 5 Mar; to help you here are a list of potential projects. You'll note they all involve ODEs, what you've studied thus far. If you want to branch out to another topic we'll cover later, feel free to be bold.
Lab #5
⊕ no HW this week
Spring Break: 10–14 Mar 2008
Week #8: 17–21 Mar 2008
¤ Brief review for mid-term exam on Wednesday
Lab #6a
⊕ No HW this week
Mid-Term Examination (in class, 19 Mar)
© Some more potentially useful codes from lecture: each of these solves Laplace's eqn. for an infinite capacitor in two different ways. Both were shown to you in class as examples of PDE solution techniques via the relaxation (Jacobi) method. The first is a pair of codes for non-periodic boundary conditions (see §5.1 in your text): laplaceStepJacobi.m takes a single Jacobi step, and capacitorDemo.m runs the stepper; for periodic boundary conditions, the codes are only slightly modified as laplaceStepJacobiPBC.m and capacitorDemo2.m; here's code for replicating Fig. 5.13 in the text, integrating the Biot-Savart Law for a straight wire carrying current
Week #9: 24–28 Mar 2008
© Some more potentially useful codes from lecture: here's the current loop integration code you'll need for Lab #6b.
Lab #6b
HW #6 (due 2 Apr)
Week #10: 31 Mar–4 Apr 2008
© Some more potentially useful codes from lecture: these codes will allow you to visualize a unit-length random walk in 1D (randomWalk.m & twoWalks.m)
∅ Project Work Session Lab (no meeting, work/research on semester projects
HW #7 (due 9 Apr): Write your own code, or modify my fixed-string codes (stringFixed.m & pluckGuitar.m) or free/fixed string codes (stringFreeFixed.m & pluckFreeString.m), to plot the first 2 modes of vibration for each system (standing waves). Send me your code & I should be able to run them on my machine to verify your results.
Week #11: 7–11 Apr 2008
⊕ No HW this week
© Solution for HW #6. Solutions for HW #7: fixed & fixed-free.
Lab #7
Week #12: 14–17 Apr 2008
Lab #8
HW #8 (due 25 Apr via email); solution is posted here
⊄ No lecture 18 Apr, Spring Fest
Week #13: 21–25 Apr 2008
⊗ Possible guest lecture on Monday (if not, we'll make up later). No class session on Friday.
∅ No Lab this week, but class sessions w/ Prof. Newman Wednesday (normal meeting time/place); Thursday 10-11am in Noyes Lab.
Week #14: 28 Apr–2 May 2008
∅ Project Presentations in lieu of Lab
⊕ No HW this week.
Week #15: 5 & 9 May 2008
¥ Plot function for the final. This function requires 3 inputs: the wavefunction ψ, the position vector x and the parity state. Note that ψ must cover the following: [ψ-1 ψ0 ψ1 ψ2 ...]; and x = [0 Δx 2Δx ... L L+Δx ...], since x must go beyond L. For the problem in the final you'll be using L = 1, as well as normalized units such that h/2π = 1 (that's "h-bar"), m = 1 and A = 1.
¤ Final Exam (Part I) is posted here.
∅ No Lab this week.
⊕ No HW this week. Projects due at final exam.
Final Examination (Part II) (in classroom, 1-3pm, 9 May)