public S3Lsq() { String s = "Data fitted to power law (nonlinear case)"; df = new DatanFrame(getClass().getName(), s); // parameter input AuxJInputGroup ig = new AuxJInputGroup("Parameter input", ""); JLabel errorLabel = new JLabel(); ni[0] = new AuxJNumberInput("n", "number of data points (>=3)", errorLabel); ni[0].setProperties("n", true, 3); ni[0].setNumberInTextField(20); ig.add(ni[0]); ni[1] = new AuxJNumberInput("t_0", "first value of controlled variable (>=0)", errorLabel); ni[1].setProperties("t_0", false, 0.); ni[1].setNumberInTextField(0); ig.add(ni[1]); ni[2] = new AuxJNumberInput("delta_t", "step width of controlled variable (>=0)", errorLabel); ni[2].setProperties("delta_t", false, 0.); ni[2].setNumberInTextField(.1); ig.add(ni[2]); ni[3] = new AuxJNumberInput("x_1", "coefficient in front of exponential term (>0)", errorLabel); ni[3].setProperties("x_1", false, .000001); ni[3].setNumberInTextField(1.); ig.add(ni[3]); ni[4] = new AuxJNumberInput("x_2", "exponent (>=0)", errorLabel); ni[4].setProperties("x_2", false, 0.); ni[4].setNumberInTextField(2.); ig.add(ni[4]); ni[5] = new AuxJNumberInput("sigma", "size of measurement errors (>0)", errorLabel); ni[5].setProperties("sigma", false, 0.00001); ni[5].setNumberInTextField(.2); ig.add(ni[5]); df.add(ig); df.add(errorLabel); JButton goButton = new JButton("Go"); GoButtonListener gl = new GoButtonListener(); goButton.addActionListener(gl); df.add(goButton); df.pack(); df.toFront(); }