سؤال

باستخدام الرياضيات المصفوفية المتنوعة، قمت بحل نظام من المعادلات أدى إلى معاملات متعددة الحدود من الدرجة 'n'

Ax^(n-1) + Bx^(n-2) + ... + Z

أقوم بعد ذلك بتقييم كثير الحدود على نطاق x معين، وفي الأساس أقوم بعرض منحنى كثير الحدود.الآن ها هي المشكلة.لقد قمت بهذا العمل في نظام إحداثي واحد سنسميه "مساحة البيانات".أحتاج الآن إلى تقديم نفس المنحنى في مساحة إحداثية أخرى.من السهل تحويل المدخلات/المخرجات من وإلى مساحات الإحداثيات، لكن المستخدم النهائي مهتم فقط بالمعاملات [A,B,....,Z] حيث أنه يمكنه إعادة بناء كثير الحدود بمفرده.كيف يمكنني تقديم مجموعة ثانية من المعاملات [A',B',....,Z'] والتي تمثل نفس المنحنى الشكل في نظام إحداثي مختلف.

إذا كان ذلك مفيدًا، فأنا أعمل في مساحة ثنائية الأبعاد.علامات x وy القديمة البسيطة.أشعر أيضًا أن هذا قد يتضمن ضرب المعاملات بمصفوفة التحويل؟هل سيدمج البعض عامل القياس/الترجمة بين أنظمة الإحداثيات؟هل سيكون معكوس هذه المصفوفة؟أشعر وكأنني أسير في الاتجاه الصحيح..

تحديث:ترتبط أنظمة الإحداثيات خطيًا.هل ستكون معلومات مفيدة ايه؟

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

المحلول

بيان المشكلة غير واضح بعض الشيء، لذا سأوضح أولاً تفسيري الخاص له:

لديك دالة متعددة الحدود

و(خ) = جنسن + جن-1سن-1 + ...+ ج0

[لقد غيرت أ، ب، ...Z إلى Cن, ، جن-1, ، ...، ج0 للعمل بسهولة أكبر مع الجبر الخطي أدناه.]

ثم لديك أيضًا تحول مثل: ض = الفأس + ب التي تريد استخدامها للعثور على معاملات نفس متعدد الحدود، ولكن من حيث ض:

و(ض) = دنضن + دن-1ضن-1 + ...+ د0

يمكن القيام بذلك بسهولة باستخدام بعض الجبر الخطي.على وجه الخصوص، يمكنك تعريف مصفوفة (n+1)×(n+1). ت مما يتيح لنا القيام بضرب المصفوفة

  د = ت * ج ,

أين د هو متجه العمود مع الإدخال العلوي د0, ، إلى آخر إدخال دن, ، ناقلات العمود ج مشابه ل جأنا المعاملات، والمصفوفة ت لديه (i,j)-th [iذ صف، يذ عمود] دخول راي جاي معطى بواسطة

  راي جاي = (ي يختار أنا) أأنا بي-ط.

أين (ي يختار أنا) هو معامل ذو الحدين، و= 0 متى أنا > ي.أيضًا، على عكس المصفوفات القياسية، أعتقد أن i,j يتراوح كل منها من 0 إلى n (عادةً ما تبدأ عند 1).

هذه في الأساس طريقة لطيفة لكتابة توسيع وإعادة ضغط كثيرة الحدود عند توصيل z=ax+b يدويًا واستخدام نظرية ثنائية.

نصائح أخرى

إجابة تايلر هي الإجابة الصحيحة إذا كان عليك حساب هذا التغيير في المتغير z = ax+b عدة مرات (أعني للعديد من كثيرات الحدود المختلفة).من ناحية أخرى، إذا كان عليك القيام بذلك مرة واحدة فقط، فمن الأسرع بكثير الجمع بين حساب معاملات المصفوفة والتقييم النهائي.أفضل طريقة للقيام بذلك هي إجراء تقييم رمزي لكثيرة الحدود عند النقطة (ax+b) بطريقة هورنر:

  • تقوم بتخزين المعاملات متعددة الحدود في المتجه V (في البداية، جميع المعاملات صفر)، وبالنسبة لـ i = n إلى 0، تضربها في (ax+b) وتضيف Cأنا.
  • إضافة جأنا يعني إضافته إلى الحد الثابت
  • الضرب في (ax+b) يعني ضرب جميع المعاملات في b في المتجه K1, ، ضرب جميع المعاملات في a وتحويلها بعيدًا عن الحد الثابت إلى المتجه K2, ، ووضع ك12 العودة إلى V.

سيكون هذا أسهل في البرمجة وأسرع في الحساب.

لاحظ أن تغيير y إلى w = cy+d أمر سهل حقًا.أخيرًا، كما يشير ماتياست، فإن التغيير العام في الإحداثيات لن يمنحك كثيرة الحدود.

ملاحظة تقنية:إذا كنت لا تزال ترغب في حساب المصفوفة T (كما حددها تايلر)، فيجب عليك حسابها باستخدام نسخة مرجحة من قاعدة باسكال (وهذا ما يفعله حساب هورنر ضمنيًا):

راي جاي = ب رط، ي-1 + رط-1، ي-1

بهذه الطريقة، يمكنك حسابها ببساطة، عمودًا بعد عمود، من اليسار إلى اليمين.

إذا فهمت سؤالك بشكل صحيح، فليس هناك ما يضمن أن الدالة ستظل متعددة الحدود بعد تغيير الإحداثيات.على سبيل المثال، افترض أن y=x^2 ونظام الإحداثيات الجديد x'=y, y'=x.الآن تصبح المعادلة y' = sqrt(x')، وهي ليست متعددة الحدود.

