Instantaneous Velocity from Displacement and Time values
조회 수: 13 (최근 30일)
이전 댓글 표시
I have an array of displacement values:
A = 6.15980273514821 6.14448346902259 6.08845116089753 6.10237740189123 6.11608152736223 6.09595708310386 6.08721312535112 6.08234899002155 6.06714986110611 6.07783516323856 6.07792347114879 6.06942843038110 6.06019133043305 6.06261550608395 6.06392554207175 6.07403400879634 6.07480165775461 6.06023816732260 6.06413215823230 6.05980866775166 6.06188423198093 6.04539247866406 5.68706601480939 4.73891273276360 3.33633000147301 1.53377736474907 -0.520209410928023 -2.51119577960674 -4.41312227437336 -6.03989364014165 -7.19838227617766 -7.84654759197349 -7.92368071295474 -7.47392854770517 -6.51019780560905 -5.07107069256220 -3.36973422578889 -1.50050787991370 0.434155257792691 2.12215009949313 3.53006148407630 4.49610896364585 4.92744726480430 4.84056078059572 4.19929415413135 3.15383591162506 1.71286595583864 0.0390502408958251 -1.66192845643858 -3.33294692803218 -4.80249308136781 -5.90361702482525 -6.60666839598799 -6.83843319677040 -6.59833738833612 -5.93158620238645 -4.88505199941910 -3.58238928898158 -2.06162498335311 -0.427978306324553 0.962092147565693 2.21079406034967 3.14407320606021 3.65032027290402 3.71648804678824 3.36000706616073 2.65928916279476 1.60114590344026 0.338579806471336 -1.05833481215168 -2.38367221913169 -3.62501491627475 -4.59871735106957 -5.27463472098307 -5.58863040574497 -5.53036784838860 -5.12001863794680 -4.40681325596626 -3.46518774940656 -2.33147881794239 -1.14253025773902 -0.00120193018594039 1.05416533403683 1.83655243804809 2.34317552443391 2.51855601770804 2.35120342999738 1.90235109235008 1.20233485658391 0.313322912257294 -0.653990145486640 -1.69393994166169 -2.63711164436859 -3.42076266517382 -4.02060849879423 -4.33535045567851 -4.36763583177268 -4.13384363802889 -3.71579617090779 -3.09613185931849 -2.32897335309416 -1.52312351601432 -0.701703723373771 0.0711680436921752 0.672844202931666 1.10019974546121 1.29362318476486 1.24624021443152 1.00403874870039 0.578535494879244 0.0570974441039399 -0.533999805458487 -1.25937401298772 -1.89751921254205 -2.43726901746249 -2.86612610147998 -3.10413193915387 -3.17648524812527 -3.09292469052149 -2.86041286479119 -2.51737566053157 -2.07827258343221 -1.59714345763504 -1.12131785748468 -0.684853319666407 -0.311635411569174 -0.0471022387485308 0.124943852858797 0.127457738929030 0.0209992133123575 -0.216932487595427 -0.456658041475563 -0.764024038661157 -1.10649998879281 -1.39863622698775 -1.67789062705118 -1.88198237554644 -2.01286200701089 -2.05199182485704 -2.00598298730182 -1.92968767887397 -1.78696046276908 -1.64438292043114 -1.48021633242652 -1.31952886260734 -1.18885615969264 -1.07703421305764 -1.01084132179629 -0.971420999249929 -0.978062595741639 -1.01633916058985 -1.05795798469255 -1.09667325981377 -1.11085346887283 -1.12409055761398 -1.12016261878873 -1.10103924041538 -1.11490152792194 -1.11030180564636 -1.10262398739387 -1.11600110094369 -1.10915545278102 -1.12224635477858 -1.10928290200281 -1.11456953961204 -1.11506577559769 -1.10755461106175 -1.10241423280547 -1.11201076964811 -1.10010826509149 -1.11036709193206 -1.11166169215054 -1.11078017535838 -1.10075679537967 -1.10515068040254 -1.09841841252615 -1.10525068092991 -1.11013377694876 -1.11442014135102 -1.12395438247066 -1.09289999828900 -1.11631092596834 -1.13869108092094 -1.13121778411954 -1.11215444772567 -1.08305854689202 -1.07883522161388 -1.07326282278712 -1.09472438786799 -1.10750902820709 -1.11217002961544 -1.13381869147951 -1.12125917557095 -1.10723556079011 -1.12557827186296 -1.11694476376681 -1.10884208834009 -1.10912360573283 -1.12847109342915 -1.11858837419542 -1.13305857893018 -1.13154828131123 -1.11008600118065 -1.11778945807900 -1.11094000460207 -1.09273674128867 -1.10301981432017 -1.07016391933250 -1.05176885156881 -1.03808129358095
and an array of Time periods for the displacement values
T = 0 0.0667334000667334 0.100100100100100 0.133466800133467 0.166833500166834 0.200200200200200 0.233566900233567 0.266933600266934 0.300300300300300 0.333667000333667 0.367033700367034 0.400400400400400 0.433767100433767 0.467133800467134 0.500500500500501 0.533867200533867 0.567233900567234 0.600600600600601 0.633967300633967 0.667334000667334 0.700700700700701 0.734067400734067 0.767434100767434 0.800800800800801 0.834167500834168 0.867534200867534 0.900900900900901 0.934267600934268 0.967634300967634 1.00100100100100 1.03436770103437 1.06773440106773 1.10110110110110 1.13446780113447 1.16783450116783 1.20120120120120 1.23456790123457 1.26793460126793 1.30130130130130 1.33466800133467 1.36803470136803 1.40140140140140 1.43476810143477 1.46813480146813 1.50150150150150 1.53486820153487 1.56823490156823 1.60160160160160 1.63496830163497 1.66833500166834 1.70170170170170 1.73506840173507 1.76843510176844 1.80180180180180 1.83516850183517 1.86853520186854 1.90190190190190 1.93526860193527 1.96863530196864 2.00200200200200 2.03536870203537 2.06873540206874 2.10210210210210 2.13546880213547 2.16883550216884 2.20220220220220 2.23556890223557 2.26893560226894 2.30230230230230 2.33566900233567 2.36903570236904 2.40240240240240 2.43576910243577 2.46913580246914 2.50250250250250 2.53586920253587 2.56923590256924 2.60260260260260 2.63596930263597 2.66933600266934 2.70270270270270 2.73606940273607 2.76943610276944 2.80280280280280 2.83616950283617 2.86953620286954 2.90290290290290 2.93626960293627 2.96963630296964 3.00300300300300 3.03636970303637 3.06973640306974 3.10310310310310 3.13646980313647 3.16983650316984 3.20320320320320 3.23656990323657 3.26993660326994 3.30330330330330 3.33667000333667 3.37003670337004 3.40340340340340 3.43677010343677 3.47013680347014 3.50350350350350 3.53687020353687 3.57023690357024 3.60360360360360 3.63697030363697 3.67033700367034 3.70370370370370 3.73707040373707 3.77043710377044 3.80380380380380 3.83717050383717 3.87053720387054 3.90390390390390 3.93727060393727 3.97063730397064 4.00400400400400 4.03737070403737 4.07073740407074 4.10410410410410 4.13747080413747 4.17083750417084 4.20420420420420 4.23757090423757 4.27093760427094 4.30430430430430 4.33767100433767 4.37103770437104 4.40440440440441 4.43777110443777 4.47113780447114 4.50450450450451 4.53787120453787 4.57123790457124 4.60460460460461 4.63797130463797 4.67133800467134 4.70470470470471 4.73807140473807 4.77143810477144 4.80480480480481 4.83817150483817 4.87153820487154 4.90490490490491 4.93827160493827 4.97163830497164 5.00500500500501 5.03837170503837 5.07173840507174 5.10510510510511 5.13847180513847 5.17183850517184 5.20520520520521 5.23857190523857 5.27193860527194 5.30530530530531 5.33867200533867 5.37203870537204 5.40540540540541 5.43877210543877 5.47213880547214 5.50550550550551 5.53887220553887 5.57223890557224 5.60560560560561 5.63897230563897 5.67233900567234 5.70570570570571 5.73907240573907 5.77243910577244 5.80580580580581 5.83917250583917 5.87253920587254 5.90590590590591 5.93927260593927 5.97263930597264 6.00600600600601 6.03937270603937 6.07273940607274 6.10610610610611 6.13947280613947 6.17283950617284 6.20620620620621 6.23957290623957 6.27293960627294 6.30630630630631 6.33967300633967 6.37303970637304 6.40640640640641 6.43977310643977 6.47313980647314 6.50650650650651 6.53987320653987 6.57323990657324 6.60660660660661 6.63997330663997 6.67334000667334 6.70670670670671 6.74007340674007 6.77344010677344 6.80680680680681 6.84017350684017 6.87354020687354 6.90690690690691 6.94027360694027 6.97364030697364 7.00700700700701
And i need to get the values of instantaneous velocity at the displacement positions.
I considered using diff and gradient, but what i would get is the average velocity.
The displacement values obtained are experimental, so there's no function I can differentiate to obtain instantaneous velocity.
Is there a way to numerically differentiate the displacement values to get instantaneous velocity, not average velocity?
댓글 수: 0
답변 (1개)
Bjorn Gustavsson
2021년 2월 12일
There are busloads of things you could try: interpolate to a denser time-grid (using 'phcip' or 'spline' for interpolation method) and take the gradients from that output, you could try some low-order fliding polynomial fits (quadratic over 3-5 points?) and calculate the gradient from those polynomials. But why would they be that much "better" than gradient?
HTH
댓글 수: 3
Bjorn Gustavsson
2021년 2월 12일
편집: Bjorn Gustavsson
2021년 2월 12일
The question is "half-rethorical", in the sense that you have what you have in terms of displacement vs time. From some sort of philosophical perspective you have no information about the position at the intervalls inbetween the observations, and because of that you'll have no information about the velocities. From a more practical perspective we can (and have done and will keep on doing) assumptions about smoothness of the trajectory. After that you can easily start using gradient to estimate the instantaneous velocity or use other methods. Which is better will depend on how smooth you expect the trajectory (or the acceleration) to be compared to the expected noise-level of your measurements. If you know something more about the trajectory, for example that the acceleration should behave in some neatish way you can use that to fit a smooth trajectory that is consisten to your measurements taking noise into account. Just try different things and see what you have in your data.
참고 항목
카테고리
Help Center 및 File Exchange에서 Spline Postprocessing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!