[PATCH] Be more consistent in partial pressure naming

subsurface at henrik.synth.no subsurface at henrik.synth.no
Sun Jun 22 07:41:44 PDT 2014


From: Henrik Brautaset Aronsen <subsurface at henrik.synth.no>

Lets just use pO₂ instead of PO2, ppO2, ppO₂, PO₂.
They all mean the same, but it's better to be
consistent

Signed-off-by: Henrik Brautaset Aronsen <subsurface at henrik.synth.no>
---
 Documentation/user-manual.txt       |  6 +++---
 Documentation/user-manual_es.txt    |  4 ++--
 ReleaseNotes.txt                    | 12 ++++++------
 deco.c                              | 24 ++++++++++++------------
 parse-xml.c                         |  2 +-
 planner.c                           |  4 ++--
 pref.h                              |  2 +-
 profile.c                           | 10 +++++-----
 qt-ui/diveplanner.cpp               |  8 ++++----
 qt-ui/models.cpp                    |  6 +++---
 qt-ui/plannerSettings.ui            |  4 ++--
 qt-ui/preferences.cpp               |  6 +++---
 qt-ui/preferences.ui                |  4 ++--
 qt-ui/profile/diveeventitem.cpp     |  2 +-
 qt-ui/profile/diveplotdatamodel.cpp |  8 ++++----
 save-html.c                         |  4 ++--
 subsurfacestartup.c                 |  2 +-
 terms                               |  5 ++---
 uemis.c                             |  6 +++---
 19 files changed, 59 insertions(+), 60 deletions(-)

diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index 697df11..19d80ec 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -911,7 +911,7 @@ data, one record per line. CSV files can be opened with a normal text editor.
 Following is a highly simplified and shortened example of a CSV file from an
 APD rebreather:
 
-	Dive Time (s)	Depth (m)	PPO2 - Setpoint (Bar)	PPO2 - C1 Cell
+	Dive Time (s)	Depth (m)	pO₂ - Setpoint (Bar)	pO₂ - C1 Cell
 1 (Bar)	Ambient temp. (Celsius)
 	0	0.0	0.70	0.81	13.1
 	0	1.2	0.70	0.71	13.1
@@ -949,7 +949,7 @@ instance for the above example:
 	Time:		column 1
 	Depth:		column 2
 	Temperature:	column 5
-	ppO2:		column 4
+	pO₂:		column 4
 
 Armed with this information, importing the data into _Subsurface_ is
 straightforward. Select
@@ -1965,7 +1965,7 @@ specified in the _Preferences_ panel of _Subsurface_.
 been activated on the left part of the *Dive Profile* panel.
 
 - Ensure that the appropriate button(s) for the display of the partial pressures of gases
-(PO2, PN2, PHe) have been activated on the left part of the *Dive Profile* panel.
+(pO₂, pN₂, pHe) have been activated on the left part of the *Dive Profile* panel.
 
 The dive profile is shown in conjunction with the relevant dive ceiling. The dive profile
 should not closely approach the calculated ceiling. The partial gas pressures selected for
diff --git a/Documentation/user-manual_es.txt b/Documentation/user-manual_es.txt
index b9c302b..f65d92d 100644
--- a/Documentation/user-manual_es.txt
+++ b/Documentation/user-manual_es.txt
@@ -866,7 +866,7 @@ a un registro por línea. Los archivos CSV pueden abrirse con cualquier editor d
 texto. A continuación un ejemplo muy simplificado y acortado de un archivo CSV
 de un rebreather aPD:
 
-	Dive Time (s)   Depth (m)       PPO2 - Setpoint (Bar)   PPO2 - C1 ...
+	Dive Time (s)   Depth (m)       pO₂ - Setpoint (Bar)   pO₂ - C1 ...
 	0       0.0     0.70    0.81    13.1
 	0       1.2     0.70    0.71    13.1
 	0       0.0     0.70    0.71    13.1
@@ -900,7 +900,7 @@ ejemplo anterior:
       Time:           columna 1
       Depth:          columna 2
       Temperature:    columna 5
