分享我写的小程序--机械工程师理解的傅里叶级数
本帖最后由 从零开始 于 2019-4-28 18:59 编辑见原帖,机械工程师理解的傅里叶级数,方波的构造。
http://jixietop.cn/forum.php?mod=viewthread&tid=25156&extra=
以前在老社区见id“动静之机”的网友发表过,感觉自己现在可以写出来。
于是尝试用mathematica语言试了一下。
------------
以下是动图和代码,(lisp语言的括号是可怕)。
或者拷贝一下文件。
---------------
Animate, Circle[{0, 0}, 4/\],
Circle[{(4 Cos)/\, (4 Sin)/\}, 4/(3 \)],
Circle[{(4 Cos)/\ + (4 Cos)/(3 \), (
4 Sin)/\ + (4 Sin)/(3 \)}, 4/(5 \)],
Circle[{(4 Cos)/\ + (4 Cos)/(3 \) + (4 Cos)/(
5 \), (4 Sin)/\ + (4 Sin)/(3 \) + (
4 Sin)/(5 \)}, 4/(7 \)],
Point[{{(4 Cos)/\, (
4 Sin)/\}, {(4 Cos)/\ + (4 Cos)/(3 \), (
4 Sin)/\ + (4 Sin)/(3 \)}, {(
4 Cos)/\ + (4 Cos)/(3 \) + (4 Cos)/(
5 \), (4 Sin)/\ + (4 Sin)/(3 \) + (
4 Sin)/(5 \)}, {(4 Cos)/\ + (4 Cos)/(
3 \) + (4 Cos)/(5 \) + (4 Cos)/(7 \), (
4 Sin)/\ + (4 Sin)/(3 \) + (4 Sin)/(
5 \) + (4 Sin)/(7 \)}}], Green,
Point)/\ + (4 Sin)/(
3 \) + (4 Sin)/(5 \) + (
4 Sin)/(7 \)}, {k, 0, 6, .05}]], Red,
Arrowheads,
Arrow[{{(4 Cos)/\ + (4 Cos)/(3 \) + (4 Cos)/(
5 \) + (4 Cos)/(7 \), (4 Sin)/\ + (
4 Sin)/(3 \) + (4 Sin)/(5 \) + (4 Sin)/(
7 \)}, {3 + 0, (4 Sin)/\ + (4 Sin)/(
3 \) + (4 Sin)/(5 \) + (4 Sin)/(7 \)}}],
Blue, Line[{{0, 0}, {(4 Cos)/\, (
4 Sin)/\}, {(4 Cos)/\ + (4 Cos)/(3 \), (
4 Sin)/\ + (4 Sin)/(3 \)}, {(
4 Cos)/\ + (4 Cos)/(3 \) + (4 Cos)/(
5 \), (4 Sin)/\ + (4 Sin)/(3 \) + (
4 Sin)/(5 \)}, {(4 Cos)/\ + (4 Cos)/(
3 \) + (4 Cos)/(5 \) + (4 Cos)/(7 \), (
4 Sin)/\ + (4 Sin)/(3 \) + (4 Sin)/(
5 \) + (4 Sin)/(7 \)}}]},
PlotRange -> {{-2.5, 10}, {-2.5`, 2.5`}}, ImageSize -> Full], {t, 0,
6 \}, AnimationRate -> .1, AnimationRunning -> False,
ContentSize -> {900, 320}] 不错,应该鼓励, 在YouTube上也看到一个老外使用同样的操作,他是用Mathlab做的。
页:
[1]