Wolfram Mathematica学习笔记1

前言

最近重拾高数的时候给博主整自闭了,什么极限啊、积分啊博主忘的是干干净净。
属实是应了那句 『课上学到的东西在下课的一瞬间就全部还给了老师』
在这里插入图片描述

吐槽过后就要开始想办法补救。
就在博主薅着所剩无几的头发,苦苦思索的时候,我突然想起来我亲爱的哥哥(人生导师)之前跟我提到过的一个软件——Wolfram Mathematica 11
不过当时我才高中毕业,那时候他还在准备考研(现在已经上岸了,老哥NB)。他当时跟我说了一堆东西,年轻气盛的我属实是啥也没记住,只留下了一些模糊的印象以及电脑上一堆奇奇怪怪的软件。而在这些软件之中,Wolfram Mathematica 11给我的印象是最深刻的。

还记得那是一个寒冷的冬日,哈尔滨的冬天总是那么的单刀直入,让人恨不得和暖气片绑在一起共度余生。当时的博主还是一个青涩的大一新生,那天正坐在一间教室里孤独地做着高数作业。
由于博主一直以来都不是很擅长数学这类抽象的学科,很快的我就卡在了一道题上动弹不得(好像是积分,又好像是求极限)。
博主属于那种死脑筋爱钻牛角尖的人,认真起来连自己都不放过,于是乎博主迅速的把题发给了万能的哥哥,请求他的帮助。他看到消息之后大概只用了1~2分钟,返回给我一个截图。
截图找不到了,但内容就是那道题的答案,使用的软件就是Wolfram Mathematica 11

从那之后博主就一直惦记着这个神奇的软件,心里留存着『无论如何也得把这绝世软件学一学』的想法。
今天正式开坑『Wolfram Mathematica 11的学习笔记』,不定时更新。

由于博主并没有抱着十分专业的心态来入坑,所以文章内容基本上就是博主在使用 Wolfram Mathematica 11 的过程中学习到的一些函数的介绍。如果想要了解更加深入的使用知识以及软件的使用技巧的话,菜狗博主建议另寻大佬。


前置介绍


Expand(公式展开)

一.函数形式

Expand[expr]:将公式expr中所有的乘积与正整数幂进行展开
Expand[expr,patt]:只将公式expr中包含patt形式的部分进行展开

二.演示

①将公式 h 2 ( v x + v y ) 2 h^2(vx+vy)^2 h2(vx+vy)2进行展开。

在这里插入图片描述


②将公式 h 2 ( v x + v y ∗ ( 3 x + 4 y ) 2 ) − 8 h^2 (vx + vy*(3 x + 4 y)^2)^{-8} h2(vx+vy(3x+4y)2)8进行展开。

在这里插入图片描述


③将公式 h 2 ( x + ( y + x ) 2 ) 7 4 h^2 (x + (y + x)^2)^{\frac{7}{4}} h2(x+(y+x)2)47进行展开。

在这里插入图片描述


根据②③我们会发现:

  • ( v x + v y ∗ ( 3 x + 4 y ) 2 ) − 8 (vx + vy*(3 x + 4 y)^2)^{-8} (vx+vy(3x+4y)2)8中只有 − 1 -1 1次方被展开,成为了 1 ( v x + v y ∗ ( 3 x + 4 y ) 2 ) 8 \frac{1}{(vx + vy*(3 x + 4 y)^2)^{8}} (vx+vy(3x+4y)2)81,而其中的 ( 3 x + 4 y ) 2 (3 x + 4 y)^2 (3x+4y)2还有整体的8次方都没有被展开;
  • ( x + ( y + x ) 2 ) 7 4 (x + (y + x)^2)^{\frac{7}{4}} (x+(y+x)2)47中只有 ( x + ( y + x ) 2 ) 1 (x + (y + x)^2)^1 (x+(y+x)2)1被展开,成为了 x + x 2 + 2 x y + y 2 x + x^2 + 2 x y + y^2 x+x2+2xy+y2,而剩下的 ( x + ( y + x ) 2 ) 3 4 (x + (y + x)^2)^{\frac{3}{4}} (x+(y+x)2)43以及其内部的 ( y + x ) 2 (y+x)^2 (y+x)2没有被展开;

