Get the peak width of a curve at half the maximum Y value.
double fwhm( Curve & crv, double dYoffset = 0 )
Returns the peak width of a curve at half the maximum Y value.
EX1
// This is a self contained sample program for the function fwhm, // Its sample data is created at the beginning of the program. // To run the program, enter the following command in the Script window: // fwhm_ex1 // This will return the result like following: // fwhm_ex1 // It returns like: // The peak width of Data2_B at the half max = 2.56744 (with offset=0.5) void fwhm_ex1() { double dYoffset, dWx; Worksheet wks; wks.Create(); Dataset myXDs(wks,0); Dataset myYDs(wks,1); String strYName = myYDs.GetName(); //******* Create sample data ***************** myXDs.SetSize(11); myYDs.SetSize(11); myXDs[0]=0.56055; myYDs[0]=0.62197; myXDs[1]=1.19723; myYDs[1]=0.75321; myXDs[2]=2.18916; myYDs[2]=1.40942; myXDs[3]=2.79123; myYDs[3]=2.89872; myXDs[4]=3.39562; myYDs[4]=4.29957; myXDs[5]=3.96078; myYDs[5]=4.6933; myXDs[6]=4.59977; myYDs[6]=4.43081; myXDs[7]=5.02422; myYDs[7]=3.24964; myXDs[8]=5.45098; myYDs[8]=1.93723; myXDs[9]=6.51211; myYDs[9]=1.01569; myXDs[10]=7.50634; myYDs[10]=0.66762; //******** End of Sample Data Creation ******* Curve crv(myXDs,myYDs); dYoffset = 0.5; dWx = fwhm(crv,dYoffset); // Demonstration of fwhm printf("The peak width of %s at the half max = %g (with offset=%g)\n",strYName,dWx,dYoffset); }
The function used for fitting function parameter initialization.
peak_pos, get_exponent
origin.h