MATHEMATIC软件实验内容

更新时间:2023-09-03 18:23:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、了解数学软件Mathematic

1、Mathematic的特点

Mathematic是1988年美国Wolfram Research公司开发的一个著名的数学分析型的软件,以符号计算见长,也具有高精度的数值计算功能和强大的图形功能.它显示数学表格和图形的功能使用户对问题的理解更加形象和具体.Mathematic是人——机对话式软件,使用者在Mathematic的notebook环境中,只要在计算机上输入数学符号、公式,系统可以立即进行处理,然后返回结果,用户不必关心中间的计算过程,其交互性能非常好.

2、Mathematic5.0的工作环境

在WindXP(或Win98)环境下安装好Mathematic5.0,用鼠标双击Mathematic图标(刺球状),启动Mathematic系统,显示器上就会出现如图1的窗口,这时可以键入你想计算的东西,比如键入1+1,然后同时按下Shift键和Enter键(数字键盘上只要按Enter键),这时Mathematic开始工作,计算出结果后,窗口变为图2.

图1 Mathematic的窗口

图2 完成运算后的Mathematic的窗口

Mathematic的窗口上方是工作条.第一行为标题,显示所使用的Notebook文件名.第二行为工具菜单.下面的是Notebook窗口(工作窗口),它可以随时关闭,只留下工具条,也可以打开多个工作窗,它们是相互分开的,每个工作窗就是一个Notebook文件,其文件名以.nb为后缀.用鼠标单击工作窗,此时工作窗上方的标题栏呈高亮度显示,表明工作窗已被选中,这时可以从键盘输入命令或表达式了.要退出系统,只要单击右上角的关闭按钮即可.

Mathematic的简单使用说明:

(1)Mathematic第一次计算时因为要进行一次初始化,所需时间要长一些,从第二次开始计算就会很迅速了,

(2)在Mathematica的Notebook工作窗口中,可以完成各种运算,如函数作图,求极限、解方程等,也可以用它编写像C语言那样的结构化程序.

(3)图1-2中的“In[n]:=”表示第n个输入;“Out[n]=”表示第n个输出结果.要注意的是:“In[n]:= ”和“Out[n]=”是系统自动添加的,不需用户键入.

(4)公式输完后,按下“Shift”键和“Enter”键或按数字键盘中 “Enter”键将完成计算.

(5)用户的每一次输入和Mathematic的每一次输出,以及相应的输入、输出,都被称为“cell”或“细胞”,用“]”来标识.单击“]”,就选中了这个“细胞“,然后可对这个“细胞“进行复制、剪切、计算、全选.

(6)工作菜单中共有9个菜单,其中File是文件管理菜单.主要有新建文件、打开或关闭文件、保存文件以及退出系统的功能. Help是帮助菜单,使用时打开“Help Browser“项,以获得系统帮助文件,它是一个名符其实的使用手册,使用者可以在其中了解系统所有函数、命令的使用格式和功能.使用时,只要在窗口内输入命令项,系统就可显示该命令的使用方法及相关信息.

(7)按“Alt“键可中断计算.

(8)使用Mathematic时, 如果输入了不合语法规则的表达式,系统会显示出错信息,并且不给出计算结果.学会看系统出错信息,较快找出错误,可以提高工作效率.

3、Mathematic的基本运算功能

1、算术运算

Mathematic最基本的功能是进行算术运算,包括加(+),减(-),乘(*),除(/),乘方(^),阶乘(!)等.

注意事项:

(1)在Mathematic中,也可用空格代表乘号;数字和字母相乘,乘号可以省去,例如:3*2可写成3 2,2*x可写成2x,但字母和字母相乘,乘号不能省去.

(2)在Mathematic中,表达式中用来表示运算的结合次序的括号只允许是圆括号(无论多少层).例如:4*(2+3/(2-5))

(3)当输入式子中不含小数点,输出结果是完全精确的。例如:输入2/3,输出仍然为2/3.

(4)为了得到计算结果的近似数或指定有效数字的位数,可以用N[ ]函数.例如:N[x],N[x,20].前者取x的默认位数近似值,后者取x的20位有效数字.

