இடைக்கணிப்பு

எண்சார் பகுப்பியலின் கணிதப் பிரிவுகளில் **இடைக்கணிப்பு** (*interpolation*) என்பது ஒரு மதிப்பிடல் வகையாகும். இடைக்கணிப்பு முறையில் தரப்பட்ட தனிநிலை தரவுப் புள்ளிகளை அடிப்படையாகக் கொண்டு புதிய தரவுப் புள்ளிகள் கண்டுபிடிக்கப்படுகின்றன. 

பொறியியல் மற்றும் அறிவியலில், மாதிரியெடுத்தல் அல்லது சோதனைமுறைகள் மூலம் சாரா மாறியின் வெவ்வேறு மதிப்புகளுக்குக் கிடைக்கும் ஏதேனுமொரு சார்பின் மதிப்புகளின் தரவுப் புள்ளிகள் கண்டறியப்படுகின்றன. எடுத்துக்கொள்ளப்பட்ட சாராமாறியின் மதிப்புகள் தவிர பிற இடைப்பட்ட மதிப்புகளுக்கும் அச்சார்பு பெறும் மதிப்புகள் தேவைப்படும்போது அவற்றை சோதனை அல்லது மாதிரியெடுத்தலை மீண்டும் மேற்கொள்ளாமல் ஏற்கனவேயுள்ள தரவுகளை அடிப்படையாக வைத்துக் கொண்டு  "இடைக்கணித்தல்" மூலம் கண்டறியலாம்.

300px|thumb|மேற்சில்லுருவிலுள்ள சிவப்புப் புள்ளிகள் தொகுதியின் இடைக்கணிப்பு வளைவு (நீலம்). இடைக்கணிப்பு வளைவுகளின் சார்புகளின் பல்லுறுப்புக்கோவை வாய்பாடுகள், மேற்சில்லுருவினுடையதைவிட எளியவையாக இருக்கும்.
எளிய சார்பைக் கொண்டு ஒரு சிக்கலான சார்பைத் தோராயப்படுத்தும் முறை இடைக்கணித்தலைப் போன்றது. தரப்பட்ட சார்பின் வாய்பாடு கணக்கிடுவதற்குக் கடினமானதாக இருந்தால், மூலச் சார்பின் வாய்ப்பாட்டிலிருந்து பெறப்பட்ட தரவுப் புள்ளிகளைக் கொண்டு இடைக்கணித்தல் முறையில் மூலச்சார்புக்கு மிகநெருக்கமான புதியதொரு எளிய சார்பினை உருவாக்க முடியும். இப்போது சார்பினைக் கணக்கிடும் வேலை மிகவும் எளிதாகி விடுவதால் புதியசார்பினால் ஏற்படக்கூடிய சிறுபிழையளவு பெரும்பொருட்டாக இருக்காது.

## எடுத்துக்காட்டு
right|thumb|230px|அட்டவணையின் தரவுப் புள்ளிகளின் வரைபடம்

சார்பு *f* இன் மதிப்புகளின் தரவுப் புள்ளிகள் அட்டவணையில் தரப்பட்டுள்ளன. அட்டவணையிலுள்ள சாராமாறியின் மதிப்புகளுக்கு இடைப்பட்ட மதிப்புகளுக்குச் சார்பின் மதிப்புகளைக் கண்டறிய இடைக்கணிப்பு முறை பயன்படுகிறது. இடைக்கணிப்பானது *x* &nbsp;=&nbsp;2.5 போன்ற இடைப்பட்ட புள்ளிகளில் சார்பைக் கணிப்பிடுகின்ற வழியைத் தருகிறது.

பல்வேறு இடைக்கணிப்பு முறைகள் உள்ளன. அவற்றுள் சில கீழே விவரிக்கப்பட்டுள்ளன. பொருத்தமான முறையைத் தேர்வுசெய்யும்போது கருத்திலெடுக்கவேண்டிய சில விடயங்களாவன: செய்முறை எவ்வளவு துல்லியமானது? எவ்வளவு செலவாகும்? இடைக்கணிப்பிடல் எவ்வளவு சீரானது? எத்தனை தரவுப் புள்ளிகள் தேவைப்படும்?

## துண்டுவாரி மாறிலி இடைக்கணிப்பு
thumb|right|துண்டுவாரி மாறிலி இடைக்கணிப்பு அல்லது மிகவும் அருகிலுள்ள இடைக்கணிப்பு.

துண்டுவாரி இடைக்கணிப்பு முறை என்பது அருகாமையான தரவு மதிப்பைக் கண்டுபிடித்து, அதே மதிப்பை எடுத்துக்கொள்வதாகும். நேர்கோட்டு இடைக்கணித்தல் எளிதானது என்பதால் எளிய கணக்குகளுக்கு இம்முறையைவிட நேர்கோட்டு இடைக்கணித்தலே தேர்வு செய்யப்படுகிறது. ஆனால் இதன் எளிமை மற்றும் வேகம் காரணமாக பல்மாறி இடைக்கணித்தலுக்கு இதுவே விருப்பமான தேர்வாக அமையும்.

## நேர்கோட்டு இடைக்கணிப்பு
right|thumb|230px|மேலும் விதிக்கப்பட்ட நேர்கோட்டு இடைக்கணிப்புடனான தரவின் வரைபு

மிகவும் எளிமையான முறைகளில் ஒன்று நேர்கோட்டு இடைக்கணிப்பு ஆகும். மேலே கூறப்பட்டுள்ள *f*  ஐத் தீர்மானிக்கும் உதாரணத்தை எடுத்துக்கொள்க (2.5). 2.5 என்பது 2 க்கும் 3 க்கும் நடுவில் அமைந்துள்ளது என்பதால், *f* (2.5) என்பதை *f* (2) = 0.9093 என்பதற்கும் *f* (3) = 0.1411 க்கும் நடுப்புள்ளியில் எடுத்தல் ஏற்பாகும், இது 0.5252 என்ற மதிப்பாகும்.

பொதுவாக, நேர்கோட்டு இடைக்கணிப்பு தரவுப் புள்ளிகளை எடுக்கும், (*x* *a* ,*y* *a* ) மற்றும் (*x* *b* ,*y* *b* ) என்ற இரு தரவுப் புள்ளிகளை எடுத்துக்கொண்டால் (*x* ,*y* ) புள்ளியில் நேர்கோட்டு இடைக்கணிப்பு பின்வருமாறு தரப்படுகிறது:
:y = y_a + (x-x_a)\frac{(y_b-y_a)}{(x_b-x_a)} 
நேர்கோட்டு இடைக்கணிப்பு விரைவானது மற்றும் எளிதானது, ஆனால் மிகவும் துல்லியமானது அல்ல. மேலும் *x* *k*  இல் வகையிடத்தக்கது அல்ல.

பின்வருகின்ற பிழைக் கணிப்பீடானது நேர்கோட்டு இடைக்கணிப்பு மிகவும் சரியானதல்ல என்பதைக் காண்பிக்கும். இடைக்கணிப்பு செய்யவேண்டிய சார்பை *g*  ஆல் குறித்து, *x*  என்பது *x* *a*  க்கும் *x* *b*  க்குமிடையில் இருப்பதாகவும், *g*  என்பது இருதடவை தொடர்ச்சியாக வகையிடத்தக்கது எனவும் வைத்துக்கொண்டால் நேர்கோட்டு இடைக்கணிப்பு பிழை:
: |f(x)-g(x)| \le C(x_b-x_a)^2 \quad\mbox{where}\quad C = \frac18 \max_{y\in[x_a,x_b]} |g*(y)|. </math> ஆகும். அதாவது, பிழை என்பது தரவுப் புள்ளிகளுக்கு இடையிலான தூரத்தின் வர்க்கத்துக்கு நேர்விகிதமானது. பல்லுறுப்புக்கோவை இடைக்கணிப்பு மற்றும் வளைவு இடைக்கணிப்பு உள்ளடங்கலான பிற முறைகள் சிலவற்றின் பிழை தரவுப் புள்ளிகளுக்கு இடையிலான தூரத்தின் உயர் அடுக்குகளுக்கு நேர்விகிதமானது.

== பல்லுறுப்புக்கோவை இடைக்கணிப்பு ==
[[படிமம்:Interpolation example polynomial.svg|right|thumb|230px|பல்லுறுப்புக்கோவை இடைக்கணிப்புப் பயன்படுத்தப்பட்ட தரவின் வரைபடம்]]

பல்லுறுப்புக்கோவை இடைக்கணிப்பு என்பது நேர்கோட்டு இடைக்கணிப்பின் பொதுமைப்படுத்தலாகும். நேர்கோட்டு இடைக்கணிப்பில் சார்பு நேர்கோட்டு சார்பாக உள்ளது. அதற்குப் பதிலாக இம்முறையில் உயரடுக்கு பல்லுறுப்புக்கோவைச் சார்புகள் பயன்படுத்தப்படுகின்றன.

மேலே தரப்பட்ட அட்டவணையின் ஏழு புள்ளிகளினூடாகவும்  பின்வருகின்ற ஆறாம் அடுக்கு பல்லுறுப்புக்கோவை செல்கிறது:
:<math> f(x) = -0.0001521 x^6 - 0.003130 x^5 + 0.07321 x^4 - 0.3577 x^3 + 0.2255 x^2 + 0.9038 x. </math>

இதில் *x*  = 2.5 ஐப் பதிலிட்டால், *f* (2.5) = 0.5965 எனக் கிடைக்கிறது.

பொதுவாக, *n*  தரவுப் புள்ளிகள் இருந்தால், சரியாக *n* −1 அடுக்குள்ள ஒரு பல்லுறுப்புக்கோவை அனைத்து தரவுப் புள்ளிகளினூடாகச் செல்லும். இந்த முறையில் இடைக்கணிப்பு பிழையானது தரவுப் புள்ளிகளுக்கு இடையிலான இடைவெளியின் *n* அடுக்குக்கு நேர்விகிதமானது. மேலும், இடைக்கணிப்பி ஒரு பல்லுறுப்புக்கோவையாக இருப்பதால் முடிவிலியாக வகையிடத்தக்கது. ஆகவே, அடுக்குக்கோவை இடைக்கணிப்பானது நேர்கோட்டு இடைக்கணிப்பின் பெரும்பாலான குறைகளை நிவர்த்தி செய்கிறது.

இருந்தபோதும், அடுக்குக்கோவை இடைக்கணிப்பிலும் சில குறைபாடுகள் உள்ளன. இடைக்கணிப்பிடும் பல்லுறுப்புக்கோவையைக் கணக்கிடுதல் என்பது நேர்கோட்டு இடைக்கணிப்புடன் ஒப்பிடும்போது கணிப்புரீதியாக செலவுகூடியது. மேலும், இறுதிப் புள்ளிகளில் இடைக்கணிப்பின் மதிப்புகள் மிகவும் சரியானதாக இல்லாதிருக்கவும்கூடும். வளைவு இடைக்கணிப்பைப் பயன்படுத்துவதன் மூலம் இந்தக் குறைபாடுகளைத் தவிர்க்கலாம்.

== வளைவு இடைக்கணிப்பு ==
[[படிமம்:Interpolation example spline.svg|right|thumb|230px|பயன்படுத்தப்பட்ட வளைவு இடைக்கணிப்புடனான தரவின் வரைபு]]

நேர்கோட்டு இடைக்கணிப்பானது ஒவ்வொரு இடைவெளிக்கும் [*x* <sub>*k* </sub>,*x* <sub>*k+1* </sub>] நேர்கோட்டு சார்பைப் பயன்படுத்துகிறது. வளைவு இடைக்கணிப்பு ஒவ்வொரு இடைவெளிகளிலும் குறைந்த-அடுக்கு பல்லுறுப்புக்கோவைகளைப் பயன்படுத்துகிறது. மேலும், சீராக ஒன்றாகப் பொருந்துகின்ற விதத்தில் பல்லுறுப்புக்கோவைத் துண்டுகள் தேர்வுசெய்யப்படுகின்றன. 

முதலில் தரப்பட்ட அட்டவணைத் தரவுப் புள்ளிகளுக்கு வளைவு இணைப்புகள் பின்வருமாறு தரப்படுகின்றன:
: <math> f(x) = \begin{cases} -0.1522 x^3 + 0.9937 x, &amp; \mbox{if } x \in [0,1], \\ -0.01258 x^3 - 0.4189 x^2 + 1.4126 x - 0.1396, &amp; \text{if } x \in [1,2], \\ 0.1403 x^3 - 1.3359 x^2 + 3.2467 x - 1.3623, &amp; \text{if } x \in [2,3], \\ 0.1579 x^3 - 1.4945 x^2 + 3.7225 x - 1.8381, &amp; \text{if } x \in [3,4], \\ 0.05375 x^3 -0.2450 x^2 - 1.2756 x + 4.8259, &amp; \text{if } x \in [4,5], \\ -0.1871 x^3 + 3.3673 x^2 - 19.3370 x + 34.9282, &amp; \text{if } x \in [5,6]. \\ \end{cases} </math>

இந்த வகையில் *f* (2.5)&nbsp;=&nbsp;0.5972 எனக் கிடைக்கிறது.

அடுக்குக்கோவை இடைக்கணிப்பைப் போல, வளைவு இடைக்கணிப்பு நேர்கோட்டு இடைக்கணிப்பைவிட மிகச்சிறிய பிழையையே கொண்டிருக்கும். இடைக்கணிப்பி சீரானது. இருந்தபோதும், பல்லுறுப்புக்கோவை இடைக்கணிப்பில் பயன்படுத்தப்படும் உயரடுக்கு அடுக்குக்கோவைகளைவிட இம்முறையின் இடைக்கணிப்பிகளான துண்டுவாரி  பல்லுறுப்புக்கோவைகளைக் காண்பது எளிதானது.

== மேற்கோள்கள் ==


== உசாத்துணை ==
* டேவிட் கிட்னர், மார்க் டொரே மற்றும் டெரெக் ஸ்மித்(1999). *வட்'ஸ் த பாயிண்ட்?  '' *  அத்தியாயங்கள் 4 மற்றும் 6.
* .

## வெளியிணைப்புகள்

* Online tools for linear, quadratic, cubic spline, and polynomial interpolation with visualisation and JavaScript source code.
* Sol Tutorials - Interpolation Tricks
* Compactly Supported Cubic B-Spline interpolation in Boost.Math
* Barycentric rational interpolation in Boost.Math
* Interpolation via the Chebyshev transform in Boost.Math

பகுப்பு:எண்சார் பகுப்பாய்வு