Index: trunk/FACT++/src/makedata.cc
===================================================================
--- trunk/FACT++/src/makedata.cc	(revision 14883)
+++ trunk/FACT++/src/makedata.cc	(revision 14885)
@@ -86,5 +86,5 @@
     if (!conf.DoParse(argc, argv))
         return 127;
-
+/*
     if (!conf.Has("source-name"))
     {
@@ -92,5 +92,5 @@
         return 1;
     }
-
+*/
     // ------------------ Eval config ---------------------
 
@@ -106,5 +106,4 @@
         time.SetFromStr(conf.Get<string>("date-time"));
 
-    const string source_name = conf.Get<string>("source-name");
     const double max_current = conf.Get<double>("max-current");
     const double max_zd      = conf.Get<double>("max-zd");
@@ -128,5 +127,9 @@
     cout << jd1 << "\n";
 
-    const string fDatabase = conf.Get<string>("source-database");
+    if (!conf.Has("source-name"))
+        return 1;
+
+    const string source_name = conf.Get<string>("source-name");
+    const string fDatabase   = conf.Get<string>("source-database");
 
     // ------------------ Precalc moon coord ---------------------
@@ -181,6 +184,9 @@
 
         // Current prediction
-        const double lc = angle*hrzm.alt*pow(disk, 6)/360/360;
-        const double cur = lc>0 ? 7.7+4942*lc : 7.7;
+        const double cang = sin(angle   *M_PI/180);
+        const double calt = sin(hrzm.alt*M_PI/180);
+
+        const double lc = cang==0 ? -1 : calt*pow(disk, 3)/sqrt(cang);
+        const double cur = lc>0 ? 8.1+94.6*lc : 8.1;
 
         // Relative  energy threshold prediction
@@ -205,5 +211,5 @@
 
         if (no_limits || (cur<max_current && 90-hrz.alt<max_zd))
-            cout << ratio*cur/7.7;
+            cout << ratio*cur/8.1;
         cout << ", ";
 
