|
From: Bastian M. <bma...@we...> - 2013-06-14 06:46:58
|
Am 12.06.2013 23:29, schrieb Ethan A Merritt: > In response to a request on the newsgroup, I've been looking into relaxing > the limit of 5 independent parameters in "fit". > > So far as I can see there are 2 reasons for this limit. > > 1) df_readline() limits the number of fields in a 'using' clause to > MAXDATACOLS, and this is currently defined as 7. > > 2) the fit parameters can be range-limited in the "fit" command, > and these ranges are stored in the axis data structures for the > x, y, t, u, and v axes. > > (1) It is easy to change MAXDATACOLS, and I have confirmed that by > itself this doesn't break anything. > > (2) is harder to relax if it really is necessary to use the axis data > structures. But is it really necessary? > > It looks to me that the only reason the axis data structures are involved > is that routine parse_range(), which used to be macro PARSE_NAMED_RANGE, > takes an axis index as input parameter and overwrites the > autoscale/min/max fields in that axis structure. > During the fit operation, these ranges are checked in the axis structure. > > Is there some other reason I am missing that requires access to the > axis data structures? Can we just provide a local array containing > autoscale/min/max for each fit parameter and not access the axis > structures at all? > > Ethan I am not familiar enough with the axis structures to comment on this. The fitting code itself certainly does not have a restriction to the number of indep. variables. Hans-Bernhard, any comments? Support for up to five independent variables was implemented by Jim Van Zandt. Interestingly, the discussion about the axis array was brought up already in the original discussion: http://thread.gmane.org/gmane.comp.graphics.gnuplot.devel/8319 There was also was a proposal by SF user Hanno, where he discusses a patch he was working on with support for more than 2 indep. variables. Sadly, no code is attached. http://sourceforge.net/p/gnuplot/feature-requests/191/ Bastian |