Fitting an equation to a non-linear data set

I'm looking to try and fit an equation to this data set in the graph below (The x and y data are saved in two vetors both with n=401). I've tried using the Matlab curve fitting tool box but non of the options come close. Anyone got any idea's about the best way to proceed? I think the equation will take the form of an ODE? Thanks
angv.JPG

 Accepted Answer

Fit your data by modeling the process that created them, and estimating the parameters of that model.
We can probably help if we have that information, and a description of the process and the model.

4 Comments

The data was taken using a motion tracking software for analysising gait (it outputs x and y position as well as time, the data was then read into matlab to calculate angles and velocities). This particular data shows the angular velocity change with time for the subjects hip motion throughout one stride. I've had a look around and there doesn't seem to be much infomation I can find for a base equation to describe the motion so unsure how to go about modelling the process that created the data as you've suggested. Hope that clears it up a bit, thanks.
Gait analysis is not an area of my expertise. I did a PubMed (link) search, and it only turned up 25 citations for ‘gait analysis hip angle’. One citation it returned is: Muscle force estimation in clinical gait analysis using AnyBody and OpenSim. J Biomech. 2019 Feb 5 (link). (It’s behind a paywall, so I don’t have access to the article itself.) They also use MATLAB (according to the abstract). There is only one possibly relevant submission in the File Exchange on ‘gait analysis’.
It looks as though you will be making a significant contribution to the relevant literature in your research.
An area that could help is research on bipedal walking robots. See for example the series beginning with: MATLAB and Simulink Robotics Arena: Walking Robots, Part 1: Modeling and Simulation (link). This appears to require knowledge of nonlinear control theory, however it’s likely more promising from a modeling perspective than physiology and biomechanics articles. There are File Exchange submissions related to this series, so code already exists.
Thank you for your help!
As always, my pleasure!

Sign in to comment.

More Answers (1)

John D'Errico
John D'Errico on 3 Mar 2019
Edited: John D'Errico on 3 Mar 2019
This is an example of a case where you have no reason to use any specific nonlinear model. Your hope that an ODE might be appropriate seems to have no real basis in where the data came from. Yes, in theory, all models of physical systems can arguably be described as an ODE. But without the ODE, there is little reason to go down that avenue, as the use of an ODE itself causes some additional complexities.
But where does that leave you? I would suggest that since the data itself does not appear to be seriously contaminated with random noise, yet you have no real candidate for a model, this makes your problem well suited to fit with an interpolating spline. And while the many parameters that define a spline will be of absolutely no value to you in terms of understanding the process, what meaning would you assign to the parameters of some other random function that just happens to predict the behaviour of that same curve? That is, if you were to choose some model just because it happens to be able to approximate your data sufficiently well, the parameters of that function are also relatively useless, since the model was chosen for no reason other than that it approximates one specific curve.
So just use a spline model. (In fact, one can even show that a spline is the solution of a specific differential equation model. But introducing that ODE into the problem does not offer any real value.) The specific spline you use may depend on issues that have not been discussed. For example, if there is some need for smoothing, then a smoothing or least squares psline might be pertinent. If a classical spline is a problem due to ringing/oscillations, then a pchip interpolant might be appropriate. What are the appropriate boundary conditions on the spline? (Again, the roots of a spline in an ODE come into play, but only peripherally.)

3 Comments

I believe the intent is to estimate parameters in an identified model, perhaps then to calculating the forces produced by various muscle groups at each phase of the gait cycle..
Yes, but my point is there has been no model identified or posed. You cannot estimate parameters in an unspecified model.
My impression, as the conversation unfolded, is that finding a model is the purpose of the post.

Sign in to comment.

Categories

Products

Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!