Index: trunk/ppSim/src/ppSimLoadStars.c
===================================================================
--- trunk/ppSim/src/ppSimLoadStars.c	(revision 14667)
+++ trunk/ppSim/src/ppSimLoadStars.c	(revision 14813)
@@ -14,6 +14,6 @@
     psMetadata *astroRecipe = psMetadataLookupPtr(NULL, config->recipes, PSASTRO_RECIPE);
     if (!astroRecipe) {
-	psError(PSASTRO_ERR_CONFIG, false, "Can't find recipe %s", PSASTRO_RECIPE);
-	return NULL;
+        psError(PSASTRO_ERR_CONFIG, false, "Can't find recipe %s", PSASTRO_RECIPE);
+        return NULL;
     }
 
@@ -25,5 +25,5 @@
     float scale = psMetadataLookupF32(NULL, config->arguments, "SCALE") * M_PI / 3600.0 / 180.0; // Plate scale (radians/pixel)
     float expTime = psMetadataLookupF32(NULL, config->arguments, "EXPTIME"); // Exposure time
-   
+
     // Size of FPA
     psRegion *bounds = ppSimFPABounds (fpa);
@@ -40,7 +40,7 @@
     psArray *refStars = psastroLoadRefstars(config);
     if (!refStars || refStars->n == 0) {
-	psError(PS_ERR_UNKNOWN, false, "Unable to find reference stars.");
-	psFree(refStars);
-	return NULL;
+        psError(PS_ERR_UNKNOWN, false, "Unable to find reference stars.");
+        psFree(refStars);
+        return NULL;
     }
     psLogMsg("ppSim", PS_LOG_INFO, "Adding %ld reference stars", refStars->n);
@@ -51,25 +51,28 @@
     // Conversion loop
     for (long i = 0; i < refStars->n; i++) {
-	ppSimStar *star = ppSimStarAlloc ();
+        ppSimStar *star = ppSimStarAlloc ();
 
-	pmAstromObj *ref = refStars->data[i]; // Reference star
-	star->ra  = ref->sky->r; // RA of star
-	star->dec = ref->sky->d; // Dec of star
-	star->mag = ref->Mag;       // Magnitude of star
+        pmAstromObj *ref = refStars->data[i]; // Reference star
+        star->ra  = ref->sky->r; // RA of star
+        star->dec = ref->sky->d; // Dec of star
+        star->mag = ref->Mag;       // Magnitude of star
 
-	// Convert to x,y position on tangent plane, in pixels
-	float div = (sin(star->ra) * sin(dec0) + cos(star->dec) * cos(dec0) * cos(star->ra - ra0)) * scale;
-	float xi = cos(star->dec) * sin(star->ra - ra0) / div;
-	float eta = (sin(star->dec) * cos(dec0) - cos(star->dec) * sin(dec0) * cos(star->ra - ra0)) / div;
+        // Convert to x,y position on tangent plane, in pixels
+        float div = (sin(star->ra) * sin(dec0) + cos(star->dec) * cos(dec0) * cos(star->ra - ra0)) * scale;
+        float xi = cos(star->dec) * sin(star->ra - ra0) / div;
+        float eta = (sin(star->dec) * cos(dec0) - cos(star->dec) * sin(dec0) * cos(star->ra - ra0)) / div;
 
-	// Apply rotation, make FPA center of boresite
-	star->x = cos(pa) * xi - sin(pa) * eta + x0fpa;
-	star->y = sin(pa) * xi + cos(pa) * eta + y0fpa;
+        // Apply rotation, make FPA center of boresite
+        star->x = cos(pa) * xi - sin(pa) * eta + x0fpa;
+        star->y = sin(pa) * xi + cos(pa) * eta + y0fpa;
 
-	// Convert magnitude to peak flux
-	star->flux = powf(10.0, -0.4 * (star->mag - zp)) * expTime;
-	star->peak = star->flux / sqrt(2.0*M_PI) / seeing;
-	stars->data[oldSize + i] = star;
+        // Convert magnitude to peak flux
+        star->flux = powf(10.0, -0.4 * (star->mag - zp)) * expTime;
+        star->peak = star->flux / (2.0*M_PI * PS_SQR(seeing));
+        stars->data[oldSize + i] = star;
+
+        psTrace("ppSim", 10, "Adding catalogue star: %.1f,%.1f --> %.2f\n", star->x, star->y, star->flux);
     }
+    stars->n = oldSize + refStars->n;
     psFree(refStars);
 
