Question
Output : Please code in C or C++ Lagrange Interpolation function Parameters: n order of polynomial+1 x - where to evaluate xk[n] x_values fk[n] Y_value(true
Output:
Please code in C or C++
Lagrange Interpolation function
Parameters:
n order of polynomial+1
x - where to evaluate xk[n]
x_values fk[n]
Y_value(true value)
double lagrange (int n, double x, double* xk, double* fk) {
int i, k;
double p, lk;
p = 0.0;
for (k=0; k
lk = 1.0;
for (i=0; i
if (i==k)
continue;
/* accumulate Lk(x) */
lk *= (x - xk[i])/(xk[k] - xk[i]); }
/* accumulate the sum */
p += lk*fk[k]; } r
eturn p; }
//To call your function:
for (k=0; k
xk = y[k];
p = lagrange (order+1 , xk, x, f);
Example output:
Lagrange interpolation MENU 1. Function A 2. Function B 3. Quit Enter your choice: 1 WHEN n=5 K Xk P TRUE VALUE ABSOLUTE ERROR 0 -1.0000000 1.4142140 1.414213562 4.38E-07 1 -0.9500000 1.3802810 1.379311422 9.70E-04 2 -0.9000000 1.3468090 1.345362405 1.45E-03 3 -0.8500000 1.3139990 1.312440475 1.56E-03 4 -0.8000000 1.2820420 1.280624847 1.42E-03 5 -0.7500000 1.2511190 1.25 1.12E-03 6 -0.7000000 1.2213990 1.220655562 7.43E-04 7 -0.6500000 1.1930400 1.192686044 3.54E-04 8 -0.6000000 1.1661900 1.166190379 3.79E-07 9 -0.5500000 1.1409860 1.141271221 2.85E-04 10 -0.5000000 1.1175530 1.118033989 4.81E-04 11 -0.4500000 1.0960050 1.09658561 5.81E-04 12 -0.4000000 1.0764470 1.077032961 5.86E-04 13 -0.3500000 1.0589710 1.059481005 5.10E-04 14 -0.3000000 1.0436600 1.044030651 3.71E-04 15 -0.2500000 1.0305840 1.030776406 1.92E-04 16 -0.2000000 1.0198040 1.019803903 9.73E-08
17 -0.1500000 1.0113680 1.011187421 1.81E-04 18 -0.1000000 1.0053150 1.004987562 3.27E-04 19 -0.0500000 1.0016730 1.00124922 4.24E-04 20 0.0000000 1.0004570 1 4.57E-04 21 0.0500000 1.0016730 1.00124922 4.24E-04 22 0.1000000 1.0053150 1.004987562 3.27E-04 23 0.1500000 1.0113680 1.011187421 1.81E-04 24 0.2000000 1.0198040 1.019803903 9.73E-08 25 0.2500000 1.0305840 1.030776406 1.92E-04 26 0.3000000 1.0436600 1.044030651 3.71E-04 27 0.3500000 1.0589710 1.059481005 5.10E-04 28 0.4000000 1.0764470 1.077032961 5.86E-04 29 0.4500000 1.0960050 1.09658561 5.81E-04 30 0.5000000 1.1175530 1.118033989 4.81E-04 31 0.5500000 1.1409860 1.141271221 2.85E-04 32 0.6000000 1.1661900 1.166190379 3.79E-07 33 0.6500000 1.1930400 1.192686044 3.54E-04 34 0.7000000 1.2213990 1.220655562 7.43E-04 35 0.7500000 1.2511190 1.25 1.12E-03 36 0.8000000 1.2820420 1.280624847 1.42E-03 37 0.8500000 1.3139990 1.312440475 1.56E-03 38 0.9000000 1.3468090 1.345362405 1.45E-03 39 0.9500000 1.3802810 1.379311422 9.70E-04 40 1.0000000 1.4142140 1.414213562 4.38E-07 WHEN n=10 display 41 column table WHEN n=15 display 41 column table MENU 1. Function A 2. Function B 3. Quit Enter your choice: 2 WHEN n=5 display 41 column table WHEN n=10 display 41 column table WHEN n=15 display 41 column table MENU 1. Function A 2. Function B 3. Quit Enter your choice: 3 Exit
Problem Description: Use Lagrange interpolation to interpolate the following functions: (a) f(x) = V1 + x2 (b) f(x) = 1 1+25x2 using a set of n+1 regularly spaced nodes computed by the following equation: 2(k - 1) Xk = -1+ -, k = 1,2,3,......, n +1 n Test your generated polynomial with different orders, n= 5, 10, 20 and compute the interpolation polynomial Pn(x) at 41 regularly spaced points. For each value of xk the Lagrange polynomial approximation is output together with the exact /true value from the math library, also output the absolute error. Example Output: Lagrange interpolation MENU 1. Function A 2. Function 3. Quit Enter your choice: 1 WHEN 5 K Xk 0 1 2 3 4 5 6 7 P -1.0000000 1.4142140 -0.9500000 1.3802810 -0.9000000 1.3468090 -0.8500000 1.3139990 -0.8000000 1.2820420 -0.7500000 1.2511190 -0.7000000 1.2213990 -0.6500000 1.1930400 -0.6000000 1.1661900 -0.5500000 1.1409860 -0.5000000 1.1175530 -0.4500000 1.0960050 -0.4000000 1.0764470 -0.3500000 1.0589710 -0.3000000 1.0436600 .2500000 1.0305840 -0.2000000 1.0198040 TRUE VALUE 1.414213562 1.379311422 1.345362405 1.312440475 1.280624847 1.25 1.220655562 1.192686044 1.166190379 1.141271221 1.118033989 1.09658561 1.077032961 1.059481005 1.044030651 1.030776406 1.019803903 ABSOLUTE ERROR 4.38E-07 9.70E-04 1.45E-03 1.56E-03 1.42E-03 1.12E-03 7.43E-04 3.54E-04 3.79E-07 2.85E-04 4.81E-04 5.81E-04 5.86E-04 5.10E-04 3.71E-04 1.92E-04 9.73E-08 8 9 10 11 12 13 14 15 16 2 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 -0.1500000 1.0113680 -0.1000000 1.0053150 -0.0500000 1.0016730 0.0000000 1.0004570 0.0500000 1.0016730 0.1000000 1.0053150 0.1500000 1.0113680 0.2000000 1.0198040 0.2500000 1.0305840 0.3000000 1.0436600 0.3500000 1.0589710 0.4000000 1.0764470 0.4500000 1.0960050 0.5000000 1.1175530 0.5500000 1.1409860 0.6000000 1.1661900 0.6500000 1.1930400 0.7000000 1.2213990 0.7500000 1.2511190 0.8000000 1.2820420 0.8500000 1.3139990 0.9000000 1.3468090 0.9500000 1.3802810 1.0000000 1.4142140 1.011187421 1.004987562 1.00124922 1 1.00124922 1.004987562 1.011187421 1.019803903 1.030776406 1.044030651 1.059481005 1.077032961 1.09658561 1.118033989 1.141271221 1.166190379 1.192686044 1.220655562 1.25 1.280624847 1.312440475 1.345362405 1.379311422 1.414213562 1.81E-04 3.27E-04 4.24E-04 4.57E-04 4.24E-04 3.27E-04 1.81E-04 9.73E-08 1.92E-04 3.71E-04 5.10E-04 5.86E-04 5.81E-04 4.81E-04 2.85E-04 3.79E-07 3.54E-04 7.43E-04 1.12E-03 1.42E-03 1.56E-03 1.45E-03 9.70E-04 4.38E-07 WHEN n-10 .....display 41 column table....... WHEN n=15 ..........display 41 column table ........ MENU 1. Function A 2. Function B 3. Quit Enter your choice: 2 WHEN n 5 ......display 41 column table WHEN n=10 3 ...display 41 column table ........ WHEN 1=15 ......display 41 column table MENO 1. Function A 2. Function B 3. Quit Enter your choice: 3 Exit 4 Problem Description: Use Lagrange interpolation to interpolate the following functions: (a) f(x) = V1 + x2 (b) f(x) = 1 1+25x2 using a set of n+1 regularly spaced nodes computed by the following equation: 2(k - 1) Xk = -1+ -, k = 1,2,3,......, n +1 n Test your generated polynomial with different orders, n= 5, 10, 20 and compute the interpolation polynomial Pn(x) at 41 regularly spaced points. For each value of xk the Lagrange polynomial approximation is output together with the exact /true value from the math library, also output the absolute error. Example Output: Lagrange interpolation MENU 1. Function A 2. Function 3. Quit Enter your choice: 1 WHEN 5 K Xk 0 1 2 3 4 5 6 7 P -1.0000000 1.4142140 -0.9500000 1.3802810 -0.9000000 1.3468090 -0.8500000 1.3139990 -0.8000000 1.2820420 -0.7500000 1.2511190 -0.7000000 1.2213990 -0.6500000 1.1930400 -0.6000000 1.1661900 -0.5500000 1.1409860 -0.5000000 1.1175530 -0.4500000 1.0960050 -0.4000000 1.0764470 -0.3500000 1.0589710 -0.3000000 1.0436600 .2500000 1.0305840 -0.2000000 1.0198040 TRUE VALUE 1.414213562 1.379311422 1.345362405 1.312440475 1.280624847 1.25 1.220655562 1.192686044 1.166190379 1.141271221 1.118033989 1.09658561 1.077032961 1.059481005 1.044030651 1.030776406 1.019803903 ABSOLUTE ERROR 4.38E-07 9.70E-04 1.45E-03 1.56E-03 1.42E-03 1.12E-03 7.43E-04 3.54E-04 3.79E-07 2.85E-04 4.81E-04 5.81E-04 5.86E-04 5.10E-04 3.71E-04 1.92E-04 9.73E-08 8 9 10 11 12 13 14 15 16 2 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 -0.1500000 1.0113680 -0.1000000 1.0053150 -0.0500000 1.0016730 0.0000000 1.0004570 0.0500000 1.0016730 0.1000000 1.0053150 0.1500000 1.0113680 0.2000000 1.0198040 0.2500000 1.0305840 0.3000000 1.0436600 0.3500000 1.0589710 0.4000000 1.0764470 0.4500000 1.0960050 0.5000000 1.1175530 0.5500000 1.1409860 0.6000000 1.1661900 0.6500000 1.1930400 0.7000000 1.2213990 0.7500000 1.2511190 0.8000000 1.2820420 0.8500000 1.3139990 0.9000000 1.3468090 0.9500000 1.3802810 1.0000000 1.4142140 1.011187421 1.004987562 1.00124922 1 1.00124922 1.004987562 1.011187421 1.019803903 1.030776406 1.044030651 1.059481005 1.077032961 1.09658561 1.118033989 1.141271221 1.166190379 1.192686044 1.220655562 1.25 1.280624847 1.312440475 1.345362405 1.379311422 1.414213562 1.81E-04 3.27E-04 4.24E-04 4.57E-04 4.24E-04 3.27E-04 1.81E-04 9.73E-08 1.92E-04 3.71E-04 5.10E-04 5.86E-04 5.81E-04 4.81E-04 2.85E-04 3.79E-07 3.54E-04 7.43E-04 1.12E-03 1.42E-03 1.56E-03 1.45E-03 9.70E-04 4.38E-07 WHEN n-10 .....display 41 column table....... WHEN n=15 ..........display 41 column table ........ MENU 1. Function A 2. Function B 3. Quit Enter your choice: 2 WHEN n 5 ......display 41 column table WHEN n=10 3 ...display 41 column table ........ WHEN 1=15 ......display 41 column table MENO 1. Function A 2. Function B 3. Quit Enter your choice: 3 Exit 4Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started