February 2008, Last modified 09 July 2015

This program provides a means of making interactive, graphical fits to neutron reflection data using multilayer models calculated using optical matrix methods. The parameters may be changed manually to explore the effect of different structural models or varied using a least squares algorithm. A simple model with up to four layers can be modelled with an additional continuously varying profile appropriate to a polymer at an interfaces with penetration of solvent. This program is capable of simultaneously fitting multiple data sets for which the contrast varies but with the same underlying physical structure. The program is an extension of lprof which allows similar models for a single data set and has the facility for automatic fitting of a sequence of data sets.

The program is intended for operation with Windows and can optionally be run with a GUI. The current version of is prepared using the MinGW Fortran compiler. The current version of cprof is 2.4 (27 June 2015).

The programs are written in FORTRAN and use the FITFUN fitting package and PGPLOT (T. J. Pearson, Caltech) graphics as modified by R. E. Ghosh from the ILL, Grenoble, France.

Installation It is recommended to run the program using the utility 'Prop' available from the ILL. Instruction for download and use of Prop are available from the ILL WWW site.

2. Use of Program

Instructions on the use of FITFUNS can be found in the documentation at the ILL, Grenoble.

The main options for the program are chosen from a 'Prelude' dialogue box that allows selection of the data format, number of layers, use of resolution function etc.

The default choices in the prelude can be changed by editing the appropriate .fcl file. Once the choices are made, the main program is controlled from a different interactive window:

The individual variables can be selected with a mouse and a new dialogue box appears that allows new values for parameter and the step size to be given. Other functions can be selected from the buttons or pull down menus. When display of data or a fit is calculated, it is shown in a separate graphichs window:

2.1 Data Files

Seven ASCII data formats can be read in the current version. These are:

The data format is selected in either the opening dialogue or the Clickfit 'Prelude'. A fuller description of the data formats is available at http://www.reflectometry.net/refdata.htm. The four column data set input has been added in August 2007. The 4th column provides information about Q resolution of the data. At present this resolution is not automatically incorporated in the calculation but information must be provided separately. The input routine is purely to provide convenience and avoid reformatting data.

2.2 Hints

In studies of complicated systems make sure that the model for the bare substrate fits the data measured for that system before proceeding to more complex systems. It is useful to build up from simple models (few layers) to more complex models (many layers) when trying to fit data. Check that the model is compatible with all contrasts before proceeding.

Resolution can be included in different ways: the normal function would be to assume a constant dQ/Q. A further option is either constant dQ or a combination of terms that have fixed values of dQ/Q and dQ. This resembles a function that approximates to fixed slits at various angles is available for scans made in this way (using the old version of D17 at the ILL.) Data from D17 is no longer normally collected in this way. Old versions of the program allowed definition of resolution in terms of the slit sizes etc but this. is no longer included in current versions.

At present the resolution from individual data sets is not used in calculating smearing even when information is provided in the fourth column (as no standard definition is available).

Users can experiment with the number of layers to make the profile in CPROF and the resolution. The default value of 50 may be slow if resolution smearing is used in the calculation. If thick films are being studied the resolution may be very important and it will not be possible to make rapid approximate fits with no resolution calculation.

The default options in these programs are for equal weighting of all data points in the fits. This is often found to be more satisfactory than weighting by the errors which are frequently not appropriately chosen. Systematic errors and variation in the resolution may be large compared with the random errors particularly at large reflectivity (small Q).

The J command (Extras) can be ued in CPROF to create a imple plot of the scattering length density profile that is used in the model. This is shown in the figure below:

2.3 Definitions

The program assumes that data for scattering length density is provided in units of 1 x 10-6 A-2. If the momentum transfer, Q, in the input data files is in A-1 then the thickness of layers must be given in A.

The following summary of definitions may be useful:

The following diagram indicates this arrangement schematically.

The scattering length density of each layer and the subphase can be set to a different value for each data set. The thickness and roughness are kept the same for modelling each data set.

The roughness for the top material and subsequent layers is given in Angstrom but the last uniform layer has no specific roughness as there is a continuous varying profile at the following interface. There is a separate facility to include 'roughness' for the profile calculation as a means of effectively smoothing the profile. Each of the steps can include some roughness that is defined as a fraction of the step length. This parameter should be small (typically 0.1 or less) and it not recommended to try and fit this parameter!

2.4 Models in CPROF

The following models for profiles are available in cprof:

  1. Exponential decay
  2. Linear profile
  3. Half-Gaussian
  4. Scaling law
  5. Complementary Gausian error function
  6. Parabolic profile (for polymer brushes).

These different profiles can added to the surface structure which consists of up to 4 uniform layers. The profile decays uniformly from the density of the highest number layer to that of the subphase. Please note that the models may not be appropriate or give physically meaningful parameters except for the physical systems that they are intended. For example, the scaling law model of Guiselin was developed for an air/solution interface.

2.5 References

A description of the methods used in these calculations is given in the Rutherford Appleton Laboratory Report: 'Adaptation of Methods in Multilayer Optics for the Calculation of Specular Neutron Reflection' by J. Penfold, No. RAL-88-088. Other details on the calculation of reflectivity profiles can be found in the books by O. S. Heavens, 'Optical Properties of Thin Solid Films', Dover and J. Lekner, 'Theory of Reflection', Nijhof.

Models 4 and 6 are described in O. Guiselin J. Phys. 50, 3407-3425 (1989) and E. P. K. Currie et al Physica B, 283 17-21 respectively.

Professor Adrian R. Rennie
Department of Physics, Uppsala University, Uppsala, Sweden

E-mail: Adrian.Rennie@physics.uu.se

Versions Use, Hints, Acknowledgements Contact

Top of Page

Program and documentation: © Copyright A. R. Rennie Last updated 9 July 2015