New features in Global Fit 2.ipf

I suggest a few of features to be included in the future version of Global Fit 2.ipf

1. A simulation button. Andrew Nelson has included this feature in his Moto_Global Fit 2. It is quite useful.

2. Show the total Chi^2 when the fit or simulation is done in the Graph and also the Chi^2 for each dataset.

3. Show the weighted-residuals when the option of weighting is selected

4. Enable the switching between the linear and logarithmic scales by clicking the axes in the graph.


Yaohua
yaohualiu wrote:
I suggest a few of features to be included in the future version of Global Fit 2.ipf

Thank you. We depend on our users to let us know what features will make Igor more useful to them.
Quote:
1. A simulation button. Andrew Nelson has included this feature in his Moto_Global Fit 2. It is quite useful.

Yes, that would be useful, and has been requested before. I will raise the priority of this suggestion.
Quote:
2. Show the total Chi^2 when the fit or simulation is done in the Graph and also the Chi^2 for each dataset.

Do you want this on the progress graph, or on your own graph? I presume that you would want reduced chi-square so that you can compare the values between data sets in a sensible way. On the other hand, I guess that showing the raw chi-square (in Igor that is simply the summed squared residuals, or when weighting is used, the sum of squared residuals divided by the variance) would let you know what contribution is made by each data set to the overall chi-square.
Quote:
3. Show the weighted-residuals when the option of weighting is selected

Please explain this in more detail. Do you want residuals divided by the standard deviation given by your weighting wave?
Quote:
4. Enable the switching between the linear and logarithmic scales by clicking the axes in the graph.

Naturally, you can change from linear to log scale using the Modify Axis dialog. But I would guess that you want the fit curve to change from log-distributed X values to linear X values by clicking in the graph. That would require re-computing the fit curve, which in turn requires knowing the fit function to use, as well as the correct fit coefficients. That is why, even with the regular curve fitting this doesn't happen.

Again, thank you for your suggestions. I will take them into account the next time I work on a major revision to the Global Fit package.

John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
Quote:
Quote:
2. Show the total Chi^2 when the fit or simulation is done in the Graph and also the Chi^2 for each dataset.

Do you want this on the progress graph, or on your own graph?

I personally focus on the global fitting progress window when I am tunning the initial values and the Epsilon values. That is why I suggest to show them on the fitting program window. However it is all right to print them in the command window.

Quote:
I presume that you would want reduced chi-square so that you can compare the values between data sets in a sensible way. On the other hand, I guess that showing the raw chi-square (in Igor that is simply the summed squared residuals, or when weighting is used, the sum of squared residuals divided by the variance) would let you know what contribution is made by each data set to the overall chi-square.

I typically fit several sets of data with an unified model. The data are taken with different techniques and have very different statistics. It is better to know if the total Chi^2 from each techniques are nearly same so that the every technique plays a similar role on the best model. Therefore the relevant information is useful.

Quote:
Quote:
3. Show the weighted-residuals when the option of weighting is selected

Please explain this in more detail. Do you want residuals divided by the standard deviation given by your weighting wave?


For high dynamic range data, weighting waves are used so that the fitting program will not dominated by the large signals. However, when the residual is shown, the visual effect is that the the difference are dominated at the large signal regions. Therefore it is more helpful to show (y - yfit)/w or [(y - yfit)/w]^2 rather than (y-yfit). This can tell where is the regions of the best and/or worst fittings, and whether the total Chi^2 is dominated by a few of data points.

Quote:
Quote:
4. Enable the switching between the linear and logarithmic scales by clicking the axes in the graph.

Naturally, you can change from linear to log scale using the Modify Axis dialog. But I would guess that you want the fit curve to change from log-distributed X values to linear X values by clicking in the graph. That would require re-computing the fit curve, which in turn requires knowing the fit function to use, as well as the correct fit coefficients. That is why, even with the regular curve fitting this doesn't happen.


I like a feature which switches the axes between linear and log scales quicker than using the Modify Axis dialog, like "Ctrl+Left Click" on the target axis. This is useful to visualize the high dynamic range data. I am sorry for that this is not an intrinsic issue to Global Fit and should be on a different topic.

best regards,

Yaohua
yaohualiu wrote:
Quote:
Quote:
2. Show the total Chi^2 when the fit or simulation is done in the Graph and also the Chi^2 for each dataset.

Do you want this on the progress graph, or on your own graph?

I personally focus on the global fitting progress window when I am tunning the initial values and the Epsilon values. That is why I suggest to show them on the fitting program window. However it is all right to print them in the command window.

Ah, I see. So you need the actual numbers that Igor is using in the fit. That would be simply sum((yi - yhati)/wi)^2, but computed separately for each data set. Displaying it on the graph would be possible, but very tricky to get it formatted correctly in general. But adding it to the history report would be relatively easy.
Quote:
Quote:
I presume that you would want reduced chi-square so that you can compare the values between data sets in a sensible way. On the other hand, I guess that showing the raw chi-square (in Igor that is simply the summed squared residuals, or when weighting is used, the sum of squared residuals divided by the variance) would let you know what contribution is made by each data set to the overall chi-square.

I typically fit several sets of data with an unified model. The data are taken with different techniques and have very different statistics. It is better to know if the total Chi^2 from each techniques are nearly same so that the every technique plays a similar role on the best model. Therefore the relevant information is useful.

In other words, as I say above, not reduced chi-square, but the actual chi-square that Igor is using in the fit.
Quote:
Quote:
Quote:
3. Show the weighted-residuals when the option of weighting is selected

Please explain this in more detail. Do you want residuals divided by the standard deviation given by your weighting wave?


For high dynamic range data, weighting waves are used so that the fitting program will not dominated by the large signals. However, when the residual is shown, the visual effect is that the the difference are dominated at the large signal regions. Therefore it is more helpful to show (y - yfit)/w or [(y - yfit)/w]^2 rather than (y-yfit). This can tell where is the regions of the best and/or worst fittings, and whether the total Chi^2 is dominated by a few of data points.

Thank you for the clarification. That would be relatively easy to add, but would require a checkbox in the control panel. That is less easy, because the control panel is already quite crowded!
Quote:
Quote:
Quote:
4. Enable the switching between the linear and logarithmic scales by clicking the axes in the graph.

Naturally, you can change from linear to log scale using the Modify Axis dialog. But I would guess that you want the fit curve to change from log-distributed X values to linear X values by clicking in the graph. That would require re-computing the fit curve, which in turn requires knowing the fit function to use, as well as the correct fit coefficients. That is why, even with the regular curve fitting this doesn't happen.


I like a feature which switches the axes between linear and log scales quicker than using the Modify Axis dialog, like "Ctrl+Left Click" on the target axis. This is useful to visualize the high dynamic range data. I am sorry for that this is not an intrinsic issue to Global Fit and should be on a different topic.

But you encountered the need for this while using Global Fit, so it is natural to mention it here. There is contextual menu available if you right-click a graph trace that allows you to choose plotting mode, marker, color, marker size, etc. without going to the Modify Trace Appearance dialog. There is also a contextual menu that appears if you right-click in the graph margins that allows you to set the colors of various parts of the graph. Perhaps you would like a contextual menu when you right-click on an axis that would allow you to select linear/log mode and perhaps some additional subset of the options appearing in the Modify Axis dialog.

That is a good idea that will have to wait for Igor Pro 7, which regrettably will not be available for quite a while.

Thank you for your comments- your ideas are good ones. I will note them so that I will remember them the next time I work on Global Fit.

John Weeks
WaveMetrics, Inc.
support@wavemetrics.com