-      ppO2:           columna 4
+      pO₂:           columna 4
 
 Armado con esta información, importar en _Subsurface_ es muy fácil. Selecciona
 _Importar→Importar CSV_ en el menú principal. Aparecerá el siguiente dialogo:
diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt
index 00cd5fa..e3bbb75 100644
--- a/ReleaseNotes.txt
+++ b/ReleaseNotes.txt
@@ -66,7 +66,7 @@ New in version 4.1 (compared to Subsurface 4.0.3):
 Known issues:
 
 - (Windows specific) Many Windows fonts don't support specific characters,
-  specifically subscript "2" (eg in pO2). New installations of Subsurface
+  specifically subscript "2" (eg in pO₂). New installations of Subsurface
   will automatically pick a font that contains this character, but if you
   had Subsurface installed on a specific system before, it likely has
   saved the previous font in its settings. In that case the best solution
@@ -192,16 +192,16 @@ New in version 3.1 (compared to Subsurface 3.0.2):
 New in version 3.0.2 (compared to Subsurface 3.0.1):
 ----------------------------------------------------
 
-This update was mainly triggered by a bug in the handling of pO2
+This update was mainly triggered by a bug in the handling of pO₂
 values read from CCR / rebreather dive computers. This bug can lead to
 incorrect data being stored in the Subsurface XML file. Installing
 Subsurface 3.0.2 and re-downloading the dives will correct the
 incorrect data. In order to re-download the dives connect your dive
 computer (this should only affect people with certain tec dive
-computers like the Shearwater Petrel or Predator that store pO2 values
-read from a pO2 sensor in their dive log), open the download dialog,
+computers like the Shearwater Petrel or Predator that store pO₂ values
+read from a pO₂ sensor in their dive log), open the download dialog,
 check the box "Force download of all dives" and download your
-dives. After you save your data file the correct pO2 data should be
+dives. After you save your data file the correct pO₂ data should be
 stored in the samples.
 
 If you are using one of those dive computers, have saved data files
@@ -268,7 +268,7 @@ New in version 3.0 (compared to Subsurface 2.1):
   - TriMix support
   - CCR support (fixed or variable setpoint, on dive computers that support
     this)
-  - Optional pO2, pN2 and pHe graphs
+  - Optional pO₂, pN₂ and pHe graphs
   - CNS tracking for supported divecomputers
 - Lots of bug fixes
 
