我正在寫c函數來生成梯形波。是否有人知道產生梯形波的數學方程?與y = A * sin(B * x)非常類似的想法爲x的不同值生成正弦波。梯形波方程的方程
Q
梯形波方程的方程
4
A
回答
2
發送梯形波的單脈衝包括使用單位階躍函數http://en.wikipedia.org/wiki/Heaviside_step_function
如果你想代表這種功能的「純」數學的方式來使用它的方式。只需建立你的功能「一個接一個」,第一件乘以heaviside「激活」,當你=脈衝的開始。對於下一部分,首先減去最後一個函數,然後添加新的數學函數,將其乘以適當的heaviside函數,等等。它應該結束這樣的事情(如果你不明白這一點,經過維基百科文章):
H(n) := (x >= n)?1:0;
y := H(0)*(x) + H(1)*(-x + 1) + H(2)*(-(-x + 1) + (3-x));
然而,代碼簡單和效率,讓使用if語句。考慮45度梯形波,恆定的單位速度。
float trapezoidalWave(float x, float t) {
float y;
if (x <= t + 1) {
// 45 degree ascending line
y = x - t;
} else if (x <= t + 2) {
// horizontal line
y = 1;
} else if (x <= t + 3) {
// 45 degree descending line
y = t + 3 - x;
} else {
y = 0;
}
return y;
}
如果你想要一個「長波」,而不是隻是一個脈衝,工作與模塊(%),如果你並不需要時間變量,只是0
2
取代它有一個您可以使用公式來代替限制。
a/pi(arcsin(sin((pi/m)x+l))+arccos(cos((pi/m)x+l)))-a/2+c
a
是振幅m
在時段l
是水平過渡c
是垂直過渡
加上這是一個直接的三角函數,即使它可能會更長,並且會更多一點折襞。
相關問題
- 1. Python中的梯形波
- 2. 梯形到長方形
- 3. 徑向梯度方程
- 4. VBA梯形積分方法
- 5. 不正確的方波波形
- 6. 編程方波和鋸齒波在R
- 7. 波動方程FDM,MATLAB
- 8. 更新方程梯度下降
- 9. Matlab形成方程
- 10. 識別常見的週期性波形(正方形,正弦波,鋸齒波,......)
- 11. OpenCV的正方形:濾波輸出
- 12. 不穩定而NDSolving波動方程
- 13. 從梯形到右梯形的動畫變換充滿梯度
- 14. 本徵共軛梯度與Poisson方程的SimplicialLLT
- 15. 如何在android中以編程方式創建方形圖形?
- 16. 將方形圖像裁剪成圓形 - 以編程方式
- 17. 如何以編程方式在Simulink示波器中打印圖形
- 18. 雙梯形形狀
- 19. 計算SVM方程的偶形
- 20. 在Matlab中將矩陣轉換爲梯隊形式的方法?
- 21. 無梯度卷積的梯形內核
- 22. 未定義的載波上傳器的方法流程
- 23. ActionScript - 從Math.sin()創建正方形,三角形,鋸齒波?
- 24. PLC梯形圖
- 25. 電梯UIView上方視圖
- 26. 得出梯度方向
- 27. 計算梯度方向
- 28. 以編程方式獲取Windows Phone的載波信號強度
- 29. 使用matplotlib.pyplot製作一維波動方程的動畫
- 30. nyquist(大膽)中的PWM方波抽取器進程
我已經看到這通過剪裁三角波完成。 – jedwards
如果(0