Index: trunk/MagicSoft/Mars/mimage/MHillasExt.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHillasExt.cc	(revision 3576)
+++ trunk/MagicSoft/Mars/mimage/MHillasExt.cc	(revision 3666)
@@ -47,4 +47,8 @@
 // fConc1    removed
 //
+// Version 3:
+// ----------
+// fMaxDist  added. Distance between center and most distant used pixel
+//
 //
 // WARNING: Before you can use fAsym, fM3Long and fM3Trans you must
@@ -96,4 +100,6 @@
     fM3Long  =  0;
     fM3Trans =  0;
+
+    fMaxDist = -1;
 }
 
@@ -109,4 +115,5 @@
     *fLog << " - 3.Moment Long  [mm]  = " << fM3Long  << endl;
     *fLog << " - 3.Moment Trans [mm]  = " << fM3Trans << endl;
+    *fLog << " - Max.Dist       [mm]  = " << fMaxDist << endl;
 }
 
@@ -123,4 +130,5 @@
     *fLog << " - 3.Moment Long  [deg] = " << fM3Long *geom.GetConvMm2Deg() << endl;
     *fLog << " - 3.Moment Trans [deg] = " << fM3Trans*geom.GetConvMm2Deg() << endl;
+    *fLog << " - Max.Dist       [deg] = " << fMaxDist*geom.GetConvMm2Deg() << endl;
 }
 
@@ -146,6 +154,7 @@
     const UInt_t npixevt = evt.GetNumPixels();
 
-    Int_t maxpixid = 0;
-    Float_t maxpix = 0;
+    Int_t maxpixid  = 0;
+    Float_t maxpix  = 0;
+    Float_t maxdist = 0;
 
     for (UInt_t i=0; i<npixevt; i++)
@@ -160,4 +169,8 @@
         const Double_t dx = gpix.GetX() - hil.GetMeanX();      // [mm]
         const Double_t dy = gpix.GetY() - hil.GetMeanY();      // [mm]
+
+        const Double_t dist = dx*dx+dy*dy;
+        if (dist>maxdist)
+            maxdist=dist;                                      // [mm^2]
 
         Double_t nphot = pix.GetNumPhotons();                  // [1]
@@ -197,4 +210,6 @@
     fM3Trans = m3y<0 ? -pow(-m3y, 1./3) : pow(m3y, 1./3);      // [mm]
 
+    fMaxDist = TMath::Sqrt(maxdist);                           // [mm]
+
     SetReadyToSave();
 
Index: trunk/MagicSoft/Mars/mimage/MHillasExt.h
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHillasExt.h	(revision 3576)
+++ trunk/MagicSoft/Mars/mimage/MHillasExt.h	(revision 3666)
@@ -20,4 +20,6 @@
     Float_t fM3Trans; // [mm] 3rd moment (e-weighted) along minor axis
 
+    Float_t fMaxDist; // Distance between center and most distant used pixel
+
 public:
     MHillasExt(const char *name=NULL, const char *title=NULL);
@@ -29,4 +31,6 @@
     Float_t GetM3Trans() const { return fM3Trans; }
 
+    Float_t GetMaxDist() const { return fMaxDist; }
+
     Int_t Calc(const MGeomCam &geom, const MCerPhotEvt &pix, const MHillas &hil);
 
@@ -36,5 +40,5 @@
     void Set(const TArrayF &arr);
 
-    ClassDef(MHillasExt, 2) // Storage Container for extended Hillas Parameter
+    ClassDef(MHillasExt, 3) // Storage Container for extended Hillas Parameter
 };
 #endif
