Details of ScientificConstants Commands for Physical Constants
In the ScientificConstants package, the term ScientificConstants object refers to the objects returned by the Constant command applied to a physical constant or by the Element command applied to a property and an element (or isotope) of the periodic table.
There is a subset of commands that accept both physical constants and elements (or isotopes). However, some commands can be used with only physical constants and others with only elements and isotopes. The following sections give brief descriptions of the functionality available for physical constants in the ScientificConstants package. For more information on these commands, see:
add a physical constant
construct a physical constant object
return the definition of a physical constant
list the full names or symbols of all physical constants
return the uncertainty for a ScientificConstants object
return the unit object for a ScientificConstants object
test whether a physical constant is in the ScientificConstants package
modify a physical constant definition
For details on the functionality available for elements and isotopes, see Details of ScientificConstants Commands for Elements of the Periodic Table.
For sample applications, see the example worksheet Applications of the ScientificConstants Package.
For references, see ScientificConstants References.
To access or represent the value of a physical constant, use the Constant constructor. For example, the velocity of light (usually represented by the symbol c):
Constant( c );
For a list of the initial physical constants in the ScientificConstants package, see Initial Physical Constants.
To obtain the value of a ScientificConstants object, use the evalf command with a physical constant object.
evalf( Constant( c ) );
The preceding physical constant object was constructed without any reference to a system of units. Thus, when evaluated, it returns the physical constant value in the current system of units. For more information about checking the current system of units, see Units[UsingSystem]. To evaluate it in a different system, first change the system of units with Units[UseSystem].
Units:-UseSystem( CGS );
To obtain a unit object that contains the units of a ScientificConstants object, use the GetUnit command. For more information about unit objects, see Units[Unit].
GetUnit( Constant( c ) );
Units:-UseSystem( SI );
Again, the preceding physical constant object is constructed without any reference to a system of units. Thus, it returns its units in the current system of units.
To construct a physical constant object that always evaluates in a particular system of units, use the 'system' option.
Constant( c, system=FPS );
evalf( (7) ), GetUnit( (7) );
Notice that the preceding physical constant object has the system of units in which it evaluates displayed in index notation.
By using the 'units' option, the physical constant object is multiplied by the appropriate unit object. This is intended for use in the Standard Units environment.
Constant( c, units );
evalf( (9) );
Constant( c, system=FPS, units );
If the 'units' option is specified and the 'system' option is not specified, the current system is used.
Unlike c, which is exact, most physical constants have an associated uncertainty or error, which is a measure of the precision to which their values have been measured experimentally. For example, the gravitational constant (usually represented by G):
GetError( Constant( G ) );
The error returned for a ScientificConstants object is of constant type and in absolute (not relative) form. That is, the magnitude depends on the system of units. For more information about uncertainties, see GetError.
Some physical constants return an error of undefined, which indicates the error is implicit in the figures of the central value.
Because the objects in ScientificConstants have central values with associated uncertainties, they are also recognized by the ScientificErrorAnalysis package.
To view information for a physical constant in the ScientificConstants package, use the GetConstant command.
GetConstant( G );
Note that a physical constant can be identified by its full name (the first item in the sequence) or symbol. The name can be used in the Constant constructor, but is most useful as a brief description of the constant.
To list the physical constants in the ScientificConstants package, use the GetConstants command.
GetConstants( names )[1..5];
To check the existence of a physical constant in the ScientificConstants package, use the HasConstant command.
HasConstant( c );
Physical constants that are not in the package can be added by using the AddConstant command. For example, add the mass of the Moon.
AddConstant( Moon_mass, symbol=M[Moon], value=7.35e22, units=kg );
HasConstant( Moon_mass );
evalf( Constant( M[Moon] ) );
evalf( Constant( M[Moon], system=FPS ) );
To modify the information for a physical constant, for example, to change its symbol, use the ModifyConstant command.
ModifyConstant( Moon_mass, symbol=M[M] );
Add an error to the Moon mass physical constant.
ModifyConstant( M[M], value=7.35e22, uncertainty=0.005e22 );
GetConstant( M[M] );
To learn other ways to specify an error, see ModifyConstant.
Derived physical constants are defined in terms of other physical constants, for example:
GetConstant( hbar );
GetConstant( m[e] );
Derived physical constants are constructed and queried in the usual way.
Constant( hbar );
evalf( (24) ), GetError( (24) ), GetUnit( (24) );
ScientificConstants uses the ScientificErrorAnalysis package to calculate the error of a derived physical constant.
For a discussion of how the ScientificErrorAnalysis and ScientificConstants packages interact, see ScientificErrorAnalysis and ScientificConstants.
Some physical constants have their values determined to more than 10 significant figures. Hence, access of these values at the default setting of Digits may result in a loss of precision. For more precision, set Digits to a higher value, for example, 15.
Applications of the ScientificConstants Package
Initial Physical Constants
ScientificErrorAnalysis and ScientificConstants
Download Help Document
What kind of issue would you like to report? (Optional)