(5) %表示上一个输出结果,%%表示倒数第二个输出结果,以此类推,%n表示第n个输出结果.

(6)在Mathematic中,如果在输入的表达式末尾加上一个分号“;”,表示不显示计算结果,但你可以调用它的结果.

2、Mathematic中的数学常数和数学函数

Mathematic中定义了一些常用的数学常数,这些数学常数都是精确值,如: 也可以给变量

数.

如: 赋值,定义常

In[1]:=pi=N[Pi,20]

Out[1]=3.14159265358979323846

In[2]:=x=y=5

Out[2]=5

注意事项:

(1)在后续计算中就可直接把x,y,pi作为常数使用.

例2

In[3]:=pi^2

Out[3]=9.8696044010893586188

(2)一旦你给变量x赋值后,这一变量值将一直保持不变,直到你重新给它赋值或使用清除命令将它清除:x=. 或者 Clear[x]

(3)在Mathematic中,对于变量名没有长度限制,但变量名不能以数字开头,如x2可以作为变量名,但2x却是2*x的意思,在输入含有变量的式子时,应注意x y表示x*y,而xy是一变量,x^2y意味着(x^2)*y而不是x^(2y).

Mathematic中常用的数学函数如下:

在Mathematic帮助文件中可以查到Mathematic提供的所有函数、常数和各种符号及它们的用法.

注意事项:

(1)Mathematic中,大小写英文字母要严格区分开,函数名字首字母必须大写.

(2)函数名后面的表达式一定要放在方括号“[]”内,而不是圆括号“()”,表达式.

(3)当Mathematic无法计算输入的表达式的精确值,而又要求它返回精确值时,将返回原表达式.如:

In[1]:=Sqrt[2]

Out[1]=Sqrt[2]

(4)为了完成某些特定的运算,用户还需要自己定义一些新的函数,如: In[1]:=f[x_]:=x^2 ;g[x_,y_]:=(x-y)^2/y;

(x y)2

In[1]分别定义了两个函数f(x) x和g(x,y) .要特别注意的是y

左边方括号中的变量后必须紧跟一下划线“_”,而右边表达式中的变量后没有这一符号.定义了函数f(x)、g(x,y)后,就可对其进行各种算术运算或符号运算.如: 2

In[2]:=g(2,3) Out[2]= 1

3

In[3]:=D[f[x],x] Out[3]=2x

(5)如果用户一时忘记了前面定义的函数,可以用下列命令查询:

