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