Public Member Functions |
| Scenery () |
| Set everything to defaults.
|
| Scenery (const Scenery &o) |
| Copy constructor.
|
Scenery * | clone () const |
| Cloner.
|
| Scenery (SmartPointer< Metric::Generic >, SmartPointer< Screen >, SmartPointer< Astrobj::Generic >) |
SmartPointer< Metric::Generic > | getMetric () |
| Get Metric.
|
void | setMetric (SmartPointer< Metric::Generic >) |
| Set Metric.
|
SmartPointer< Screen > | getScreen () |
| Get Screen object.
|
void | setScreen (SmartPointer< Screen >) |
| Set screen object.
|
SmartPointer< Astrobj::Generic > | getAstrobj () |
void | setAstrobj (SmartPointer< Astrobj::Generic >) |
double | getDelta () const |
void | setDelta (double) |
void | setRequestedQuantities (Quantity_t) |
void | setRequestedQuantities (std::string) |
Quantity_t | getRequestedQuantities () const |
std::string | getRequestedQuantitiesString () const |
size_t | getScalarQuantitiesCount () const |
void | setTlim (double) |
| set tlim_;
|
double | getTlim () const |
| get tlim_
|
void | rayTrace (size_t imin, size_t imax, size_t jmin, size_t jmax, Astrobj::Properties *data, double *impactcoords=NULL) |
void | operator() (size_t i, size_t j, Astrobj::Properties *data, double *impactcoords=NULL) |
void | fillElement (FactoryMessenger *fmp) |
| called from Factory
|
Ray-tracing scene.
An Scenery contains:
In addition, Quantities may be specified (or the default Quantity will be produced: generally Intensity). Not all Astrobj implement all Quantities. The order in which Quantities are listed is not relevant (it is not stored). A value of the integration step for the Photon's trajectory can be specified in Delta. It will be used as the initial step, which is adaptive. Possible Quantities:
- Intensity: the intensity that reaches the object, integrated over the line-of-sight;
- EmissionTime: date of emission;
- MinDistance: minimum distance between the Photon reaching each pixel and the Astrobj;
- FirstDistMin: last closest approach between Photon and Astrobj;
- Redshift;
- ImpactCoords: 8-coordinates of the object and photon at impact;
- Spectrum: I_{nu} computed at various values frequencies, corresponding to the Screen's Spectrometer.
Thus a fully populated Scenery XML looks like that:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Metric kind = "MetricKind">
<MetricProperties/>
</Metric>
<Screen>
<ScreenProperties/>
</Screen>
<Astrobj kind = "AstrobjKind">
<AstrobjParameters/>
</Astrobj>
<Quantities> Spectrum Intensity ...</Quantities>
<Delta> 1. </Delta>