A model for magnetic reflectivity

The model described here is work in progress and this is only intended as a first draft of the model. It is not intended for general use.

Changes necessary

  • Implement faster calculation of multilayers - make use of repetition unit

Changes done

  • Perhaps the angle theta_m should be relative the quantization axis of the probe. That is as described above for the photon case but an offset of 90 deg for the neutron case. Then we do not have to “turn” the magnetization when refining.

  • There should probably be two dd_m parameters one dd_ml and one dd_mu so that also depletion in both the lower and upper layer can be modeled.

  • Neutron reflectivity calcs should be included.

  • Remove the slicing parameter from the instrument. - Done

  • Should perhaps define the magnetic roughness as the convolution between the chemical roughness and the magnetic roughness. This is to my opinion more physically reasonable. So sigma_m_real = sqrt(sigma_c2+ sigma_m2) - Done

  • magdens should be renamed to resdens.

  • A new parameter called resmag should be included to say how much of the total magnetic moment comes from the resonant magnetic species. - Done

  • Make a more ordered way to present the parameters in the reflectivity plugin. - Done

  • Include a separate slicing criterion for the off-diagonal components - Done.

  • Implement inline c coding of the reflectivity calculations to improve the speed. - Done it is about 3.5 faster than the previous python implementation.

Layer Parameters

Optical constants

f

The ordinary (tabualted) scattering length. For example fp.Fe for pure Fe, 0.5*fp.Fe + fp.O*0.5 for FeO (this should be in atomic percent).

b

The neutron scattering length, inserted as for f

xs_ai

The absorption cross section for neutrons.

fr

The resonant part of the scattering length (corrections to f close to an absorption edge). Note that this constant is scaled with magdens before added to f. Note that ftot=f+resdens*fr. This is the opposite as to the definition by Stephanov and Shina, thus fr = -(F11+F1-1)

fm1

The XMCD scattering term. Responsible for circular dichroism. fm1=F11-F1-1.

fm2

The XMLD scattering term. Responsible for linear dichroism. fm2=2F10-(F11+F1-1)

Densities

dens

The atomic density of the material in questions in units of atoms/AA3. The density of Fe is calculated as 2/2.8663

resmag

The density of the magnetic species relative to the resonant species.

resdens

The relative density of the resonant atomic species. In FeO (and a scattering length as defined above) it would correspond to 0.5.

Non-magnetic layer parameters

d

The thickness of the layer.

sigma_c

The chemical/structural roughness.

Magnetic parameters

sigma_m

The magnitude of the magnetic roughness.

mag

The magnetic moment of the resonant species. This is a scaling factor of the fm1 and fm2 parameters.

phi_m

The in-plane angle of the magnetization. An angle of zero is along the photon beam directions and 90 perpendicular to it.

theta_m

Angle of the magnetic moment relative to the surface of the sample. An angel of 0 corresponds to a in-plane magnetized sample and an angle of 90 deg means an perpendicular magnetized sample.

dmag_l

The relative change of the magnetization of the lower interface.

dmag_u

The relative enhancement of the magnetization of the upper interface.

dd_l

The shift of the magnetic moment profile for the lower interface.

dd_u

The shift of the magnetic moment profile for the upper interface.

sigma_ml

The magnetic part of the roughness of the lower interface layer.

sigma_mu

The magnetic part of the roughness of the upper interface layer.

Stack Parameters

Sample Parameters

Control flags

slicing

If yes the model will use roughness values and slice the sld profile up as given by the layer parameters. Otherwise the layers will only be boxes compress: If yes and slicing also is yes the model will merge layers with similar optical densities.

Slicing Parameters

slice_depth

This is the size of each layer that the model slices up the model into.

sld_buffer

An extra buffer added below …

sld_delta

To come..

sld_mult

To Come…

Compression parameters

dsld_max

Steps smaller than this parameter will be merged into thicker layers. This applies to the diagonal parts of the susceptibility matrix. The units are electrons.

dsld_offdiag_max

Same as dsld_max but this one applies to the off diagonal components.

dang_max

Not used and should be removed.