Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Live Fitting Plugin with userCalc functionality #23

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

abrewe
Copy link

@abrewe abrewe commented Oct 27, 2022

LiveFitter_EPICSUserCalc.java

livefittingplugin

ImageJ plugin for displaying a live fit in a profile plot. Fit Parameters and Fit Equation are displayed above the plot.
Includes the option to send and display fit parameters into a userCalc.
Fits any built-in ImageJ fit and a custom Slit Function:

$f(x) = a + bx + e/2 * erf( (x - c + d/2) / (f*\sqrt{2}) ) – e/2 * erf( (x - c - d/2) / (f*\sqrt{2}) )$

slitfunctionex

a+b*x : linear background
c: center of slit function
d: Full width at half max of slit
e: full height of the slit function
f (sigma): width of the erf, blurriness
of the edge (f limited from 0-30 to get better results from custom ImageJ fitting)

userCalc functionality: To send the fit parameters to a userCalc, enter the userCalc prefix
in the userCalc field.

userCalcEx

Displays equation (as much as will fit) and fit parameters in the userCalc.

userCalcdisplay

Limitations:

  • Only works with one fit at a time
  • For longer equations, plot may need to be resized to view full equation
  • Similarly, longer equations may not be fully displayed in userCalc
  • Limitations on f parameter for slit function fitting means there may be cases where fit is not great

@antoninomiceli
Copy link

FYI, this more or less includes all the functionality of Gaussian_Profiler.java

@abrewe
Copy link
Author

abrewe commented Oct 27, 2022

LiveFittingPluginVideo.mp4

@antoninomiceli
Copy link

This plugin has been extensively used/degugged at 1-ID.

@cpchuang
Copy link

Strong support to include this into master branch... very useful tool and can save significant amount of time for alignment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants