ফোরট্রানে Numerical Integration এবং Differentiation
Numerical Integration এবং Numerical Differentiation হল গাণিতিক বিশ্লেষণের দুটি গুরুত্বপূর্ণ অংশ, যা ফাংশনের বর্ণনা এবং তার আচরণ সম্পর্কে ধারণা লাভ করতে সাহায্য করে। যখন অ্যানালিটিক্যালভাবে (গাণিতিকভাবে) কোন ফাংশনের ইন্টিগ্রেশন বা ডিফারেনশিয়েশন করা সম্ভব না হয়, তখন Numerical Methods ব্যবহার করা হয়। ফোরট্রানে এসব গাণিতিক কাজগুলো সহজেই করা যায়। নিচে ফোরট্রানে Numerical Integration এবং Numerical Differentiation এর উদাহরণ দেওয়া হলো।
১. Numerical Integration (সংখ্যাত্মক সমাকলন)
Numerical Integration ফাংশনের ক্ষেত্রফল (area under the curve) বের করার একটি প্রক্রিয়া। ফোরট্রানে এই কাজের জন্য বেশ কিছু পদ্ধতি ব্যবহার করা যেতে পারে, যেমন Trapezoidal Rule এবং Simpson's Rule।
১.১ Trapezoidal Rule
Trapezoidal Rule ব্যবহার করে একটি ফাংশনের নির্দিষ্ট সীমার মধ্যে সমাকলন করা হয়। এই পদ্ধতিতে, কিউবিক বা পলিনোমিয়াল ফাংশনের জন্য ট্র্যাপিজয়েড শেপ ব্যবহার করা হয়।
সিনট্যাক্স:
\[
I \approx \frac{h}{2} \left( f(a) + 2\sum_{i=1}^{n-1} f(x_i) + f(b) \right)
\]
এখানে, \(h\) হল পয়েন্টের মধ্যবর্তী দূরত্ব এবং \(a\) ও \(b\) হল সমাকলনের সীমা।
উদাহরণ:
PROGRAM trapezoidal_integration
REAL :: a, b, h, sum, result
INTEGER :: n, i
EXTERNAL :: f
! সমাকলনের সীমা এবং পয়েন্ট সংখ্যা ইনপুট
PRINT *, 'Enter lower limit a:'
READ *, a
PRINT *, 'Enter upper limit b:'
READ *, b
PRINT *, 'Enter number of intervals n:'
READ *, n
h = (b - a) / n ! পয়েন্টের মধ্যবর্তী দূরত্ব
sum = 0.0
! ফাংশনের মানের যোগফল
sum = f(a) + f(b)
DO i = 1, n-1
sum = sum + 2.0 * f(a + i * h)
END DO
result = (h / 2.0) * sum
PRINT *, 'Approximate integral is: ', result
END PROGRAM trapezoidal_integration
REAL FUNCTION f(x)
REAL, INTENT(IN) :: x
f = x**2 ! উদাহরণ ফাংশন x^2
END FUNCTION fএখানে:
- \(f(x) = x^2\) একটি উদাহরণ ফাংশন।
- Trapezoidal Rule ব্যবহার করে নির্দিষ্ট সীমার মধ্যে ইন্টিগ্রেশন করা হয়েছে।
২. Numerical Differentiation (সংখ্যাত্মক অভ্যুত্থান)
Numerical Differentiation একটি ফাংশনের ডেরিভেটিভ (অভ্যুত্থান) বের করার প্রক্রিয়া। সাধারণত Finite Difference Method ব্যবহার করা হয় যেখানে একটি পয়েন্টের কাছাকাছি দুটি ভিন্ন পয়েন্টের মান থেকে ডেরিভেটিভ নির্ধারণ করা হয়।
২.১ Finite Difference Method (Forward Difference)
Finite Difference Method তে, পয়েন্টের কাছাকাছি দুটি ভিন্ন মান ব্যবহার করে ডেরিভেটিভ বের করা হয়। Forward Difference পদ্ধতি ব্যবহার করলে:
\[
f'(x) \approx \frac{f(x + h) - f(x)}{h}
\]
এখানে \(h\) হল ছোট একটি মান যা পয়েন্টগুলির মধ্যে ব্যবধান।
উদাহরণ:
PROGRAM forward_difference
REAL :: x, h, result
EXTERNAL :: f
PRINT *, 'Enter the point x:'
READ *, x
PRINT *, 'Enter a small value h:'
READ *, h
result = (f(x + h) - f(x)) / h
PRINT *, 'The derivative at x = ', x, ' is: ', result
END PROGRAM forward_difference
REAL FUNCTION f(x)
REAL, INTENT(IN) :: x
f = x**2 ! উদাহরণ ফাংশন x^2
END FUNCTION fএখানে:
- Forward Difference পদ্ধতিতে \(f'(x)\) এর মান বের করা হয়েছে।
আউটপুট:
Enter the point x:
2.0
Enter a small value h:
0.001
The derivative at x = 2.000000 is: 4.000000৩. Simpson's Rule
Simpson's Rule একটি আরও উন্নত পদ্ধতি যা ট্র্যাপিজয়েড রুলের তুলনায় অধিক সঠিক সমাকলন প্রদান করে। এই পদ্ধতিতে ফাংশনের মান তিনটি পয়েন্টে একত্রিত করে হিসাব করা হয় এবং একে প্রাথমিকভাবে একটি পারাবোলা দ্বারা প্রতিস্থাপন করা হয়।
সিনট্যাক্স:
\[
I \approx \frac{h}{3} \left( f(a) + 4 \sum_{i=1,3,5,\dots} f(x_i) + 2 \sum_{i=2,4,6,\dots} f(x_i) + f(b) \right)
\]
এখানে, \(h\) হল পয়েন্টের মধ্যবর্তী দূরত্ব এবং \(a\) ও \(b\) হল সমাকলনের সীমা।
উদাহরণ:
PROGRAM simpsons_rule
REAL :: a, b, h, sum_odd, sum_even, result
INTEGER :: n, i
EXTERNAL :: f
PRINT *, 'Enter lower limit a:'
READ *, a
PRINT *, 'Enter upper limit b:'
READ *, b
PRINT *, 'Enter number of intervals n (even number):'
READ *, n
h = (b - a) / n
sum_odd = 0.0
sum_even = 0.0
! Summing odd indexed terms (starting from 1)
DO i = 1, n-1, 2
sum_odd = sum_odd + f(a + i * h)
END DO
! Summing even indexed terms (starting from 2)
DO i = 2, n-2, 2
sum_even = sum_even + f(a + i * h)
END DO
result = (h / 3.0) * (f(a) + f(b) + 4.0 * sum_odd + 2.0 * sum_even)
PRINT *, 'Approximate integral using Simpson\'s Rule is: ', result
END PROGRAM simpsons_rule
REAL FUNCTION f(x)
REAL, INTENT(IN) :: x
f = x**2 ! উদাহরণ ফাংশন x^2
END FUNCTION fএখানে:
- Simpson's Rule ব্যবহার করে সমাকলন করা হয়েছে।
- x^2 ফাংশনকে সমাকলন করা হয়েছে।
উপসংহার
Numerical Integration এবং Numerical Differentiation অত্যন্ত গুরুত্বপূর্ণ গাণিতিক পদ্ধতি যা বিভিন্ন ক্ষেত্রে অ্যাপ্লিকেশন, যেমন সায়েন্টিফিক কম্পিউটিং, ইঞ্জিনিয়ারিং মডেলিং, আর্থিক বিশ্লেষণ, ইত্যাদিতে ব্যবহৃত হয়। ফোরট্রানে এই পদ্ধতিগুলি খুবই সহজভাবে প্রয়োগ করা যায়, এবং বিভিন্ন পদ্ধতি যেমন Trapezoidal Rule, Simpson's Rule, Finite Difference Method ব্যবহার করে দ্রুত এবং সঠিক ফলাফল পাওয়া সম্ভব।
Read more