第四章 方程求解
第四章 方程求解
教学目的:学习并掌握计算机代数系统Maple下进行代数方程和微分方程求解的方法和技巧,并了解其在方程求解中的缺限。
教学目标:掌握代数方程和微分方程求解的方法和技巧,并尝试应用所学数学基础解决Maple下关于方程求解的缺陷问题。 重点内容:代数方程求解,微分方程求解。
难点内容:高次代数方程求解,非线性微分方程求解。 1 代数方程(组)求解
1.1 常用求解工具—solve
求解代数方程或代数方程组, 使用Maple中的solve函数. 求解关于x的方程eqn=0的命令格式为:
solve(eqn, x);
求解关于变量组vars的方程组eqns的命令为: solve(eqns, vars); > eqn:=(x^2+x+2)*(x-1);
> solve(eqn,x);
当然, solve也可以求解含有未知参数的方程: > eqn:=2*x^2-5*a*x=1;
> solve(eqn,x);
solve函数的第一个参数是有待求解的方程或方程的集合, 当然也可以是单个表达式或者表达式的集合, 如下例: > solve(a+ln(x-3)-ln(x),x);
对于第二个参数, Maple的标准形式是未知变量或者变量集合, 当其被省略时, 函数indets自动获取未知变量. 但当方程中含有参数时, 则会出现一些意想不到的情况:
> solve(a+ln(x-3)-ln(x));
很多情况下, 我们知道一类方程或方程组有解, 但却没有解决这类方程的一般解法, 或者说没有解析解.比如,一般的五次或五次以上的多项式,其解不能写成解析表达式.Maple具备用所有一般算法尝试所遇到的问题,在找不到解的时候, Maple会用RootOf给出形式解. > x^7-2*x^6-4*x^5-x^3+x^2+6*x+4;
> solve(%);
> solve(cos(x)=x,x);
但是, 有时候, Maple甚至对一些“显而易见”的结果置之不理, 如: > solve(sin(x)=3*x/Pi,x);
此方程的解为0 ,6π±, 但Maple却对这个超越方程无能为力, 即便使用allvalues求解也只有下述结果: > allvalues(%);
另外一个问题是, Maple在求解方程之前,会对所有的方程或表达式进行化简, 而不管表达式的类型, 由此而产生一些低级的错误: > (x-1)^2/(x^2-1);
> solve(%);
1
但是, 大量实验表明, solve的确是一个实用的方程求解工具, 但是也不可盲目相信它给出的一切结果, 特别是对于非线性方程而言, 对于给出的结果需要加以验证.
下面通过几个例子说明在Maple中非线性方程组的求解问题. 例:求解方程组:
> eqns:={x^2+y^2=25,y=x^2-5};
> vars:={x,y}; > solve(eqns,vars);
也可用下面的语句一步求出:
> solve({x^2+y^2=25,y=x^2-5},{x,y});
这个问题非常简单, 但通常遇到的非线性问题却不是这么简单, 例如要求解方程组:
> eqns:={x^2+y^2=1,sqrt(x+y)=x-y}; vars:={x,y};
> sols:=solve(eqns,vars);
可以看出, 方程解的形式是以集合的序列给出的, 序列中的每一个集合是方程的一组解, 这样就很利于我们用subs把解代入原方程组进行检验: > subs(sols[2],eqns);
> sols2:=allvalues(sols[1]);
> simplify(subs(sols2,eqns));
1.2 其他求解工具 1.2.1 数值求解
对于求代数方程的数值解问题, Maple提供了函数fsolve, fsolve的使用方法和solve很相似:
fsolve(eqns, vars, options);
其中, eqns表示一个方程、方程组或者一个程序, vars表示一个未知量或者未知量集合, options控制解的参数(诸如:complex: 复根; maxsols=n:只找到n阶最小根; intervals:在给定闭区间内求根, 等)。 > fsolve(x^5-x+1,x);
?1.167303978
> fsolve(x^5-x+1,x,complex);
> fsolve(x^3-3*x+1,x,0..1);
.3472963553
对于多项式方程, fsolve在默认情况下以给出所有的实数解,如果附加参数complex, 就可以给出所有的解。但对于更一般的其他形式的方程, fsolve却往往只满足于得到一个解: > eqn:=sin(x)=x/2;
> fsolve(eqn);
0.
> fsolve(eqn,x,0.1..infinity);
1.895494267
> fsolve(eqn,x,-infinity..-0.1);
?1.895494267
函数fsolve主要基于两个算法, 通常使用牛顿法,如果牛顿法无效, 它就改而使用切线法。为了使fsolve可以求得所有的实根,我们通常需要确定这些根所在的区间. 对于单变量多项式,函数realroot可以获得多项式的所有实根所在的区间.
> 4+6*x+x^2-x^3-4*x^5-2*x^6+x^7;
> realroot(%);
函数realroot还有一个可选参数, 它是用来限制区间的最大长度的, 为了保证使用数值求解方法时收敛, 我们可以用它限制区间的最大长度: > realroot(%%,1/1000);
求解方程或方程组的整数解时使用函数isolve, 它常常被用来求解不定方程. 例如著名的“百钱买百鸡”问题?的求解过程为:
?
> isolve({x+y+z=100,5*x+3*y+z/3=100});
当_Z1=1,2,3时,据此可得满足该问题的三组解为:
{x, y, z}={4, 18, 78}, {x, y, z}={8, 11, 81}, {x, y, z}={12, 4, 84}
1.2.2 整数环中的方程(组)求解
利用Maple中的函数msolve(eqns, vars, n), 可以在模n的整数环中求解方程(组)eqns.
例:在Z7中求解Pell方程y7?x3?28 > msolve(y^7=x^3-28,7);
再如
> msolve(y^4=x^3+32,5);
1.2.3 递归方程的求解
在Maple中, 可以求解有限差分方程(也称递归方程), 所需调用的函数是rsolve, 该函数使用的是一些比较通用的方法, 例如产生函数法、z变换法以及一些基于变量替换和特征方程的方法. 作为例子, 求解Fibonacci多项式: > eq:=f(n)=f(n-1)+2*f(n-2);
> rsolve({eq,f(0)=1,f(1)=1},f(n));
当然, 并不是所有的递归形式的函数方程的解可以写成解析形式, 如果不
能, Maple将保留原来的调用形式。此时,可用asympt函数获得它的渐进表达式, 也就是1/n的级数解。例如,对于一个具有超越形式的递归函数方程, 仍然可以得到解的渐进形式:
> rsolve(u(n+1)=ln(u(n)+1),u(n));
> asympt(%,n,5);
1.2.4 不等式(组)求解
求解一元不等式方程(组)使用命令solve: > solve((x-1)*(x-2)*(x-3)<0,x);
> solve((x-1+a)*(x-2+a)*(x-3+a) < 0, {x});
> solve(exp(x)>x+1);
> solve({x^2*y^2=0,x-y=1,x<>0});
对于由不等式方程组约束的最优问题的求解使用“线性规划”工具包simplex: > with(simplex):
> cnsts:={3*x+4*y-3*z<=23, 5*x-4*y-3*z<=10,7*x+4*y+11*z<=30};
> obj:=-x+y+2*z;
> maximize(obj,cnsts union {x>=0,y>=0,z>=0});
但是,客观地讲,Maple中求解不等式(组)是一个薄弱环节,尤其对非线性不等式组几乎无能为力。
2 常微分方程求解
微分方程求解是数学研究与应用的一个重点和难点。Maple能够显式或隐式地解析地求解许多 …… 此处隐藏:1935字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [建筑文档]2018年公需课:专业技术人员创新能力与
- [建筑文档]2013年福建教师招考小学数学历年真题
- [建筑文档]高中信息技术课flash知识点总结 - 图文
- [建筑文档]电工实训 - 图文
- [建筑文档]最高院公告案例分析100篇(民商篇)
- [建筑文档]南开中学高2017级14-15学年(上)期末
- [建筑文档]五粮液集团战略分析
- [建筑文档]鲁教版(2012秋季版)九年级化学 酸碱
- [建筑文档]超星尔雅2017中国哲学概论自整理题库答
- [建筑文档]关于成为海口金盘饮料公司材料独家供货
- [建筑文档]LNG学习资料第一册 基础知识 - 图文
- [建筑文档]四年级品社下册《好大一个家》复习资料
- [建筑文档]现阶段领导权力腐败的特点及发展趋势
- [建筑文档]魏晋南北朝诗歌鉴赏—嵇康
- [建筑文档]坚持追求真爱是理智的行为 正方一辩稿
- [建筑文档]湘西州刑释解教人员帮教安置工作存在的
- [建筑文档]园林工程试题库及答案
- [建筑文档]计算机长期没有向WSUS报告状态
- [建筑文档]日语最新流行语
- [建筑文档]B62-016 景观进场交底专题会议
- 2018年中考语文课内外古诗词鉴赏专题复
- 高考试题研究心得体会
- C语言基础题及答案
- 电气控制及PLC习题及答案
- 都昌小学家长学校汇报材料
- GMAT作文模板正确使用方法
- 俄军办坦克大赛:中国99式有望与豹2A6
- 成本会计练习题
- 酒店餐饮业最流行的5S管理方法
- 2014-2015学年山东省菏泽市高二(下)
- 《黄鹤楼送孟浩然之广陵》教案、说课、
- 2013年结构化学自测题 有答案版
- 2011西安世界园艺博览会游览解说词(附
- 窗口文明单位示范单位创建活动总结
- 2018满分超星尔雅就业课后练习期末答案
- 韶山市城市总体规划-基础资料
- 苏教版第三单元知识点归纳
- 第4章 曲轴模态分析
- 加大查办案件力度的思考
- 武汉CPC导轨介绍




