In std_samples.alternating_layers, we have ba.MaterialBySLD("Vacuum", 0, 0). If this is replaced by ba.Vacuum(), we get different results in Example.specular.TimeOfFlightReflectometry. Why? SLD or refractive index should not matter if set to zero.
Cannot reproduce.
Checks for duplication in coherent group of subparticles and computes FF for the unique ones.
For non-unique reuses the same FF with positional phase factor.
Incoherent particles (within one or few layout) are still not compared between themselves.
Resolves #78
Mikhail Svechnikov (b802a729) at 28 Mar 13:50
add comments
Checking for particles duplication implies the comparison of processed, resampled particles.
This MR implements the comparison functionality.
For classes containing other objects as pointers I see no other way than manually implementing the comparison function.
Mikhail Svechnikov (38f92fa2) at 22 Mar 18:28
restore example
To my knowledge yes, this can be done without touching the API.
Changes at IReParticle
and CoheringSubparticles
levels should be sufficient.
When probing magnetic domains in a layer with magnetic anisotropy perpendicular to the plane, the interaction of neutrons with the magnetic field above the sample surface should not be neglected.
The potential way to do it is to compute magnetic field distribution produced by domains using OOMMF or MUMAX. Then add "vacuum" layers on top of the sample, split it to domains and set magnetization from micromagnetic simulations.
Requested by Stellhorn/Kentzinger