home *** CD-ROM | disk | FTP | other *** search
-
- -- The combinational problem of converting from every unit to every
- -- other units of the same dimension is too large to be practical.
- --
- -- The compromise solution is to provide:
- -- MKS, conversion of every metric unit to the corresponding MKS unit
- -- MKS, conversion of primary English unit to corresponding MKS unit
- -- ENGLISH, conversion of every English unit to the primary English unit
- -- ENGLISH, conversion of every MKS unit to corresponding primary English unit
- -- CONVERT, conversion from primary English unit to other English units
- -- CONVERT, conversion from MKS unit to other metric units
- --
- -- The overloaded function MKS returns the MKS value.
- --
- -- The overloaded function ENGLISH returns the primary English value.
- --
- -- The overloaded function CONVERT returns all units
- -- other than MKS or primary English
- --
- -- Note: Any of these functions may need to be called with qualification.
- -- Usually, MKS and ENGLISH will not require qualification.
- -- Almost always, CONVERT will require qualification.
- --
- -- PUT ( LENGTH_CENTIMETER' ( CONVERT ( SOME_LENGTH ) ) ) ;
- --
- -- DO NOT get the concept of units conversion confused with the
- -- Ada concept of type conversion. An Ada type conversion CAN NOT
- -- change meters to feet.
- --
- with PHYSICAL_UNITS_BASIC ; use PHYSICAL_UNITS_BASIC ;
- with PHYSICAL_UNITS_MECHANICAL ; use PHYSICAL_UNITS_MECHANICAL ;
- with PHYSICAL_UNITS_ELECTRICAL ; use PHYSICAL_UNITS_ELECTRICAL ;
-
- package PHYSICAL_UNITS_CONVERSION_MKS is
-
- function MKS ( ITEM : LENGTH_ENGLISH ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_PICOMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_NANOMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_MICROMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_MILLIMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_CENTIMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_DECIMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_DECAMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_HECTOMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_KILOMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_MEGAMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_GIGAMETER ) return LENGTH_MKS ;
-
- function MKS ( ITEM : LENGTH_ANGSTROM ) return LENGTH_MKS ;
-
- function MKS ( ITEM : MASS_ENGLISH ) return MASS_MKS ;
-
- function MKS ( ITEM : MASS_MILLIGRAM ) return MASS_MKS ;
-
- function MKS ( ITEM : MASS_GRAM ) return MASS_MKS ;
-
- function MKS ( ITEM : MASS_TON_METRIC ) return MASS_MKS ;
-
- function MKS ( ITEM : TIME_PICOSECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_NANOSECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MICROSECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MILLISECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_CENTISECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_KILOSECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MEGASECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_GIGASECOND ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MINUTE ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_HOUR ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_DAY ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_FORTNIGHT ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MONTH ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_YEAR ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_DECADE ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_CENTURY ) return TIME_SECOND ;
-
- function MKS ( ITEM : TIME_MILLENNIA ) return TIME_SECOND ;
-
- function MKS ( ITEM : CHARGE_AMPERE_HOURS ) return CHARGE_COULOMB ;
-
- function MKS ( ITEM : CHARGE_ELECTRON ) return CHARGE_COULOMB ;
-
- function MKS ( ITEM : CHARGE_FARADAY ) return CHARGE_COULOMB ;
-
- function MKS ( ITEM : TEMPERATURE_CENTIGRADE ) return TEMPERATURE_KELVIN ;
-
- function MKS ( ITEM : TEMPERATURE_FARENHEIT ) return TEMPERATURE_KELVIN ;
-
- function MKS ( ITEM : ANGLE_SECOND ) return ANGLE_RADIAN ;
-
- function MKS ( ITEM : ANGLE_MINUTE ) return ANGLE_RADIAN ;
-
- function MKS ( ITEM : ANGLE_DEGREE ) return ANGLE_RADIAN ;
-
- function MKS ( ITEM : ANGLE_REVOLUTION ) return ANGLE_RADIAN ;
-
- function MKS ( ITEM : ANGLE_BAM ) return ANGLE_RADIAN ;
-
- function MKS ( ITEM : AREA_ENGLISH ) return AREA_MKS ;
-
- function MKS ( ITEM : AREA_SQUARE_CENTIMETER ) return AREA_MKS ;
-
- function MKS ( ITEM : AREA_SQUARE_KILOMETER ) return AREA_MKS ;
-
- function MKS ( ITEM : AREA_HECTARE ) return AREA_MKS ;
-
- function MKS ( ITEM : VOLUME_ENGLISH ) return VOLUME_MKS ;
-
- function MKS ( ITEM : VOLUME_MILLILITER ) return VOLUME_MKS ;
-
- function MKS ( ITEM : VOLUME_LITER ) return VOLUME_MKS ;
-
- function MKS ( ITEM : VOLUME_KILOLITER ) return VOLUME_MKS ;
-
- function MKS ( ITEM : VOLUME_CUBIC_CENTIMETER ) return VOLUME_MKS ;
-
- function MKS ( ITEM : VELOCITY_ENGLISH ) return VELOCITY_MKS ;
-
- function MKS ( ITEM : VELOCITY_CENTIMETER_PER_SECOND ) return VELOCITY_MKS ;
-
- function MKS ( ITEM : VELOCITY_KILOMETER_PER_HOUR ) return VELOCITY_MKS ;
-
- function MKS ( ITEM : ACCELERATION_ENGLISH ) return ACCELERATION_MKS ;
-
- function MKS ( ITEM : FORCE_DYNE ) return FORCE_MKS ;
-
- function MKS ( ITEM : FORCE_ENGLISH ) return FORCE_MKS ;
-
- function MKS ( ITEM : ENERGY_ERG ) return ENERGY_MKS ;
-
- function MKS ( ITEM : ENERGY_GRAM_CALORIE ) return ENERGY_MKS ;
-
- function MKS ( ITEM : ENERGY_KILOGRAM_CALORIE ) return ENERGY_MKS ;
-
- function MKS ( ITEM : ENERGY_ENGLISH ) return ENERGY_MKS ;
-
- function MKS ( ITEM : POWER_KILOGRAM_CALORIE_PER_SECOND ) return POWER_MKS ;
-
- function MKS ( ITEM : POWER_KILOGRAN_CALORIE_PER_MINUTE ) return POWER_MKS ;
-
- function MKS ( ITEM : POWER_HORSEPOWER_METRIC ) return POWER_MKS ;
-
- function MKS ( ITEM : DENSITY_ENGLISH ) return DENSITY_MKS ;
-
- function MKS ( ITEM : FLOW_RATE_ENGLISH ) return FLOW_RATE_MKS ;
-
- function MKS ( ITEM : PRESSURE_ENGLISH ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : PRESSURE_ATMOSPHERE_STANDARD ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : PRESSURE_MILLIMETER_OF_MERCURY ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : PRESSURE_BAR ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : PRESSURE_MILLIBAR ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : PRESSURE_TORR ) return PRESSURE_MKS ;
-
- function MKS ( ITEM : CURRENT_MILLIAMPERE ) return CURRENT_AMPERE ;
-
- function MKS ( ITEM : CURRENT_MICROAMPERE ) return CURRENT_AMPERE ;
-
- function MKS ( ITEM : CURRENT_ABAMPERE ) return CURRENT_AMPERE ;
-
- function MKS ( ITEM : CURRENT_STATAMPERE ) return CURRENT_AMPERE ;
-
- function MKS ( ITEM : VOLTAGE_MILLIVOLT ) return VOLTAGE_VOLT ;
-
- function MKS ( ITEM : VOLTAGE_MICROVOLT ) return VOLTAGE_VOLT ;
-
- function MKS ( ITEM : VOLTAGE_KILOVOLT ) return VOLTAGE_VOLT ;
-
- function MKS ( ITEM : RESISTANCE_MILLIOHM ) return RESISTANCE_OHM ;
-
- function MKS ( ITEM : RESISTANCE_KILOHM ) return RESISTANCE_OHM ;
-
- function MKS ( ITEM : RESISTANCE_MEGOHM ) return RESISTANCE_OHM ;
-
- function MKS ( ITEM : CAPACITANCE_MICROFARAD ) return CAPACITANCE_FARAD ;
-
- function MKS ( ITEM : CAPACITANCE_PICOFARAD ) return CAPACITANCE_FARAD ;
-
- function MKS ( ITEM : INDUCTANCE_MILLIHENRY ) return INDUCTANCE_HENRY ;
-
- function MKS ( ITEM : INDUCTANCE_MICROHENRY ) return INDUCTANCE_HENRY ;
-
- function MKS ( ITEM : FREQUENCY_KILOHERTZ ) return FREQUENCY_HERTZ ;
-
- function MKS ( ITEM : FREQUENCY_MEGAHERTZ ) return FREQUENCY_HERTZ ;
-
- function MKS ( ITEM : FREQUENCY_GIGAHERTZ ) return FREQUENCY_HERTZ ;
-
- end PHYSICAL_UNITS_CONVERSION_MKS ;
-