1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
/*
This file is part of adms - http://sourceforge.net/projects/mot-adms.
adms is a code generator for the Verilog-AMS language.
Copyright (C) 2016 Guilherme Brondani Torri <guitorri@gmail.com>
2016 Felix Salfelder <felix@salfelder.org>
This program is free software: you can 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.
This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
*/
`ifdef CONSTANTS_VAMS
`else
`define CONSTANTS_VAMS 1
/* Mathematical constants */
`define M_PI 3.14159265358979323846
`define M_SQRT2 1.41421356237309504880
/* Physical constants */
// P_EPS0 -> electric constant, vacuum permittivity (F m^−1)
`define P_EPS0 8.854187817e-12
// P_K -> Bolzman constant (J K^-1)
`define P_K 1.3806503e-23
// P_Q -> elementary electron charge (C)
`define P_Q 1.6021766208e-19
// P_CELCIUS0 -> zero Celsius in Kelvin
`define P_CELSIUS0 273.15
// from the wiki. bastien said that these are listed in the standard
`define M_E 2.71828182845904523536
`define M_LOG2E 1.44269504088896340737
`define M_LOG10E .43429448190325182765
`define M_LN2 .69314718055994530941
`define M_LN10 2.30258509299404568401
`define P_C 299792458 // m / s
`define P_H 6.62607004081e-34 //planck constant. in \text{ J⋅s}
`define P_U0 1.2566370614e-6 // v. perm. H / m or T·m / A or Wb / (A·m) or V·s / (A·m)
`endif // CONSTANTS_VAMS
|