Feature #762

Reorganize sky models

Added by Knödlseder Jürgen almost 12 years ago. Updated almost 11 years ago.

Status:ClosedStart date:02/17/2013
Priority:NormalDue date:
Assigned To:Knödlseder Jürgen% Done:

100%

Category:-Estimated time:12.00 hours
Target version:00-08-00
Duration:

Description

The sky models have actually a double logic, with major spatial classes such as point source, extended models and diffuse models that reflect themselves in the implementation of the GModelSky class. This is not really necessary.

GModelSky should therefore become a real class instead of an abstract class, and the derived classes GModelPointSource, GModelExtendedSource and GModelDiffuseSource should be removed. The GModelSky::type method needs to be implemented for this purpose, and the method should return the type string dependent on the spatial model type.

The spatial model type, implemented by the base class GModelSpatial should be declinated in the following derived classes:
  • GModelSpatialPointSource
  • GModelSpatialRadial
  • GModelSpatialElliptical
  • GModelSpatialDiffuse

The GModelSpatialPointSource is the existing GModelSpatialPtsrc class that simply needs to be renamed, all other classes are abstract base classes from which the particular spatial models derived. Below a graphical representation of the new organization.

spatial-reorganisation.jpg (108 KB) Knödlseder Jürgen, 02/17/2013 01:15 PM

GModel-new.jpg (33.2 KB) Knödlseder Jürgen, 02/17/2013 11:43 PM

GModelSpatial-new.jpg (69.8 KB) Knödlseder Jürgen, 02/17/2013 11:43 PM

Spatial-reorganisation Gmodel-new Gmodelspatial-new

Recurrence

No recurrence.


Subtasks

Action #763: Rework GModelSky class and remove formerly derived classe...ClosedKnödlseder Jürgen

Action #764: Reorganize spatial model classesClosedKnödlseder Jürgen

History

#1 Updated by Knödlseder Jürgen almost 12 years ago

#2 Updated by Knödlseder Jürgen almost 12 years ago

  • Assigned To set to Knödlseder Jürgen

#3 Updated by Knödlseder Jürgen almost 12 years ago

  • Due date set to 02/17/2013
  • Start date set to 02/17/2013

due to changes in a related task

#4 Updated by Mayer Michael almost 12 years ago

That sounds like a good plan. The structure becomes more transparent.

#5 Updated by Knödlseder Jürgen almost 12 years ago

The sky models have been reorganized. The new top level organization of GModel is shown below:

GModelSky is no longer abstract, the classes GModelPointSource, GModelExtendedSource and GModelDiffuseSource have been removed.

The new organization of the spatial component GModelSpatial is shown below:

Note that all classes have been renamed, so existing code needs to be adapted to the new naming scheme. All radial models derive now from GModelSpatialRadial while all diffuse models derive from GModelSpatialDiffuse. The way is now open to implement elliptical models, starting with the implementation of the GModelSpatialElliptical base class (see #755, and also #754).

#6 Updated by Knödlseder Jürgen almost 12 years ago

All code now in devel branch.

#7 Updated by Knödlseder Jürgen almost 11 years ago

  • Status changed from Feedback to Closed

Also available in: Atom PDF