所以博主觉得,对于将公式expr中所有的乘积与正整数幂进行展开的正确解读应该是

  1. 如果公式expr中存在正实数次幂,则会将该实数的整数部分分离出来,然后将整数幂项进行展开,
    例如 ( x + ( y + x ) 2 ) 7 4 (x + (y + x)^2)^{\frac{7}{4}} (x+(y+x)2)47分离成 ( x + ( y + x ) 2 ) ∗ ( x + ( y + x ) 2 ) 3 4 (x + (y + x)^2)*(x + (y + x)^2)^{\frac{3}{4}} (x+(y+x)2)(x+(y+x)2)43);
  2. 如果公式expr中存在负数次幂,则只将-1次幂展开,剩下的部分保留不做处理;
  3. 如果展开停止在括号外部,则括号内部的公式不会展开,
    例如③中 ( x + ( y + x ) 2 ) 3 4 (x + (y + x)^2)^{\frac{3}{4}} (x+(y+x)2)43的展开停止在了外层, ( y + x ) 2 (y+x)^2 (y+x)2无法展开;

④将公式 6 ( x + 1 ) + ( y + 1 ) 2 + ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 6 (x + 1) + (y + 1)^2 + ((y + 1)^2 + (x + 1)^2)^2 6(x+1)+(y+1)2+((y+1)2+(x+1)2)2中所有包含 ( y + 1 ) (y+1) (y+1)的部分进行展开。

在这里插入图片描述


⑤将公式 6 ( x + 1 ) + ( y + 1 ) 2 + ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 6 (x + 1) + (y + 1)^2 + ((y + 1)^2 + (x + 1)^2)^2 6(x+1)+(y+1)2+((y+1)2+(x+1)2)2中所有包含 ( y + 1 ) 2 (y+1)^2 (y+1)2的部分进行展开。

在这里插入图片描述


这里④与⑤产生了差别,我们分析一下:

  • 在④中我们只将包含 ( y + 1 ) (y+1) (y+1)的部分进行展开。
    ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 ((y + 1)^2 + (x + 1)^2)^2 ((y+1)2+(x+1)2)2 ( y + 1 ) 2 (y+1)^2 (y+1)2包含 ( y + 1 ) (y+1) (y+1),所以被展开;
    ( x + 1 ) 2 (x + 1)^2 (x+1)2不包含 ( y + 1 ) (y+1) (y+1),所以没有被展开;
    ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 ((y + 1)^2 + (x + 1)^2)^2 ((y+1)2+(x+1)2)2整体在某种意义上也是包含 ( y + 1 ) (y + 1) (y+1)的,但没有展开;
  • 在⑤中我们只将包含 ( y + 1 ) 2 (y+1)^2 (y+1)2的部分进行展开。
    ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 ((y + 1)^2 + (x + 1)^2)^2 ((y+1)2+(x+1)2)2 ( y + 1 ) 2 (y+1)^2 (y+1)2包含 ( y + 1 ) 2 (y+1)^2 (y+1)2,但没有展开;
    ( x + 1 ) 2 (x + 1)^2 (x+1)2不包含 ( y + 1 ) 2 (y+1)^2 (y+1)2,所以没有被展开;
    ( ( y + 1 ) 2 + ( x + 1 ) 2 ) 2 ((y + 1)^2 + (x + 1)^2)^2 ((y+1)2+(x+1)2)2整体包含 ( y + 1 ) 2 (y + 1)^2 (y+1)2,被展开;

根据这些,博主推断只将公式expr中包含patt形式的部分进行展开的意思为:将公式中所有的patt用一个新变量表示,只对 完全包含patt 的部分进行展开。