Index: trunk/MagicSoft/Mars/mimage/MHillasSrcCalc.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MHillasSrcCalc.cc	(revision 3576)
+++ trunk/MagicSoft/Mars/mimage/MHillasSrcCalc.cc	(revision 3666)
@@ -114,5 +114,4 @@
 Int_t MHillasSrcCalc::Process()
 {
-
     if (!fHillasSrc->Calc(fHillas))
     {
Index: trunk/MagicSoft/Mars/mimage/MNewImagePar.cc
===================================================================
--- trunk/MagicSoft/Mars/mimage/MNewImagePar.cc	(revision 3576)
+++ trunk/MagicSoft/Mars/mimage/MNewImagePar.cc	(revision 3666)
@@ -44,4 +44,7 @@
 //  - added fInnerLeakage2
 //  - added fInnerSize
+//  - added fUsedArea
+//  - added fCoreArea
+// 
 // 
 /////////////////////////////////////////////////////////////////////////////
@@ -92,4 +95,7 @@
     fNumCorePixels = -1;
 
+    fUsedArea = -1;
+    fCoreArea = -1;
+
     fNumSaturatedPixels = -1;
     fNumHGSaturatedPixels = -1;
@@ -105,4 +111,7 @@
     fNumUsedPixels = 0;
     fNumCorePixels = 0;
+
+    fUsedArea = 0;
+    fCoreArea = 0;
 
     fNumSaturatedPixels = 0;
@@ -136,14 +145,18 @@
             continue;
 
+        // Get geometry of pixel
+        const Int_t pixid = pix.GetPixId();
+        const MGeomPix &gpix = geom[pixid];
+
         // count used and core pixels
         if (pix.IsPixelCore())
+        {
             fNumCorePixels++;
+            fCoreArea += gpix.GetA();
+        }
 
         // count used pixels
         fNumUsedPixels++;
-
-        const Int_t pixid = pix.GetPixId();
-
-        const MGeomPix &gpix = geom[pixid];
+        fUsedArea += gpix.GetA();
 
         Double_t nphot = pix.GetNumPhotons();
@@ -165,24 +178,24 @@
 	// count inner pixels: To dependent on MAGIC Camera --> FIXME
 
-	if (pixid<397){
-	  fInnerSize += nphot;
-	  if(pixid>270){
-	    edgepixin2 += nphot;
-	    if(pixid>330)
-	      edgepixin1 += nphot;
-	  }
-	}
+        if (pixid<397){
+            fInnerSize += nphot;
+            if(pixid>270){
+                edgepixin2 += nphot;
+                if(pixid>330)
+                    edgepixin1 += nphot;
+            }
+        }
 
 	// Compute Concetration 1 -2 
 
         if (nphot>maxpix1)
-	  {
+        {
             maxpix2  = maxpix1;
             maxpix1  = nphot;                            // [1]
             continue;                                    // [1]
-	  }
-	
+        }
+
         if (nphot>maxpix2)
-	  maxpix2 = nphot;                             // [1]
+            maxpix2 = nphot;                             // [1]
     }
     
Index: trunk/MagicSoft/Mars/mimage/MNewImagePar.h
===================================================================
--- trunk/MagicSoft/Mars/mimage/MNewImagePar.h	(revision 3576)
+++ trunk/MagicSoft/Mars/mimage/MNewImagePar.h	(revision 3666)
@@ -13,15 +13,17 @@
 {
 private:
-    Float_t fLeakage1;           // (photons in most outer ring of pixels) over fSize
-    Float_t fLeakage2;           // (photons in the 2 outer rings of pixels) over fSize
-    Float_t fInnerLeakage1;      // (photons in most outer rings of inner pixels) over fInnerSize
-    Float_t fInnerLeakage2;      // (photons in the 2 outer rings of inner pixels) over fInnerSize
-    Float_t fInnerSize;          //
+    Float_t fLeakage1;             // (photons in most outer ring of pixels) over fSize
+    Float_t fLeakage2;             // (photons in the 2 outer rings of pixels) over fSize
+    Float_t fInnerLeakage1;        // (photons in most outer rings of inner pixels) over fInnerSize
+    Float_t fInnerLeakage2;        // (photons in the 2 outer rings of inner pixels) over fInnerSize
+    Float_t fInnerSize;            //
 
-    Float_t fConc;               // [ratio] concentration ratio: sum of the two highest pixels / fSize
-    Float_t fConc1;              // [ratio] concentration ratio: sum of the highest pixel / fSize
+    Float_t fConc;                 // [ratio] concentration ratio: sum of the two highest pixels / fSize
+    Float_t fConc1;                // [ratio] concentration ratio: sum of the highest pixel / fSize
 
-    Short_t fNumUsedPixels;      // Number of pixels which survived the image cleaning
-    Short_t fNumCorePixels;      // number of core pixels
+    Float_t fUsedArea;             // Area of pixels which survived the image cleaning
+    Float_t fCoreArea;             // Area of core pixels
+    Short_t fNumUsedPixels;        // Number of pixels which survived the image cleaning
+    Short_t fNumCorePixels;        // number of core pixels
     Short_t fNumHGSaturatedPixels; // number of pixels with saturating hi-gains
     Short_t fNumSaturatedPixels;   // number of pixels with saturating lo-gains
@@ -41,4 +43,7 @@
     Short_t GetNumCorePixels() const { return fNumCorePixels; }
 
+    Float_t GetNumUsedArea() const { return fUsedArea; }
+    Float_t GetNumCoreArea() const { return fCoreArea; }
+
     Short_t GetNumSaturatedPixels() const { return fNumSaturatedPixels; }
     Short_t GetNumHGSaturatedPixels() const { return fNumHGSaturatedPixels; }
