[讨论] 有关计算行列式的问题

楼主: askooen (凤梨)   2021-10-25 20:33:17
假设我有四个 10000x10000 的矩阵 A,B,C,D,现在要算行列式 Q。
我想要的结果是Q = A.*D-B.*C。想请问各位大大在不用循环的条件下应该怎么算?
会问的原因是因为实际上不是只有四个矩阵A,B,C,D,而是有5x5个10000x10000的矩阵。
麻烦各位大大指教,谢谢。
作者: sunev (Veritas)   2021-10-26 01:02:00
120项硬展开?
作者: YoursEver (猪是妳)   2021-10-26 21:06:00
看不懂叙述,请直接说明到底要算什么、算哪些。
作者: sppmg (sppmg)   2021-10-27 01:23:00
原来不是只有我看不懂XD,还以为是自己忘光了。想问,你的‘行列式’和我的‘行列式’是同一个东西吗?感觉应该是这样,假设这些2D矩阵存在 a{1:25} ,要算 a{1}.*a{end} - a{2}.*a{end-1} - ....啊!对了,如果不是作业要求的话,才25次左右的计算量,循环根本没差多少。
作者: sunev (Veritas)   2021-11-02 18:54:00
虽然原PO应该跑了,但我猜是把50000*50000的矩阵看成5*5个10000*10000的矩阵,然后求这个5*5的矩阵的行列式
作者: YoursEver (猪是妳)   2021-11-03 09:55:00
https://en.wikipedia.org/wiki/Determinant如果是sunev说的那样,应该从block matrix那里推分解但是限制始终会在对角线上的矩阵,是否invertible
作者: sunev (Veritas)   2021-11-03 11:18:00
他要的不是det([[A B];[C D]]),而是A.*D-B.*C

Links booklink

Contact Us: admin [ a t ] ucptt.com