r - 如何制作不等正弦波?
问题描述
我有与基本数学相关的“新手”问题。我正在尝试用“不等弧度”制作正弦波(至少我相信这是我想要做的)。换句话说:我需要在前几个周期(x)“更快”并随着 x 接近无穷大而逐渐减慢(“周期”更宽/更长)的函数。这是我正在尝试做的代码和草图:
x <- seq(1, 30, by=0.1) # my x
z <- ifelse(x <= 10, 3, ifelse(x <= 20, 2, 1)) # discrete value to modify x
y <- sin(z*x) # my y(x)
plot(y, type="l") # plot y(x)
和草图(的结果plot
):
忽略“双峰”和其他失真,它们实际上z
是离散变量的结果。我想z
连续不断地使每个周期顺利扩大。我应该在这里使用什么数学函数?我尝试了阻尼正弦波,但这并不是我想要的。
解决方案
这并不是一个完整的答案,因为我无法在脑海中为您提供代码,但您在这里寻找的是啁啾声。有几种不同类型的啁啾,具体取决于您想要的相位变化率,但我猜您可能想要线性啁啾维基百科
R 很可能已经有一个可以提供这个的功能/模块。
推荐阅读
- python - 熊猫数据框与一些约束合并
- iframe - 计算机阻止 iframe 的显示
- javascript - 如何将数据值从 JQuery 保存到 PHP
- python - 我们如何解决这个python字符串问题
- reactjs - 选项中的命名参数
- linux - 信任区系统中非 SecureOS 和 SecureOS 中直接访问内存的过程如何工作
- javascript - 有没有办法以表格形式获取文件的完整路径?
- hive - 需要在 hive 中的日期范围内加入两个表,以获得每月 acc_no 级别的 prod catg 交易的磁盘率
- php - PHP 错误异常:只有变量应该在第 259 行的 C:\xampp\htdocs\library-api\master.php 中通过引用传递
- java - 为什么没有@StreamListener Kafka Streams 不能工作?