سؤال

بعد التجربة والخطأ المؤلمين ، وصلت إلى وظيفة بشع تتصرف بالطريقة التي أريدها إلى:

(exp(- abs(6 * (x - 0.7)) ^ 2.5 ) + exp(- (x-1.7) ^ 8 ) * 1.2)/1.5785

أهتم فقط بقيم النطاق 0 <= x <= 1 والميل في x = 1. في هذا الفاصل ، 0 <= y <= 1 أيضًا.

هل هناك أي أدوات مجانية (مستندة إلى الويب أو Mac OS X) ستولد توسيع سلسلة Taylor لهذا؟ (لقد وجدت واحدة ، لكنها اختنق على هذه الصيغة المعقدة ولا تدعم القيمة المطلقة.)

غرضي في توليد توسع السلسلة هو أنه قد يكون أكثر كفاءة في حساب. (ستطلق على هذه الوظيفة مئات الآلاف من المرات في JavaScript ، وبالتالي فإن الأداء يمثل مشكلة.)

بالتناوب ، يمكنني أخذ عينات من النقاط والقيام بمنحنى إذا كان لدي أداة تركيب المنحنى. (أنا لا أملك السيدة إكسل ، للأسف.) تعرف على أي أدوات مجانية غير خطي المنحنى (تعتمد على الويب أو Mac OS X)؟

هل كانت مفيدة؟

المحلول

جنو أوكتاف هي حزمة مجانية ، من بين أشياء أخرى ، لها وظيفة polyfit للقيام بمنحنى متعدد الحدود المربعات. أعتقد أن هذا (أو بعض الحزمة الأخرى ذات وظيفة مكافئة) ربما يكون أكثر تطابقًا لمشكلتك من توسيع سلسلة Taylor. قد يجعل مصطلح القيمة المطلقة هذا من الصعب العثور على سلسلة Taylor التي تستنتج جيدًا من خلال النقطة عند x = 0.7 ، حيث يكون للمشتق الأول انقطاع.

نصائح أخرى

ماكسيما هل هذا. انظر تايلور وظيفة.

https://ctaylor.codeplex.com

هذه مكتبة C ++ تتيح لك كتابة تعبيرات ومتغيرات وحساب ليس فقط القيمة ولكن أيضًا أي مشتق من الطلب. المترجم هو الذي يولد الكود للمشتقات.

سيفعل Wolfram Alpha هذا من أجلك رمزيًا مجانًا على الويب. h/texcessphase لفكرة الاستخدام abs(x)=sqrt(x*x).

Wolfram Alpha output

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top