2017-05-31 9 views
1

私はpc用の特定の値のforループを使用しようとしていました。ここで私は例を与える、浮動小数点数と不均等分布のforループを使用

pc=(0.02,0.05,0.1,0.2,0.5) 

for i in range (pc): 
    phiCrit = i*np.max(phiPart_t) 
    SigU = np.zeros(Nt) 
    SigL = np.zeros(Nt) 
    for k in range(0,Nt): 
     toto = np.where(phiPart_t[:,k]>phiCrit) 
     SigU[k] = Sig[np.max(toto)] 
     SigL[k] = Sig[np.min(toto)] 
    fitfuncU = lambda p, x: p[0] - (p[1]*np.log(x)) 
    errfuncU = lambda p, x, y: y - fitfuncU(p, x) 
    time_fit=np.where(time>20) 
    pfinal, success = optimize.leastsq(errfuncL, pinit[:], args=(time[time_fit], SigU[time_fit])) 
    y=fitfuncU(pfinal,time) 
    x=time[0:696] 
    dx = x[1]-x[0] 
    dydx = np.diff(y)/dx 
    plt.figure(21) 

    plot(x, dydx, label='time vs dfitfunc with various phi') 
    plt.xlabel('time') 
    plt.ylabel('dSigU') 
    plt.grid() 
    plt.xlim(0,3500) 
    plt.legend() 
    savefig('21.png') 

私の目的は、同図のいくつかのphicritためのプロットtime vs dydxです。私がここに持っているエラーはrange() integer end argument expected, got tuple.と書かれています。私もリストとしてPCを作ろうとしましたが、うまくいきませんでした。別の変数とは別に誰かが私に説明することができますどのように私は異なるPCの値のための全体のプロセスを実行することができます。

答えて

0

for i in pc

range(n)あるべき範囲0, nを含むイテラブルを返します。この場合、あなたが望む反復可能性はちょうどpcです。

関連する問題