1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Maximum error in not-a-knot spline of bessel function

  1. Jul 25, 2014 #1

    Maylis

    User Avatar
    Gold Member

    1. The problem statement, all variables and given/known data
    If you didn't already, download splineFunctions.zipView in a new window. This contains the splineE7.p and splinevalueE7.p function files.

    The syntax is as follows: If Xdata and Ydata are vectors with the same number of elements, then four various splines can be created as

    Code (Text):
    SN = splineE7(Xdata,Ydata,'N');        % Natural
    SK = splineE7(Xdata,Ydata,'K');        % not-a-knot
    SP = splineE7(Xdata,Ydata,'P');        % Periodic
    SE = splineE7(Xdata,Ydata,'E',v1,vN);  % end-slope
    If xG is an array, then the various splines can be evaluated at the values in xG using splinevalueE7, for example

    Code (Text):
    yG = splinevalueE7(S,xG)
    where S is one of the created splines.

    Define a function using Bessel functions of the 2nd kind, which is the solution to an important differential equation arising in acoustics and other engineering disciplines. Define a function f via an anonymous function,

    Code (Text):
    f = @(x) besselj(x,2);
    Consider a not-a-knot-spline fit to the function ##f(x)##, using 10 points, with ##\left\{ x_i \right\}_{i=1}^{10}## linearly spaced from 0 to 2. Associated with this spline, compute the maximum absolute value of the error, evaluated on a denser grid, with 500 points linearly spaced from 0 to 2. Which of the numbers below is approximately equal to that maximum absolute error?

    Now consider a natural spline fit to the function ##f(x)##, using 10 points, with ##\left\{ x_i \right\}_{i=1}^{10}## linearly spaced from 0 to 2. Associated with this spline, compute the maximum absolute value of the error, evaluated on a denser grid, with 500 points linearly spaced from 0 to 2. Which of the numbers below is approximately equal to that maximum absolute error?


    2. Relevant equations



    3. The attempt at a solution
    Code (Text):
    f = @(x) besselj(x,2);
    x = linspace(0,2,10);
    S = splineE7(x,f(x),'K')
    S =

        Coeff: [4x9 double]
            x: [0 0.2222 0.4444 0.6667 0.8889 1.1111 1.3333 1.5556 1.7778 2]
            y: [1x10 double]
    I don't understand how to find the maximum error. I uploaded the p-files for the spline functions.
     

    Attached Files:

    Last edited: Jul 25, 2014
  2. jcsd
  3. Jul 26, 2014 #2

    AlephZero

    User Avatar
    Science Advisor
    Homework Helper

    I think they want you to estimate the error numerically, not by trying to do some clever math.

    Evaluate the splines and the Bessel function at 500 points in the interval, and find the biggest absolute difference.
     
  4. Jul 26, 2014 #3

    Maylis

    User Avatar
    Gold Member

    How would I do that? None of the inputs in either splineE7 or splinevalueE7 are points in the interval.
     
  5. Jul 26, 2014 #4

    AlephZero

    User Avatar
    Science Advisor
    Homework Helper

    Your variable S contains all data about the spline. You don't need to know the details of what it contains, but from what you printed out, it's a reasonable guess that the "x" values you printed out are 10 points between 0 and 2.

    Splineval takes two arguments, the variable S, and an array of X values (i.e. the x coordinate of the 500 points between 0 and 2). It returns the y coordinates of the points on the spline.
     
  6. Jul 26, 2014 #5

    Maylis

    User Avatar
    Gold Member

    Okay I got it, thanks
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted



Similar Discussions: Maximum error in not-a-knot spline of bessel function
  1. Maximum error (Replies: 1)

Loading...