第三章 Maple代数.doc

上传人:工**** 文档编号:543851288 上传时间:2023-02-25 格式:DOC 页数:33 大小:288.02KB
返回 下载 相关 举报
第三章 Maple代数.doc_第1页
第1页 / 共33页
第三章 Maple代数.doc_第2页
第2页 / 共33页
第三章 Maple代数.doc_第3页
第3页 / 共33页
第三章 Maple代数.doc_第4页
第4页 / 共33页
第三章 Maple代数.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《第三章 Maple代数.doc》由会员分享,可在线阅读,更多相关《第三章 Maple代数.doc(33页珍藏版)》请在金锄头文库上搜索。

1、第三章 线性代数教学目的:学习并掌握计算机代数系统Maple下进行多项式的各种运算,包括合并、分解因式、排序等,学习并掌握行列式、矩阵的各种符号计算,包括特征矩阵、特征值、特征向量等,学习并掌握线性方程组求解的符号计算方法,了解线性空间的有关内容。教学目标:掌握多项式、行列式、矩阵的各种运算,求解线性方程组。重点内容:多项式、行列式、矩阵的各种运算,线性方程组求解。难点内容:多项式的符号计算,矩阵的运算。1多项式多项式是代数学中最基本的对象之一, 它不但与高次方程的讨论有关, 而且是进一步学习代数以及其它数学分支的基础. 1.1 多项式生成及类型测试在Maple中, 多项式由名称、整数和其他M

2、aple值, 通过+、-、*和等组合而成. 例如: p1:=5*x5+3*x3+x+168;这是一个整系数单变量多项式. 多元多项式和定义在其他数域上的多项式可以类似构造: p2:=3*x*y2*z3+2*sqrt(-1)*x2*y*z+2002;由此可以看出, Maple中多项式的生成与“赋值”命令相似. 另外, 还可以通过函数randpoly生成随机多项式, 生成一个关于vars的随机多项式的格式如下:randpoly(vars, opts);其中, vars表示变量或者变量列表或集合, opts为可选项方程或者指定属性的名称. 如: randpoly(x); 随机生成关于x的5次(默认)

