SMILE  v2.5
Schwarzschild Modelling Interactive expLoratory Environment
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
smile::CSchwDataDensGridClassic Class Reference

Schwarzschild data object for the classic grid-based density model. More...

#include <schwarzschild.h>

Inheritance diagram for smile::CSchwDataDensGridClassic:
Inheritance graph
[legend]
Collaboration diagram for smile::CSchwDataDensGridClassic:
Collaboration graph
[legend]

Public Member Functions

 CSchwDataDensGridClassic (const CDensity *density, unsigned int _numShells, double innerShellMass, double outerShellMass, unsigned int _linesPerSegment, double _grid_q, double _grid_p)
 create classic 3d-grid density Schwarzschild model for a given potential model (it is not used after constructor call)
 
virtual SCHWDATATYPE dataType () const
 descendant classes return their type
 
virtual std::string dataName () const
 string identificator of the class
 
virtual size_t whichCell (const double X, const double Y, const double Z) const
 return index of cell containing given coordinates, called from COrbitRuntimeSchwClassic to compute time spent in each cell
 
virtual void cellCenter (const size_t cell, double *X, double *Y, double *Z) const
 return coordinates of geometric center of a cell
 
size_t getCellsPerShell () const
 return number of cells in one radial shell (3*cellsPerSegment)
 
virtual double initCellMass (const size_t cell, const CDensity *density) const
 return the mass within a given cell
 
- Public Member Functions inherited from smile::CSchwDataDensGrid
 CSchwDataDensGrid (const CDensity *density)
 
virtual size_t numConstraints () const
 number of constraints that this kind of data object handles
 
virtual double getConstraint (size_t index) const
 return the value of the given constraint
 
virtual double getConstraintNormFactor (size_t index) const
 return a scaling coefficient which is used to normalize the penalty for constraint deviation in the optimization problem. More...
 
- Public Member Functions inherited from smile::CSchwDataBasicDens
 CSchwDataBasicDens (const CDensity *density)
 
virtual double getOrbitConstraint (size_t index, const CSchwInformation *info) const
 decode constraint value from an information object stored for a given orbit
 
virtual bool isSchwInformationCorrect (const CSchwInformation *info) const
 check compatibility of information object for an orbit with this data object
 

Static Public Member Functions

static const char * myName ()
 

Private Attributes

const unsigned int linesPerSegment
 Schwarzschild's scheme for dividing octant into three segments, each of them divided into linesPerSegment^2 squares.
 
const unsigned int cellsPerSegment
 
const unsigned int cellsPerShell
 
const unsigned int numCells
 
vectord shellRadius
 radii of concentric shells
 
vectord cellBoundary
 angles dividing segment into linesPerSegment parts
 
double grid_x
 
double grid_y
 
double grid_z
 coefficients of grid flattening (x/r, y/r, z/r - so that x*y*z=r^3)
 

Additional Inherited Members

- Public Types inherited from smile::CBasicSchwData
enum  SCHWDATATYPE {
  SD_UNKNOWN =0, SD_DENS =0x100, SD_KINEM =0x200, SD_DENS_SPATIAL_GRID =0x40,
  SD_DENS_SPHERICAL_HARMONIC =0x80, SD_DENS_GRIDCLASSIC =SD_DENS | SD_DENS_SPATIAL_GRID | 1, SD_DENS_GRIDCYLINDRICAL =SD_DENS | SD_DENS_SPATIAL_GRID | 2, SD_DENS_SHBSE =SD_DENS | SD_DENS_SPHERICAL_HARMONIC | 3,
  SD_DENS_SHMESH =SD_DENS | SD_DENS_SPHERICAL_HARMONIC | 4, SD_KINEM_SHELL =SD_KINEM| 1, SD_KINEM_ANGMOMDIST =SD_KINEM| 2
}
 Lists all possible variants of data objects. More...
 
- Protected Attributes inherited from smile::CSchwDataDensGrid
vectord cellMass
 integral of potential->rho() over the volume of each cell
 
vectord cellMassNorm
 approximate normalization for cell masses (order-of-magnitude expected mass of each cell, the same throughout each shell)
 
- Protected Attributes inherited from smile::CSchwDataBasicDens
double totalMass
 

Detailed Description

Schwarzschild data object for the classic grid-based density model.

The constraints are the masses contained in cells of a three-dimensional grid covering radii containing mass from innerShellMass to outerShellMass and using the angular division of the positive octant of space into three segments and their further division into NxN cells.


The documentation for this class was generated from the following files: