تكامل عددي

ملف:Integral as region under curve.svg
تكامل عددي يتكون من إيجاد تقريبات عددية للقيمة S

في التحليل العددي، يشكل التكامل العددي عائلة واسعة من الخوارزميات لحساب القيمة العددية لتكامل محدد، وللتوسع أكثر يستعمل المصطلح أحيانا أيضا في وصف الحل العددي للمعادلات التفاضلية.

في بعض الأحيان ما ينسب التكامل التربيعي (يختصر عادة التربيعي) كمعنى للتكامل العددي، وخاصة عند تطبيقه على التكاملات الأحادية. كما يطلق مصطلح التكعيبي عادة على التكاملات الثنائية فما فوقها.

المسألة الأساسية التي يمكن اعتبارها في التكامل العددي هي حساب حل تقريبي لتكامل محدد:


abf(x)dx.

أسباب اللجوء للتكامل العددي

توجد أسباب عدة للجوء للتكامل العددي. فالكمية المتكاملة f(x) يمكن معرفتها فقط عند نقاط معينة، كتلك المحصل عليها عن طريق الأخذ بالعينة. بعض الأنظمة المضمنة وبعض التطبيقات الأخى قد تحتاج إلى تكامل عددي لهذا السبب.

قد يعرف المرء الكمية المتكاملة ولكن يكون من الصعب أو المستحيل إيجاد الاشتقاق العكسي والذي يفترض أن يكون دالة أساسية. مثال ذلك هو f(x)=ex2، والتي لايمكن كتابة اشتقاقها العكسي بصورة أولية.

قد يكون ممكننا إيجاد الاشتقاق العكسي بشكل رمزي، ولكن ربما كان حساب التقريب العددي أسهل من إيجاد الاشتقاق العكسي. قد تكون تلك الحالة عندما يعطى الاشتقاق العكسي في صورة متسلسلة لانهائية، أو إذا كان تقديرها يتطلب دالة خاصة غير متوافرة.

طرق للتكاملات الأحادية

قواعد التربيع المبنية على تقاطع الدوال

خوارزميات متلائمة

طالع أيضاً: تربيع متلائم

<source lang=python> def calculate_definite_integral_of_f(f, initial_step_size):

   
   This algorithm calculates the definite integral of a function
   from 0 to 1, adaptively, by choosing smaller steps near
   problematic points.
   
   x = 0.0
   h = initial_step_size
   accumulator = 0.0
   while x < 1.0:
       if x + h > 1.0:
           h = 1.0 - x
       quad_this_step = 
       if error_too_big_in_quadrature_of_over_range(f, [x,x+h]): 
           h = make_h_smaller(h)
       else:
           accumulator += quadrature_of_f_over_range(f, [x,x+h])
           x += h
           if error_too_small_in_quadrature_of_over_range(f, [x,x+h]): 
               h = make_h_larger(h) # Avoid wasting time on tiny steps.
   return accumulator

</source>

طرق التقدير الاستقرائي

تخمين الخطأ المحافظ (الأسبقية)

تكاملات متعددة الأبعاد

مونت كارلو

طالع أيضاً: تكامل مونت كارلو

الشبائك المتناثرة

علاقتة بالمعادلات التفاضلية

برنامج للتكامل العددي

Numerical integration is one of the most intensively studied problems in numerical analysis. Of the many software implementations we list a few here.

  • QUADPACK (part of SLATEC): description [١], source code [٢]. QUADPACK is a collection of algorithms, in Fortran, for numerical integration based on Gaussian quadrature.
  • GSL: The GNU Scientific Library (GSL) is a numerical library written in C which provides a wide range of mathematical routines, like Monte Carlo integration.
  • Numerical integration algorithms are found in GAMS class H2.
  • ALGLIB is a collection of algorithms, in C# / C++ / Delphi / Visual Basic / etc., for numerical integration (includes Bulirsch-Stoer and Runge-Kutta integrators).

المراجع

  • Philip J. Davis and Philip Rabinowitz, Methods of Numerical Integration.
  • George E. Forsythe, Michael A. Malcolm, and Cleve B. Moler. Computer Methods for Mathematical Computations. Englewood Cliffs, NJ: Prentice-Hall, 1977. (See Chapter 5.)
  • William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling. Numerical Recipes in C. Cambridge, UK: Cambridge University Press, 1988. (See Chapter 4.)
  • Josef Stoer and Roland Bulirsch. Introduction to Numerical Analysis. New York: Springer-Verlag, 1980. (See Chapter 3.)
ملف:Nuvola apps edu mathematics-ar.svg بوابة رياضيات تصفح مقالات ويكيبيديا المهتمة بالرياضيات.
ملف:Nuvola apps edu mathematics-ar.svg هذه بذرة مقالة عن الرياضيات تحتاج للنمو والتحسين، فساهم في إثرائها بالمشاركة في تحريرها.

ca:Integració numèrica de:Numerische Integration Numerical integration]] es:Integración numérica fr:Calcul numérique d'une intégrale it:Integrazione numerica ja:数値積分 kk:Сандық интегралдау ko:수치적분 nl:Numerieke integratie pl:Całkowanie numeryczne pt:Integração numérica ru:Численное интегрирование sr:Нумеричка интеграција sv:Numerisk integrering uk:Чисельне інтегрування zh:數值積分