Skip to content

Commit 54dd551

Browse files
committed
refactor!: remove unused MoreFitter.gausFit
1 parent e16f3d5 commit 54dd551

File tree

1 file changed

+0
-36
lines changed

1 file changed

+0
-36
lines changed

detectors/src/main/java/org/jlab/clas/timeline/fitter/MoreFitter.groovy

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -21,42 +21,6 @@ class MoreFitter {
2121
}
2222
}
2323

24-
static F1D gausFit(H1F h1, String opts) {
25-
def f1 = new F1D('fit:'+h1.getName(), '[amp]*gaus(x,[mean],[sigma])', 0,1)
26-
27-
def scale = Math.max(h1.getBinContent(h1.getMaximumBin())/500, 1)
28-
def data = (1..<h1.getDataSize(0)).collectMany{[h1.getDataX(it)]*(h1.getBinContent(it)/scale as int)}
29-
int nlen = data.size()
30-
if(nlen==0) {
31-
f1.setParameters(0,h1.getDataX(0),0)
32-
return f1
33-
}
34-
35-
def (q1,q2,q3) = [data[nlen/4 as int], data[nlen/2 as int], data[nlen*3/4 as int]]
36-
def (x1,x2) = [1, h1.getDataSize(0)-1].collect{h1.getDataX(it)}
37-
def norms = [h1.getBinContent(h1.getMaximumBin())]
38-
def mus = [h1.getAxis().getBinCenter(h1.getMaximumBin()), h1.getMean(), q2, h1.getDataX(h1.getDataSize(0)/2 as int)]
39-
def sigs = [h1.getRMS()/2, (q3-q1)/1.35]
40-
41-
def makefit = {amp,mu,sig->
42-
f1.setParameters(amp,mu,sig)
43-
def rng = [mu-2.5*sig, mu+2.5*sig]
44-
f1.setRange(*rng)
45-
DataFitter.fit(f1,h1,opts)
46-
(amp,mu,sig) = (0..<f1.getNPars()).collect{f1.getParameter(it)}
47-
if(mu<x1 || mu>x2 || sig>(x2-x1)) return null
48-
return [f1.getChiSquare(), [amp,mu,sig], rng]
49-
}
50-
51-
def fits = [norms,mus,sigs].combinations().findResults{makefit(it)}
52-
fits += fits.findResults{makefit(it[1])}
53-
54-
def best = fits.min{it[0]} ?: [0, [0,x1,x2-x1], [x1,x2]]
55-
f1.setParameters(*best[1])
56-
f1.setRange(*best[2])
57-
return f1
58-
}
59-
6024
static F1D fitgaus(H1F h1) {
6125
def f1 = new F1D('fit:'+h1.getName(), '[amp]*gaus(x,[mean],[sigma])', 0,1)
6226
f1.setRange(h1.getDataX(0), h1.getDataX(h1.getDataSize(0)-1))

0 commit comments

Comments
 (0)