-
-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interpolations to implement #2
Comments
Some are from here: https://www.ncbi.nlm.nih.gov/pubmed/12803771 @sipah00 we should start by gathering sources. |
I have the pdfs in the zotero library. Will give acess to all for the ivivc or diffeq lib |
we need to find a good source for things like B-splines and regression splines which I don't think are in those. |
http://www.cad.zju.edu.cn/home/zhx/GM/009/00-bsia.pdf Do we need to implement every variant of B spline (above methods)? |
Nah, pick one. Not uniformly spaced method though. We should do them all but to start chord is probably good enough. |
@ChrisRackauckas @vjd Okay, My mid-semester exams are from 18 to 26 sep, So I will start working after 26 sep. |
I'm back 😁 , working on |
update is that we all missed you ;) |
One set of methods which would be quick to work on @eeshan9815 would be the curve fits. The types are mentioned in https://www.ncbi.nlm.nih.gov/pubmed/12803771 . You can implement them by defining the functional form and using Optim.jl or LsqFit.jl to optimize the fitted curve from the data. These should be the
|
Okay, I am currently working on cubic spline and order testing (#7), for both of which, I will have a PR in by tonight or tomorrow morning. I will get to the next set of methods after them. |
That sounds perfect. I was just making sure you had something in mind since I thought @sipah00 was doing splines (sounds like you two are working together?). LOESS, GPs, and regression splines can go last since they will be more difficult, and those will be the true unique parts of the library. (@vjd, if we're looking for another publication, we can think about doing one on regression splines for time varying covariate estimation from data) |
I realized that the B-splines you did are regression splines, so I knocked those off. |
@ChrisRackauckas still thinking of the publications you mentioned in the earlier comment here. Totally worth it. |
It satisfies y(t)=y(t_{i}) at every data point, and this is something that the traditional interpolating polynomials all do, like:
and that also serves as a good list of interpolants to implement. In addition, there are other methods which do not satisfy y(t)=y(t_{i}) and instead smooth the data. This can be useful on noisy data. Methods include:
Those are the fancy ways to do it correctly, but the older packages have some methods which are lower parameterizations using simple functions. These can be better when you have less data points. The functions include:
In these cases, a simple curve fitting / parameter estimation is done to find the best parameters for the curve through the data, and that is taken as the form of the interpolation.
The text was updated successfully, but these errors were encountered: