كيف تكتب سلسلة تايلور في بايثون

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

الخطوة 1

راجع تعريف سلسلة Taylor لفهم كيفية حساب كل مصطلح. تتم فهرسة كل مصطلح في السلسلة ، عادةً بواسطة "n" ، وترتبط قيمته بالمشتق n من الوظيفة التي يتم تمثيلها. من أجل التبسيط ، استخدم 0 لقيمة "a" في محاولتك الأولى. هذه النسخة الخاصة من سلسلة تايلور تسمى سلسلة Maclaurin. جرب دالة الجيب ، حيث يسهل تحديد مشتقاتها المتتالية.

فيديو اليوم

الخطوة 2

اكتب عدة قيم للمشتق n من دالة الجيب المقدرة عند 0. إذا كانت n تساوي 0 ، تكون القيمة 0. إذا كانت n تساوي 1 ، فإن القيمة هي 1. إذا كانت n تساوي 2 ، فإن القيمة تساوي 0. إذا كانت n تساوي 3 ، فإن القيمة هي -1. من هنا ، يتكرر النمط ، لذا تجاهل كل مصطلح زوجي مفهرس في سلسلة تايلور لأنه مضروب في 0. صيغة كل مصطلح من السلسلة الناتجة هي:

(-1) ^ ن / (2 ن + 1)! * س ^ (2 ن + 1)

يتم استخدام "2n + 1" بدلاً من "n" لإعادة فهرسة السلسلة ، والتخلص بشكل فعال من المصطلحات ذات الفهرسة الزوجية دون تغيير الفهرس نفسه. يمثل العامل (-1) ^ n التناوب بين المصطلحات المتتالية الإيجابية والسلبية. قد يبدو هذا العمل الرياضي الأولي غريبًا ، ولكن سيكون من الأسهل بكثير كتابة رمز Python وإعادة استخدامه في سلسلة Taylor الأخرى إذا كان الفهرس يبدأ دائمًا عند 0 ويتم حسابه صعودًا بزيادات قدرها 1.

الخطوه 3

افتح مترجم بايثون. ابدأ بكتابة الأوامر التالية لتحديد عدة متغيرات:

المجموع = 0 س = .5236

سيتم استخدام متغير "المجموع" لتجميع مجموع سلسلة تايلور حيث يتم حساب كل مصطلح. المتغير "x" هو الزاوية (بالتقدير الدائري) التي تريد تقريب دالة الجيب لها. اضبطه على ما تريد.

الخطوة 4

قم باستيراد الوحدة النمطية "math" باستخدام الأمر التالي حتى تتمكن من الوصول إلى الوظيفتين "pow" و "factorial":

استيراد الرياضيات

الخطوة الخامسة

ابدأ حلقة "for" ، واضبط عدد التكرارات باستخدام وظيفة "range":

لـ n في النطاق (4):

سيؤدي هذا إلى بدء متغير الفهرس ، n ، من الصفر والعد حتى 4. حتى هذا العدد الصغير من التكرارات سوف ينتج عنه نتيجة دقيقة بشكل مدهش. لا يتم تنفيذ الحلقة على الفور ولن تبدأ إلا بعد تحديد كتلة التعليمات البرمجية بالكامل للتكرار.

الخطوة 6

اكتب الأمر التالي لإضافة قيمة كل مصطلح تالي إلى "sum:"

sum + = math.pow (-1، n) /math.factorial (2 * n + 1) * math.pow (x، 2 * n + 1)

لاحظ أنه تم وضع مسافة بادئة للأمر بعلامة تبويب ، مما يشير إلى Python أنه جزء من حلقة "for". لاحظ أيضًا كيف يتم استخدام "الأسرى" و "عامل" بدلاً من "^" و "!" الرموز. الصيغة الموجودة على يمين عامل التخصيص "+ =" مماثلة لتلك الموجودة في الخطوة 2 ، لكنها مكتوبة في بناء جملة بايثون.

الخطوة 7

اضغط على "أدخل" لإضافة سطر فارغ. بالنسبة إلى Python ، يشير هذا إلى إنهاء حلقة "for" ، لذلك يتم تنفيذ الحساب. اكتب الأمر "مجموع" للكشف عن النتيجة. إذا استخدمت قيمة x المعطاة في الخطوة 3 ، فإن النتيجة قريبة جدًا من 0.5 ، جيب pi / 6. جرب العملية مرة أخرى لقيم مختلفة لـ x ولأعداد مختلفة من التكرارات للحلقة ، تحقق من نتائجك مقابل وظيفة "math.sin (x)". لقد نفذت في Python العملية ذاتها التي يستخدمها العديد من أجهزة الكمبيوتر لحساب قيم الجيب والوظائف المتعالية الأخرى.

نصيحة

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