那什么是完全包含
在函数 f ( x ) = [ ( y + 1 ) + ( x + 1 ) 2 ] 2 f(x)=[(y+1)+(x+1)^2]^2 f(x)=[(y+1)+(x+1)2]2中, f ( x ) f(x) f(x)完全包含 ( y + 1 ) (y+1) (y+1),所以 f ( x ) f(x) f(x)会被全部展开,但 ( x + 1 ) 2 (x+1)^2 (x+1)2并不会被展开:
在这里插入图片描述

而在函数 f ( x ) = [ ( y + 1 ) 2 + ( x + 1 ) 2 ] 2 f(x)=[(y+1)^2+(x+1)^2]^2 f(x)=[(y+1)2+(x+1)2]2中, ( y + 1 ) 2 (y+1)^2 (y+1)2完全包含 ( y + 1 ) (y+1) (y+1),但 f ( x ) f(x) f(x)只是包含了 ( y + 1 ) (y+1) (y+1),并不完全包含(可以理解成不在同一层)。所以 ( y + 1 ) 2 (y+1)^2 (y+1)2会被完全展开,而 f ( x ) f(x) f(x)不会:
在这里插入图片描述


N(实数化)

一.函数形式

N[x]:将x转化为实数
N[x,n]:将x转化为实数,并尝试性地保留n位精度

二.演示

①将1转化为实数。

在这里插入图片描述


②将0转化为实数。

在这里插入图片描述


③将 2 31 2^{31} 231转化为实数。

在这里插入图片描述


④将0123转化为实数。

在这里插入图片描述


⑤将1/3转化为实数。

在这里插入图片描述


通过上述试验以及博主自己做的一些测试来说,目前博主得到的结论是:

  • N [ x ] N[x] N[x]会保留x的6位有效数字,如果x不足6位则不做处理(不会补0),例如①②;
  • 如果x的整数位超过6位(等于6位也算),则会转变成科学计数法,例如③;
  • 若x为分数形式,则会先把x化成实数再取6位有效数字,例如⑤;
  • N [ x ] N[x] N[x]在计算时会先清除前导0与后缀无效0(例如1.000),例如④

⑥将 2 32 2^{32} 232化为实数,并尝试性地保留10位精度。

在这里插入图片描述


⑦将 0.1 0.1 0.1化为实数,并尝试性地保留5位精度。

在这里插入图片描述


⑧将 123456789.987654321 123456789.987654321 123456789.987654321实数化,并尝试性地保留10位精度。

在这里插入图片描述


关于 N [ x , n ] N[x,n] N[x,n],一开始我以为是保留n个有效数字,但被 N [ 0.1 , 5 ] N[0.1,5] N[0.1,5]打脸了。
测了半天,博主觉得 N [ x , n ] N[x,n] N[x,n]应该是:

  • 如果x不是实数形式/整数形式,则会将x算出来,保留其n位有效数字,缺位小数点后补0;
  • 否则就先计算出 N [ x ] N[x] N[x]的值,查看 N [ x ] N[x] N[x]是否到达 n n n位;
  • 如果 N [ x ] N[x] N[x]不够n位,则 N [ x , n ] = = N [ x ] N[x,n]==N[x] N[x,n]==N[x]
  • 如果 N [ x ] N[x] N[x]为科学计数法,则将a*10e中的a进行处理,保留其n位有效数字,缺位小数点后补0;
  • 否则就按正常的处理方式,保留n位有效数字,缺位小数点后补0;

对于N[12345.123456,10]N[12345.123456]=12345.1,而12345.1不足10位,所以N[12345.123456,10]=N[12345.123456]=12345.1
在这里插入图片描述


可能是博主自己比较喜欢钻牛角的缘故,像这样的篇幅,正常的博主至少也可以介绍5个函数,而菜狗博主只能写2个。没办法,测试的时候总会出现新的花样,再加上博主在遇到这种神奇的东西的时候总是想试图搞清其内部的逻辑,导致内容会非常的( ) ( )。
博主只是一个萌新,如果内容有哪些不对的地方还请巨巨们指教。

