网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
04月24日漏签0天
mathcad吧 关注:5,428贴子:28,260
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 8回复贴,共1页
<<返回mathcad吧
>0< 加载中...

MathCAD基础——符号关键字

  • 取消只看楼主
  • 收藏

  • 回复
  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这一篇是根据张老在Simwe论坛的旧帖《神通广大的关键字及其修改器》来写的。
张老在贴中详尽地举例说明了每一种关键字的作用,以下是其全部文档:
http://pan.baidu.com/s/1jGMhisu
从下一楼就开始,是我自己对这些内容的理解,权当交流探讨,有许多不成熟的地方,请各位吧友补充。


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
在讲关键字之前,先复习下关于【符号等号】的相关内容
一、【符号等号】
(一)什么是符号等号
【符号等号】是这个样子的:
左边的黒块是一个占位符(用于标识该处应当有字符输入,具体到此处是[待计算的表达式]),旁边的符号“→”类似于我们常用来表示“推导、推出”的意思。
【符号等号】用于告诉Mathcad进行符号计算,但不限于符号计算(也可以进行数值计算)。
【符号等号】在Mathcad中是一个很关键的等号,几乎每次打开Mathcad都肯定会用到它,在使用各种关键字比如simplify(化简式子)、solve(求解方程)、expand(展开式子)等等时,都会见到【符号等号】。
(二)如何输入符号等号
符号等号通过【CTRL】+【.】输入,也可以通过使用鼠标从【符号关键字工具栏】中点击"→"输入,如下图所示。

(第一行中间那个符号是【符号关键字等号】,与【符号等号】同宗,但它的占位符是[关键字],以后会讲到)
(三)符号等号的作用
1、普通计算
能用【求值等号】(就是"=")求解的场合,都可以用【符号等号】,如下图所示

主要的区别:
【求值等号】只会给出数值解,【符号等号】除可以给出数值解为还可以给出其他形式的解
比如:
上图中的3,两个分数相加通过符号等号得到结果是一个分数(但是小数与分数相加得到的是小数,如图中的4)
上图中的5,开根号,通过符号等号得到的是根号形式的解
上图中的6,根号与根号之间的计算,通过符号等号得到的解是化简后的根号形式
上图中的7,对于有数学常数参与的计算,通过符号等号得到的解中仍然保留数学常数。
2、用于函数的计算
有些函数是必须使用【符号等号】才能进行计算的,比如求极限、求导、求积分等。
而

3、其他方面的运用
以我当前的经验还不足以举出更多更好的例子,请其他吧友补充吧。


2026-04-24 02:42:03
广告
不感兴趣
开通SVIP免广告
  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
三、MC15[M030]内置关键字
不同版本的MC,内置关键字存在不同,以下关键字均在Mathcad15(版本M030)中通过实测。
(一)float
名称:【符号浮点计算】(知道这个名称就可以在MC帮助中进行查询)
【帮助——目录——符号和关键字——符号浮点计算】
作用:使用符号浮点进行计算,直观的现象就是,计算结果是小数
用途:
1、直接使用,显示20位有效数字的浮点结果

如图所示,当使用了float关键字后,MC将计算出数值结果来,在默认情况下,这个结果有20位有效数字。
2、显示指定精度的计算结果(带参数的float)
在float关键字后面键入逗号“,”(英文字符),然后再跟上一个【正整数】,用以指定输出结果的【有效数字位数】(不是小数位数)。例如:

这里的正整数,是float关键字的参数!许多关键字都可以带参数。
如果关键字输入不正确,MC会报错。

3、其他使用【求值等号】计算不出数值的场合
MC中【求值等号】(就是直接输入“=”)能处理的最大值是10^307,当超出这个值后,MC就不能正常计算了。
比如这个函数:

当t=71时,能够计算出f(71)的值,但是当t取72时,MC报错了“发生浮点错误”。
因为将f(72)的值超过了10^307,求值等号不能正常计算出结果。
但是可以使用float得出结果:

