ทั้งสองเป็นตัวแก้ปัญหาโดยตรงเพื่อแก้ปัญหาระบบเชิงเส้น (ตรงข้ามกับตัวแก้ซ้ำ ๆ ) 
mldivideไม่ดำเนินการทดสอบสำหรับในการแก้b โปรดดูคำตอบของ Allan ในกระทู้นี้สำหรับข้อมูลเพิ่มเติม ดูความช่วยเหลือของอัลกอริทึมของ MATLAB ได้ที่นี่AA x = bmldivide
  mldivideสำหรับเมทริกซ์จตุรัส: ถ้า A เป็นสมมาตรและมีองค์ประกอบขวางจริงบวก MATLAB จะพยายามแยกตัวประกอบ Cholesky หากการแยกตัวประกอบแบบ Cholesky ล้มเหลว MATLAB จะทำการแยกตัวประกอบแบบสมมาตรไม่ จำกัด ถ้า A คือ Hessenberg ด้านบน MATLAB ใช้การกำจัดแบบเกาส์เซียนเพื่อลดระบบให้เป็นเมทริกซ์รูปสามเหลี่ยม ถ้า A เป็นสี่เหลี่ยมจัตุรัส แต่ไม่ใช่สามเหลี่ยมมุมฉาก, สมมาตรและบวกแน่นอนหรือ Hessenberg จากนั้น MATLAB จะทำการแยกตัวเป็นรูปสามเหลี่ยมทั่วไปโดยใช้การแยกตัวประกอบ LU ด้วยการหมุนเป็นบางส่วน
  
  linsolve สำหรับเมทริกซ์จตุรัส: การแยกตัวประกอบ LU ด้วยการหมุนบางส่วน
  
  mldivideและlinsolveสำหรับเมทริกซ์รูปสี่เหลี่ยมผืนผ้า: การแยกตัวประกอบของ QR
ในlinsolveเอกสารช่วยแนะนำในเว็บไซต์ mathworks คุณสามารถหลีกเลี่ยงกระบวนการทดสอบพิเศษ (อัลลันใช้คำว่า "ค่าใช้จ่าย" ในคำตอบของเขา) โดยใช้optsถ้าหากคุณรู้ว่าเป็นอย่างไรล่วงหน้า สำหรับปัญหาใหญ่คุณสามารถประหยัดเวลาได้ ตัวอย่างเช่น:A
opts.POSDEF = true; linsolve(A,b,opts)
จะคืนค่าถ้าคุณรู้ว่าเป็นค่าบวกที่แน่นอนล่วงหน้า อย่างไรก็ตามการเลือกที่ไม่ถูกต้องนำไปสู่ผลลัพธ์ที่ไม่ถูกต้องxAopts
หากตรงตามเกณฑ์ที่กำหนดlinsolveและmldivideใช้กระบวนการแยกตัวประกอบแบบเดียวกัน ตัวอย่างเช่นสำหรับระบบบวกแน่นอนที่มีความหนาแน่นสูงซึ่งเป็นที่พอใจของคุณสมบัติบางอย่างหรือคุณมีระบบที่ overdetermined และทั้งคู่ดำเนินการปรับกำลังสองน้อยที่สุด
นอกจากนี้linsolveยังสามารถดำเนินการคำนวณสัญลักษณ์ สิ่งนี้มีประโยชน์เมื่อคุณมีระบบบ่อนทำลายขนาดเล็กที่มีวิธีแก้ปัญหาจำนวนไม่ จำกัด linsolveช่วยให้คุณสามารถแก้มันเป็นสัญลักษณ์mldivideไม่สามารถทำได้ อย่างไรก็ตามหากตัวแปรไม่ได้ถูกประกาศอย่างเป็นสัญลักษณ์mldivideและlinsolveจะให้ข้อความเตือนเหมือนกัน "เมทริกซ์นั้นเป็นเอกสิทธิ์ของความแม่นยำในการทำงาน"
สุดท้าย แต่ไม่ท้ายสุดlinsolveไม่รองรับระบบแบบเบาบางเช่นเมทริกซ์ต่อไปนี้ (จุดสีฟ้าหมายถึงรายการที่ไม่ใช่ศูนย์) ในขณะที่mldivideสามารถจัดการกับระบบเบาบางได้อย่างมีประสิทธิภาพเมื่อขนาดต่ำกว่า 200k โดย 200k
