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

Annotation of /trunk/models/atoms.a4l

Parent Directory Parent Directory | Revision Log Revision Log


Revision 822 - (hide annotations) (download) (as text)
Thu Aug 17 14:54:26 2006 UTC (17 years, 11 months ago) by johnpye
File MIME type: text/x-ascend
File size: 29528 byte(s)
Added a sun position and extraterrestrial radiation model using the equations from Duffie and Beckman.
When combined with the new data reader, this will start to be useful for 'real' solar energy problems.
1 johnpye 753 REQUIRE "system.a4l"; (* => system.a4l, basemodel.a4l *)
2     REQUIRE "measures.a4l"; (* => measures.a4l *)
3 aw0a 1 PROVIDE "atoms.a4l";
4    
5 johnpye 753 (* ASCEND modelling environment
6     * Copyright (C) 1994-2006 Carnegie Mellon University
7 aw0a 1 *
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 johnpye 753
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 aw0a 1 *===========================================================================*)
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 johnpye 259 ATOM delta_temperature REFINES solver_var
358     DIMENSION TMP
359 johnpye 289 DEFAULT 0.1{K};
360 johnpye 259 lower_bound := -1000{K};
361     upper_bound := +1000{K};
362 johnpye 289 nominal := 5{K};
363 johnpye 259 END delta_temperature;
364    
365 aw0a 1 (* forces *)
366     ATOM force REFINES solver_var
367 johnpye 783 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 aw0a 1 END force;
373    
374 johnpye 783 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 aw0a 1 (* 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 aw0a 417
401     ATOM delta_pressure REFINES solver_var
402     DIMENSION M/L/T^2
403     DEFAULT 1.0{atm};
404 johnpye 783 lower_bound := -1000{atm};
405 aw0a 417 upper_bound := 1000{atm};
406     nominal := 1.0{atm};
407     END delta_pressure;
408 aw0a 1
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 johnpye 669 (* what IS this ? ? ? (it rings a bell...) *)
419 aw0a 1 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 johnpye 669 ATOM pressure_per_length REFINES solver_var
427     DIMENSION M/L^2/T^2
428     DEFAULT 50 {Pa/m};
429     lower_bound := -10{bar/m};
430     upper_bound := +10{bar/m};
431     nominal := 50 {Pa/m};
432     END pressure_per_length;
433 aw0a 1
434     (* M A S S / M O L E Q U A N T I T I E S
435     -------------------------------------- *)
436    
437     ATOM molar_mass REFINES solver_var
438     DIMENSION M/Q
439     DEFAULT 100.0{g/g_mole};
440     lower_bound := 0.0{g/g_mole};
441     upper_bound := 1e9{g/g_mole};
442     nominal := 100.0{g/g_mole};
443     END molar_mass;
444    
445     ATOM mass REFINES solver_var
446     DIMENSION M
447     DEFAULT 10.0{kg};
448     lower_bound := 0.0{kg};
449     upper_bound := 1e50{kg};
450     nominal := 10.0{kg};
451     END mass;
452    
453     ATOM mole_scale REFINES real DIMENSION Q DEFAULT 1 {mole};
454     END mole_scale;
455    
456     ATOM mole REFINES solver_var
457     DIMENSION Q
458     DEFAULT 10.0{lb_mole};
459     lower_bound := 0.0{lb_mole};
460     upper_bound := 1e50{lb_mole};
461     nominal := 10.0{lb_mole};
462     END mole;
463    
464     ATOM mass_rate REFINES solver_var
465     DIMENSION M/T
466     DEFAULT 50{g/s};
467     lower_bound := 0.0{g/s};
468     upper_bound := 1e50{g/s};
469     nominal := 100.0{g/s};
470     END mass_rate;
471    
472 johnpye 783 ATOM mass_flux REFINES solver_var
473     DIMENSION M/T/L^2
474     DEFAULT 10{kg/s/m^2};
475     lower_bound := -1e12{kg/s/m^2};
476     upper_bound := 1e12{kg/s/m^2};
477     nominal := 10.0{kg/s/m^2};
478     END mass_flux;
479    
480    
481 johnpye 669 ATOM mass_rate_rate REFINES solver_var
482     DIMENSION M/T^2
483     DEFAULT 10{g/s/s};
484     lower_bound := -1e50{g/s/s};
485     upper_bound := 1e50{g/s/s};
486     nominal := 10.0{g/s/s};
487     END mass_rate_rate;
488    
489     ATOM mass_rate_per_length REFINES solver_var
490     DIMENSION M/T/L
491     DEFAULT 0.1 {kg/s/m};
492     lower_bound := -1e50 {kg/s/m};
493     upper_bound := 1e50 {kg/s/m};
494     nominal := 1.0 {kg/s/m};
495     END mass_rate_per_length;
496    
497    
498 aw0a 1 ATOM molar_rate_scale REFINES real DIMENSION Q/T DEFAULT 1 {mole/second};
499     END molar_rate_scale;
500    
501     ATOM molar_rate REFINES solver_var
502     DIMENSION Q/T
503     DEFAULT 100.0{lb_mole/hour};
504     lower_bound := 0.0{lb_mole/hour};
505     upper_bound := 1e50{lb_mole/hour};
506     nominal := 100.0{lb_mole/hour};
507     END molar_rate;
508    
509     ATOM conc_rate REFINES solver_var
510     DIMENSION Q/L^3/T
511     DEFAULT 100.0{lb_mole/ft^3/hour};
512     lower_bound := 0.0{lb_mole/ft^3/hour};
513     upper_bound := 1e50{lb_mole/ft^3/hour};
514     nominal := 100.0{lb_mole/ft^3/hour};
515     END conc_rate;
516    
517    
518     ATOM mole_fraction REFINES fraction
519     DIMENSIONLESS
520     DEFAULT 0.5;
521     lower_bound := 0.0;
522     nominal := 0.3;
523     upper_bound := 1.0;
524     END mole_fraction;
525    
526     ATOM mass_fraction REFINES fraction
527     DIMENSIONLESS
528     DEFAULT 0.5;
529     lower_bound := 0.0;
530     nominal := 0.3;
531     upper_bound := 1.0;
532     END mass_fraction;
533    
534    
535     (* V O L U M E Q U A N T I T I E S
536     -------------------------------- *)
537    
538     ATOM molar_volume REFINES solver_var
539     DIMENSION L^3/Q
540     DEFAULT 1000.0{cm^3/g_mole};
541     lower_bound := 0.0{cm^3/g_mole};
542     upper_bound := 1e50{cm^3/g_mole};
543     nominal := 1000.0{cm^3/g_mole};
544     END molar_volume;
545    
546     ATOM volume_scale REFINES real DIMENSION L^3 DEFAULT 1.0 {m^3};
547     END volume_scale;
548    
549     ATOM volume REFINES solver_var
550     DIMENSION L^3
551     DEFAULT 100.0{ft^3};
552     lower_bound := 0.0{ft^3};
553     upper_bound := 1e50{ft^3};
554     nominal := 100.0{ft^3};
555     END volume;
556    
557     ATOM volume_rate_scale REFINES real DIMENSION L^3/T DEFAULT 1{m^3/s};
558     END volume_rate_scale;
559    
560     ATOM volume_rate REFINES solver_var
561     DIMENSION L^3/T
562     DEFAULT 100.0{gpm};
563     lower_bound := 0.0{gpm};
564     upper_bound := 1e50{gpm};
565     nominal := 100.0{gpm};
566     END volume_rate;
567    
568     ATOM volume_rate_square REFINES solver_var
569     DIMENSION L^6/T^2
570     DEFAULT 100.0{ft^6/s^2};
571     lower_bound := 0.0{ft^6/s^2};
572     upper_bound := 1e50{ft^6/s^2};
573     nominal := 100 {ft^6/s^2};
574     END volume_rate_square;
575    
576     ATOM volume_expansivity REFINES solver_var
577     DIMENSION 1/TMP
578     DEFAULT 0.001{1/K};
579     lower_bound := 0.0{1/K};
580     upper_bound := 1e50{1/K};
581     nominal := 0.001{1/K};
582     END volume_expansivity;
583    
584    
585     (* D E N S I T Y Q U A N T I T I E S
586     ---------------------------------- *)
587    
588     ATOM molar_density REFINES solver_var
589     DIMENSION Q/L^3
590     DEFAULT 0.1{mole/m^3};
591     lower_bound := 0.0{mole/m^3};
592     upper_bound := 1e50{mole/m^3};
593     nominal := 0.1{mole/m^3};
594     END molar_density;
595    
596     ATOM mass_density REFINES solver_var
597     DIMENSION M/L^3
598     DEFAULT 1.0{g/cm^3};
599     lower_bound := 0.0{g/cm^3};
600     upper_bound := 1e50{g/cm^3};
601     nominal := 1.0{g/cm^3};
602     END mass_density;
603    
604    
605     (* E N E R G Y Q U A N T I T I E S
606     ------------------------------------ *)
607    
608     ATOM molar_energy REFINES solver_var
609     DIMENSION M*L^2/T^2/Q
610     DEFAULT 10000.0{BTU/lb_mole};
611     lower_bound := -1e50{BTU/lb_mole};
612     upper_bound := 1e50{BTU/lb_mole};
613     nominal := 10000.0{BTU/lb_mole};
614     END molar_energy;
615    
616     ATOM energy_scale REFINES real DIMENSION M*L^2/T^2 DEFAULT 1{joule};
617     END energy_scale;
618    
619     ATOM energy REFINES solver_var
620     DIMENSION M*L^2/T^2
621     DEFAULT 100000.0{BTU};
622     lower_bound := -1e50{BTU};
623     upper_bound := 1e50{BTU};
624     nominal := 100000.0{BTU};
625     END energy;
626    
627     ATOM energy_rate_scale REFINES real DIMENSION M*L^2/T^3 DEFAULT 1{watt};
628     END energy_rate_scale;
629    
630     ATOM energy_rate REFINES solver_var
631     DIMENSION M*L^2/T^3
632     DEFAULT 100000.0{BTU/hour};
633     lower_bound := -1e50{BTU/hour};
634     upper_bound := 1e50{BTU/hour};
635     nominal := 100000.0{BTU/hour};
636     END energy_rate;
637    
638 johnpye 669 ATOM power_per_length REFINES solver_var
639     DIMENSION M*L/T^3
640     DEFAULT 1.0{kW/m};
641     lower_bound := -1e50{kW/m};
642     upper_bound := 1e50{kW/m};
643     nominal := 1.0{kW/m};
644     END power_per_length;
645    
646 johnpye 821 ATOM irradiance REFINES solver_var
647     DIMENSION M/T^3
648     DEFAULT 1000{W/m^2};
649     lower_bound := 0{W/m^2};
650 johnpye 822 upper_bound := 1.5{MW/m^2}; (* a bit more that the max possible from sunlight *)
651 johnpye 821 nominal := 300{W/m^2};
652     END irradiance;
653    
654 johnpye 822 ATOM irradiation REFINES solver_var
655     DIMENSION M/T^2
656     DEFAULT 1000{J/m^2};
657     lower_bound := 0{J/m^2};
658     upper_bound := 1e50{J/m^2}; (* a bit more that the max possible from sunlight *)
659     nominal := 300{J/m^2};
660     END irradiation;
661    
662    
663 johnpye 288 ATOM molar_heat_capacity REFINES solver_var
664 aw0a 1 DIMENSION M*L^2/T^2/Q/TMP
665     DEFAULT 1.00e5{J/mole/K};
666     lower_bound := 0.0{J/mole/K};
667     upper_bound := 1e60{J/mole/K};
668     nominal := 1.00e5{J/mole/K};
669 johnpye 288 END molar_heat_capacity;
670 aw0a 1
671     ATOM molar_energy_rate REFINES solver_var
672     DIMENSION M*L^2/T^3/Q
673 johnpye 821 DEFAULT 0 {BTU/lb_mole/h};
674     lower_bound := -1e50 {BTU/lb_mole/h};
675     upper_bound := 1e50 {BTU/lb_mole/h};
676     nominal := 10000.0 {BTU/lb_mole/h};
677 aw0a 1 END molar_energy_rate;
678    
679     (* E N T R O P Y Q U A N T I T I E S
680     ---------------------------------- *)
681    
682     ATOM molar_entropy REFINES solver_var
683     DIMENSION M*L^2/T^2/Q/TMP
684     DEFAULT 100.0{BTU/lb_mole/R};
685     lower_bound := -1e50{BTU/lb_mole/R};
686     upper_bound := 1e50{BTU/lb_mole/R};
687     nominal := 100.0{BTU/lb_mole/R};
688     END molar_entropy;
689    
690     ATOM entropy REFINES solver_var
691     DIMENSION M*L^2/T^2/TMP
692     DEFAULT 1000.0{BTU/R};
693     lower_bound := -1e50{BTU/R};
694     upper_bound := 1e50{BTU/R};
695     nominal := 1000.0{BTU/R};
696     END entropy;
697    
698     ATOM entropy_rate REFINES solver_var
699     DIMENSION M*L^2/T^3/TMP
700     DEFAULT 1000.0{BTU/hour/R};
701     lower_bound := -1e50{BTU/hour/R};
702     upper_bound := 1e50{BTU/hour/R};
703     nominal := 1000.0{BTU/hour/R};
704     END entropy_rate;
705    
706    
707    
708     (* E Q U I L I B R I U M Q U A N T I T I E S
709     ------------------------------------------ *)
710    
711     ATOM partition_coefficient REFINES factor (* new *)
712     DEFAULT 1.0;
713     lower_bound := 1.0e-10;
714     upper_bound := 30.0;
715     nominal := 1.0;
716     END partition_coefficient;
717    
718     ATOM relative_volatility REFINES partition_coefficient; (* new *)
719     END relative_volatility;
720    
721    
722     (* M O N E T A R Y Q U A N T I T I E S
723     ------------------------------------ *)
724    
725     ATOM monetary_unit REFINES solver_var
726     DIMENSION C
727 johnpye 109 DEFAULT 100.0{USD};
728     lower_bound := -1e50{USD};
729     upper_bound := 1e50{USD};
730     nominal := 100.0{USD};
731 aw0a 1 END monetary_unit;
732    
733     ATOM cost_per_volume REFINES solver_var
734     DIMENSION C/L^3
735 johnpye 109 DEFAULT 1.0{USD/gallon};
736     lower_bound := 0.0{USD/gallon};
737     upper_bound := 1e50{USD/gallon};
738     nominal := 1.0{USD/gallon};
739 aw0a 1 END cost_per_volume;
740    
741     ATOM cost_per_mass REFINES solver_var
742     DIMENSION C/M
743 johnpye 109 DEFAULT 1.0{USD/lbm};
744     lower_bound := 0.0{USD/lbm};
745     upper_bound := 1e50{USD/lbm};
746     nominal := 1.0{USD/lbm};
747 aw0a 1 END cost_per_mass;
748    
749     ATOM cost_per_mole REFINES solver_var
750     DIMENSION C/Q
751 johnpye 109 DEFAULT 1.0{USD/lb_mole};
752     lower_bound := 0.0{USD/lb_mole};
753     upper_bound := 1e50{USD/lb_mole};
754     nominal := 1.0{USD/lb_mole};
755 aw0a 1 END cost_per_mole;
756    
757     ATOM cost_per_time REFINES solver_var
758     DIMENSION C/T
759 johnpye 109 DEFAULT 1.0{USD/min};
760     lower_bound := 0.0{USD/min};
761     upper_bound := 1e50{USD/min};
762     nominal := 1.0{USD/min};
763 aw0a 1 END cost_per_time;
764    
765     ATOM cost_per_energy REFINES solver_var
766     DIMENSION C*T^2/M/L^2
767 johnpye 109 DEFAULT 1.0{USD/BTU};
768     lower_bound := 0.0{USD/BTU};
769     upper_bound := 1e50{USD/BTU};
770     nominal := 1.0{USD/BTU};
771 aw0a 1 END cost_per_energy;
772    
773    
774     (* S U R V E Y I N G Q U A N T I T I E S
775     --------------------------------------- *)
776    
777     ATOM distance REFINES solver_var
778     DIMENSION L
779     DEFAULT 10.0{ft};
780     lower_bound := 0.0{ft};
781     upper_bound := 1e50{ft};
782     nominal := 10.0{ft};
783     END distance;
784    
785     ATOM area REFINES solver_var
786     DIMENSION L^2
787     DEFAULT 10.0{ft^2};
788     lower_bound := 0.0{ft^2};
789     upper_bound := 1e50{ft^2};
790     nominal := 10.0{ft^2};
791     END area;
792    
793     ATOM inverse_area REFINES solver_var
794     DIMENSION L^-2
795     DEFAULT 1{1/ft^2};
796     lower_bound := 0.0{1/ft^2};
797     upper_bound := 1e50{1/ft^2};
798     nominal := 1.0{1/ft^2};
799     END inverse_area;
800    
801     ATOM angle REFINES solver_var
802     DIMENSION P
803     DEFAULT 1 {rad};
804     lower_bound := -1e50 {rad};
805     upper_bound := 1e50 {rad};
806     nominal := 1 {rad};
807     END angle;
808    
809     ATOM solid_angle REFINES solver_var
810     DIMENSION S
811     DEFAULT 1 {srad};
812     lower_bound := -1e50 {srad};
813     upper_bound := 1e50 {srad};
814     nominal := 1 {srad};
815     END solid_angle;
816    
817     (* M O T I O N Q U A N T I T I E S
818     --------------------------------- *)
819    
820     ATOM time REFINES solver_var
821     DIMENSION T
822     DEFAULT 60.0{s};
823     lower_bound := -1e50{s};
824     upper_bound := 1e50{s};
825     nominal := 60.0{s};
826     END time;
827    
828     ATOM speed REFINES solver_var
829     DIMENSION L/T
830     DEFAULT 3.0{ft/s};
831     lower_bound := -1e50{m/s};
832     upper_bound := 1e50{m/s};
833     nominal := 1.0{m/s};
834     END speed;
835    
836     ATOM acceleration REFINES solver_var
837     DIMENSION L/T^2
838     DEFAULT 9.8{m/s^2};
839     lower_bound := -1e50{m/s^2};
840     upper_bound := 1e50{m/s^2};
841     nominal := 9.8{m/s^2};
842     END acceleration;
843    
844     ATOM frequency REFINES solver_var
845     DIMENSION 1/T
846     DEFAULT 60.0{1/s};
847     lower_bound := 0.0{1/s};
848     upper_bound := 1e50{1/s};
849     nominal := 60.0{1/s};
850     END frequency;
851    
852 johnpye 669 ATOM stiffness REFINES solver_var
853     DIMENSION M/T^2
854     DEFAULT 1 {N/m};
855     lower_bound := 0 {N/m};
856     upper_bound := 1e12 {N/m};
857     nominal := 1 {N/m};
858     END stiffness;
859 aw0a 1
860 johnpye 669
861    
862 aw0a 1 (* T R A N S P O R T Q U A N T I T I E S
863     --------------------------------------- *)
864    
865     ATOM viscosity REFINES solver_var
866     DIMENSION M/L/T
867     DEFAULT 1.0{cP};
868     lower_bound := 0.0{cP};
869     upper_bound := 1e50{cP};
870     nominal := 1.0{cP};
871     END viscosity;
872    
873     ATOM thermal_conductivity REFINES solver_var
874     DIMENSION M*L/T^3/TMP
875     DEFAULT 0.1{BTU/hour/ft/R};
876     lower_bound := 0.0{BTU/hour/ft/R};
877     upper_bound := 1e50{BTU/hour/ft/R};
878     nominal := 0.1{BTU/hour/ft/R};
879     END thermal_conductivity;
880    
881     ATOM diffusivity REFINES solver_var
882     DIMENSION L^2/T
883     DEFAULT 1.0{cm^2/s};
884     lower_bound := 0.0{cm^2/s};
885     upper_bound := 1e50{cm^2/s};
886     nominal := 1.0{cm^2/s};
887     END diffusivity;
888    
889    
890     (* 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
891     ---------------------------------------------------- *)
892    
893     ATOM voltage REFINES solver_var
894     DIMENSION M*L^2/(T^3*E)
895     DEFAULT 10.0{volt};
896     lower_bound := -1e50{volt};
897     upper_bound := 1e50{volt};
898     nominal := 10.0{volt};
899     END voltage;
900    
901     ATOM resistance REFINES solver_var
902     DIMENSION M*L^2/(E^2*T^3)
903     DEFAULT 10.0{ohm};
904     lower_bound := -1e50{ohm};
905     upper_bound := 1e50{ohm};
906     nominal := 10.0{ohm};
907     END resistance;
908    
909     ATOM current REFINES solver_var
910     DIMENSION E
911     DEFAULT 1.0{amp};
912     lower_bound := -1e50{amp};
913     upper_bound := 1e50{amp};
914     nominal := 1.0{amp};
915     END current;
916    
917     ATOM capacitance REFINES solver_var
918     DIMENSION E^2*T^4/M/L^2
919     DEFAULT 1.0{coulomb/volt};
920     lower_bound := -1e50{coulomb/volt};
921     upper_bound := 1e50{coulomb/volt};
922     nominal := 1.0{coulomb/volt};
923     END capacitance;
924    
925     ATOM inductance REFINES solver_var
926     DIMENSION M*L^2/E^2/T^2
927     DEFAULT 1.0{volt*s/amp};
928     lower_bound := -1e50{volt*s/amp};
929     upper_bound := 1e50{volt*s/amp};
930     nominal := 1.0{volt*s/amp};
931     END inductance;
932    
933     ATOM magnetic_field REFINES solver_var
934     DIMENSION E/L
935     DEFAULT 1.0{amp/m};
936     lower_bound := -1e50{amp/m};
937     upper_bound := 1e50{amp/m};
938     nominal := 1.0{amp/m};
939     END magnetic_field;
940    
941     ATOM electric_field REFINES solver_var
942     DIMENSION M*L/E/T^3
943     DEFAULT 1.0{volt/m};
944     lower_bound := -1e50{volt/m};
945     upper_bound := 1e50{volt/m};
946     nominal := 1.0{volt/m};
947     END electric_field;
948    
949     (* D I F F E R E N T I A L Q U A N T I T I E S
950     ------------------------------------------- *)
951    
952     ATOM delta_distance REFINES solver_var
953     DIMENSION L
954     DEFAULT 10.0{ft};
955     lower_bound := -1e50{ft};
956     upper_bound := 1e50{ft};
957     nominal := 10.0{ft};
958     END delta_distance;
959    
960 johnpye 259 ATOM temperature_rate REFINES solver_var
961 aw0a 1 DIMENSION TMP/T
962     DEFAULT 0{K/s};
963     lower_bound := -100{K/s};
964     upper_bound := 100{K/s};
965     nominal := 298.0{K/s};
966 johnpye 259 END temperature_rate;
967 aw0a 1
968     ATOM delta_mass REFINES solver_var
969     DIMENSION M
970     DEFAULT 0.0{kg};
971     lower_bound := -1e50{kg};
972     upper_bound := 1e50{kg};
973     nominal := 10.0{kg};
974     END delta_mass;
975    
976     ATOM delta_mole REFINES solver_var
977     DIMENSION Q
978     DEFAULT 0{lb_mole};
979     lower_bound := -1e50{lb_mole};
980     upper_bound := 1e50{lb_mole};
981     nominal := 10.0{lb_mole};
982     END delta_mole;
983    
984     ATOM delta_mass_rate REFINES solver_var
985     DIMENSION M/T
986     DEFAULT 0{g/s};
987     lower_bound := -1e50{g/s};
988     upper_bound := 1e50{g/s};
989     nominal := 100.0{g/s};
990     END delta_mass_rate;
991    
992     ATOM delta_molar_rate REFINES solver_var
993     DIMENSION Q/T
994     DEFAULT 0.0{lb_mole/hour};
995     lower_bound := -1e50{lb_mole/hour};
996     upper_bound := 1e50{lb_mole/hour};
997     nominal := 100.0{lb_mole/hour};
998     END delta_molar_rate;
999    
1000     ATOM delta_volume_rate REFINES solver_var
1001     DIMENSION L^3/T
1002     DEFAULT 0.0{gpm};
1003     lower_bound := -1e50{gpm};
1004     upper_bound := 1e50{gpm};
1005     nominal := 100.0{gpm};
1006     END delta_volume_rate;
1007    
1008 johnpye 669 ATOM density_rate REFINES solver_var
1009     DIMENSION M/L^3/T
1010     DEFAULT 0.0 {kg/m^3/s};
1011     lower_bound := -1e50 {kg/m^3/s};
1012     upper_bound := 1e50 {kg/m^3/s};
1013     nominal := 0.1 {kg/m^3/s};
1014     END density_rate;
1015    
1016 aw0a 1 ATOM delta_energy_rate REFINES solver_var
1017     DIMENSION M*L^2/T^3
1018     DEFAULT 0.0{BTU/hour};
1019     lower_bound := -1e50{BTU/hour};
1020     upper_bound := 1e50{BTU/hour};
1021     nominal := 100000.0{BTU/hour};
1022     END delta_energy_rate;
1023    
1024     ATOM delta_molar_energy_rate REFINES solver_var
1025     DIMENSION M*L^2/T^3/Q
1026 johnpye 821 DEFAULT 0 {BTU/lb_mole/h};
1027     lower_bound := -1e50 {BTU/lb_mole/h};
1028     upper_bound := 1e50 {BTU/lb_mole/h};
1029     nominal := 10000.0 {BTU/lb_mole/h};
1030 aw0a 1 END delta_molar_energy_rate;
1031    
1032     ATOM delta_entropy_rate REFINES solver_var
1033     DIMENSION M*L^2/T^3/TMP
1034     DEFAULT 0.0{BTU/hour/R};
1035     lower_bound := -1e50{BTU/hour/R};
1036     upper_bound := 1e50{BTU/hour/R};
1037     nominal := 1000.0{BTU/hour/R};
1038     END delta_entropy_rate;
1039    
1040 johnpye 669
1041 aw0a 1 (* C O N T R O L L E R Q U A N T I T I E S
1042     ---------------------------------------- *)
1043    
1044     ATOM mass_sec REFINES solver_var
1045     DIMENSION M*T
1046     DEFAULT 0.0{kg*s};
1047     lower_bound := -1e50{kg*s};
1048     upper_bound := 1e50{kg*s};
1049     nominal := 10.0{kg*s};
1050     END mass_sec;
1051    
1052     ATOM mole_sec REFINES solver_var
1053     DIMENSION Q*T
1054     DEFAULT 0.0{lb_mole*s};
1055     lower_bound := -1e50{lb_mole*s};
1056     upper_bound := 1e50{lb_mole*s};
1057     nominal := 10.0{lb_mole*s};
1058     END mole_sec;

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