ppmd.coulomb.sph_harm module

class ppmd.coulomb.sph_harm.ALegendrePolynomialGen(maxl, psym='_P', tsym='theta', ctype='double', avoid_calls=False)

Bases: object

get_p_sym(l, m)
class ppmd.coulomb.sph_harm.ALegendrePolynomialGenEphemeral(maxl, psym='_P', tsym='theta', ctype='double', avoid_calls=False)

Bases: object

get_p_sym(l, m)
class ppmd.coulomb.sph_harm.LocalExpEval(L)

Bases: object

py_compute_phi_local(moments, disp_sph)

Computes the field at the podint disp_sph given by the local expansion in moments

class ppmd.coulomb.sph_harm.MultipoleDotVecCreator(L)

Bases: object

Class to compute multipole expansions and corresponding expansions that can be used to compute energies from local expansions by using a dot product.

Parameters

L (int) – Number of expansion terms.

dot_vec_multipole(sph, charge, arr_vec, arr_mul)

For a charge at the point sph computes the coefficients at the origin and appends them onto arr that can be used in a dot product to compute the energy.

py_dot_vec(sph, charge, arr)

For a charge at the point sph computes the multipole moments at the origin and appends them onto arr.

class ppmd.coulomb.sph_harm.MultipoleExpCreator(L)

Bases: object

Class to compute multipole expansions.

Parameters

L (int) – Number of expansion terms.

multipole_exp(sph, charge, arr)

For a charge at the point sph computes the multipole moments at the origin and appends them onto arr.

py_multipole_exp(sph, charge, arr)

For a charge at the point sph computes the multipole moments at the origin and appends them onto arr.

class ppmd.coulomb.sph_harm.PRadiusModifier(lpmv_gen, radius_symbol=False)

Bases: object

get_line(lx, mx)
get_p_sym(l, m)
get_radius_sym(l)
class ppmd.coulomb.sph_harm.SphCoeffGen(maxl, sym='_sqrtmf', ctype='double')

Bases: object

get_denominator_sym(mx)
get_numerator_sym(mx)
class ppmd.coulomb.sph_harm.SphExpGen(maxl, esym='_E', psym='phi', ctype='double', avoid_calls=False)

Bases: object

get_e_sym(m)
class ppmd.coulomb.sph_harm.SphGen(maxl, sym='_Y', theta_sym='theta', phi_sym='phi', ctype='double', avoid_calls=False, radius_symbol=False)

Bases: object

get_radius_sym(n)
get_y_sym(n, m)
class ppmd.coulomb.sph_harm.SphGenEphemeral(maxl, sym='_Y', theta_sym='theta', phi_sym='phi', ctype='double', avoid_calls=False, radius_symbol=False)

Bases: object

get_radius_sym(n)
get_y_sym(n, m)
ppmd.coulomb.sph_harm.SphSymbol

alias of ppmd.coulomb.sph_harm._Symbol

ppmd.coulomb.sph_harm.cmplx_mul(a, b, x, y)
ppmd.coulomb.sph_harm.py_local_exp(L, sph, charge, arr)

For a charge at the point sph computes the local moments at the origin and appends them onto arr.

ppmd.coulomb.sph_harm.py_multipole_exp(L, sph, charge, arr)

For a charge at the point sph computes the multipole moments at the origin and appends them onto arr.