2015-11-16 83 views
1

我需要在MATLAB中繪製諧波振盪器的通風功能。 所以我知道:在MATLAB中繪製諧波振盪器的通風功能

V(x)=1/2momega^{2}x^{2} 

,我知道如何解決的積分:

int{sqrt{frac{2E}{momega^{2}}}}^{x}sqrt{2m(E-V(x))}dx 

的resault是:IM懶得再編寫功能,因此從現在開始,我們將其稱之爲˚F (x)的

F(x)= E/omega*arcsin(sqrt{momega^{2}\2E}}x)+E\omega* 
*sqrt{1-momega^{2}/2E}x^{2}}+Epi\2omega 

另外,我可以告訴大家,最後的函數(通風功能)看起來就像是:

psi = 2c(-1)^{n}\sqrt{2m(E-1\2*momega^{2}x^{2})}}sin(F(x)+pi\4}) 

其中c是常數。

我手動完成了所有這些,但我實際需要的是在matlab中完成所有這些。我試圖自己繪製它,但出於某種原因它給了我一個線性函數。 的代碼:(M = 1,Ω= 1,E = 0.5 * 10^6,C = 1,n = 0時)

y = @(x) (0.5*10^6).*asin((10^-3).*x); 
g = @(x) (0.5*10^6).*sqrt(1-(10^-3).*x); 
a = 0.5*pi*0.5*10^6+pi/4; 
k = @(x) 2.*sqrt(10^6-x.^2); 
f = @(x) y(x)+g(x)+a; 
x = -1e-10:-1e-9:-1e-6; 
psi = @(x) k(x).*sin(f(x)); 
plot(x,psi(x)) 

也許有一些錯誤我的計算,或在代碼本身。無論哪種方式,我會感謝幫助!謝謝!

回答

0

我沒有按照計算,但你看到線性函數的原因是你選擇的x的範圍。試試這個:

ezplot(psi); 

你會看到振盪。