首页 > 编程知识 正文

maple符号计算,maple如何化简公式

时间:2023-05-06 09:02:17 阅读:262904 作者:1101

%表示上一个计算结果,%%表示上上个计算结果,%%%表示上上上个计算结果>restart:恢复初始状态,相当于matlab中clear、clc语句,一般写在开头[ 符号指插入文本,可以实现注释的功能,[>符号指插入代码,当我们想在命令中插入语句时在上一句末点击上述符号可以插入新的行Maple可以进行数学(包括了绝大部分数学知识)运算(包括符号运算)和作图(调用相关函数包即可,with()是调用命令,当然with运行后会显示库中所有函数建议不显示结果用:结尾)本文旨在让初学者了解Maple一些基础应用,具体实践还要结合复杂例子进行学习新手在学习当中最常见的错误是拼写错误,若出现错误首先看前面语句是否有拼写错误,进行错误排查时最好将每句结果都显示出来。其次若看不出来错误,应该从第一句(>restart)开始重新执行,因为有些错误可能是之前一些删除的命令的运算结果带来的。control+delete强制删除命令,删除整行Maple版本更新有些点变化较大持续更新中

常用初等数学函数

abs(z):绝对值   pi:π     I:虚数单位  infinity:无穷

factorial(n):n的阶乘 

x^y : x的y次方  exp(x)指数函数 ln(x)自然对数  log10(x)常用对数log[b](x)以b为底的对数

sqrt()平方根   surd(x,n) :x的n次根  ceil(x)不小于x的整数  floor()不大于x的整数 round(x)四舍五入 trunc()取整 max(a1,a2,a3,a4....) rand()随机数

sin(x)  cos(x)  tan(x) sec(x) cse(x) cot(x) arcsin(x)......:三角函数

a..b:表示区间

lhs(方程):获取方程的左边项   rhs(方程):获取方程的右边项,常用的命令,例如我们在进行多项式系数处理时常用

isolate(方程,表达式):简化方程

with():调用一些函数包

>f:=x(自变量)→x^2(函数);定义函数

注:写循环语句时不能通过enter直接换行,要使用shift+enter进行换行,当然我们要想几个命令同时运行但一行写不下时也可以用此命令换行

多项式:

sort:降幂排列函数

例如:

>sort_poly:=x+x^2-x^3+1-x^4;

>sort(sort_poly);

对于多元多项式情况比较复杂些不强调时按混合项总幂排,若强调某一个变量时放在前面>sort(poly,[y,x]),还有特殊的按字典排序

>sort(poly,[x,y],'plex')

作各种运算时会自动合并同类项,对于多项式只有完全相同的项才会自动合并,若要针对某个变量合并,要用collect命令

>collect(poly,x);

若是先对x合并再对y合并

>collect(poly,[x,y]);

多项式的加减用+-即可,rem、quo分别是多项式除法的商和余,divide则是用来检测整除性,若能整除得到true

当用*时并不会计算,只有用强制命令expand(展开,包括三角函数)才会把两个多项式的乘积算出来

>expand((x+1)*(x-2));

degree和coeff分别确定多项式的次数以及待定项的系数

>coeff(poly,x^4)

>coeff(poly,x,'power');所有项的系数,在化简中常用的命令,可以提取特定项前面的系数

factor:因式分解

simplify:表达式简化,若前面我们将式子中的一些量改写为其他形式,simplify可以将改写的形式代入进去化简,十分好用五星好评

>simplify(sqrt(x^2*y^2),assume=positive);      假定正数情况下简化

>simplify(x*y*z+x*y+x*z+y*z,{x*z=1});             x*z=1简化时用的附加关系

combine是expand的相反命令,combine对三角函数化简非常重要,combine(epr,trig)将三角函数幂的形式转化为倍频形式,combine(epr,power)将三角函数化简为幂的形式

convert:等价形式的转换命令,例如小数和分数的转换,三角函数和指数的转换

>convert(sin(x),exp);

>convert(0.1233655,rational);

代换命令

变量代换为数值subs

>subs(x=a,y);   英文substitude符号代换,化简时常用的命令,意味着之后部分输入的x在运算结果中都显示为a,功能更强大的代换命令为alias()

>evalf(%);   计算表达式的值  eval[n](表达式,x=3)计算x=3时表达式的值,n位有效数值

>algsubs(a*b=3,poly);  数值代换

解方程

>solve(f,x);

>solve({f1,f2},{[x,y]})

>fsolve(f,x)

isolve:整数范围类的解

微分与积分

>limit(f(x),x=0);infinity

>diff(f(x,y),x,y);混合偏导

>diff(f(x),x$3);三阶导

>implicitdiff(f,y,x)隐函数求导

>implicitdiff(f,{z(x,y)},{z},x,y,notation-Diff);二次偏导

>D(f);函数算子

>D[2](f);对第二个变量求导

>int(f,x=a..b);

>int(int(f,y=0..x^2),x=0..5);双重积分

>series(expr,eqn,n);

>taylor(sin(x),x=0,15);

>mtaylor(f,[x=1,y=1],3);多变量温柔的溪流展开

>FourierApprox(f,x=-pi..pi,discont=true):傅里叶展开

微分方程的符号解

>dsolve(diff(y(x),x)=x+y(x),y(x));

注:对较长的式子我们用变量表示(例如:>y1:=diff(y(x),x)=x+y(x);

>dsolve(y1,y(x));)

例:求微分方程组

>alias(x=x(t),x0=x(0),y=y(t),y0=y(0)):取别名

>dsolve(diff(x,t)=-x-5*y+1,diff(y,t)=x+y*t,x0=1,y0=1,x,y);

例:求微分方程的幂级数解

>ode:=D(D(y))(x)+x*y(x):

>dsolve({ode,y(0)=0,D(y)(0)=0},y(x),type=series);

例:常微分方程的数值解

type=numeric即可

例:微分方程结果绘图

>u:=dslove(......):求解

>plots[odeplot](u,0..15,color=blue,thickness=2,frame=20);绘图

例:解二阶方程

>dsolve(diff(y(x),x$2)+3*x^2+y(x),y(0)=0,y(x));

注:DEtools程序包含有微分方程绘图命令,可以绘制方向场

DEplot:绘制微分方程组解的图形

DEplot3d:绘制微分方程组解的三维图形

dfieldplot:绘制微分方程组的方向场

PDEplot:绘制一阶偏微分方程的图形

 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。