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

Annotation of /trunk/models/atoms.a4l

Parent Directory Parent Directory | Revision Log Revision Log


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

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