Index: trunk/MagicSoft/Mars/mastro/MObservatory.cc
===================================================================
--- trunk/MagicSoft/Mars/mastro/MObservatory.cc	(revision 8324)
+++ trunk/MagicSoft/Mars/mastro/MObservatory.cc	(revision 8337)
@@ -53,4 +53,9 @@
 }
 
+// --------------------------------------------------------------------------
+//
+// Default constructor sets name and title of instace.
+// Default location is kMagic1
+//
 MObservatory::MObservatory(const char *name, const char *title)
 {
@@ -60,4 +65,8 @@
 }
 
+// --------------------------------------------------------------------------
+//
+// For example "MObservator(MObservatory::kMagic1)"
+//
 MObservatory::MObservatory(LocationName_t key, const char *name, const char *title)
 {
@@ -65,4 +74,26 @@
 
     SetLocation(key);
+}
+
+// --------------------------------------------------------------------------
+//
+// Calls SetLocation
+//
+MObservatory::MObservatory(Double_t lon, Double_t lat, const char *name)
+{
+    Init();
+
+    SetLocation(lon, lat, 0, name);
+}
+
+// --------------------------------------------------------------------------
+//
+// Calls SetLocation
+//
+MObservatory::MObservatory(Double_t lon, Double_t lat, Double_t h, const char *name)
+{
+    Init();
+
+    SetLocation(lon, lat, h, name);
 }
 
@@ -106,4 +137,22 @@
 }
 
+// --------------------------------------------------------------------------
+//
+// Longitude/Latitude [rad]
+// Height             [m]
+//
+void MObservatory::SetLocation(Double_t lon, Double_t lat, Double_t h, const char *name)
+{
+    fLongitude = lon;
+    fLatitude  = lat;
+    fHeight    = h;
+
+    fSinLatitude = TMath::Sin(fLatitude);
+    fCosLatitude = TMath::Cos(fLatitude);
+
+    if (name)
+        fObservatoryName = name;
+}
+
 void MObservatory::Print(Option_t *) const
 {
Index: trunk/MagicSoft/Mars/mastro/MObservatory.h
===================================================================
--- trunk/MagicSoft/Mars/mastro/MObservatory.h	(revision 8324)
+++ trunk/MagicSoft/Mars/mastro/MObservatory.h	(revision 8337)
@@ -32,9 +32,11 @@
     Double_t fHeight;                //! [m] height of observatory
 
-    void Init(const char *name, const char *title);
+    void Init(const char *name=NULL, const char *title=NULL);
 
 public:
     MObservatory(const char *name=NULL, const char *title=NULL);
     MObservatory(LocationName_t key, const char *name=NULL, const char *title=NULL);
+    MObservatory(Double_t lon, Double_t lat, const char *name="<n/a>");
+    MObservatory(Double_t lon, Double_t lat, Double_t h, const char *name="<n/a>");
 
     void Copy(TObject &obj) const
@@ -50,4 +52,5 @@
 
     void SetLocation(LocationName_t name);
+    void SetLocation(Double_t lon, Double_t lat, Double_t h=0, const char *name=NULL);
 
     void Print(Option_t *o=0) const;
