কম্পিউটার

ল্যাগ্রেঞ্জ ইন্টারপোলেশন


প্রদত্ত ডেটা পয়েন্টের বিচ্ছিন্ন সেটের মধ্যে নতুন ডেটা পয়েন্ট তৈরি করার জন্য, ইন্টারপোলেশন কৌশল ব্যবহার করা হয়। ল্যাগ্রঞ্জ ইন্টারপোলেশন কৌশল তাদের মধ্যে একটি। যখন প্রদত্ত ডেটা পয়েন্টগুলি সমানভাবে বিতরণ করা হয় না, তখন আমরা সমাধানটি খুঁজে পেতে এই ইন্টারপোলেশন পদ্ধতিটি ব্যবহার করতে পারি। ল্যাগ্রেঞ্জ ইন্টারপোলেশনের জন্য, আমাদের এই সমীকরণটি অনুসরণ করতে হবে।

ল্যাগ্রেঞ্জ ইন্টারপোলেশন


ইনপুট এবং আউটপুট

Input:
List of x and f(x) values. find f(3.25)
x: {0,1,2,3,4,5,6}
f(x): {0,1,8,27,64,125,216}
Output:
Result after Lagrange interpolation f(3.25) = 34.3281

অ্যালগরিদম

largrangeInterpolation(x: array, fx: array, x1)

ইনপুট - পূর্বে পরিচিত ডেটা পাওয়ার জন্য x অ্যারে এবং fx অ্যারে, এবং পয়েন্ট x1।

আউটপুট: f(x1) এর মান।

Begin
   res := 0 and tempSum := 0
   for i := 1 to n, do
      tempProd := 1
      for j := 1 to n, do
         if i ≠ j, then
            tempProf := tempProd * (x1 – x[j])/(x[i] – x[j])
      done

      tempPord := tempProd * fx[i]
      res := res + tempProd
   done
   return res
End

উদাহরণ

#include<iostream>
#define N 6
using namespace std;

double lagrange(double x[], double fx[], double x1) {
   double res = 0, tempSum = 0;

   for(int i = 1; i<=N; i++) {
      double tempProd = 1;         //for each iteration initialize temp product
      for(int j = 1; j<=N; j++) {
         if(i != j) {                 //if i = j, then denominator will be 0
            tempProd *= (x1 - x[j])/(x[i] - x[j]);     //multiply each term using formula
         }
      }
      tempProd *= fx[i];                //multiply f(xi)
      res += tempProd;
   }
   return res;
}

main() {
   double x[N+1] = {0,1,2,3,4,5,6};
   double y[N+1] = {0,1,8,27,64,125,216};
   double x1 = 3.25;
   cout << "Result after lagrange interpolation f("<<x1<<") = " << lagrange(x, y, x1);
}

আউটপুট

Result after lagrange interpolation f(3.25) = 34.3281

  1. উইন্ডোজে গ্লোবাললি গুলপ কীভাবে ইনস্টল করবেন

  2. পাইথন ম্যাটপ্লটলিবে ইন্টারপোলেশন সহ একটি নির্ভুল-রিকল বক্ররেখা কীভাবে আঁকবেন?

  3. Python Pandas - একটি ইন্টারপোলেশন পদ্ধতি ব্যবহার করে NaN মান পূরণ করুন

  4. pcolormesh (Matplotlib) ব্যবহার করার সময় কিভাবে মসৃণ ইন্টারপোলেশন পেতে হয়?