documentation:tutorial
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
documentation:tutorial [2012/04/05 23:36] – 142.103.140.43 | documentation:tutorial [2015/09/09 09:43] (current) – macke | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== Tutorial 1 ===== | ||
+ | |||
+ | This tutorial is a step by step instruction for the most basic functionality of ReMagX - structural fits of reflectivity data. | ||
+ | It should give you a comphrehensive introduction and tips on how to use ReMagX. \\ | ||
+ | The files for this tutorial can be downloaded in the download section of this webpage. | ||
+ | |||
+ | ==== Sample definition ==== | ||
+ | |||
+ | The sample we want to analyze has the following structure | ||
+ | - substrate SrTiO3 (STO) (assumed infinitely thick) | ||
+ | - first layer LaCoO3 (LCO). The thickness is around 160 Angstrom. | ||
+ | - second layer vaccuum (air). (assumed infinitely thick) | ||
+ | |||
+ | All layers are assumed to grow well defined on the substrate with a perovskite crystal structure. | ||
+ | |||
+ | To insert this information into ReMagX you should first add or remove as much layers as necessary (via the speed buttons or the menu). In the end you should have 3 rows with the layer names " | ||
+ | |||
+ | Set the thickness of layer 1 as specified above. | ||
+ | Set db to the short description of chemical formulas provided above. | ||
+ | Set the roughness sigma to a starting value to 1 for each layer. Set the roughness for air to zero. | ||
+ | Since we don't do magnetic reflectivity deltam and betam should be set to zero. | ||
+ | The refractive index delta and beta should be small values. They are not known at this moment. Insert the values as provided in the table. | ||
+ | |||
+ | In the end the table should look like: | ||
+ | |||
+ | ^ layers ^ thickness ^ db ^ delta ^ beta ^ sigma ^ deltam ^ betam ^ | ||
+ | ^ air | -- | vacuum | 0 | 0 | 0 | 0 | 0 | | ||
+ | ^ 1 | 160 | LCO | 3e-4 | 3e-4 | 1 | 0 | 0 | | ||
+ | ^ bulk | -- | STO | 1e-4 | 1e-4 | 1 | 0 | 0 | | ||
+ | |||
+ | |||
+ | |||
+ | ==== Prepare ==== | ||
+ | |||
+ | Since the program is very complex one should take a look into several tabs and check some values before doing the reflectivity calculation. | ||
+ | |||
+ | * const. energy settings | ||
+ | - set the energy of the incident photons to 1000 eV. | ||
+ | |||
+ | * X-Axis | ||
+ | - set "qz max" to 0.6. If the edit field is disabled click the checkbox "use dataset x-range for simulation" | ||
+ | - number of points should be set to 300. If the edit field is disabled go to the tab datasets and disable the checkbox "use measurement x-range for simulation" | ||
+ | - The " | ||
+ | |||
+ | * simulation parameters | ||
+ | - The epsilon value is important for the matrix-formalism. Since we are using the Parratt-formalism the value is meaningless | ||
+ | - The full width half maximum of angular resolution should be set to a small value 0.0001 | ||
+ | - for simulation speed reasons the fast convolution checkbox should be enabled. In most cases this is the best option. | ||
+ | - All post modifications should be disabled and the averaging should be set to 0 | ||
+ | |||
+ | * Polarization | ||
+ | - set the incoming beam 1 to sigma-polarization | ||
+ | |||
+ | * optical constants database | ||
+ | - the optical constants presets should be set to " | ||
+ | |||
+ | * Magneto-Optics | ||
+ | - We want to do structural fits and no magnetic fits. Therefore activate "no magnetization" | ||
+ | |||
+ | * Preferences in the menu | ||
+ | - The algorithm should be set to Parratt as this is the fastest algorithm. For structural fits it is perfectly suited. | ||
+ | - As we want to analyze some reflectivity data the scattering type should be set to " | ||
+ | - The roughness model should be set to Nevot& | ||
+ | - At the moment we are not using the script functionality. Disable script execution for a little bit speed improvement | ||
+ | - The standard computational precision is double. Since Parratt is very stable the precision double is always a good option | ||
+ | |||
+ | All settings are saved in Tut1.all provided with the Tutorial files. The file can be loaded via the speed button or via the menu entry "Load state" | ||
+ | |||
+ | ==== Calculate reflectivity curve ==== | ||
+ | |||
+ | In the bottom right of the main window you should see the radio buttons " | ||
+ | Change Mode to monochromatic and press button " | ||
+ | |||
+ | Play around with the values in the layers tables and see how the curve changes. An easy method to do this is by clicking on a table entry one time and then use the scrollbar below the table to change that value. This is a very useful tool for manual fitting. | ||
+ | |||
+ | |||
+ | ==== Retrieving the refractive index ==== | ||
+ | |||
+ | As for now the simulation uses not the real refractive indices. Off-resonance scattering factors are tabulated for each element. With these factors the refractive index can be calculated. The X-ray database website provided in the links section on this webpage is capable to build compatible tables. In both cases the chemical formulas of each compound (of each layer) and the density are required. The " | ||
+ | |||
+ | The created tables are processes automatically by ReMagX. To do this the files should have the same names as in the column db with file name extension .db. These files can be found in the tutorial zip-file too. They should be in the same folder as the .all file Tut1.all. | ||
+ | The refractive indices for the selected energy are loaded by right clicking on the layer table and then clicking on "Get delta/beta from database" | ||
+ | |||
+ | The table should look like: | ||
+ | |||
+ | ^ layers ^ thickness ^ db ^ delta ^ beta ^ sigma ^ deltam ^ betam ^ | ||
+ | ^ air | -- | vacuum | 0 | 0 | 0 | 0 | 0 | | ||
+ | ^ 1 | 160 | LCO | 9.86007E-04 | ||
+ | ^ bulk | -- | STO | 9.00363E-04 | ||
+ | |||
+ | |||
+ | ==== Prepare measurement data ==== | ||
+ | |||
+ | So far we have done some simulation of reflectivity curves. To fit some measurements one has prepare the measurements to load into ReMagX. ReMagX needs the data in a column text format. The decimal point must be " | ||
+ | For standard reflectivity (const-energy) scans one has to provide two columns: the momentum transfer qz (in units 1/A) and the reflected intensity R0. | ||
+ | |||
+ | ==== Load Datasets ==== | ||
+ | |||
+ | Click on "Load Dataset" | ||
+ | |||
+ | The seperator for this file is the tabulator which is the default setting. | ||
+ | Click on preview to see if everything is fine. Click on Ok. | ||
+ | |||
+ | In the tab " | ||
+ | Before the data can be used you have to provide additional information about this measurement. | ||
+ | This information should be written in the table right below the list of available datasets. | ||
+ | Change following entrys. | ||
+ | - energy: Set it to 900 eV | ||
+ | - (angular) resolution: Should be 0.0001 | ||
+ | - Multiplicator: | ||
+ | - Translation: | ||
+ | - qz-Translation: | ||
+ | - polarization 1: The measurement was taken with sigma-light polarization. So keep the value or simply write an " | ||
+ | - polarization 2: not used for this monochromatic measurement | ||
+ | - Type, File, and Datapoints cannot be changed. | ||
+ | |||
+ | Double click on the dataset again to activate the changes for this measurement. You should see in the tab for example " | ||
+ | |||
+ | Load the new optical constants for this energy as we did before. Now you can start the reflectivity simulation by clicking on " | ||
+ | |||
+ | The file in this state is saved as Tut2.all | ||
+ | |||
+ | ==== Prepare for fitting ==== | ||
+ | |||
+ | The first step should be a manual coarse fitting of the curve as the fitting algorithms are not as good as humans to determine the structure of curve. Especially the thicknesses should be set to a more reliable number. | ||
+ | |||
+ | Very close to the initial values a much better fit of the thickness fringes can be achieved by setting layer 1 to a thickness of 150A and both roughnesses to 3 Angstrom. | ||
+ | |||
+ | ==== Fitting a reflectivity curve ==== | ||
+ | |||
+ | As final step you should mark the values you want to fit. This is pretty easy. But first think which values you want to fit. In this case we want to do a structural fit. That means the thicknesses and roughnesses. | ||
+ | So right click on the thickness cell and click on fit. Do the same for the roughness of the substrate and of the film. The cells should be marked red. Additionally we want to fit the scaling factor of the measurement. Go to the tab " | ||
+ | |||
+ | In the " | ||
+ | |||
+ | The last paremter we should set is the qz-window in which the error function is calculated (chi-square). This can be done in the tab " | ||
+ | |||
+ | In the tab " | ||
+ | |||
+ | The current state you can find in Tut3.all | ||
+ | |||
+ | In the last step the fit can be started in the tab " | ||
+ | The result is plotted during the fitting procedure. | ||
+ | |||
+ | |||
+ | |||
+ | |||