Index: sansmodels/src/sans/models/ParallelepipedModel.py
===================================================================
--- sansmodels/src/sans/models/ParallelepipedModel.py	(revision 975ec8e8211549489759b5a5ffe3b60607de065b)
+++ sansmodels/src/sans/models/ParallelepipedModel.py	(revision 2cb89e7643de78c7f4cf32435454270403afcfb9)
@@ -33,7 +33,7 @@
     	List of default parameters:
          scale           = 1.0 
-         short_edgeA     = 35.0 [A]
-         longer_edgeB    = 75.0 [A]
-         longuest_edgeC  = 400.0 [A]
+         short_a         = 35.0 [A]
+         long_b          = 75.0 [A]
+         longer_c        = 400.0 [A]
          contrast        = 5.3e-006 [1/A²]
          background      = 0.0 [1/cm]
@@ -54,11 +54,11 @@
         self.name = "ParallelepipedModel"
         ## Model description
-        self.description =""" Calculates the form factor for a rectangular solid with uniform scattering length density.
+        self.description =""" Form factor for a rectangular solid with uniform scattering length density.
 		
 		scale:Scale factor
-		short_edgeA: Shortest edge of the parallelepiped [A]
-		longer_edgeB: Longer edge of the parallelepiped [A]
-		longuest_edgeC: Longuest edge of the parallelepiped [A]
-		constrast: particle_sld - solvent_sld
+		short_a: length of short side of the parallelepiped [A]
+		long_b: length of long side of the parallelepiped [A]
+		longer_c: length of longer side of the parallelepiped [A]
+		contrast: particle_sld - solvent_sld
 		background:Incoherent Background [1/cm]"""
        
@@ -66,7 +66,7 @@
         self.details = {}
         self.details['scale'] = ['', None, None]
-        self.details['short_edgeA'] = ['[A]', None, None]
-        self.details['longer_edgeB'] = ['[A]', None, None]
-        self.details['longuest_edgeC'] = ['[A]', None, None]
+        self.details['short_a'] = ['[A]', None, None]
+        self.details['long_b'] = ['[A]', None, None]
+        self.details['longer_c'] = ['[A]', None, None]
         self.details['contrast'] = ['[1/A²]', None, None]
         self.details['background'] = ['[1/cm]', None, None]
@@ -76,5 +76,5 @@
 
 		## fittable parameters
-        self.fixed=['short_edgeA.width', 'longer_edgeB.width', 'longuest_edgeC.width', 'parallel_phi.width', 'parallel_psi.width', 'parallel_theta.width']
+        self.fixed=['short_a.width', 'long_b.width', 'longer_c.width', 'parallel_phi.width', 'parallel_psi.width', 'parallel_theta.width']
         
         ## parameters with orientation
Index: sansmodels/src/sans/models/c_extensions/parallelepiped.c
===================================================================
--- sansmodels/src/sans/models/c_extensions/parallelepiped.c	(revision d5bd424df5f89d2c8ded171915c1b0df1c52c5a8)
+++ sansmodels/src/sans/models/c_extensions/parallelepiped.c	(revision 2cb89e7643de78c7f4cf32435454270403afcfb9)
@@ -22,7 +22,7 @@
 	// Fill paramater array
 	dp[0] = pars->scale;
-	dp[1] = pars->short_edgeA;
-	dp[2] = pars->longer_edgeB;
-	dp[3] = pars->longuest_edgeC;
+	dp[1] = pars->short_a;
+	dp[2] = pars->long_b;
+	dp[3] = pars->longer_c;
 	dp[4] = pars->contrast;
 	dp[5] = pars->background;
@@ -38,7 +38,7 @@
 
     //handle arg=0 separately, as sin(t)/t -> 1 as t->0
-    argA = a*ala;
-    argB = b*alb;
-    argC = c*alc;
+    argA = a*ala/2;
+    argB = b*alb/2;
+    argC = c*alc/2;
     if(argA==0.0) {
 		tmp1 = 1.0;
@@ -105,7 +105,7 @@
 	double pi = 4.0*atan(1.0);
 
-	edgeA = pars->short_edgeA;
-	edgeB = pars->longer_edgeB;
-	edgeC = pars->longuest_edgeC;
+	edgeA = pars->short_a;
+	edgeB = pars->long_b;
+	edgeC = pars->longer_c;
 
 
@@ -152,5 +152,5 @@
 	//normalize by cylinder volume
 	//NOTE that for this (Fournet) definition of the integral, one must MULTIPLY by Vparallel
-    vol = 8*edgeA* edgeB * edgeC;
+    vol = edgeA* edgeB * edgeC;
 	answer *= vol;
 
Index: sansmodels/src/sans/models/c_extensions/parallelepiped.h
===================================================================
--- sansmodels/src/sans/models/c_extensions/parallelepiped.h	(revision 975ec8e8211549489759b5a5ffe3b60607de065b)
+++ sansmodels/src/sans/models/c_extensions/parallelepiped.h	(revision 2cb89e7643de78c7f4cf32435454270403afcfb9)
@@ -7,15 +7,15 @@
 /** Structure definition for Parallelepiped parameters
  * [PYTHONCLASS] = ParallelepipedModel
- * [DISP_PARAMS] = short_edgeA, longer_edgeB, longuest_edgeC,parallel_phi,parallel_psi, parallel_theta
-   [DESCRIPTION] = <text> Calculates the form factor for a rectangular solid with uniform scattering length density.
+ * [DISP_PARAMS] = short_a, long_b, longer_c,parallel_phi,parallel_psi, parallel_theta
+   [DESCRIPTION] = <text> Form factor for a rectangular solid with uniform scattering length density.
 
 		scale:Scale factor
-		short_edgeA: Shortest edge of the parallelepiped [A]
-		longer_edgeB: Longer edge of the parallelepiped [A]
-		longuest_edgeC: Longuest edge of the parallelepiped [A]
-		constrast: particle_sld - solvent_sld
+		short_a: length of short side of the parallelepiped [A]
+		long_b: length of long side of the parallelepiped [A]
+		longer_c: length of longer side of the parallelepiped [A]
+		contrast: particle_sld - solvent_sld
 		background:Incoherent Background [1/cm]
 		</text>
-	[FIXED]= <text>short_edgeA.width; longer_edgeB.width; longuest_edgeC.width;parallel_phi.width;parallel_psi.width; parallel_theta.width</text>
+	[FIXED]= <text>short_a.width; long_b.width; longer_c.width;parallel_phi.width;parallel_psi.width; parallel_theta.width</text>
 	[ORIENTATION_PARAMS]= <text>parallel_phi;parallel_psi; parallel_theta; parallel_phi.width;parallel_psi.width; parallel_theta.width</text>
 
@@ -26,13 +26,13 @@
     //  [DEFAULT]=scale=1.0
     double scale;
-    /// Shortest edge of the parallelepiped [A]
-    //  [DEFAULT]=short_edgeA=35 [A]
-    double short_edgeA;
-	/// Longer edge of the parallelepiped [A]
-    //  [DEFAULT]=longer_edgeB=75 [A]
-    double longer_edgeB;
-	/// Longuest edge of the parallelepiped [A]
-    //  [DEFAULT]=longuest_edgeC=400 [A]
-    double longuest_edgeC;
+    ///  Length of short side of the parallelepiped [A]
+    //  [DEFAULT]=short_a=35 [A]
+    double short_a;
+	/// Length of long side edge of the parallelepiped [A]
+    //  [DEFAULT]=long_b=75 [A]
+    double long_b;
+	/// Length of longer side of the parallelepiped [A]
+    //  [DEFAULT]=longer_c=400 [A]
+    double longer_c;
     /// Contrast [1/A²]
     //  [DEFAULT]=contrast=5.3e-6 [1/A²]
Index: sansmodels/src/sans/models/c_models/CParallelepipedModel.cpp
===================================================================
--- sansmodels/src/sans/models/c_models/CParallelepipedModel.cpp	(revision 975ec8e8211549489759b5a5ffe3b60607de065b)
+++ sansmodels/src/sans/models/c_models/CParallelepipedModel.cpp	(revision 2cb89e7643de78c7f4cf32435454270403afcfb9)
@@ -86,12 +86,12 @@
         
         // Initialize parameter dictionary
+        PyDict_SetItemString(self->params,"short_a",Py_BuildValue("d",35.000000));
         PyDict_SetItemString(self->params,"scale",Py_BuildValue("d",1.000000));
-        PyDict_SetItemString(self->params,"longer_edgeB",Py_BuildValue("d",75.000000));
+        PyDict_SetItemString(self->params,"long_b",Py_BuildValue("d",75.000000));
+        PyDict_SetItemString(self->params,"longer_c",Py_BuildValue("d",400.000000));
         PyDict_SetItemString(self->params,"parallel_psi",Py_BuildValue("d",0.000000));
-        PyDict_SetItemString(self->params,"longuest_edgeC",Py_BuildValue("d",400.000000));
         PyDict_SetItemString(self->params,"parallel_phi",Py_BuildValue("d",0.000000));
         PyDict_SetItemString(self->params,"parallel_theta",Py_BuildValue("d",0.000000));
         PyDict_SetItemString(self->params,"background",Py_BuildValue("d",0.000000));
-        PyDict_SetItemString(self->params,"short_edgeA",Py_BuildValue("d",35.000000));
         PyDict_SetItemString(self->params,"contrast",Py_BuildValue("d",0.000005));
         // Initialize dispersion / averaging parameter dict
@@ -99,12 +99,12 @@
         PyObject * disp_dict;
         disp_dict = PyDict_New();
-        self->model->short_edgeA.dispersion->accept_as_source(visitor, self->model->short_edgeA.dispersion, disp_dict);
-        PyDict_SetItemString(self->dispersion, "short_edgeA", disp_dict);
+        self->model->short_a.dispersion->accept_as_source(visitor, self->model->short_a.dispersion, disp_dict);
+        PyDict_SetItemString(self->dispersion, "short_a", disp_dict);
         disp_dict = PyDict_New();
-        self->model->longer_edgeB.dispersion->accept_as_source(visitor, self->model->longer_edgeB.dispersion, disp_dict);
-        PyDict_SetItemString(self->dispersion, "longer_edgeB", disp_dict);
+        self->model->long_b.dispersion->accept_as_source(visitor, self->model->long_b.dispersion, disp_dict);
+        PyDict_SetItemString(self->dispersion, "long_b", disp_dict);
         disp_dict = PyDict_New();
-        self->model->longuest_edgeC.dispersion->accept_as_source(visitor, self->model->longuest_edgeC.dispersion, disp_dict);
-        PyDict_SetItemString(self->dispersion, "longuest_edgeC", disp_dict);
+        self->model->longer_c.dispersion->accept_as_source(visitor, self->model->longer_c.dispersion, disp_dict);
+        PyDict_SetItemString(self->dispersion, "longer_c", disp_dict);
         disp_dict = PyDict_New();
         self->model->parallel_phi.dispersion->accept_as_source(visitor, self->model->parallel_phi.dispersion, disp_dict);
@@ -246,22 +246,22 @@
 	
 	    // Reader parameter dictionary
+    self->model->short_a = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_a") );
     self->model->scale = PyFloat_AsDouble( PyDict_GetItemString(self->params, "scale") );
-    self->model->longer_edgeB = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_edgeB") );
+    self->model->long_b = PyFloat_AsDouble( PyDict_GetItemString(self->params, "long_b") );
+    self->model->longer_c = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_c") );
     self->model->parallel_psi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_psi") );
-    self->model->longuest_edgeC = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longuest_edgeC") );
     self->model->parallel_phi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_phi") );
     self->model->parallel_theta = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_theta") );
     self->model->background = PyFloat_AsDouble( PyDict_GetItemString(self->params, "background") );
-    self->model->short_edgeA = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_edgeA") );
     self->model->contrast = PyFloat_AsDouble( PyDict_GetItemString(self->params, "contrast") );
     // Read in dispersion parameters
     PyObject* disp_dict;
     DispersionVisitor* visitor = new DispersionVisitor();
-    disp_dict = PyDict_GetItemString(self->dispersion, "short_edgeA");
-    self->model->short_edgeA.dispersion->accept_as_destination(visitor, self->model->short_edgeA.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longer_edgeB");
-    self->model->longer_edgeB.dispersion->accept_as_destination(visitor, self->model->longer_edgeB.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longuest_edgeC");
-    self->model->longuest_edgeC.dispersion->accept_as_destination(visitor, self->model->longuest_edgeC.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "short_a");
+    self->model->short_a.dispersion->accept_as_destination(visitor, self->model->short_a.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "long_b");
+    self->model->long_b.dispersion->accept_as_destination(visitor, self->model->long_b.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "longer_c");
+    self->model->longer_c.dispersion->accept_as_destination(visitor, self->model->longer_c.dispersion, disp_dict);
     disp_dict = PyDict_GetItemString(self->dispersion, "parallel_phi");
     self->model->parallel_phi.dispersion->accept_as_destination(visitor, self->model->parallel_phi.dispersion, disp_dict);
@@ -332,22 +332,22 @@
 	
 	    // Reader parameter dictionary
+    self->model->short_a = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_a") );
     self->model->scale = PyFloat_AsDouble( PyDict_GetItemString(self->params, "scale") );
-    self->model->longer_edgeB = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_edgeB") );
+    self->model->long_b = PyFloat_AsDouble( PyDict_GetItemString(self->params, "long_b") );
+    self->model->longer_c = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_c") );
     self->model->parallel_psi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_psi") );
-    self->model->longuest_edgeC = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longuest_edgeC") );
     self->model->parallel_phi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_phi") );
     self->model->parallel_theta = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_theta") );
     self->model->background = PyFloat_AsDouble( PyDict_GetItemString(self->params, "background") );
-    self->model->short_edgeA = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_edgeA") );
     self->model->contrast = PyFloat_AsDouble( PyDict_GetItemString(self->params, "contrast") );
     // Read in dispersion parameters
     PyObject* disp_dict;
     DispersionVisitor* visitor = new DispersionVisitor();
-    disp_dict = PyDict_GetItemString(self->dispersion, "short_edgeA");
-    self->model->short_edgeA.dispersion->accept_as_destination(visitor, self->model->short_edgeA.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longer_edgeB");
-    self->model->longer_edgeB.dispersion->accept_as_destination(visitor, self->model->longer_edgeB.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longuest_edgeC");
-    self->model->longuest_edgeC.dispersion->accept_as_destination(visitor, self->model->longuest_edgeC.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "short_a");
+    self->model->short_a.dispersion->accept_as_destination(visitor, self->model->short_a.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "long_b");
+    self->model->long_b.dispersion->accept_as_destination(visitor, self->model->long_b.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "longer_c");
+    self->model->longer_c.dispersion->accept_as_destination(visitor, self->model->longer_c.dispersion, disp_dict);
     disp_dict = PyDict_GetItemString(self->dispersion, "parallel_phi");
     self->model->parallel_phi.dispersion->accept_as_destination(visitor, self->model->parallel_phi.dispersion, disp_dict);
@@ -407,22 +407,22 @@
 	
 	    // Reader parameter dictionary
+    self->model->short_a = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_a") );
     self->model->scale = PyFloat_AsDouble( PyDict_GetItemString(self->params, "scale") );
-    self->model->longer_edgeB = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_edgeB") );
+    self->model->long_b = PyFloat_AsDouble( PyDict_GetItemString(self->params, "long_b") );
+    self->model->longer_c = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longer_c") );
     self->model->parallel_psi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_psi") );
-    self->model->longuest_edgeC = PyFloat_AsDouble( PyDict_GetItemString(self->params, "longuest_edgeC") );
     self->model->parallel_phi = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_phi") );
     self->model->parallel_theta = PyFloat_AsDouble( PyDict_GetItemString(self->params, "parallel_theta") );
     self->model->background = PyFloat_AsDouble( PyDict_GetItemString(self->params, "background") );
-    self->model->short_edgeA = PyFloat_AsDouble( PyDict_GetItemString(self->params, "short_edgeA") );
     self->model->contrast = PyFloat_AsDouble( PyDict_GetItemString(self->params, "contrast") );
     // Read in dispersion parameters
     PyObject* disp_dict;
     DispersionVisitor* visitor = new DispersionVisitor();
-    disp_dict = PyDict_GetItemString(self->dispersion, "short_edgeA");
-    self->model->short_edgeA.dispersion->accept_as_destination(visitor, self->model->short_edgeA.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longer_edgeB");
-    self->model->longer_edgeB.dispersion->accept_as_destination(visitor, self->model->longer_edgeB.dispersion, disp_dict);
-    disp_dict = PyDict_GetItemString(self->dispersion, "longuest_edgeC");
-    self->model->longuest_edgeC.dispersion->accept_as_destination(visitor, self->model->longuest_edgeC.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "short_a");
+    self->model->short_a.dispersion->accept_as_destination(visitor, self->model->short_a.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "long_b");
+    self->model->long_b.dispersion->accept_as_destination(visitor, self->model->long_b.dispersion, disp_dict);
+    disp_dict = PyDict_GetItemString(self->dispersion, "longer_c");
+    self->model->longer_c.dispersion->accept_as_destination(visitor, self->model->longer_c.dispersion, disp_dict);
     disp_dict = PyDict_GetItemString(self->dispersion, "parallel_phi");
     self->model->parallel_phi.dispersion->accept_as_destination(visitor, self->model->parallel_phi.dispersion, disp_dict);
@@ -486,10 +486,10 @@
 	// Ugliness necessary to go from python to C
 	    // TODO: refactor this
-    if (!strcmp(par_name, "short_edgeA")) {
-        self->model->short_edgeA.dispersion = dispersion;
-    } else    if (!strcmp(par_name, "longer_edgeB")) {
-        self->model->longer_edgeB.dispersion = dispersion;
-    } else    if (!strcmp(par_name, "longuest_edgeC")) {
-        self->model->longuest_edgeC.dispersion = dispersion;
+    if (!strcmp(par_name, "short_a")) {
+        self->model->short_a.dispersion = dispersion;
+    } else    if (!strcmp(par_name, "long_b")) {
+        self->model->long_b.dispersion = dispersion;
+    } else    if (!strcmp(par_name, "longer_c")) {
+        self->model->longer_c.dispersion = dispersion;
     } else    if (!strcmp(par_name, "parallel_phi")) {
         self->model->parallel_phi.dispersion = dispersion;
Index: sansmodels/src/sans/models/c_models/models.hh
===================================================================
--- sansmodels/src/sans/models/c_models/models.hh	(revision 975ec8e8211549489759b5a5ffe3b60607de065b)
+++ sansmodels/src/sans/models/c_models/models.hh	(revision 2cb89e7643de78c7f4cf32435454270403afcfb9)
@@ -49,7 +49,7 @@
 	// Model parameters
 	Parameter scale;
-	Parameter short_edgeA;
-	Parameter longer_edgeB;
-	Parameter longuest_edgeC;
+	Parameter short_a;
+	Parameter long_b;
+	Parameter longer_c;
 	Parameter contrast;
 	Parameter background;
