| ►Csmile::CBasicICGenerator | Base class for creating initial conditions for orbit library |
| Csmile::CICGeneratorDensityEllipsoidal | Sample point coordinates using ellipsoidal equidensity surface approximation; this method is generally inferior to CICGeneratorDensitySampler |
| Csmile::CICGeneratorDensitySampler | Sample points coordinates proportionally to local density, no velocities assigned |
| Csmile::CICGeneratorDensitySpherical | Sample points from a spherical mass model |
| Csmile::CICGeneratorPrincipalPlane | Initial conditions from principal-plane start space |
| Csmile::CICGeneratorRandomE | Initial conditions from random start space at given energy |
| Csmile::CICGeneratorSchw | Class that combines two samplers – for positions and velocities |
| Csmile::CICGeneratorStationary | Initial conditions from stationary start space |
| Csmile::CICGeneratorVelocityEddington | Sample velocities from the Eddington distribution function for equivalent spherical system |
| Csmile::CICGeneratorVelocityJeansAxi | Sample velocities from Jeans equation for an axisymmetric system |
| Csmile::CICGeneratorVelocityJeansSph | Sample velocities from the spherical Jeans equation |
| Csmile::CICGeneratorYalpha | Initial conditions from Y-alpha start space |
| ►Csmile::CBasicInformation | Parent class for data container objects used to store various data and exchange it between objects |
| Csmile::COrbitInformation< NumT > | Information object containing orbit analysis results |
| Csmile::CPericenterInformation< NumT > | Information object for pericenter data (distribution of angular momentum at pericenter passages) |
| Csmile::CPoincareInformation | Information object to store points from the Poincare surface of section |
| Csmile::CSchwInformation | Information object that keeps density data for all variants of Schwarzschild data objects |
| Csmile::CTrajSampleInformation< NumT > | Information object keeping a trajectory sample (to generate an N-body model from a Schwarzschild model) |
| Csmile::CVelPerturberInformation< NumT > | Information object for velocity perturber class (keep track of accumulated energy change due to relaxation) |
| ►Csmile::CBasicIOSnapshot | The abstract class implementing reading and writing snapshots; derived classes take the filename as the argument of the constructor |
| Csmile::CIOSnapshotGadget | GADGET snapshot format; needs UNSIO library |
| Csmile::CIOSnapshotNemo | NEMO snapshot format |
| Csmile::CIOSnapshotText | Text file with three coordinates, possibly three velocities and mass, space or tab-separated |
| ►Csmile::CBasicOdeIntegrator | Basic class for numerical integrators of ODE system |
| Csmile::COdeIntegratorDOP853 | 8th order Runge-Kutta integrator from Hairer,Norsett&Wanner |
| Csmile::COdeIntegratorHermite | Hermite integrator that uses information about force derivatives (jerk) in a 4th-order predictor-corrector scheme with only two force evaluations per timestep |
| Csmile::COdeIntegratorIAS15 | 15-th order implicit Runge-Kutta scheme from Rein & Spiegel, 2014, MNRAS (adapted from Rebound) |
| Csmile::COdeIntegratorLeapfrog | Low-order leapfrog method provided for treecode, which has discontinuous potential/forces and is poorly handled by Runge-Kutta integrator |
| Csmile::COdeIntegratorOdeint< Stepper > | A template class for integrators based on the boost::numeric::odeint library |
| ►Csmile::CBasicOrbitFilteringFnc | Parent class for orbit filtering functions which evaluate whether an orbit should be used (in some calculation) |
| Csmile::CAngMomOrbitFilteringFnc | Orbit filtering function that evaluates the z-component of angular momentum of an orbit |
| Csmile::CBinnedMassRefinementFnc | A mass refinement function is used to create an Nbody snapshot with unequal mass particles |
| Csmile::CCentrophilicOrbitFilteringFnc | Orbit filtering function that selects centrophilic orbits |
| Csmile::CChaosOrbitFilteringFnc | Orbit filtering function that evaluates chaotic properties of an orbit, based on threshold in frequency diffusion rate and in Lyapunov exponent value, multiplied by some predefined factor |
| Csmile::CEnergyOrbitFilteringFnc | Example of evaluation function for multimass Nbody models, which sorts orbits in total energy |
| Csmile::CRadiusMassRefinementFnc | Another mass refinement function that aims to reduce the average mass of particles inside a given radius |
| Csmile::CShellOrbitFilteringFnc | Orbit filtering function based on whether an orbit belongs to a given energy shell |
| ►Csmile::CBasicOrbitRuntimeFnc | Defines a routine which may be called after each integration timestep to perform user-specific data collection |
| Csmile::COrbitRuntimePericenter | Class for recording pericenter passages and analyzing their distribution to figure out if the orbit is centrophilic or not |
| Csmile::COrbitRuntimePoincare | Compute the Poincare surface of section for an orbit |
| Csmile::COrbitRuntimeSchwAngMomDist | Runtime function recording binned angular momentum distribution |
| Csmile::COrbitRuntimeSchwDensGrid | Runtime function corresponding to classic 3d-grid Schwarzschild density data object |
| Csmile::COrbitRuntimeSchwDensSH | Runtime function corresponding to Schwatzschild density data object based on spherical-harmonic expansion of potential coefficients at radial grid points or for some radial basis functions (serves both variants) |
| Csmile::COrbitRuntimeSchwKinemShell | Runtime function recording shell-based kinematic data (time spent in each shell and radial/tangential velocity dispersion in a shell) |
| Csmile::COrbitRuntimeTrajectory | Class for recording orbit trajectory and doing various analysis (frequency, Lyapunov exponent, etc) |
| Csmile::COrbitRuntimeTrajSample | Trajectory sampler (record a given number of unsorted points from the trajectory, to be used in creating an Nbody model from the Schwarzschild model) |
| Csmile::COrbitRuntimeVelPerturber | Class for applying random perturbations on velocity during orbit integration, mimicking the effect of two-body relaxation |
| ►Csmile::CBasicOrbitRuntimeFncCreator | Defines a basic class that creates some sort of runtime function for any orbit in the orbit library |
| Csmile::COrbitRuntimePericenterCreator | Corresponding creator class for the pericenter analysis runtime function |
| Csmile::COrbitRuntimePoincareCreator | Corresponding creator class for Poincare timestep fnc |
| Csmile::COrbitRuntimeSchwAngMomDistCreator | Corresponding creator class for angular momentum Schw runtime function |
| Csmile::COrbitRuntimeSchwDensGridCreator | Corresponding creator class for classic Schw runtime function |
| Csmile::COrbitRuntimeSchwDensSHCreator | Corresponding creator class for SH Schw runtime function |
| Csmile::COrbitRuntimeSchwKinemShellCreator | Corresponding creator class for shell-kinematic Schw runtime function |
| Csmile::COrbitRuntimeTrajectoryCreator | Corresponding creator class for Trajectory analysis timestep fnc |
| Csmile::COrbitRuntimeTrajSampleCreator | Corresponding creator class for trajectory sampler |
| Csmile::COrbitRuntimeVelPerturberCreator | Corresponding creator class for the velocity perturber runtime function |
| ►Csmile::CBasicQuadraticOptimizationSolver< NumT > | The interface class for various third-party quadratic optimization solvers |
| Csmile::COptimizationSolverBPMPD< NumT > | Interface to the standalone program BPMPD |
| Csmile::COptimizationSolverCVXOPT< NumT > | Interface to the LP/QP solver CVXOPT written in Python |
| Csmile::COptimizationSolverGLPK< NumT > | Interface to the linear optimization solver GLPK |
| Csmile::CBasicQuadraticOptimizationSolver< smNumType > | |
| ►Csmile::CBasicSchwData | Base class for Schwarzschild Data objects |
| ►Csmile::CBasicShellSchwData | Base class for storing kinematic information on a radial grid |
| Csmile::CSchwDataAngMomDist | Schwarzschild data object to manage kinematic data in the form of binned angular momentum distribution as a function of energy |
| Csmile::CSchwDataKinemShell | Schwarzschild data object to handle (rudimentary) kinematic data, in the form of radial and tangential velocity dispersions in a number of radial shells |
| ►Csmile::CSchwDataBasicDens | Base class for density data objects |
| ►Csmile::CSchwDataDensGrid | Base class for Schwarzschild data objects with grid-based density model |
| Csmile::CSchwDataDensGridClassic | Schwarzschild data object for the classic grid-based density model |
| Csmile::CSchwDataDensGridCylindrical | Schwarzschild data object for the grid-based density model in cylindrical geometry |
| ►Csmile::CSchwDataDensSH | Base class for variants of Schwarzschild density data objects based on spherical-harmonic expansion of density of both target model and orbits |
| Csmile::CSchwDataDensSHBSE | Variant of Schwarzschild density data object based on basis-set expansion in terms of Zhao(1995) basis set for density of both required profile and of orbits |
| Csmile::CSchwDataDensSHMesh | Variant of Schwarzschild density data object based on spherical-harmonic expansion of potential coefficients at radial mesh points |
| ►Csmile::CBasicSchwModel | Base class for Schwarzschild Modelling driver objects |
| Csmile::CSchwModelQuadOpt | The class for performing Schwarzschild modelling of density and kinematic data from the theoretical point of view (without "observational errors") |
| ►Csmile::CBasicSpectrumAnalyzer | Basic class for various methods of spectral analysis |
| Csmile::CSpectrumAnalyzerHunter | Spectrum analysis based on Hunter's DFT method |
| Csmile::CConfigCore | Common configuration parameters for various tasks in CSmileCore |
| Csmile::CConfigFile | Utility class for handling an INI file |
| Csmile::CConfigOrbit | General parameters for orbit integration and classification |
| Csmile::CConfigPotential | Structure that contains parameters for all possible potentials |
| ►Csmile::CDensity | Base class defining density model (without corresponding potential) |
| Csmile::CDensityEllipsoidal | Ellipsoidal model |
| Csmile::CDensityExpDisk | Exponential disk with several variants of vertical profile and spiral structure |
| Csmile::CDensityIsochrone | Isochrone density profile, triaxial |
| Csmile::CDensityMGE | Multi-Gaussian expansion of a triaxial density profile |
| Csmile::CDensityNFW | Modified Navarro-Frenk-White density profile, triaxial |
| Csmile::CDensityPerfectEllipsoid | Triaxial Perfect Ellipsoid density profile |
| Csmile::CDensityPlummer | Plummer density profile, triaxial |
| Csmile::CDensitySersic | Sersic profile, triaxial |
| ►Csmile::CPotential | Base class for potential-density model including potential derivatives (=forces) |
| Csmile::CPotentialAxisymmetrized | A helper class for representing axisymmetrized versions of the given potential and/or density model |
| Csmile::CPotentialComposite | A composite potential which consists of several other potential types, plus a possible black hole and a rotating reference frame |
| Csmile::CPotentialCylSpline | Angular expansion of potential in azimuthal angle with coefficients being 2d spline functions of R,z |
| Csmile::CPotentialDehnen | Dehnen(1993) double power-law model |
| Csmile::CPotentialDirect | Direct computation of potential for any density profile, using double integration over space |
| Csmile::CPotentialFerrers | Ferrers density profile (with finite size R and density (1-(r/R)^2)^2) |
| Csmile::CPotentialHarmonic | Potential of a constant-density (harmonic) core with different frequencies of oscillations in three directions |
| Csmile::CPotentialLog | Logarithmic potential, with possible core |
| Csmile::CPotentialMiyamotoNagai | Miyamoto-Nagai axisymmetric potential; equivalent to Plummer if A=0 |
| Csmile::CPotentialNB | Frozen N-body potential calculated by tree-code algorithm (based on hackcode1.c) |
| Csmile::CPotentialScaleFree | Simple power-law potential/density pair: rho ~ r^-gamma |
| ►Csmile::CPotentialSH | Parent class for all potential expansions based on spherical harmonics for angular variables |
| Csmile::CPotentialBSE | Basis-set expansion on the Zhao(1996) basis set (alpha models) |
| Csmile::CPotentialBSECompact | Basis-set expansion using spherical Bessel functions (e.g.Allen et al.1990) |
| Csmile::CPotentialScaleFreeSH | Angular expansion of scale-free potential in spherical harmonics |
| Csmile::CPotentialSpline | Spherical-harmonic expansion of potential with coefficients being spline functions of radius |
| Csmile::CPotentialSpherical | Spherically-symmetric arbitrary density profile potential provided by CMassModel |
| Csmile::CPotentialNB::cell | CELL: structure used to represent internal nodes of tree |
| Csmile::CFileInputText | Class for reading data from a text file, possibly accompanied by binary files for the orbit library |
| Csmile::CFileOutputText | Class for writing data to a text file, possibly accompanied by binary files for the orbit library |
| Csmile::CDensityMGE::CGaussian | Defines one component of the multi-gaussian expansion |
| Csmile::CMassModel | Class defining a spherical mass model |
| ►Csmile::CMassModelAxisymmetric | Class for representing an axisymmetric density model |
| Csmile::CMassModelAxisymmetricJeans | An extension of axisymmetric model which uses anisotropic Jeans equations to compute velocity dispersions in cylindrical coordinates |
| ►Csmile::CMatrix< NumT > | Interface for matrix storage |
| Csmile::CMatrixDense< NumT > | Matrix interface class that actually holds the entire matrix and returns its elements |
| Csmile::CMatrixDiagonal< NumT > | Matrix interface class that provides a diagonal matrix |
| ►Csmile::CMatrix< smNumType > | |
| Csmile::CMatrixBasicSchwModel | Matrix interface class that passes the linear matrix elements from Schwarzschild model object to the solver |
| Csmile::CNemoSnapshotWriter | Helper class that writes NEMO-compatible snapshot file |
| ►Csmile::COdeSystem | Basic class of ODE system used in the orbit integrator |
| Csmile::COrbit | Class for performing a single orbit integration |
| Csmile::COrbitDesc | Container for orbit initial conditions and information objects |
| Csmile::COrbitLauncher | An utility class that keeps all necessary data to start orbit integration |
| Csmile::COrbitLibrary | The collection of orbits |
| Csmile::CPointMassSet< NumT > | An array of particles with positions, velocities and masses |
| Csmile::CPointMassSet< double > | |
| Csmile::CPointMassSet< float > | |
| Csmile::CPointMassSetHandler< NumT > | A helper object for computing the virial ratio for a set of point masses |
| Csmile::CPointMassSetHandler< float > | |
| Csmile::CPosPoint< NumT > | Data-only class containing 3 coordinates |
| Csmile::CPosVelPoint< NumT > | Data-only class containing 3 coordinates and 3 velocities |
| Csmile::CPosVelPoint< double > | |
| Csmile::CPosVelPoint< float > | |
| Csmile::CSpectralLine | Definition of one spectral line in one-dimensional time series (nothing to do with spectroscopy!:) |
| Csmile::CSplineApprox | Penalized linear least-square fitting problem |
| Csmile::CTriangle | Defines a triangle with indexed vertices referring to points from the trajectory |
| Csmile::CPotentialNB::node | NODE: data common to BODY and CELL structures |
| ►CQMainWindow | |
| Csmile::CSmileGUI | The main GUI window class |
| ►CQObject | |
| Csmile::CNbodyExportStatWorker | Worker object that calculates statistics after Nbody export (currently, computes virial ratio) |
| Csmile::COrbitIntWorker | Worker object that runs single orbit integration in a separate thread |
| Csmile::COrbitLibWorker | Worker object that runs orbit library integration (for use in multiple parallel threads) |
| Csmile::COutputHookQProcess | Helper class to capture diagnostic and progress messages from running BPMPD process, and redirect them to the main SMILE program via my_message() |
| Csmile::CSchwarzschildWorker | Worker object that runs Schwarzschild model optimization solver |
| Csmile::CSmileConsole | The console version of application is implemented in this class |
| Csmile::CSmileCore | Class that provides all core computational functionality |
| ►CQThread | |
| Csmile::CTriangThread | Helper thread that performs Delaunay triangulation with the help of external program 'qdelaunay' |
| ►CQwtPlotPicker | |
| Csmile::QwtPlotPicker2 | Helper class for displaying coordinates on a 2d plot picker with scientific numeric format string |
| ►CQwtPlotZoomer | |
| Csmile::QwtPlotZoomer2 | Helper class for displaying coordinates on a 2d plot zoomer with scientific numeric format string |
| Csmilepot | Defines a wrapper class that is used in constructing NEMO potential and acceleration objects from a SMILE potential that is specified by parameters in an ini file, or by a potential coefficients file |
| Csmile::StringVariant | Simple string-based variant implementation that allows the user to easily convert between simple numeric/string types |