Changeset 525 for trunk/src/core
- Timestamp:
- Sep 20, 2006 10:14:40 AM (18 years ago)
- Location:
- trunk/src/core
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/core/RpUnits.cc
r520 r525 1212 1212 } 1213 1213 1214 // outVal.flags(std::ios::fixed); 1215 // outVal.precision(10); 1216 1214 1217 if (showUnits) { 1215 1218 outVal << numVal << toUnitsName; … … 1673 1676 retVal = RpUnitsPreset::addPresetAll(); 1674 1677 } 1675 else if (group.compare( "energy") == 0) {1678 else if (group.compare(RP_TYPE_ENERGY) == 0) { 1676 1679 retVal = RpUnitsPreset::addPresetEnergy(); 1677 1680 } 1678 else if (group.compare( "length") == 0) {1681 else if (group.compare(RP_TYPE_LENGTH) == 0) { 1679 1682 retVal = RpUnitsPreset::addPresetLength(); 1680 1683 } 1681 else if (group.compare( "temp") == 0) {1684 else if (group.compare(RP_TYPE_TEMP) == 0) { 1682 1685 retVal = RpUnitsPreset::addPresetTemp(); 1683 1686 } 1684 else if (group.compare( "time") == 0) {1687 else if (group.compare(RP_TYPE_TIME) == 0) { 1685 1688 retVal = RpUnitsPreset::addPresetTime(); 1686 1689 } 1687 else if (group.compare( "volume") == 0) {1690 else if (group.compare(RP_TYPE_VOLUME) == 0) { 1688 1691 retVal = RpUnitsPreset::addPresetVolume(); 1689 1692 } 1690 else if (group.compare( "angle") == 0) {1693 else if (group.compare(RP_TYPE_ANGLE) == 0) { 1691 1694 retVal = RpUnitsPreset::addPresetAngle(); 1695 } 1696 else if (group.compare(RP_TYPE_MASS) == 0) { 1697 retVal = RpUnitsPreset::addPresetMass(); 1698 } 1699 else if (group.compare(RP_TYPE_PRESSURE) == 0) { 1700 retVal = RpUnitsPreset::addPresetPressure(); 1701 } 1702 else if (group.compare(RP_TYPE_MISC) == 0) { 1703 retVal = RpUnitsPreset::addPresetMisc(); 1692 1704 } 1693 1705 … … 1716 1728 result += addPresetAngle(); 1717 1729 result += addPresetMass(); 1730 result += addPresetPressure(); 1718 1731 result += addPresetMisc(); 1719 1732 … … 1932 1945 1933 1946 /**********************************************************************/ 1947 // METHOD: addPresetPressure() 1948 /// Add pressure related units to the dictionary 1949 /** 1950 * http://www.ilpi.com/msds/ref/pressureunits.html 1951 * 1952 * Defines the following units: 1953 * bar (bar) 1954 * pascal (Pa) 1955 * pounds/(in^2) (psi) 1956 * torr (torr) 1957 * millimeters Mercury (mmHg) 1958 * 1959 * mmHg was added because as a convenience to those who have not 1960 * yet switched over to the new representation of torr. 1961 * 1962 * Return codes: 0 success, anything else is error 1963 */ 1964 1965 int 1966 RpUnitsPreset::addPresetPressure () { 1967 1968 RpUnits* atmosphere = RpUnits::define("atm", NULL, RP_TYPE_PRESSURE); 1969 RpUnits* bar = RpUnits::define("bar", NULL, RP_TYPE_PRESSURE); 1970 RpUnits* pascal = RpUnits::define("Pa", NULL, RP_TYPE_PRESSURE); 1971 RpUnits* psi = RpUnits::define("psi", NULL, RP_TYPE_PRESSURE); 1972 RpUnits* torr = RpUnits::define("torr", NULL, RP_TYPE_PRESSURE); 1973 RpUnits* mmHg = RpUnits::define("mmHg", torr, RP_TYPE_PRESSURE); 1974 1975 RpUnits::makeMetric(pascal); 1976 RpUnits::makeMetric(bar); 1977 1978 RpUnits::define(bar,pascal,bar2Pa,Pa2bar); 1979 RpUnits::define(bar,atmosphere,bar2atm,atm2bar); 1980 RpUnits::define(bar,psi,bar2psi,psi2bar); 1981 RpUnits::define(bar,torr,bar2torr,torr2bar); 1982 RpUnits::define(pascal,atmosphere,Pa2atm,atm2Pa); 1983 RpUnits::define(pascal,torr,Pa2torr,torr2Pa); 1984 RpUnits::define(pascal,psi,Pa2psi,psi2Pa); 1985 RpUnits::define(torr,atmosphere,torr2atm,atm2torr); 1986 RpUnits::define(torr,psi,torr2psi,psi2torr); 1987 1988 RpUnits::define(torr,mmHg,torr2mmHg,mmHg2torr); 1989 1990 return 0; 1991 } 1992 1993 /**********************************************************************/ 1934 1994 // METHOD: addPresetMisc() 1935 1995 /// Add Misc related units to the dictionary -
trunk/src/core/RpUnits.h
r520 r525 30 30 31 31 //define our different types of units 32 #define RP_TYPE_ENERGY "energy" 33 #define RP_TYPE_LENGTH "length" 34 #define RP_TYPE_TEMP "temperature" 35 #define RP_TYPE_TIME "time" 36 #define RP_TYPE_VOLUME "volume" 37 #define RP_TYPE_ANGLE "angle" 38 #define RP_TYPE_MASS "mass" 39 #define RP_TYPE_MISC "misc" 32 #define RP_TYPE_ENERGY "energy" 33 #define RP_TYPE_LENGTH "length" 34 #define RP_TYPE_TEMP "temperature" 35 #define RP_TYPE_TIME "time" 36 #define RP_TYPE_VOLUME "volume" 37 #define RP_TYPE_ANGLE "angle" 38 #define RP_TYPE_MASS "mass" 39 #define RP_TYPE_PRESSURE "pressure" 40 #define RP_TYPE_MISC "misc" 40 41 41 42 // should the define function: … … 64 65 static int addPresetAngle(); 65 66 static int addPresetMass(); 67 static int addPresetPressure(); 66 68 static int addPresetMisc(); 67 69 }; -
trunk/src/core/RpUnitsStd.cc
r515 r525 336 336 } 337 337 338 /**************************************** 339 * PRESSURE CONVERSIONS 340 * http://www.ilpi.com/msds/ref/pressureunits.html 341 * http://en.wikipedia.org/wiki/Bar_%28unit%29 342 ****************************************/ 343 344 double bar2Pa (double bar) 345 { 346 return (bar*100000.00); 347 } 348 349 double Pa2bar (double Pa) 350 { 351 return (Pa/100000.00); 352 } 353 354 double bar2atm (double bar) 355 { 356 return (bar*0.98692); 357 } 358 359 double atm2bar (double atm) 360 { 361 return (atm/0.98692); 362 } 363 364 double bar2torr (double bar) 365 { 366 return (bar*750.06); 367 } 368 369 double torr2bar (double torr) 370 { 371 return (torr/750.06); 372 } 373 374 double bar2psi (double bar) 375 { 376 return (bar*14.504); 377 } 378 379 double psi2bar (double psi) 380 { 381 return (psi*0.0689476); 382 } 383 384 double Pa2atm (double Pa) 385 { 386 return (Pa*9.8692e-6); 387 } 388 389 double atm2Pa (double atm) 390 { 391 // need to check this conversion 392 // tests fail 393 return (atm*101325.024); 394 } 395 396 double Pa2torr (double Pa) 397 { 398 return (Pa*7.5006e-3); 399 } 400 401 double torr2Pa (double torr) 402 { 403 return (torr/7.5006e-3); 404 } 405 406 double Pa2psi (double Pa) 407 { 408 return (Pa*145.04e-6); 409 } 410 411 double psi2Pa (double psi) 412 { 413 // need to check this conversion 414 // test fails because of truncation 415 return (psi*6894.7625831); 416 } 417 418 double torr2atm (double torr) 419 { 420 return (torr*1.3158e-3); 421 } 422 423 double atm2torr (double atm) 424 { 425 return (atm*760); 426 } 427 428 double torr2psi (double torr) 429 { 430 return (torr*19.337e-3); 431 } 432 433 double psi2torr (double psi) 434 { 435 return (psi*51.71496); 436 } 437 438 double torr2mmHg (double torr) 439 { 440 return (torr); 441 } 442 443 double mmHg2torr (double mmHg) 444 { 445 return (mmHg); 446 } 338 447 339 448 -
trunk/src/core/RpUnitsStd.h
r515 r525 93 93 double day2sec (double day); 94 94 95 96 97 98 double bar2Pa (double bar); 99 double Pa2bar (double Pa); 100 double bar2atm (double bar); 101 double atm2bar (double atm); 102 double bar2torr (double bar); 103 double torr2bar (double torr); 104 double bar2psi (double bar); 105 double psi2bar (double psi); 106 double Pa2atm (double Pa); 107 double atm2Pa (double atm); 108 double Pa2torr (double Pa); 109 double torr2Pa (double torr); 110 double Pa2psi (double Pa); 111 double psi2Pa (double psi); 112 double torr2atm (double torr); 113 double atm2torr (double atm); 114 double torr2psi (double torr); 115 double psi2torr (double psi); 116 double torr2mmHg (double torr); 117 double mmHg2torr (double mmHg); 118 double kPa2KPa (double kPa); 119 double KPa2kPa (double KPa); 120 121 122 95 123 #ifdef __cplusplus 96 124 }
Note: See TracChangeset
for help on using the changeset viewer.