3、多项式 randpoly(x, y, terms=8); 随机生成关于x, y二元8项多项式 randpoly(x, sin(x), cos(x);而要随机生成关于x, y, z的密集的、均匀的、度为2的多项式的命令为: randpoly(x,y,z,dense,homogeneous,degree=2);用type命令可以测试多项式的类型: type(p1, polynom(integer, x); #测试p1是否是一个关于x的整系数多项式 type(p2, polynom(complex, x, y, z); #测试p2是否是一个关于x, y, z的复系数多项式1.2 提取多项式系数coe

4、ff函数用来提取一元多项式的系数, 而多元多项式所有系数的提取用命令coeffs, 指定系数的提取用命令coftayl. (1) 提取多项式p中xn的系数使用命令:coeff(p, xn);或coeff(p, x, n); (2) 提取多项式p中变量x的所有系数并将相应的x幂存于变量t中:coeffs(p, x, t); (3) 返回expr在x=a处的Taylor展式中(x-a)k的系数: coeftayl(expr, x=a, k); p:=2*x2+3*y3*x-5*x+68; coeff(p, x); coeff(x4-5*x2-sin(a)*(x+1)2, x2); s:=3*x2*

5、y2+5*x*y; coeffs(s); coeffs(s, x, t); t; coeftayl(exp(x), x=0, 10); p:=3*(x+1)3+sin(Pi/3)*x2*y+x*y3+x-6; coeftayl(p, x=-1, 1); coeftayl(p, x, y=0, 0, 1, 0);返回默认为降序排列的多元多项式的首项和末项系数分别使用命令lcoeff、tcoeff: lcoeff(p, x); tcoeff(p, x);1.3 多项式的约数和根1.3.1多项式的最大公约因式(gcd)/最小公倍因式(lcm)求多项式的最大公约因式/最小公倍因式的命令与求两个整数最大

6、公约数/最小公倍数命令一样, 都是gcd/lcm. 命令格式分别为:gcd(p1, p2, t, s); lcm(p1, p2, t, s);其中, 第3个参数t赋值为余因子p1/gcd(p1, p2), 第4个参数s赋值为余因子p2/gcd(p1, p2). p1:=x4+x3+2*x2+x+1; p2:=x2+x+1; gcd(p1, p2, t, s); t, s; lcm(p1, p2);1.3.2多项式的平方根(psqrt)和第n次方根(proot)求多项式p的平方根, 若不是完全平方, 则返回_NOSQRT:psqrt(p); 求多项式p的n次方根, 若不是完全n次方, 则返回_N

7、OROOT:proot(p, n); p:=x4+4*x3+6*x2+4*x+1; psqrt(p); proot(p, 4); proot(p, 8);1.3.3 多项式相除的余式(rem)/商式(quo)计算p1除以p2的余式, 将商式赋值给q的命令格式为:rem(p1, p2, x, q); 计算p1除以p2的商式, 将余式赋值给r的命令格式为:quo(p1, p2, x, r); 余式和商式满足:p1=p2*q+r, 其中degree(r, x) rem(x5+x3+x, x+1, x, q); q; quo(x3+x2+x+1, x-1, x, r); r;1.4 多项式转换及整理1

8、.4.1 将多项式转换成Horner形式 将多项式poly转换成关于变量var的Horner形式或者嵌套形式的命令格式如下:convert(poly, horner, var); convert(x5+x4+x3+x2+x+1, horner, x); convert(x3*y3+x2*y2+x*y+1, horner, x, y);1.4.2 将级数转换成多项式形式将级数(series)转换成多项式(polynom)事实上就是忽略函数的级数展开式中的余项, 这在科学计算方面会带来很大的好处. 其命令格式为:convert(series, polynom); s:=series(sin(x),

9、 x, 10); type(s, polynom); p:=convert(s, polynom); type(p, polynom);1.4.3 将级数转换成有理多项式(有理函数)将级数series(laurent级数或Chebyshev类型级数)转换成有理多项式(有理函数)ratpoly的命令格式为:convert(series, ratpoly); series(exp(x2), x, 15); convert(%, ratpoly);1.4.4合并多项式系数(合并同类项)将多项式具有相同次幂的项的系数合并在一起(包括正的、负的或者分数次幂), 即合并同类项(称为多项式的典范形式), 用

10、命令collect: collect(p, x); collect(p, x, form, func); collect(p, x, func);其中x是表示单变量x或多变量x1, x2, , xn的一个列表或集合. collect(a*ln(x)-ln(x)*x-x, ln(x); collect(x*(x+1)+y*(x+1), x); collect(x*(x+1)+y*(x+1), y); p := x*y+a*x*y+y*x2-a*y*x2+x+a*x:collect( p, x, y, recursive ); collect( p, y, x, recursive ); coll

11、ect( p, x, y, distributed );其中的参数recureive为递归式的,而distributed为分布式的. 1.4.5 将多项式(或者值的列表)排序将多项式(或者值的列表)按升(或降)序次方排序时作命令sort. 命令格式:sort(L); sort(L, F); sort(A); sort(A, V);其中, L表示要排序的列表; F(可选项)带两个参数的布尔函数; A代数表达式; V(可选项)变量sort函数将列表L按升序次方, 将代数表达式A中的多项式按降序次方排列. 如果给定了F, 它将用来定义一个排序的列表. 如果F是符号“”, L按数值型升序排列; 如果F

12、是一个词典编纂的符号, 那么字符串和符号列表将按词典编纂的次序排列. 另外, F必须是一个有两个参数的布尔函数. 在Maple中, 多项式并不自动按排序次序存储而是按建立的次序存储. 值得注意的是, sort函数对多项式的排序是破坏性的操作, 因为输入的多项式将会按排序后的次序存储. 用来对列表排序的算法是一种带早期排序序列监测的合并排序的递归算法, 而用于对多项式排序的算法是一个原位替换排序. sort(3, 2, 1, 5, 4); sort(x3+x2+1+x5, x); sort(y+x)2/(y-x)3*(y+2*x), x);1.4.6 多项式的因式分解一般情况下, 计算带有整数、

13、有理数、复数或代数数系数的多项式的因式分解使用命令factor, 命令格式为:factor(expr, K);其中, expr为多项式, K为因式分解所在的区域 factor(x3+y3); factor(t6-1, (-3)(1/2); factor(x3+5, 5(1/3), (-3)(1/2); 但是factor不分解整数, 也不分解多项式中的整数系数, 整数或整数系数的分解使用函数ifactor: ifactor(299+1);1.5 多项式运算1.5.1 多项式的判别式多项式判别式在多项式求根中具有重要作用, 例如二次多项式的判别式. 求多项式p关于变量x的判别式的命令格式为:dis

14、crim(p, x); p1:=a*x2+b*x+c; discrim(p1, x); p2:=a*x3+b*x2+c*x+d; discrim(p2, x);1.5.2 多项式的范数计算关于变元v的多项式p的第n阶范数用命令norm, 格式如下:norm(p, n, v); 其中p是展开的多项式, n为实常数或无穷大. 对于n1, 范数norm定义为norm(p, n, v)=sum(abs(c)n), c=coeffs(p, v)(1/n). norm(x3+x2+x+1, 1); norm(x-3*y, 2); norm(x-3*y, infinity);1.5.3 bernoulli数及多项式

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号