0

皆さんが元気であることを願っています。

以下に示すように、datetime pandas 配列 (X 軸) に従って値を取得する関数 (Y 軸) を取得しました。

有効放射照度 PVLIB-Python

すべての最大値を取得する必要があります。これらの n 個の最大値は、pd.timestamp の開始と終了の間の日数によって異なります。次に、それらの値を配列に保存する必要もあります。このようなもの:

max_values = [
    (A_value_1, B_value_1),
    (A_value_2, B_value_1),
        ...,
    (A_value_n, A_value_n)]

注:これB_value_#は私が求めているものと同じですが、別の関数 (A_values: Irradiance および B_values: Cell temperature,PVLIB-Pythonコミュニティのコンテキスト化.

に精通している人のためにPVLIB-Python、関数を使用して IV 曲線を取得しようとしていpvsystem.calcparams_desotoます (これは、CEC モジュールを使用しており、関数に必要なパラメーターがないためですSAPM。このコードの一部を以下に抜粋します。

    IL, I0, Rs, Rsh, nNsVth = pvsystem.calcparams_desoto(
    effective_irrad_calc,
    pvtemps['temp_cell'],
    module['alpha_sc'],
    module['a_ref'],
    module['I_L_ref'],
    module['I_o_ref'],
    module['R_sh_ref'],
    module['R_s'],
    EgRef=1.121,
    dEgdT=-0.0002677
)

curve_info = pvsystem.singlediode(
    photocurrent=IL,
    saturation_current=I0,
    resistance_series=Rs,
    resistance_shunt=Rsh,
    nNsVth=nNsVth,
    ivcurve_pnts=100,
    method='lambertw'
)

# plot the calculated curves:
plt.figure()
for i, case in conditions.iterrows():
    label = (
        "$G_{eff}$ " + f"{case['Geff']} $W/m^2$\n"
        "$T_{cell}$ " + f"{case['Tcell']} $C$"
    )
    plt.plot(curve_info['v'][i], curve_info['i'][i], label=label)
    v_mp = curve_info['v_mp'][i]
    i_mp = curve_info['i_mp'][i]
    # mark the MPP
    plt.plot([v_mp], [i_mp], ls='', marker='o', c='k')

plt.legend(loc=(1.0, 0))
plt.xlabel('Module voltage [V]')
plt.ylabel('Module current [A]')
plt.title(parameters['Name'])
plt.show()
plt.gcf().set_tight_layout(True)

注:このコードの抜粋は、https ://github.com/pvlib/pvlib-python/blob/master/docs/examples/plot_singlediode.py で取得されました。

前もって感謝します。:)

4

1 に答える 1