diff --git a/src/pulsaranimationwidget.cpp b/src/pulsaranimationwidget.cpp
index bbefb8681b4bde69d98b2db48f41dfe8b3210e8a..43767f4ec09733e3a21090927ab367593c3c3f0b 100644
--- a/src/pulsaranimationwidget.cpp
+++ b/src/pulsaranimationwidget.cpp
@@ -38,8 +38,10 @@ PulsarAnimationWidget::PulsarAnimationWidget(QWidget *parent) :
 
     connect(&m_frameTimer, SIGNAL(timeout()), this, SLOT(updateFrame()));
 
+    m_quadricCompanionOrbitPlane = NULL;
+    m_quadricCompanion = NULL;
     m_quadricPulsarOrbitPlane = NULL;
-	m_quadricPulsar = NULL;
+    m_quadricPulsar = NULL;
 	m_quadricPulsarCone1 = NULL;
 	m_quadricPulsarCone2 = NULL;
 	m_quadricPulsarSpinAxis = NULL;
@@ -52,6 +54,9 @@ PulsarAnimationWidget::PulsarAnimationWidget(QWidget *parent) :
 
 	resetParameters();
 
+	m_pulsarMass = 1.4f;
+	m_companionMass = 1.4f;
+
 	m_showRotationAxes = false;
 	m_cameraInteraction = false;
 	m_mouseLastX = 0;
@@ -66,6 +71,8 @@ PulsarAnimationWidget::PulsarAnimationWidget(QWidget *parent) :
 
 PulsarAnimationWidget::~PulsarAnimationWidget()
 {
+	if(m_quadricCompanionOrbitPlane) gluDeleteQuadric(m_quadricCompanionOrbitPlane);
+	if(m_quadricCompanion) gluDeleteQuadric(m_quadricCompanion);
 	if(m_quadricPulsarOrbitPlane) gluDeleteQuadric(m_quadricPulsarOrbitPlane);
 	if(m_quadricPulsar) gluDeleteQuadric(m_quadricPulsar);
 	if(m_quadricPulsarCone1) gluDeleteQuadric(m_quadricPulsarCone1);
@@ -108,6 +115,8 @@ void PulsarAnimationWidget::initializeGL()
 	glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
 	glEnable(GL_BLEND);
 
+	m_quadricCompanionOrbitPlane = gluNewQuadric();
+	m_quadricCompanion = gluNewQuadric();
 	m_quadricPulsarOrbitPlane = gluNewQuadric();
 	m_quadricPulsar = gluNewQuadric();
     m_quadricPulsarCone1 = gluNewQuadric();
@@ -115,6 +124,8 @@ void PulsarAnimationWidget::initializeGL()
     m_quadricPulsarSpinAxis = gluNewQuadric();
     m_quadricPulsarMagneticAxis = gluNewQuadric();
 
+    gluQuadricNormals(m_quadricCompanionOrbitPlane, GLU_SMOOTH);
+    gluQuadricNormals(m_quadricCompanion, GLU_SMOOTH);
     gluQuadricNormals(m_quadricPulsarOrbitPlane, GLU_SMOOTH);
     gluQuadricNormals(m_quadricPulsar, GLU_SMOOTH);
     gluQuadricNormals(m_quadricPulsarCone1, GLU_SMOOTH);
@@ -142,7 +153,7 @@ void PulsarAnimationWidget::resizeGL(int w, int h)
 	glMatrixMode(GL_PROJECTION);
 	glLoadIdentity();
 
-	gluPerspective(45.0f, (GLfloat)w / (GLfloat)h, 0.1f, 100.0f);
+	gluPerspective(45.0f, (GLfloat)w / (GLfloat)h, 0.1f, 500.0f);
 
 	glMatrixMode(GL_MODELVIEW);
 	glLoadIdentity();
@@ -174,17 +185,17 @@ void PulsarAnimationWidget::paintGL()
 
 	// draw companion
 	glPushMatrix();
-		glTranslatef(sin((m_orbitRotationAngle + 180) * deg2rad) * m_companionOrbitRadius,
+		glTranslatef(sin((m_orbitRotationAngle + 180) * deg2rad) * m_companionSemiMajorAxis,
 					 0.0f,
-					 cos((m_orbitRotationAngle + 180) * deg2rad) * m_companionOrbitRadius);
-		gluSphere(m_quadricPulsar, 1.0f, 32, 32);
+					 cos((m_orbitRotationAngle + 180) * deg2rad) * m_companionSemiMajorAxis);
+		gluSphere(m_quadricCompanion, 1.0f, 32, 32);
 	glPopMatrix();
 
 	// draw pulsar
 	glPushMatrix();
-		glTranslatef(sin(m_orbitRotationAngle * deg2rad) * m_pulsarOrbitRadius,
+		glTranslatef(sin(m_orbitRotationAngle * deg2rad) * m_pulsarSemiMajorAxis,
 					 0.0f,
-					 cos(m_orbitRotationAngle * deg2rad) * m_pulsarOrbitRadius);
+					 cos(m_orbitRotationAngle * deg2rad) * m_pulsarSemiMajorAxis);
 
 		glPushMatrix();
 			glRotatef(m_pulsarSpinAxisInclination, 0.0f, 0.0f, 1.0f);
@@ -263,15 +274,27 @@ void PulsarAnimationWidget::paintGL()
 		glPopMatrix();
 	glPopMatrix();
 
-	// draw orbital plane
+	// draw orbital planes
 	if(m_cameraInteraction) {
 		glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, translucent);
 
+		// pulsar
 		glPushMatrix();
 			glRotatef(90.0f, 1.0f, 0.0f, 0.0f);
+			glTranslatef(0.0f, 0.0f, -0.1f);
 			gluDisk(m_quadricPulsarOrbitPlane,
-					m_pulsarOrbitRadius * 0.9f,
-					m_pulsarOrbitRadius * 1.1f,
+					m_pulsarSemiMajorAxis - 0.25f,
+					m_pulsarSemiMajorAxis + 0.25f,
+					64, 1);
+		glPopMatrix();
+
+		// companion
+		glPushMatrix();
+			glRotatef(90.0f, 1.0f, 0.0f, 0.0f);
+			glTranslatef(0.0f, 0.0f, 0.0f);
+			gluDisk(m_quadricCompanionOrbitPlane,
+					m_companionSemiMajorAxis - 0.25f,
+					m_companionSemiMajorAxis + 0.25f,
 					64, 1);
 		glPopMatrix();
 	}
@@ -379,21 +402,34 @@ void PulsarAnimationWidget::setFramePerSecond(const unsigned int fps)
 	m_framesPerSecond = fps;
 }
 
-void PulsarAnimationWidget::setPulsarRotationDelta(const float frequency)
+void PulsarAnimationWidget::setPulsarSemiMajorAxis(const float length)
 {
-	m_pulsarRotationDelta = (360.0f * frequency) / m_framesPerSecond;
+	m_pulsarSemiMajorAxis = length;
+	m_companionSemiMajorAxis = (m_pulsarMass/m_companionMass) * m_pulsarSemiMajorAxis;
+	updateOrbitPeriod();
+
+	updateGL();
 }
 
-void PulsarAnimationWidget::setOrbitRotationDelta(const float frequency)
+void PulsarAnimationWidget::setCompanionMass(const float mass)
 {
-	m_orbitRotationDelta = (360.0f * frequency) / m_framesPerSecond;
+	m_companionMass = mass;
+	updateOrbitRadii();
+
+	updateGL();
 }
 
-void PulsarAnimationWidget::setOrbitRadius(const float radius)
+void PulsarAnimationWidget::setPulsarMass(const float mass)
 {
-	// for the time being both have the same orbit (mass)
-	m_pulsarOrbitRadius = radius;
-	m_companionOrbitRadius = radius;
+	m_pulsarMass = mass;
+	updateOrbitRadii();
+
+	updateGL();
+}
+
+void PulsarAnimationWidget::setPulsarSpinFrequency(const float frequency)
+{
+	m_pulsarRotationDelta = (360.0f * frequency) / m_framesPerSecond;
 }
 
 void PulsarAnimationWidget::setPulsarSpinAxisInclination(const int degrees)
@@ -410,6 +446,32 @@ void PulsarAnimationWidget::setPulsarMagneticAxisInclination(const int degrees)
 	updateGL();
 }
 
+void PulsarAnimationWidget::updateOrbitPeriod()
+{
+	m_orbitalPeriod = 3.1553e7 * sqrt(
+						(pow(m_pulsarSemiMajorAxis,3) * pow(m_pulsarMass+m_companionMass,2)) /
+						 pow(m_companionMass,3)
+					  );
+
+	// visual correction factor (increase orbital momentum)
+	double visualCorrection = 1e-8;
+
+	m_orbitRotationDelta  = (360.0 / (m_orbitalPeriod*visualCorrection)) / m_framesPerSecond;
+}
+
+void PulsarAnimationWidget::updateOrbitRadii()
+{
+	m_pulsarSemiMajorAxis = 1.0015e-5 * pow(
+								(pow(m_orbitalPeriod,2) * pow(m_companionMass,3)) /
+								 pow(m_pulsarMass+m_companionMass,2),
+								 1.0/3.0
+							);
+
+	m_companionSemiMajorAxis = (m_pulsarMass/m_companionMass) * m_pulsarSemiMajorAxis;
+
+	emit pulsarSemiMajorAxisUpdated(m_pulsarSemiMajorAxis);
+}
+
 void PulsarAnimationWidget::resetParameters()
 {
 	m_pulsarRotationAngle = 0.0f;
diff --git a/src/pulsaranimationwidget.h b/src/pulsaranimationwidget.h
index da6a31416ba6365f912aea4a978609fd881abe60..30a51954772f3cc9a0478879667e230ae2f7a39a 100644
--- a/src/pulsaranimationwidget.h
+++ b/src/pulsaranimationwidget.h
@@ -38,11 +38,12 @@ public:
 	virtual ~PulsarAnimationWidget();
 
 	void setFramePerSecond(const unsigned int fps);
-	void setPulsarRotationDelta(const float frequency);
-	void setOrbitRotationDelta(const float frequency);
-	void setOrbitRadius(const float radius);
+	void setCompanionMass(const float mass);
+	void setPulsarMass(const float mass);
+	void setPulsarSpinFrequency(const float frequency);
 	void setPulsarSpinAxisInclination(const int degrees);
 	void setPulsarMagneticAxisInclination(const int degrees);
+	void setPulsarSemiMajorAxis(const float length);
 
 public slots:
 	void runAnimation();
@@ -53,6 +54,9 @@ public slots:
 
 	void showRotationAxes(bool enabled);
 
+signals:
+	void pulsarSemiMajorAxisUpdated(double value);
+
 protected:
     void initializeGL();
     void resizeGL(int w, int h);
@@ -62,11 +66,15 @@ protected:
     void mouseMoveEvent(QMouseEvent *event);
     void mouseReleaseEvent(QMouseEvent *event);
 
+	void updateOrbitPeriod();
+    void updateOrbitRadii();
     void updateCameraPosition(const int angleH, const int angleV, const float zoom);
     void resetParameters();
 
     QTimer m_frameTimer;
 
+    GLUquadricObj *m_quadricCompanionOrbitPlane;
+    GLUquadricObj *m_quadricCompanion;
     GLUquadricObj *m_quadricPulsarOrbitPlane;
 	GLUquadricObj *m_quadricPulsar;
 	GLUquadricObj *m_quadricPulsarCone1;
@@ -82,11 +90,14 @@ protected:
 	float m_pulsarRotationAngle;
 	float m_pulsarRotationDelta;
 
+	double m_orbitalPeriod;
 	float m_orbitRotationAngle;
 	float m_orbitRotationDelta;
 
-	float m_pulsarOrbitRadius;
-	float m_companionOrbitRadius;
+	float m_pulsarMass;
+	double m_pulsarSemiMajorAxis;
+	float m_companionMass;
+	double m_companionSemiMajorAxis;
 
 	int m_pulsarSpinAxisInclination;
 	int m_pulsarMagneticAxisInclination;
diff --git a/src/pulsatingscience.cpp b/src/pulsatingscience.cpp
index 82889e12e121a5c4a4da6b6cc85c3402f1cb39ee..836d9b21614d02f4f1a99a49a2b179eaa37cee39 100644
--- a/src/pulsatingscience.cpp
+++ b/src/pulsatingscience.cpp
@@ -41,11 +41,18 @@ PulsatingScience::PulsatingScience(QWidget *parent) : QMainWindow(parent)
 	connect(ui.actionRotationAxes, SIGNAL(toggled(bool)),
 				ui.pulsarGlWidget, SLOT(showRotationAxes(bool)));
 
+	connect(ui.pulsarGlWidget, SIGNAL(pulsarSemiMajorAxisUpdated(double)),
+				this, SLOT(updatePulsarSemiMajorAxisValue(double)));
+
+	on_sliderPulsarSemiMajorAxis_valueChanged(ui.sliderPulsarSemiMajorAxis->value());
+
+	on_radioCompanionNS_toggled(true);
+	on_sliderPulsarMass_valueChanged(ui.sliderPulsarMass->value());
+
 	on_sliderPulsarSpinFrequency_valueChanged(ui.sliderPulsarSpinFrequency->value());
 	on_sliderPulsarSpinAxisInclination_valueChanged(ui.sliderPulsarSpinAxisInclination->value());
 	on_sliderPulsarMagneticAxisInclination_valueChanged(ui.sliderPulsarMagneticAxisInclination->value());
-	on_sliderOrbitRadius_valueChanged(ui.sliderOrbitRadius->value());
-	on_sliderOrbitFrequency_valueChanged(ui.sliderOrbitFrequency->value());
+
 }
 
 PulsatingScience::~PulsatingScience()
@@ -81,10 +88,40 @@ void PulsatingScience::on_pushStop_clicked()
 	ui.pushStop->setEnabled(false);
 }
 
+void PulsatingScience::on_radioCompanionWD_toggled(bool checked)
+{
+	if(checked) {
+		ui.pulsarGlWidget->setCompanionMass(0.6f);
+		ui.lcdCompanionMass->display(QString::number(0.6f, 'f', 1));
+	}
+}
+
+void PulsatingScience::on_radioCompanionSun_toggled(bool checked)
+{
+	if(checked) {
+		ui.pulsarGlWidget->setCompanionMass(1.0f);
+		ui.lcdCompanionMass->display(QString::number(1.0f, 'f', 1));
+	}
+}
+
+void PulsatingScience::on_radioCompanionNS_toggled(bool checked)
+{
+	if(checked) {
+		ui.pulsarGlWidget->setCompanionMass(1.4f);
+		ui.lcdCompanionMass->display(QString::number(1.4f, 'f', 1));
+	}
+}
+
+void PulsatingScience::on_sliderPulsarMass_valueChanged(int value)
+{
+	ui.pulsarGlWidget->setPulsarMass(value * 0.1f);
+	ui.lcdPulsarMass->display(QString::number(value * 0.1f, 'f', 1));
+}
+
 void PulsatingScience::on_sliderPulsarSpinFrequency_valueChanged(int value)
 {
-	ui.pulsarGlWidget->setPulsarRotationDelta(value / 10.0);
-	ui.lcdPulsarSpinFrequency->display(QString::number(value / 10.0, 'f', 1));
+	ui.pulsarGlWidget->setPulsarSpinFrequency(value * 0.1f);
+	ui.lcdPulsarSpinFrequency->display(QString::number(value * 0.1f, 'f', 1));
 }
 
 void PulsatingScience::on_sliderPulsarSpinAxisInclination_valueChanged(int value)
@@ -99,16 +136,10 @@ void PulsatingScience::on_sliderPulsarMagneticAxisInclination_valueChanged(int v
 	ui.lcdPulsarMagneticAxisInclination->display(QString::number(value));
 }
 
-void PulsatingScience::on_sliderOrbitRadius_valueChanged(int value)
+void PulsatingScience::on_sliderPulsarSemiMajorAxis_valueChanged(int value)
 {
-	ui.pulsarGlWidget->setOrbitRadius(value);
-	ui.lcdOrbitRadius->display(QString::number(value, 'f', 1));
-}
-
-void PulsatingScience::on_sliderOrbitFrequency_valueChanged(int value)
-{
-	ui.pulsarGlWidget->setOrbitRotationDelta(value / 10.0);
-	ui.lcdOrbitFrequency->display(QString::number(value / 10.0, 'f', 1));
+	ui.pulsarGlWidget->setPulsarSemiMajorAxis(value * 0.001f);
+	ui.lcdPulsarSemiMajorAxis->display(QString::number(value * 0.001f, 'f', 1));
 }
 
 void PulsatingScience::on_actionMenu_bar_toggled(bool checked)
@@ -130,3 +161,8 @@ void PulsatingScience::on_actionAbout_activated()
 			"Copyright © 2009 "
 			"<a href=\"http://www.aei.mpg.de\">Max-Planck-Institut f&uuml;r Gravitationsphysik</a>");
 }
+
+void PulsatingScience::updatePulsarSemiMajorAxisValue(double value)
+{
+	ui.sliderPulsarSemiMajorAxis->setValue(value * 1000.0);
+}
diff --git a/src/pulsatingscience.h b/src/pulsatingscience.h
index 9a0cc6f6db552b91f7dd7212e9516b83f7858364..6b87b806bcb347e3be9dbec35bec98910dece760 100644
--- a/src/pulsatingscience.h
+++ b/src/pulsatingscience.h
@@ -39,16 +39,21 @@ public slots:
 	void on_pushPause_clicked();
 	void on_pushStop_clicked();
 
+	void on_radioCompanionWD_toggled(bool checked);
+	void on_radioCompanionSun_toggled(bool checked);
+	void on_radioCompanionNS_toggled(bool checked);
+	void on_sliderPulsarMass_valueChanged(int value);
 	void on_sliderPulsarSpinFrequency_valueChanged(int value);
 	void on_sliderPulsarSpinAxisInclination_valueChanged(int value);
 	void on_sliderPulsarMagneticAxisInclination_valueChanged(int value);
-	void on_sliderOrbitRadius_valueChanged(int value);
-	void on_sliderOrbitFrequency_valueChanged(int value);
+	void on_sliderPulsarSemiMajorAxis_valueChanged(int value);
 
 	void on_actionMenu_bar_toggled(bool checked);
 	void on_actionStatus_bar_toggled(bool checked);
 	void on_actionAbout_activated();
 
+	void updatePulsarSemiMajorAxisValue(double value);
+
 private:
     Ui::PulsatingScienceClass ui;
 };
diff --git a/src/pulsatingscience.ui b/src/pulsatingscience.ui
index af87c4a71d2184359437f244a3efe87cc72903b3..3373bc1740e72eca72e326ea884d85dae2918703 100644
--- a/src/pulsatingscience.ui
+++ b/src/pulsatingscience.ui
@@ -5,7 +5,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>629</width>
+    <width>693</width>
     <height>600</height>
    </rect>
   </property>
@@ -38,14 +38,14 @@
     <layout class="QGridLayout" name="gridLayout_3" >
      <item row="0" column="1" >
       <layout class="QGridLayout" name="gridLayout_2" >
-       <item row="0" column="0" >
+       <item row="2" column="0" >
         <widget class="QLabel" name="label" >
          <property name="text" >
-          <string>Spin Frequency:</string>
+          <string>Pulsar Spin Frequency:</string>
          </property>
         </widget>
        </item>
-       <item row="0" column="1" >
+       <item row="2" column="1" >
         <widget class="QSlider" name="sliderPulsarSpinFrequency" >
          <property name="statusTip" >
           <string>Use this slider to adjust the spin frequency</string>
@@ -79,7 +79,7 @@
          </property>
         </widget>
        </item>
-       <item row="0" column="2" >
+       <item row="2" column="2" >
         <widget class="QLCDNumber" name="lcdPulsarSpinFrequency" >
          <property name="numDigits" >
           <number>6</number>
@@ -92,50 +92,15 @@
          </property>
         </widget>
        </item>
-       <item row="3" column="0" >
-        <widget class="QLabel" name="label_2" >
-         <property name="text" >
-          <string>Orbit Radius:</string>
-         </property>
-        </widget>
-       </item>
-       <item row="4" column="0" >
+       <item row="5" column="0" >
         <widget class="QLabel" name="label_3" >
          <property name="text" >
-          <string>Orbit Frequency:</string>
+          <string>Pulsar Orbit Semi Major Axis:</string>
          </property>
         </widget>
        </item>
-       <item row="3" column="1" >
-        <widget class="QSlider" name="sliderOrbitRadius" >
-         <property name="statusTip" >
-          <string>Use this slider to adjust the orbit radius of the binary system</string>
-         </property>
-         <property name="minimum" >
-          <number>1</number>
-         </property>
-         <property name="maximum" >
-          <number>10</number>
-         </property>
-         <property name="pageStep" >
-          <number>2</number>
-         </property>
-         <property name="value" >
-          <number>4</number>
-         </property>
-         <property name="orientation" >
-          <enum>Qt::Horizontal</enum>
-         </property>
-         <property name="tickPosition" >
-          <enum>QSlider::TicksBelow</enum>
-         </property>
-         <property name="tickInterval" >
-          <number>1</number>
-         </property>
-        </widget>
-       </item>
-       <item row="3" column="2" >
-        <widget class="QLCDNumber" name="lcdOrbitRadius" >
+       <item row="5" column="2" >
+        <widget class="QLCDNumber" name="lcdPulsarSemiMajorAxis" >
          <property name="numDigits" >
           <number>6</number>
          </property>
@@ -143,36 +108,23 @@
           <enum>QLCDNumber::Flat</enum>
          </property>
          <property name="value" stdset="0" >
-          <double>4.000000000000000</double>
+          <double>5.000000000000000</double>
          </property>
         </widget>
        </item>
-       <item row="4" column="2" >
-        <widget class="QLCDNumber" name="lcdOrbitFrequency" >
-         <property name="numDigits" >
-          <number>6</number>
-         </property>
-         <property name="segmentStyle" >
-          <enum>QLCDNumber::Flat</enum>
-         </property>
-         <property name="value" stdset="0" >
-          <double>0.200000000000000</double>
-         </property>
-        </widget>
-       </item>
-       <item row="4" column="1" >
-        <widget class="QSlider" name="sliderOrbitFrequency" >
+       <item row="5" column="1" >
+        <widget class="QSlider" name="sliderPulsarSemiMajorAxis" >
          <property name="statusTip" >
-          <string>Use this slider to adjust the orbit frequency of the binary system</string>
+          <string>Use this slider to adjust the length of the semi major axis of the pulsar's elliptical orbit</string>
          </property>
          <property name="minimum" >
-          <number>0</number>
+          <number>1000</number>
          </property>
          <property name="maximum" >
-          <number>20</number>
+          <number>20000</number>
          </property>
          <property name="value" >
-          <number>2</number>
+          <number>5000</number>
          </property>
          <property name="orientation" >
           <enum>Qt::Horizontal</enum>
@@ -181,25 +133,25 @@
           <enum>QSlider::TicksBelow</enum>
          </property>
          <property name="tickInterval" >
-          <number>1</number>
+          <number>1000</number>
          </property>
         </widget>
        </item>
-       <item row="1" column="0" >
+       <item row="3" column="0" >
         <widget class="QLabel" name="label_5" >
          <property name="text" >
-          <string>Spin Axis Inclination:</string>
+          <string>Pulsar Spin Axis Inclination:</string>
          </property>
         </widget>
        </item>
-       <item row="2" column="0" >
+       <item row="4" column="0" >
         <widget class="QLabel" name="label_4" >
          <property name="text" >
-          <string>Magn. Axis Inclination:</string>
+          <string>Pulsar Magn. Axis Inclination:</string>
          </property>
         </widget>
        </item>
-       <item row="1" column="1" >
+       <item row="3" column="1" >
         <widget class="QSlider" name="sliderPulsarSpinAxisInclination" >
          <property name="statusTip" >
           <string>Use this slider to adjust the inclination of the spin axis with respect to the orbit axis</string>
@@ -218,7 +170,7 @@
          </property>
         </widget>
        </item>
-       <item row="1" column="2" >
+       <item row="3" column="2" >
         <widget class="QLCDNumber" name="lcdPulsarSpinAxisInclination" >
          <property name="numDigits" >
           <number>6</number>
@@ -231,7 +183,7 @@
          </property>
         </widget>
        </item>
-       <item row="2" column="1" >
+       <item row="4" column="1" >
         <widget class="QSlider" name="sliderPulsarMagneticAxisInclination" >
          <property name="statusTip" >
           <string>Use this slider to adjust the inclination of the magnetic pole axis with respect to the spin axis</string>
@@ -250,7 +202,7 @@
          </property>
         </widget>
        </item>
-       <item row="2" column="2" >
+       <item row="4" column="2" >
         <widget class="QLCDNumber" name="lcdPulsarMagneticAxisInclination" >
          <property name="numDigits" >
           <number>6</number>
@@ -263,31 +215,138 @@
          </property>
         </widget>
        </item>
-       <item row="1" column="3" >
+       <item row="3" column="3" >
         <widget class="QLabel" name="label_6" >
          <property name="text" >
           <string>deg</string>
          </property>
         </widget>
        </item>
-       <item row="2" column="3" >
+       <item row="4" column="3" >
         <widget class="QLabel" name="label_7" >
          <property name="text" >
           <string>deg</string>
          </property>
         </widget>
        </item>
-       <item row="0" column="3" >
+       <item row="2" column="3" >
         <widget class="QLabel" name="label_8" >
          <property name="text" >
           <string>Hz</string>
          </property>
         </widget>
        </item>
-       <item row="4" column="3" >
+       <item row="5" column="3" >
         <widget class="QLabel" name="label_9" >
          <property name="text" >
-          <string>Hz</string>
+          <string>AU</string>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="0" >
+        <widget class="QLabel" name="label_10" >
+         <property name="text" >
+          <string>Companion Class:</string>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="1" >
+        <layout class="QHBoxLayout" name="horizontalLayout" >
+         <item>
+          <widget class="QRadioButton" name="radioCompanionWD" >
+           <property name="text" >
+            <string>White Dwarf</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QRadioButton" name="radioCompanionSun" >
+           <property name="text" >
+            <string>Sun</string>
+           </property>
+           <property name="checked" >
+            <bool>false</bool>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QRadioButton" name="radioCompanionNS" >
+           <property name="text" >
+            <string>Neutron Star</string>
+           </property>
+           <property name="checked" >
+            <bool>true</bool>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </item>
+       <item row="0" column="2" >
+        <widget class="QLCDNumber" name="lcdCompanionMass" >
+         <property name="numDigits" >
+          <number>6</number>
+         </property>
+         <property name="segmentStyle" >
+          <enum>QLCDNumber::Flat</enum>
+         </property>
+         <property name="value" stdset="0" >
+          <double>1.400000000000000</double>
+         </property>
+        </widget>
+       </item>
+       <item row="0" column="3" >
+        <widget class="QLabel" name="label_11" >
+         <property name="text" >
+          <string>M&lt;sub>0&lt;/sub></string>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="0" >
+        <widget class="QLabel" name="label_12" >
+         <property name="text" >
+          <string>Pulsar Mass:</string>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="1" >
+        <widget class="QSlider" name="sliderPulsarMass" >
+         <property name="statusTip" >
+          <string>Use this slider to adjust the pulsar mass</string>
+         </property>
+         <property name="minimum" >
+          <number>14</number>
+         </property>
+         <property name="maximum" >
+          <number>30</number>
+         </property>
+         <property name="pageStep" >
+          <number>2</number>
+         </property>
+         <property name="orientation" >
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="tickPosition" >
+          <enum>QSlider::TicksBelow</enum>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="2" >
+        <widget class="QLCDNumber" name="lcdPulsarMass" >
+         <property name="numDigits" >
+          <number>6</number>
+         </property>
+         <property name="segmentStyle" >
+          <enum>QLCDNumber::Flat</enum>
+         </property>
+         <property name="value" stdset="0" >
+          <double>1.400000000000000</double>
+         </property>
+        </widget>
+       </item>
+       <item row="1" column="3" >
+        <widget class="QLabel" name="label_13" >
+         <property name="text" >
+          <string>M&lt;sub>0&lt;/sub></string>
          </property>
         </widget>
        </item>
@@ -380,7 +439,7 @@
     <rect>
      <x>0</x>
      <y>0</y>
-     <width>629</width>
+     <width>693</width>
      <height>31</height>
     </rect>
    </property>