more feedback margreet
I have a bit more feedback:
I'm used to numpy, and try to use it instead of math. I noticed -1**0.5 works, while np.sqrt(-1) gives an error (assignment 1) for the terminal velocity function (assignment 2), I would place the constant in the function instead of outside. what do you recommend the students? with the x,y to r,phi (assignment 2): you could also input x,y in one line. Do you want your students to do that? x,y=-1,1 x,y= input('give x,y coordinates (separated by a comma): ' ).split(',') assignment 3, first part: I would advertise using brackets around (not True) for better overview
In notebook 4 you say row and array vectors are the same. But with for example numpy.zeros(A,B) you can get a row or column vector which are differently addressed. I noticed when making the Fibonacci sequence. Do you want to address, or skip this for now?
fi=np.zeros((1,22))
fi[0,0:2]=[1,1]
for ii in range(20):
fi[0,ii+2]=fi[0,ii]+fi[0,ii+1]
print(fi[0,-1])
fi=np.zeros((22,1))
fi[0]=1;
fi[1]=1;
fi[0:2]=[[1],[1]]
for ii in range(20):
fi[ii+2]=fi[ii]+fi[ii+1]
print(fi[-1])
In notebook exercise 4.3 I'm not sure whether I would call the students nerds (maybe it is ok for physics students). I would call them additional (not mandatory) challenges
In notebook 4, 1.4 you show an impressive speed difference between build in functions. BTW using np.sum(a)/len(a) is even a few ms faster(?!). Just below you show vectorization, but unless you click the link and find out vectorization means use arrays to speed up, you miss the point of showing the intermediate steps.
In notebook5,exercise 5.3: previously you loaded v_vs_time.dat and exercise_data.dat, now you ask to compare to example.dat (which I don't have). I think you mean v_vs_time intead of example.dat.
In notebook 5, section 1.3.3 you could ask to fit the t2,v2 curve again with different initial estimators (to reinforce the importance of a good initial estimator).