FCSys.Units.Bases

Sets of base constants and units

Information

FCSys requires that the Faraday and gas constants are normalized to one. The structure of the Units package allows those constants to be relaxed, but the models in FCSys generally do not.

Some natural systems of units are not compatible with FCSys. Since the Faraday and gas constants are both normalized, it follows that kB = q. This is not the case for the Planck, Rydberg, and Natural systems of units [http://en.wikipedia.org/wiki/Natural_units].

The quasi-SI sets in this package are named by listing (in alphabetical order) the two units that are not normalized for the sake of setting the Faraday and gas constants equal to one. There are eight possible sets of this type (SIAK, SIAm, SIAs, SIKmol, SIKs, SImmol SIms, SImols).

For more information, please see the documentation for the Units package.

Extends from Modelica.Icons.Package (Icon for standard packages).

Package Content

NameDescription
FCSys.Units.Bases.FC FC Base constants and units that are well-scaled for fuel cell simulation and analysis
FCSys.Units.Bases.Gaussian Gaussian Base constants and units for Gaussian units (kA = ke = 1)
FCSys.Units.Bases.Hartree Hartree Base constants and units for Hartree units
FCSys.Units.Bases.LH LH Base constants and units for Lorentz-Heaviside units (μ0 = ε0 = 1)
FCSys.Units.Bases.Stoney Stoney Base constants and units for Stoney units
FCSys.Units.Bases.SIAK SIAK Base constants and units for SI with kF and R normalized instead of A and K
FCSys.Units.Bases.SIAm SIAm Base constants and units for SI with kF and R normalized instead of A and m
FCSys.Units.Bases.SIAs SIAs Base constants and units for SI with kF and R normalized instead of A and s
FCSys.Units.Bases.SIKmol SIKmol Base constants and units for SI with kF and R normalized instead of K and mol
FCSys.Units.Bases.SIKs SIKs Base constants and units for SI with kF and R normalized instead of K and s
FCSys.Units.Bases.SImmol SImmol Base constants and units for SI with kF and R normalized instead of m and mol
FCSys.Units.Bases.SIms SIms Base constants and units for SI with kF and R normalized instead of m and s
FCSys.Units.Bases.SImols SImols Base constants and units for SI with kF and R normalized instead of mol and s
FCSys.Units.Bases.Base Base Base constants and units

FCSys.Units.Bases.FC FCSys.Units.Bases.FC

Base constants and units that are well-scaled for fuel cell simulation and analysis

Information

The values of this record result in the following values for the base SI units (besides cd = 1, which is the default):

  • A ≈ 1e-5 (⇒ 1e3 C ≈ 1)
  • K ≈ 8.617
  • kg = 1e4 (⇒ 0.1 g = 1)
  • m = 10 (⇒ 10 cm = 1)
  • mol ≈ 96.485 (⇒ 0.01036 mol ≈1)
  • s = 100 (⇒ 10 ms = 1)
which are well-scaled for the states and efforts of a single-cell PEMFC. Also, with these settings:
  • 10 m/s ≈ 1
  • 9.872e-5 atm ≈ 1

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record FC 
  "Base constants and units that are well-scaled for fuel cell simulation and analysis"
  extends Base(
    final R_inf=1e-1*10973731.568539,
    final c=1e-1*299792458,
    final R_K=1e10*25812.8074434,
    final k_J=483597.870e9*sqrt(S*s/1e4)/m);
  // Note:  k_J = 483597.870e9*sqrt(S*s/x)/m sets kg = x.

end FC;

FCSys.Units.Bases.Gaussian FCSys.Units.Bases.Gaussian

Base constants and units for Gaussian units (kA = ke = 1)

Information

Gaussian systems of units impose:

  • kA = 1 ⇒ RK/c = 2π/α
  • ke = 1 ⇒ RK*c = 2π/α

Together, c = 1 and RK = 2π/α

The Gaussian conditions are not sufficient to fully establish the values of the base constants and units of the Units package. Gaussian units encompass other systems of units.

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record Gaussian 
  "Base constants and units for Gaussian units (kA = ke = 1)"
  extends Base(final c=1,final R_K=25812.8074434/(299792458*1e-7));

end Gaussian;

FCSys.Units.Bases.Hartree FCSys.Units.Bases.Hartree

Base constants and units for Hartree units

Information

The candela ('cd') is not final because luminous intensity is not included in Hartree units.

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record Hartree "Base constants and units for Hartree units"

  extends Base(
    final R_inf=pi*(299792458*1e-7/25812.8074434)^2,
    final c=25812.8074434/(2*pi*299792458*1e-7),
    final k_J=1/pi,
    final R_K=2*pi);

end Hartree;

FCSys.Units.Bases.LH FCSys.Units.Bases.LH

Base constants and units for Lorentz-Heaviside units (μ0 = ε0 = 1)

Information

Lorentz-Heaviside systems of units impose:

  • μ0 = 1 ⇒ RK/c = 1/(2α)
  • ε0 = 1 ⇒ RK c = 1/(2α)

Together, c = 1 and RK = 1/(2α)

The Lorentz-Heaviside conditions are not sufficient to fully establish the values of the base constants and units of the Units package. Lorentz-Heaviside units encompass other systems of units.

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record LH 
  "Base constants and units for Lorentz-Heaviside units (μ0 = ε0 = 1)"
  extends Base(final c=1,final R_K=25812.8074434/(4*pi*299792458*1e-7));

end LH;

FCSys.Units.Bases.Stoney FCSys.Units.Bases.Stoney

Base constants and units for Stoney units

Information

The Rydberg constant (R) is not final because the Units package does not include the gravitational constant. The candela ('cd') is not final because luminous intensity is not included in Stoney units.

For more information, please see the documentation for the Units package.

Extends from Gaussian (Base constants and units for Gaussian units (kA = ke = 1)).

Modelica definition

record Stoney "Base constants and units for Stoney units"

  extends Gaussian(final k_J=2e-7*299792458/25812.8074434);

end Stoney;

FCSys.Units.Bases.SIAK FCSys.Units.Bases.SIAK

Base constants and units for SI with kF and R normalized instead of A and K

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • A ≈ 1.03643e-5
  • K ≈ 8.31446

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIAK 
  "Base constants and units for SI with kF and R normalized instead of A and K"

  extends Base(
    final R_inf=10973731.568539,
    final c=299792458,
    final R_K=96485.3365^2*25812.8074434,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIAK;

FCSys.Units.Bases.SIAm FCSys.Units.Bases.SIAm

Base constants and units for SI with kF and R normalized instead of A and m

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • A ≈ 1.03643e-5
  • m ≈ 0.346803

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIAm 
  "Base constants and units for SI with kF and R normalized instead of A and m"

  extends Base(
    final R_inf=sqrt(8.3144621)*10973731.568539,
    final c=299792458/sqrt(8.3144621),
    final R_K=(96485.3365^2*25812.8074434)/8.3144621,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIAm;

FCSys.Units.Bases.SIAs FCSys.Units.Bases.SIAs

Base constants and units for SI with kF and R normalized instead of A and s

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • A ≈ 3.59436e-6
  • s ≈ 2.88348

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIAs 
  "Base constants and units for SI with kF and R normalized instead of A and s"
  extends Base(
    final R_inf=10973731.568539,
    final c=299792458/sqrt(8.3144621),
    final R_K=(96485.3365^2*25812.8074434)/sqrt(8.3144621),
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIAs;

FCSys.Units.Bases.SIKmol FCSys.Units.Bases.SIKmol

Base constants and units for SI with kF and R normalized instead of K and mol

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • K ≈ 8.61733e-5
  • mol ≈ 96485.3

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIKmol 
  "Base constants and units for SI with kF and R normalized instead of K and mol"
  extends Base(
    final R_inf=10973731.568539,
    final c=299792458,
    final R_K=25812.8074434,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIKmol;

FCSys.Units.Bases.SIKs FCSys.Units.Bases.SIKs

Base constants and units for SI with kF and R normalized instead of K and s

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • K ≈ 7.74028e10
  • s ≈ 1.03643e-5

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIKs 
  "Base constants and units for SI with kF and R normalized instead of K and s"
  extends Base(
    final R_inf=10973731.568539,
    final c=96485.3365*299792458,
    final R_K=96485.3365^3*25812.8074434,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIKs;

FCSys.Units.Bases.SImmol FCSys.Units.Bases.SImmol

Base constants and units for SI with kF and R normalized instead of m and mol

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • m ≈ 107.724
  • mol ≈ 96485.3

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SImmol 
  "Base constants and units for SI with kF and R normalized instead of m and mol"
  extends Base(
    final R_inf=sqrt(8.3144621/96485.3365)*10973731.568539,
    final c=sqrt(96485.3365/8.3144621)*299792458,
    final R_K=(96485.3365*25812.8074434)/8.3144621,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SImmol;

FCSys.Units.Bases.SIms FCSys.Units.Bases.SIms

Base constants and units for SI with kF and R normalized instead of m and s

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • m ≈ 3.59436e-6
  • s ≈ 1.03643e-5

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SIms 
  "Base constants and units for SI with kF and R normalized instead of m and s"
  extends Base(
    final R_inf=96485.3365*sqrt(8.3144621)*10973731.568539,
    final c=299792458/sqrt(8.3144621),
    final R_K=(96485.3365*25812.8074434)/8.3144621,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SIms;

FCSys.Units.Bases.SImols FCSys.Units.Bases.SImols

Base constants and units for SI with kF and R normalized instead of mol and s

Information

The values of the un-normalized SI base units are (see Resources/unit-systems.cdf):

  • mol ≈ 4261.73
  • s ≈ 0.0441697

For more information, please see the documentation for the Units package.

Extends from Base (Base constants and units).

Modelica definition

record SImols 
  "Base constants and units for SI with kF and R normalized instead of mol and s"
  extends Base(
    final R_inf=10973731.568539,
    final c=(96485.3365/8.3144621)^(1/3)*299792458,
    final R_K=(96485.3365*25812.8074434)/8.3144621,
    final k_J=483597.870e9*sqrt(S*s)/m,
    final 'cd'=1);

end SImols;

FCSys.Units.Bases.Base FCSys.Units.Bases.Base

Base constants and units

Information

Please see the notes in the Modelica code and the documentation of the Units package.

Extends from Modelica.Icons.Record (Icon for records).

Modelica definition

record Base "Base constants and units"
  extends Modelica.Icons.Record;

  final constant Q.Angle rad=1 "radian";
  // SI unit of rotation or planar angle
  // This condition is required by BIPM [BIPM2006, Table 3].  It can't be
  // relaxed because BIPM doesn't explicitly use angle in the definitions of
  // Hz, sr, etc. and NIST doesn't explicitly use angle in the relations for
  // R_inf, c_3_nu, etc. [NIST2010].
  constant Q.Wavenumber R_inf=1 
    "Rydberg constant (R)";
  // The SI unit length (meter) is inversely proportional to this value,
  // which should be increased for larger characteristic lengths.
  constant Q.Velocity c=1 "speed of light in vacuum (c)";
  // The SI unit time (second) is inversely proportional to this value (and
  // R_inf), which should be increased for larger characteristic times.
  constant Q.MagneticFluxReciprocal k_J=1 
    "Josephson constant (kJ)";
  // The SI unit of magnetic flux (weber) is inversely proportional to this
  // value, which should be increased for larger magnetic flux numbers.
  // Also, the SI unit of charge (coulomb) is inversely proportional to this
  // value.
  constant Q.ResistanceElectrical R_K=1 
    "von Klitzing constant (RK)";
  // The SI unit of electrical conductance (siemen) is inversely proportional
  // to this value, which should be increased for larger characteristic
  // conductances.  Also, the SI unit of charge (coulomb) is inversely
  // proportional to this value.
  constant Q.PowerRadiant 'cd'=1 "candela";
  // SI unit of luminous intensity
  // From http://en.wikipedia.org/wiki/Luminous_intensity, accessed 11/5/11:
  // "luminous intensity is a measure of the wavelength-weighted power
  // emitted by a light source in a particular direction per unit solid
  // angle, based on the luminosity function, a standardized model of the
  // sensitivity of the human eye."
  final constant Q.Number k_F=1 "Faraday constant (kF)";
  // The unit of substance (mole) is inversely proportional to this value.
  // The Faraday constant isn't adjustable because the equations of FCSys
  // require that it's one, which means that charge is considered to be an
  // amount of substance.
  final constant Q.Number R=1 "gas constant";
  // The unit of temperature (kelvin) is inversely proportional to this
  // value.  The gas constant isn't adjustable because the equations of FCSys
  // require that it's one, which means that temperature is considered to be
  // a potential.

end Base;