SMILE  v2.5
Schwarzschild Modelling Interactive expLoratory Environment
Public Member Functions | Protected Attributes | List of all members
smile::CSchwDataDensSH Class Referenceabstract

Base class for variants of Schwarzschild density data objects based on spherical-harmonic expansion of density of both target model and orbits. More...

#include <schwarzschild.h>

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

Public Member Functions

 CSchwDataDensSH (const CDensity *density, size_t _Nang)
 
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 void computeDensityData (const CPointMassSet< double > &traj, vectord *data) const =0
 evaluate coefs for orbit trajectory data, called from COrbitRuntimeSchwSH, implemented differently in derived classes
 
size_t getNumCoefsAngularExpansion () const
 return number of coefficients in angular spherical-harmonic expansion
 
virtual void getCoefDecomposition (size_t index, double *n, int *l, int *m) const =0
 convenience function returning n,l,m for a given coef.index
 
- 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
 
- Public Member Functions inherited from smile::CBasicSchwData
virtual SCHWDATATYPE dataType () const =0
 descendant classes return their type
 
virtual std::string dataName () const =0
 string identificator of the class
 
virtual double getConstraintNormFactor (size_t) const =0
 return a scaling coefficient which is used to normalize the penalty for constraint deviation in the optimization problem. More...
 

Protected Attributes

const size_t Nang
 order of expansion in angular harmonics (lmax)
 
vectord coefConstraints
 required constraints of the model (specified by descendant classes)
 
- Protected Attributes inherited from smile::CSchwDataBasicDens
double totalMass
 

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...
 

Detailed Description

Base class for variants of Schwarzschild density data objects based on spherical-harmonic expansion of density of both target model and orbits.

Two derived classes share several virtual methods, and the runtime function computing coefs of expansion for an orbit is the same for both variants.


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