#pragma rtGlobals=1 // Use modern global access method. // convolve with gaussian, to ancount for the intrument response Function myfitfun(pw,yw,xw) : FitFunc Wave pw, xw, yw WAVE Lyyz = root:Global_w1, Lyyx = root:Global_w1 // pw parameter or coef wave // yw y-wave // xw x-wave (even if the y-wave is scaled, you need to supply this!) // Lyyz and Lyyx are global waves // pw[0] = nonresonant background // pw[1] = phase // pw[2] = FWHM for gauss // pw[3] = amplitude #1 // pw[4] = resonance frequency #1 // pw[5] = homgeneous linewidth #1 variable NRa, phasea, Aa, Gia, NRc, phasec, Ac, Gic, nrm, Ginh variable xnpts = numpnts(xw), ynpts = numpnts(xw), i make/N=(xnpts)/D/O/C gw make/N=(ynpts)/D/O/C Chiwsum, Chiwaaa, ChiRwaaa, Chiwaac, ChiRwaac Ginh = pw[0] // linewidth of the gauss (fwhm) NRa = pw[1] phasea = pw[2] NRc = pw[3] phasec = pw[4] duplicate/O xw deltawa, deltawc, deltagw ////////////////////////////////////////////////////////////////////////////////////////////////////////// Aa = pw[5] // Amplitude deltawa = pw[6]-xw // position Gia= pw[7] // fwhm/2 //Nonresonant susceptibility and phase Chiwaaa = NRa*cmplx(cos(phasea), sin(phasea) ) //Resonant peak with homgeneous linewidth Gh ChiRwaaa = cmplx(Aa*deltawa/(deltawa^2+Gia^2), Aa*Gia/(deltawa^2+Gia^2)) Chiwaaa += ChiRwaaa Aa = pw[8] // Amplitude deltawa = pw[9]-xw // position Gia= pw[10] // fwhm/2 //Resonant peak with homgeneous linewidth Gh ChiRwaaa = cmplx(Aa*deltawa/(deltawa^2+Gia^2), Aa*Gia/(deltawa^2+Gia^2)) Chiwaaa += ChiRwaaa Chiwaaa *=-Lyyx*Cos(0/60*Pi) ////////////////////////////////////////////////////////////////////////////////////////////////////////// Ac = pw[11] // Amplitude deltawc = pw[6]-xw // position Gic= pw[7] // fwhm/2 //Nonresonant susceptibility and phase Chiwaac = NRc*cmplx(cos(phasec), sin(phasec) ) //Resonant peak with homgeneous linewidth Gh ChiRwaac = cmplx(Ac*deltawc/(deltawc^2+Gic^2), Ac*Gic/(deltawc^2+Gic^2)) Chiwaac += ChiRwaac Ac = pw[12] // Amplitude deltawc = pw[9]-xw // position Gic= pw[10] // fwhm/2 //Resonant peak with homgeneous linewidth Gh ChiRwaac = cmplx(Ac*deltawc/(deltawc^2+Gic^2), Ac*Gic/(deltawc^2+Gic^2)) Chiwaac += ChiRwaac Chiwaac *=Lyyz ////////////////////////////////////////////////////////////////////////////////////////////////////////// Chiwsum = chiwaaa+chiwaac //Normalized gaussian centered around zero deltagw = xw-xw[(xnpts+1)/2] // center around zero, assuming sorted x-wave gw = exp(-((deltagw)^2)/(2*(Ginh/(2*sqrt(2*ln(2))))^2)) // gaussian with linewidth Ginh nrm = sum(gw, -inf, inf); gw/=nrm //normalize convolve/A gw, Chiwsum // convolve with gaussian, to ancount for the intrument response yw = magsqr(Chiwsum) End