In[4]:=?f Out[4]=Global`f

f[x_]:=x^2

这里的符号“Global”表示定义的函数在其后面的计算中全局有效.当你需要废除已经定义的函数时,可以使用Clear[f];这样,前面定义的函数不再起作用.如果一个函数的定义需要多个语句,可将它们放在一对花括号或一对圆括号中,并用分号隔开,如:

In[6]:=f[x_,n_]:=(t=Sin[x]+Cos[x];t^n+2t);

In[6]

定义了一个二元函数

算t=Sin[x]+Cos[x],,然后计算t^n+2t,最终得到f(x,n). ,它先计

(6)定义一个分段函数,一般要用到条件控制语句If、Which和Switch语句.下面列出Mathematic的一些条件结构:

①lhs:=rhs/;test 当test为True时使用定义

②If[test,then,else] 当test为True时计算then,否则计算else ③Which[test1,value1,test2,value2,... 给出第一个test i为True时的value i

④Switch[expr,form1,value1,form2,value2,...,def] 给出第一个与expr相匹配的form i对应的valuei值,若都不成立,结果为默认值def. 下面举例介绍分段函数的定义:

  x 0 1定义一个阶跃函数s(x) ,可使用If语句:

1  x 0

In[1]:=s[x_]:=If[x>=0,1,-1]

也可用/;test形式来分别定义它的两个部分:

In[2]:=ss[x_]:=1/;x>=0;ss[x_]:=-1/;x<0

If函数允许指定条件既不是True 也不是 False时的值.例如:

In[3]:=sl[x_,y_]:=If[x>y,a,b,c];若输入sl[2,1+I],则输出c.

在上例中,只有当x,y都是实数时才可比较它们大小,而1+I为一复数,不能与2比较大小,因而输出第三种结果c.

当条件多于两个时,可以用If的嵌套方式来处理,但更方便的方法是用Which函数,例如In[4]:=hh[x_]:=Which[x<0,x^2,x<=5,0,x>5,x^3],定义了以下函数

3、 集合

在进行计算时,把许多元素放在一起并作为一个整体来处理是很方便的,在Mathematic中,集合是收集元素的一种方法,是一种非常重要而又极其普遍的结构。Mathematic中的集合实际上是一个数组,即它的元素具有有序性,而且可以重复。

In[1]:=s={3,5,1} Out[1]={3,5,1}

In[2]:=t={-1,3,7} Out[2]={-1,3,7}

以下命令把集合中的每个元素平方加1.

In[3]:=s^2+1 Out[3]={10,26,2}

也可求两个集合对应元素的和差积商等,例如:

In[4]:=s+t-2^s+s*t+t^s/t Out[4]={-8,72,14}

在大多数情况下,Mathematic是把集合作为一个整体来处理,但有时也需要对集合中的某个元素进行处理.这里给出处理集合元素的一些常用函数:

{a,b,c, } 一个集合

Part[list,i] 或 list[[i]] 取集合list中的第i个元素 Part[list{i,j, }] 或 list[[{i,j, }]] 由集合list的第i,j, 元素组成的集合

Part[list,i]=value 或 list[[i]]=value 给集合list的第i个元素重新赋值

如:

In[5]:={1,2,5,6,8,9}[[4]]

Out[5]=6

In[6]:=Part[s,{2,3,1,1,2,3}]

Out[6]={5,1,3,3,5,1}

In[7]:=t[[2]]=5

Out[7]=5

In[8]:=t

Out[8]={-1,5,7}

4、代数运算

(1)多项式符号运算

Mathematic能进行多项式的加(+),减(-),乘(*),除(/),乘方(^)等运算,不仅如此, Mathematic还提供了许多关于多项式运算的函数,现列出较常用的一些:

Coefficient[poly,expr] 提取多项式poly中 expr的系数 Expand[poly] 展开多项式ploy

Factor[poly] 对多项式ploy进行因式分解

FactorTerm[poly] 提取多项式ploy中的数字公因子

PolynomialGCD[ploy1,poly2, ] 计算多项式ploy1, ploy2, 的最大公约式 PolynomialLCM[ploy1,poly2, ] 计算多项式ploy1, ploy2, 的最小公倍式 Exponent[expr,form] 计算expr中form的最高指数

Part[expr,n]或expr[[n]] expr中的第n项

Collect[poly,x] 以x的幂的形式重排多项式

Collect[poly,{x,y, }] 以x,y, 的幂的形式重排多项式 PolynomialQuotient[p,q,x] 计算多项式p/q 的商,略去余式 PloynomialRemainder[p,q,x] 计算多项式p/q的余项

上面最后两个运算方括号中的x代表把多项式的变元定义为x,以区别于多项式中可能包含的其它变量,举例如下(输出略去):

In[1]:=(x-1)^2*(x^3+1)

In[2]:=t=Expand[%]

In[3]:=Factor[t]

In[4]:=Expand[(1+2x+3y)^3]

In[5]:=PolynomialQuotient[%,x^2+2x-3,x]

In[6]:=PloynomialRemainder[%4,x^2+2x-3,x]

可以使用如下命令求符号表达式的值:

expr/.x->value 在表达式expr中用value 来替换x

expr/.{x->xval,y,->yval, } 进行一系列替换

例如:

In[7]:=1+2x/.x->3

In[8]:=1+2x+x^2/.x->2-y

In[9]:=(x+y)(x-y)^2/.{x->3,y->1-a}

In[10]:=t=1=x^2;t-3x/.x->Pi//N

(2)有理分式运算

Mathematic也可对有理分式进行处理和化简,现列出常用的一些有理分式运算如下,请读者自己做一些实验.

Apart[expr] 把表达式写成若干项的和,每项有最简分母 Cancel[expr] 消去分子,分母中的公因子

Denominator[expr] 取出表达式的分母

Numerator[expr] 取出表达式的分子

ExpandDenominator[expr] 展开表达式的分母

ExpandNumerator[expr] 展开表达式的分子

Expand[expr] 展开表达式的分子,逐项被分母除

ExpandAll[expr] 展开表达式的分母,分子

Factor[expr] 首先通分.然后对分子,分母分解因式 Simplify[expr] 把表达式尽可能简化

Together[expr] 对有理式进行通分

(3)逻辑与关系运算

Mathematic有以下逻辑与关系算子:==(相等,注意是用两个等号),!=(不相等),<(小于),<=(不大于),>(大于),>=(不小于),!(否),&&(与),||(或)等。通过它们能进行一些逻辑关系运算,关系运算的结果为False(假)或True(真).例如:

In[1]:=10<7 Out[1]=False

In[2]:=3!==2! Out[2]=False

In[3]:=7>4&&2!=3 Out[3]=True

如果Mathematica不知道关系的结果是对还是错,则按原样输出,如: In[4]:=x>y Out[4]=x>y

(4)解方程

Mathematic中方程的两边必须用等号算子“= =”而不是“=”连接,如:

In[1]:=x^2+2x-7= =0

Out[1]=x2 2x 7 0

可以用下列命令求它的两个根

In[2]:=Solve[%,x] Out[2]={x 1 22,x 1 22}

以上结果的形式称为解的变换法则形式,可将它代入含有x的任何表达式求其值,如:

In[3]:=Simplify[x^2+2x+5/.%2] Out[3]={12,12}

我们也可通过替换符来解出x,用集合规则得到解的集合

In[4]:=x/.%2 Out[4]={ , }

对于不高于四次的多项式方程,Solve总能给出其精确解,对高于四次的多项式方程不可能有公式解,尽管如此, Mathematic仍尽可能用因式分解及其它方法求解多项式,将高次方程改写成低次多项式方程或多项式方程组,结果Solve能求出许多高次多项式方程的显式代数解.例如:

In[5]:=p=3+3x-7x^2-x^3+2x^4+3x^7-3x^8-x^9+x^10;Solve[p= =0,x] Out[5]={{x->1},{x->-Sqrt[3]},{x->sqrt[3]}},ToRules[Roots[2x+x^7= =-1,x]]}

在上例中,Mathematic只求出了其中的一些解,其它解写成了ToRules表示的符号形式,使用N将给出数值解.

如果最终只须写数值解,可使用NSolve求解,如使用命令In[7]:=NSolve[p= =0,x],得到的Out[7]与Out[6]完全一样.

Mathematic能直接给出更复杂的超越方程的数值解.

In[8]:=FindRoot[x*Sin[x]-1/2= =0,{x,1}] Out[8]={x->0.740841} 上例中,{x,1}表示求方程x*Sin[x]-1/2= =0在1附近的解。

也可利用Mathematic求解方程组,命令为

Solve[{equ1,equ2, equn},{x1,x2, xn},如:

In[9]:=Solve[{a*x+b*y= =1,x-y= =2},{x,y}] Out[9]={x 1 2b1-2a,y a ba b

如果想得到a=0.1234,b=0.2时的数值解,可以输入:

In[10]:=%/.a->0.1234/.b->0.2 Out[10]={{x->4.329,y->2.329}} 注意:如果需要对表达式中多个变量赋值,可连续使用“x->expr1”,”y->expr2”, 它们之间必须用“/.”分开.

若对方程所含的全部变量求解,可略去输入语句中表示求解变量{ }的内容.如:

In[11]:=Solve[{x^2+y^2= =1,x+y= =2}]

Out[11]:=(略)

在求解方程(组)时,可以把一个方程看作你要处理的主要方程,而其它方程作为必须满足的辅助条件,你会发现这样处理将很方便。要做的第一件事是命名辅助条件组,然后用名字把辅助条件包含在你要用Solve 求解的方程组中.

如:SinCos被定义为方程:sin[x]^2+Cos[x]^2= =1;

In[14]:=sinCos= Sin[x]^2+Cos[x]^2= =1;

在辅助条件sinx^2+cosx^2=1下,求解方程sinx+2cosx=1

In[15]:=Solve[{Sin[x]+2Cos[x]= =1,SinCos},{Sin[x],Cos[x]}] Out[15]={{Sin[x]->-(3/5),Cos[x]->4/5},{Sin[x]->1,Cos[x]->0}} 在同样条件下,求解另一个方程:

In[16]:=Solve[{Sin[x]= =Cos[x],SinCos},{Sin[x],Cos[x]}] Out[16]=(略)

二、用Mathematic作函数图象

(1) 一元函数曲线的输出

Mathematic允许用各种图形、曲线输出计算结果,甚至输出动画,因此可以实现计算的可视化.图形的输出方式很多,此处只介绍其中的一小部分.

如果希望看到一个函数的几何图形,可以简单地输入

In[1]:=Plot[Sin[x],{x,0,2Pi}]

它代表绘制sin(x)的曲线,0<x<2Pi.

还可以给这个图形的坐标轴加以说明,可使用:

In[2]:=Plot[Sin[x],{x,0,2Pi},AxesLable->{“x”,”sin(x)”}] 或者 In[2]:=Show[%,AxesLable->{“x”,”sin(x)”}],其中Show表示把上面的图形显示出来.还可以为整个图形加一个标题,可用

In[3]:=Show[%,PlotLabel->”sin(x)~x”]

上面几个输入语句中的AxesLable->{“x”,”sin(x)”}和PlotLabel->”sin(x)~x”称为图形输出语句的特别说明部分,图形输出有很多的可能的说明部分,下面我们将给出其中的一部分.

画图中的特别说明部分

如果我们希望把几条曲线重合在一起加以比较,可按以下方式操作.先画两条曲线,并给它们一个名字.

In[4]:=p1=Plot[Sin[x],{x,-2Pi,2Pi},PlotStyle->{RGBColor[1,0,0]}] In[5]:=p2=Plot[Cos[x],{x,-2Pi,2Pi},PlotStyle->{RGBColor[0,1,0]}] 然后使用Show[{p1,p2}]就能将两条曲线合在一起。在上面的例子中,PlotStyle又是一个特别说明项,它规定所画图形的风格特征,如所画图形的颜色、线条、点的类别等.其命令格式为:PlotStyle->{{Style1},{Style2}, },

其中Style i是由一些图形指令构成的集合,可循环使用.Style 常使用的图形指令有

AbsolutePointSize[d] 规定点的大小为d个绝对单位(1/72英寸) AbsoluteThickness[d] 规定线宽为d 个绝对单位(1/72英寸) AbsoluteDashing[{d1,d2, }] 规定直线为以d1,d2, 长度排列的虚线 RGBColor[red,green,blue] 通过红绿蓝规定颜色(其值在0~1之间) GrayLevel[level] 规定图形目标的对比度(其值在0~1之间) 把几条曲线画在一起出可使用以下方法,如:

In[6]:=g1=Normal[Series[Sin[x],{x,0,3}]];

In[7]:=g2=Normal[Series[Sin[x],{x,0,5}]];

上面两条命令分别把sin(x)在x=0处展开成x的级数到三次幂和五次幂并舍去余项,得到了两个不同的多项式.下面的命令能将它们画在同一张图上。

In[8]:=Plot[{Sin[x],g1,g2},{x,0,2Pi},PlotRange->{1,1},PlotStyle-> {{RGBColor[1.,0.1,0 .1]},{RGBColor[0.1,0.1,1.]},

{RGBColor[0.1,1,0.1]}}]

Mathematic也可绘制参数形式或极坐标形式给出的曲线,如:

In[9]:=r[t_ ]:=(3Cos[t]^2-1)/2;ParametricPlot[{r[t]*Cos[t],r[t]*Sin[t]},{t,0,2Pi}]

在Mathematic下画散点图用以下命令

In[10]:=ListPlot[{{1,1},{1.25,1.5},{1.5,1.35},{1.75,2.1}},

Prolog->AbsolutePointSize[8]]

其中Prolog->AbsolutePointSize[8]]是在画图之前先确定点的大小。以下命令默认点的横坐标依次为整数1,2,

In[11]:=ListPlot[{1,2,3,5,7,11,13,17,19,23},Prolog->AbsolutePointSize

[4]]

(2)三维图形的绘制

Mathematica可以绘制三维图形,例

如:In[1]:=Plot3D[Sin[x*y],{x,0,Pi},{y,0,Pi}]绘制一幅z=sin(xy)的图形. 和绘制二维曲线图一样,Plot3D[ ]也可以带很多说明,现将常用的一些列入下表:

下面再举例对特别说明加以解释,例如:

In[2]:=g=Plot3D[-Sqrt[x^2+y^2]/10,{x,-5,5},{y,-5,5},PlotPoints->50]画出一个锥面,而In[3]:=Show[g,Mesh->False,Boxed->False,Axes->False]去掉了图g中的网格,外框和坐标轴;In[4]:=Show[g,Shading->False]把图g 中的阴影去掉.

另外有很多涉及色彩,阴影,多光源效应的特别说明项,此处从略.

Mathematic 也能画出一些特殊类型的图形,如:参数图,等高线图,密度图等.下面列出较常用的一些.

ParametricPlot[{fx,fy},{t,tmin,tmax}] 平面曲线的参数图

ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax}] 空间曲线的参数图

ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax},{u,umin,umax}] 空间曲面的参数图

ContourPlot[f,{x,xmin,xmax},{y,ymin,ymax}] 函数f(x,y)的等高线图

DensityPlot[f,{x,xmin,xmax},{y,ymin,ymax}] 函数f(x,y)的密度图

三、用软件Mathematic计算极限

(1)极限的基本计算

Mathematic可以求函数和序列的极限.也可有洛必达法则求函数的不确定型极限,例如

In[1]:=Limit[Sin[x]/x,x->0]

Out[1]=1

In[2]:=Limit[(1+1/n)^n,n->Infinity]

Out[2]=E

In[3]:=Limit[x*Log[x],x->0]

Out[3]=0

In[4]:=Limit[(1+2x)^(1/x),x->0]

Out[4]=E^2

Mathematic也可求左,右极限

求左极限:

In[5]:=Limit[x/Sqrt[1-Cos[x]],x->0,Direction->1 ]

Out[5]=-Sqrt[2]

求右极限:

In[5]:=Limit[x/Sqrt[1-Cos[x]],x->0,Direction->-1 ]

Out[5]=Sqrt[2]

(2)实例

变速直线运动的瞬时速度:如果物体作直线运动,在直线上选取坐标系, 该物体所处的位置坐标 s 是时间 t 的函数,记为 s = s(t),则从时刻 t0 到t0 + t 的时间间隔内它的平均速度为 ss(t0 t) s(t0) , t tt0 时刻的即时速度 v(t) lims(t0 t) s(t0).0 t 0 t

比如:自由落体运动

四、用软件Mathematic计算导数

(1)导数的基本计算

在Mathematicak ,可以很方便地完成各种微分运算,命令格式为:

In[1]:=D[x^n,x] Out[1]=In[2]:=D[Log[x],{x,2}] Out[2]=In[3]:=D[x^2+y^2,x] Out[3]=

以上是假定y 独立于x,若y 是x的函数,可按下述方法处理:

In[4]:=D[x^2+y[x]^2,x] Out[4]=2x+2y[x]y’[x]

也可不给出显示函数y[x]而用命令NonConstants->{y}直接暗示D:y 是x

y的函数,下例中,D[y,x,NonConstants->{y}]表示. x

In[5]:=D[x^2+y^2,NonConstants->{y}]

Out[5]=2x+2yD[y,x,NonConstants->{y}]

我们也可用D命令求混合偏导数

In[6]:=D[x*Exp[y*x]+Sin[x*y*z],x,y,x]

In[7]=D[Sin[x*y*z^2],x,y,NonConstants->{z}]

如果输入的表达式不是一个具体函数,则得到微分后的一般形式.如: In[8]:=D[x*f [x^2],x] Out[8]=

在Mathematic中还可求函数的全微分,命令格式为:

Dt[f] 求全微分df ; Dt[f,x] 求全导数 f; x

Dt[f,x,Constants->{c1,c2 }]; 求全导数,其中ci为常数.

In[11]:=Dt[x^2+y^2]

Out[11]=2xDt[x]+2yDt[y]

In[12]:=Dt[x^2+y^2,x]

Out[12]=2x+2yDt[y,x]

In[13]:=Dt[x^2+y^2,x,Constants->{y}]

Out[13]=2x

In[14]:=SetAttributes[{c,d},Constant]

Dt[c*y^2*x^2+d*y^2,x,y]

Out[15]=(略)

在上例中,SetAttributes[{c,d},Constant]表示在所有情形下把c,d都定义为常数.用命令ClearAttributse[{c,d},Constant]可清除这种设置.

(2)实例

回旋曲线的数学方程式

回旋曲线是公路设计中最常用的一种缓和曲线。我国《标准》规定缓和曲线采用回旋线,回旋线的基本公式为:

l A2 (1)

——回旋线上某点的曲率半径

l——回旋线上某点到原点的曲线比

A——回旋线参数

日本道路协会编写的《回旋曲线手册》(修订版)给出了回旋线的参数方程如下:

t2x cosudu 0 (2)

y tsinu2du 0

(1)式和(2)式之间有什么关系呢,分析如下:

由弧微分公式可求出l如下:

l t

0 (3) dxdt2又由(2

)式: 0cosudu ( ) (4)

dtdt

dydt2 sinudu ( ) (5) 0dtdt

t代入3

式得:l 0 ( ) (6) 再求曲率半径 为: dx dy dt dt (7) dxd2ydyd2x 2dtdtdtdt22232

由(4)式,(5)式得: d2xd2y 2 ( ),2 ( ) (8) dtdt

代入(7)式得: ( ) (9) 由(6),(7)式得: l ( )=常数 (10) 综上讨论可知,l ( ),

用(2)式表示的回旋曲线满足(1)式所具有的性质,即:

l A2

五、用软件Mathematic计算不定积分与定积分

(1)基本计算

Mathematic可以求不定积分,定积分,重积分等各种积分运算。例如: In[1]:=Integrate[1/(x^2-1),x] Out[1]=log[1 x]log[1 x] 22

当被积分函数包含符号不确定的参数时,积分结果可能与参数的符号有关,如果不事先加以说明, Mathematic总是假设该参数为正值.如:

In[2]:=Integrate[1/(x^2+a),x] Arcx]a Out[2]=a

我们知道,许多不定积分不能用初等函数表示出来,有些根本没有封闭形式. Mathematic有很多特殊函数可以表示一些积分结果.如:

In[3]:=Integrate[Log[Log[x]],x]

Out[3]=xLog[Log[x]]-LogIntegral[x]

上面的特殊函数LogIntegal[x]是特殊积分函数——对数积分函数. 如果不定积分没有封闭形式,用户也没有事先约定,在这种情况下,Mathematica把输入的公式原样输出.

Mathematic可以用牛顿——莱布尼兹公式完成符号形式的定积分,如果输入:

In[4]:=Integrate[3x^2+2x,{x,a,b}] Out[4]=

ab

也可计算二重积分,如: 计算 dx (3x2 3y2)dx

00

In[5]:=Integrate[3x^2+3y^2,{x,0,a},{y,0,b}]

In[6]:=Integrate[6x^2+6y^2,{x,-a,a},{y,-Sqrt[a^2-x^2],Sqrt[a^2-x^2]}] Out[6]=3Pi

本文来源:https://www.bwwdw.com/article/zdpi.html

Top