0

私はこの機能を持っています、

dn =fp(xn)+an =Asin(2π k xn +φ)+an

anはσ2 = 1のガウス分布ランダム ノイズであり、 pは自由パラメーターの値の特定の選択を示します。p = [A,k,φ]

2 つの関数を記述する必要があります。

(1) peval - 一連のパラメーター値 p と独立変数 x の値が提供され、fp(x) を返します。

(2)残差- パラメータ値、データセット、および独立変数値の配列 xn が提供され、残差を返します

これは私が現時点で持っているものですが、ガウス分布ランダムノイズである「an」を入力する方法がわかりません。これは私の推測でした..

an = np.random.normal(0,1,100)

def peval(x, p):

  #Evaluate the model at the points in x for model parameter values in p.   
  # return a numpy array containing the set  of points y(x)

    return p[1]*np.sin(2*(np.pi)*p[2]*x+p[3])+an


def residuals(p, y, x):

 #  Evaluate the function at for the particular parameter set p,
 #  find the and return residuals.  
 #  p is the set of parameters
 #  y is the measured data set
 #  x is the independent variable.

    return (y-peval(x,p))     

次のようなデータがあります。

0.0003 6.09073051353

0.0006 5.51270817927

0.0009 6.89123564432

0.0012 4.99645189114

0.0015 6.7032515641

0.0018 8.9916107534

よろしくお願いします。

4

0 に答える 0