// Copyright(c) 2009-2013 Accellera Systems Initiative Inc.
// 1370 Trancas Street #163, Napa, CA 94558, USA.
//
// The material in constants.vams is an essential part of the Accellera Systems
// Initiative ("Accellera") Verilog-AMS Language Standard. Verbatim copies of
// the material in this Annex may be used and distributed without restriction.
// All other uses require permission from Accellera IP Committee
// (ipr-chair@lists.accellera.org).
// All other rights reserved.

// Mathematical and physical constants
`ifdef CONSTANTS_VAMS
`else
`define CONSTANTS_VAMS 1
// M_ is a mathmatical constant
`define   M_E        2.7182818284590452354
`define   M_LOG2E    1.4426950408889634074
`define   M_LOG10E   0.43429448190325182765
`define   M_LN2      0.69314718055994530942
`define   M_LN10     2.30258509299404568402
`define   M_PI       3.14159265358979323846
`define   M_TWO_PI   6.28318530717958647693 
`define   M_PI_2     1.57079632679489661923
`define   M_PI_4     0.78539816339744830962
`define   M_1_PI     0.31830988618379067154
`define   M_2_PI     0.63661977236758134308
`define   M_2_SQRTPI 1.12837916709551257390
`define   M_SQRT2    1.41421356237309504880
`define   M_SQRT1_2  0.70710678118654752440

// The following constants have been taken from http://physics.nist.gov
// P_ is a physical constant
// charge of electron in coulombs 
`define   P_Q        1.602176462e-19
// speed of light in vacuum in meters/sec
`define   P_C        2.99792458e8
// Boltzmann's constant in joules/kelvin
`define   P_K        1.3806503e-23
// Planck’s constant in joules*sec
`define   P_H        6.62606876e-34
// permittivity of vacuum in farads/meter
`define   P_EPS0     8.854187817e-12
// permeability of vacuum in henrys/meter
`define   P_U0       (4.0e-7 * `M_PI)
// zero celsius in kelvin
`define   P_CELSIUS0 273.15
`endif
