gnuplotを用いて,2次関数での近似をしたいです.
使用環境は
windows 10
gnuplot5.4 patchlevel1
です.
======error====
Singular matrix in Invert_RtR
===============
が表示されて,詰まっています.
ソースコードは下記に示したとおりです.
reset set xrange [ -6 : 6 ] set yrange [ 0 : 1.1 ] set xtics nomirror set ytics nomirror set ytics 1 set mytics 5 set xtics 1 set mxtics 2 set ticscale 2 set xlabel "Input voltage {/Times:Italic V}_{s} (V)" set ylabel "Power consumption {/Times:Italic P}_{1},{/Times:Italic P}_{2},{/Times:Italic P}_{3},{/Times:Italic P}_{S} (W)" set key bottom left at 5,1.0 p1(x) = a1 * x ** 2 + b1 * x + c1 p2(x) = a2 * x ** 2 + b1 * x + c2 p3(x) = a3 * x ** 2 + b3 * x + c3 p4(x) = a4 * x ** 2 + b4 * x + c4 fit p1(x) "data5.txt" u 1:2 via a1, b1, c1 fit p2(x) "data5.txt" u 1:3 via a2, b2, c2 fit p3(x) "data5.txt" u 1:4 via a3, b3, c3 p4(x) = a4 * x ** 2 + b4 * x + c4 plot "data5.txt" u 1:2 title "{/Times:Italic P}_{1}" pt 1 replot "data5.txt" u 1:3 title "{/Times:Italic P}_{2}" pt 2 replot "data5.txt" u 1:4 title "{/Times:Italic P}_{3}" pt 3 replot "data5.txt" u 1:5 title "{/Times:Italic P}_{S}" pt 4 replot p1(x) title"{/Times:Italic P}_{r1}" replot p2(x) title"{/Times:Italic P}_{r2}" replot p3(x) title"{/Times:Italic P}_{r3}" replot p4(x) title"{/Times:Italic P}_{rs}" set term emf monochrome font "Times New Roman,24" enhanced lw 2 set output "ElectricNo1.emf" replot TERM = "Default" set out set term pop reset
使用しているデータも下記に示します.
#電源電圧Vs(V) R1の消費電力(mW) R2の消費電力(mW) R3の消費電力(mW) 電源の消費電力Ps(mW) -5 0.399201597 0.409090909 0.192307692 0.998003992 -4 0.255489022 0.261818182 0.123076923 0.638722555 -3 0.168662675 0.147272727 0.069230769 0.389221557 -2 0.063872255 0.065454545 0.030769231 0.159680639 -1 0.015968064 0.016363636 0.007692308 0.039920160 0 0 0 0 0 1 0.015968064 0.016363636 0.007692308 0.039920160 2 0.063872255 0.065454545 0.030769231 0.159680639 3 0.143712575 0.147272727 0.069230769 0.359281437 4 0.255489022 0.261818182 0.123076923 0.638722555 5 0.399201597 0.409090909 0.192307692 0.998003992
よろしくおねがいします.
追記
エラーはこのようなログになっております.
iter chisq delta/lim lambda a1 b1 c1 0 5.1425794360e-04 0.00e+00 1.23e-01 1.593898e-02 -6.804573e-04 2.558984e-03 * 5.1425794360e-04 3.79e-10 1.23e+00 1.593898e-02 -6.804573e-04 2.558984e-03 * 5.1425794360e-04 1.48e-10 1.23e+01 1.593898e-02 -6.804573e-04 2.558984e-03 * 5.1425794360e-04 8.43e-11 1.23e+02 1.593898e-02 -6.804573e-04 2.558984e-03 * 5.1425794360e-04 8.43e-11 1.23e+03 1.593898e-02 -6.804573e-04 2.558984e-03 1 5.1425794360e-04 0.00e+00 1.23e+02 1.593898e-02 -6.804573e-04 2.558984e-03 iter chisq delta/lim lambda a1 b1 c1 After 1 iterations the fit converged. final sum of squares of residuals : 0.000514258 rel. change during last iteration : 0 degrees of freedom (FIT_NDF) : 8 rms of residuals (FIT_STDFIT) = sqrt(WSSR/ndf) : 0.00801762 variance of residuals (reduced chisquare) = WSSR/ndf : 6.42822e-05 Final set of parameters Asymptotic Standard Error ======================= ========================== a1 = 0.015939 +/- 0.0002737 (1.717%) b1 = -0.000680457 +/- 0.0007645 (112.3%) c1 = 0.00255898 +/- 0.003652 (142.7%) correlation matrix of the fit parameters: a1 b1 c1 a1 1.000 b1 0.000 1.000 c1 -0.750 -0.000 1.000 iter chisq delta/lim lambda a2 b2 c2 0 5.0932431001e-05 0.00e+00 1.26e-01 1.636364e-02 1.000000e+00 -1.039415e-08 1 5.0932431001e-05 0.00e+00 1.26e-02 1.636364e-02 1.000000e+00 -1.039415e-08 "Electric1.plt" line 29: Singular matrix in Invert_RtR
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/03 13:50
2021/11/03 14:00 編集
2021/11/04 00:31