正在加载图片...
用主元连乘法定义行列式 工科线性代数现代化和大众化的思路之二 西安电子科技大学陈怀琛高淑萍 email:hchchen1934@vip.163.com 清要:提出了用主元连乘积法来定义行列式,可以把高斯消元法与行列式有机地联系起来,大大简化 行列式的理论讲授难度,可以避开的许多困惑的概念,并且使行列式的计算和编程十分方便快捷。这 从1995到2004的十年间,为了把科学计算软件用于机械、电子、控制等类工科课程, 我写了五本书,涉及十多门课程,解了超百道的线性代数问题,直正体验了后续课程和工程 问题对线性代数的需要。发现工科线性代数现代化和大众化的首要手段是引进机算。其次 许多老师根本不知道工程上是如何应用线性代数的,凭想象选材。造成在内容上,“有用的 不教,教了的没用”。本文只就行列式的用法和算法问题做些探讨。 一、 工科后续课究竟如何用行列式的? 工学生遇到的主要线性代数问颗是解方得组,其阶数常为五阶以上,直到成百上千 求解的基本原理是高斯消元法,采用的工具是计算机,用手工笔算是不可能的。不过现在的 大学数学就是偏偏只教笔算,只管解三阶以下的题目。“不教机算”的问题我己谈得很多 20O9年高教司己立项“用MATLAB和建模实践改造工科线性代数”来解决这个问题,有 19所大学,45000名学生参与了试点,深受师生欢迎,现在正在继续推广,本文就不多说了。 在这里我要谈的是线性代数中的一个困难的理论问题一一行列式,应该如何教。 大家知道,“行列式不为零”是判断线性方程组解存在的根据,从数学上看,必不可 因此现在的线性代数老师教给学生的是这样一个概念:拿米一个线性方程组,先算它的系数 行列式,如果它不等于零,再去求解:否则就不算了。实际情况远非如此,我解的上百道矩 阵应用恩目,都是直接求解方程,没有先算行列式“判解”这个步骤。其原因何在呢? 1.先判解,后求解,这样的操作顺序要有一个前提,那就是,判解应该比求解容易」 如果求解快,判解慢,那有何必多此一举去“判解”呢?因此,计算复杂度是关键,当前线 性代数中不考虑计算复杂度是一个大的缺陷。 2.方程组求解现在都用高斯消元法,数学上早有证明,那是最快的方法。行列式的计 算法则随定义而定,现有三种定义方法[:显式法、代数余子式法和主元连乘积法。我国 的现有教材从来都不讲第三种,而前两种定义下的计算复杂度极高。三阶及以上的系统,判 解远慢于求解。阶数愈高,两者的差距愈大。因此,判解实际上是不进行的。 3.消元法求解 的过程中,已经经历 解的存在性的 判断 只要 消元所 的行阶梯矩阵 的主对角线上的元素不为零,方程组就有解:主元出现零,方程就无解。其实,求出了行阶 梯矩阵,用主元连乘积的定义,己经可以很方使地通过N1次连乘,得到行列式的值,所 以求解和求行列式几乎是同时完成的,并不需要多付出双倍以至千百倍的无用功来先判解 的。尤其是使用计算机解题时,如果出现了某个零主元,计算机会发出出错告警,指出系数 行列式接近或等于于零。 二、 用主元连乘积法定义行列式 1 用主元连乘法定义行列式 ——工科线性代数现代化和大众化的思路之二 西安电子科技大学 陈怀琛 高淑萍 email: hchchen1934@vip.163.com 摘要:提出了用主元连乘积法来定义行列式,可以把高斯消元法与行列式有机地联系起来,大大简化 行列式的理论讲授难度,可以避开的许多困惑的概念,并且使行列式的计算和编程十分方便快捷。这 从 1995 到 2004 的十年间,为了把科学计算软件用于机械、电子、控制等类工科课程, 我写了五本书,涉及十多门课程,解了超百道的线性代数问题,真正体验了后续课程和工程 问题对线性代数的需要。发现工科线性代数现代化和大众化的首要手段是引进机算。其次, 许多老师根本不知道工程上是如何应用线性代数的,凭想象选材。造成在内容上,“有用的 不教,教了的没用”。本文只就行列式的用法和算法问题做些探讨。 一、 工科后续课究竟如何用行列式的? 工科学生遇到的主要线性代数问题是解方程组。其阶数通常为五阶以上,直到成百上千。 求解的基本原理是高斯消元法,采用的工具是计算机,用手工笔算是不可能的。不过现在的 大学数学就是偏偏只教笔算,只管解三阶以下的题目。“不教机算”的问题我已谈得很多, 2009 年高教司已立项“用 MATLAB 和建模实践改造工科线性代数”来解决这个问题,有 19 所大学,45000 名学生参与了试点,深受师生欢迎,现在正在继续推广,本文就不多说了。 在这里我要谈的是线性代数中的一个困难的理论问题——行列式,应该如何教。 大家知道,“行列式不为零”是判断线性方程组解存在的根据,从数学上看,必不可少。 因此现在的线性代数老师教给学生的是这样一个概念:拿来一个线性方程组,先算它的系数 行列式,如果它不等于零,再去求解;否则就不算了。实际情况远非如此,我解的上百道矩 阵应用题目,都是直接求解方程,没有先算行列式“判解”这个步骤。其原因何在呢? 1. 先判解,后求解,这样的操作顺序要有一个前提,那就是,判解应该比求解容易。 如果求解快,判解慢,那有何必多此一举去“判解”呢?因此,计算复杂度是关键,当前线 性代数中不考虑计算复杂度是一个大的缺陷。 2. 方程组求解现在都用高斯消元法,数学上早有证明,那是最快的方法。行列式的计 算法则随定义而定,现有三种定义方法[1]:显式法、代数余子式法和主元连乘积法。我国 的现有教材从来都不讲第三种,而前两种定义下的计算复杂度极高。三阶及以上的系统,判 解远慢于求解。阶数愈高,两者的差距愈大。因此,判解实际上是不进行的。 3. 消元法求解的过程中,已经经历了解的存在性的判断。只要消元所得的行阶梯矩阵 的主对角线上的元素不为零,方程组就有解;主元出现零,方程就无解。其实,求出了行阶 梯矩阵,用主元连乘积的定义,已经可以很方便地通过 N-1 次连乘,得到行列式的值,所 以求解和求行列式几乎是同时完成的,并不需要多付出双倍以至千百倍的无用功来先判解 的。尤其是使用计算机解题时,如果出现了某个零主元,计算机会发出出错告警,指出系数 行列式接近或等于于零。 二、 用主元连乘积法定义行列式
向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有