diff --git a/deco.c b/deco.c
index a94deec..f5ffb89 100644
--- a/deco.c
+++ b/deco.c
@@ -177,8 +177,8 @@ double add_segment(double pressure, const struct gasmix *gasmix, int period_in_s
 {
 	int ci;
 	int fo2 = get_o2(gasmix), fhe = get_he(gasmix);
-	double ppn2 = (pressure - WV_PRESSURE) * (1000 - fo2 - fhe) / 1000.0;
-	double pphe = (pressure - WV_PRESSURE) * fhe / 1000.0;
+	double pn2 = (pressure - WV_PRESSURE) * (1000 - fo2 - fhe) / 1000.0;
+	double phe = (pressure - WV_PRESSURE) * fhe / 1000.0;
 
 	if (buehlmann_config.gf_low_at_maxdepth && pressure > gf_low_pressure_this_dive)
 		gf_low_pressure_this_dive = pressure;
@@ -188,24 +188,24 @@ double add_segment(double pressure, const struct gasmix *gasmix, int period_in_s
 		rel_o2_amb = ccpo2 / pressure / 1000;
 		f_dilutent = (1 - rel_o2_amb) / (1 - fo2 / 1000.0);
 		if (f_dilutent < 0) { /* setpoint is higher than ambient pressure -> pure O2 */
-			ppn2 = 0.0;
-			pphe = 0.0;
+			pn2 = 0.0;
+			phe = 0.0;
 		} else if (f_dilutent < 1.0) {
-			ppn2 *= f_dilutent;
-			pphe *= f_dilutent;
+			pn2 *= f_dilutent;
+			phe *= f_dilutent;
 		}
 	}
 
 	for (ci = 0; ci < 16; ci++) {
-		double ppn2_oversat = ppn2 - tissue_n2_sat[ci];
-		double pphe_oversat = pphe - tissue_he_sat[ci];
+		double pn2_oversat = pn2 - tissue_n2_sat[ci];
+		double phe_oversat = phe - tissue_he_sat[ci];
 		double n2_f = n2_factor(period_in_seconds, ci);
 		double he_f = he_factor(period_in_seconds, ci);
-		double n2_satmult = ppn2_oversat > 0 ? buehlmann_config.satmult : buehlmann_config.desatmult;
-		double he_satmult = pphe_oversat > 0 ? buehlmann_config.satmult : buehlmann_config.desatmult;
+		double n2_satmult = pn2_oversat > 0 ? buehlmann_config.satmult : buehlmann_config.desatmult;
+		double he_satmult = phe_oversat > 0 ? buehlmann_config.satmult : buehlmann_config.desatmult;
 
-		tissue_n2_sat[ci] += n2_satmult * ppn2_oversat * n2_f;
-		tissue_he_sat[ci] += he_satmult * pphe_oversat * he_f;
+		tissue_n2_sat[ci] += n2_satmult * pn2_oversat * n2_f;
+		tissue_he_sat[ci] += he_satmult * phe_oversat * he_f;
 	}
 	return tissue_tolerance_calc(dive);
 }
diff --git a/parse-xml.c b/parse-xml.c
index 6abb788..3fb013d 100644
--- a/parse-xml.c
+++ b/parse-xml.c
@@ -1727,7 +1727,7 @@ extern int dm4_events(void *handle, int columns, char **data, char **column)
 			cur_event.name = strdup("OLF");
 			break;
 		case 12:
-			/* 12 High ppO2 */
+			/* 12 High pO₂ */
 			cur_event.name = strdup("PO2");
 			break;
 		case 13:
diff --git a/planner.c b/planner.c
index 25fd490..43cd090 100644
--- a/planner.c
+++ b/planner.c
@@ -116,14 +116,14 @@ int get_gasidx(struct dive *dive, struct gasmix *mix)
 	return -1;
 }
 
-double interpolate_transition(struct dive *dive, int t0, int t1, int d0, int d1, const struct gasmix *gasmix, int ppo2)
+double interpolate_transition(struct dive *dive, int t0, int t1, int d0, int d1, const struct gasmix *gasmix, int po2)
 {
 	int j;
 	double tissue_tolerance = 0.0;
 
 	for (j = t0; j < t1; j++) {
 		int depth = interpolate(d0, d1, j - t0, t1 - t0);
-		tissue_tolerance = add_segment(depth_to_mbar(depth, dive) / 1000.0, gasmix, 1, ppo2, dive);
+		tissue_tolerance = add_segment(depth_to_mbar(depth, dive) / 1000.0, gasmix, 1, po2, dive);
 	}
 	return tissue_tolerance;
 }
