Source: physics.js

/*
 * rational.js - Javascript tools and libraries based around rational numbers.
 * Copyright (C) 2013 Dylan Ferris
 *
 * This file is part of rational.js.
 *
 * rational.js is free software: you may redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * rational.js is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with rational.js.  If not, see <http://www.gnu.org/licenses/>.
 */

/**
 * @class Physics
 * @name physics
 * @requires bigrat
 */
var physics = {};

/**
 * Fine-structure constant (α), according to CODATA 2011
 *
 * @property FINE_STRUCTURE
 * @type bigrat
 * @static
 * @final
 */
physics.FINE_STRUCTURE = bigrat.fromValues(30223, 4141639);

/**
 * Alias for {@link physics.FINE_STRUCTURE}
 * @type bigrat
 * @static
 * @final
 */
physics.a = physics.FINE_STRUCTURE;

/**
 * Approximately the fine-structure constant, generated mathematically
 *
 * @property FINE_STRUCTURE_ALT
 * @type bigrat
 * @static
 * @final
 */
physics.FINE_STRUCTURE_ALT = bigrat.fromValues(13355891, 1830237867);

/**
 * Planck's constant (h) in Joule seconds
 *
 * @property PLANK
 * @type bigrat
 * @static
 * @final
 */
physics.PLANK = bigrat.fromValues(662606957, 1e42);

/**
 * Alias for {@link physics.PLANKS}
 * @type bigrat
 * @static
 * @final
 */
physics.h = physics.PLANK;

/**
 * Reduced Planck's constant (h / 2π)
 *
 * @property HBAR
 * @type bigrat
 * @static
 * @final
 */
physics.hBAR = bigrat.fromValues(1054571726, 1e43);

/**
 * Gravitational constant (G) in m³ / kg s²
 *
 * @property GRAVITATIONAL
 * @type bigrat
 * @static
 * @final
 */
physics.GRAVITATIONAL = bigrat.fromValues(667384, 1e16);

/**
 * Alias for {@link physics.GRAVITATIONAL}
 * @type bigrat
 * @static
 * @final
 */
physics.G = physics.GRAVITATIONAL;

/**
 * The speed of light in vacuum (c) in m / s
 *
 * @property SPEED_OF_LIGHT
 * @type bigrat
 * @static
 * @final
 */
physics.SPEED_OF_LIGHT = bigrat.fromInteger(299792458);

/**
 * Alias for {@link physics.SPEED_OF_LIGHT}
 * @type bigrat
 * @static
 * @final
 */
physics.c = physics.SPEED_OF_LIGHT;

if(typeof(exports) !== 'undefined') {
	exports.physics = physics;
}