%23%20%2F%2F%2F%20script%0A%23%20requires-python%20%3D%20%22%3E%3D3.11%22%0A%23%20dependencies%20%3D%20%5B%22marimo%3E%3D0.23.9%22%2C%20%22numpy%3E%3D2.0%22%2C%20%22matplotlib%3E%3D3.9%22%2C%20%22sympy%3E%3D1.13%22%5D%0A%23%20%2F%2F%2F%0A%0Aimport%20marimo%0A%0A__generated_with%20%3D%20%220.25.2%22%0Aapp%20%3D%20marimo.App(width%3D%22medium%22)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%20Kinematics%20of%20a%20particle%0A%0A%20%20%20%20%3E%20Marcos%20Duarte%2C%20Renato%20Naville%20Watanabe%3Cbr%3E%0A%20%20%20%20%3E%20%5BLaboratory%20of%20Biomechanics%20and%20Motor%20Control%5D(https%3A%2F%2Fbmclab.pesquisa.ufabc.edu.br%2F)%3Cbr%3E%0A%20%20%20%20%3E%20Federal%20University%20of%20ABC%2C%20Brazil%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20How%20to%20use%20this%20guide%0A%0A%20%20%20%20This%20notebook%20builds%20the%20vocabulary%20of%20kinematics%20%E2%80%94%20position%2C%20displacement%2C%20velocity%2C%20acceleration%20%E2%80%94%20and%20then%20spends%20that%20vocabulary%20on%20a%20real%20measurement%3A%20the%20fastest%20100%20m%20ever%20run%20by%20a%20human.%0A%0A%20%20%20%20Read%20it%20in%20order%20and%20run%20each%20cell%20as%20you%20reach%20it.%20Where%20you%20find%20a%20**Challenge**%20or%20a%20set%20of%20**Guiding%20questions**%2C%20stop%20and%20answer%20on%20a%20scratchpad%20before%20moving%20on.%20Several%20of%20them%20ask%20you%20to%20predict%20a%20number%20*before*%20the%20code%20prints%20it%3B%20the%20prediction%20is%20the%20point%2C%20and%20getting%20it%20wrong%20is%20the%20most%20useful%20thing%20that%20can%20happen%20to%20you%20here.%0A%0A%20%20%20%20The%20mathematics%20is%20deliberately%20plain.%20Everything%20in%20the%20first%20half%20is%20one%20idea%20applied%20twice%3A%20velocity%20is%20how%20fast%20position%20changes%2C%20and%20acceleration%20is%20how%20fast%20velocity%20changes.%20Almost%20all%20the%20difficulty%20in%20real%20biomechanics%20comes%20not%20from%20those%20definitions%20but%20from%20measuring%20them%20well.%0A%0A%20%20%20%20**Challenge%200.**%20Before%20you%20begin%2C%20name%20one%20movement%20whose%20*speed*%20you%20would%20like%20to%20know%3A%20a%20sprint%2C%20a%20bicycle%20kick%2C%20a%20reaching%20movement%2C%20a%20car%2C%20an%20animal.%20Write%20down%20how%20you%20would%20measure%20it%20with%20the%20equipment%20you%20actually%20have.%20Keep%20it%20nearby%3B%20the%20last%20section%20asks%20you%20to%20come%20back%20to%20it.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20A%20measurement%20worth%20understanding%0A%0A%20%20%20%20Here%20is%20a%20plot%20of%20Usain%20Bolt's%20world-record%20100%20m%20final%20in%20Berlin%2C%202009%2C%20measured%20with%20a%20laser%20radar.%20The%20horizontal%20axis%20is%20where%20he%20was%20on%20the%20track%3B%20the%20vertical%20axis%20is%20how%20fast%20he%20was%20moving%20at%20that%20place.%0A%0A%20%20%20%20%3Cdiv%20style%3D%22background-color%3A%23F1F1F1%3Bborder%3A1px%20solid%20black%3Bpadding%3A10px%3B%22%3E%0A%20%20%20%20%20%20%20%20%3Cfigure%20aria-describedby%3D%22figure-caption-1%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fgithub.com%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fimages%2Fusain_bolt_berlin2009.png%3Fraw%3D1%22%20width%3D700%20alt%3D%22Momentary%20velocity%20vs%20location%20for%20Usain%20Bolt%22%2F%3E%3C%2Ffigure%3E%0A%20%20%20%20%20%3C%2Fdiv%3E%0A%0A%20%20%20%20%3Cspan%20id%3D%22figure-caption-1%22%20class%3D%22figure-caption%22%20style%3D%22display%3Ablock%3Btext-align%3Acenter%3Bfont-style%3Aitalic%22%3E%3Cbr%3E%3Cb%3EFigure.%20Momentary%20velocity%20vs%20location%20for%20Usain%20Bolt%20in%20the%20men's%20100%20m%20final%20at%20the%20IAAF%20World%20Championships%20in%20Athletics%2C%20Berlin%202009.%20This%20measurement%20represents%20the%20velocity%20of%20the%20body%20(considered%20as%20a%20particle)%20and%20was%20measured%20with%20a%20laser%20radar.%20From%20%3Ca%20href%3D%22http%3A%2F%2Fwww.meathathletics.ie%2Fdevathletes%2Fpdf%2FBiomechanics%2520of%2520Sprints.pdf%22%3EGraubner%20and%20Nixdorf%20(2011)%3C%2Fa%3E.%3C%2Fb%3E%3C%2Fspan%3E%0A%0A%20%20%20%20Look%20at%20it%20for%20a%20moment%20before%20reading%20on.%20A%20few%20things%20in%20that%20curve%20are%20worth%20noticing%2C%20and%20each%20one%20is%20a%20kinematic%20statement%3A%0A%0A%20%20%20%20-%20The%20velocity%20is%20not%20constant.%20He%20is%20still%20accelerating%20well%20past%20the%20halfway%20mark.%0A%20%20%20%20-%20The%20velocity%20peaks%20somewhere%20around%2060%E2%80%9370%20m%20and%20then%20*falls*.%20The%20fastest%20human%20on%20record%20was%20slowing%20down%20when%20he%20crossed%20the%20line.%0A%20%20%20%20-%20The%20curve%20is%20smooth%2C%20and%20its%20steepness%20at%20each%20point%20is%20itself%20a%20meaningful%20quantity.%0A%0A%20%20%20%20By%20the%20end%20of%20this%20notebook%20you%20will%20have%20reconstructed%20a%20coarse%20version%20of%20this%20plot%20yourself%2C%20from%20nothing%20but%20the%20ten%20split%20times%20published%20for%20that%20race.%0A%0A%20%20%20%20**Guiding%20questions%200.**%0A%0A%20%20%20%201.%20The%20vertical%20axis%20is%20velocity%20and%20the%20horizontal%20axis%20is%20position%20%E2%80%94%20not%20time.%20Is%20this%20a%20graph%20you%20could%20read%20off%20a%20stopwatch%3F%0A%20%20%20%202.%20Roughly%20what%20is%20his%20top%20speed%2C%20in%20m%2Fs%3F%20Convert%20it%20to%20km%2Fh.%20Does%20the%20number%20surprise%20you%3F%0A%20%20%20%203.%20If%20he%20is%20slowing%20down%20over%20the%20last%2030%20m%2C%20why%20does%20nobody%20coach%20sprinters%20to%20%22just%20keep%20accelerating%22%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Python%20setup%0A%0A%20%20%20%20Two%20libraries%20carry%20most%20of%20this%20notebook%3A%20NumPy%20for%20the%20numbers%20and%20Matplotlib%20for%20the%20plots.%20We%20will%20add%20SymPy%20later%2C%20when%20we%20let%20the%20computer%20do%20the%20calculus%20for%20us.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20import%20matplotlib%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%0A%20%20%20%20matplotlib.rc(%22axes%22%2C%20labelsize%3D13%2C%20titlesize%3D14)%0A%20%20%20%20matplotlib.rc(%22xtick%22%2C%20labelsize%3D11)%0A%20%20%20%20matplotlib.rc(%22ytick%22%2C%20labelsize%3D11)%0A%20%20%20%20matplotlib.rc(%22legend%22%2C%20fontsize%3D11)%0A%20%20%20%20return%20np%2C%20plt%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Why%20mechanics%2C%20and%20why%20kinematics%20first%0A%0A%20%20%20%20**A%20good%20knowledge%20of%20mechanics%20is%20a%20necessary%20condition%2C%20although%20not%20a%20sufficient%20one%2C%20to%20master%20biomechanics.**%20For%20that%20reason%20we%20will%20review%20the%20principles%20of%20classical%20mechanics%20in%20the%20context%20of%20biomechanics%20rather%20than%20assume%20them.%0A%0A%20%20%20%20As%20argued%20in%20the%20notebook%20%5BIntroduction%20to%20Biomechanics%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fbiomechanics.py)%2C%20we%20begin%20with%20the%20branch%20of%20classical%20mechanics%20whose%20quantities%20are%20easiest%20to%20measure%20on%20a%20living%20system%3A%20kinematics.%20You%20can%20film%20someone%20sprinting%20with%20a%20phone.%20Measuring%20the%20force%20in%20their%20Achilles%20tendon%20while%20they%20do%20it%20is%20an%20entirely%20different%20undertaking.%20That%20asymmetry%20is%20why%20nearly%20every%20biomechanics%20curriculum%2C%20and%20this%20collection%2C%20starts%20here.%0A%0A%20%20%20%20There%20are%20relevant%20cases%20in%20the%20study%20of%20human%20movement%20where%20modeling%20the%20whole%20body%2C%20or%20one%20of%20its%20segments%2C%20as%20a%20*particle*%20is%20all%20you%20need.%20Performance%20in%20the%20100%20m%20race%20is%20one.%20The%20spatial%20and%20temporal%20description%20of%20a%20movement%20pattern%20is%20another.%20So%20is%20the%20minimum-jerk%20conjecture%20about%20how%20voluntary%20movements%20are%20planned.%0A%0A%20%20%20%20The%20book%20%5B*Introduction%20to%20Statics%20and%20Dynamics*%5D(https%3A%2F%2Fruina.tam.cornell.edu%2FBook%2Findex.html)%2C%20by%20Andy%20Ruina%20and%20Rudra%20Pratap%2C%20is%20an%20excellent%20reference%20%E2%80%94%20rigorous%20and%20yet%20didactic%20%E2%80%94%20and%20freely%20available.%20Most%20of%20the%20content%20of%20this%20notebook%20is%20covered%20in%20its%20chapter%2012%2C%20and%20in%20chapter%201%20of%20Rade's%20book.%20Its%20preface%20and%20first%20chapter%20are%20a%20genuinely%20good%20read%20on%20*how*%20to%20study%20mechanics%3B%20do%20read%20them.%0A%0A%20%20%20%20**Guiding%20questions%201.**%0A%0A%20%20%20%201.%20For%20the%20movement%20you%20chose%20in%20Challenge%200%2C%20which%20is%20easier%20to%20obtain%3A%20its%20motion%2C%20or%20the%20forces%20that%20caused%20the%20motion%3F%0A%20%20%20%202.%20Would%20treating%20the%20moving%20body%20as%20a%20single%20point%20throw%20away%20something%20you%20care%20about%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Kinematics%0A%0A%20%20%20%20**Kinematics**%20is%20the%20branch%20of%20classical%20mechanics%20that%20describes%20the%20motion%20of%20objects%20without%20consideration%20of%20the%20causes%20of%20motion%20(%5BWikipedia%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FKinematics)).%20Kinematics%20of%20a%20particle%20is%20that%20description%20when%20the%20object%20is%20treated%20as%20a%20particle.%0A%0A%20%20%20%20A%20particle%2C%20as%20a%20physical%20object%2C%20does%20not%20exist%20in%20nature.%20It%20is%20either%20a%20simplification%20adopted%20to%20understand%20the%20motion%20of%20a%20body%2C%20or%20a%20conceptual%20definition%20such%20as%20the%20center%20of%20mass%20of%20a%20system%20of%20objects.%20Bolt%20is%20not%20a%20particle%3A%20his%20arms%20swing%2C%20his%20trunk%20rotates%2C%20his%20foot%20strikes%20the%20ground.%20But%20the%20laser%20radar%20in%20the%20figure%20above%20tracked%20essentially%20one%20point%20on%20his%20body%2C%20and%20for%20the%20question%20*how%20fast%20did%20he%20run*%20that%20was%20enough.%0A%0A%20%20%20%20This%20is%20the%20first%20modeling%20decision%20of%20biomechanics%2C%20and%20it%20is%20made%20silently%20far%20too%20often%3A%20**deciding%20what%20you%20are%20willing%20to%20ignore**.%0A%0A%20%20%20%20**Challenge%201.**%20Give%20one%20question%20about%20sprinting%20that%20the%20particle%20model%20can%20answer%2C%20and%20one%20it%20cannot.%20For%20the%20second%2C%20what%20would%20you%20have%20to%20add%20to%20the%20model%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Scalars%20and%20vectors%0A%0A%20%20%20%20Some%20mechanical%20quantities%20in%20kinematics%20%E2%80%94%20position%20and%20its%20derivatives%20%E2%80%94%20are%20vectors.%20Others%2C%20such%20as%20time%20and%20distance%2C%20are%20scalars.%0A%0A%20%20%20%20A%20**vector**%20in%20mechanics%20is%20a%20physical%20quantity%20with%20magnitude%20*and*%20direction%2C%20which%20also%20satisfies%20some%20elementary%20vector%20arithmetic.%20A%20**scalar**%20is%20fully%20expressed%20by%20a%20magnitude%2C%20a%20number%2C%20alone.%0A%0A%20%20%20%20The%20distinction%20is%20not%20pedantry.%20%22He%20moved%20100%20m%22%20and%20%22he%20moved%20100%20m%20north%22%20are%20different%20claims%2C%20and%20only%20one%20of%20them%20lets%20you%20say%20where%20he%20ended%20up.%0A%0A%20%20%20%20For%20a%20review%20of%20scalars%20and%20vectors%2C%20see%20chapter%201%20of%20%5BRuina%20and%20Pratap's%20book%5D(https%3A%2F%2Fruina.tam.cornell.edu%2FBook%2Findex.html).%20For%20how%20to%20work%20with%20them%20in%20Python%2C%20see%20the%20notebook%20%5BScalar%20and%20vector%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fscalar_vector.py).%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Position%0A%0A%20%20%20%20Consider%20a%20point%20in%20the%20three-dimensional%20Euclidean%20space%2C%20described%20in%20a%20Cartesian%20coordinate%20system.%20See%20the%20notebook%20%5BFrame%20of%20reference%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Freference_frame.py)%20for%20an%20introduction%20to%20coordinate%20systems%20in%20mechanics%20and%20biomechanics.%0A%0A%20%20%20%20%3Cfigure%20aria-describedby%3D%22figure-caption-2%22%3E%3Ccenter%3E%3Cimg%20src%3D%22https%3A%2F%2Fgithub.com%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fimages%2Fvector3Dijk.png%3Fraw%3D1%22%20width%3D350%20alt%3D%22Position%20vector%20in%20a%20Cartesian%20coordinate%20system%22%2F%3E%3C%2Fcenter%3E%3C%2Ffigure%3E%0A%0A%20%20%20%20%3Cspan%20id%3D%22figure-caption-2%22%20class%3D%22figure-caption%22%20style%3D%22display%3Ablock%3Btext-align%3Acenter%3Bfont-style%3Aitalic%22%3EFigure.%20Representation%20of%20a%20point%20%24%5Cmathbf%7BP%7D%24%20and%20its%20position%20vector%20%24%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D%24%20in%20a%20Cartesian%20coordinate%20system.%20The%20versors%20%24%5Chat%7B%5Cmathbf%7Bi%7D%7D%2C%5C%2C%20%5Chat%7B%5Cmathbf%7Bj%7D%7D%2C%5C%2C%20%5Chat%7B%5Cmathbf%7Bk%7D%7D%24%20form%20a%20basis%20for%20this%20coordinate%20system%20and%20are%20usually%20represented%20in%20the%20color%20sequence%20RGB%20(red%2C%20green%2C%20blue)%20for%20easier%20visualization.%3C%2Fspan%3E%0A%0A%20%20%20%20The%20position%20of%20this%20point%20can%20be%20written%20as%20a%20triple%20of%20values%2C%20each%20the%20coordinate%20along%20one%20axis%2C%20following%20the%20%24%5Cmathbf%7BX%2C%20Y%2C%20Z%7D%24%20convention%20order%2C%20which%20is%20then%20omitted%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20(x%2C%5C%2C%20y%2C%5C%2C%20z).%0A%20%20%20%20%24%24%0A%0A%20%20%20%20It%20can%20also%20be%20represented%20by%20a%20**vector**%20with%20its%20origin%20at%20the%20origin%20of%20the%20coordinate%20system%20and%20its%20tip%20at%20the%20point%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D%20%3D%20x%5C%2C%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%2B%20y%5C%2C%5Chat%7B%5Cmathbf%7Bj%7D%7D%20%2B%20z%5C%2C%5Chat%7B%5Cmathbf%7Bk%7D%7D%2C%0A%20%20%20%20%24%24%0A%0A%20%20%20%20where%20%24%5Chat%7B%5Cmathbf%7Bi%7D%7D%2C%5C%2C%20%5Chat%7B%5Cmathbf%7Bj%7D%7D%2C%5C%2C%20%5Chat%7B%5Cmathbf%7Bk%7D%7D%24%20are%20unit%20vectors%20along%20the%20axes%20%24%5Cmathbf%7BX%2C%20Y%2C%20Z%7D%24.%0A%0A%20%20%20%20A%20particle%20that%20moves%20has%20coordinates%20that%20change%20with%20time%2C%20so%20its%20position%20vector%20is%20a%20function%20of%20time%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20x(t)%5C%2C%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%2B%20y(t)%5C%2C%5Chat%7B%5Cmathbf%7Bj%7D%7D%20%2B%20z(t)%5C%2C%5Chat%7B%5Cmathbf%7Bk%7D%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20The%20same%20vector%20in%20matrix%20form%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%0A%20%20%20%20%5Cbegin%7Bbmatrix%7D%20x(t)%20%5C%5C%20y(t)%20%5C%5C%20z(t)%20%5Cend%7Bbmatrix%7D%2C%0A%20%20%20%20%24%24%0A%0A%20%20%20%20and%20the%20unit%20vectors%20of%20each%20Cartesian%20coordinate%2C%20likewise%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%3D%20%5Cbegin%7Bbmatrix%7D%201%20%5C%5C%200%20%5C%5C%200%20%5Cend%7Bbmatrix%7D%2C%20%5Cquad%0A%20%20%20%20%5Chat%7B%5Cmathbf%7Bj%7D%7D%20%3D%20%5Cbegin%7Bbmatrix%7D%200%20%5C%5C%201%20%5C%5C%200%20%5Cend%7Bbmatrix%7D%2C%20%5Cquad%0A%20%20%20%20%5Chat%7B%5Cmathbf%7Bk%7D%7D%20%3D%20%5Cbegin%7Bbmatrix%7D%200%20%5C%5C%200%20%5C%5C%201%20%5Cend%7Bbmatrix%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20**Guiding%20questions%202.**%0A%0A%20%20%20%201.%20A%20position%20is%20always%20measured%20*relative%20to%20something*.%20What%20is%20the%20position%20of%20Bolt's%20center%20of%20mass%20relative%20to%20the%20starting%20blocks%2C%20and%20what%20is%20it%20relative%20to%20the%20Earth's%20center%3F%0A%20%20%20%202.%20Which%20of%20those%20two%20would%20you%20use%20to%20describe%20the%20race%2C%20and%20why%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20A%20basis%0A%0A%20%20%20%20In%20%5Blinear%20algebra%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLinear_algebra)%2C%20a%20set%20of%20linearly%20independent%20unit%20vectors%20such%20as%20the%20three%20above%20%E2%80%94%20orthogonal%2C%20in%20the%20Euclidean%20space%20%E2%80%94%20able%20to%20represent%20any%20vector%20through%20a%20%5Blinear%20combination%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLinear_combination)%2C%20is%20called%20a%20**basis**.%0A%0A%20%20%20%20A%20basis%20is%20the%20foundation%20of%20a%20frame%20of%20reference%2C%20and%20building%20frames%20of%20reference%20well%20is%20most%20of%20the%20practical%20work%20in%20three-dimensional%20motion%20analysis.%20We%20will%20come%20back%20to%20it%20in%20its%20own%20notebook.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Displacement%0A%0A%20%20%20%20**Displacement**%20is%20the%20shortest%20distance%20between%20two%20positions%20of%20a%20particle.%20Being%20the%20difference%20between%20two%20vectors%2C%20it%20is%20itself%20a%20vector%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bd%7D%7D%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_2%20-%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_1.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20%3Cfigure%20aria-describedby%3D%22figure-caption-3%22%3E%3Ccenter%3E%3Cimg%20src%3D%22https%3A%2F%2Fgithub.com%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fimages%2Fdisplacement.png%3Fraw%3D1%22%20width%3D450%20alt%3D%22Displacement%20between%20two%20positions%22%2F%3E%3C%2Fcenter%3E%3C%2Ffigure%3E%0A%0A%20%20%20%20%3Cspan%20id%3D%22figure-caption-3%22%20class%3D%22figure-caption%22%20style%3D%22display%3Ablock%3Btext-align%3Acenter%3Bfont-style%3Aitalic%22%3EFigure.%20Representation%20of%20the%20displacement%20vector%20%24%5Coverrightarrow%7B%5Cmathbf%7Bd%7D%7D%24%20between%20two%20positions%20%24%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_1%24%20and%20%24%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_2%24.%3C%2Fspan%3E%0A%0A%20%20%20%20Displacement%20is%20not%20the%20same%20thing%20as%20the%20distance%20traveled.%20Distance%20is%20a%20scalar%20and%20accumulates%20along%20the%20whole%20path%3B%20displacement%20only%20cares%20about%20the%20endpoints.%0A%0A%20%20%20%20**Challenge%202.**%20A%20100%20m%20sprinter%20and%20a%20400%20m%20runner%20both%20finish%20their%20race%20on%20the%20same%20track.%0A%0A%20%20%20%201.%20What%20distance%20did%20each%20one%20travel%3F%0A%20%20%20%202.%20What%20was%20the%20magnitude%20of%20each%20one's%20displacement%3F%20(An%20Olympic%20track%20is%20400%20m%20around.)%0A%20%20%20%203.%20What%20was%20the%20*average%20velocity*%20of%20the%20400%20m%20runner%20over%20the%20whole%20race%2C%20using%20the%20definition%20in%20the%20next%20section%3F%20Does%20that%20number%20describe%20the%20race%20usefully%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**Exercise%201.**%20A%20walker%20goes%203%20m%20east%20and%203%20m%20west%20in%204%20s.%20Find%20average%20velocity%20and%20average%20speed.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Worked%20solution%20%E2%80%94%20Exercise%201%0A%0A%20%20%20%20Displacement%20is%20zero%2C%20so%20average%20velocity%20is%20zero.%20Distance%20is%206%20m%2C%20so%20average%20speed%20is%20%246%2F4%3D1.5%24%20m%2Fs.%20The%20distinction%20remains%20even%20with%20perfect%20measurements.%0A%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Velocity%0A%0A%20%20%20%20**Velocity**%20is%20the%20rate%20of%20change%2C%20with%20respect%20to%20time%2C%20of%20the%20position%20of%20a%20particle.%0A%0A%20%20%20%20The%20average%20velocity%20between%20two%20instants%20is%20the%20displacement%20divided%20by%20the%20elapsed%20time%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t_2)-%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t_1)%7D%7Bt_2-t_1%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5CDelta%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D%7D%7B%5CDelta%20t%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20The%20instantaneous%20velocity%20is%20what%20this%20becomes%20as%20%24%5CDelta%20t%24%20approaches%20zero%2C%20which%20from%20calculus%20is%20the%20first-order%20%5Bderivative%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FDerivative)%20of%20the%20position%20vector%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%0A%20%20%20%20%5Clim_%7B%5CDelta%20t%20%5Cto%200%7D%20%5Cfrac%7B%5CDelta%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D%7D%7B%5CDelta%20t%7D%20%3D%0A%20%20%20%20%5Clim_%7B%5CDelta%20t%20%5Cto%200%7D%20%5Cfrac%7B%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t%2B%5CDelta%20t)-%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%7D%7B%5CDelta%20t%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D%7D%7B%5Cmathrm%7Bd%7Dt%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20For%20motion%20described%20with%20respect%20to%20an%20%5Binertial%20frame%20of%20reference%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Freference_frame.py)%2C%20the%20derivative%20of%20a%20vector%20is%20obtained%20by%20differentiating%20each%20of%20its%20Cartesian%20components%2C%20because%20the%20base%20versors%20%24%5Chat%7B%5Cmathbf%7Bi%7D%7D%2C%20%5Chat%7B%5Cmathbf%7Bj%7D%7D%2C%20%5Chat%7B%5Cmathbf%7Bk%7D%7D%24%20are%20constant%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%7D%7B%5Cmathrm%7Bd%7Dt%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7Dx(t)%7D%7B%5Cmathrm%7Bd%7Dt%7D%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%2B%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7Dy(t)%7D%7B%5Cmathrm%7Bd%7Dt%7D%5Chat%7B%5Cmathbf%7Bj%7D%7D%20%2B%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7Dz(t)%7D%7B%5Cmathrm%7Bd%7Dt%7D%5Chat%7B%5Cmathbf%7Bk%7D%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20Or%20in%20matrix%20form%2C%20using%20Newton's%20dot%20notation%20for%20differentiation%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%0A%20%20%20%20%5Cbegin%7Bbmatrix%7D%20%5Cdot%20x(t)%20%5C%5C%20%5Cdot%20y(t)%20%5C%5C%20%5Cdot%20z(t)%20%5Cend%7Bbmatrix%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20Note%20the%20word%20*average*%20is%20doing%20real%20work%20in%20the%20first%20equation.%20In%20a%20measured%20sprint%20you%20never%20get%20the%20instantaneous%20velocity%20directly%3B%20you%20get%20positions%20at%20instants%2C%20and%20every%20velocity%20you%20compute%20is%20an%20average%20over%20some%20interval.%20The%20whole%20art%20is%20choosing%20that%20interval.%0A%0A%20%20%20%20**Guiding%20questions%203.**%0A%0A%20%20%20%201.%20Bolt%20covered%20100%20m%20in%209.58%20s.%20What%20was%20his%20average%20velocity%3F%20Look%20back%20at%20the%20figure%20at%20the%20top%3A%20at%20how%20many%20places%20on%20the%20track%20was%20he%20*actually*%20moving%20at%20that%20speed%3F%0A%20%20%20%202.%20Speed%20is%20the%20magnitude%20of%20velocity%20%E2%80%94%20a%20scalar.%20Can%20a%20particle%20have%20a%20constant%20speed%20and%20a%20changing%20velocity%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**Exercise%202.**%20For%20%24x(t)%3Dt%5E3%24%20m%20with%20time%20in%20seconds%2C%20estimate%20velocity%20at%20%24t%3D1%24%20using%20a%20forward%20difference%20with%20%24h%3D0.1%24%20s%20and%20a%20centered%20difference.%20Compare%20with%20the%20derivative.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Worked%20solution%20%E2%80%94%20Exercise%202%0A%0A%20%20%20%20The%20exact%20derivative%20is%20%243t%5E2%3D3%24%20m%2Fs.%20Forward%20difference%20gives%20%24(1.1%5E3-1)%2F0.1%3D3.31%24%20m%2Fs%3B%20centered%20difference%20gives%20%24(1.1%5E3-0.9%5E3)%2F0.2%3D3.01%24%20m%2Fs.%20Centering%20removes%20the%20first-order%20truncation%20term.%0A%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Acceleration%0A%0A%20%20%20%20**Acceleration**%20is%20the%20rate%20of%20change%2C%20with%20respect%20to%20time%2C%20of%20the%20velocity%20of%20a%20particle%20%E2%80%94%20equivalently%2C%20the%20second-order%20rate%20of%20change%20of%20its%20position.%0A%0A%20%20%20%20The%20average%20acceleration%20between%20two%20instants%20is%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t_2)-%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t_1)%7D%7Bt_2-t_1%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5CDelta%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D%7D%7B%5CDelta%20t%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20And%20the%20instantaneous%20acceleration%20is%20the%20first-order%20derivative%20of%20velocity%2C%20or%20the%20second-order%20derivative%20of%20position%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%20%3D%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%7D%7B%5Cmathrm%7Bd%7Dt%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5E2%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%7D%7B%5Cmathrm%7Bd%7Dt%5E2%7D%20%3D%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5E2x(t)%7D%7B%5Cmathrm%7Bd%7Dt%5E2%7D%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%2B%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5E2y(t)%7D%7B%5Cmathrm%7Bd%7Dt%5E2%7D%5Chat%7B%5Cmathbf%7Bj%7D%7D%20%2B%0A%20%20%20%20%5Cfrac%7B%5Cmathrm%7Bd%7D%5E2z(t)%7D%7B%5Cmathrm%7Bd%7Dt%5E2%7D%5Chat%7B%5Cmathbf%7Bk%7D%7D%2C%0A%20%20%20%20%24%24%0A%0A%20%20%20%20in%20matrix%20form%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%20%3D%0A%20%20%20%20%5Cbegin%7Bbmatrix%7D%20%5Cddot%20x(t)%20%5C%5C%20%5Cddot%20y(t)%20%5C%5C%20%5Cddot%20z(t)%20%5Cend%7Bbmatrix%7D.%0A%20%20%20%20%24%24%0A%0A%20%20%20%20Two%20remarks%20worth%20carrying%20with%20you.%0A%0A%20%20%20%20Out%20of%20curiosity%2C%20see%20%5BNotation%20for%20differentiation%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FNotation_for_differentiation)%20on%20where%20the%20different%20notations%20came%20from%3B%20you%20will%20meet%20all%20of%20them%20in%20the%20literature.%0A%0A%20%20%20%20More%20consequentially%3A%20when%20the%20base%20versors%20themselves%20change%20in%20time%20%E2%80%94%20for%20instance%20when%20the%20basis%20is%20attached%20to%20a%20rotating%20frame%20of%20reference%20%E2%80%94%20the%20components%20of%20a%20vector's%20derivative%20are%20**not**%20simply%20the%20derivatives%20of%20its%20components.%20The%20derivative%20of%20the%20basis%20has%20to%20be%20accounted%20for%20as%20well.%20Everything%20in%20this%20notebook%20assumes%20a%20fixed%20basis%3B%20the%20rotating%20case%20gets%20its%20own%20treatment%20later.%0A%0A%20%20%20%20**Challenge%203.**%20In%20the%20figure%20at%20the%20top%20of%20this%20notebook%2C%20Bolt's%20velocity%20falls%20over%20the%20last%2030%20m.%20What%20is%20the%20sign%20of%20his%20acceleration%20there%3F%20Is%20he%20%22decelerating%22%2C%20and%20is%20that%20a%20different%20thing%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Going%20backwards%3A%20the%20antiderivative%0A%0A%20%20%20%20Acceleration%20is%20the%20derivative%20of%20velocity%2C%20which%20is%20the%20derivative%20of%20position.%20Going%20the%20other%20way%20%E2%80%94%20from%20acceleration%20to%20velocity%20to%20position%20%E2%80%94%20is%20the%20inverse%20operation%2C%20the%20%5Bantiderivative%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FAntiderivative)%2C%20or%20integral%3A%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Cbegin%7Barray%7D%7Bl%7D%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%20%2B%20%5Cint%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%5C%2C%5Cmathrm%7Bd%7Dt%2C%20%5C%5C%5B4pt%5D%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_0%20%2B%20%5Cint%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%5C%2C%5Cmathrm%7Bd%7Dt.%0A%20%20%20%20%5Cend%7Barray%7D%0A%20%20%20%20%24%24%0A%0A%20%20%20%20Notice%20the%20constants%20%24%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%24%20and%20%24%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_0%24.%20Differentiation%20destroys%20information%20%E2%80%94%20where%20the%20particle%20started%2C%20and%20how%20fast%20%E2%80%94%20and%20integration%20cannot%20invent%20it%20back.%20You%20have%20to%20supply%20it.%20Those%20constants%20are%20the%20*initial%20conditions*%2C%20and%20they%20are%20why%20an%20accelerometer%20alone%20can%20never%20tell%20you%20where%20something%20is.%0A%0A%20%20%20%20This%20is%20exactly%20the%20structure%20of%20an%20initial%20value%20problem%3B%20see%20the%20notebook%20%5BOrdinary%20differential%20equations%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fordinary_differential_equation.py)%2C%20where%20the%20same%20two%20integrations%20are%20done%20numerically%2C%20step%20by%20step.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Three%20cases%20you%20should%20be%20able%20to%20write%20from%20memory%0A%0A%20%20%20%20Three%20trivial%20motions%20cover%20an%20enormous%20amount%20of%20introductory%20mechanics%3A%20a%20particle%20at%20rest%2C%20at%20constant%20speed%2C%20and%20at%20constant%20acceleration.%0A%0A%20%20%20%20There%20are%20two%20ways%20to%20derive%20them.%20Start%20from%20the%20position%20and%20differentiate%20twice%2C%20or%20start%20from%20the%20acceleration%20and%20integrate%20twice.%20Both%20are%20valid%3B%20here%20integrating%20is%20the%20more%20natural%20direction%2C%20because%20in%20each%20case%20it%20is%20the%20acceleration%20that%20is%20specified.%0A%0A%20%20%20%20**Particle%20at%20rest**%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Cbegin%7Barray%7D%7Bl%7D%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%20%3D%200%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%200%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_0.%0A%20%20%20%20%5Cend%7Barray%7D%0A%20%20%20%20%24%24%0A%0A%20%20%20%20**Particle%20at%20constant%20speed**%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Cbegin%7Barray%7D%7Bl%7D%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%20%3D%200%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_0%20%2B%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%20t.%0A%20%20%20%20%5Cend%7Barray%7D%0A%20%20%20%20%24%24%0A%0A%20%20%20%20**Particle%20at%20constant%20acceleration**%0A%0A%20%20%20%20%24%24%0A%20%20%20%20%5Cbegin%7Barray%7D%7Bl%7D%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D_0%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%20%2B%20%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D_0%20t%2C%20%5C%5C%0A%20%20%20%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D_0%20%2B%20%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D_0%20t%20%2B%20%5Cfrac%7B1%7D%7B2%7D%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D_0%20t%5E2.%0A%20%20%20%20%5Cend%7Barray%7D%0A%20%20%20%20%24%24%0A%0A%20%20%20%20Note%20that%20the%20first%20case%20is%20a%20special%20case%20of%20the%20second%2C%20which%20is%20a%20special%20case%20of%20the%20third.%20Only%20one%20formula%20is%20really%20being%20memorized%20here.%0A%0A%20%20%20%20**Before%20you%20run%20the%20next%20cells**%2C%20take%20the%20third%20case%20with%20%24r_0%20%3D%201%5C%2C%5Cmathrm%7Bm%7D%24%2C%20%24v_0%20%3D%202%5C%2C%5Cmathrm%7Bm%2Fs%7D%24%20and%20%24a_0%20%3D%204%5C%2C%5Cmathrm%7Bm%2Fs%5E2%7D%24%2C%20and%20predict%20where%20the%20particle%20is%20at%20%24t%20%3D%202%5C%2C%5Cmathrm%7Bs%7D%24.%20Write%20the%20number%20down.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Putting%20numbers%20in%0A%0A%20%20%20%20We%20will%20work%20in%20one%20dimension%20from%20here%20on%2C%20so%20the%20vectors%20become%20plain%20numbers%20and%20the%20arrows%20can%20be%20dropped.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(np)%3A%0A%20%20%20%20t%20%3D%20np.linspace(0%2C%202%2C%20101)%20%20%23%20101%20instants%20between%200%20and%202%20s%0A%20%20%20%20r0%2C%20v0%2C%20a0%20%3D%201%2C%202%2C%204%20%20%23%20%5Bm%5D%2C%20%5Bm%2Fs%5D%2C%20%5Bm%2Fs%5E2%5D%0A%0A%20%20%20%20r%20%3D%20r0%20%2B%20v0%20*%20t%20%2B%201%20%2F%202%20*%20a0%20*%20t**2%0A%0A%20%20%20%20print(f%22First%20instants%20%5Bs%5D%3A%20%20%7Bnp.round(t%5B%3A5%5D%2C%202)%7D%20...%22)%0A%20%20%20%20print(f%22First%20positions%20%5Bm%5D%3A%20%7Bnp.round(r%5B%3A5%5D%2C%203)%7D%20...%22)%0A%20%20%20%20print(f%22Position%20at%20t%20%3D%20%7Bt%5B-1%5D%3A.0f%7D%20s%3A%20%7Br%5B-1%5D%3A.1f%7D%20m%22)%0A%20%20%20%20return%20a0%2C%20r%2C%20r0%2C%20t%2C%20v0%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Seeing%20them%0A%0A%20%20%20%20The%20simplest%20possible%20plot%20of%20that%20position%20first%3A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(plt%2C%20r%2C%20t)%3A%0A%20%20%20%20plt.figure(figsize%3D(6%2C%203))%0A%20%20%20%20plt.plot(t%2C%20r)%0A%20%20%20%20plt.xlabel(%22Time%20%5Bs%5D%22)%0A%20%20%20%20plt.ylabel(%22r(t)%20%5Bm%5D%22)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20And%20now%20the%20three%20cases%20side%20by%20side%2C%20one%20column%20each%2C%20with%20position%2C%20velocity%2C%20and%20acceleration%20stacked%20in%20rows.%20This%20single%20figure%20is%20worth%20more%20than%20the%20three%20sets%20of%20equations%20above%2C%20because%20it%20makes%20the%20relationship%20between%20the%20rows%20visible%3A%20each%20row%20is%20the%20slope%20of%20the%20row%20above%20it.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.function%0Adef%20plot_kinematic_cases(t%2C%20r0%2C%20v0%2C%20a0)%3A%0A%20%20%20%20%22%22%22Plot%20position%2C%20velocity%20and%20acceleration%20for%20the%20three%20cases%20of%20motion.%0A%0A%20%20%20%20Columns%20are%20a%20particle%20at%20rest%2C%20at%20constant%20speed%2C%20and%20at%20constant%0A%20%20%20%20acceleration%3B%20rows%20are%20position%2C%20velocity%20and%20acceleration.%0A%20%20%20%20%22%22%22%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20tones%20%3D%20np.ones(np.size(t))%0A%0A%20%20%20%20_%2C%20axarr%20%3D%20plt.subplots(3%2C%203%2C%20sharex%3DTrue%2C%20sharey%3DTrue%2C%20figsize%3D(14%2C%207))%0A%20%20%20%20plt.suptitle(%22Scalar%20kinematics%20of%20a%20particle%22%2C%20fontsize%3D20)%0A%0A%20%20%20%20axarr%5B0%2C%200%5D.set_title(%22at%20rest%22%2C%20fontsize%3D14)%0A%20%20%20%20axarr%5B0%2C%200%5D.plot(t%2C%20r0%20*%20tones%2C%20%22g%22%2C%20linewidth%3D4%2C%20label%3D%22%24r(t)%3D1%24%22)%0A%20%20%20%20axarr%5B1%2C%200%5D.plot(t%2C%200%20*%20tones%2C%20%22b%22%2C%20linewidth%3D4%2C%20label%3D%22%24v(t)%3D0%24%22)%0A%20%20%20%20axarr%5B2%2C%200%5D.plot(t%2C%200%20*%20tones%2C%20%22r%22%2C%20linewidth%3D4%2C%20label%3D%22%24a(t)%3D0%24%22)%0A%20%20%20%20axarr%5B0%2C%200%5D.set_ylabel(%22r(t)%20%5Bm%5D%22)%0A%20%20%20%20axarr%5B1%2C%200%5D.set_ylabel(%22v(t)%20%5Bm%2Fs%5D%22)%0A%20%20%20%20axarr%5B2%2C%200%5D.set_ylabel(%22a(t)%20%5Bm%2Fs%24%5E2%24%5D%22)%0A%0A%20%20%20%20axarr%5B0%2C%201%5D.set_title(%22at%20constant%20speed%22%2C%20fontsize%3D14)%0A%20%20%20%20axarr%5B0%2C%201%5D.plot(t%2C%20r0%20*%20tones%20%2B%20v0%20*%20t%2C%20%22g%22%2C%20linewidth%3D4%2C%20label%3D%22%24r(t)%3D1%2B2t%24%22)%0A%20%20%20%20axarr%5B1%2C%201%5D.plot(t%2C%20v0%20*%20tones%2C%20%22b%22%2C%20linewidth%3D4%2C%20label%3D%22%24v(t)%3D2%24%22)%0A%20%20%20%20axarr%5B2%2C%201%5D.plot(t%2C%200%20*%20tones%2C%20%22r%22%2C%20linewidth%3D4%2C%20label%3D%22%24a(t)%3D0%24%22)%0A%0A%20%20%20%20axarr%5B0%2C%202%5D.set_title(%22at%20constant%20acceleration%22%2C%20fontsize%3D14)%0A%20%20%20%20axarr%5B0%2C%202%5D.plot(%0A%20%20%20%20%20%20%20%20t%2C%0A%20%20%20%20%20%20%20%20r0%20*%20tones%20%2B%20v0%20*%20t%20%2B%201%20%2F%202%20*%20a0%20*%20t**2%2C%0A%20%20%20%20%20%20%20%20%22g%22%2C%0A%20%20%20%20%20%20%20%20linewidth%3D4%2C%0A%20%20%20%20%20%20%20%20label%3D%22%24r(t)%3D1%2B2t%2B%5C%5Cfrac%7B1%7D%7B2%7D4t%5E2%24%22%2C%0A%20%20%20%20)%0A%20%20%20%20axarr%5B1%2C%202%5D.plot(t%2C%20v0%20*%20tones%20%2B%20a0%20*%20t%2C%20%22b%22%2C%20linewidth%3D4%2C%20label%3D%22%24v(t)%3D2%2B4t%24%22)%0A%20%20%20%20axarr%5B2%2C%202%5D.plot(t%2C%20a0%20*%20tones%2C%20%22r%22%2C%20linewidth%3D4%2C%20label%3D%22%24a(t)%3D4%24%22)%0A%0A%20%20%20%20for%20i%20in%20range(3)%3A%0A%20%20%20%20%20%20%20%20axarr%5B2%2C%20i%5D.set_xlabel(%22Time%20%5Bs%5D%22)%0A%20%20%20%20%20%20%20%20for%20j%20in%20range(3)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20axarr%5Bi%2C%20j%5D.set_ylim((-0.2%2C%2010))%0A%20%20%20%20%20%20%20%20%20%20%20%20axarr%5Bi%2C%20j%5D.legend(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20loc%3D%22upper%20left%22%2C%20frameon%3DTrue%2C%20framealpha%3D0.9%2C%20fontsize%3D14%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20plt.subplots_adjust(hspace%3D0.09%2C%20wspace%3D0.07)%0A%20%20%20%20plt.show()%0A%0A%0A%40app.cell%0Adef%20_(a0%2C%20r0%2C%20t%2C%20v0)%3A%0A%20%20%20%20plot_kinematic_cases(t%2C%20r0%2C%20v0%2C%20a0)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**Guiding%20questions%204.**%0A%0A%20%20%20%201.%20In%20the%20middle%20column%2C%20the%20position%20line%20is%20straight%20and%20the%20velocity%20line%20is%20flat.%20State%20the%20relationship%20between%20those%20two%20facts%20in%20one%20sentence.%0A%20%20%20%202.%20In%20the%20right%20column%2C%20the%20position%20is%20a%20parabola.%20What%20shape%20is%20its%20velocity%2C%20and%20why%3F%0A%20%20%20%203.%20Cover%20the%20top%20row%20with%20your%20hand.%20Could%20you%20reconstruct%20it%20from%20the%20two%20rows%20below%3F%20What%20would%20you%20still%20be%20missing%3F%0A%0A%20%20%20%20**Challenge%204.**%20Change%20%24a_0%24%20to%20a%20negative%20value%20and%20re-run%20the%20two%20cells%20above.%20Which%20panels%20change%2C%20and%20which%20do%20not%3F%20At%20what%20instant%20does%20the%20particle%20turn%20around%2C%20and%20can%20you%20read%20that%20instant%20off%20the%20*velocity*%20panel%20without%20computing%20anything%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Letting%20the%20computer%20do%20the%20algebra%0A%0A%20%20%20%20We%20integrated%20those%20cases%20by%20hand.%20%5BSymPy%5D(http%3A%2F%2Fwww.sympy.org%2Fen%2Findex.html)%2C%20a%20Python%20library%20for%20symbolic%20mathematics%2C%20can%20do%20it%20for%20us%20%E2%80%94%20and%20unlike%20NumPy%20it%20returns%20*expressions*%2C%20not%20arrays%20of%20numbers.%0A%0A%20%20%20%20Let's%20integrate%20the%20constant-acceleration%20case.%20First%2C%20declare%20the%20symbols%3A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20sympy%20as%20sym%0A%0A%20%20%20%20sym.init_printing(use_latex%3D%22mathjax%22)%20%20%23%20print%20pretty%20symbols%0A%0A%20%20%20%20t_s%20%3D%20sym.symbols(%22t%22%2C%20real%3DTrue)%0A%20%20%20%20r0_s%2C%20v0_s%2C%20a0_s%20%3D%20sym.symbols(%22r0%2C%20v0%2C%20a0%22%2C%20real%3DTrue%2C%20constant%3DTrue)%0A%20%20%20%20return%20a0_s%2C%20r0_s%2C%20sym%2C%20t_s%2C%20v0_s%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20Integrating%20the%20constant%20acceleration%20%24a_0%24%20gives%20the%20velocity.%20Note%20that%20the%20constant%20of%20integration%20%E2%80%94%20the%20initial%20velocity%20%E2%80%94%20has%20to%20be%20added%20by%20hand%3B%20SymPy%20will%20not%20guess%20your%20initial%20conditions%20any%20more%20than%20nature%20will.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(a0_s%2C%20sym%2C%20t_s%2C%20v0_s)%3A%0A%20%20%20%20v_s%20%3D%20sym.integrate(a0_s%2C%20t_s)%20%2B%20v0_s%0A%20%20%20%20v_s%0A%20%20%20%20return%20(v_s%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20And%20integrating%20that%20velocity%2C%20again%20adding%20the%20constant%2C%20gives%20the%20position%3A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(r0_s%2C%20sym%2C%20t_s%2C%20v_s)%3A%0A%20%20%20%20r_s%20%3D%20sym.integrate(v_s%2C%20t_s)%20%2B%20r0_s%0A%20%20%20%20r_s%0A%20%20%20%20return%20(r_s%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20That%20is%20the%20third%20case%20from%20memory%2C%20derived%20rather%20than%20recalled.%0A%0A%20%20%20%20A%20symbolic%20expression%20can%20also%20be%20plotted%20over%20a%20range%2C%20once%20the%20symbols%20have%20been%20substituted%20by%20numbers%3A%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(a0_s%2C%20r0_s%2C%20r_s%2C%20t_s%2C%20v0_s)%3A%0A%20%20%20%20from%20sympy.plotting%20import%20plot%0A%0A%20%20%20%20r_num%20%3D%20r_s.subs(%7Br0_s%3A%201%2C%20v0_s%3A%202%2C%20a0_s%3A%204%7D)%0A%0A%20%20%20%20plot(%0A%20%20%20%20%20%20%20%20r_num%2C%0A%20%20%20%20%20%20%20%20(t_s%2C%200%2C%202)%2C%0A%20%20%20%20%20%20%20%20xlim%3D(0%2C%202)%2C%0A%20%20%20%20%20%20%20%20ylim%3D(0%2C%2010)%2C%0A%20%20%20%20%20%20%20%20axis_center%3D(0%2C%200)%2C%0A%20%20%20%20%20%20%20%20line_color%3D%22g%22%2C%0A%20%20%20%20%20%20%20%20xlabel%3D%22Time%20%5Bs%5D%22%2C%0A%20%20%20%20%20%20%20%20ylabel%3D%22r(t)%20%5Bm%5D%22%2C%0A%20%20%20%20%20%20%20%20legend%3DTrue%2C%0A%20%20%20%20%20%20%20%20title%3D%22Scalar%20kinematics%20of%20a%20particle%20at%20constant%20acceleration%22%2C%0A%20%20%20%20%20%20%20%20backend%3D%22matplotlib%22%2C%0A%20%20%20%20%20%20%20%20size%3D(5%2C%203)%2C%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**Challenge%205.**%20Use%20%60sym.diff%60%20to%20go%20the%20other%20way%3A%20differentiate%20%60r_s%60%20twice%20with%20respect%20to%20%60t_s%60%20and%20confirm%20you%20recover%20%24a_0%24.%20Then%20try%20the%20same%20starting%20from%20a%20position%20that%20is%20*not*%20polynomial%2C%20such%20as%20%24r(t)%20%3D%20A%5Csin(%5Comega%20t)%24%2C%20and%20inspect%20the%20velocity%20and%20acceleration%20you%20get.%20What%20is%20the%20relationship%20between%20the%20position%20and%20the%20acceleration%20in%20that%20case%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Kinematics%20of%20human%20movement%3A%20the%20100%20m%20race%0A%0A%20%20%20%20Now%20we%20spend%20all%20of%20this%20on%20a%20real%20measurement.%0A%0A%20%20%20%20The%20study%20of%20the%20biomechanics%20of%20the%20100%20m%20dash%20is%20a%20case%20where%20the%20analysis%20of%20the%20human%20body%20reduces%20honestly%20to%20the%20analysis%20of%20a%20particle.%20A%20technical%20report%20with%20the%20kinematic%20data%20for%20Usain%20Bolt's%20world%20record%20can%20be%20downloaded%20from%20the%20%5Bwebsite%20for%20research%20projects%5D(http%3A%2F%2Fwww.iaaf.org%2Fdevelopment%2Fresearch)%20of%20the%20International%20Association%20of%20Athletics%20Federations%3B%20%5Bhere%20is%20a%20direct%20link%20to%20the%20report%5D(http%3A%2F%2Fwww.iaaf.org%2Fdownload%2Fdownload%3Ffilename%3D76ade5f9-75a0-4fda-b9bf-1b30be6f60d2.pdf%26urlSlug%3D1-biomechanics-report-wc-berlin-2009-sprint).%20The%20table%20below%20shows%20the%20data%20for%20the%20three%20medalists.%0A%0A%20%20%20%20%3Cfigure%20aria-describedby%3D%22figure-caption-4%22%3E%3Ccenter%3E%3Cimg%20src%3D%22https%3A%2F%2Fgithub.com%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fimages%2FBerlin2009_100m.png%3Fraw%3D1%22%20width%3D700%20alt%3D%22Partial%20times%20of%20the%20100%20m%20race%20at%20Berlin%202009%22%2F%3E%3C%2Fcenter%3E%3C%2Ffigure%3E%0A%0A%20%20%20%20%3Cspan%20id%3D%22figure-caption-4%22%20class%3D%22figure-caption%22%20style%3D%22display%3Ablock%3Btext-align%3Acenter%3Bfont-style%3Aitalic%22%3EFigure.%20Data%20from%20the%20three%20medalists%20of%20the%20100%20m%20dash%20in%20Berlin%2C%202009%20(%3Ca%20href%3D%22http%3A%2F%2Fwww.iaaf.org%2Fdownload%2Fdownload%3Ffilename%3D76ade5f9-75a0-4fda-b9bf-1b30be6f60d2.pdf%26urlSlug%3D1-biomechanics-report-wc-berlin-2009-sprint%22%3EIAAF%20report%3C%2Fa%3E).%3C%2Fspan%3E%0A%0A%20%20%20%20The%20column%20**RT**%20is%20the%20reaction%20time%20of%20each%20athlete.%20The%20IAAF%20rule%20on%20it%20is%20strict%3A%20any%20athlete%20with%20a%20reaction%20time%20below%20100%20ms%20is%20disqualified%2C%20on%20the%20grounds%20that%20no%20one%20can%20respond%20to%20the%20gun%20that%20fast%2C%20so%20they%20must%20have%20anticipated%20it.%20See%20%5BReaction%20Times%20and%20Sprint%20False%20Starts%5D(http%3A%2F%2Fcondellpark.com%2Fkd%2Freactiontime.htm)%20for%20a%20discussion%20of%20the%20rule%2C%20and%20you%20can%20measure%20your%20own%20at%20%5Bhumanbenchmark.com%5D(http%3A%2F%2Fwww.humanbenchmark.com%2Ftests%2Freactiontime).%0A%0A%20%20%20%20Note%20what%20the%20reaction%20time%20does%20to%20the%20kinematics%3A%20the%20clock%20starts%20at%20the%20gun%2C%20but%20the%20athlete%20does%20not.%20Roughly%200.15%20s%20of%20Bolt's%209.58%20s%20were%20spent%20motionless.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Reconstructing%20the%20race%20from%20ten%20numbers%0A%0A%20%20%20%20Graubner%20and%20Nixdorf%20(2011)%20published%20the%2010%20m%20split%20times%20for%20that%20final%3A%0A%0A%20%20%20%20%3Cfigure%20aria-describedby%3D%22figure-caption-5%22%3E%3Ccenter%3E%3Cimg%20src%3D%22https%3A%2F%2Fgithub.com%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fimages%2FBerlin2009_100m_10.png%3Fraw%3D1%22%20width%3D600%20alt%3D%2210-m%20split%20times%20of%20the%20100%20m%20race%20at%20Berlin%202009%22%2F%3E%3C%2Fcenter%3E%3C%2Ffigure%3E%0A%0A%20%20%20%20%3Cspan%20id%3D%22figure-caption-5%22%20class%3D%22figure-caption%22%20style%3D%22display%3Ablock%3Btext-align%3Acenter%3Bfont-style%3Aitalic%22%3EFigure.%20Split%20times%20every%2010%20m%20for%20the%20three%20medalists%20of%20the%20100%20m%20dash%20in%20Berlin%2C%202009%20(Graubner%20and%20Nixdorf%2C%202011).%3C%2Fspan%3E%0A%0A%20%20%20%20That%20is%20all%20we%20have%3A%20eleven%20positions%2C%20eleven%20instants.%20No%20velocity%20was%20measured%2C%20and%20no%20acceleration.%20Everything%20else%20has%20to%20be%20computed%20with%20the%20two%20definitions%20from%20earlier%20in%20this%20notebook%20%E2%80%94%20each%20velocity%20as%20%24%5CDelta%20r%20%2F%20%5CDelta%20t%24%20over%20one%2010%20m%20segment%2C%20and%20each%20acceleration%20as%20%24%5CDelta%20v%20%2F%20%5CDelta%20t%24%20between%20consecutive%20velocities.%0A%0A%20%20%20%20**Before%20you%20run%20the%20next%20cells**%2C%20predict%20three%20numbers%20and%20write%20them%20down%3A%0A%0A%20%20%20%201.%20Bolt's%20average%20velocity%20over%20the%20whole%20race%2C%20in%20m%2Fs.%0A%20%20%20%202.%20His%20*peak*%20velocity%20%E2%80%94%20how%20much%20higher%20than%20the%20average%3F%0A%20%20%20%203.%20His%20peak%20acceleration%2C%20in%20m%2Fs%C2%B2.%20For%20scale%2C%20gravity%20is%20%249.8%5C%2C%5Cmathrm%7Bm%2Fs%5E2%7D%24.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.function%0Adef%20bolt_splits()%3A%0A%20%20%20%20%22%22%22Return%20the%2010-m%20split%20times%20of%20Usain%20Bolt's%20100-m%20world%20record.%0A%0A%20%20%20%20Berlin%2C%202009%2C%20from%20Graubner%20and%20Nixdorf%20(2011).%20Returns%20the%20instants%20%5Bs%5D%0A%20%20%20%20at%20which%20he%20crossed%20each%2010-m%20mark%20and%20the%20corresponding%20positions%20%5Bm%5D%2C%0A%20%20%20%20both%20starting%20at%20the%20gun%20(t%20%3D%200%20s%2C%20r%20%3D%200%20m).%0A%20%20%20%20%22%22%22%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20time%20%3D%20np.array(%0A%20%20%20%20%20%20%20%20%5B0.00%2C%201.88%2C%202.88%2C%203.78%2C%204.64%2C%205.47%2C%206.29%2C%207.10%2C%207.92%2C%208.74%2C%209.58%5D%0A%20%20%20%20)%0A%20%20%20%20position%20%3D%20np.arange(0%2C%20101%2C%2010%2C%20dtype%3Dfloat)%0A%20%20%20%20return%20time%2C%20position%0A%0A%0A%40app.function%0Adef%20split_kinematics(time%2C%20position)%3A%0A%20%20%20%20%22%22%22Average%20velocity%20and%20acceleration%20from%20split%20times%2C%20by%20finite%20differences.%0A%0A%20%20%20%20Each%20velocity%20is%20the%20average%20over%20one%20segment%2C%20so%20it%20is%20attributed%20to%20the%0A%20%20%20%20midpoint%20in%20time%20of%20that%20segment%3B%20each%20acceleration%20likewise%20sits%20at%20the%0A%20%20%20%20midpoint%20between%20two%20velocities.%0A%0A%20%20%20%20Returns%20(t_v%2C%20velocity%2C%20t_a%2C%20acceleration).%0A%20%20%20%20%22%22%22%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20velocity%20%3D%20np.diff(position)%20%2F%20np.diff(time)%0A%20%20%20%20t_v%20%3D%20(time%5B%3A-1%5D%20%2B%20time%5B1%3A%5D)%20%2F%202%0A%0A%20%20%20%20acceleration%20%3D%20np.diff(velocity)%20%2F%20np.diff(t_v)%0A%20%20%20%20t_a%20%3D%20(t_v%5B%3A-1%5D%20%2B%20t_v%5B1%3A%5D)%20%2F%202%0A%0A%20%20%20%20return%20t_v%2C%20velocity%2C%20t_a%2C%20acceleration%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20bolt_time%2C%20bolt_position%20%3D%20bolt_splits()%0A%20%20%20%20bolt_tv%2C%20bolt_velocity%2C%20bolt_ta%2C%20bolt_acceleration%20%3D%20split_kinematics(%0A%20%20%20%20%20%20%20%20bolt_time%2C%20bolt_position%0A%20%20%20%20)%0A%0A%20%20%20%20print(%22Segment%20%20%20%20%20%20%CE%94t%20%5Bs%5D%20%20%20v%20%5Bm%2Fs%5D%20%20%20v%20%5Bkm%2Fh%5D%22)%0A%20%20%20%20for%20_i%2C%20_v%20in%20enumerate(bolt_velocity)%3A%0A%20%20%20%20%20%20%20%20_dt%20%3D%20bolt_time%5B_i%20%2B%201%5D%20-%20bolt_time%5B_i%5D%0A%20%20%20%20%20%20%20%20print(%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%7Bbolt_position%5B_i%5D%3A3.0f%7D-%7Bbolt_position%5B_i%20%2B%201%5D%3A3.0f%7D%20m%22%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22%7B_dt%3A9.2f%7D%7B_v%3A10.2f%7D%7B3.6%20*%20_v%3A11.1f%7D%22%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20print()%0A%20%20%20%20print(f%22Average%20velocity%3A%20%7Bbolt_position%5B-1%5D%20%2F%20bolt_time%5B-1%5D%3A.2f%7D%20m%2Fs%20%22%0A%20%20%20%20%20%20%20%20%20%20f%22(%7B3.6%20*%20bolt_position%5B-1%5D%20%2F%20bolt_time%5B-1%5D%3A.1f%7D%20km%2Fh)%22)%0A%20%20%20%20print(f%22Peak%20velocity%3A%20%20%20%20%7Bbolt_velocity.max()%3A.2f%7D%20m%2Fs%20%22%0A%20%20%20%20%20%20%20%20%20%20f%22(%7B3.6%20*%20bolt_velocity.max()%3A.1f%7D%20km%2Fh)%2C%20%22%0A%20%20%20%20%20%20%20%20%20%20f%22around%20t%20%3D%20%7Bbolt_tv%5Bbolt_velocity.argmax()%5D%3A.1f%7D%20s%22)%0A%20%20%20%20print(f%22Peak%20acceleration%3A%7Bbolt_acceleration.max()%3A7.2f%7D%20m%2Fs%C2%B2%2C%20%22%0A%20%20%20%20%20%20%20%20%20%20f%22around%20t%20%3D%20%7Bbolt_ta%5Bbolt_acceleration.argmax()%5D%3A.1f%7D%20s%22)%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20bolt_acceleration%2C%0A%20%20%20%20%20%20%20%20bolt_position%2C%0A%20%20%20%20%20%20%20%20bolt_ta%2C%0A%20%20%20%20%20%20%20%20bolt_time%2C%0A%20%20%20%20%20%20%20%20bolt_tv%2C%0A%20%20%20%20%20%20%20%20bolt_velocity%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20A%20few%20things%20in%20that%20table%20deserve%20to%20be%20read%20slowly.%0A%0A%20%20%20%20The%20first%20segment%20is%20by%20far%20the%20slowest%2C%20and%20it%20is%20not%20close%3A%20about%205.3%20m%2Fs%20against%20a%20peak%20near%2012.3%20m%2Fs.%20Part%20of%20that%20is%20the%20reaction%20time%20sitting%20inside%20it%2C%20but%20most%20of%20it%20is%20simply%20that%20he%20started%20from%20rest.%20Sprinting%20is%2C%20for%20the%20first%2030%20m%2C%20mostly%20a%20problem%20of%20acceleration.%0A%0A%20%20%20%20The%20peak%20velocity%20of%20roughly%2012.3%20m%2Fs%20is%20about%2044%20km%2Fh%2C%20and%20it%20is%20reached%20somewhere%20past%2060%20m%20%E2%80%94%20remarkably%20late.%20Then%20it%20falls.%20Bolt%20was%20*slowing%20down*%20over%20the%20last%2020%20m%20of%20the%20fastest%20100%20m%20ever%20run%2C%20and%20so%20was%20everyone%20else%20in%20that%20final.%0A%0A%20%20%20%20His%20average%20over%20the%20whole%20race%2C%20about%2010.4%20m%2Fs%2C%20describes%20no%20particular%20moment%20of%20it.%20It%20is%20the%20number%20that%20gets%20printed%2C%20and%20it%20is%20the%20least%20informative%20one%20in%20the%20table.%0A%0A%20%20%20%20Now%20the%20same%20numbers%20as%20plots%2C%20including%20the%20velocity-against-position%20panel%20that%20reproduces%2C%20coarsely%2C%20the%20figure%20that%20opened%20this%20notebook.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.function%0Adef%20plot_sprint(time%2C%20position%2C%20t_v%2C%20velocity%2C%20t_a%2C%20acceleration%2C%20name%3D%22Bolt%22)%3A%0A%20%20%20%20%22%22%22Plot%20position%2C%20velocity%20and%20acceleration%20of%20a%20sprint%20from%20split%20times.%22%22%22%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%0A%20%20%20%20_%2C%20axs%20%3D%20plt.subplots(2%2C%202%2C%20figsize%3D(11%2C%206))%0A%0A%20%20%20%20axs%5B0%2C%200%5D.plot(time%2C%20position%2C%20%22go-%22%2C%20linewidth%3D2)%0A%20%20%20%20axs%5B0%2C%200%5D.set_xlabel(%22Time%20%5Bs%5D%22)%0A%20%20%20%20axs%5B0%2C%200%5D.set_ylabel(%22Position%20%5Bm%5D%22)%0A%20%20%20%20axs%5B0%2C%200%5D.set_title(%22Position%22)%0A%0A%20%20%20%20axs%5B0%2C%201%5D.plot(t_v%2C%20velocity%2C%20%22bo-%22%2C%20linewidth%3D2)%0A%20%20%20%20axs%5B0%2C%201%5D.set_xlabel(%22Time%20%5Bs%5D%22)%0A%20%20%20%20axs%5B0%2C%201%5D.set_ylabel(%22Velocity%20%5Bm%2Fs%5D%22)%0A%20%20%20%20axs%5B0%2C%201%5D.set_title(%22Velocity%22)%0A%0A%20%20%20%20axs%5B1%2C%200%5D.plot(t_a%2C%20acceleration%2C%20%22ro-%22%2C%20linewidth%3D2)%0A%20%20%20%20axs%5B1%2C%200%5D.axhline(0%2C%20color%3D%22k%22%2C%20linewidth%3D1%2C%20linestyle%3D%22%3A%22)%0A%20%20%20%20axs%5B1%2C%200%5D.set_xlabel(%22Time%20%5Bs%5D%22)%0A%20%20%20%20axs%5B1%2C%200%5D.set_ylabel(%22Acceleration%20%5Bm%2Fs%24%5E2%24%5D%22)%0A%20%20%20%20axs%5B1%2C%200%5D.set_title(%22Acceleration%22)%0A%0A%20%20%20%20position_v%20%3D%20(position%5B%3A-1%5D%20%2B%20position%5B1%3A%5D)%20%2F%202%0A%20%20%20%20axs%5B1%2C%201%5D.plot(position_v%2C%20velocity%2C%20%22bo-%22%2C%20linewidth%3D2)%0A%20%20%20%20axs%5B1%2C%201%5D.set_xlabel(%22Position%20%5Bm%5D%22)%0A%20%20%20%20axs%5B1%2C%201%5D.set_ylabel(%22Velocity%20%5Bm%2Fs%5D%22)%0A%20%20%20%20axs%5B1%2C%201%5D.set_title(%22Velocity%20vs%20position%22)%0A%0A%20%20%20%20plt.suptitle(%0A%20%20%20%20%20%20%20%20f%22Kinematics%20of%20the%20100-m%20dash%2C%20%7Bname%7D%2C%20Berlin%202009%22%2C%20y%3D1.0%2C%20fontsize%3D16%0A%20%20%20%20)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%0A%0A%40app.cell%0Adef%20_(%0A%20%20%20%20bolt_acceleration%2C%0A%20%20%20%20bolt_position%2C%0A%20%20%20%20bolt_ta%2C%0A%20%20%20%20bolt_time%2C%0A%20%20%20%20bolt_tv%2C%0A%20%20%20%20bolt_velocity%2C%0A)%3A%0A%20%20%20%20plot_sprint(%0A%20%20%20%20%20%20%20%20bolt_time%2C%0A%20%20%20%20%20%20%20%20bolt_position%2C%0A%20%20%20%20%20%20%20%20bolt_tv%2C%0A%20%20%20%20%20%20%20%20bolt_velocity%2C%0A%20%20%20%20%20%20%20%20bolt_ta%2C%0A%20%20%20%20%20%20%20%20bolt_acceleration%2C%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20Compare%20the%20bottom-right%20panel%20with%20the%20laser-radar%20figure%20at%20the%20top%20of%20this%20notebook.%20The%20shape%20is%20right%20%E2%80%94%20a%20fast%20rise%2C%20a%20flat%20maximum%20past%20halfway%2C%20a%20decline%20to%20the%20finish%20%E2%80%94%20but%20ours%20is%20built%20from%20ten%20averages%20and%20theirs%20from%20a%20continuous%20measurement.%0A%0A%20%20%20%20That%20comparison%20is%20the%20honest%20lesson%20of%20this%20section%2C%20and%20it%20is%20worth%20stating%20plainly.%20**Every%20derivative%20we%20computed%20is%20a%20finite%20difference%20over%20a%20coarse%20interval%2C%20and%20each%20one%20is%20noisier%20than%20the%20one%20before%20it.**%20The%20position%20data%20are%20excellent.%20The%20velocities%2C%20averaged%20over%20roughly%200.8%20s%20each%2C%20are%20already%20smoothed%20versions%20of%20the%20truth%20%E2%80%94%20they%20cannot%20show%20the%20within-stride%20fluctuation%20that%20the%20laser%20radar%20records.%20The%20accelerations%2C%20being%20differences%20of%20those%20differences%2C%20are%20the%20roughest%20estimate%20in%20the%20figure%3A%20the%20acceleration%20panel%20jumps%20around%20in%20a%20way%20that%20no%20human%20body%20actually%20did.%0A%0A%20%20%20%20The%20error%20is%20not%20only%20random%2C%20either.%20Look%20at%20the%20peak%20acceleration%20the%20code%20printed%3A%20a%20little%20over%203%20m%2Fs%C2%B2.%20A%20sprinter%20leaving%20the%20blocks%20actually%20reaches%20something%20closer%20to%208-10%20m%2Fs%C2%B2%2C%20and%20our%20estimate%20misses%20it%20by%20a%20factor%20of%20three%20%E2%80%94%20not%20because%20the%20arithmetic%20is%20wrong%2C%20but%20because%20the%20first%20split%20spans%201.88%20s%20and%20the%20whole%20explosive%20start%20is%20averaged%20away%20inside%20it.%20**A%20finite%20difference%20cannot%20resolve%20anything%20faster%20than%20its%20own%20interval.**%20If%20you%20had%20predicted%20a%20number%20near%20gravity%20before%20running%20the%20cell%2C%20you%20were%20closer%20to%20the%20truth%20than%20the%20data%20were.%0A%0A%20%20%20%20Neither%20problem%20is%20a%20flaw%20in%20our%20arithmetic.%20Differentiating%20measured%20data%20amplifies%20whatever%20error%20is%20in%20it%2C%20every%20time%20you%20do%20it%2C%20and%20smooths%20away%20whatever%20is%20briefer%20than%20the%20sampling%20interval.%20It%20is%20the%20reason%20the%20notebooks%20on%20%5Bdata%20filtering%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fdata_filtering.py)%20and%20%5Bresidual%20analysis%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fresidual_analysis.py)%20exist%2C%20and%20the%20reason%20experienced%20people%20are%20suspicious%20of%20any%20acceleration%20curve%20computed%20from%20position%20data.%0A%0A%20%20%20%20**Challenge%206.**%20Work%20these%20with%20the%20functions%20above.%0A%0A%20%20%20%201.%20Was%20Bolt's%20acceleration%20constant%20over%20any%20part%20of%20the%20race%3F%20Look%20at%20the%20acceleration%20panel%2C%20then%20at%20the%20velocity%20panel%2C%20and%20decide%20which%20one%20gives%20you%20a%20more%20trustworthy%20answer.%0A%20%20%20%202.%20Fit%20a%20straight%20line%20to%20the%20first%20three%20velocity%20points%20and%20use%20its%20slope%20as%20an%20estimate%20of%20the%20initial%20acceleration.%20How%20does%20it%20compare%20to%20the%20peak%20in%20the%20acceleration%20panel%3F%20Which%20would%20you%20report%3F%0A%20%20%20%203.%20The%20first%20segment%20includes%20about%200.15%20s%20of%20reaction%20time.%20Recompute%20the%20first%20velocity%20using%20the%20actual%20movement%20time%20instead%20of%20the%20split%20time.%20How%20much%20does%20it%20change%3F%0A%20%20%20%204.%20Add%20Gay%20(9.71%20s)%20and%20Powell%20(9.84%20s)%20from%20the%20split%20table%20above%20and%20plot%20all%20three%20velocity%20curves%20together.%20Where%20in%20the%20race%20was%20the%20race%20actually%20decided%3F%0A%20%20%20%205.%20Bolt's%20peak%20velocity%20is%20around%2012.3%20m%2Fs.%20If%20he%20could%20have%20held%20exactly%20that%20from%20the%20gun%2C%20what%20would%20his%20time%20have%20been%3F%20What%20does%20the%20gap%20between%20that%20and%209.58%20s%20tell%20you%20about%20where%20sprint%20performance%20is%20won%3F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**Exercise%203.**%20A%20particle%20starts%20at%20rest%20with%20%24a(t)%3D2t%24%20m%2Fs%C2%B2.%20Find%20velocity%20and%20displacement%20at%202%20s.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Worked%20solution%20%E2%80%94%20Exercise%203%0A%0A%20%20%20%20Integrating%20gives%20%24v%3Dt%5E2%24%20and%20%24x-x_0%3Dt%5E3%2F3%24.%20At%202%20s%20these%20are%204%20m%2Fs%20and%20%248%2F3%24%20m.%20The%20initial%20conditions%20determine%20the%20otherwise%20missing%20integration%20constants.%0A%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Checkpoint%20questions%0A%0A%20%20%20%20Pause%20here%20before%20the%20problems.%20These%20connect%20this%20notebook%20to%20the%20rest%20of%20the%20collection.%0A%0A%20%20%20%201.%20You%20are%20given%20position%20data%20and%20you%20need%20acceleration.%20You%20are%20given%20acceleration%20data%20and%20you%20need%20position.%20Which%20of%20the%20two%20situations%20is%20more%20dangerous%2C%20and%20why%3F%0A%20%20%20%202.%20A%20marker%20on%20a%20walking%20person's%20heel%20is%20tracked%20at%20100%20Hz.%20What%20is%20the%20shortest%20event%20you%20could%20hope%20to%20resolve%20in%20its%20velocity%3F%0A%20%20%20%203.%20Why%20is%20the%20average%20velocity%20of%20a%20100%20m%20sprinter%20a%20poor%20description%20of%20the%20race%2C%20while%20the%20average%20velocity%20of%20a%20marathon%20runner%20is%20a%20reasonable%20one%3F%0A%20%20%20%204.%20An%20accelerometer%20on%20a%20phone%20records%20a%20person%20jumping.%20What%20two%20pieces%20of%20information%2C%20not%20in%20the%20accelerometer%20signal%2C%20do%20you%20need%20before%20you%20can%20say%20how%20high%20they%20jumped%3F%0A%20%20%20%205.%20In%20which%20of%20these%20is%20the%20particle%20model%20adequate%2C%20and%20in%20which%20does%20it%20break%20down%3A%20the%20flight%20of%20a%20long%20jumper%2C%20the%20rotation%20of%20a%20diver%2C%20the%20path%20of%20a%20wheelchair%2C%20the%20swing%20of%20a%20golf%20club%3F%0A%20%20%20%206.%20Displacement%20and%20distance%20coincide%20for%20the%20100%20m%20dash.%20Name%20a%20movement%20in%20your%20own%20field%20where%20they%20differ%20substantially%2C%20and%20say%20which%20one%20you%20would%20report.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Problems%0A%0A%20%20%20%201.%20Consider%20the%20data%20for%20the%20three%20medalists%20of%20the%20100%20m%20dash%20in%20Berlin%2C%202009%2C%20shown%20in%20the%2020%20m%20split%20table%20above.%3Cbr%3E%0A%20%20%20%20%20%20%20a.%20Calculate%20interval%20velocities%20and%20accelerations%20with%20%60split_kinematics%60%3B%20define%20average%20acceleration%20between%20the%20first%20and%20last%20velocity%20midpoints.%3Cbr%3E%0A%20%20%20%20%20%20%20b.%20Plot%20the%20graphs%20for%20the%20displacement%2C%20velocity%2C%20and%20acceleration%20versus%20time.%3Cbr%3E%0A%20%20%20%20%20%20%20c.%20Plot%20the%20graphs%20of%20velocity%20and%20acceleration%20versus%20partial%20distance%20(every%2020%20m).%3Cbr%3E%0A%20%20%20%20%20%20%20d.%20Calculate%20the%20average%20velocity%20and%20average%20acceleration%2C%20and%20the%20instants%20and%20values%20of%20the%20peak%20velocity%20and%20peak%20acceleration.%0A%0A%20%20%20%202.%20Repeat%20the%20calculations%20of%20problem%202%20with%20the%2010%20m%20split%20times%20of%20Graubner%20and%20Nixdorf%2C%20reusing%20the%20functions%20written%20above%2C%20and%20compare%20the%20results.%20The%20two%20published%20tables%20also%20differ%20slightly%20in%20some%20split%20times%3B%20distinguish%20those%20source%20differences%20from%20sampling%20effects.%20Which%20quantities%20change%20most%20when%20the%20distance%20interval%20is%20halved%20%E2%80%94%20position%2C%20velocity%2C%20or%20acceleration%3F%20Relate%20your%20answer%20to%20the%20discussion%20of%20finite%20differences%20above.%0A%0A%20%20%20%203.%20On%20an%20Olympic%20running%20track%2C%20runners%20A%20and%20B%20start%20running%20on%20the%20first%20lane%20(the%20inside%20lane)%20from%20the%20same%20position%20on%20the%20track%2C%20but%20in%20opposite%20directions.%20If%20%24%5ClVert%20v_A%20%5CrVert%20%3D%204%24%20m%2Fs%20and%20%24%5ClVert%20v_B%20%5CrVert%20%3D%206%24%20m%2Fs%2C%20how%20far%20from%20the%20starting%20line%20will%20the%20runners%20meet%3F%0A%0A%20%20%20%204.%20A%20body%20attached%20to%20a%20spring%20has%20its%20position%20(in%20cm)%20described%20by%20the%20equation%20%24x(t)%20%3D%202%5Csin(4%5Cpi%20t%20%2B%20%5Cpi%2F4)%24.%3Cbr%3E%0A%20%20%20%20%20%20%20a.%20Calculate%20the%20equations%20for%20the%20body's%20velocity%20and%20acceleration.%3Cbr%3E%0A%20%20%20%20%20%20%20b.%20Plot%20the%20position%2C%20velocity%2C%20and%20acceleration%20in%20the%20interval%20%24%5B0%2C%201%5D%24%20s.%0A%0A%20%20%20%205.%20The%20rectilinear%20motion%20of%20a%20particle%20is%20given%20by%20%24x(t)%20%3D%20-12t%5E3%20%2B%2015t%5E2%20%2B%205t%20%2B%202%24%20%5Bs%3B%20m%5D.%20Calculate%3A%3Cbr%3E%0A%20%20%20%20%20%20%20a.%20Velocity%20and%20acceleration%20of%20the%20particle%20as%20functions%20of%20time.%3Cbr%3E%0A%20%20%20%20%20%20%20b.%20Total%20distance%20traveled%20by%20the%20particle%20in%20the%20interval%20%240%20%5Cleq%20t%20%5Cleq%204%24%20s.%3Cbr%3E%0A%20%20%20%20%20%20%20c.%20Maximum%20value%20of%20the%20velocity%20magnitude%20reached%20by%20the%20particle%20in%20the%20interval%20%240%20%5Cleq%20t%20%5Cleq%204%24%20s.%3Cbr%3E%0A%20%20%20%20%20%20%20d.%20Plots%20of%20the%20position%2C%20velocity%20and%20acceleration%20of%20the%20particle%20in%20the%20interval%20%240%20%5Cleq%20t%20%5Cleq%204%24%20s.%0A%0A%20%20%20%206.%20A%20stone%20is%20released%20from%20the%20opening%20of%20a%20well%2C%20and%20the%20noise%20of%20its%20fall%20reaching%20the%20bottom%20is%20heard%204%20seconds%20later.%20Knowing%20that%20the%20speed%20of%20sound%20in%20air%20is%20340%20m%2Fs%2C%20determine%20the%20depth%20of%20the%20well.%0A%0A%20%20%20%207.%20The%20position%20of%20a%20particle%20is%20given%20by%20%24%5Coverrightarrow%7B%5Cmathbf%7Br%7D%7D(t)%20%3D%20t%5E2%5C%2C%5Chat%7B%5Cmathbf%7Bi%7D%7D%20%2B%20e%5E%7Bt%7D%5C%2C%5Chat%7B%5Cmathbf%7Bj%7D%7D%24.%3Cbr%3E%0A%20%20%20%20%20%20%20a.%20Calculate%20the%20velocity%20and%20acceleration%20of%20the%20particle%20as%20functions%20of%20time.%3Cbr%3E%0A%20%20%20%20%20%20%20b.%20Draw%20the%20path%20of%20the%20particle%20and%20show%20the%20vectors%20%24%5Coverrightarrow%7B%5Cmathbf%7Bv%7D%7D(t)%24%20and%20%24%5Coverrightarrow%7B%5Cmathbf%7Ba%7D%7D(t)%24%20at%20%24t%20%3D%201%24%20s.%0A%0A%20%20%20%208.%20Sometimes%20all%20you%20have%20is%20an%20image%20of%20the%20data%20you%20want.%20The%20first%20figure%20in%20this%20notebook%20contains%20velocity-versus-position%20data%20for%20Bolt's%20sprint%20at%20a%20much%20higher%20resolution%20than%20the%20split%20times%20we%20used.%20Software%20exists%20to%20recover%20numbers%20from%20such%20images%20by%20identifying%20points%20of%20interest%2C%20automatically%20where%20possible%20and%20manually%20where%20not%3B%20%5BWebPlotDigitizer%5D(https%3A%2F%2Fautomeris.io%2FWebPlotDigitizer%2F)%20is%20one%20such%20tool.%20Use%20it%20to%20extract%20the%20data%20from%20that%20figure%20and%20compare%20the%20result%20with%20the%20velocity%20curve%20you%20computed.%20It%20will%20not%20be%20easy%20%E2%80%94%20that%20is%20part%20of%20the%20lesson.%0A%0A%20%20%20%209.%20There%20is%20good%20free%20software%20for%20the%20kinematic%20analysis%20of%20human%20motion%2C%20among%20them%20%5BKinovea%5D(https%3A%2F%2Fwww.kinovea.org%2F)%2C%20%5BTracker%5D(https%3A%2F%2Fphyslets.org%2Ftracker%2F)%2C%20and%20SkillSpector%20(a%20historical%20program%20in%20the%20original%20tutorial%3B%20its%20former%20vendor%20link%20is%20no%20longer%20a%20reliable%20installation%20source).%20Visit%20their%20websites%20and%20work%20out%20which%20biomechanical%20applications%20each%20is%20suited%20to.%0A%0A%20%20%20%2010.%20Return%20to%20the%20movement%20you%20chose%20in%20Challenge%200.%20Write%20one%20paragraph%3A%20which%20kinematic%20quantity%20would%20answer%20your%20question%2C%20how%20you%20would%20measure%20it%2C%20how%20many%20times%20per%20second%20you%20would%20have%20to%20sample%20it%2C%20and%20whether%20you%20would%20have%20to%20differentiate%20or%20integrate%20to%20get%20there.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Final%20answers%20to%20the%20problems%0A%0A%20%20%20%201.%20With%20the%2020%20m%20tables%20and%20midpoint%20convention%2C%20the%20final%20velocities%20(m%2Fs)%20are%3A%20Bolt%20%5B6.9444%2C%2011.3636%2C%2011.9760%2C%2012.4224%2C%2012.0482%5D%3B%20Gay%20%5B6.8493%2C%2011.2360%2C%2011.8343%2C%2012.2699%2C%2011.8343%5D%3B%20Powell%20%5B6.8729%2C%2011.1111%2C%2011.6959%2C%2011.9048%2C%2011.4943%5D.%20Acceleration%20arrays%20(m%2Fs%C2%B2)%3A%20Bolt%20%5B1.9048%2C%200.3571%2C%200.2721%2C%20%E2%88%920.2288%5D%3B%20Gay%20%5B1.8667%2C%200.3449%2C%200.2624%2C%20%E2%88%920.2624%5D%3B%20Powell%20%5B1.7997%2C%200.3332%2C%200.1232%2C%20%E2%88%920.2401%5D.%20Mean%20race%20speeds%20are%2010.4384%2C%2010.2987%20and%2010.1626%20m%2Fs.%20Mean%20accelerations%20between%20velocity%20midpoints%20are%200.6982%2C%200.6732%20and%200.6150%20m%2Fs%C2%B2.%20Peak%20speeds%20occur%20at%207.115%2C%207.205%20and%207.260%20s%3B%20peak%20estimated%20accelerations%20at%202.600%2C%202.635%20and%202.6325%20s.%20These%20coarse%20estimates%20do%20not%20recover%20instantaneous%20starting%20acceleration.%0A%20%20%20%202.%20For%20the%2010%20m%20table%3A%20mean%20race%20speeds%20are%20unchanged%3B%20peak%20speeds%20are%20Bolt%2012.3457%20m%2Fs%20at%206.695%20s%2C%20Gay%2012.1951%20m%2Fs%20at%205.950%20s%2C%20and%20Powell%2011.9048%20m%2Fs%20over%20both%2050%E2%80%9360%20and%2060%E2%80%9370%20m.%20Peak%20estimated%20accelerations%20are%203.2506%2C%203.1183%20and%203.0929%20m%2Fs%C2%B2.%20Acceleration%20changes%20most.%20The%20source%20tables%20have%20slightly%20different%20split%20estimates%2C%20so%20the%20difference%20is%20not%20solely%20sampling%20resolution.%0A%20%20%20%203.%20After%2040%20s%3B%20160%20m%20along%20A%E2%80%99s%20direction%2C%20or%20240%20m%20along%20B%E2%80%99s%20direction.%0A%20%20%20%204.%20%24v%3D8%5Cpi%5Ccos(4%5Cpi%20t%2B%5Cpi%2F4)%24%20cm%2Fs%3B%20%24a%3D-32%5Cpi%5E2%5Csin(4%5Cpi%20t%2B%5Cpi%2F4)%24%20cm%2Fs%C2%B2.%20The%20period%20is%200.5%20s%2C%20so%20the%20requested%20interval%20contains%20two%20cycles%3B%20acceleration%20is%20opposite%20in%20sign%20to%20position%20and%20velocity%20is%20shifted%20by%20a%20quarter-cycle.%0A%20%20%20%205.%20%24v%3D-36t%5E2%2B30t%2B5%24%20m%2Fs%3B%20%24a%3D-72t%2B30%24%20m%2Fs%C2%B2.%20Total%20distance%20is%20approximately%20524.017%20m%3B%20peak%20speed%20is%20451%20m%2Fs%20at%204%20s.%20The%20position%20has%20one%20turning%20point%20within%20the%20interval%2C%20at%20%24t%3D(5%2B3%5Csqrt5)%2F12%5Capprox0.97568%24%20s.%0A%20%20%20%206.%20%24h%5Capprox70.552%24%20m%20for%20%24g%3D9.81%24%20m%2Fs%C2%B2%2C%20including%20the%20sound%20travel%20time.%0A%20%20%20%207.%20%24%5Cmathbf%20v%3D(2t%2Ce%5Et)%24%2C%20%24%5Cmathbf%20a%3D(2%2Ce%5Et)%24.%20At%201%20s%3A%20position%20%24(1%2Ce)%24%2C%20velocity%20%24(2%2Ce)%24%2C%20acceleration%20%24(2%2Ce)%24%20in%20the%20corresponding%20SI%20units.%20The%20path%20is%20%24y%3De%5E%7B%5Csqrt%20x%7D%24%20for%20%24t%5Cge0%24.%0A%20%20%20%208.%20Digitized%20estimates%20depend%20on%20calibration%20and%20selected%20pixels.%20A%20credible%20result%20is%20a%20positive%20speed%20curve%20peaking%20around%2012%E2%80%9312.5%20m%2Fs%20near%2060%E2%80%9370%20m%20and%20declining%20toward%20the%20finish%2C%20with%20stated%20axis%20calibration%20and%20digitization%20uncertainty.%0A%20%20%20%209.%20Kinovea%20supports%20practical%20calibrated%20video%20measurements%3B%20Tracker%20supports%20point%20tracking%20and%20physics%20models.%20SkillSpector%20is%20retained%20as%20a%20historical%20comparison%2C%20not%20a%20current%20installation%20recommendation.%20Select%20by%20calibration%2C%20frame%20rate%2C%20dimensionality%2C%20visibility%20and%20export%20needs%2C%20and%20check%20the%20maintained%20project%20documentation.%0A%20%20%20%2010.%20Answers%20depend%20on%20the%20chosen%20movement.%20A%20complete%20response%20specifies%20the%20quantity%2C%20reference%20frame%2C%20units%2C%20sensor%2C%20sampling%20interval%2C%20and%20whether%20differentiation%20or%20integration%20is%20required%2C%20with%20the%20initial%20conditions%20or%20noise%20treatment%20that%20operation%20needs.%0A%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20More%20examples%0A%0A%20%20%20%20-%20From%20Ruina%20and%20Pratap's%20book%2C%20study%20samples%2012.2%20and%2012.3.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo%2C%20np%2C%20plt)%3A%0A%20%20%20%20_tables%20%3D%20%7B%0A%20%20%20%20%20%20%20%20%2220%20m%22%3A%20%5B%5B2.88%2C%204.64%2C%206.31%2C%207.92%2C%209.58%5D%2C%20%5B2.92%2C%204.70%2C%206.39%2C%208.02%2C%209.71%5D%2C%20%5B2.91%2C%204.71%2C%206.42%2C%208.10%2C%209.84%5D%5D%2C%0A%20%20%20%20%20%20%20%20%2210%20m%22%3A%20%5B%5B1.88%2C%202.88%2C%203.78%2C%204.64%2C%205.47%2C%206.29%2C%207.10%2C%207.92%2C%208.74%2C%209.58%5D%2C%20%5B1.91%2C%202.93%2C%203.84%2C%204.70%2C%205.54%2C%206.36%2C%207.19%2C%208.02%2C%208.86%2C%209.71%5D%2C%20%5B1.88%2C%202.90%2C%203.83%2C%204.71%2C%205.56%2C%206.40%2C%207.24%2C%208.09%2C%208.95%2C%209.84%5D%5D%2C%0A%20%20%20%20%7D%0A%20%20%20%20_panels%20%3D%20%7B%7D%0A%20%20%20%20for%20_label%2C%20_rows%20in%20_tables.items()%3A%0A%20%20%20%20%20%20%20%20_fig%2C%20_axes%20%3D%20plt.subplots(2%2C%203%2C%20figsize%3D(12%2C%206))%0A%20%20%20%20%20%20%20%20for%20_name%2C%20_row%20in%20zip(%5B%22Bolt%22%2C%20%22Gay%22%2C%20%22Powell%22%5D%2C%20_rows)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20_time%20%3D%20np.r_%5B0%2C%20_row%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20_pos%20%3D%20np.linspace(0%2C%20100%2C%20len(_time))%0A%20%20%20%20%20%20%20%20%20%20%20%20_tv%2C%20_vel%2C%20_ta%2C%20_acc%20%3D%20split_kinematics(_time%2C%20_pos)%0A%20%20%20%20%20%20%20%20%20%20%20%20_pv%20%3D%20(_pos%5B1%3A%5D%20%2B%20_pos%5B%3A-1%5D)%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%20%20_pa%20%3D%20(_pv%5B1%3A%5D%20%2B%20_pv%5B%3A-1%5D)%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20_ax%2C%20_x%2C%20_y%20in%20zip(_axes.ravel()%2C%20%5B_time%2C%20_tv%2C%20_ta%2C%20_pos%2C%20_pv%2C%20_pa%5D%2C%20%5B_pos%2C%20_vel%2C%20_acc%2C%20_time%2C%20_vel%2C%20_acc%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_ax.plot(_x%2C%20_y%2C%20%22o-%22%2C%20label%3D_name)%0A%20%20%20%20%20%20%20%20for%20_ax%2C%20_ylabel%20in%20zip(_axes%5B0%5D%2C%20%5B%22Position%20%5Bm%5D%22%2C%20%22Velocity%20%5Bm%2Fs%5D%22%2C%20%22Acceleration%20%5Bm%2Fs%C2%B2%5D%22%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20_ax.set(xlabel%3D%22Time%20%5Bs%5D%22%2C%20ylabel%3D_ylabel)%0A%20%20%20%20%20%20%20%20for%20_ax%2C%20_ylabel%20in%20zip(_axes%5B1%5D%2C%20%5B%22Time%20%5Bs%5D%22%2C%20%22Velocity%20%5Bm%2Fs%5D%22%2C%20%22Acceleration%20%5Bm%2Fs%C2%B2%5D%22%5D)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20_ax.set(xlabel%3D%22Position%20%5Bm%5D%22%2C%20ylabel%3D_ylabel)%0A%20%20%20%20%20%20%20%20_axes%5B0%2C%200%5D.legend()%0A%20%20%20%20%20%20%20%20_fig.suptitle(f%22Final%20sprint%20curves%20%E2%80%94%20%7B_label%7D%20source%20table%22)%0A%20%20%20%20%20%20%20%20_fig.tight_layout()%0A%20%20%20%20%20%20%20%20_panels%5Bf%22Final%20plots%20for%20%7B_label%7D%20split%20problems%22%5D%20%3D%20mo.as_html(_fig)%0A%20%20%20%20%20%20%20%20plt.close(_fig)%0A%20%20%20%20mo.accordion(_panels%2C%20expanded%3DFalse)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%0A%20%20%20%20return%20(mo%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo%2C%20np%2C%20plt)%3A%0A%20%20%20%20_fig%2C_axes%3Dplt.subplots(3%2C3%2Cfigsize%3D(11%2C8))%0A%20%20%20%20_t%3Dnp.linspace(0%2C1%2C401)%3B_phase%3D4*np.pi*_t%2Bnp.pi%2F4%0A%20%20%20%20for%20_ax%2C_values%2C_unit%20in%20zip(_axes%5B%3A%2C0%5D%2C%5B2*np.sin(_phase)%2C8*np.pi*np.cos(_phase)%2C-32*np.pi**2*np.sin(_phase)%5D%2C%5B%22cm%22%2C%22cm%2Fs%22%2C%22cm%2Fs%C2%B2%22%5D)%3A%0A%20%20%20%20%20%20%20%20_ax.plot(_t%2C_values)%3B_ax.set(xlabel%3D%22Time%20%5Bs%5D%22%2Cylabel%3D_unit)%0A%20%20%20%20_t%3Dnp.linspace(0%2C4%2C401)%0A%20%20%20%20for%20_ax%2C_values%2C_unit%20in%20zip(_axes%5B%3A%2C1%5D%2C%5B-12*_t**3%2B15*_t**2%2B5*_t%2B2%2C-36*_t**2%2B30*_t%2B5%2C-72*_t%2B30%5D%2C%5B%22m%22%2C%22m%2Fs%22%2C%22m%2Fs%C2%B2%22%5D)%3A%0A%20%20%20%20%20%20%20%20_ax.plot(_t%2C_values)%3B_ax.set(xlabel%3D%22Time%20%5Bs%5D%22%2Cylabel%3D_unit)%0A%20%20%20%20_t%3Dnp.linspace(0%2C2%2C301)%3B_axes%5B0%2C2%5D.plot(_t**2%2Cnp.exp(_t))%3B_axes%5B0%2C2%5D.quiver(%5B1%2C1%5D%2C%5Bnp.e%2Cnp.e%5D%2C%5B2%2C2%5D%2C%5Bnp.e%2Cnp.e%5D%2Cangles%3D%22xy%22%2Cscale_units%3D%22xy%22%2Cscale%3D3%2Ccolor%3D%5B%22tab%3Ared%22%2C%22tab%3Ablue%22%5D)%0A%20%20%20%20_axes%5B0%2C2%5D.set(xlabel%3D%22x%20%5Bm%5D%22%2Cylabel%3D%22y%20%5Bm%5D%22%2Ctitle%3D%22Path%3B%20v%20and%20a%20coincide%20at%20t%3D1%22)%0A%20%20%20%20_axes%5B1%2C2%5D.plot(_t%2Cnp.c_%5B2*_t%2Cnp.exp(_t)%5D)%3B_axes%5B1%2C2%5D.set(xlabel%3D%22Time%20%5Bs%5D%22%2Cylabel%3D%22Velocity%20%5Bm%2Fs%5D%22)%0A%20%20%20%20_axes%5B2%2C2%5D.plot(_t%2Cnp.c_%5Bnp.full_like(_t%2C2)%2Cnp.exp(_t)%5D)%3B_axes%5B2%2C2%5D.set(xlabel%3D%22Time%20%5Bs%5D%22%2Cylabel%3D%22Acceleration%20%5Bm%2Fs%C2%B2%5D%22)%0A%20%20%20%20_axes%5B0%2C0%5D.set_title(%22Sinusoidal%20motion%22)%3B_axes%5B0%2C1%5D.set_title(%22Cubic%20position%22)%0A%20%20%20%20_fig.tight_layout()%0A%20%20%20%20_problem_plot%20%3D%20mo.accordion(%7B%22Final%20plots%20%E2%80%94%20analytic%20motion%20problems%22%3Amo.as_html(_fig)%7D%2Cexpanded%3DFalse)%0A%20%20%20%20plt.close(_fig)%0A%20%20%20%20_problem_plot%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Go%20deeper%0A%0A%20%20%20%20-%20Read%20the%20preface%20and%20first%20chapter%20of%20%5BRuina%20and%20Pratap's%20book%5D(https%3A%2F%2Fruina.tam.cornell.edu%2FBook%2Findex.html)%20on%20how%20someone%20should%20study%20mechanics.%0A%20%20%20%20-%20%5BSpatial%20and%20temporal%20characteristics%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fspatial_temporal_characteristics.py)%20%E2%80%94%20how%20simple%20measurements%20of%20spatial%20and%20temporal%20kinematic%20variables%20describe%20human%20gait.%0A%20%20%20%20-%20%5BThe%20minimum%20jerk%20hypothesis%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fminimum_jerk_hypothesis.py)%20%E2%80%94%20the%20conjecture%20that%20voluntary%20movements%20are%20organized%20along%20the%20smoothest%20trajectory%20possible%2C%20another%20case%20where%20the%20particle%20model%20earns%20its%20keep.%0A%20%20%20%20-%20%5BOrdinary%20differential%20equations%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fordinary_differential_equation.py)%20%E2%80%94%20the%20numerical%20version%20of%20the%20integrations%20we%20did%20symbolically%20here.%0A%20%20%20%20-%20%5BData%20filtering%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fdata_filtering.py)%20and%20%5Bresidual%20analysis%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fresidual_analysis.py)%20%E2%80%94%20what%20to%20do%20about%20the%20noise%20amplification%20we%20ran%20into%20when%20differentiating%20the%20split%20times.%0A%20%20%20%20-%20%5BProjectile%20motion%5D(https%3A%2F%2Fmolab.marimo.io%2Fgithub%2FBMClab%2FBMC%2Fblob%2Fmaster%2Fnotebooks%2Fprojectile_motion.py)%20%E2%80%94%20constant%20acceleration%20in%20two%20dimensions.%0A%0A%20%20%20%20%23%23%23%20Video%20lectures%20on%20the%20Internet%0A%0A%20%20%20%20-%20Khan%20Academy%3A%20%5BOne-dimensional%20motion%5D(https%3A%2F%2Fwww.khanacademy.org%2Fscience%2Fap-physics-1%2Fap-one-dimensional-motion)%0A%20%20%20%20-%20%5BPowers%20of%2010%2C%20Units%2C%20Dimensions%2C%20Uncertainties%2C%20Scaling%20Arguments%5D(https%3A%2F%2Fyoutu.be%2FGtOGurrUPmQ)%0A%20%20%20%20-%20%5B1D%20Kinematics%20%E2%80%94%20Speed%2C%20Velocity%2C%20Acceleration%5D(https%3A%2F%2Fyoutu.be%2Fq9IWoQ199_o)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Optional%20assignments%20from%20the%20original%20sources%0A%0A%20%20%20%20These%20original%20reading%20assignments%20remain%20available%20for%20further%20study.%20Their%20full%20statements%20and%20source-specific%20answer%20keys%20are%20external%20to%20this%20guide.%0A%0A%20%20%20%20-%20Answer%20the%2012%20questions%20of%20the%20%5BKhan%20Academy's%20test%20on%20one-dimensional%20motion%5D(https%3A%2F%2Fwww.khanacademy.org%2Fscience%2Fap-physics-1%2Fap-one-dimensional-motion%2Ftest%2Fap-one-dimensional-motion-unit-test%3Fmodal%3D1).%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20References%0A%0A%20%20%20%20-%20Graubner%20R%2C%20Nixdorf%20E%20(2011)%20%5BBiomechanical%20Analysis%20of%20the%20Sprint%20and%20Hurdles%20Events%20at%20the%202009%20IAAF%20World%20Championships%20in%20Athletics%5D(http%3A%2F%2Fwww.meathathletics.ie%2Fdevathletes%2Fpdf%2FBiomechanics%2520of%2520Sprints.pdf).%20%5BNew%20Studies%20in%20Athletics%5D(http%3A%2F%2Fwww.iaaf.org%2Fdevelopment%2Fnew-studies-in-athletics)%2C%201%2F2%2C%2019-53.%0A%0A%20%20%20%20-%20Krzysztof%20M%2C%20Mero%20A%20(2013)%20%5BA%20Kinematics%20Analysis%20Of%20Three%20Best%20100%20M%20Performances%20Ever%5D(http%3A%2F%2Fwww.ncbi.nlm.nih.gov%2Fpmc%2Farticles%2FPMC3661886%2F).%20Journal%20of%20Human%20Kinetics%2C%2036%2C%20149-160.%0A%0A%20%20%20%20-%20%5BResearch%20Projects%5D(http%3A%2F%2Fwww.iaaf.org%2Fdevelopment%2Fresearch)%20from%20the%20International%20Association%20of%20Athletics%20Federations.%0A%0A%20%20%20%20-%20Ruina%20A%2C%20Pratap%20R%20(2019)%20%5BIntroduction%20to%20Statics%20and%20Dynamics%5D(https%3A%2F%2Fruina.tam.cornell.edu%2FBook%2Findex.html).%20Oxford%20University%20Press.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
8f7831239542b608316c074d3fa68539