用主元连乘法定义行列式—工科线性代数现代化和大众化的思路之二摘要:提出了用主元连乘积法来定义行列式,可以把高斯消元法与行列式有机地联系起来,大大简化行列式的理论讲授难度,可以避开的许多困惑的概念,并且使行列式的计算和编程十分方便快捷
这从1995到2004的十年间,为了把科学计算软件用于机械、电子、控制等类工科课程,我写了五本书,涉及十多门课程,解了超百道的线性代数问题,真正体验了后续课程和工程问题对线性代数的需要
发现工科线性代数现代化和大众化的首要手段是引进机算
其次,许多老师根本不知道工程上是如何应用线性代数的,凭想象选材
造成在内容上,“有用的不教,教了的没用”
本文只就行列式的用法和算法问题做些探讨
一、工科后续课究竟如何用行列式的
工科学生遇到的主要线性代数问题是解方程组
其阶数通常为五阶以上,直到成百上千
求解的基本原理是高斯消元法,采用的工具是计算机,用手工笔算是不可能的
不过现在的大学数学就是偏偏只教笔算,只管解三阶以下的题目
“不教机算”的问题我已谈得很多,2009年高教司已立项“用MATLAB和建模实践改造工科线性代数”来解决这个问题,有19所大学,45000名学生参与了试点,深受师生欢迎,现在正在继续推广,本文就不多说了
在这里我要谈的是线性代数中的一个困难的理论问题——行列式,应该如何教
大家知道,“行列式不为零”是判断线性方程组解存在的根据,从数学上看,必不可少
因此现在的线性代数老师教给学生的是这样一个概念:拿来一个线性方程组,先算它的系数行列式,如果它不等于零,再去求解;否则就不算了
实际情况远非如此,我解的上百道矩阵应用题目,都是直接求解方程,没有先算行列式“判解”这个步骤
其原因何在呢
先判解,后求解,这样的操作顺序要有一个前提,那就是,判解应该比求解容易
如果求解快,判解慢,那有何必多此一举去“判解”呢
因此,计算复杂度是关键,当前