Dynamic.php 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?php
  2. /**
  3. * Zend Framework
  4. *
  5. * LICENSE
  6. *
  7. * This source file is subject to the new BSD license that is bundled
  8. * with this package in the file LICENSE.txt.
  9. * It is also available through the world-wide-web at this URL:
  10. * http://framework.zend.com/license/new-bsd
  11. * If you did not receive a copy of the license and are unable to
  12. * obtain it through the world-wide-web, please send an email
  13. * to license@zend.com so we can send you a copy immediately.
  14. *
  15. * @category Zend
  16. * @package Zend_Measure
  17. * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
  18. * @license http://framework.zend.com/license/new-bsd New BSD License
  19. * @version $Id$
  20. */
  21. /**
  22. * Implement needed classes
  23. */
  24. #require_once 'Zend/Measure/Abstract.php';
  25. #require_once 'Zend/Locale.php';
  26. /**
  27. * Class for handling acceleration conversions
  28. *
  29. * @category Zend
  30. * @package Zend_Measure
  31. * @subpackage Zend_Measure_Viscosity_Dynamic
  32. * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
  33. * @license http://framework.zend.com/license/new-bsd New BSD License
  34. */
  35. class Zend_Measure_Viscosity_Dynamic extends Zend_Measure_Abstract
  36. {
  37. const STANDARD = 'KILOGRAM_PER_METER_SECOND';
  38. const CENTIPOISE = 'CENTIPOISE';
  39. const DECIPOISE = 'DECIPOISE';
  40. const DYNE_SECOND_PER_SQUARE_CENTIMETER = 'DYNE_SECOND_PER_SQUARE_CENTIMETER';
  41. const GRAM_FORCE_SECOND_PER_SQUARE_CENTIMETER = 'GRAM_FORCE_SECOND_PER_SQUARE_CENTIMETER';
  42. const GRAM_PER_CENTIMETER_SECOND = 'GRAM_PER_CENTIMETER_SECOND';
  43. const KILOGRAM_FORCE_SECOND_PER_SQUARE_METER = 'KILOGRAM_FORCE_SECOND_PER_SQUARE_METER';
  44. const KILOGRAM_PER_METER_HOUR = 'KILOGRAM_PER_METER_HOUR';
  45. const KILOGRAM_PER_METER_SECOND = 'KILOGRAM_PER_METER_SECOND';
  46. const MILLIPASCAL_SECOND = 'MILLIPASCAL_SECOND';
  47. const MILLIPOISE = 'MILLIPOISE';
  48. const NEWTON_SECOND_PER_SQUARE_METER = 'NEWTON_SECOND_PER_SQUARE_METER';
  49. const PASCAL_SECOND = 'PASCAL_SECOND';
  50. const POISE = 'POISE';
  51. const POISEUILLE = 'POISEUILLE';
  52. const POUND_FORCE_SECOND_PER_SQUARE_FEET = 'POUND_FORCE_SECOND_PER_SQUARE_FEET';
  53. const POUND_FORCE_SECOND_PER_SQUARE_INCH = 'POUND_FORCE_SECOND_PER_SQUARE_INCH';
  54. const POUND_PER_FOOT_HOUR = 'POUND_PER_FOOT_HOUR';
  55. const POUND_PER_FOOT_SECOND = 'POUND_PER_FOOT_SECOND';
  56. const POUNDAL_HOUR_PER_SQUARE_FOOT = 'POUNDAL_HOUR_PER_SQUARE_FOOT';
  57. const POUNDAL_SECOND_PER_SQUARE_FOOT = 'POUNDAL_SECOND_PER_SQUARE_FOOT';
  58. const REYN = 'REYN';
  59. const SLUG_PER_FOOT_SECOND = 'SLUG_PER_FOOT_SECOND';
  60. const LBFS_PER_SQUARE_FOOT = 'LBFS_PER_SQUARE_FOOT';
  61. const NS_PER_SQUARE_METER = 'NS_PER_SQUARE_METER';
  62. const WATER_20C = 'WATER_20C';
  63. const WATER_40C = 'WATER_40C';
  64. const HEAVY_OIL_20C = 'HEAVY_OIL_20C';
  65. const HEAVY_OIL_40C = 'HEAVY_OIL_40C';
  66. const GLYCERIN_20C = 'GLYCERIN_20C';
  67. const GLYCERIN_40C = 'GLYCERIN_40C';
  68. const SAE_5W_MINUS18C = 'SAE_5W_MINUS18C';
  69. const SAE_10W_MINUS18C = 'SAE_10W_MINUS18C';
  70. const SAE_20W_MINUS18C = 'SAE_20W_MINUS18C';
  71. const SAE_5W_99C = 'SAE_5W_99C';
  72. const SAE_10W_99C = 'SAE_10W_99C';
  73. const SAE_20W_99C = 'SAE_20W_99C';
  74. /**
  75. * Calculations for all dynamic viscosity units
  76. *
  77. * @var array
  78. */
  79. protected $_units = array(
  80. 'CENTIPOISE' => array('0.001', 'cP'),
  81. 'DECIPOISE' => array('0.01', 'dP'),
  82. 'DYNE_SECOND_PER_SQUARE_CENTIMETER' => array('0.1', 'dyn s/cm²'),
  83. 'GRAM_FORCE_SECOND_PER_SQUARE_CENTIMETER' => array('98.0665', 'gf s/cm²'),
  84. 'GRAM_PER_CENTIMETER_SECOND' => array('0.1', 'g/cm s'),
  85. 'KILOGRAM_FORCE_SECOND_PER_SQUARE_METER' => array('9.80665', 'kgf s/m²'),
  86. 'KILOGRAM_PER_METER_HOUR' => array(array('' => '1', '/' => '3600'), 'kg/m h'),
  87. 'KILOGRAM_PER_METER_SECOND' => array('1', 'kg/ms'),
  88. 'MILLIPASCAL_SECOND' => array('0.001', 'mPa s'),
  89. 'MILLIPOISE' => array('0.0001', 'mP'),
  90. 'NEWTON_SECOND_PER_SQUARE_METER' => array('1', 'N s/m²'),
  91. 'PASCAL_SECOND' => array('1', 'Pa s'),
  92. 'POISE' => array('0.1', 'P'),
  93. 'POISEUILLE' => array('1', 'Pl'),
  94. 'POUND_FORCE_SECOND_PER_SQUARE_FEET' => array('47.880259', 'lbf s/ft²'),
  95. 'POUND_FORCE_SECOND_PER_SQUARE_INCH' => array('6894.75729', 'lbf s/in²'),
  96. 'POUND_PER_FOOT_HOUR' => array('0.00041337887', 'lb/ft h'),
  97. 'POUND_PER_FOOT_SECOND' => array('1.4881639', 'lb/ft s'),
  98. 'POUNDAL_HOUR_PER_SQUARE_FOOT' => array('0.00041337887', 'pdl h/ft²'),
  99. 'POUNDAL_SECOND_PER_SQUARE_FOOT' => array('1.4881639', 'pdl s/ft²'),
  100. 'REYN' => array('6894.75729', 'reyn'),
  101. 'SLUG_PER_FOOT_SECOND'=> array('47.880259', 'slug/ft s'),
  102. 'WATER_20C' => array('0.001', 'water (20°)'),
  103. 'WATER_40C' => array('0.00065', 'water (40°)'),
  104. 'HEAVY_OIL_20C' => array('0.45', 'oil (20°)'),
  105. 'HEAVY_OIL_40C' => array('0.11', 'oil (40°)'),
  106. 'GLYCERIN_20C' => array('1.41', 'glycerin (20°)'),
  107. 'GLYCERIN_40C' => array('0.284', 'glycerin (40°)'),
  108. 'SAE_5W_MINUS18C' => array('1.2', 'SAE 5W (-18°)'),
  109. 'SAE_10W_MINUS18C' => array('2.4', 'SAE 10W (-18°)'),
  110. 'SAE_20W_MINUS18C' => array('9.6', 'SAE 20W (-18°)'),
  111. 'SAE_5W_99C' => array('0.0039', 'SAE 5W (99°)'),
  112. 'SAE_10W_99C' => array('0.0042', 'SAE 10W (99°)'),
  113. 'SAE_20W_99C' => array('0.0057', 'SAE 20W (99°)'),
  114. 'STANDARD' => 'KILOGRAM_PER_METER_SECOND'
  115. );
  116. }