package sansmodels; public class Lorentz extends SANSModel{ private double scale, length, background; //Default constructor public Lorentz() { scale = 100.0; length = 50.0; background = 0.0; setNumberOfParameters(3); String[] parameters = {"Scale", "Screening Length (A)", "Background (cm-1)"}; setParametersText(parameters); } public Lorentz(double inScale, double inLength, double inBackground) { scale = inScale; length = inLength; background = inBackground; setNumberOfParameters(3); String[] parameters = {"Scale", "Screening Length (A)", "Background (cm-1)"}; setParametersText(parameters); } public double getFormFactor(double inX) { return scale/(1.0+ inX*inX*length*length) *getStructureFactor().calculate(inX) + background; } public void setParameters(double[] inParameters) { scale = inParameters[0]; length = inParameters[1]; background = inParameters[2]; } public double[] getParameters() { double[] outParameters = new double[3]; outParameters[0] = scale; outParameters[1] = length; outParameters[2] = background; return outParameters; } }