<< Graphics`PlotField3D`

<< Graphics`Animation`

Track1[s_] := {24  Cos[s], 18  Sin[s], -4.5 s}

Track2[s_] := {aa*(s^5) + ab*(s^4) + ac*(s^3) + ad*(s^2) + ae*s + af, 
        ag*(s^5) + ah*(s^4) + ai*(s^3) + aj*(s^2) + ak*s + al, 
        am*(s^5) + an*(s^4) + ao*(s^3) + ap*(s^2) + aq*s + ar}

aa = 0.017632793771575256; ab = -0.7299949362278728; 
    ac = 12.371521557375234; ad = -109.47662270028589; 
    ae = 503.5963244916706; af = -920.1678771421483; 
    ag = -0.05791763414188789; ah = 2.4820610753868726; 
    ai = -41.65011447142421; aj = 339.4431303294815; 
    ak = -1328.1908596154642; al = 1973.982494950761; 
    am = 0.07672619011329923; an = -2.8496830767668886; 
    ao = 41.40619742925571; ap = -293.6379779505306; 
    aq = 1013.3231316364903; ar = -1382.947294228595;

Track3[
        s_] := {((-24 (s - 10))/(2  π)) -  9*Sin[s - 10] + 
          2.98467, -2*(s - 10) + 15.1198, -12*Cos[s - 10] - 
          19.5281}

Track4[s_] := {a*(s^5) + bb*(s^4) + c*(s^3) + d*(s^2) + e*s + f, 
        gg*(s^5) + h*(s^4) + i*(s^3) + j*(s^2) + k*s + l, 
        mm*(s^5) + n*(s^4) + o*(s^3) + p*(s^2) + q*s + r}

a = 0.25127856743933813; bb = -22.90831829936434; 
    c = 832.5755414330526; d = -15075.780650026612; 
    e = 135986.92331072333; f = -488803.02557583264; 
    gg = -0.14744879985669174; h = 13.287380446651824; 
    i = -477.38336433355005; j = 8547.592776583971; 
    k = -76279.77977988559; l = 271467.6877096457; 
    mm = -0.03409956663125371; n = 3.261971834542712; 
    o = -124.67551621746625; p = 2379.227244331166; 
    q = -22658.95127726288; r = 86080.37724569948;

Track5a[s_] := {(5 (Sqrt[ 29])) ((s - 20)/(5  π)), 4  Cos[s - 20], 
        4  Sin[s - 20]}

RotateZ = {{(20/25), ((-15)/25), 0}, {(15/25), (20/25), 0}, {0, 0, 1}}; 
    RotateY = {{(20/(10 (Sqrt[5]))), 0, (10/(10 (Sqrt[5])))}, {0, 1, 
          0}, {((-10)/(10 (Sqrt[5]))), 0, (20/(10 (Sqrt[5])))}};

Track5[s_] := 
      RotateY . (RotateZ . Track5a[s]) - {12 - (24/(5 (Sqrt[5]))), 
          13 + (16/5), 15 + (12/(5 (Sqrt[5])))}

Track6[s_] := {ba*(s^5) + bba*(s^4) + bc*(s^3) + bd*(s^2) + be*s + bf, 
        bg*(s^5) + bh*(s^4) + bi*(s^3) + bj*(s^2) + bk*s + bl, 
        bm*(s^5) + bn*(s^4) + bo*(s^3) + bp*(s^2) + bq*s + br}

ba = 0.0011131302149311637; bba = -0.19382305972726271; 
    bc = 13.396963946277145; bd = -459.3376377274803; 
    be = 7811.220615128493; bf = -52699.797910067085; 
    bg = 0.001174063343335417; bh = -0.19676866678092036; 
    bi = 13.050404403103826; bj = -428.4698670102909; 
    bk = 6971.551338171527; bl = -45040.44750743111; 
    bm = 0.003125518744425123; bn = -0.5160150087754981; 
    bo = 33.77641615320961; bp = -1095.2578505724525; 
    bq = 17587.032828275995; br = -111845.08298438837;

Track7[
        s_] := {-(s - 40) + 
          12, (((-18 (s - 40))/(2  π)) - 6*Sin[s - 40]) - 
          8, -9*Cos[s - 40] - 22}

track[s_] := 
      Which[s ≤ 5.5, Track1[s], 5.5 < s ≤ 10, 
        Track2[s], 10 < s ≤ 10 + 2  π, Track3[s], 
        10 + 2  π < s ≤ 20, Track4[s], 
        20 < s ≤ 30.7, Track5[s], 30.7 < s ≤ 40, 
        Track6[s], 40 < s ≤ 40 + 2  π, Track7[s]]

