版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数学软件,第七章 解方程,方程在数学的发展过程中有重要作用,从最初的代数方程、超越方程到微分方程都在一定程度上推动了数学的发展。借助于计算机强大的计算能力,Maple提供了求解代数方程、超越方程和微分方程精确解和数值解的工具。,7.1 多项式,1、多项式的定义,(1) 赋值 f:=x4-3*x2+2*x-5; f:=x-(x-1)3+2*x-3;,(2) 随机生成 f:=randpoly(x); g:=(x,y)-randpoly(x,y);,2、多项式的操作,提取多项式的系数 可以用函数coeff提取多项式的系数, 格式: coeff(p,x,n),coeff(p,xn); 多元多项式用co
2、effs(p); 如: f:=randpoly(x); g:=(x,y)-randpoly(x,y): coeff(f,x);coeff(f,x2);coeff(f,x,3); coeffs(g(x,y);,(2) 提取多项式的项 op(i,e);#提取表达式e的第i项 op(i.j,e);#提取表达式e的第i至j项 nops(e);#计算表达式e总的项数 例如: e:=randpoly(x); op(1,e); op(3.5,e); op(e); nops(e);,(3) 多项式的开方 平方根: psqrt(p); 如果不是完全平方,返回 _NOSQRT n次方根:proot(p,n); 如
3、果不是完全n次方,返回 _NOROOT 例如: psqrt (x4-2*x2+1); psqrt(x2-2*x+3); proot(x3-3*x2+3*x-1,3); proot(x4-2*x2+1,4);,(4) 多项式的商和余式 求多项式相除的商: quo(p1,p2,x,r); #所得结果为p1除以p2的商,r保存余式(可选项) 求多项式相除的余式: rem(p1,p2,x,q); #所得结果为p1除以p2的余式,q保存商(可选项) 例如: p1:=x6-4*x3+3*x2-2*x+4; p2:=x3+2*x2-3*x-1; q1:=quo(p1,p2,x,r1); r2:=rem(p1
4、,p2,x,q2); evalb(q1=q2); evalb(r1=r2);,(5) 合并同类项 调用函数collect 格式: collect(p,x);其中x是单变量或多变量的列表或集合 例如: f:=a*ln(x)-ln(x)*x-x; collect(f,ln(x); g:=int(x2*exp(x)+exp(-x),x); collect(g,exp(x); p:=x*y+a*x*y+y*x2-a*y*x2+a*x+x+y; collect(p,x,y);collect(p,x,y); collect(p,y,x);collect(p,y,x);,(6) 多项式的因式分解 调用函数f
5、actor对多项式进行因式分解. 格式: factor(p);factor(p,k); ifactor(n);#对整数进行分解 前者在有理数域分解,后者可以在实数或复数域中分解. 例如: factor(6*x2+18*x-24); factor(x3+5); factor(x3+5,real); factor(x3+5,complex); factor(x3+5,5(1/3); factor(x3+5,5(1/3),(-3)(1/2); ifactor(480);,1、多项式的判别式,例如: p1:=a*x2+b*x+c; discrim(p1,x); p2:=a*x3+b*x2+c*x+d;
6、 discrim(p2,x);,多项式的判别式在求根中具有重要作用, 可以使用函数 discrim得出判别式. 格式为: discrim(p,x).,7.2 多项式运算,2、多项式的展开,使用函数expand展开多项式. 格式: expand(p); 例如: f1:=x2+x+1; f2:=x+1; f:=f1*f2; expand(f); f1:=3*x+4*x*y-5; f:=f1*(-8*x2-6*y2+5*x); expand(f); simplify(f);,3、多项式的约简,调用函数normal对多项式或有理式进行化简. 格式: normal(p,expanded);#expand
7、ed是可选项. 例如: restart: normal(x2-(x+1)*(x-1)-1); normal(x2-y2)/(x-y)3); normal(f(x)2-1)/(f(x)-1); normal(sin(x*(x-1)+x); normal(1/x+x/(x+1); normal(1/x+x/(x+1),expanded);,7.3 有理函数,1、获取有理函数的分子分母,可以调用numer和denom来获取分子和分母. 格式: numer(x); denom(x); 例如: f:=(x2+x+1)/(x+y2); numer(f); denom(f); numer(x+1/(x+1/
8、x); denom(x+1/(x+1/x);,调用convert可以将有理函数转换为不同的形式. 格式: convert(f,parfrac,x); 其中, f为x的有理函数, parfrac表示分解为部分有理式的和. 例如: f:=(x+3)/(x2-5*x+6); convert(f,parfrac,x); convert(x+1)/(x-y)2,parfrac,x); convert(x3-4*x2+3*x-1)/(x4-4*x3+6*x2-4*x+1),parfrac,x);,2、有理式转换,convert(float,fraction); 如: convert(1.23456,fra
9、ction); onvert也可以进行十进制数与其它进制数之间的转换. 如: convert(64,binary); convert(63,octal); convert(65535,hex); convert(FFFF,decimal,hex);,3、浮点数转化为有理数,可以利用convert进行三角表达式的转换. 例如: f:=int(tan(x)5*sec(x)3,x); g:=simplify(f); convert(g,sec); expand(%); convert(tan(x)5+sec(x)3*sin(x),sincos);,7.4 一元n次方程,1、高次方程的精确解,对于次数
10、不超过4的一元方程, 都可以得到它在复数范围内的根的表达式, 调用solve在复数范围内可以求出不超过4次的一元方程的精确解. 格式为: solve(eq,x). 例如: solve(x2-2*x+3=0,x); solve(a*x3+b*x2+c*x+d=0,x); solve(3*x4-2*x3+2*x2-4*x+5=0); evalf(%);,调用fsolve可以求方程的浮点解. 格式: fsolve(eqs,vars,K); 其中, eqs为方程或方程组, vars为变量集合, 可选项K表示范围. 例如: fsolve(2*x+1=abs(2x-1),x); eq:=tan(sin(x
11、)-exp(-3*x)=0; fsolve(eq,x=0.1); fsolve(eq,x=1.4); f1:=x2-y2=1; f2:=y=exp(x); fsolve(f1,f2,x,y);,2、方程的浮点解,solve也可以求用于解不等式或不等式组. 例如: solve(x-1)*(x-2)*(x-3)1,x); solve(x21,y2=1,x+y1/2,x,y); solve(x+y+1/(x+y)=9,x);,3、不等式求解,用二分法求方程的根,一、提出问题,设函数f(x)在a,b上单调连续,且f(a)f(b)0,则方程f(x)=0在a,b内有唯一实根,把区间a,b二等分,则根必位于
12、其中某一区间内,这样得到一新的区间a1,b1,重复这一过程,就可以逐步向方程的实根靠近,最终得到方程根的近似值.,例 用二分法求方程 x3+1.1x2+0.9x-1.4=0 的根,Step1: 确定根的范围 f:=x-x3+1.1*x2+0.9*x-1.4; plot(f(x),x=-2.2);,Step2: 求根的近似值. a:=0.;b:=1.; while abs(b-a)=10(-10) do c:=(a+b)/2; if f(c)* f(a)0 then a:=c;b:=b; elif f(c)*f(b)0 then a:=a;b:=c; else a:=c;b:=c; end if
13、; a=a,b=b,c=c; end do;,通过计算,求得方程根的近似值为0. 6706573107.,7.5 常微分方程,Maple能显式或隐式地解析求解许多常微分方程. 主要使用函数dsolve求解.,dsolve的调用格式: dsolve(ode,func,implicit); 例如: dsolve(diff(y(x),x)=y(x),y(x),implicit); dsolve(diff(y(x),x)+y(x)=x,y(x);,1、一阶常微分方程,例1 求方程,的通解.,restart; eq:=diff(y(x),x)-2*y(x)/(x+1)=(x+1)(5/2); dsolv
14、e(eq,y(x); factor(%); assign(%); lj:=seq(subs(_C1=i,y(x),i=-4.4); plot(lj,x=-2.2,y=-10.10,color=black);,理论上将常微分方程分成 y(n)=f(x), y”=f(x,y), y”=f(y,y) 三种类型,一般是利用变量替换化归为一阶线性微分方程求解. 但在Maple中调用dsolve求解比较方便.,2、可降阶的高阶线性常微分方程,例2 分别求微分方程,的通解.,eq1:=diff(y(x),x$3)=exp(2*x)-cos(x); eq2:=(1+x2)*diff(y(x),x$2)=2*x
15、*diff(y(x),x); eq3:=y(x)*diff(y(x),x$2)-diff(y(x),x)2=0; dsolve(eq1,y(x); dsolve(eq2,y(x); dsolve(eq3,y(x);,3、高阶线性常微分方程,例3 分别求微分方程,的通解.,eq1:=diff(y(x),x$2)-2*diff(y(x),x)-3*y(x)=0; eq2:=diff(y(x),x$4)-2*diff(y(x),x$3)+5*diff(y(x),x$2)=0; eq3:=diff(y(x),x$2)-5*diff(y(x),x)+6*y(x)=x*exp(2*x); dsolve(e
16、q1,y(x);dsolve(eq2,y(x);dsolve(eq3,y(x); assign(%); lj:=seq(seq(subs(_C1=3*i,_C2=3*j,y(x),i=-1.1),j=-1.1); plot(lj,x=-3.3,y=-10.10,color=blue);,4、常微分方程的数值解,例4 解微分方程,restart: eq:=diff(y(x),x)=sqrt(x2+y(x)2); dsolve(eq,y(0)=-1,y(x); s:=dsolve(eq,y(0)=-1,y(x),numeric); s(0)2; s(0.1)2; plot( rhs(s(x)2),x=0.1);#rhs(eq):取eq右边的项,例5 求满足给定初始条件的微分方程的解,restart: eq:=diff(y(x),x$2)-x*y(x)=0; dsolve(eq,y(0)=-1,D(y)(0)=1,y(x); dsolve(eq,y(0)=-1,D(y)(0)=1,y(x), type=series);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年嘉兴市海宁市儿童福利院招聘考试真题
- 2025-2026学年广东省汕头市高二地理下册期中试卷(含答案)
- 2025年金华市级机关基层遴选公务员真题
- 广东湛江经济技术开发区招聘中小学教职工考试真题2025
- 水利工程水土保持制度
- 教师六项纪律负面清单自查报告
- 机关单位防火巡查制度
- 泓乐洗涤-星级酒店布草洗涤项目环评报告表
- 年处理1.5万吨磷酸铁锂电池正极材料修复研发生产基地项目环评报告表
- 人教版七年级语文下册第六单元整本书阅读课件
- 食品冷链温湿度管理制度
- 父母房屋转赠协议书
- 低空经济产业园项目环境影响评估
- 小学汉字书写规范与教学策略研究
- 大型会议承办工作手册
- DB32T 4842-2024耕地土壤中水溶性硒的测定 氢化物发生-原子荧光光谱法
- 使用单位特种设备安全风险管控清单
- 中建EPC工程总承包项目全过程风险清单(2023年)
- 纽卡斯尔护理满意度量表(NSNS)
- 国考历年行测真题-常识判断
- 市值管理简述课件
评论
0/150
提交评论