Mathcad数学运算-函数运算精品PPT课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(e)用lsolve函数 求解线性方程
函数lsolve(M,v)返回线性方程组 Mx=v的解向量,其中参数M是一个方阵, 非奇异矩阵。我们把行列式值为0的矩阵 称为奇异矩阵,而把行是线性独立的矩 阵称为非奇异矩阵;v是维数和M矩阵行 数相等的向量。
r:=rnd(24)-12
r=-11.97
root(f(r),r)=-11.475
单击上面的“r:=rnd(24)-12”语句,重 复按F9键,可以在root(f(r),r)=中观察 到所给出根的变化,把这些数值代入方 程即可求出所合适的根,如-11.475、6.514、4.449等。
第二种方法是画出此函数的X-Y坐标图 (如图27所示)。
所得到的反三角函数的结果缺省也为 弧度。如:
asin(0.2)=0.201
要转换成弧度,可单击此式,并在右 侧占位符上输入deg,然后单击此区域外 部,如:
asin(0.2)=11.537 deg
Mathcad2001还提供两个返回角度的函 数:
angle(x,y):返回平面上从x正坐标轴 到点(x,y)的夹角,其值为0到2π。
(c)求解模块及 求解方程组
求解模块(Solve Block)不是一个函数, 而是一个独特的结构,或可看作 Mathcad2001中的一个特殊的程序。利用 它可以求解方程组,即使要求解的方程 组没有根,也会给出一组根,并满足误 差最小的条件。
求解模块的结构是先给出一组根的估 计值;然后使用关键词Given(大、小写 或大小写混合使用均可);接着是方程组; 最后使用关键词Find。
最后可得六个根分别是-11.475、10.117、-6.514、4.449、5.817、9.005。
由于求根函数root的算法是数值法,得到 的根是近似值。系统缺省数据的显示精 度为15位,如果用户对这精度不满意, 可在求解之前重新定义误差控制常数TOL。
大部分方程的根是实数,但是也有少部分 方程可能得到复数根,如例2。
(d)不等式方程求解
使用求解模块还可以求解不等式方程 或不等式方程组。
例:求解不等式(x-1)(3x-5)(x-4)0
解:不等式的解是一个或几个区域, 先画出f(x):=(x-1)(3x-5)(x-4)的X-Y坐 标图(如图28所示)。
从图中可以看出此不等式的解是两个 区域,一个在1到1.7之间,另一个是大 于等于4。下面再使用求解模块来精确求 解。
解多项式的数值解法与解一般函数方程的 数值解法相同。
求根函数polyroots是一个单自变量函 数,使用格式为:
polyroots(v)
polyroots的自变量,即参数是一个向 量,它就是多项式函数的系数向量。其 返回值也是一个向量,即多项式的根向 量。
例:求下列多项式的根:
f(x):=x3-10x+2
图 27
从图中可以看出,此方程有六个根, 数值大约为-11.5、-10.1、-6.5、4.5、 5.8、9.1,再把它们依次代入root函数 中,即可求出此方程根的近似值,如:
x:=-11.5
root(f(x),x)=-11.475
x:=-10.1
root(f(x),x)=-10.117
………………………
atan2(x,y):返回平面上从x正坐标 轴到点(x,y)的夹角,其值为-π到π。 与acot(z)函数相比,atan2(x,y)的输入
只能是实数,而acot(z)的输入可为复数或 实数,其结果为0到π。如:
angle(10,5)=0.464
atan2(-10,-5)=-2.678
其单位也为弧度,可以使用上述方法 进行角度转换。
指数:exp(x)=290.035
(4)复数
Mathcad2001提供下列复数函数:
Arg(z):返回复平面从实轴到z的夹角,结 果为从-π到π。
csgn(z):返回复数的符号,当z=0时返回0; 当Re(z)>0或Re(z)=0且Im(z)>0时返回1;其它 值返回-1。
Im(z):返回z的虚部。
相应的位置。即系数向量分量的个数不能 少,次序不能乱,在所缺少项的相应位 置一定要输入0,不可跳过。
多项式的阶等于函数中自变量的最高 次幂,n次多项式共有n个根,实系数多 项式的复根是共轭出现的。对于高次多 项式求根,常用的解析解法是配方法, 即把高次多项式化为一些一次或二次多 项式的乘积,这有时需要很高的技巧。
图 28
根的估计值:x:=0
关键词: Given
不等式:(x-1)(3x-5)(x-4)0(注:用 Ctrl+0输入大于等于符“”或使用工具面 板中的相应布尔运算符)
关键词:Find(x)=1.6
再次使用根估计值x:=1、x:=2、x:=3 时重复上述步骤均得到根1~1.6,而使 用根估计值x:=4时得到根为4。可见此不 等式的两个区域分别是1≤x≤1.6和 4≤x≤。
Re(z):返回z的实部。
sigmum(z):返回单位向量,当z=0时返回1, 否则返回z/|z|。
例如: z:=1-i arg(z)=-0.785 csgn(z)=1 Im(z)=-1 Re(z)=1 signum(z)=0.707-0.707i |z|=1.414
z 0.707 0.707i z
(3)对数和指数函数
Mathcad2001提供三个对数和指数函数, 它们是:
Exp(z):返回e的z次幂。
Ln(z):返回z的自然对数(z≠0)。
Log(z,b):返回z的以b为基的对数 (z≠0,b≠0),如果输入的参数中省略 基b,则返回以10为基的对数。
例如: x:=5.67 b:=2 自然对数:ln(x)=1.735 以10为底对数:log(x)=0.754 以2为基的对数:log(x,b)=2.503
b 7.642
3 a 4.651
3 b 3.88
ab 8.94810116
(2)三角函数 和反三角函数
Mathcad2001提供下列三角函数和反三 角函数:
sin(z)(正弦函数)、cos(z)(余弦函 数)、tan(z)(正切函数)、cot(z)(余切 函数)、sec(z)(正割函数)、csc(z)(余 割函数)、asin(z)(反正弦函数)、 acos(z)(反余弦函数)、atan(z)(反正切 函数)、acot(z)(反余切函数)、 asec(z)(反正割函数)、acsc(z)(反余割 函数)。
例1:求下式为0时的根
f(x):=ln(x2+1)-sin(x)-4
首先应该估计一下此方程根的范围。 由于sin(x)取值在0和1之间,因此 ln(x2+1)的最大值为5,这样可算得根x的 范围大约在-12~12,即根可能是这范围 内的一个任意数。根的估算有两种方法, 第一种是使用随机函数rnd,即根可能是 下列函数中的一个或数个:
(6)解方程和方程组
Mathcad2001提供下列求解和优化方程的内置 函数:
find(x,y,...):求解方程或方程组的未知解。
minerr(x,y,...):求解方程或方程组的近似 未知解。
root(f(x),x,a,b):求解方程的根。
isolve(M,v):求方程的解。
polyroots(v):求多项式的根。
2
系数向量是: c 10
0
1
调用求根函数:r:=polyroots(c)
3.258
求得根向量为:
r
0.201
3.057
或根向量的转置矩阵:
rT 3.258 0.201 3.057
用polyroots函数求解高次多项式时, 有时会产生较大的误差,这不能用改变 求解精度TOL来解决。先用polyroots函 数求得多项式的根,将这些根依次代入 多项式进行检验。将误差较大的根作为 根的估计值,再用root求根函数求解多 项式的根,可提高所得根的精度。
也可使用估值: x:=1+i root(f(x),x)= 1.25+0.661i x:=-1-5i root(f(x),x)= 1.25-0.661i
也是只有两个复数根:1.25-0.661i和 1.25+0.661i。
(b)用函数polyroots 求多项式方程的根
方程表达式为多项式的方程叫做多项 式方程。虽然也可用root求根函数求解 多项式方程的根,但十分麻烦。为此, Mathcad2001专门设计了函数polyroots, 它可以方便地求出一个多项式所有的根。 它并不需要根的估计值。
(5)近似函数
Mathcad2001提供下列近似函数:
ceil(x):返回大于或等于x的最小整 数,其中x必须是实数。
floor(x):返回小于或等于x的最大整 数,其中x必须是实数。
round(x,n):对实数x在第n位小数上 进行四舍五入。
例如:
x:=356.123456789
ceil(x)=357 floor(x)=356 round(x,3)= 356.123 round(x,4)= 356.1235
多项式的一般形式为:
c0+c1x+c2x2+……+cnxn
其中系数可以是实数或复数。在
Mathcad2001中,把多项式的系数记为向
量形式,即:
c0
c1
c : c2
cn
它被称为多项式的系数向量,系数向
量的个数就是多项式的阶数。
Mathcad2001规定最高阶数的系数cn不能 为零,而低阶系数可以为零,但要占据
例2:求下式为0时的根
f(x):=2x2-5x+4
这时用作图法无法看出根的近似值,应考 虑是否为复数解。使用随机函数:
r:=rnd(100)-50
r=-40.859
root(f(r),r)= 1.25-0.661i 单击上面的“r:=rnd(100)-50”语句,重复按 F9键,可以在root(f(r),r)=中观察到所给出 根的变化,即只有两个复数根:1.25-0.661i 和1.25+0.661i。
Mathcad2001缺省以弧度为单位进行三 角函数的计算,如:
x:=3.34
sin(x)=-0.197 tan(x)=0.201
Mathcad2001没有提供弧度向角度转换 的函数,但可以通过输入内置的单位deg 来进行角度的转换,如角度为200度,可 用下法转换成弧度:
x:=200
x:=x*deg x=3.491
例:
根的估计值:x:=1 y:=1
关键词:Given
方程组:x+y=6(圆)
x+y=2(直线)(方程组中等号
要用“Ctrl+=”输入) 关键词:Find(x,y)=
求出一个根
20.4.41144
再次使用根估计值x:=-1 y:=1重复上 述步骤可得另一个根:
2.414
Find
(x,
y)
0.414
minimize(f,var1,var2,...):求满足条件的 优化最小值。
maximize(f,var1,var2,...):求满足条件的 优化最大值。
(a)用root函数 求解一般方程的根
对各种类型的方程,要给出一个通用的求 根解析表达式是不可能的。“root”函数是 Mathcad2001中一个用Mathcad编程语言写成的 内置函数,其算法就是数值求根的割线法。割 线法就是从一个初始点开始(这个初始点就是 我们给出的根的估计值),与在方程函数曲线 上邻近的一个点作曲线的割线,找到割线与横 坐标轴的交点。从交点出发再作曲线的割线, 不断用割线与横坐标轴的交点去逼近曲线与横 坐标轴的交点(即方程的解)。用root求根函数 几乎可以求解所有类型的一元方程,其缺点是 必须先给出一个根的估计值。
root函数是专用的求根函数,其调用 格式可有两种形式:①root(expr,var); ②r:= root(expr,var)。式中有两个参 数:“expr”是求解方程的函数名或表达 式;“var”是根的估计值(guess value), 即直观上对方程根的一个估计。
大多数函数方程都可 能存在着多根, 此时根的估计是一个较为困难的问题。 下面我们以一个解方程根的例子来说明 如何估算方程的根。
3.函数运算
(1)简单算术运算
Mathcad2001可以作为一个计算器使用, 用户只要在工作页上输入变量的值,如
a:=100.6
b:=58.4
然后就可以用等号来进行各种简单的 算术运算,如
加:a+b=159
减:a-b=42.2
乘:a*b=5.875×103
ห้องสมุดไป่ตู้
平方根: n次方根:
指数:
a 10.03