/[ascend]/trunk/models/measures.a4l
ViewVC logotype

Contents of /trunk/models/measures.a4l

Parent Directory Parent Directory | Revision Log Revision Log


Revision 373 - (show annotations) (download) (as text)
Tue Mar 14 08:39:37 2006 UTC (18 years, 6 months ago) by johnpye
File MIME type: text/x-ascend
File size: 10959 byte(s)
Tidied up formatting in measures.a4l
Added GPL notice to cavity.a4c
Fixed up reconfig to turn OFF gcov testing by default.
Removed some debug output from typedef.c and instantiate.c and arrayinst.c.
Commenting changes in extinst.h.
Working on getting the buildbot working :-)
1 PROVIDE "measures.a4l";
2
3 (*
4 * measures.a4l
5 * by Tom Epperly and Ben Allan
6 * Part of the ASCEND Library
7 * $Date: 1998/08/17 13:07:04 $
8 * $Revision: 1.5 $
9 * $Author: ballan $
10 * $Source: /afs/cs.cmu.edu/project/ascend/Repository/models/measures.a4l,v $
11 *
12 * This file is part of the ASCEND Modeling Library.
13 *
14 * This provides common unit definitions. The user may write additional
15 * files of unit definitions particular to their problem or site.
16 *
17 * Copyright (C) 1997 Carnegie Mellon University.
18 *
19 * The ASCEND Modeling Library is free software; you can redistribute
20 * it and/or modify it under the terms of the GNU General Public
21 * License as published by the Free Software Foundation; either
22 * version 2 of the License, or (at your option) any later version.
23 *
24 * The ASCEND Modeling Library is distributed in hope that it will be
25 * useful, but WITHOUT ANY WARRANTY; without even the implied
26 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
27 * See the GNU General Public License for more details.
28 *
29 * You should have received a copy of the GNU General Public License
30 * along with the program; if not, write to the Free Software
31 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139 USA. Check
32 * the file named COPYING.
33 *)
34
35 (*
36 * Units input file
37 * by Tom Epperly
38 * Copyright(C) 1990 Thomas Guthrie Epperly
39 * Copyright(C) 1994-1997 Carnegie Mellon University
40 *
41 * This is a file defining the conversion factors ASCEND will recognize when
42 * it sees them as {units). Note that the assignment x:= 0.5 {100};; yields
43 * x == 50, and that there are no 'offset conversions,' e.g. F=9/5C+32;
44 * Added money which isn't really time 3-94 BAA
45 * Expanded, including some of Karl's units, constants. 4-94 BAA
46 * Updated with supplementary SI dimensions and less ambiguous mole dim. jz/baa
47 *
48 * Please keep unit names to 20 characters or less as this makes life pretty.
49 * This is not a hard limit however.
50 *
51 * The root system units in SI MKS system are set in the C code to:
52 * unitname DIMENSION
53 * define kilogram M; internal mass unit SI
54 * define mole Q; internal quantity unit SI
55 * define second T; internal time unit SI
56 * define meter L; internal length unit SI
57 * define Kelvin TMP; internal temperature unit SI
58 * define currency C; internal currency unit
59 * define ampere E; internal electric current unit SI suggested
60 * define candela LUM; internal luminous intensity unit SI
61 * define radian P; internal plane angle unit SI suggested
62 * define steradian S; internal solid angle unit SI suggested
63 *)
64
65 UNITS
66
67 (* distance *)
68
69 pc = {3.08374e+16*meter};
70 parsec = {pc};
71 kpc = {1000*pc};
72 Mpc = {1e6*pc};
73 km = {meter*1000};
74 m = {meter};
75 dm = {meter/10};
76 cm = {meter/100};
77 mm = {meter/1000};
78 um = {meter/1000000};
79 nm = {1.e-9*meter};
80 kilometer = {km};
81 centimeter = {cm};
82 millimeter = {mm};
83 micron = {um};
84 nanometer = {nm};
85 angstrom = {m/1e10};
86 fermi = {m/1e15};
87
88 mi = {1609.344*meter};
89 yd = {0.914412*meter};
90 ft = {0.304804*meter};
91 inch = {0.0254*meter};
92 mile = {mi};
93 yard = {yd};
94 feet = {ft};
95 foot = {ft};
96 in = {inch};
97
98 (* mass *)
99
100 kg = {kilogram};
101 g = {kilogram/1000};
102 gram = {g};
103 mg = {g/1000};
104 milligram = {mg};
105 ug= {kilogram*1e-9};
106 microgram= {ug};
107 ng= {kilogram*1e-12};
108 nanogram= {ng};
109 pg= {kilogram*1e-15};
110 picogram= {pg};
111
112 tonne = {kilogram *1000}; (* reference on tonne: http://physics.nist.gov/Pubs/SP811/appenB8.html *)
113 t = {tonne};
114 kilotonne = {tonne*1000};
115 kt = {kilotonne};
116 megatonne = {tonne*1e6};
117 Mt = {megatonne};
118 gigatonne = {tonne*1e9};
119 Gt = {gigatonne};
120
121 amu = {1.661e-27*kilogram};
122 lbm = {4.535924e-1*kilogram};
123 ton = {lbm*2000};
124 oz = {0.028349525*kilogram};
125 slug = {14.5939*kilogram};
126
127 (* time *)
128
129 yr = {31557600*second};
130 wk = {604800*second};
131 dy = {86400*second};
132 hr = {3600*second};
133 min = {60*second};
134 sec = {second};
135 s = {second};
136 ms = {second/1000};
137 us = {second/1e6};
138 ns = {second/1e9};
139 ps = {second/1e12};
140 year = {yr};
141 week = {wk};
142 day = {dy};
143 hour = {hr};
144 minute = {min};
145 millisecond = {ms};
146 microsecond = {us};
147 nanosecond = {ns};
148 picosecond = {ps};
149
150 (* molecular quantities *)
151
152 kg_mole= {1000*mole};
153 g_mole = {mole};
154 gm_mole = {mole};
155 kmol = {1000*mole};
156 mol = {mole};
157 mmol = {mole/1000};
158 millimole= {mmol};
159 umol = {mole/1e6};
160 micromole= {umol};
161 lb_mole = {4.535924e+2*mole};
162
163 (* temperature *)
164
165 K = {Kelvin};
166 R = {5*Kelvin/9};
167 Rankine = {R};
168
169 (* money *)
170
171 (* PLEASE USE ISO 4127 CURRENCY CODES FOR ALL MONEY UNITS *)
172 USD = {currency};
173 CR = {currency};
174 credits= {currency};
175 (* the following two are historic and should not be used in future *)
176 USdollar = {currency};
177 US = {currency};
178
179 (* reciprocal time (frequency) *)
180
181 rev = {1.0};
182 cycle = {rev};
183 rpm = {rev/minute};
184 rps = {rev/second};
185 hertz = {cycle/second};
186 Hz = {hertz};
187
188 (* area *)
189
190 ha = {meter^2*10000};
191 hectare= {ha};
192 acre= {meter^2*4046.856};
193
194 (* volume *)
195
196 L = {meter^3/1000};
197 l = {L};
198 litre = {L};
199 liter = {L};
200 mL = {L/1000};
201 ml = {L/1000};
202 ul = {L/1e6};
203 uL = {L/1e6};
204 milliliter = {ml};
205 millilitre = {mL};
206 microliter = {ul};
207 microlitre = {uL};
208
209 hogshead= {2.384809e-1*meter^3};
210 cuft = {0.02831698*meter^3};
211 impgal = {4.52837e-3*meter^3};
212 gal = {3.785412e-3*meter^3};
213 barrel = {42.0*gal};
214 gallon = {gal};
215 quart = {gal/4};
216 pint = {gal/8};
217 cup = {gal/16};
218 floz = {gal/128};
219
220 (* force *)
221
222 N = {kilogram*meter/second^2};
223 newton = {N};
224 dyne = {N*1.0e-5};
225 EN = {1e18*N};
226 PN = {1e15*N};
227 TN = {1e12*N};
228 GN = {1e9*N};
229 MN = {1e6*N};
230 kN = {1000*N};
231 mN= {N*1e-3};
232 uN= {N*1e-6};
233 nN= {N*1e-9};
234 pN= {N*1e-12};
235 fN= {N*1e-15};
236 aN= {N*1e-18};
237 milliNewton= {mN};
238 microNewton= {uN};
239 nanoNewton= {nN};
240 picoNewton= {pN};
241 femtoNewton= {fN};
242 attoNewton= {aN};
243
244 lbf = {N*4.448221};
245
246 (* pressure *)
247
248 Pa = {kilogram/meter/second^2};
249 MPa = {1.0e+6*Pa};
250 bar = {1.0e+5*Pa};
251 kPa = {1000*Pa};
252 pascal = {Pa};
253
254 atm = {Pa*101325.0};
255 mmHg = {133.322*Pa};
256 torr = {133.322*Pa};
257 psia = {6894.733*Pa};
258 psi = {psia};
259 ftH2O = {2989*Pa};
260
261 (* energy *)
262
263 J = {kilogram*meter^2/second^2};
264 joule = {J};
265 MJ = {J * 1000000};
266 kJ = {J * 1000};
267 mJ= {J*1.0e-3};
268 uJ= {J*1.0e-6};
269 nJ= {J*1.0e-9};
270 milliJoule= {mJ};
271 microJoule= {uJ};
272 nanoJoule= {nJ};
273 erg = {J*1.0e-7};
274
275 BTU = {1055.056*J};
276 pCu = {BTU * 1.8};
277 cal = {J*4.18393};
278 calorie = {cal};
279 kcal= {1000*calorie};
280 Cal= {1000*calorie};
281
282 (* power *)
283
284 W = {J/second};
285 EW = {1.0e+18*W};
286 PW = {1.0e+15*W};
287 TW = {1.0e+12*W};
288 GW = {1.0e+9*W};
289 MW = {1.0e+6*W};
290 kW = {1000*W};
291 mW = {W/1e3};
292 uW = {W/1e6};
293 nW = {W/1e9};
294 pW = {W/1e12};
295 fW = {W/1e15};
296 aW = {W/1e18};
297 terawatt = {TW};
298 gigawatt = {GW};
299 megawatt = {MW};
300 kilowatt = {kW};
301 watt = {W};
302 milliwatt = {mW};
303 microwatt = {uW};
304 nanowatt = {nW};
305 picowatt = {pW};
306 femtowatt = {fW};
307 attowatt = {aW};
308 aWW= {1*EW}; (* we could say art has a lot of power *)
309
310 hp= {7.456998e+2*W};
311
312 (* absolute viscosity *)
313
314 poise = {Pa*s/10};
315 cP = {poise/100};
316
317 (* electric charge *)
318
319 coulomb= {ampere*second};
320 C = {coulomb};
321 coul = {coulomb};
322 mC = {0.001*C};
323 uC = {1e-6*C};
324 nC = {1e-9*C};
325 pC = {1e-12*C};
326
327 (* misc electro-magnetic fun *)
328
329 V = {kilogram*meter^2/second^3/ampere};
330 F = {ampere^2*second^4/kilogram/meter^2};
331 ohm = {kilogram*meter^2/second^3/ampere^2};
332 mho = {ampere^2*second^3/kilogram/meter^2};
333 S = {mho};
334 siemens = {S};
335 A= {ampere};
336 amp = {ampere};
337 volt = {V};
338 farad= {F};
339 mA= {A/1000};
340 uA= {A/1000000};
341 kV= {1000*V};
342 MV= {1e6*V};
343 mV= {V/1000};
344 mF = {0.001*F};
345 uF = {1e-6*F};
346 nF = {1e-9*F};
347 pF = {1e-12*F};
348 kohm = {1000*ohm};
349 Mohm = {1e6*ohm};
350 kS = {1000*S};
351 mS = {0.001*S};
352 uS = {1e-6*S};
353 Wb = {V*second};
354 weber = {Wb};
355 tesla = {Wb/m^2};
356 gauss = {1e-4*tesla};
357 H = {Wb/A};
358 henry = {H};
359 mH = {0.001*H};
360 uH = {1e-6*H};
361
362 (*
363 * numeric constants of some interest
364 * to set a variable or constant to these, the code is (in the declarations)
365 * ATOM constant REFINES real; END constant;
366 * MODEL gizmo;
367 * x IS_A constant;
368 * x := 1 {PI};
369 * ...
370 *)
371 molecule = {1.0};
372 PI= {3.1415926535897932385}; (* Circumference/Diameter ratio *)
373 EULER_C = {0.57721566490153286}; (* euler gamma *)
374 GOLDEN_C = {1.618033988749894}; (* golden ratio *)
375 HBAR = {1.055e-34*J*second}; (* Reduced planck's constant *)
376 PLANCK_C = {2*PI*HBAR}; (* Planck's constant *)
377 LIGHT_C = {2.99793e8 * meter/second}; (* Speed of light in vacuum *)
378 MU0 = {4e-7*PI*kg*m/C/C}; (* Permeability of free space *)
379 EPSILON0 = {1/LIGHT_C/LIGHT_C/MU0}; (* Permittivity of free space *)
380 BOLTZMAN_C = {1.3805e-23 * J/K}; (* Boltzman's constant *)
381 SIGMA_C = {5.670e-8 * W/m^2*K^4 }; (* Stefan-Boltzmann constant
382 - blackbody radiation *)
383 AVOGADRO_C = {6.022045e23 *molecule/mole};(* Avogadro's number of molecules *)
384 GRAVITY_C = {6.673e-11 * N*m*m/kg/kg}; (* Newtons gravitational constant *)
385 GAS_C = {BOLTZMAN_C*AVOGADRO_C}; (* Gas constant *)
386 INFINITY= {1.0e38}; (* damn big number *)
387 LIM_EXP= {709.78}; (* ln ( maxdouble ) *)
388 LIM_CUBE= {5.6438030941223618e101}; (* cbrt ( maxdouble ) *)
389 LIM_SQR= {1.0e154}; (* sqrt(maxdouble) *)
390
391 (* The following were swiped from C <math.h> *)
392 M_E= {2.7182818284590452354E0}; (* base e *)
393 M_LOG2E= {1.4426950408889634074E0}; (* log2(e) *)
394 M_LOG10E= {4.3429448190325182765E-1}; (* log10(e) *)
395 M_LN2= {6.9314718055994530942E-1}; (* ln(2) *)
396 M_LN10= {2.3025850929940456840E0}; (* ln(10) *)
397 M_PI= {3.1415926535897932385E0}; (* as PI, but for consistency *)
398 M_PI_2= {1.5707963267948966192E0}; (* PI/2 *)
399 M_PI_4= {7.8539816339744830962E-1}; (* PI/4 *)
400 M_1_PI= {3.1830988618379067154E-1}; (* 1/PI *)
401 M_2_PI= {6.3661977236758134308E-1}; (* 2/PI *)
402 M_2_SQRTPI= {1.1283791670955125739E0}; (* 2/sqrt(PI) *)
403 M_SQRT2= {1.4142135623730950488E0}; (* sqrt(2) *)
404 M_SQRT1_2= {7.0710678118654752440E-1}; (* 1/sqrt(2) *)
405
406 eCHARGE = {1.602e-19*C}; (* Charge of an electron *)
407 EARTH_G = {9.80665 * m/s/s}; (* Earth's gravitational field, somewhere *)
408 eMASS = {9.1095e-31*kilogram}; (* Electron rest mass, I suppose *)
409 pMASS = {1.67265e-27*kilogram}; (* Proton mass *)
410
411 (* constant based conversions *)
412
413 eV = {eCHARGE * V};
414 keV = {1000*eV};
415 MeV = {1e6*eV};
416 GeV = {1e9*eV};
417 TeV = {1e12*eV};
418 PeV = {1e15*eV};
419 EeV = {1e18*eV};
420
421 lyr = {LIGHT_C * yr}; (* Light-year *)
422
423 oersted = {gauss/MU0};
424
425 (* subtly dimensionless measures *)
426
427 rad = {radian};
428 srad = {steradian};
429 deg = {radian*1.74532925199433e-2};
430 degrees = {deg};
431 grad = {0.9*deg};
432 arcmin = {degrees/60.0};
433 arcsec = {arcmin/60.0};
434
435 (* light quantities *)
436
437 cd = {candela};
438 lm = {candela*steradian};
439 lumen = {lm};
440 lx = {lm/meter^2};
441 lux= {lx};
442
443 (* misc rates *)
444
445 gpm = {gallon/minute};
446
447 (* time variant conversions *)
448
449 MINIMUMWAGE = {5.15*USD/hr}; (* Dec 2005, see http://www.dol.gov/ *)
450 (*
451 * conversions we'd like to see , but probably won't
452 * milliHelen = {beauty/ship};
453 * Helen = {documentation/project};
454 *)
455 END UNITS;

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22