g1 = 
      ParametricPlot3D[track[s], {s, 0, 46}, PlotPoints -> 1000, 
        ViewPoint -> {-3.355,  -0.226,  0.379}, 
        Compiled -> False]

x[s_] := track[s] . {1, 0, 0}; y[s_] := track[s] . {0, 1, 0}; 
    z[s_] := track[s] . {0, 0, 1};

w[s_] := ((x'[s]^2 + y'[s]^2 + z'[s]^2)/(-2 (9.8)*z[s]))

t[σ_] := 
      NIntegrate[(Sqrt[((x'[s]^2 + y'[s]^2 + z'[s]^2)/(-2 (9.8)*z[s]))]), {s, 0, σ}, Compiled -> False, 
        MaxRecursion -> 10]

Plot[t[σ],{σ,0,46}]

κ = 26.1; dk =  .1;

Off[Solve::"nlim"]; Off[NIntegrate::"nlim"];

MatrixForm[Table[FindRoot[t[σ]==α,{σ,{.00001,0.564α+.00001}},Compiled->False],{α,dk,κ,dk}]]

A=Join[{0},σ/.%];

B = 
      MatrixForm[
        Table[{n, A[[IntegerPart[((n + dk)/dk)]]]}, {n, 0, κ, 
            dk}]]

B=(({{0, 0}, {0.1`, 0.0006405228373332661`}, {0.2`, 0.002562089040948939`}, {0.30000000000000004`, 0.005764677836148784`}, {0.4`, 0.010248208441883084`}, {0.5`, 0.016012470887108894`}, {0.6000000000000001`, 0.023057029172012217`}, {0.7000000000000001`, 0.03138109762940827`}, {0.8`, 0.04098339014959572`}, {0.9`, 0.05186194445545353`}, {1.`, 0.06401392261559095`}, {1.1`, 0.07743539077000884`}, {1.2000000000000002`, 0.0921210819215059`}, {1.3`, 0.10806414701510755`}, {1.4000000000000001`, 0.1252559010190297`}, {1.5`, 0.14368557228405388`}, {1.6`, 0.16334006497290365`}, {1.7000000000000002`, 0.18420374565954709`}, {1.8`, 0.2062582661138511`}, {1.9000000000000001`, 0.2294824346109098`}, {2.`, 0.2538521476507333`}, {2.1`, 0.2793403926014845`}, {2.2`, 0.305917329425631`}, {2.3000000000000003`, 0.3335504563595765`}, {2.4000000000000004`, 0.362204860366269`}, {2.5`, 0.39184354866403714`}, {2.6`, 0.4224278530490328`}, {2.7`, 0.45391785479194396`}, {2.8000000000000003`, 0.4862730452265038`}, {2.9000000000000004`, 0.5194526450892636`}, {3.`, 0.5534162836133095`}, {3.1`, 0.5881244973659034`}, {3.2`, 0.6235392336558229`}, {3.3000000000000003`, 0.6596243123104283`}, {3.4000000000000004`, 0.696345835595472`}, {3.5`, 0.7336725398857373`}, {3.6`, 0.7715760864643448`}, {3.7`, 0.8100312922409099`}, {3.8000000000000003`, 0.8490163040324721`}, {3.9000000000000004`, 0.8885127222411117`}, {4.`, 0.9285057705216969`}, {4.1000000000000005`, 0.9689838955995341`}, {4.2`, 1.0099398245439895`}, {4.3`, 1.0099398245439895`}, {4.4`, 1.093271170078723`}, {4.5`, 1.1356494655974974`}, {4.6000000000000005`, 1.1785104708212302`}, {4.7`, 1.2218644118707158`}, {4.800000000000001`, 1.2657251096426416`}, {4.9`, 1.3101100208244463`}, {5.`, 1.3550403047637665`}, {5.1000000000000005`, 1.4005409204824968`}, {5.2`, 1.4466407579098413`}, {5.300000000000001`, 1.4933728072752446`}, {5.4`, 1.5407743705132821`}, {5.5`, 1.588887318428685`}, {5.6000000000000005`, 1.6377583971587526`}, {5.7`, 1.687439587014223`}, {5.800000000000001`, 1.7379885158748094`}, {5.9`, 1.7894689276692086`}, {6.`, 1.8419512036612191`}, {6.1000000000000005`, 1.8955129296794375`}, {6.2`, 1.950239495135057`}, {6.300000000000001`, 2.0062246982112772`}, {6.4`, 2.063571313713649`}, {6.5`, 2.122391552401691`}, {6.6000000000000005`, 2.1828072986477953`}, {6.7`, 2.244949951443707`}, {6.800000000000001`, 2.308959606044604`}, {6.9`, 2.374983194446142`}, {7.`, 2.4431710507995934`}, {7.1000000000000005`, 2.5136711961119897`}, {7.2`, 2.5866204631217524`}, {7.300000000000001`, 2.6621315742943037`}, {7.4`, 2.740275584257788`}, {7.5`, 2.821059961090909`}, {7.6000000000000005`, 2.904404726012017`}, {7.7`, 2.990119160051596`}, {7.800000000000001`, 3.0778934962236493`}, {7.9`, 3.167302356268931`}, {8.`, 3.257836124802239`}, {8.1`, 3.348950208816563`}, {8.200000000000001`, 3.4401227138547625`}, {8.3`, 3.530904849076779`}, {8.4`, 3.6209526980797255`}, {8.5`, 3.71003739927376`}, {8.6`, 3.7980380841670045`}, {8.700000000000001`, 3.884924993048199`}, {8.8`, 3.9707395034760116`}, {8.9`, 4.055575458089082`}, {9.`, 4.1395641519340955`}, {9.1`, 4.2228615194589265`}, {9.200000000000001`, 4.305642294605832`}, {9.3`, 4.388095620616783`}, {9.4`, 4.470417328301537`}, {9.5`, 4.552814940803993`}, {9.600000000000001`, 4.6355048994091534`}, {9.700000000000001`, 4.718714460592981`}, {9.8`, 4.802683743874272`}, {9.9`, 4.887667149306361`}, {10.`, 4.973940836576902`}, {10.100000000000001`, 5.06180034295833`}, {10.200000000000001`, 5.1515671105620156`}, {10.3`, 5.243590102023164`}, {10.4`, 5.338246138088367`}, {10.5`, 5.435936074620788`}, {10.600000000000001`, 5.537068858335842`}, {10.700000000000001`, 5.641883781318581`}, {10.8`, 5.750469449420946`}, {10.9`, 5.863081070019275`}, {11.`, 5.98018700300058`}, {11.100000000000001`, 6.1024977406485394`}, {11.200000000000001`, 6.231010840250969`}, {11.3`, 6.367116522983794`}, {11.4`, 6.512718495015538`}, {11.5`, 6.670496702631234`}, {11.600000000000001`, 6.844331107310708`}, {11.700000000000001`, 7.040002743371423`}, {11.8`, 7.266083307677405`}, {11.9`, 7.53308455283631`}, {12.`, 7.840728039574623`}, {12.100000000000001`, 8.154468270634116`}, {12.200000000000001`, 8.436811661309232`}, {12.3`, 8.684827756506902`}, {12.4`, 8.907895602699403`}, {12.5`, 9.11450804000701`}, {12.600000000000001`, 9.310938085096426`}, {12.700000000000001`, 9.501879834942967`}, {12.8`, 9.691038925084158`}, {12.9`, 9.881060681733885`}, {13.`, 10.07246357005749`}, {13.100000000000001`, 10.263008995691274`}, {13.200000000000001`, 10.450355147921185`}, {13.3`, 10.632895785147191`}, {13.4`, 10.809793666514164`}, {13.5`, 10.98089619546905`}, {13.600000000000001`, 11.146542616162469`}, {13.700000000000001`, 11.307404124946322`}, {13.8`, 11.464312861971395`}, {13.9`, 11.618239893779148`}, {14.`, 11.770264281983447`}, {14.100000000000001`, 11.921642247352247`}, {14.200000000000001`, 12.073834109639925`}, {14.3`, 12.228694481701396`}, {14.4`, 12.388695522473071`}, {14.5`, 12.557251769788877`}, {14.600000000000001`, 12.739035662762301`}, {14.700000000000001`, 12.938784670822622`}, {14.8`, 13.154381306187023`}, {14.9`, 13.36875090811164`}, {15.`, 13.56627284289988`}, {15.100000000000001`, 13.746233686460403`}, {15.200000000000001`, 13.913574643919585`}, {15.3`, 14.072815961500904`}, {15.4`, 14.227253549050006`}, {15.5`, 14.379263412464072`}, {15.600000000000001`, 14.530645308827127`}, {15.700000000000001`, 14.682837583397415`}, {15.8`, 14.837055889638256`}, {15.9`, 14.994374643261997`}, {16.`, 15.155754037562172`}, {16.1`, 15.322015352715493`}, {16.2`, 15.493779958656711`}, {16.3`, 15.671361003486135`}, {16.400000000000002`, 15.854520492514542`}, {16.5`, 16.0423377334233`}, {16.6`, 16.23310555799651`}, {16.7`, 16.4255392364088`}, {16.8`, 16.62764927222269`}, {16.900000000000002`, 16.85364276012984`}, {17.`, 17.113862408823156`}, {17.1`, 17.38278628842223`}, {17.2`, 17.61735888379898`}, {17.3`, 17.816719558504726`}, {17.400000000000002`, 17.993448370554297`}, {17.5`, 18.15688322391985`}, {17.6`, 18.31334613866544`}, {17.7`, 18.467671812675853`}, {17.8`, 18.62434066223932`}, {17.900000000000002`, 18.788412325765492`}, {18.`, 18.966952934409722`}, {18.1`, 19.171689980392994`}, {18.2`, 19.424427328561276`}, {18.3`, 19.75542609488724`}, {18.400000000000002`, 20.144124110697735`}, {18.5`, 20.526070706545276`}, {18.6`, 20.89814599706331`}, {18.7`, 21.266282300328047`}, {18.8`, 21.637349033318117`}, {18.900000000000002`, 22.018289203508395`}, {19.`, 22.415278278519196`}, {19.1`, 22.832756883809342`}, {19.200000000000003`, 23.272421882503746`}, {19.3`, 23.732590697239594`}, {19.400000000000002`, 24.207968061053563`}, {19.5`, 24.690504438186146`}, {19.6`, 25.171198180122555`}, {19.700000000000003`, 25.64212582992842`}, {19.8`, 26.098411663808463`}, {19.900000000000002`, 26.538952079807434`}, {20.`, 26.966412242140812`}, {20.1`, 27.38634920708072`}, {20.200000000000003`, 27.806115555254905`}, {20.3`, 28.233661057779265`}, {20.400000000000002`, 28.676224996001668`}, {20.5`, 29.139049949898773`}, {20.6`, 29.623989820134966`}, {20.700000000000003`, 30.12878966453907`}, {20.8`, 30.647071056889917`}, {20.900000000000002`, 31.158368200286336`}, {21.`, 31.611438411670424`}, {21.1`, 32.00398124110642`}, {21.200000000000003`, 32.35348081756872`}, {21.3`, 32.674023539873`}, {21.400000000000002`, 32.97529737779827`}, {21.5`, 33.264531452015355`}, {21.6`, 33.54757776620535`}, {21.700000000000003`, 33.83004290128066`}, {21.8`, 34.11831549352408`}, {21.900000000000002`, 34.42097389641449`}, {22.`, 34.751968482556244`}, {22.1`, 35.1388066052801`}, {22.200000000000003`, 35.637750633653596`}, {22.3`, 36.20678680201927`}, {22.400000000000002`, 36.64266621799681`}, {22.5`, 36.9834446878571`}, {22.6`, 37.2742436811204`}, {22.700000000000003`, 37.537100928545975`}, {22.8`, 37.78299444523647`}, {22.900000000000002`, 38.01855398564021`}, {23.`, 38.248320639122205`}, {23.1`, 38.47578642962223`}, {23.200000000000003`, 38.704023545635884`}, {23.3`, 38.935885596336924`}, {23.400000000000002`, 39.174438737347785`}, {23.5`, 39.42288896578367`}, {23.6`, 39.6837510381429`}, {23.700000000000003`, 39.95622280253244`}, {23.8`, 40.23150976346475`}, {23.900000000000002`, 40.499084690556565`}, {24.`, 40.753646618755276`}, {24.1`, 40.994652410671335`}, {24.200000000000003`, 41.22447108068202`}, {24.3`, 41.446701529947305`}, {24.400000000000002`, 41.66556901965518`}, {24.5`, 41.88631631859723`}, {24.6`, 42.11594832257832`}, {24.700000000000003`, 42.36638795858856`}, {24.8`, 42.663305407287076`}, {24.900000000000002`, 43.06920606828072`}, {25.`, 43.513622162849884`}, {25.1`, 43.83444875146046`}, {25.200000000000003`, 44.0950699874922`}, {25.3`, 44.32934133168812`}, {25.400000000000002`, 44.551837649446085`}, {25.5`, 44.7706941484314`}, {25.6`, 44.991447622889986`}, {25.700000000000003`, 45.218570432705235`}, {25.8`, 45.455907117034315`}, {25.900000000000002`, 45.706281473231556`}, {26.`, 45.970268293525905`}, {26.1`, 46.24411680512278`}}));

gr = 
      Table[Show[{g1, 
            Graphics3D[{PointSize[ .02], 
                Point[{x[B[[IntegerPart[((t + dk)/dk)], 2]]], 
                    y[B[[IntegerPart[((t + dk)/dk)], 2]]], 
                    z[B[[IntegerPart[((t + dk)/dk)], 2]]]}]}]}, 
          AspectRatio -> 1], {t, 0, κ, dk}]

Show[gr]