tformfwd وtforminv - ما هو الفرق؟
-
20-09-2019 - |
سؤال
لنفترض لدي مصفوفة التحويل التعسفي ومثل،
A =
0.9966 0.0007 -6.5625
0.0027 0.9938 1.0598
0 0 1.0000
ومجموعة من النقاط بحيث من إحداثيات س وص يتم تمثيل X
وY
على التوالي.
وافترض،
[Xf Yf] = tformfwd(maketform('projective',A),X,Y);
والآن،
[Xff Yff] = tformfwd(maketform('projective',inv(A)),Xf,Yf);
[Xfi Yfi] = tforminv(maketform('projective',A),Xf,Yf);
و[Xff Yff]
و[Xfi Yfi]
يبدو أن بالضبط نفس الشيء (والتي يجب).
هل tforminv
هناك فقط للراحة أو أنا في عداد المفقودين شيء هنا؟
المحلول
وأنا أمهد هذا بقوله فإنني <م> أفضل تخمين م> ...
وانه من الممكن ان tforminv
قد تؤدي التحول دون تشكيل الواقع مصفوفة معكوس. على سبيل المثال، يمكنك حل نظام المعادلات الخطية Ax = b
بطريقتين:
x = inv(A)*b;
x = A\b;
واستنادا إلى وثائق ل inv
أو الخيار الثاني ( باستخدام تقسيم المصفوفة المشغل) يمكن أن تؤدي بشكل أفضل "من كل وقت التنفيذ والعددية جهة نظر دقة" لأنها "تنتج الحل باستخدام القضاء جاوس، دون تشكيل معكوس". tforminv
قد تفعل شيئا من هذا القبيل، وبالتالي تظهر سلوك أفضل بشكل عام مقارنة مع مرور معكوس مصفوفة ل tformfwd
.
إذا كنت تميل إلى ذلك، ربما يمكنك محاولة عدد من مصفوفات التحول المختلفة واختبار النهجين (tforminv
أو tformfwd
وinv
) لمعرفة مدى دقة النتائج وسرعة يتم احتساب كل منهما.