PhysicalValues/en

Aus expecco Wiki (Version 2.x)
Zur Navigation springen Zur Suche springen

Expecco supports values with units to represent physical values such as length, acceleration, area, volume, mass, temperature etc.

Physical values are useful for a nicer presentation of values (eg. in a report) and to convert between unit systems (eg. metric vs. imperial vs. US).

Physical values are implemented by the underlying Smalltalk system and can be used in JavaScript and Smalltalk elementary blocks. Similar public domain packages are available for Node and Python actions - these have to be installed with "rpm"or "pip".

Base Units[Bearbeiten]

All base units are measured in their corresponding SI standard notation. For example, a mass, which has a base unit of kilogram ("kg") will print itself as "kg', 'mg', 'µg' etc. depending on its magnitude. Explicit converters can be used to enforce a particular unit printing (eg. if you insist on printing a mass in pounds, in grams, etc.). See examples below on how those converters affect the printout of a value. Base units are:

s	second	time
m	metre	length
kg	kilogram	mass
A	ampere	electric current
K	kelvin	temperature
mol	mole	amount of substance
cd	candela	luminous intensity

SI Prefix[Bearbeiten]

Numbers can be scaled by an SI prefix message. For example:

1 gram -> '1 g'

whereas

1 micro gram -> '1 µg'

Possible scaling names are: 'atto', 'femto', 'pico', 'nano', 'micro', 'milli', 'kilo', 'mega', 'giga', 'tera', 'peta' (among others).

Mass[Bearbeiten]

Mass is measured in units of kilogram. The following operations return an instance of a mass (i.e. a value with a unit of "Mass"):

  • number kiloGram
    Generates a mass-value of n kilograms. Same as number kilo gram.
  • number gram
    Generates a mass-value of n grams.
  • number milliGram
    Generates a mass-value of n milligrams. Same as number milli gram.
  • number microGram
    Generates a mass-value of n micrograms. Same as number micro gram.

Conversion[Bearbeiten]

  • aMass asGrams
    Returns the original mass but enforces explicit printing in grams.
  • aMass asMilliGrams
    Enforces explicit printing in milligrams.
  • aMass asKiloGrams
    Enforces explicit printing in kilograms.

Length[Bearbeiten]

  • number meter
    Generates a length-value of n meters.
  • number milliMeter
    Generates a length-value of n millimeters.
  • number microMeter
    Generates a length-value of n micrometers.
  • number kiloMeter
    Generates a length-value of n kilometers.

Temperature[Bearbeiten]

  • number kelvin
    Generates an temperature-value of n Kelvin.
  • number degreesCelcius
    Generates an temperature-value of n degrees Celsius.
  • number degreesFahrenheit
    Generates an temperature-value of n degrees Fahrenheit.

Frequency[Bearbeiten]

  • number hertz
    Generates an frequency-value of n hertz.
  • number kiloHertz
    Generates an frequency-value of n kilohertz.
  • number megaHertz
    Generates an frequency-value of n megahertz.
  • number gigaHertz
    Generates an frequency-value of n gigahertz.

Energy[Bearbeiten]

  • number joule
    Generates an energy-value of n joule.
  • number kiloJoule
    Generates an energy-value of n kilojoule.
  • number megaJoule
    Generates an energy-value of n megajoule.
  • number kiloWattHours
    Generates an energy-value of n kiloWattHours.

Power[Bearbeiten]

  • number watt
    Generates a power-value of n watt.
  • number kiloWatt
    Generates a power-value of n kiloWatt.
  • number megaWatt
    Generates a power-value of n megaWatt.
  • number gigaWatt
    Generates a power-value of n gigaWatt.

Area[Bearbeiten]

  • number squareMeter
    Generates an area-value of n square meters.
  • number hectare
    Generates an area-value of n hectares.

Volume[Bearbeiten]

  • number liter
    Generates an volume-value of n liters.
  • number milliLiter
    Generates a length-value of n milliliters.

Mass Density[Bearbeiten]

This is a derived unit, which is generated when dividing a mass by a volume; eg:

10 kiloGram / 1 liter 

gives

'10000 kg / m³'

Examples[Bearbeiten]

1 kiloGram + 10.0 gram -> '1.01 kg' 
10 gram -> '10 g'
10 gram asKiloGrams -> '0.01 kg'
10 gram asMilliGrams -> '10000 mg'
1 microGram -> '1 µg'
1 micro gram -> '1 µg'
1 micro inch -> '25.4 nm'



Copyright © 2014-2024 eXept Software AG