杜芬振子 Duffing oscillator是一個描寫強迫振動的振動子,由非線性微分方程表示
杜芬方程列式如下:
其中
- γ控制阻尼度
- α控制韌度
- β控制動力的非線性度
- δ驅動力的振幅
- ω驅動力的圓頻率
杜芬方程沒有解析解,但可用龍格-庫塔法求得數值解。
當γ>0,杜芬振子呈現極限環振動;
相關軟件:混沌數學及其軟件模擬
相關代碼:
//http://wenku.baidu.com/view/d51372a60029bd64783e2cc0.html?re=view class DuffingEquation : public DifferentialEquation { public: DuffingEquation() { m_StartX = 1.0f; m_StartY = 1.0f; m_StartZ = 0.0f; m_ParamA = 2.09f; m_ParamB = 0.1f; m_ParamC = 0.5f; m_StepT = 0.002f; } void Derivative(float x, float y, float z, float& dX, float& dY, float& dZ) { dX = y; dY = m_ParamA*cosf(m_ParamC*m_ParamT) - m_ParamB*y + x - x*x*x; dZ = 0.0f; } bool IsValidParamA() const {return true;} bool IsValidParamB() const {return true;} bool IsValidParamC() const {return true;} bool IsValidParamT() const {return true;} };
相關截圖: