Path: csiph.com!weretis.net!feeder6.news.weretis.net!feeder5.news.weretis.net!news.solani.org!.POSTED!not-for-mail From: Karl Ratzsch Newsgroups: comp.graphics.apps.gnuplot Subject: Re: different behaviour gnuplot4 and 5 concerning "Implied independent variable y not found in fit function" Date: Thu, 21 Mar 2019 22:02:21 +0100 Organization: solani.org Lines: 45 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Trace: solani.org 1553202143 29306 127.0.0.43 (21 Mar 2019 21:02:23 GMT) X-Complaints-To: abuse@news.solani.org NNTP-Posting-Date: Thu, 21 Mar 2019 21:02:23 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.0 In-Reply-To: X-User-ID: eJwFwQkBwEAIAzBL4yvYAXr4l7AkDIJNR8Dj4prOl6qFsnWSI98Wm2ibi2Ro7V77034Y+QE1/xJH Cancel-Lock: sha1:sOwI5at0M9Q/haHPVuW1GyPf3EM= Content-Language: de-DE-1901 Xref: csiph.com comp.graphics.apps.gnuplot:4169 Am 21.03.2019 um 16:02 schrieb hugocoolens@gmail.com: > In a batch-file which worked fine for Gnuplot 4, I had the following lines: > f(x) = a*10e-8*(exp(x/b)-1) > err1(y)=0.01*0.033*y+2e-9 > err2(y)=0.01*0.0031*y+20e-9 > err3(y)=0.01*0.0034*y+200e-9 > err4(y)=0.01*0.0045*y+2e-6 > error(y)=(y<10e-6)? err1(y):(y<100e-6)? err2(y):(y<1e-3)? err3(y):err4(y) > a=30e-3 > b=50e-3 > fit f(x) '1n4148_linstep_1na_10ma.dat' using ($1):($2):(error($2)) via a,b > > This worked fine in Gnuplot 4, however when I try this in Gnuplot 5, I get the following error message: > > Implied independent variable y not found in fit function. > > Assuming version 4 syntax with zerror in column 3 but no zerror keyword. > It's only a warning, not an error. Doesn't the fit converge? I tried this: set xr [0:1e-3] fit f(x) '+' using ($1):(f($1)):(error(f($1))) via a,b where gp of course can't compute errors from the perfect data, but otherwise works fine. To get rid of the warning, you specify to which variable the additional error column refers: fit f(x) '1n4148_linstep_1na_10ma.dat' using ($1):($2):(error($2)) yerror via a,b (you can also give "zerror" or "error z", that's all the same if you only have one dependent and one independent variable.) I understand the warning to be just one warning, not two: You gave three columns, but the fit function only has one variable. That makes gnuplot assume (correctly,) that you don't have two independent variables, but one, plus an additional column with y(==z)-errors. Best, Karl