From c7519c012d3bdb0f567b9f91226be15080d8cb3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ne=C4=8Dada?= Date: Thu, 12 Nov 2015 16:06:31 +0200 Subject: [PATCH] Notes: List of MSTM subroutines Former-commit-id: aba2b4af9fbc9a14610f5e276c1c186452a86149 --- misc/subroutines-mstm | 85 +++++++++++++++++++++++++++++++++++++++++++ worknotes.lyx | 30 +++++++++++++++ 2 files changed, 115 insertions(+) create mode 100644 misc/subroutines-mstm diff --git a/misc/subroutines-mstm b/misc/subroutines-mstm new file mode 100644 index 0000000..355bf31 --- /dev/null +++ b/misc/subroutines-mstm @@ -0,0 +1,85 @@ +ricbessel # ricatti-bessel psi +richankes # ricatti-hankel xi +cricbessel +crichankel # (same with complex argument) +cspherebessel # spherical Bessel jn(z), yn(z) +vcfunc # vector coupling coefficients C(m,n|k,l|m+k,w), w = |n-l|,...n+l +normalizedlegendre # normalized asssociated legendre functions +rotcoef # Generalized spherical functions +taufunc # vector spherical harmonics, normalized +pifunc # vector spherical harmonics, ? +planewavecoef # regular vswf expansion coefficients for a plane wave +gaussianbeamcoef # regular vsfw expansion for a gaussian beam +sphereplanewavecoef # plane wave expansion coefficients at sphere origins +axialtrancoefrecurrence # axial translation ceifficients +axialtrancoefinit +tranordertest # test to determine convergence of regular vswf addition theorem +atcadd +atcdim +moffset +gentrancoef # calculates the vwh translation coefficients for a general translation from one origin to another +cartosphere # cartesian to spherical coorsinates +eulerrotation # euler rotation of a point specified in cartesian coords +ephicoef +planewavetruncationorder # test to determine max order of vswf expansion of a plane wave at distance r +vwhcalc # calculates the cartesian components of the vswf at position rpos +vwhaxialcalc # svwf calculation for an axial translation +twobytwoinverse # inverse of a 2x2 matrix +transfer + +mpisetup + +module spheredata (lots of declarations!, read all the shit) +(...) + +module miecoefdata +miecoefcalc # calculation of the max order of sphere expansions and storage of mie coefficients +readtmatrix # reads and stores a PARTICLE T matrix +lrmodetran # transformation between lr and te tm basis +mieoa # optically aptive lorenz/mie coefficients +getmiedataall # retrieve the array of mie data +getmiedataone # retrieve mie data for a single sphere +onemiecoeffmult # multiplies coefficients for sphere i by appropriate lm coefficient +multmiecoeffmult # generalized mie coefficient mult +dotproduct # vectorproduct for each rhs element of coefficient array + +module translation +hostconfiguration # calculates lists for identifying host and interior sphere +rottranmtrxsetup # sets up the stored translation matrices and sets other constants +rottranmtrxclear # clear the stored translation matrices +sphereinteraction # the general sphere interaction driver +external_to_external_expansion # outgoing translation operator: a(i) = H(i-j) a(j) +external_to_internal_expansion # +m1_to_the_n # sign flipped for odd degrees +rottranfarfield # far field formula for outgoing vswf translation +farfieldtranslationerror # correction ter for hybrid bcgm solution +rottran # the vectorized rotation translation-rotation operation +spheregaussianbeamcoef # GB coefficients for sphere-centered expansion, obtained via translation +rotvec # rotation of expansion coefficients amn by euler angles + +module scatprops +tranorders # determinaniot of maximum orders for target-based expansions +amncommonorigin # translation of sphere-based expansions to common target origin +lrsphereqeff # general efficiency factor calculation +qefficiencyfactors # calling routine for efficiency calculation +scatteringmatrix # scattering amplitude sa and matrix sm calculation +s11expansion +fosmcalc # azimuth-averaged scattering matrix +formexpansion # determine the generalized sf expansion for the azimuth-averaged scatt. matrix +ranorientscatmatrix +ranorientscatmatrixcalc + +module nearfield +packcoefficient +unpackcoefficient +nearfieldspherepart # the field at point xg generated by the spheres +nearfieldincidentpart # the incident field at point xg using a regular vswh expansion +nearfieldincidentcoef # reshaped array of incident field coefficients +nearfieldpointcalc # ! +nearfieldgridcalc + +module solver +tmatrixsoln # calculation of T-mat. via solution of interaction eqs for a generalized plane wave expansion +fixedorsoln # solution of interaction exuations for a fixed orientation +cbicgff # hybrid bcgm, using far field translation +cbicg # bcgm iteration solver diff --git a/worknotes.lyx b/worknotes.lyx index e9465bd..6ffa62b 100644 --- a/worknotes.lyx +++ b/worknotes.lyx @@ -427,6 +427,27 @@ Options for random orientation calculations ? \end_layout +\begin_layout Subsubsection +Interesting subroutines +\end_layout + +\begin_layout Itemize +rottranfarfield: it states +\begin_inset Quotes eld +\end_inset + +far field formula for outgoing vswf translation +\begin_inset Quotes erd +\end_inset + +. + What is that and how does it differ from whatever else (near field?) formula? +\end_layout + +\begin_layout Itemize + +\end_layout + \begin_layout Section Code integration \end_layout @@ -735,6 +756,15 @@ Numerics: 3, it seems that their SVW cutoff is around 12. \end_layout +\begin_layout Section +TODO +\end_layout + +\begin_layout Itemize +Päivi's suggestion: suppress the dipole and let it interact only with the + higher multipoles. +\end_layout + \begin_layout Standard \begin_inset CommandInset bibtex LatexCommand bibtex