Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

MATLAB Matlab polynomial interpolation

  1. Jun 15, 2011 #1
    I have this function (1-6*x^2)^-1 and i want to polynomial interpolation (lagrange and spline) in 21 equidistant points [-1,1]
    I made this function

    x =linspace(-1,1,21);
    y = (1-6*x^2)^-1;

    plot(z,(1-6*x^2)^-1, z, p, z, s);

    and I receive error at y = (1-6*x^2)^-1;
    if I use a function with x only instead of x^2 it works.
    How can I fix it?
  2. jcsd
  3. Jun 15, 2011 #2


    Staff: Mentor

    I don't have much experience using matlab, but your problem might be that you need parentheses around your exponent, like so.
    y = (1-6*x^2)^(-1);
  4. Jun 15, 2011 #3
    doesn t work it says something that matrix must be square
  5. Jun 15, 2011 #4


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    It needs to be x.^2 not x^2

    x^2 is literally taking the matrix x and multiplying it by itself (which you can't), x.^2 is squaring every element in x
  6. Jun 15, 2011 #5
    thanks it worked
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook