BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Specular reflection and transmission coefficients in a layer in case of scalar interactions between the layers and the scattered particle.
Definition at line 29 of file ScalarFlux.h.
Public Member Functions | |
ScalarFlux (complex_t kz, Spinor TR) | |
Spinor | getKz () const override |
Returns z-part of the two wavevector eigenmodes. More... | |
complex_t | getScalarKz () const |
complex_t | getScalarR () const |
complex_t | getScalarT () const |
Spinor | R1min () const override |
Spinor | R1plus () const override |
Spinor | R2min () const override |
Spinor | R2plus () const override |
Spinor | T1min () const override |
Spinor | T1plus () const override |
The following functions return the transmitted and reflected amplitudes for different incoming beam polarizations and eigenmodes. More... | |
Spinor | T2min () const override |
Spinor | T2plus () const override |
Private Attributes | |
const complex_t | m_kz |
Signed vertical wavevector component k_z. More... | |
const Spinor | m_min |
const Spinor | m_plus |
const Spinor | m_TR |
Transmission and reflection coefficient. More... | |
ScalarFlux::ScalarFlux | ( | complex_t | kz, |
Spinor | TR | ||
) |
Definition at line 19 of file ScalarFlux.cpp.
|
overridevirtual |
|
inline |
complex_t ScalarFlux::getScalarR | ( | ) | const |
Definition at line 72 of file ScalarFlux.cpp.
complex_t ScalarFlux::getScalarT | ( | ) | const |
Definition at line 77 of file ScalarFlux.cpp.
|
overridevirtual |
Implements IFlux.
Definition at line 52 of file ScalarFlux.cpp.
References getScalarR(), and m_min.
|
overridevirtual |
Implements IFlux.
Definition at line 32 of file ScalarFlux.cpp.
References Spinor::Zero().
|
overridevirtual |
Implements IFlux.
Definition at line 62 of file ScalarFlux.cpp.
References Spinor::Zero().
|
overridevirtual |
Implements IFlux.
Definition at line 42 of file ScalarFlux.cpp.
References getScalarR(), and m_plus.
|
overridevirtual |
Implements IFlux.
Definition at line 47 of file ScalarFlux.cpp.
References getScalarT(), and m_min.
|
overridevirtual |
The following functions return the transmitted and reflected amplitudes for different incoming beam polarizations and eigenmodes.
Implements IFlux.
Definition at line 27 of file ScalarFlux.cpp.
References Spinor::Zero().
|
overridevirtual |
Implements IFlux.
Definition at line 57 of file ScalarFlux.cpp.
References Spinor::Zero().
|
overridevirtual |
Implements IFlux.
Definition at line 37 of file ScalarFlux.cpp.
References getScalarT(), and m_plus.
|
private |
Signed vertical wavevector component k_z.
Definition at line 52 of file ScalarFlux.h.
Referenced by getKz(), and getScalarKz().
|
private |
Definition at line 62 of file ScalarFlux.h.
|
private |
Definition at line 61 of file ScalarFlux.h.
|
private |
Transmission and reflection coefficient.
In the manual called A^{-} = m_TR(0) and A^{+} = m_TR(1). Values of the transmitted/reflected (=down/up propagating) wavefunction at top boundary of the layer (resp. at the bottom of the top air/vacuum layer).
Definition at line 59 of file ScalarFlux.h.
Referenced by getScalarR(), and getScalarT().