今天就先到这,我们改日再见。
(实际上还想再写两个,但是博主是懒狗(●’◡’●))


"十行代码"
"九个警告"
"八个错误"
"竟然敢说七日精通"
"六天学会"
"五湖四海也不见如此"
"三心二意之项目经理"
"简直一等下流"

在这里插入图片描述

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Wolfram Mathematica是一款强大的数学软件,可以用来绘制各种图形。它支持多种绘图函数和图形类型,包括二维和三维图形、曲线、散点图、柱状图、饼图等等。用户可以使用内置函数或自定义函数来绘制图形,并可以对图形进行各种调整和美化。Wolfram Mathematica还支持交互式绘图,用户可以通过鼠标或键盘操作来实时调整图形。总之,Wolfram Mathematica是一款非常强大的画图工具,可以满足各种绘图需求。 ### 回答2: Wolfram Mathematica是一种功能强大的数学软件,具有绘制图形的能力。通过使用Mathematica,我们能够生成各种类型的图形,包括函数图像、数据图表和复杂的绘图。 首先,我们可以使用Mathematica来绘制函数图像。通过输入函数的表达式,我们可以得到函数的图像。例如,输入"Plot[x^2, {x, -5, 5}]",就可以得到一个以x为自变量,y为因变量的二次函数图像。我们可以通过调整输入表达式中的参数,如函数的系数和变量范围,来获得不同的图像效果。 其次,Mathematica还可以用于绘制数据图表。我们可以将数据输入到Mathematica中,然后使用不同的绘图函数来创建各种类型的图表,如柱状图、折线图和饼图。通过调整参数和样式选项,我们可以自定义图表的外观和布局。 最后,Mathematica还支持绘制复杂的绘图,如曲面图、三维图和动画图。通过使用相关的绘图函数和选项,我们可以呈现出更加复杂和丰富的图像效果。例如,使用"Plot3D[Sin[x + y^2], {x, -Pi, Pi}, {y, -Pi, Pi}]",我们可以绘制出一个包含正弦函数的三维曲面图。 总之,通过使用Wolfram Mathematica,我们可以方便地绘制各种类型的图形。不论是函数图像、数据图表还是复杂的绘图,Mathematica都提供了丰富的函数和选项,使我们能够轻松地创建出令人满意的图像效果。 ### 回答3: Wolfram Mathematica是一套功能强大的数学软件,可以用于绘制各种类型的图形。它具有强大的绘图功能,在数学、统计学、物理学等领域都得到广泛应用。 要使用Wolfram Mathematica画图,首先需要打开软件并创建一个新的绘图窗口。可以通过点击工具栏上的"新建"按钮或使用相关的快捷键来创建一个新的绘图窗口。 在新的绘图窗口中,可以使用不同的绘图函数来绘制各种类型的图形。例如,可以使用Plot函数来绘制函数的图像。只需输入要绘制的函数,指定绘图范围和其他参数,然后点击运行按钮即可生成图形。 另一个常用的绘图函数是ListPlot,可以用于绘制离散数据的散点图。只需输入数据点坐标,然后点击运行按钮即可生成相应的图形。 除了这些基本的绘图函数之外,Wolfram Mathematica还提供了许多其他类型的绘图函数,可以用于绘制二维和三维图形、曲线、图表等。用户可以按照自己的需求选择合适的函数来完成绘图任务。 在绘图过程中,用户还可以对图形进行进一步的调整和修改。可以修改坐标轴的范围和标记、添加图例、调整线条的颜色和类型等。Wolfram Mathematica提供了丰富的选项和命令,用户可以根据自己的需求进行自定义。 总之,通过Wolfram Mathematica可以轻松绘制各种类型的图形。它具有强大的绘图功能和丰富的选项,让用户能够方便地制作出美观、精确的图形。无论是学术研究还是工程设计,绘图都是不可或缺的一部分,而Wolfram Mathematica可以成为您的有力助手。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值