mathematica里的一些小技巧[1]--局部计算和生成多维列表等
mathematica里的一些小技巧[1]
这以个系列我会讲一下在mathematica里的一些小技巧,希望可以对大家有帮助。
技巧1:使用Ctrl+Shift+Enter进行局部计算
比如这个式子,看上去不是很直观,那么我们选中里面的部分,使用Ctrl+Shift+Enter进行局部计算
则能把里面的式子变成数学里常用的表达形式
技巧2:推荐使用Do,不推荐使用For,若有内置函数,用内置函数
其实我测试出来,Do和For的速度是一样的.........
不过大家都说Do比For快,那我这里也说下,至少我测出来Do和For是一样的
技巧3:有时可以用Boole代替If
如我们求1000以内的质数的和,用If写如下
技巧4:生成多维列表
用Table[,{i,1,n},{j,1,m}]生成多维列表
第一个n表示生成生成n个小的组;
运算的规则是:先固定一个i,j做变动
技巧5:使用??查看帮助
如下图所示
以上,所有
2017/2/15
技巧1:使用Ctrl+Shift+Enter进行局部计算
比如这个式子,看上去不是很直观,那么我们选中里面的部分,使用Ctrl+Shift+Enter进行局部计算
则能把里面的式子变成数学里常用的表达形式
技巧2:推荐使用Do,不推荐使用For,若有内置函数,用内置函数
其实我测试出来,Do和For的速度是一样的.........
不过大家都说Do比For快,那我这里也说下,至少我测出来Do和For是一样的
j = 0; N@Timing[For[i = 1, i <= 2000, i++, j = j + Log[i]]; j] j = 0; N@Timing[Do[j = j + Log[i], {i, 1, 2000}]; j] N@Timing[Sum[Log[i], {i, 2000}]]
技巧3:有时可以用Boole代替If
如我们求1000以内的质数的和,用If写如下
j = 0; Do[ If[PrimeQ[i], j = j + i] , {i, 1, 10000}]; j若我们换成Boole,则如下
j = 0; Do[ j = Boole[PrimeQ[i]]*i + j; , {i, 1, 10000}]; j代码可以稍微简单点。
技巧4:生成多维列表
用Table[,{i,1,n},{j,1,m}]生成多维列表
第一个n表示生成生成n个小的组;
运算的规则是:先固定一个i,j做变动
技巧5:使用??查看帮助
如下图所示
下面还是讲一下我自己做的一个小作品。
下面链接是自己做的一个小作品,是用来学习汉字结构的,我们将汉字的结构具体展现出来了,摆脱了以往汉字教学中的模糊概念,希望大家可以看看多提提意见。
汉字结构学习以上,所有
2017/2/15