Site hosted by Angelfire.com: Build your free website today!


การหาค่าดีเทอร์มินันต์ (Determinant)
ของเมตริกซ์ขนาด n x n
(10 ก.พ. 47)


คำถามโดย คุณ เด็กหัวอ่อน

อยากให้ทุกคนๆช่วยนู๋อธิบายเรื่องการหา det ของเมตริกซ์ 10*10 หนูหาไม่เป้นเลยค่ะ เอาแบบละเอียดเลยนะค่ะ ขอบพระคุณมากเลยค่ะ


Practical x 2

เรื่องนี้สามารถหาอ่านได้จากหนังสือแบบเรียนคณิตศาสตร์ตั้งแต่ระดับชั้นมัธยมปลายขึ้นมาครับ ผมจะสรุปไว้ อย่างคร่าว ๆ ในปัจจุบันการหาค่านี้ไม่ยากเลยครับเพราะโปรแกรมคณิตศาสตร์อันไหนก็มีไม่ว่าจะเป็น MAPLE, MATLAB, และ EXCEL ครับ ที่น่าสนใจคือการเขียนโปรแกรมเพื่อให้หาค่าดีเทอร์มินันต์แล้วเปรียบเทียบกับ โปรแกรมเหล่านี้

ในกรณีที่เรามีสมาชิกของเมตริกซ์ใช้สัญลักษณ์แทน a เราใช้ตัวห้อย ij แสดงตำแหน่งของสมาชิก a ในเมตริกซ์ โดย i แสดงตำแหน่งแถว และ j แสดงตำแหน่งคอลัมน์

ใช้สัญลักษณ์ D แทนค่าดีเทอร์มินันต์ของเมตริกซ์ A ใด ๆ ขนาด n x n
ใช้สัญลักษณ์ C แทนค่าโคแฟคเตอร์ (Cofactor) ของสมาชิกแต่ละตัวในแนวแถวหรือแนวคอลัมน์ที่กำลังพิจารณา
ใช้สัญลักษณ์ M แทนค่าไมเนอร์ (Minor) ของสมาชิกแต่ละตัวในแนวแถวหรือแนวคอลัมน์ที่กำลังพิจารณา

โดยที่
D = a1kC1k + a2kC2k + … + ankCnk (k = 1, 2, …, or n)

หรือ
D = aj1Cj1 + aj2Cj2 + … + ajnCjn (j = 1, 2, …, or n)

โดยที่
Cjk = (-1)j+kMjk

ดูตัวอย่างการคำนวณกรณีทั่วไปสำหรับกรณีเมตริกซ์ขนาด 3 x 3 และ ตัวอย่างการหาค่าดีเทอร์มินันต์ครับ

ทั้งสองตัวอย่างนำมาจาก
Kreyszig E. (1993) Advanced Engineering Mathematics, 7th Edn. John Wiley & Sons, New York, pp. 374-375.

แต่ปัญหายังไม่ได้จบเพียงเท่านี้ครับ วิธีข้างต้นแม้จะดูเป็นขั้นตอนดี แต่เวลาที่ใช้ในการคำนวณจะนานมาก แม้จะ ใช้คอมพิวเตอร์ก็ตาม (ผมทดลองเขียนโปรแกรมโดยใช้หลักการคำนวณข้างต้นพบว่าเมตริกซ์ขนาด 9 x 9 จะใช้ เวลาคำนวณนานกว่า 15 นาที ด้วย Pentium-3 ครับ) วิธีที่เหมาะสมคือการเปลี่ยนรูปเมตริกซ์ให้อยู่ในรูป "Triangular form" ตามที่เห็นในภาพข้างล่างครับ การเปลี่ยนเมตริกซ์ให้ไปอยู่ในรูปนี้จะไม่ทำให้ค่าดีเทอร์มินันต์ เปลี่ยนแปลงไปครับ การโปรแกรมก็ทำได้ไม่ยาก และได้ผลรวดเร็วด้วยครับ

ตัวอย่างนำมาจาก
Kreyszig E. (1993) Advanced Engineering Mathematics, 7th Edn. John Wiley & Sons, New York, pp. 378.

โปรแกรมหาค่าดีเทอร์มินันต์ของ Practical x 2 (ลิขสิทธิ์ถูกต้อง)

ดาวน์โหลดโปรแกรม


หากมีข้อแนะนำติดต่อที่ : Practical_x_2@hotmail.com