ฉันได้ดูไลบรารีพีชคณิตเชิงเส้น C ++ สำหรับโครงการที่ฉันกำลังทำอยู่ สิ่งที่ฉันยังไม่เข้าใจคือการเชื่อมต่อของ BLAS และ LAPACK กับห้องสมุดพีชคณิตเชิงเส้นอื่น ๆ
เมื่ออ่านบทความนี้ในห้องสมุดพีชคณิตเชิงเส้นฉันพบว่ามันน่าสนใจที่:
- ห้องสมุดบางแห่งมีความเป็นอิสระจาก BLAS และ LAPACK
- บางคนต้องการ BLAS และ LAPACK
- บางตัวมีอินเตอร์เฟสเสริมสำหรับ BLAS และ LAPACK
- และอย่างที่ฉันเข้าใจคุณสามารถใช้ BLAS และ LAPACK เพื่อแก้ปัญหาพีชคณิตเชิงเส้นโดยตรง
ฉันสามารถจินตนาการได้ว่าบางไลบรารีเป็นเพียงอินเตอร์เฟส C ++ ไปยังไลบรารี BLAS และ LAPACK ที่เขียนใน C และ Fortran และอื่น ๆ ได้ใช้งานรูทีนทดแทนของตัวเอง แต่
อะไรคือความหมายของอินเทอร์เฟซเสริมของ BLAS และ LAPACK? คุณทำอะไรหายโดยการไม่เข้าร่วมและห้องสมุดกำลังทำอะไรแทน
ห้องสมุดใดมีมากกว่าอินเตอร์เฟสหรือไม่? ตัวอย่างเช่น UMFPACK ถูกเขียนใน C และมีอินเตอร์เฟสเสริมให้กับ BLAS และ LAPACK UMFPACK (หรือไลบรารีอื่น) สามารถทำอะไรได้บ้างที่ BLAS และ LAPACK ไม่สามารถทำได้ด้วยตนเอง