这个结果的数量级是10^309,【求值等号】办不到,但是【float】办得到。


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(二)expand
作用:展开表达式【帮助中索引“展开表达式”】
示例:

用法:
1、直接使用
如上图所示,在表达的后面直接使用expand关键字,可以将表达式展开。
图中的3,虽然使用的【展开表达式】expand关键字,但是实现的是将三角函数进行了化简,这在MC看来是一种展开。
要注意的是,expand只会展开,不会化简,比如上图中最后一行,尽管sin²(x)+cos²(x)可以进一步化简为1,但是只使用expand的情况下,MC是不会主动继续化简的。
要使得MC一步到位将其化简,可以使用【关键字叠加】的方法,告诉MC先【展开】(expand)然后再【化简】(simplify),就像这样:

要注意的是,expand必须在simplify的上面,因为【叠加关键字】的执行顺序是从上往下的,这也是为什么要把编辑线置于expand关键字【后面】再点击simplify的原因。
如果我们非要把simplify放到expand的前面,会出现这样的结果:

MC按照【从上往下】的顺序,先执行了【化简】simplify(而化简的结果正如上图中第二条式子),MC并不能将其简化,然后再执行【展开】expand,于是MC很勤劳地将原始展开了。
所以,使用MC并不能总是指望使用单个关键字来实现想要的效果,MC有自身的局限,使用者也有自身的局限,只有彼此扬长避短才能发挥更大的作用,况且这样灵活的组合方式能够激发更多的想象力,所以这其实算不上是MC的局限。
sin(2x)+1仍然不是最简化的式子,因为sin(2x)还可以进一步化简(如第一张图片中的3),只是化简sin(2x)这个式子需要用的关键字不是simplify,而是expand,所以,还可以再叠加一次关键字,成为这样:

对于【关键字叠加】,这里只是简单地展示一下MC里有这么一种用法,关于【关键字叠加】的详细使用留待后文讲解和其他吧友补充。
2、指定参数,不展开某些项
在expand的后面添加参数,可以使得表达式中的某些项不被展开,比如:

(1+x)作为expand的参数,在结果中得以保留。
还可以指定多个参数,彼此之间使用逗号(英文逗号)隔开,保留多个项不被展开

为什么要保留某些项不展开呢?这个得根据需要来,结合实际情况吧。


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(三)factor
作用:因式分解,将表达式化为多个式子的乘积
示例:

用法:
1、直接使用
如上图所示,可以直接使用factor关键字对那些可以进行因式分解的表达式或者数字进行因式分解。
不过我没有搞明白的一点是,为何将(x+1/2)^2展开后再因式分解不能返回原有形式?

如果要得到原有形式,该怎么做呢?
对了,这里用到了在expand的展开结果中继续使用关键字的用法,在MC中,计算结果也是可以继续使用关键字的。
2、使用参数
(1)指定了参数的factor,在进行因式分解时,会将参数包含在因式分解的结果中,可以有多个参数,使用英文逗号隔开。
默认情况下,factor只会在有理数范围中进行因式分解,对于某些表达式,MC不会自动计算并分解,例如x^2-5,在有理数范围内不能进行因式分解,但是可以在实数范围内分解,只有手动给出它的解√5作为参数,factor也可以将它因式分解。
所以factor的参数并不是可以随意指定的,必须是表达式的根。
比如:

图中x^2-2在给定参数√2后,可以因式分解,因为√2是x^2-2的根,所谓“根”,即x^2-2=0的解,-√2也是x^2-2的根,所以将参数改为-√2也可行。
如何才能知道表达式的根呢,可以使用后面会讲到的solve(求解方程)关键字。
(2)除了直接将根作为参数外,还可以指定值域,将值域扩大到实数范围,像这样:

domain和real都是Mathcad中内置的一种特殊字符,在帮助中这种特殊的字符被称为【修饰符】或【修改器】(帮助——目录——符号和关键字——修饰符)。
domain的含义是“值域”,real的含义是“实数”,domain=real则表示“值域更改为实数范围”,要注意的是,这里的“=”是【逻辑等号】,不是【求值等号】,通过【CTRL】+【=】输入。
这样MC就会在实数范围内进行因式分解,而且会给出数值解。
这里又使用了【关键字叠加】,float,4的作用前面已经讲过了,用来控制输出结果中小数的有效位数个数,如果不使用它的话,会是这样的:

使用float,4关键字叠加,只是为了缩短这个式子的长度,当然这样会丢失一定的精度,毕竟√2与1.414是不相等的。
举一反三,把值域扩大到复数范围内:


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(五)parfrac
作用:将有理式转换成部分分式
实际上如果不查阅资料的话,我已经忘记“部分分式”是什么了,所以感觉在讲这些时会误人子弟。
用法:
1、单个变量时不需要带参数,多个变量时,需要指明对哪个变量进行操作。

2、要操作的变量必须是有理式,否则会报错

3、同factor一样,parfrac默认值域在有理数范围内,可以用参数指明根

4、同样,可以使用domain改变值域

莫非domain的应用范围挺广的?
根据MC的帮助中“修饰符”一节显示,domain可以应用的关键字也就factor和parfrac这两个了。

如果属实的话,以后的部分也许就不会再见到“domain”了。
再见,domain。


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
接上一楼,把遗憾的部分补上——和差化积

图中的1展示了MC能够展开sin(A+B)和cos(A-B)之类有多个变量的表达式,但是不能展开只有单个变量的sin和cos,如图中2所示。
在这个认知上,图中的3使用了substitute关键字【替换变量】,将x替换成(A+B)/2,y替换成(A-B)/2,然后就可以得到多个变量的表达式,于是MC可以将其展开(展开),得到关于A和B的结果,最后再将A和B替换成原来的x和y。
文字很乱,看下图吧:

或者下面这个图(两个图是其实一样的)

(由于这一行比较长,缩略图会缩小,你也许需要点击图片再放大来查看)
这里要再强调以下,MC中【关键字堆叠】的执行顺序是从上往下,所以要注意关键字的上下顺序。如果改变顺序就会像下面这样:

好歹是在MC中弄出了和化积差,尽管绕了点路。
若有更简洁直接的办法,还请吧友补充。


  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(七)rewrite
作用:使用指定的方式转化表达式,比如将sin转换成cos,将复数形式转换成三角函数形式等等

用法:
需要将【修饰符】作为参数一起使用,可以使用的修饰符有:
acos ---------反余弦
acot ---------反余切
asin ---------反正弦
atan ---------反正切
cos ----------余弦
cosh ---------双曲余弦
cot -----------余切
coth ---------双曲余切
exp ----------指数
gamma -----伽玛
ln -------------自然对数
log----------- 以 10 为底的对数
signum -----Signum (正负号函数,这个不知道用在什么场合rewrite)
sin----------- 正弦
sincos -------正弦或余弦
sinh ---------双曲正弦
sinhcosh----双曲正弦或双曲余弦
tan ----------正切
tanh ---------双曲正切
rewrite还有一个用处,看下面这个图

看起来函数f(t)随t的增大逐渐收敛于0,用求极限运算符试试看:

没有能够得到数值结果,加上float也不好使......这是为什么呢?
据吧主说,原因是这样的:

事实证明,这样确实是可行的:

所以在MC15(M030)中,rewrite还可以充当救火员的作用。
希望下一个版本中,lim运算符可以解决这个问题。


2026-04-24 02:36:03
广告
不感兴趣
开通SVIP免广告
  • randvac
  • 老爷们儿
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(八)rectangular
作用:将复数表达式转换成“实部”+“虚部”的形式
例如
要注意复数单位"i"(或"j")的输入方式:
为了将复数单位与普通变量"i"、"j"区分开,用"1i"(或"1j")来表示复数单位,也就是一个"1"和一个"i"(或"j")连续输入,中间不需要乘号。


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 8回复贴,共1页
<<返回mathcad吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示