لديك المعادلة:

y = Ax^(n-1) + Bx^(n-2) + ... + Z

في مساحة xy، وتريده في مساحة x'y'.ما تحتاجه هو وظائف التحويل f(x) = x' و g(y) = y' (أو h(x') = x و j(y') = y).في الحالة الأولى، عليك إيجاد حل لـ x وحل لـ y.بمجرد حصولك على x وy، يمكنك استبدال هذه النتائج في معادلتك الأصلية وحلها من أجل y'.

يعتمد ما إذا كان هذا أمرًا تافهًا أم لا على مدى تعقيد الوظائف المستخدمة للتحويل من مساحة إلى أخرى.على سبيل المثال، معادلات مثل:

5x = x' and 10y = y'

من السهل جدًا حلها للحصول على النتيجة

y' = 2Ax'^(n-1) + 2Bx'^(n-2) + ... + 10Z

إذا كانت مساحات الإدخال مرتبطة خطيًا، فنعم، يجب أن تكون المصفوفة قادرة على تحويل مجموعة من المعاملات إلى أخرى.على سبيل المثال، إذا كان لديك كثير الحدود في مساحة x "الأصلية":

الفأس ^ 3 + ب س ^ 2 + ج س + د

وأردت التحويل إلى مساحة w مختلفة حيث w = px+q

فأنت تريد العثور على '، وb'، وc'، وd' على هذا النحو

الفأس ^ 3 + ب س ^ 2 + ج س + د = أ'و^3 + ب'ث^2 + ج'ث + د'

ومع بعض الجبر،

a'w^3 + b'w^2 + c'w + d' = a'p^3x^3 + 3a'p^2qx^2 + 3a'pq^2x + a'q^3 + b'p ^2x^2 + 2b'pqx + b'q^2 + c'px + c'q + d'

لذلك

أ = أ'ب^3

ب = 3a'p^2q + ب'p^2

ج = 3a'pq^2 + 2b'pq + c'p

د = أ'ق^3 + ب'ف^2 + ج'ف + د'

والتي يمكن إعادة كتابتها كمسألة مصفوفة وحلها.

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