Given two points,
and
, a new location x, and a method "linear" or "cubic", return the value of a linear or cubic interpolant through the two points at the new location x, using the formulas below.
Linear: 
Cubic: 
where
and
.
(This formulation for the cubic interpolant has zero derivative at each interpolation point.)
If
, your function should produce an error with the message "x2 must be greater than x1".
If
, your function should produce a warning with the message "x is outside the interval [x1,x2]" (but still return the value of the interpolant).
If the method is given as anything other than "linear" or "cubic", your function should produce an error with the message "method must be either "linear" or "cubic"".
Solution Stats
Problem Comments
4 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers132
Suggested Problems
-
Select every other element of a vector
36060 Solvers
-
Construct an index vector from two input vectors in vectorized fashion
448 Solvers
-
468 Solvers
-
Create an index-powered vector
933 Solvers
-
620 Solvers
More from this Author12
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
This problem is not necessarily easy because it tests two disparate things. One of those things, warnings and errors, is rarely presented or tested on Cody. It would be helpful to have more problems that test warning and error usage.
This is just to say that I fully agree with what goc3 wrote!
Rarely I have seen warnings and errors tested on Cody.
For example it would be nice to test errors where (as it is good practice and can be set in the MATLAB code Analyzer preferences),
"The first argument of error should be a message identifier".
Is there a problem with testcase 2 ?
Nikolaos, the reference solution is working fine, there seems to be no problem with the test suite.