从零开始 发表于 2019-4-28 18:59:00

分享我写的小程序--机械工程师理解的傅里叶级数

本帖最后由 从零开始 于 2019-4-28 18:59 编辑

见原帖,机械工程师理解的傅里叶级数,方波的构造。
http://jixietop.cn/forum.php?mod=viewthread&tid=25156&extra=

以前在老社区见id“动静之机”的网友发表过,感觉自己现在可以写出来。
于是尝试用mathematica语言试了一下。
------------
以下是动图和代码,(lisp语言的括号是可怕)。

从零开始 发表于 2019-4-28 19:00:12

或者拷贝一下文件。
---------------
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}]

2266998 发表于 2019-4-28 20:05:03

不错,应该鼓励,

nanfeng36 发表于 2021-1-30 13:52:15

在YouTube上也看到一个老外使用同样的操作,他是用Mathlab做的。
页: [1]
查看完整版本: 分享我写的小程序--机械工程师理解的傅里叶级数