The Origin Family:

More Options:

 

Integration of Origin C into the Nonlinear Least Squares Fitter

The NLSF Define New Function dialog box and a graph illustrating a fit curve. Click on the image to see more images.

Origin C has been fully integrated into the Nonlinear Least Squares Fitter (NLSF) starting with Origin 7 SR2. By integrating Origin C into the NLSF, the process of defining a custom, real-world fitting function has been made more flexible, intuitive and user-friendly. By using Origin C to define your function, performance and speed are dramtically increased compared to previous versions.

The advantages to the union of the NLSF and Origin C are numerous:

Fitting is up to 20 times faster than in previous versions when you define your function using Origin C.

Custom parameter initialization routines for estimating the initial values for the parameters of the function. These routines can be developed directly in Code Builder and execute automatically when fitting.

The function can be defined directly in Code Builder, Origin C's programming interface. This allows you full access to Code Builder's capabilities. They include color-coded editing, syntax checking, and a modern, full-featured debugger (a first for the scientific software industry). Code Builder's debugging capabilities come in the form of break points, single step execution [including step in, step over, step out, etc.], and variable watch windows.

Technical Specifics

About the NLSF

The nonlinear least squares fitter (NLSF) in Origin ships with nearly 200 predefined fitting functions organized in various categories, such as Peak Functions, Chromatography functions, etc. In addition to these built-in fitting functions, Origin users can define their own custom functions to perform nonlinear curve fitting.

About Origin C

Origin C, Origin 7's new programming language, is an ANSI C compatible programming language that allows researchers to program useful routines in a familiar programming language. Routines can include simulation, data file processing, special functions, and more.

About the Integration of the NLSF and Origin C

To bring the two features together, the NLSF has been updated to include controls for defining fitting functions in Origin C as well as editing them in Code Builder. The fusion also brought about the creation of a new NLSF window called Parameter Initializations. This window allows you to define parameter initializations in Origin C in the same way you can define the actual function.

Defining your function

When defining a user-defined function in the NLSF, you can elect to define it in Origin C by enabling a 'Use Origin C' (formerly named 'Compile before use') check box. The syntax of the function can then be checked using Code Builder by clicking on the Edit in Code Builder button.

If the function yields an error, you can test it by enabling break points at specific problem areas. You can then execute the function and step through it using the Debug toolbar and the Variables and Watch windows.

View the Define New Function dialog showing an Origin C function Details
View the function being edited in Code Builder Details

Automatically initializing your function parameters

This environment also allows the user to develop custom parameter initialization routines for estimating initial values for the parameters of their custom function. Many useful Origin C functions, such as min, max, FWHM, etc. are provided to the user, who may then use combinations of these functions to obtain properties of their data sets, to determine initial parameter estimates for their fitting functions.

Enable the Use Origin C check box and click on the Edit in Code Builder button on the Parameter Initializations page. An Execute button is also provided which allows you to execute the Parameter Initializations code any time you want, effectively reinitializing the parameters.

View the Parameter Initializations dailog Details
View the parameter initializations being edited in Code Builder Details

 

 

 

 


OriginLab® Corporation © 1992-2003. All rights reserved.