实验一 Mathematica系统使用入门 【实验目的】 熟悉 Mathematica的一些基本命令的格式与作用并能熟练使用这些命令 【基本命令】 1帮助命令 命令格式 页码 作用注意事项 ?大写字母* 显示以该字母开头的所有命令 该命令的基本格式 ??命令 该命令的详细介绍 2系统内部常数E→e,Pi→, infinity→,1→1 3代数运算命令 匚命令格式 作用 注意事项 Na, P3求数值a的近似值(保留n位 有效数字) Nal 「求数值a的保留6位有效数字也可写为/N 的近似值 P3将数值a赋予 使用后注意及时清除 Clearly 清除对ⅹ的赋值 Clear x,y,z…]可一次 清除多个变量的赋值 表达式{x>a}P3将表达式中的x换成数值a后1{xay>b…}可代 的结果 入多个变量的值 Factor[表达式]p对表达式进行因式分解 也可写为/ Factor Expandl表达式]|P4展开表达式 也可写为/ xpand Smp表达式P4化简表达式 也可写为/ Simplify 例1求代数式x2+3x-10在x=2处的值 解:按序号依次输入下列10个语句观察每个语句执行后的结果,认真体会赋值语句与代入 规则的不同 命令 结果 命令 结果 1.x^2+3x-10 x^2+3x-10 3.x^2+3x-10 4. 5.x*y 6.x=或 Clearly 7.x^2+3x-10x^2+3x-10 8.x^2+3x-10/,x->2 0 9.x^2+3x-10 x^2+3x-10 x^3-1 x^3-1 X*y 12.x*y. 6 3解方程与方程组命令 命令格式 注意事项 Solve[方程,x P4求解以x为自变量的代数方程,只能求解代数方 也可用于求解方程组 程 SOlve[方程x]|P4求以x为自变量的代数方程解的只能求解代数方 近似值,也可用于求解方程组程 Reduce[方程x|P4求解以x为自变量的代数方程,只能求解代数方 也可用于求解方程组 Eliminata[{方程|P5在给定的方程组中消去x 不能用这一命令 求方程组的解 4求和命令
实验一 Mathemetica 系统使用入门 【实验目的】 熟悉 Mathemetica 的一些基本命令的格式与作用并能熟练使用这些命令。 【基本命令】 1 帮助命令 命令格式 页码 作用 注意事项 ?大写字母* 显示以该字母开头的所有命令 ?命令 该命令的基本格式 ??命令 该命令的详细介绍 2.系统内部常数 E →e , Pi → , Inifinity → , I → i 3.代数运算命令 命令格式 页码 作用 注意事项 N[a,n] P3 求数值 a 的近似值(保留 n 位 有效数字) N[a] 求数值a的保留6位有效数字 的近似值 也可写为//N x=a P3 将数值 a 赋予 x 使用后注意及时清除 Clear[x] x =. P3 清除对 x 的赋值 Clear[x,y,z,…]可一次 清除多个变量的赋值 表达式/.{x->a} P3 将表达式中的x换成数值 a后 的结果 /.{x->a,y->b,…}可代 入多个变量的值 Factor[表达式] P4 对表达式进行因式分解 也可写为//Factor Expand[表达式] P4 展开表达式 也可写为//Expand Simplify[表达式] P4 化简表达式 也可写为//Simplify 例 1 求代数式 3 10 2 x + x − 在 x = 2 处的值. 解: 按序号依次输入下列 10 个语句,观察每个语句执行后的结果,认真体会赋值语句与代入 规则的不同. 命令 结果 命令 结果 1. x^2+3x-10 x^2+3x-10 2. x=2 2 3. x^2+3x-10 0 4. x^3-1 7 5. x*y 2y 6. x=.或 Clear[x] 7. x^2+3x-10 x^2+3x-10 8. x^2+3x-10/.x->2 0 9. x^2+3x-10 x^2+3x-10 10. x^3-1 x^3-1 11. x*y x*y 12. x*y/.{x->2,y->3} 6 3 解方程与方程组命令 命令格式 页码 作用 注意事项 Solve[方程,x] P4 求解以 x 为自变量的代数方程, 也可用于求解方程组 只能求解代数方 程 NSolve[方程,x] P4 求以 x 为自变量的代数方程解的 近似值,也可用于求解方程组 只能求解代数方 程 Reduce[方程,x] P4 求解以 x 为自变量的代数方程, 也可用于求解方程组 只能求解代数方 程 Eliminata[{方程 组},x] P5 在给定的方程组中消去 x. 不能用这一命令 求方程组的解 4 求和命令
命令格式 页码 作用 注意事项 Sum["n, in, 1,n2, di, 求通项为n,n从到当1=1,d=1时 可省略,即 步长为d的和的精 确值 ,{n,h2 P5求上式的近似值 n1,n2 5作图命令 命令格式 码 注意事项 定义函数fx) Plot[f[x],(x, a, b1 P7 画出函数f(x)在区间 ab]上的图形 Parametric Plot[(x[t], y[]),P8 画出参数方程 h1,2 x=x(1) =y()在[,12l上 的图形 ListPlot[list] P9|画出以所给表lst为坐该命令中的选项 标的点的散点图 Plotstyle->True可 画出折线图 Showel,g2,g3,…] P9将g1,g2;g3…等图形组 6关于数表的命令 命令格式 码 作用 注意事项 P10 Table[un, (n, 1, n2, di)1 生成以为通项的数表B=di=1时 可省略 P10生成一个有n+1个元素的 NestList[f(x], 0, n 数表,表中第个元素为以 xo为初值,以x为迭代 函数,迭代n-1次的值 list[n) P10取出表lst中的第n个元 素 list[[1, m2n1 取出二层表lst中第h个 元素中的第个元素 Take[list, n P11n>0时,取出表list中前n 个元素,n<0时,取出表
命令格式 页码 作用 注意事项 Sum[ n a ,{n, 1 2 n , n ,di}] P5 求通项为 n a ,n 从 1 n 到 2 n ,步长为 di 的和的精 确值 当 1 n =1,di=1 时 可省略,即 Sum[ n a ,{n, 2 n }] NSum[ n a ,{n, 1 2 n , n ,di}] ] P5 求上式的近似值 5 作图命令 命令格式 页码 作用 注意事项 f[x_]:= P7 定义函数 f(x) Plot[f[x],{x, a, b}] P7 画出函数 f(x)在区间 [a,b]上的图形 ParametricPlot[{x[t],y[t]}, {t, 1 2 t ,t }] P8 画出参数方程 = = ( ) ( ) y y t x x t 在 [ , ] 1 2 t t 上 的图形 ListPlot[list] P9 画出以所给表 list 为坐 标的点的散点图 该命令中的选项 PlotStyle->True 可 画出折线图 Show[g1,g2,g3, …] P9 将 g1,g2,g3…等图形组 合显示在一张图中 6 关于数表的命令 命令格式 页码 作用 注意事项 Table[ n a ,{n, 1 2 n ,n ,di}] P10 生成以 n a 为通项的数表 n1 = 1 ,di=1 时 可省略 NestList[f[x], 0 x ,n] P10 生成一个有n+1个元素的 数表,表中第个元素为以 0 x 为初值,以 f(x)为迭代 函数,迭代 n-1 次的值 list[[n]] P10 取出表 list 中的第 n 个元 素 list[[ 1 2 n ,n ]] P11 取出二层表 list 中第 1 n 个 元素中的第 2 n 个元素 Take[list,n] P11 n>0 时,取出表 list 中前 n 个元素,n<0 时,取出表
中后n个元素 ength list P11求表ls的长度(表中元 素的个数) P将a加在表的最前面 Pll 加在表list的最后面 rt[list, a, n] P1将a加在表ls的第n个 位置 Transpose[ list] Pl6将二层表的元素进行转 例2例2设数列求由该数列的前10项构成的数表(表中元素保留4位有效数字) n: tt=Table(N[1/(2n-1),4 n, 1, 10, 1) 1,0.30.2,0.1429,0.111009091,0.07692,0.0670.05882,0.05263} 命令 结果 ttl4ll 0.1429 Length tt 分别输入以下语句,并观察结果 Prepend tt, oI Append[tt, x 2+y 21 Insert tt, ** 3 tt=Table[1/(2n-1), 4,n, 10fI 例3求函数f(x)=e-h1+x)+x在x=0,x=02,x=04…x=1.8x=2处的近似 值将它们与x的对应值作成一个二层表并画出相应的图形 解:nx1:=E^x-Log+x]+x ff-TableRx, fx //N, x, 0, 2, 0.231 0,1.},{0.2,1.23908},{0.4,1.55535},{06,1,95212},{0.8,2.43775},{1,3.02513},{1.2, 373166},{1.4,4.57973},{1.6,5.59752},{1.8,6.82003},{2.,8.29044} ListPlot[ff, PlotJoined->Truel gg=Transpose ff 0,0.2,0.4,0.6,0.8,1,1.2,14,1.6,1,8,2.},{1,1.23908,1.55535,1.95212,2.43775 3.02513,3.73166457973,5.59752,6.82003,829044} ggll2ll 1,1.23908,1.55535,1.95212,2.43775,3.02513,3.73166,4.57973,5.59752,682003, 829044} Transposelggl 10,1.},{0.2,1,23908},{0.4,1.55535},{0.6,1,95212},{0.8,243775},{1,3.02513},{1 373166},{14,457973},{1.6,5.59752},{1.8,6.82003},{2.,8.29044} 7条件语句与循环语句 命令格式 页码 作用 注意事项 条件,语句1,语句2]P12条件成立时执行语句 1,不成立时执行语句2 Whch条件1语句1,条P2条件1成立时执行语 件2,语句2…条件n,语句 句1条件2成立时执行语 句2…条件n成立时执行 语句n P3循环语句 Fo=5,i<=n=i+32,循 i=+S2,可记为 环体语句] 计=52,。特别的 i=i+1也可记为
中后 n 个元素 Length[list] P11 求表 list 的长度(表中元 素的个数) Prepend[list,a] P11 将 a 加在表 list 的最前面 Append[list,a] P11 将 a 加在表 list 的最后面 Insert[list,a,n] P11 将 a 加在表 list 的第 n 个 位置 Transpose[list] P16 将二层表的元素进行转 换 例2 例 2 设数列,求由该数列的前 10 项构成的数表(表中元素保留 4 位有效数字) 解: tt=Table[N[1/(2n-1),4],{n,1,10,1}] {1., 0.3333, 0.2, 0.1429, 0.1111, 0.09091, 0.07692, 0.06667, 0.05882, 0.05263} 命令 结果 tt[[4]] 0.1429 Length[tt] 10 分别输入以下语句,并观察结果. Prepend[tt,0] Append[tt,x^2+y^2] Insert[tt,**,3] tt=Table[N[1/(2n-1),4],{n,10}] 例 3 求函数 f x e x x x ( ) = − ln(1+ ) + 在 x = 0, x = 0.2, x = 0.4, x = 1.8, x = 2 处的近似 值,将它们与 x 的对应值作成一个二层表,并画出相应的图形 解: f[x_]:=E^x-Log[1+x]+x; ff=Table[{x,f[x]//N},{x,0,2,0.2}] {{0, 1.}, {0.2, 1.23908}, {0.4, 1.55535}, {0.6, 1.95212}, {0.8, 2.43775}, {1,3.02513}, {1.2, 3.73166}, {1.4, 4.57973}, {1.6, 5.59752}, {1.8, 6.82003}, {2., 8.29044}} ListPlot[ff,PlotJoined->True] gg=Transpose[ff] {{0, 0.2, 0.4, 0.6, 0.8, 1., 1.2, 1.4, 1.6, 1.8, 2.}, {1., 1.23908, 1.55535, 1.95212, 2.43775, 3.02513, 3.73166, 4.57973, 5.59752, 6.82003, 8.29044}} gg[[2]] {1., 1.23908, 1.55535, 1.95212, 2.43775, 3.02513, 3.73166, 4.57973, 5.59752, 6.82003, 8.29044} Transpose[gg] {{0, 1.}, {0.2, 1.23908}, {0.4, 1.55535}, {0.6, 1.95212}, {0.8, 2.43775}, {1,3.02513}, {1.2, 3.73166}, {1.4, 4.57973}, {1.6, 5.59752}, {1.8, 6.82003}, {2., 8.29044}} 7 条件语句与循环语句 命令格式 页码 作用 注意事项 If[条件,语句 1,语句 2] P12 条件成立时执行语句 1,不成立时执行语句 2 Which[条件 1,语句 1,条 件 2,语句 2,…条件 n,语句 n] P12 条件 1 成立时执行语 句1,条件2成立时执行语 句2,…条件n成立时执行 语句 n For[i= 1 s ,i<=n,i=i+ 2 s ,循 环体语句] P13 循环语句 i=i+ 2 s ,可记为 i+= 2 s ,。特别的 i=i+1 也可记为
P13 循环语句 Do[循环体语句n,, H=1di=1时 可省 P13 循环语句 划线部分不可 n=h; While<nh2,循环 省略,否则进入死 体语句:n=ndi 循环 例4分别用Fo,Do,Whle语句打印1-10 A: For[i=l, k<=10, i=i+1, Printall DolPrint/i,i, 1, 10, 131 i=1; Whileli<=10, Print i; i+1l 例5用For语句求23+…+ 100的近似值。 解:a=0;For{i=1,=100i计+,a=a+1l; Printa/N 5.18738 【初学者容易出现的一些错误】 1.该大写的地方不大写 2.括号用错:在 Mathematica中,大、中、小括号是有不同的用处的。大括号用于数表,中 括号用于命令或函数,小括号用于在表达式中改变运算顺 3.缺少乘号*两个字母相乘中间必须加*或空格,否则在运算中这两个字母作 为一 个整体处理 4.用 Solve, Solve, Reduce等命令求解超越方程。 5.没有及时清除变量的赋值。 6.系统内部的函数名拼写或函数格式错误。 7.注意标点符号,特别是逗号“,”与分号“;”的用法(参考教材P13) 【练习题】 1.求下列各式的精确值与近似值(分别保留4位,6位及15位有效数字) 2×(=)+27÷(3+ +arctan 3. 2-In 4 2.用三种不同的方法求有理分式x3-12x+3在x=2时的值并体会这三种方法的区别 (三种方法为(i)赋值语句,(i)代入规则,(i)自定义函数) 3.用两个不同的命令求解方程3x-r =0,并对结果进行比较 4.求f(x)=x2-3x+1的所有零点 1+n 5.已知数列的一般项为 (1)试求出由该数列的前10项构成的数表(表中的元素保留3位有效数字) (2)取出该表中的第3个元素和第7个元素 3)分别把0,1,-1放在该表的第1位,最后一位及第8位 (4)求出最后一个表的长度 x. x x2,x<0,从(x)={10<x≤1 g( x)= 6.分别画出函数f(x)=Sn3x+4cosx 1+x.x>1
i++ Do[循环体语句,{n, 1 n , 2 n , di}] P13 循环语句 n1 = 1 ,di=1 时 可省略 n= 1 n ;While[n< 2 n ,循环 体语句;n=n+di] P13 循环语句 划线部分不可 省略,否则进入死 循环。 例 4 分别用 For,Do,While 语句打印 1—10 解: For[i=1,i<=10,i=i+1,Print[i]] Do[Print[i],{i,1,10,1}] i=1;While[i<=10,Print[i];i=i+1] 例 5 用 For 语句求 100 1 3 1 2 1 1+ + ++ 的近似值。 解: a=0;For[i=1,i<=100,i++,a=a+1/i];Print[a//N] 5.18738 【初学者容易出现的一些错误】 1. 该大写的地方不大写。 2. 括号用错:在 Mathemetica 中,大、中、小括号是有不同的用处的。大括号用于数表,中 括号用于命令或函数,小括号用于在表达式中改变运算顺序。 3. 缺少乘号*,两个字母相乘中间必须加 * 或空格,否则在运算中这两个字母作 为一 个整体处理。 4. 用 Solve,Nsolve,Reduce 等命令求解超越方程。 5. 没有及时清除变量的赋值。 6. 系统内部的函数名拼写或函数格式错误。 7. 注意标点符号,特别是逗号“,”与分号“;”的用法(参考教材 P13)。 【练习题】 1. 求下列各式的精确值与近似值(分别保留 4 位,6 位及 15 位有效数字) (1) 2 1 2 3 ) 7 3 ) 27 (3 2 1 − 2 ( + + − (2) arctan 3.2 ln 4 lg 2 1 ) 4 3 (sin 2 + + − − 2. 用三种不同的方法求有理分式 12 3 6 9 3 5 − + − x x x 在 x = 2 时的值,并体会这三种方法的区别。 (三种方法为 (i)赋值语句, (ii)代入规则, (iii)自定义函数) 3. 用两个不同的命令求解方程 3 2 13 3 2 4 3 3 2 x − x − x + x − =0, 并对结果进行比较。 4. 求 ( ) 3 1 5 f x = x − x + 的所有零点。 5. 已知数列的一般项为 n n an + + = 2 1 2 (1) 试求出由该数列的前 10 项构成的数表(表中的元素保留 3 位有效数字) (2) 取出该表中的第 3 个元素和第 7 个元素 (3) 分别把 0,1,-1 放在该表的第 1 位, 最后一位及第 8 位 (4) 求出最后一个表的长度 6. 分别画出函数 f (x) = sin 3x + 4cos x , − = 1 0 , 0, ( ) 2 e x x x g x x , + − = 1 , 1 1, 0 1, 1 , 0, ( ) x x x x x h x
的图形并用两种不同的方法将三个图形组合在一个图中(给每条曲线设计出不同的颜色)。 7.画出函数1+7在2上的图形 8.画图求曲线y=x,y-e-x=0的所有交点。 ∫(x) 9.用描点法画出函数 1+x的图形,并与用Pot语句画出的图形进行比较 (提示:(1)在某个范围内例如3,3]选取x的值,(2)生成以(x(x)为元素的二层表() 画出该表的折线图(4)将其与f(x)的图形组合进行比较) 10.用For语句打印 (1)1-10的平方 (2)自己的姓名(用拼音)10次 11.用三种不同的循环语句计算下列各题 11、+…+100(精确到0) 2 1+ 的前10;20;100项的和 实验二与极限、连续有关的问题 【实验目的】 1.能通过极限的动画演示理解极限的概念,特别是两个重要极限 2.熟练运用 Mathematica软件命令求极限(左、右极限),与理论知识相结合能够运用 极限存在的充要条件判断极限的存在性 3.能够用作图命令和极限命令结合理论知识求函数的间断点及判断间断点的类型 4.了解二分法的基本思想,会利用 Mathematica软件用二分法求方程的近似根; 5.熟练利用 Mathematica软件解决与极限、连续有关的一些简单实际问题 【实验的预备内容】 复习的数学内容 (1)极限的有关概念、数列极限与函数极限的关系、极限存在的充要条件; (2)一元函数连续的有关概念、间断点及其类型:一元函数的零点概念及零点定理 复习 Mathematica语句 Table、 ListPlot、/N与N[%]、f[x]:=、ShoW、Plot、For、Do、 While、If、 Which Print等语句的格式和用法 【 Mathematica新命令】 命令格式 功能说明 Limit [f[x],x->xo, Direction ->-1 lim f(x 求右极限x→x Limit f[], x->xo, Direction->+l Im f(x) 求左极限x→而 Point[ix, yI] Line[(,y).(r2,22)J1 画连接点(x,y)与(x2y)的直线段。 Pointsize[r],其中0≤r≤1 表示点的大小
的图形,并用两种不同的方法将三个图形组合在一个图中(给每条曲线设计出不同的颜色)。 7. 画出函数 + = + = 3 2 3 1 3 1 3 t t y t t x 在[-2,2]上的图形。 8. 画图求曲线 , 0 2 y = x y − e − x = x 的所有交点。 9. 用描点法画出函数 2 1 ( ) x x f x + = 的图形,并与用 Plot 语句画出的图形进行比较。 (提示: (1) 在某个范围内例如[-3,3]选取 x 的值, (2) 生成以 (x, f (x)) 为元素的二层表 (3) 画出该表的折线图 (4) 将其与 f (x) 的图形组合,进行比较) 10. 用 For 语句打印 (1) 1—10 的平方 (2) 自己的姓名(用拼音)10 次 11. 用三种不同的循环语句计算下列各题 (1) 2 2 2 100 1 3 1 2 1 1+ + ++ (精确到 5 10− ) (2) n 1 3 1 2 1 1+ + ++ 的前 10;20;100 项的和 实验二 与极限、连续有关的问题 【实验目的】 1.能通过极限的动画演示理解极限的概念,特别是两个重要极限; 2.熟练运用 Mathematica 软件命令求极限(左、右极限),与理论知识相结合能够运用 极限存在的充要条件判断极限的存在性; 3.能够用作图命令和极限命令结合理论知识求函数的间断点及判断间断点的类型; 4.了解二分法的基本思想,会利用 Mathematica 软件用二分法求方程的近似根; 5.熟练利用 Mathematica 软件解决与极限、连续有关的一些简单实际问题。 【实验的预备内容】 复习的数学内容 (1)极限的有关概念、数列极限与函数极限的关系、极限存在的充要条件; (2)一元函数连续的有关概念、间断点及其类型;一元函数的零点概念及零点定理。 复习 Mathematica 语句 Table、ListPlot、//N 与 N[%]、f[x]:=、Show、Plot、For、Do、While、If、Which、 Print 等语句的格式和用法。 【Mathematica 新命令】 命令格式 功能说明 [ [ ], , 1] Limit f x x− x0 Direction− − 求右极限 lim ( ) 0 f x x x → + [ [ ], , 1] Limit f x x− x0 Direction− + 求左极限 lim ( ) 0 f x x x → − Point[{x,y}] 画一点。 Line[{ ( ) 1 1 x , y , ( ) 2 2 x , y }] 画连接点 ( ) 1 1 x , y 与 ( ) 2 2 x , y 的直线段。 PointSize[r],其中 0 r 1 表示点的大小