در تجزیهٔ LU با pivotِ جزئی،گاهی باید سطرها را پیش از حذف عوض کنیم. در pivotِ بعدی،بخشِ قبلاً ساختهشدهٔ L هم باید با همان جابهجایی هماهنگ شود. این تمرین دو تعویضِ واقعی دارد و نسخهٔ ناقصِ بدونِ تعویضِ ستونِ قبلیِ L را با نقضِ PA=LU آشکار میکند.
صفرِ گوشه،تکینبودن نیست
ماتریسِ اصیلِ A سطرهایِ [۰،۲،۱]،[۱،۱،۱] و[۲،۳،۴] دارد؛ سمتِ راست b=[۷،۶،۲۰] است. خانهٔ A₀₀ صفر است،اما دستگاه تکین نیست. کد به جایِ تقسیم بر صفر یا ردِ فوری،در ستونِ جاری از میانِ سطرهایِ باقیمانده،بزرگترینِ قدرمطلق را pivot میگیرد.
در تساوی،شمارهٔ سطرِ کوچکتر انتخاب میشود. حسابِ این فایل Fraction و دقیق است؛ کنترلِ آن دربارهٔ قراردادِ جابهجایی و حذف است،نه اثباتِ پایداریِ همهٔ حلکنندههایِ ممیزشناور یا روشِ مناسبِ ماتریسِ تنک.
دو pivot را تا L دنبال کنیم
در ستونِ صفر،سطرِ ۲ با سطرِ ۰ جابهجا میشود. ضریبِ حذفِ سطرِ ۱ برابر۱/۲ و ضریبِ سطرِ ۲ صفر است. پس از حذف،در ستونِ ۱ قدرمطلقِ سطرِ ۲ بزرگتر است؛ سطرهایِ ۱ و۲ هم جابهجا میشوند.
اکنون ضریبِ قبلیِ ۱/۲ در L باید همراهِ سطرِ خودش به ردیفِ ۲ برود و صفر به ردیفِ ۱ بیاید. تنها جابهجاییِ U کافی نیست. جدولِ pivot_trace،ستون،سطرِ انتخابی،ترتیبِ سطرها و ستونهایِ قبلیِ جابهجاشدهٔ L را ثبت میکند.
عاملهایِ بهدستآمده چه قراردادی دارند؟
ترتیبِ سطرِ نهایی [۲،۰،۱] است. L قطرِ واحد دارد؛ زیرِ قطرِ آن در سطرِ ۲،۱/۲ و−۱/۴ قرار میگیرند. U سطرهایِ [۲،۳،۴]،[۰،۲،۱] و[۰،۰،−۳/۴] دارد. ضربِ مستقلِ L وU باید A را با همان ترتیبِ سطرها بازسازی کند.
پس قراردادِ این فایل PA=LU است. مستندِ SciPy رابطهٔ A=P×L×U را مینویسد؛ Pِ آن قرارداد،وارونِ جایگشتِ ماست. فایل،ترتیبِ وارونِ [۱،۲،۰] را هم میسازد و بازسازیِ A از عاملها را با آن کنترل میکند. نامِ P بدونِ تعریفِ جهت کافی نیست.
سمتِ راست هم جابهجا میشود
برای حل،b با همان ترتیبِ سطرها به Pb=[۲۰،۷،۶] تبدیل میشود. ابتدا Ly=Pb را از بالا و سپس Ux=y را از پایین حل میکنیم. حاصل x=[۱،۲،۳] است و جایگذاریِ دقیق در هر سه سطر،همان b را بازمیسازد.
oracleِ مستقل،دترمینان را با فرمولِ همهٔ جایگشتها و بدونِ حذف حساب میکند؛ دترمینان−۳ است. سپس قاعدهٔ کرامر با دترمینانهایِ جایگزینشده،همان جوابِ [۱،۲،۳] را میدهد. این محاسبهٔ کوچک،توصیهٔ استفاده از کرامر برای دستگاهِ بزرگ نیست.
نسخهٔ ناقص را واقعاً بشکنیم
در یک اجرایِ عمدی،جابهجاییِ قسمتِ قبلیِ L را خاموش میکنیم. U و ترتیبِ سطرها ساخته میشوند،اما ضربِ Lِ ناقص درU با PA برابر نیست. فقط پاسخِ ظاهراً معقول یا صفرنبودنِ pivot را معیارِ سلامتِ عاملگیری نمیگذاریم.
ماتریسِ دو سطرِ یکسان،جدولِ نامربع،ورودیِ خالی،نامتناهی و بولین در پنج آزمون رد میشوند. دامنهٔ محلی ماتریسِ مربعیِ ۱تا۴ و مقدارهایِ صحیح یا کسریِ کراندار است. صفرِ pivot پس از جستوجویِ کلِ ستونِ باقیمانده،در این حسابِ دقیق بهعنوانِ شکستِ تکینی رد میشود.
QR پایهٔ متعامد میسازد و چولسکی شرطِ مثبتمعین دارد. اینجا دو تعویضِ سطر و قراردادِ PA موضوعاند. حساسیتِ مسئله را هم از صحتِ پیادهسازی جدا بخوانید. ادامه در مبانی هوش مصنوعی؛ SciPy یا دستگاهِ واقعیِ مشتری اجرا نشده است.
فایل تمرین و منبع
کد مستقلِ تمرین و کنترلها؛ Python · تمامِ ورودیها و نتیجهٔ اجرای واقعیِ تمرین؛ JSON
منابع در 2026-11-04 خوانده شدند؛ این تاریخ، تاریخ انتشار منبع نیست. مثالها و فایلهای این راهنما آموزشی و ساختهٔ تحریریهاند.