diff --git a/pref.h b/pref.h
index 7eb3f56..811ca33 100644
--- a/pref.h
+++ b/pref.h
@@ -23,7 +23,7 @@ struct preferences {
 	double font_size;
 	partial_pressure_graphs_t pp_graphs;
 	short mod;
-	double modppO2;
+	double modpO2;
 	short ead;
 	short dcceiling;
 	short redceiling;
diff --git a/profile.c b/profile.c
index b40ef62..ef0cb79 100644
--- a/profile.c
+++ b/profile.c
@@ -1141,7 +1141,7 @@ static void calculate_gas_information_new(struct dive *dive, struct plot_info *p
 		fhe = get_he(&dive->cylinder[cylinderindex].gasmix);
 
 		if (entry->po2) {
-			/* we have an O2 partial pressure in the sample - so this
+			/* we have an O₂ partial pressure in the sample - so this
 			 * is likely a CC dive... use that instead of the value
 			 * from the cylinder info */
 			if (entry->po2 >= amb_pressure || fo2 == 1000) {
@@ -1160,10 +1160,10 @@ static void calculate_gas_information_new(struct dive *dive, struct plot_info *p
 
 		/* Calculate MOD, EAD, END and EADD based on partial pressures calculated before
 		 * so there is no difference in calculating between OC and CC
-		 * END takes O2 + N2 (air) into account ("Narcotic" for trimix dives)
-		 * EAD just uses N2 ("Air" for nitrox dives) */
-		pressure_t modppO2 = { .mbar = (int) (prefs.modppO2 * 1000) };
-		entry->mod = (double) gas_mod(&dive->cylinder[cylinderindex].gasmix, modppO2).mm;
+		 * END takes O₂ + N₂ (air) into account ("Narcotic" for trimix dives)
+		 * EAD just uses N₂ ("Air" for nitrox dives) */
+		pressure_t modpO2 = { .mbar = (int) (prefs.modpO2 * 1000) };
+		entry->mod = (double) gas_mod(&dive->cylinder[cylinderindex].gasmix, modpO2).mm;
 		entry->end = (entry->depth + 10000) * (1000 - fhe) / 1000.0 - 10000;
 		entry->ead = (entry->depth + 10000) * (1000 - fo2 - fhe) / (double)N2_IN_AIR - 10000;
 		entry->eadd = (entry->depth + 10000) *
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp
index 654a580..e8542da 100644
--- a/qt-ui/diveplanner.cpp
+++ b/qt-ui/diveplanner.cpp
@@ -600,11 +600,11 @@ bool DivePlannerPointsModel::addGas(struct gasmix mix)
 		if (cylinder_nodata(cyl)) {
 			fill_default_cylinder(cyl);
 			cyl->gasmix = mix;
-			/* The depth to change to that gas is given by the depth where its pO2 is 1.6 bar.
+			/* The depth to change to that gas is given by the depth where its pO₂ is 1.6 bar.
 			 * The user should be able to change this depth manually. */
-			pressure_t modppO2;
-			modppO2.mbar = 1600;
-			cyl->depth = gas_mod(&mix, modppO2);
+			pressure_t modpO2;
+			modpO2.mbar = 1600;
+			cyl->depth = gas_mod(&mix, modpO2);
 			CylindersModel::instance()->setDive(stagingDive);
 			return true;
 		}
diff --git a/qt-ui/models.cpp b/qt-ui/models.cpp
index 09b7371..167f548 100644
--- a/qt-ui/models.cpp
+++ b/qt-ui/models.cpp
@@ -249,9 +249,9 @@ bool CylindersModel::setData(const QModelIndex &index, const QVariant &value, in
 	case O2:
 		if (CHANGED()) {
 			cyl->gasmix.o2 = string_to_fraction(vString.toUtf8().data());
-			pressure_t modppO2;
-			modppO2.mbar = 1600;
-			cyl->depth = gas_mod(&cyl->gasmix, modppO2);
+			pressure_t modpO2;
+			modpO2.mbar = 1600;
+			cyl->depth = gas_mod(&cyl->gasmix, modpO2);
 			changed = true;
 		}
 		break;
diff --git a/qt-ui/plannerSettings.ui b/qt-ui/plannerSettings.ui
index 7cb0c35..547bd81 100644
--- a/qt-ui/plannerSettings.ui
+++ b/qt-ui/plannerSettings.ui
@@ -65,14 +65,14 @@
           <item row="1" column="0">
            <widget class="QLabel" name="label_6">
             <property name="text">
-             <string> bottom ppO2</string>
+             <string> bottom pO₂</string>
             </property>
            </widget>
           </item>
           <item row="2" column="0">
            <widget class="QLabel" name="label_7">
             <property name="text">
-             <string>deco ppO2</string>
+             <string>deco pO₂</string>
             </property>
            </widget>
           </item>
diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp
index 768275d..034d1be 100644
--- a/qt-ui/preferences.cpp
+++ b/qt-ui/preferences.cpp
@@ -54,7 +54,7 @@ void PreferencesDialog::setUiFromPrefs()
 	ui.pheThreshold->setValue(prefs.pp_graphs.phe_threshold);
 	ui.po2Threshold->setValue(prefs.pp_graphs.po2_threshold);
 	ui.pn2Threshold->setValue(prefs.pp_graphs.pn2_threshold);
-	ui.maxppo2->setValue(prefs.modppO2);
+	ui.maxpo2->setValue(prefs.modpO2);
 	ui.red_ceiling->setChecked(prefs.redceiling);
 	ui.units_group->setEnabled(ui.personalize->isChecked());
 
@@ -187,7 +187,7 @@ void PreferencesDialog::syncSettings()
 	s.setValue("phethreshold", ui.pheThreshold->value());
 	s.setValue("po2threshold", ui.po2Threshold->value());
 	s.setValue("pn2threshold", ui.pn2Threshold->value());
-	s.setValue("modppO2", ui.maxppo2->value());
+	s.setValue("modpO2", ui.maxpo2->value());
 	SB("redceiling", ui.red_ceiling);
 	s.setValue("gflow", ui.gflow->value());
 	s.setValue("gfhigh", ui.gfhigh->value());
@@ -280,7 +280,7 @@ void PreferencesDialog::loadSettings()
 	GET_DOUBLE("pn2threshold", pp_graphs.pn2_threshold);
 	GET_DOUBLE("phethreshold", pp_graphs.phe_threshold);
 	GET_BOOL("mod", mod);
-	GET_DOUBLE("modppO2", modppO2);
+	GET_DOUBLE("modpO2", modpO2);
 	GET_BOOL("ead", ead);
 	GET_BOOL("redceiling", redceiling);
 	GET_BOOL("dcceiling", dcceiling);
diff --git a/qt-ui/preferences.ui b/qt-ui/preferences.ui
index 485577d..db99ff1 100644
--- a/qt-ui/preferences.ui
+++ b/qt-ui/preferences.ui
@@ -633,12 +633,12 @@
                  <bool>true</bool>
                 </property>
                 <property name="text">
-                 <string>max ppO₂ when showing MOD</string>
+                 <string>max pO₂ when showing MOD</string>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="QDoubleSpinBox" name="maxppo2">
+               <widget class="QDoubleSpinBox" name="maxpo2">
                 <property name="enabled">
                  <bool>true</bool>
                 </property>
diff --git a/qt-ui/profile/diveeventitem.cpp b/qt-ui/profile/diveeventitem.cpp
index 0a468d0..fc65f8e 100644
--- a/qt-ui/profile/diveeventitem.cpp
+++ b/qt-ui/profile/diveeventitem.cpp
@@ -92,7 +92,7 @@ void DiveEventItem::setupToolTipString()
 		}
 	} else if (type == SAMPLE_EVENT_PO2 && name == "SP change") {
 		// this is a bad idea - we are abusing an existing event type that is supposed to
-		// warn of high or low PO2 and are turning it into a set point change event
+		// warn of high or low pO₂ and are turning it into a set point change event
 		name += "\n" + tr("Bailing out to OC");
 	} else {
 		name += internalEvent->flags == SAMPLE_FLAGS_BEGIN ? tr(" begin", "Starts with space!") :
diff --git a/qt-ui/profile/diveplotdatamodel.cpp b/qt-ui/profile/diveplotdatamodel.cpp
index 2fe636a..08bcf11 100644
--- a/qt-ui/profile/diveplotdatamodel.cpp
+++ b/qt-ui/profile/diveplotdatamodel.cpp
@@ -104,7 +104,7 @@ QVariant DivePlotDataModel::headerData(int section, Qt::Orientation orientation,
 	case CYLINDERINDEX:
 		return tr("Cylinder Index");
 	case SENSOR_PRESSURE:
-		return tr("Pressure  S");
+		return tr("Pressure S");
 	case INTERPOLATED_PRESSURE:
 		return tr("Pressure I");
 	case CEILING:
@@ -112,11 +112,11 @@ QVariant DivePlotDataModel::headerData(int section, Qt::Orientation orientation,
 	case SAC:
 		return tr("SAC");
 	case PN2:
-		return tr("PN2");
+		return tr("pN₂");
 	case PHE:
-		return tr("PHE");
+		return tr("pHe");
 	case PO2:
-		return tr("PO2");
+		return tr("pO₂");
 	}
 	if (role == Qt::DisplayRole && section >= TISSUE_1 && section <= TISSUE_16) {
 		return QString("Ceiling: %1").arg(section - TISSUE_1);
diff --git a/save-html.c b/save-html.c
index e77f79a..ab1302e 100644
--- a/save-html.c
+++ b/save-html.c
@@ -33,9 +33,9 @@ static void put_cylinder_HTML(struct membuffer *b, struct dive *dive)
 		put_pressure(b, cylinder->end, "\"EPressure\":\"", " bar\",");
 
 		if (cylinder->gasmix.o2.permille) {
-			put_format(b, "\"O2\":\"%u.%u%%\",", FRACTION(cylinder->gasmix.o2.permille, 10));
+			put_format(b, "\"O₂\":\"%u.%u%%\",", FRACTION(cylinder->gasmix.o2.permille, 10));
 		} else {
-			write_attribute(b, "O2", "--");
+			write_attribute(b, "O₂", "--");
 		}
 		put_string(b, "},");
 	}
diff --git a/subsurfacestartup.c b/subsurfacestartup.c
index 8566d19..da9fc23 100644
--- a/subsurfacestartup.c
+++ b/subsurfacestartup.c
@@ -16,7 +16,7 @@ struct preferences default_prefs = {
 		.phe_threshold = 13.0,
 	},
 	.mod = false,
-	.modppO2 = 1.6,
+	.modpO2 = 1.6,
 	.ead = false,
 	.hrgraph = true,
 	.dcceiling = true,
diff --git a/terms b/terms
index 8e63864..b3a68c3 100644
--- a/terms
+++ b/terms
@@ -18,9 +18,8 @@ CNS		 Central Nervous System Oxygen Toxicity - a
 
 maxCNS		 the highest CNS value during a dive
 
-PO2, PN2, PHe	 These are all partial pressures of the three
-PO₂, PN₂	 gases Oxygen (O2 or O₂), Nitrogen (N2 or N₂)
-		 and Helium (He).
+pO₂, pN₂, pHe	 These are all partial pressures of the three
+		 gases Oxygen (O₂), Nitrogen (N₂) and Helium (He).
 
 O₂%, He%	 The fraction of Oxygen and Helium in a gas.
 		 The partial pressure is therefore the pressure
diff --git a/uemis.c b/uemis.c
index 59f7057..bdffde0 100644
--- a/uemis.c
+++ b/uemis.c
@@ -200,12 +200,12 @@ static void uemis_event(struct dive *dive, struct divecomputer *dc, struct sampl
 	if (flags[1] & 0x06) /* both bits 1 and 2 are a warning */
 		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "Speed Warning"));
 	if (flags[1] & 0x10)
-		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "PO2 Green Warning"));
+		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "pO₂ Green Warning"));
 #endif
 	if (flags[1] & 0x20)
-		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "PO2 Ascend Warning"));
+		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "pO₂ Ascend Warning"));
 	if (flags[1] & 0x40)
-		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "PO2 Ascend Alarm"));
+		add_event(dc, sample->time.seconds, 0, 0, 0, QT_TRANSLATE_NOOP("gettextFromC", "pO₂ Ascend Alarm"));
 	/* flags[2] reflects the deco / time bar
 	 * flags[3] reflects more display details on deco and pO2 */
 	if (flags[4] & 0x01)
-- 
1.8.5.2 (Apple Git-48)



More information about the subsurface mailing list