Feature #1616

Envelope task #1438: === Physics ===

Feature #1645: == Graded layer and cross-layer particles ==

For correct computation of mean refractive index, no longer allow embedding particles in the semi-infinite top layer

Added by wuttke about 1 year ago. Updated 8 months ago.

Status:ResolvedStart date:19 Oct 2016
Priority:HighDue date:
Assignee:herck% Done:

0%

Category:-
Target version:Sprint 33

Description

As explained in the new Manual section »Wave propagation and scattering contributions« in chapter »Particle Assemblies«, wave propagation in a decorated layer depends on the mean refractive index, which must be computed as an average over contributions from the matrix and from the embedded particles, weighted with their respective volume fractions. This computation is impossible if particles are embedded in the semi-infinite top layer.

This is an urgent bug because it implies that many computations done with BornAgain are inaccurate.

To work around, we could correct all examples that have particles in the top layer by adding a decorated-air layer and moving the particle layout there.

In perspective, however, we should change the core API to preclude any particle decoration of the semi-infinite top and bottom layers. By the same token, we should simplify the API: multilayer constructors should already set a top and a bottom layer (or a uniform embedding medium for the SAS case). Users should only add finite layers in between.

History

#1 Updated by herck about 1 year ago

The mean refractive index in the semi-infinite top layer is the refractive index of the top layer (volume fraction of particles is zero). So no issue with the top layer. The same argument applies for the bottom layer.

Furthermore, using the average refractive index as the zeroth order is just a choice, even it is likely to produce better results. This means that our current approximation, using the layer refractive index as the zeroth order background, is not incorrect.

As for the API change, this should be discussed separately.

#2 Updated by wuttke about 1 year ago

  • Tracker changed from Bug to Feature
  • Priority changed from Urgent to High

not a bug if the implemented approximation is properly documented

#3 Updated by wuttke about 1 year ago

#4 Updated by wuttke about 1 year ago

  • Parent task changed from #1438 to #1645

#5 Updated by wuttke about 1 year ago

  • Related to deleted (Refactoring #1582: Correct model for dense particles on surface)

#6 Updated by herck 8 months ago

  • Status changed from New to Resolved
  • Assignee set to herck
  • Target version set to Sprint 33

When the user enables the usage of the mean refractive index without explicitly setting the number of slices for a layer, an extra layer will be generated automatically for the semi-infinite layers if needed (if they contain particles).

Also available in: Atom PDF