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

Schwarzschild data object for the grid-based density model in cylindrical geometry. More...

#include <schwarzschild.h>

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

Public Member Functions

 CSchwDataDensGridCylindrical (const CDensity *density, size_t _numR, size_t _numz, size_t _numphi)
 create cylindrical-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
 
bool getCoefDecomposition (const size_t cell, size_t *ind_R, size_t *ind_z, size_t *ind_phi) const
 decodes the coefficient index into three coordinates; return true if the index is within boundaries of the grid and false otherwise
 
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 size_t numphi
 number of cells in azimuthal (phi) direction
 
const size_t numCells
 total number of cells in model
 
vectord gridR
 grid in cylindrical radius
 
vectord gridz
 grid in vertical dimension
 

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 grid-based density model in cylindrical geometry.

The constraints are the masses contained in cells of a three-dimensional grid which extends up to cylindrical radius Rmax and altitude zmax, and has NR*Nz*Nphi elements.


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