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

Contents of /trunk/models/atoms.a4l

Parent Directory Parent Directory | Revision Log Revision Log


Revision 840 - (show annotations) (download) (as text)
Sun Sep 10 06:10:36 2006 UTC (17 years, 2 months ago) by johnpye
File MIME type: text/x-ascend
File size: 30370 byte(s)
Added 'deflection' to atoms.a4l.
Updated beam models to use 'abs' instead of full conditional modelling.
1 REQUIRE "system.a4l"; (* => system.a4l, basemodel.a4l *)
2 REQUIRE "measures.a4l"; (* => measures.a4l *)
3 PROVIDE "atoms.a4l";
4
5 (* ASCEND modelling environment
6 * Copyright (C) 1994-2006 Carnegie Mellon University
7 *
8 * The ASCEND Modeling Library is free software; you can redistribute
9 * it and/or modify it under the terms of the GNU General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
12 *
13 * The ASCEND Modeling Library is distributed in hope that it
14 * will be useful, but WITHOUT ANY WARRANTY; without even the implied
15 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 * See the GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with the program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139 USA.
21 *)
22
23 (*============================================================================*
24
25 A T O M S . A 4 L
26 -------------------------
27
28 AUTHOR: Joseph J. Zaher
29
30 DATES: 07/91 - Original code.
31 02/92 - Eliminated "display_units" assignments, added
32 commonly used UNIVERSAL constants and transport
33 quantities.
34 04/92 - Added electro-magnetic quantities.
35 06/92 - Converted by Ben Allan to be compatible with ASCEND3C
36 08/92 - Additional monetary atoms added by Bob Huss
37 02/96 - Brought proper constants into the library. Ben Allan.
38 07/96 - Incorporated Ken Tyner's substitution atoms. BAA.
39 07/96 - Switched to REQUIRE syntax.
40 08/96 - Switched to REQUIRE ivpsystem.a4l.
41 08/97 - Switched to REQUIRE/PROVIDE syntax.
42
43 CONTENTS: ASCEND atom definitions for engineering variable types.
44 Many of the anticipated dimensional variables which occur
45 in engineering design calculations are given to provide a
46 means of standardization. Chosen defaults, nominal, and
47 lower and upper bound values should be re-specified if
48 necessary to enhance the convergence properties of
49 specific models. Units to be displayed are to be controlled
50 using the UNITS tool kit of the environment.
51
52 REQUIRES: see top of file.
53
54 This file by Joseph J. Zaher, Benjamin A. Allan, Robert S. Huss, John Pye
55 Last in CVS: $Date: 1998/08/17 13:07:11 $ $Revision: 1.11 $
56
57 *===========================================================================*)
58
59 (* G E N E R I C C O N S T A N T S ( C H E M . E . B I A S )
60 -------------------------------------------------------------------- *)
61
62 CONSTANT constant
63 (* any sloppiness about what is a constant will yield a wild real *)
64 REFINES real_constant;
65
66 (* dimensionless *)
67
68 CONSTANT critical_compressibility REFINES real_constant DIMENSIONLESS;
69
70 CONSTANT acentric_factor REFINES real_constant DIMENSIONLESS;
71
72 CONSTANT UNIFAC_size REFINES real_constant DIMENSIONLESS;
73
74 CONSTANT Wilson_constant REFINES real_constant DIMENSIONLESS;
75
76 CONSTANT vapor_pressure_constant REFINES real_constant;
77
78 CONSTANT factor_constant REFINES real_constant DIMENSIONLESS;
79
80 (* molecular weight *)
81 CONSTANT molar_weight_constant
82 REFINES real_constant DIMENSION M/Q;
83
84 (* atomic mass *)
85 CONSTANT atomic_mass_constant
86 REFINES real_constant DIMENSION M;
87
88 (* temperatures *)
89 CONSTANT temperature_constant
90 REFINES real_constant DIMENSION TMP;
91
92 CONSTANT boiling_temperature
93 REFINES temperature_constant;
94
95 CONSTANT critical_temperature
96 REFINES temperature_constant;
97
98 CONSTANT reference_temperature
99 REFINES temperature_constant;
100
101 CONSTANT UNIFAC_a
102 REFINES temperature_constant;
103
104 (* pressures *)
105 CONSTANT pressure_constant
106 REFINES real_constant DIMENSION M/L/T^2;
107
108 CONSTANT critical_pressure
109 REFINES pressure_constant;
110
111 CONSTANT reference_pressure
112 REFINES pressure_constant;
113
114 (* molar volumes *)
115 CONSTANT molar_volume_constant
116 REFINES real_constant DIMENSION L^3/Q;
117
118 CONSTANT critical_volume
119 REFINES molar_volume_constant;
120
121 CONSTANT reference_molar_volume
122 REFINES molar_volume_constant;
123
124 (* mass densities *)
125 CONSTANT reference_mass_density
126 REFINES real_constant DIMENSION M/L^3;
127
128 (* molar energies *)
129 CONSTANT molar_energy_constant
130 REFINES real_constant DIMENSION M*L^2/T^2/Q;
131
132 CONSTANT reference_molar_energy
133 REFINES molar_energy_constant;
134
135 CONSTANT enthalpy_of_formation_constant
136 REFINES molar_energy_constant;
137
138 CONSTANT free_energy_of_formation_constant
139 REFINES molar_energy_constant;
140
141 CONSTANT heat_of_vaporization_constant
142 REFINES molar_energy_constant;
143
144 CONSTANT Wilson_energy_constant
145 REFINES molar_energy_constant;
146
147 (* molar entropies *)
148 CONSTANT molar_entropy_constant
149 REFINES real_constant DIMENSION M*L^2/T^2/Q/TMP;
150
151 CONSTANT reference_molar_entropy
152 REFINES molar_entropy_constant;
153
154 (* other strange correlation coefficients *)
155 CONSTANT heat_capacity_constant
156 REFINES real_constant;
157
158 CONSTANT heat_capacity_a_constant
159 REFINES heat_capacity_constant DIMENSION M*L^2/T^2/Q/TMP;
160
161 CONSTANT heat_capacity_b_constant
162 REFINES heat_capacity_constant DIMENSION M*L^2/T^2/Q/TMP^2;
163
164 CONSTANT heat_capacity_c_constant
165 REFINES heat_capacity_constant DIMENSION M*L^2/T^2/Q/TMP^3;
166
167 CONSTANT heat_capacity_d_constant
168 REFINES heat_capacity_constant DIMENSION M*L^2/T^2/Q/TMP^4;
169
170 (*
171 CONSTANT
172 REFINES real_constant DIMENSION;
173 *)
174
175 (* U N I V E R S A L C O N S T A N T S
176 -------------------------------------- *)
177
178 UNIVERSAL CONSTANT gas_constant
179 (* DIMENSION M*L^2/T^2/Q/TMP *)
180 REFINES real_constant :== 1{GAS_C};
181
182 UNIVERSAL CONSTANT gravity_constant
183 (* DIMENSION L/T^2 *)
184 REFINES real_constant :== 1{EARTH_G};
185
186 UNIVERSAL CONSTANT circle_constant
187 REFINES real_constant :== 1{PI};
188
189 UNIVERSAL CONSTANT speed_of_light
190 REFINES real_constant :== 1{LIGHT_C};
191
192 UNIVERSAL CONSTANT planck_constant
193 (* DIMENSION M*L^2/T *)
194 REFINES real_constant :== 1{PLANCK_C};
195
196 UNIVERSAL CONSTANT avogadro_constant
197 REFINES real_constant :== 1{AVOGADRO_C};
198
199 UNIVERSAL CONSTANT permittivity_constant
200 (* DIMENSION E^2*T^4/M/L^3 *)
201 REFINES real_constant :== 1{EPSILON0};
202
203 UNIVERSAL CONSTANT permeability_constant
204 REFINES real_constant :== 1{MU0};
205
206 UNIVERSAL CONSTANT electron_charge
207 REFINES real_constant :== 1{eCHARGE};
208
209 UNIVERSAL CONSTANT electron_mass
210 REFINES real_constant :== 1{eMASS};
211
212 UNIVERSAL CONSTANT proton_mass
213 REFINES real_constant :== 1{pMASS};
214
215 (* B O O L E A N S *)
216
217 (* use these booleans *)
218 ATOM boolean_start_true REFINES boolean
219 DEFAULT TRUE;
220 END boolean_start_true;
221
222 ATOM boolean_start_false REFINES boolean
223 DEFAULT FALSE;
224 END boolean_start_false;
225
226 (* for backward compatibility *)
227 ATOM start_true REFINES boolean
228 DEFAULT TRUE;
229 END start_true;
230
231 ATOM start_false REFINES boolean
232 DEFAULT FALSE;
233 END start_false;
234
235
236 (* P A R A M E T E R S *)
237
238 UNIVERSAL ATOM bound_width REFINES real
239 (* not really a constant but a parameter to tell us how wide to
240 * put bounds from the current point, in relative terms.
241 * e.g. a.upper_bound := a + a.nominal * bound_width_instance;
242 *)
243 DIMENSIONLESS
244 DEFAULT 1.0e8;
245 END bound_width;
246
247 UNIVERSAL ATOM scaling_constant REFINES real
248 (* not really a constant but a parameter. which
249 * needs problem dependent information to be useful.
250 *)
251 DIMENSIONLESS
252 DEFAULT 1.0;
253 END scaling_constant;
254
255 UNIVERSAL ATOM ode_counter REFINES integer
256 DIMENSIONLESS
257 DEFAULT 1;
258 END ode_counter;
259
260 UNIVERSAL ATOM obs_counter REFINES integer
261 DIMENSIONLESS
262 DEFAULT 1;
263 END obs_counter;
264
265 ATOM real_parameter REFINES real;
266 END real_parameter;
267
268 ATOM length_parameter REFINES real_parameter
269 DIMENSION L
270 DEFAULT 1.0 {m};
271 END length_parameter;
272
273
274 (* D I M E N S I O N L E S S Q U A N T I T I E S
275 ---------------------------------------------- *)
276
277 ATOM positive_variable REFINES solver_var
278 (* one for the gams folks *)
279 DIMENSIONLESS
280 DEFAULT 1.0;
281 lower_bound := 0.0;
282 upper_bound := 1e20;
283 nominal := 1.0;
284 END positive_variable;
285
286 ATOM factor REFINES solver_var
287 DIMENSIONLESS
288 DEFAULT 1.0;
289 lower_bound := -1e50;
290 upper_bound := 1e50;
291 nominal := 1.0;
292 END factor;
293
294 ATOM variable REFINES solver_var
295 DIMENSIONLESS;
296 END variable;
297
298
299 ATOM fraction REFINES solver_var
300 DIMENSIONLESS
301 DEFAULT 0.5;
302 nominal := 1.0;
303 lower_bound := 0.0;
304 upper_bound := 1.0;
305 END fraction;
306
307 ATOM positive_factor REFINES factor;
308 lower_bound := 0.0;
309 END positive_factor;
310
311 ATOM small_factor REFINES factor;
312 lower_bound := -10.0;
313 upper_bound := 10.0;
314 END small_factor;
315
316 ATOM small_positive_factor REFINES factor;
317 lower_bound := 0.0;
318 upper_bound := 10.0;
319 END small_positive_factor;
320
321 ATOM reduced_pressure REFINES factor;
322 END reduced_pressure;
323
324 (* S U B S T I T U T I O N V A R I A B L E S
325 ------------------------------------------ *)
326 ATOM exp_sub REFINES factor ;
327 lower_bound := -1e50;
328 upper_bound := 100;
329 nominal := 1.0;
330 END exp_sub;
331
332 ATOM power_sub REFINES factor;
333 lower_bound := -25;
334 upper_bound := 25;
335 nominal := 1.0;
336 END power_sub;
337
338 (* T E M P E R A T U R E
339 --------------------- *)
340
341 ATOM temperature REFINES solver_var
342 DIMENSION TMP
343 DEFAULT 298.0{K};
344 lower_bound := 1.0e-6{K};
345 upper_bound := 10000{K};
346 nominal := 298.0{K};
347 END temperature;
348
349 ATOM inverse_temperature REFINES solver_var
350 DIMENSION 1/TMP
351 DEFAULT 0.00366099{1/K};
352 lower_bound := 0.0{1/K};
353 upper_bound := 1e50{1/K};
354 nominal := 0.00366099{1/K};
355 END inverse_temperature;
356
357 ATOM delta_temperature REFINES solver_var
358 DIMENSION TMP
359 DEFAULT 0.1{K};
360 lower_bound := -1000{K};
361 upper_bound := +1000{K};
362 nominal := 5{K};
363 END delta_temperature;
364
365 (* forces *)
366 ATOM force REFINES solver_var
367 DIMENSION M*L/T^2
368 DEFAULT 1.0{N};
369 lower_bound := -1e20{N};
370 upper_bound := 1e20{N};
371 nominal := 1.0{kN};
372 END force;
373
374 ATOM force_per_length REFINES solver_var
375 DIMENSION M/T^2
376 DEFAULT 1.0{N/m};
377 lower_bound := -1e20{N/m};
378 upper_bound := 1e20{N/m};
379 nominal := 1.0{N/m};
380 END force_per_length;
381
382 ATOM surface_tension REFINES solver_var
383 DIMENSION M/T^2
384 DEFAULT 1.0{N/m};
385 lower_bound := 0{N/m};
386 upper_bound := 1e20{N/m};
387 nominal := 1.0{N/m};
388 END surface_tension;
389
390 (* P R E S S U R E
391 --------------- *)
392
393 ATOM pressure REFINES solver_var
394 DIMENSION M/L/T^2
395 DEFAULT 1.0{atm};
396 lower_bound := 0.001{Pa};
397 upper_bound := 5000{atm};
398 nominal := 1.0{atm};
399 END pressure;
400
401 ATOM delta_pressure REFINES solver_var
402 DIMENSION M/L/T^2
403 DEFAULT 1.0{atm};
404 lower_bound := -1000{atm};
405 upper_bound := 1000{atm};
406 nominal := 1.0{atm};
407 END delta_pressure;
408
409 ATOM vapor_pressure REFINES pressure
410 DIMENSION M/L/T^2
411 DEFAULT 1.0{atm};
412 lower_bound := 0.001{Pa};
413 upper_bound := 5000{atm};
414 nominal := 0.5{atm};
415 END vapor_pressure;
416
417 ATOM k_constant REFINES solver_var
418 (* what IS this ? ? ? (it rings a bell...) *)
419 DIMENSION T^2/L^5
420 DEFAULT 1.0 {s^2/ft^5};
421 lower_bound := 0.001 {s^2/ft^5};
422 upper_bound := 5000 {s^2/ft^5};
423 nominal := 1.0 {s^2/ft^5};
424 END k_constant;
425
426 ATOM youngs_modulus REFINES solver_var
427 (* the measure of the physical stiffness of a material *)
428 DIMENSION M/L/T^2
429 DEFAULT 200 {GPa};
430 lower_bound := 0 {Pa};
431 upper_bound := 1500 {GPa};
432 nominal := 40 {GPa};
433 END youngs_modulus;
434
435 ATOM pressure_per_length REFINES solver_var
436 DIMENSION M/L^2/T^2
437 DEFAULT 50 {Pa/m};
438 lower_bound := -10{bar/m};
439 upper_bound := +10{bar/m};
440 nominal := 50 {Pa/m};
441 END pressure_per_length;
442
443
444 (* M A S S / M O L E Q U A N T I T I E S
445 -------------------------------------- *)
446
447 ATOM molar_mass REFINES solver_var
448 DIMENSION M/Q
449 DEFAULT 100.0{g/g_mole};
450 lower_bound := 0.0{g/g_mole};
451 upper_bound := 1e9{g/g_mole};
452 nominal := 100.0{g/g_mole};
453 END molar_mass;
454
455 ATOM mass REFINES solver_var
456 DIMENSION M
457 DEFAULT 10.0{kg};
458 lower_bound := 0.0{kg};
459 upper_bound := 1e50{kg};
460 nominal := 10.0{kg};
461 END mass;
462
463 ATOM mole_scale REFINES real DIMENSION Q DEFAULT 1 {mole};
464 END mole_scale;
465
466 ATOM mole REFINES solver_var
467 DIMENSION Q
468 DEFAULT 10.0{lb_mole};
469 lower_bound := 0.0{lb_mole};
470 upper_bound := 1e50{lb_mole};
471 nominal := 10.0{lb_mole};
472 END mole;
473
474 ATOM mass_rate REFINES solver_var
475 DIMENSION M/T
476 DEFAULT 50{g/s};
477 lower_bound := 0.0{g/s};
478 upper_bound := 1e50{g/s};
479 nominal := 100.0{g/s};
480 END mass_rate;
481
482 ATOM mass_flux REFINES solver_var
483 DIMENSION M/T/L^2
484 DEFAULT 10{kg/s/m^2};
485 lower_bound := -1e12{kg/s/m^2};
486 upper_bound := 1e12{kg/s/m^2};
487 nominal := 10.0{kg/s/m^2};
488 END mass_flux;
489
490
491 ATOM mass_rate_rate REFINES solver_var
492 DIMENSION M/T^2
493 DEFAULT 10{g/s/s};
494 lower_bound := -1e50{g/s/s};
495 upper_bound := 1e50{g/s/s};
496 nominal := 10.0{g/s/s};
497 END mass_rate_rate;
498
499 ATOM mass_rate_per_length REFINES solver_var
500 DIMENSION M/T/L
501 DEFAULT 0.1 {kg/s/m};
502 lower_bound := -1e50 {kg/s/m};
503 upper_bound := 1e50 {kg/s/m};
504 nominal := 1.0 {kg/s/m};
505 END mass_rate_per_length;
506
507
508 ATOM molar_rate_scale REFINES real DIMENSION Q/T DEFAULT 1 {mole/second};
509 END molar_rate_scale;
510
511 ATOM molar_rate REFINES solver_var
512 DIMENSION Q/T
513 DEFAULT 100.0{lb_mole/hour};
514 lower_bound := 0.0{lb_mole/hour};
515 upper_bound := 1e50{lb_mole/hour};
516 nominal := 100.0{lb_mole/hour};
517 END molar_rate;
518
519 ATOM conc_rate REFINES solver_var
520 DIMENSION Q/L^3/T
521 DEFAULT 100.0{lb_mole/ft^3/hour};
522 lower_bound := 0.0{lb_mole/ft^3/hour};
523 upper_bound := 1e50{lb_mole/ft^3/hour};
524 nominal := 100.0{lb_mole/ft^3/hour};
525 END conc_rate;
526
527
528 ATOM mole_fraction REFINES fraction
529 DIMENSIONLESS
530 DEFAULT 0.5;
531 lower_bound := 0.0;
532 nominal := 0.3;
533 upper_bound := 1.0;
534 END mole_fraction;
535
536 ATOM mass_fraction REFINES fraction
537 DIMENSIONLESS
538 DEFAULT 0.5;
539 lower_bound := 0.0;
540 nominal := 0.3;
541 upper_bound := 1.0;
542 END mass_fraction;
543
544
545 (* V O L U M E Q U A N T I T I E S
546 -------------------------------- *)
547
548 ATOM molar_volume REFINES solver_var
549 DIMENSION L^3/Q
550 DEFAULT 1000.0{cm^3/g_mole};
551 lower_bound := 0.0{cm^3/g_mole};
552 upper_bound := 1e50{cm^3/g_mole};
553 nominal := 1000.0{cm^3/g_mole};
554 END molar_volume;
555
556 ATOM volume_scale REFINES real DIMENSION L^3 DEFAULT 1.0 {m^3};
557 END volume_scale;
558
559 ATOM volume REFINES solver_var
560 DIMENSION L^3
561 DEFAULT 100.0{ft^3};
562 lower_bound := 0.0{ft^3};
563 upper_bound := 1e50{ft^3};
564 nominal := 100.0{ft^3};
565 END volume;
566
567 ATOM volume_rate_scale REFINES real DIMENSION L^3/T DEFAULT 1{m^3/s};
568 END volume_rate_scale;
569
570 ATOM volume_rate REFINES solver_var
571 DIMENSION L^3/T
572 DEFAULT 100.0{gpm};
573 lower_bound := 0.0{gpm};
574 upper_bound := 1e50{gpm};
575 nominal := 100.0{gpm};
576 END volume_rate;
577
578 ATOM volume_rate_square REFINES solver_var
579 DIMENSION L^6/T^2
580 DEFAULT 100.0{ft^6/s^2};
581 lower_bound := 0.0{ft^6/s^2};
582 upper_bound := 1e50{ft^6/s^2};
583 nominal := 100 {ft^6/s^2};
584 END volume_rate_square;
585
586 ATOM volume_expansivity REFINES solver_var
587 DIMENSION 1/TMP
588 DEFAULT 0.001{1/K};
589 lower_bound := 0.0{1/K};
590 upper_bound := 1e50{1/K};
591 nominal := 0.001{1/K};
592 END volume_expansivity;
593
594
595 (* D E N S I T Y Q U A N T I T I E S
596 ---------------------------------- *)
597
598 ATOM molar_density REFINES solver_var
599 DIMENSION Q/L^3
600 DEFAULT 0.1{mole/m^3};
601 lower_bound := 0.0{mole/m^3};
602 upper_bound := 1e50{mole/m^3};
603 nominal := 0.1{mole/m^3};
604 END molar_density;
605
606 ATOM mass_density REFINES solver_var
607 DIMENSION M/L^3
608 DEFAULT 1.0{g/cm^3};
609 lower_bound := 0.0{g/cm^3};
610 upper_bound := 1e50{g/cm^3};
611 nominal := 1.0{g/cm^3};
612 END mass_density;
613
614
615 (* E N E R G Y Q U A N T I T I E S
616 ------------------------------------ *)
617
618 ATOM molar_energy REFINES solver_var
619 DIMENSION M*L^2/T^2/Q
620 DEFAULT 10000.0{BTU/lb_mole};
621 lower_bound := -1e50{BTU/lb_mole};
622 upper_bound := 1e50{BTU/lb_mole};
623 nominal := 10000.0{BTU/lb_mole};
624 END molar_energy;
625
626 ATOM energy_scale REFINES real DIMENSION M*L^2/T^2 DEFAULT 1{joule};
627 END energy_scale;
628
629 ATOM energy REFINES solver_var
630 DIMENSION M*L^2/T^2
631 DEFAULT 100000.0{BTU};
632 lower_bound := -1e50{BTU};
633 upper_bound := 1e50{BTU};
634 nominal := 100000.0{BTU};
635 END energy;
636
637 ATOM energy_rate_scale REFINES real DIMENSION M*L^2/T^3 DEFAULT 1{watt};
638 END energy_rate_scale;
639
640 ATOM energy_rate REFINES solver_var
641 DIMENSION M*L^2/T^3
642 DEFAULT 100000.0{BTU/hour};
643 lower_bound := -1e50{BTU/hour};
644 upper_bound := 1e50{BTU/hour};
645 nominal := 100000.0{BTU/hour};
646 END energy_rate;
647
648 ATOM power_per_length REFINES solver_var
649 DIMENSION M*L/T^3
650 DEFAULT 1.0{kW/m};
651 lower_bound := -1e50{kW/m};
652 upper_bound := 1e50{kW/m};
653 nominal := 1.0{kW/m};
654 END power_per_length;
655
656 ATOM irradiance REFINES solver_var
657 DIMENSION M/T^3
658 DEFAULT 1000{W/m^2};
659 lower_bound := 0{W/m^2};
660 upper_bound := 1.5{MW/m^2}; (* a bit more that the max possible from sunlight *)
661 nominal := 300{W/m^2};
662 END irradiance;
663
664 ATOM irradiation REFINES solver_var
665 DIMENSION M/T^2
666 DEFAULT 1000{J/m^2};
667 lower_bound := 0{J/m^2};
668 upper_bound := 1e50{J/m^2}; (* a bit more that the max possible from sunlight *)
669 nominal := 300{J/m^2};
670 END irradiation;
671
672
673 ATOM molar_heat_capacity REFINES solver_var
674 DIMENSION M*L^2/T^2/Q/TMP
675 DEFAULT 1.00e5{J/mole/K};
676 lower_bound := 0.0{J/mole/K};
677 upper_bound := 1e60{J/mole/K};
678 nominal := 1.00e5{J/mole/K};
679 END molar_heat_capacity;
680
681 ATOM molar_energy_rate REFINES solver_var
682 DIMENSION M*L^2/T^3/Q
683 DEFAULT 0 {BTU/lb_mole/h};
684 lower_bound := -1e50 {BTU/lb_mole/h};
685 upper_bound := 1e50 {BTU/lb_mole/h};
686 nominal := 10000.0 {BTU/lb_mole/h};
687 END molar_energy_rate;
688
689 (* E N T R O P Y Q U A N T I T I E S
690 ---------------------------------- *)
691
692 ATOM molar_entropy REFINES solver_var
693 DIMENSION M*L^2/T^2/Q/TMP
694 DEFAULT 100.0{BTU/lb_mole/R};
695 lower_bound := -1e50{BTU/lb_mole/R};
696 upper_bound := 1e50{BTU/lb_mole/R};
697 nominal := 100.0{BTU/lb_mole/R};
698 END molar_entropy;
699
700 ATOM entropy REFINES solver_var
701 DIMENSION M*L^2/T^2/TMP
702 DEFAULT 1000.0{BTU/R};
703 lower_bound := -1e50{BTU/R};
704 upper_bound := 1e50{BTU/R};
705 nominal := 1000.0{BTU/R};
706 END entropy;
707
708 ATOM entropy_rate REFINES solver_var
709 DIMENSION M*L^2/T^3/TMP
710 DEFAULT 1000.0{BTU/hour/R};
711 lower_bound := -1e50{BTU/hour/R};
712 upper_bound := 1e50{BTU/hour/R};
713 nominal := 1000.0{BTU/hour/R};
714 END entropy_rate;
715
716
717
718 (* E Q U I L I B R I U M Q U A N T I T I E S
719 ------------------------------------------ *)
720
721 ATOM partition_coefficient REFINES factor (* new *)
722 DEFAULT 1.0;
723 lower_bound := 1.0e-10;
724 upper_bound := 30.0;
725 nominal := 1.0;
726 END partition_coefficient;
727
728 ATOM relative_volatility REFINES partition_coefficient; (* new *)
729 END relative_volatility;
730
731
732 (* M O N E T A R Y Q U A N T I T I E S
733 ------------------------------------ *)
734
735 ATOM monetary_unit REFINES solver_var
736 DIMENSION C
737 DEFAULT 100.0{USD};
738 lower_bound := -1e50{USD};
739 upper_bound := 1e50{USD};
740 nominal := 100.0{USD};
741 END monetary_unit;
742
743 ATOM cost_per_volume REFINES solver_var
744 DIMENSION C/L^3
745 DEFAULT 1.0{USD/gallon};
746 lower_bound := 0.0{USD/gallon};
747 upper_bound := 1e50{USD/gallon};
748 nominal := 1.0{USD/gallon};
749 END cost_per_volume;
750
751 ATOM cost_per_mass REFINES solver_var
752 DIMENSION C/M
753 DEFAULT 1.0{USD/lbm};
754 lower_bound := 0.0{USD/lbm};
755 upper_bound := 1e50{USD/lbm};
756 nominal := 1.0{USD/lbm};
757 END cost_per_mass;
758
759 ATOM cost_per_mole REFINES solver_var
760 DIMENSION C/Q
761 DEFAULT 1.0{USD/lb_mole};
762 lower_bound := 0.0{USD/lb_mole};
763 upper_bound := 1e50{USD/lb_mole};
764 nominal := 1.0{USD/lb_mole};
765 END cost_per_mole;
766
767 ATOM cost_per_time REFINES solver_var
768 DIMENSION C/T
769 DEFAULT 1.0{USD/min};
770 lower_bound := 0.0{USD/min};
771 upper_bound := 1e50{USD/min};
772 nominal := 1.0{USD/min};
773 END cost_per_time;
774
775 ATOM cost_per_energy REFINES solver_var
776 DIMENSION C*T^2/M/L^2
777 DEFAULT 1.0{USD/BTU};
778 lower_bound := 0.0{USD/BTU};
779 upper_bound := 1e50{USD/BTU};
780 nominal := 1.0{USD/BTU};
781 END cost_per_energy;
782
783
784 (* S U R V E Y I N G Q U A N T I T I E S
785 --------------------------------------- *)
786
787 ATOM distance REFINES solver_var
788 DIMENSION L
789 DEFAULT 10.0{ft};
790 lower_bound := 0.0{ft};
791 upper_bound := 1e50{ft};
792 nominal := 10.0{ft};
793 END distance;
794
795 ATOM area REFINES solver_var
796 DIMENSION L^2
797 DEFAULT 10.0{ft^2};
798 lower_bound := 0.0{ft^2};
799 upper_bound := 1e50{ft^2};
800 nominal := 10.0{ft^2};
801 END area;
802
803 ATOM inverse_area REFINES solver_var
804 DIMENSION L^-2
805 DEFAULT 1{1/ft^2};
806 lower_bound := 0.0{1/ft^2};
807 upper_bound := 1e50{1/ft^2};
808 nominal := 1.0{1/ft^2};
809 END inverse_area;
810
811 ATOM angle REFINES solver_var
812 DIMENSION P
813 DEFAULT 1 {rad};
814 lower_bound := -1e50 {rad};
815 upper_bound := 1e50 {rad};
816 nominal := 1 {rad};
817 END angle;
818
819 ATOM solid_angle REFINES solver_var
820 DIMENSION S
821 DEFAULT 1 {srad};
822 lower_bound := -1e50 {srad};
823 upper_bound := 1e50 {srad};
824 nominal := 1 {srad};
825 END solid_angle;
826
827 (* M O T I O N Q U A N T I T I E S
828 --------------------------------- *)
829
830 ATOM time REFINES solver_var
831 DIMENSION T
832 DEFAULT 60.0{s};
833 lower_bound := -1e50{s};
834 upper_bound := 1e50{s};
835 nominal := 60.0{s};
836 END time;
837
838 ATOM speed REFINES solver_var
839 DIMENSION L/T
840 DEFAULT 3.0{ft/s};
841 lower_bound := -1e50{m/s};
842 upper_bound := 1e50{m/s};
843 nominal := 1.0{m/s};
844 END speed;
845
846 ATOM acceleration REFINES solver_var
847 DIMENSION L/T^2
848 DEFAULT 9.8{m/s^2};
849 lower_bound := -1e50{m/s^2};
850 upper_bound := 1e50{m/s^2};
851 nominal := 9.8{m/s^2};
852 END acceleration;
853
854 ATOM frequency REFINES solver_var
855 DIMENSION 1/T
856 DEFAULT 60.0{1/s};
857 lower_bound := 0.0{1/s};
858 upper_bound := 1e50{1/s};
859 nominal := 60.0{1/s};
860 END frequency;
861
862 ATOM stiffness REFINES solver_var
863 DIMENSION M/T^2
864 DEFAULT 1 {N/m};
865 lower_bound := 0 {N/m};
866 upper_bound := 1e12 {N/m};
867 nominal := 1 {N/m};
868 END stiffness;
869
870
871
872 (* T R A N S P O R T Q U A N T I T I E S
873 --------------------------------------- *)
874
875 ATOM viscosity REFINES solver_var
876 DIMENSION M/L/T
877 DEFAULT 1.0{cP};
878 lower_bound := 0.0{cP};
879 upper_bound := 1e50{cP};
880 nominal := 1.0{cP};
881 END viscosity;
882
883 ATOM thermal_conductivity REFINES solver_var
884 DIMENSION M*L/T^3/TMP
885 DEFAULT 0.1{BTU/hour/ft/R};
886 lower_bound := 0.0{BTU/hour/ft/R};
887 upper_bound := 1e50{BTU/hour/ft/R};
888 nominal := 0.1{BTU/hour/ft/R};
889 END thermal_conductivity;
890
891 ATOM diffusivity REFINES solver_var
892 DIMENSION L^2/T
893 DEFAULT 1.0{cm^2/s};
894 lower_bound := 0.0{cm^2/s};
895 upper_bound := 1e50{cm^2/s};
896 nominal := 1.0{cm^2/s};
897 END diffusivity;
898
899
900 (* E L E C T R O - M A G N E T I C Q U A N T I T I E S
901 ---------------------------------------------------- *)
902
903 ATOM voltage REFINES solver_var
904 DIMENSION M*L^2/(T^3*E)
905 DEFAULT 10.0{volt};
906 lower_bound := -1e50{volt};
907 upper_bound := 1e50{volt};
908 nominal := 10.0{volt};
909 END voltage;
910
911 ATOM resistance REFINES solver_var
912 DIMENSION M*L^2/(E^2*T^3)
913 DEFAULT 10.0{ohm};
914 lower_bound := -1e50{ohm};
915 upper_bound := 1e50{ohm};
916 nominal := 10.0{ohm};
917 END resistance;
918
919 ATOM current REFINES solver_var
920 DIMENSION E
921 DEFAULT 1.0{amp};
922 lower_bound := -1e50{amp};
923 upper_bound := 1e50{amp};
924 nominal := 1.0{amp};
925 END current;
926
927 ATOM capacitance REFINES solver_var
928 DIMENSION E^2*T^4/M/L^2
929 DEFAULT 1.0{coulomb/volt};
930 lower_bound := -1e50{coulomb/volt};
931 upper_bound := 1e50{coulomb/volt};
932 nominal := 1.0{coulomb/volt};
933 END capacitance;
934
935 ATOM inductance REFINES solver_var
936 DIMENSION M*L^2/E^2/T^2
937 DEFAULT 1.0{volt*s/amp};
938 lower_bound := -1e50{volt*s/amp};
939 upper_bound := 1e50{volt*s/amp};
940 nominal := 1.0{volt*s/amp};
941 END inductance;
942
943 ATOM magnetic_field REFINES solver_var
944 DIMENSION E/L
945 DEFAULT 1.0{amp/m};
946 lower_bound := -1e50{amp/m};
947 upper_bound := 1e50{amp/m};
948 nominal := 1.0{amp/m};
949 END magnetic_field;
950
951 ATOM electric_field REFINES solver_var
952 DIMENSION M*L/E/T^3
953 DEFAULT 1.0{volt/m};
954 lower_bound := -1e50{volt/m};
955 upper_bound := 1e50{volt/m};
956 nominal := 1.0{volt/m};
957 END electric_field;
958
959 (* D I F F E R E N T I A L Q U A N T I T I E S
960 ------------------------------------------- *)
961
962 ATOM delta_distance REFINES solver_var
963 DIMENSION L
964 DEFAULT 10.0{ft};
965 lower_bound := -1e50{ft};
966 upper_bound := 1e50{ft};
967 nominal := 10.0{ft};
968 END delta_distance;
969
970 ATOM temperature_rate REFINES solver_var
971 DIMENSION TMP/T
972 DEFAULT 0{K/s};
973 lower_bound := -100{K/s};
974 upper_bound := 100{K/s};
975 nominal := 298.0{K/s};
976 END temperature_rate;
977
978 ATOM delta_mass REFINES solver_var
979 DIMENSION M
980 DEFAULT 0.0{kg};
981 lower_bound := -1e50{kg};
982 upper_bound := 1e50{kg};
983 nominal := 10.0{kg};
984 END delta_mass;
985
986 ATOM delta_mole REFINES solver_var
987 DIMENSION Q
988 DEFAULT 0{lb_mole};
989 lower_bound := -1e50{lb_mole};
990 upper_bound := 1e50{lb_mole};
991 nominal := 10.0{lb_mole};
992 END delta_mole;
993
994 ATOM delta_mass_rate REFINES solver_var
995 DIMENSION M/T
996 DEFAULT 0{g/s};
997 lower_bound := -1e50{g/s};
998 upper_bound := 1e50{g/s};
999 nominal := 100.0{g/s};
1000 END delta_mass_rate;
1001
1002 ATOM delta_molar_rate REFINES solver_var
1003 DIMENSION Q/T
1004 DEFAULT 0.0{lb_mole/hour};
1005 lower_bound := -1e50{lb_mole/hour};
1006 upper_bound := 1e50{lb_mole/hour};
1007 nominal := 100.0{lb_mole/hour};
1008 END delta_molar_rate;
1009
1010 ATOM delta_volume_rate REFINES solver_var
1011 DIMENSION L^3/T
1012 DEFAULT 0.0{gpm};
1013 lower_bound := -1e50{gpm};
1014 upper_bound := 1e50{gpm};
1015 nominal := 100.0{gpm};
1016 END delta_volume_rate;
1017
1018 ATOM density_rate REFINES solver_var
1019 DIMENSION M/L^3/T
1020 DEFAULT 0.0 {kg/m^3/s};
1021 lower_bound := -1e50 {kg/m^3/s};
1022 upper_bound := 1e50 {kg/m^3/s};
1023 nominal := 0.1 {kg/m^3/s};
1024 END density_rate;
1025
1026 ATOM delta_energy_rate REFINES solver_var
1027 DIMENSION M*L^2/T^3
1028 DEFAULT 0.0{BTU/hour};
1029 lower_bound := -1e50{BTU/hour};
1030 upper_bound := 1e50{BTU/hour};
1031 nominal := 100000.0{BTU/hour};
1032 END delta_energy_rate;
1033
1034 ATOM delta_molar_energy_rate REFINES solver_var
1035 DIMENSION M*L^2/T^3/Q
1036 DEFAULT 0 {BTU/lb_mole/h};
1037 lower_bound := -1e50 {BTU/lb_mole/h};
1038 upper_bound := 1e50 {BTU/lb_mole/h};
1039 nominal := 10000.0 {BTU/lb_mole/h};
1040 END delta_molar_energy_rate;
1041
1042 ATOM delta_entropy_rate REFINES solver_var
1043 DIMENSION M*L^2/T^3/TMP
1044 DEFAULT 0.0{BTU/hour/R};
1045 lower_bound := -1e50{BTU/hour/R};
1046 upper_bound := 1e50{BTU/hour/R};
1047 nominal := 1000.0{BTU/hour/R};
1048 END delta_entropy_rate;
1049
1050
1051 (* C O N T R O L L E R Q U A N T I T I E S
1052 ---------------------------------------- *)
1053
1054 ATOM mass_sec REFINES solver_var
1055 DIMENSION M*T
1056 DEFAULT 0.0{kg*s};
1057 lower_bound := -1e50{kg*s};
1058 upper_bound := 1e50{kg*s};
1059 nominal := 10.0{kg*s};
1060 END mass_sec;
1061
1062 ATOM mole_sec REFINES solver_var
1063 DIMENSION Q*T
1064 DEFAULT 0.0{lb_mole*s};
1065 lower_bound := -1e50{lb_mole*s};
1066 upper_bound := 1e50{lb_mole*s};
1067 nominal := 10.0{lb_mole*s};
1068 END mole_sec;
1069
1070 (* M E C H A N I C AL P R O P E R T I E S
1071 ---------------------------------------- *)
1072
1073 ATOM deflection REFINES solver_var
1074 DIMENSION L
1075 DEFAULT 1 {mm};
1076 lower_bound := -10{m};
1077 upper_bound := 10{m};
1078 nominal := 5{mm};
1079 END deflection;
1080
1081 ATOM second_moment_of_area REFINES solver_var
1082 DIMENSION L^4
1083 DEFAULT 6.67e5 {mm^4}; (* for 150UB14 Universal Beam, AISC (Australia) *)
1084 lower_bound := 0 {mm^4};
1085 upper_bound := 10000e6 {mm^4};
1086 nominal := 1e6 {mm^4}; (* this may be too high still *)
1087 END second_moment_of_area;

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