قاعده کرامر

Cramer’s Rule
حل دستگاه معادلات خطی به روش مستقیم
معرفی

روش کرامر (Cramer) یک روش مستقیم و دقیق در محاسبه ی پاسخ دستگاه معادلات خطی است. از این روش به عنوان یک روش صریح (explicit) در یافتن پاسخ دستگاه معادلات خطی بر حسب دترمینان ماتریس ضرایب استفاده می گردد.

قاعده ی کرامر بیان می کند که هر مجهول در یک سیستم معادلات جبری خطی را می توان به صورت تقسیم دو دترمینان که در مخرج آن دترمینان ماتریس ضرایب D  و در صورت آن دترمینان ماتریسی که از جایگزینی ستون ضرایب مجهول مورد نظر در ماتریس ضرایب D، با بردار ثوابت b_1, b_2, ..., b_n بدست آمده است محاسبه نمود.

به طور مثال دستگاه سه معادله و سه مجهول زیر را در نظر بگیرید:

a_{11} x_1 + a_{12} x_2 + a_{13} x_3 = b_1

a_{21} x_1 + a_{22} x_2 + a_{23} x_3 = b_2

a_{31} x_1 + a_{32} x_2 + a_{33} x_3 = b_3

برای محاسبه ی اولین مجهول در دستگاه معادلات 3*3 داریم:

x_1 = delim{|}{matrix{3}{3}{b_1 a_{12} a_{13} b_2 a_{22} a_{23} b_3 a_{32} a_{33}}}{|} /D

که در آن D دترمینان ماتریس ضرایب دستگاه معادلات است:

D = delim{|}{matrix{3}{3}{a_{11} a_{12} a_{13} a_{21} a_{22} a_{23} a_{31} a_{32} a_{33}}}{|}

با استفاده از قاعده ی کرامر برای هر مجهول می توان تمامی مجهولات را به طور مستقیم و بدون نیاز به سایر آن ها محاسبه نمود.

    برنامه نویسی با MATLAB

    در اینجا با استفاده از نرم افزار متلب (MATLAB) برنامه ای جهت حل دستگاه معادلات خطی n در n به روش مستقیم کرامر ارائه گردیده است. کدی برای این منظور در یک فایل فشرده ارائه گردیده است که با دریافت ماتریس ضرایب و بردار ثوابت به حل دستگاه معادلات می پردازد.

    لازم به ذکر است که برنامه ی ارائه شده قادر به حل تمامی مثال های قابل حل با روش کرامر بوده و به صورت کاملا عمومی (general) کدنویسی شده است.

    ورودی ها و خروجی ها

    ورودی:

    1. ماتریس ضرایب A در دستگاه Ax=b
    2. بردار ثابت b در دستگاه Ax=b به شکل [b1 ;b2 ;…;bn]

    خروجی:

    1. محاسبه ی همه ی مولفه های بردار پاسخ x

    تصاویر اجرای برنامه

    مشاهده ی ورودی و خروجی برنامه در یک مثال

    این برنامه با نسخه های متلب/MATLAB سال های 2010-2013 تست شده است. در صورت استفاده از نسخه ی سال های دیگر لایبریکا تضمین کننده ی اجرای صحیح برنامه نمی باشد.