trinitycrmod 0.7.11 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +2 -0
- data/VERSION +1 -1
- data/lib/trinitycrmod/deleted_variables.rb +162 -1
- data/lib/trinitycrmod/ecom.rb +35 -0
- data/lib/trinitycrmod/namelists.rb +313 -184
- data/lib/trinitycrmod/trinity.rb +9 -2
- data/trinitycrmod.gemspec +10 -3
- metadata +31 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ca33529443aefcf8440c298ac4e3aad6af609da3
|
|
4
|
+
data.tar.gz: 91b67e9abd7f032f7bc91d612af62934661f699a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a588adfdf31d8befeed75d8d8a73dbb95696c59648d5af735878c179e97822f5a758ef019d9b650acc8b9591f5ae2f40f4f6b532e2fe890bddeaa28eeec542e5
|
|
7
|
+
data.tar.gz: 9e4552700ec90fc617c084f7df3bc316bdfd0014f5e56ba74bb37326bef97472f6c0ee64852bc72f79694ee195cb3d83e91d38f8493813394e848bcf36ea266b
|
data/Gemfile
CHANGED
|
@@ -5,6 +5,8 @@ source "http://rubygems.org"
|
|
|
5
5
|
gem "text-data-tools", ">= 1.1.6"
|
|
6
6
|
gem "gs2crmod", ">=0.11.76"
|
|
7
7
|
gem "gryfxcrmod", ">=0.1.9"
|
|
8
|
+
gem "cheasecrmod", ">=0.1.0"
|
|
9
|
+
gem "ecomcrmod", ">=0.1.0"
|
|
8
10
|
|
|
9
11
|
# Add dependencies to develop your gem here.
|
|
10
12
|
# Include everything needed to run rake, tests, features, etc.
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.8.0
|
|
@@ -1 +1,162 @@
|
|
|
1
|
-
{
|
|
1
|
+
{:species_option=>
|
|
2
|
+
{:should_include=>"true",
|
|
3
|
+
:description=>nil,
|
|
4
|
+
:help=>nil,
|
|
5
|
+
:code_name=>:species_option,
|
|
6
|
+
:must_pass=>
|
|
7
|
+
[{:test=>"kind_of? String",
|
|
8
|
+
:explanation=>"This variable must be a string."}],
|
|
9
|
+
:type=>:String,
|
|
10
|
+
:autoscanned_defaults=>["analytic"]},
|
|
11
|
+
:species_file=>
|
|
12
|
+
{:should_include=>"true",
|
|
13
|
+
:description=>nil,
|
|
14
|
+
:help=>nil,
|
|
15
|
+
:code_name=>:species_file,
|
|
16
|
+
:must_pass=>
|
|
17
|
+
[{:test=>"kind_of? String",
|
|
18
|
+
:explanation=>"This variable must be a string."}],
|
|
19
|
+
:type=>:String,
|
|
20
|
+
:autoscanned_defaults=>[]},
|
|
21
|
+
:species_time=>
|
|
22
|
+
{:should_include=>"true",
|
|
23
|
+
:description=>nil,
|
|
24
|
+
:help=>nil,
|
|
25
|
+
:code_name=>:species_time,
|
|
26
|
+
:must_pass=>
|
|
27
|
+
[{:test=>"kind_of? Numeric",
|
|
28
|
+
:explanation=>
|
|
29
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
30
|
+
:type=>:Float,
|
|
31
|
+
:autoscanned_defaults=>[]},
|
|
32
|
+
:ntspec=>
|
|
33
|
+
{:should_include=>"true",
|
|
34
|
+
:description=>nil,
|
|
35
|
+
:help=>nil,
|
|
36
|
+
:code_name=>:ntspec,
|
|
37
|
+
:must_pass=>
|
|
38
|
+
[{:test=>"kind_of? Integer",
|
|
39
|
+
:explanation=>"This variable must be an integer."}],
|
|
40
|
+
:type=>:Integer,
|
|
41
|
+
:autoscanned_defaults=>[2]},
|
|
42
|
+
:convergetol=>
|
|
43
|
+
{:should_include=>"true",
|
|
44
|
+
:description=>nil,
|
|
45
|
+
:help=>nil,
|
|
46
|
+
:code_name=>:convergetol,
|
|
47
|
+
:must_pass=>
|
|
48
|
+
[{:test=>"kind_of? Numeric",
|
|
49
|
+
:explanation=>
|
|
50
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
51
|
+
:type=>:Float,
|
|
52
|
+
:autoscanned_defaults=>[]},
|
|
53
|
+
:grad_option=>
|
|
54
|
+
{:should_include=>"true",
|
|
55
|
+
:description=>nil,
|
|
56
|
+
:help=>nil,
|
|
57
|
+
:code_name=>:grad_option,
|
|
58
|
+
:must_pass=>
|
|
59
|
+
[{:test=>"kind_of? String",
|
|
60
|
+
:explanation=>"This variable must be a string."}],
|
|
61
|
+
:type=>:String,
|
|
62
|
+
:autoscanned_defaults=>["tgrads"]},
|
|
63
|
+
:dti=>
|
|
64
|
+
{:should_include=>"true",
|
|
65
|
+
:description=>nil,
|
|
66
|
+
:help=>nil,
|
|
67
|
+
:code_name=>:dti,
|
|
68
|
+
:must_pass=>
|
|
69
|
+
[{:test=>"kind_of? Numeric",
|
|
70
|
+
:explanation=>
|
|
71
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
72
|
+
:type=>:Float,
|
|
73
|
+
:autoscanned_defaults=>[]},
|
|
74
|
+
:dte=>
|
|
75
|
+
{:should_include=>"true",
|
|
76
|
+
:description=>nil,
|
|
77
|
+
:help=>nil,
|
|
78
|
+
:code_name=>:dte,
|
|
79
|
+
:must_pass=>
|
|
80
|
+
[{:test=>"kind_of? Numeric",
|
|
81
|
+
:explanation=>
|
|
82
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
83
|
+
:type=>:Float,
|
|
84
|
+
:autoscanned_defaults=>[]},
|
|
85
|
+
:tite=>
|
|
86
|
+
{:should_include=>"true",
|
|
87
|
+
:description=>nil,
|
|
88
|
+
:help=>nil,
|
|
89
|
+
:code_name=>:tite,
|
|
90
|
+
:must_pass=>
|
|
91
|
+
[{:test=>"kind_of? Numeric",
|
|
92
|
+
:explanation=>
|
|
93
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
94
|
+
:type=>:Float,
|
|
95
|
+
:autoscanned_defaults=>
|
|
96
|
+
["temp_perturb(idx:idx+ncc-1,1)/temp_perturb(idx:idx+ncc-1,2)", "ti/te"]},
|
|
97
|
+
:rln=>
|
|
98
|
+
{:should_include=>"true",
|
|
99
|
+
:description=>nil,
|
|
100
|
+
:help=>nil,
|
|
101
|
+
:code_name=>:rln,
|
|
102
|
+
:must_pass=>
|
|
103
|
+
[{:test=>"kind_of? Numeric",
|
|
104
|
+
:explanation=>
|
|
105
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
106
|
+
:type=>:Float,
|
|
107
|
+
:autoscanned_defaults=>[1.0]},
|
|
108
|
+
:nedge=>
|
|
109
|
+
{:should_include=>"true",
|
|
110
|
+
:description=>nil,
|
|
111
|
+
:help=>nil,
|
|
112
|
+
:code_name=>:nedge,
|
|
113
|
+
:must_pass=>
|
|
114
|
+
[{:test=>"kind_of? Numeric",
|
|
115
|
+
:explanation=>
|
|
116
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
117
|
+
:type=>:Float,
|
|
118
|
+
:autoscanned_defaults=>[]},
|
|
119
|
+
:density_boost=>
|
|
120
|
+
{:should_include=>"true",
|
|
121
|
+
:description=>nil,
|
|
122
|
+
:help=>nil,
|
|
123
|
+
:code_name=>:density_boost,
|
|
124
|
+
:must_pass=>
|
|
125
|
+
[{:test=>"kind_of? Numeric",
|
|
126
|
+
:explanation=>
|
|
127
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
128
|
+
:type=>:Float,
|
|
129
|
+
:autoscanned_defaults=>[]},
|
|
130
|
+
:powerin=>
|
|
131
|
+
{:should_include=>"true",
|
|
132
|
+
:description=>nil,
|
|
133
|
+
:help=>nil,
|
|
134
|
+
:code_name=>:powerin,
|
|
135
|
+
:must_pass=>
|
|
136
|
+
[{:test=>"kind_of? Numeric",
|
|
137
|
+
:explanation=>
|
|
138
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
139
|
+
:type=>:Float,
|
|
140
|
+
:autoscanned_defaults=>[0.0]},
|
|
141
|
+
:src_ratio=>
|
|
142
|
+
{:should_include=>"true",
|
|
143
|
+
:description=>nil,
|
|
144
|
+
:help=>nil,
|
|
145
|
+
:code_name=>:src_ratio,
|
|
146
|
+
:must_pass=>
|
|
147
|
+
[{:test=>"kind_of? Numeric",
|
|
148
|
+
:explanation=>
|
|
149
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
150
|
+
:type=>:Float,
|
|
151
|
+
:autoscanned_defaults=>[]},
|
|
152
|
+
:write_smooth=>
|
|
153
|
+
{:should_include=>"true",
|
|
154
|
+
:description=>nil,
|
|
155
|
+
:help=>nil,
|
|
156
|
+
:code_name=>:write_smooth,
|
|
157
|
+
:must_pass=>
|
|
158
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
159
|
+
:explanation=>
|
|
160
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
161
|
+
:type=>:Fortran_Bool,
|
|
162
|
+
:autoscanned_defaults=>[]}}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
class CodeRunner::Trinity
|
|
2
|
+
def uses_ecom?
|
|
3
|
+
@geo_option == "ecom"
|
|
4
|
+
end
|
|
5
|
+
def ecom_run
|
|
6
|
+
CodeRunner.setup_run_class('ecom')
|
|
7
|
+
ecrun = CodeRunner::Ecom.new(@runner)
|
|
8
|
+
raise 'No ecom input file' unless FileTest.exist?(chfile=@directory + '/chease/ecom.in')
|
|
9
|
+
ecrun.instance_eval(CodeRunner::Ecom.defaults_file_text_from_input_file(chfile))
|
|
10
|
+
#puts ['ecrun1', ecrun.nsurf, self.class.defaults_file_text_from_input_file(chfile), chfile]
|
|
11
|
+
return ecrun
|
|
12
|
+
end
|
|
13
|
+
def setup_ecom
|
|
14
|
+
ep "Setting up ecom files..."
|
|
15
|
+
if evolve_geometry.fortran_true?
|
|
16
|
+
FileUtils.cp_r(@gs_folder, 'chease')
|
|
17
|
+
ecrun = ecom_run
|
|
18
|
+
ecrun.iptype = 2 # Use numerical pressure
|
|
19
|
+
ecrun.iptable = 2 # File contains rho_tor and pressure
|
|
20
|
+
ecrun.file_prof = 'Profile.dat' # Trinity always expects the file to be called this
|
|
21
|
+
#ecrun.neqdsk = 0 # Use EXPEQ
|
|
22
|
+
#ecrun.nsurf = 6
|
|
23
|
+
#puts ['ecrun2', ecrun.nsurf]
|
|
24
|
+
#ecrun.nppfun = 4 # Pres profile from EXPEQ
|
|
25
|
+
#ecrun.nfunc = 4 # Current func
|
|
26
|
+
#ecrun.nopt = -1 # Use prev soln for initial
|
|
27
|
+
Dir.chdir(@directory + '/chease/'){ecrun.write_input_file}
|
|
28
|
+
else
|
|
29
|
+
FileUtils.mkdir('chease') unless FileTest.exist? 'chease'
|
|
30
|
+
origfile = @runner.root_folder + '/ogyropsi.dat'
|
|
31
|
+
FileUtils.cp(origfile, 'chease/ogyropsi.dat') if FileTest.exist? origfile
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
end
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
[{:test=>"kind_of? String",
|
|
12
12
|
:explanation=>"This variable must be a string."}],
|
|
13
13
|
:type=>:String,
|
|
14
|
-
:autoscanned_defaults=>["default"]},
|
|
14
|
+
:autoscanned_defaults=>["analytic", "default"]},
|
|
15
15
|
:geo_file=>
|
|
16
16
|
{:should_include=>"true",
|
|
17
17
|
:description=>" file with input data",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
:explanation=>
|
|
44
44
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
45
45
|
:type=>:Float,
|
|
46
|
-
:autoscanned_defaults=>[0.95]},
|
|
46
|
+
:autoscanned_defaults=>[0.8, 0.95]},
|
|
47
47
|
:nrad=>
|
|
48
48
|
{:should_include=>"true",
|
|
49
49
|
:description=>" number of radial grid points",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
[{:test=>"kind_of? Integer",
|
|
54
54
|
:explanation=>"This variable must be an integer."}],
|
|
55
55
|
:type=>:Integer,
|
|
56
|
-
:autoscanned_defaults=>[9]},
|
|
56
|
+
:autoscanned_defaults=>[8, 9]},
|
|
57
57
|
:bt_in=>
|
|
58
58
|
{:should_include=>"true",
|
|
59
59
|
:description=>
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
:explanation=>
|
|
78
78
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
79
79
|
:type=>:Float,
|
|
80
|
-
:autoscanned_defaults=>[
|
|
80
|
+
:autoscanned_defaults=>[1.0]},
|
|
81
81
|
:rgeo_in=>
|
|
82
82
|
{:should_include=>"true",
|
|
83
83
|
:description=>" geometric major radius at LCFS (in meters)",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
:explanation=>
|
|
89
89
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
90
90
|
:type=>:Float,
|
|
91
|
-
:autoscanned_defaults=>[
|
|
91
|
+
:autoscanned_defaults=>[3.0]},
|
|
92
92
|
:q0=>
|
|
93
93
|
{:should_include=>"true",
|
|
94
94
|
:description=>" value of q at core of profile",
|
|
@@ -176,7 +176,7 @@
|
|
|
176
176
|
[{:test=>"kind_of? String",
|
|
177
177
|
:explanation=>"This variable must be a string."}],
|
|
178
178
|
:type=>:String,
|
|
179
|
-
:autoscanned_defaults=>["default"]},
|
|
179
|
+
:autoscanned_defaults=>["aminor", "default"]},
|
|
180
180
|
:phia_in=>
|
|
181
181
|
{:should_include=>"true",
|
|
182
182
|
:description=>
|
|
@@ -240,75 +240,48 @@
|
|
|
240
240
|
:explanation=>
|
|
241
241
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
242
242
|
:type=>:Fortran_Bool,
|
|
243
|
-
:autoscanned_defaults=>[".false."]}
|
|
244
|
-
|
|
245
|
-
{:description=>"",
|
|
246
|
-
:should_include=>"true",
|
|
247
|
-
:variables=>
|
|
248
|
-
{:species_option=>
|
|
249
|
-
{:should_include=>"true",
|
|
250
|
-
:description=>" construct species profiles from following parameters",
|
|
251
|
-
:help=>" construct species profiles from following parameters",
|
|
252
|
-
:code_name=>:species_option,
|
|
253
|
-
:must_pass=>
|
|
254
|
-
[{:test=>"kind_of? String",
|
|
255
|
-
:explanation=>"This variable must be a string."}],
|
|
256
|
-
:type=>:String,
|
|
257
|
-
:autoscanned_defaults=>["default"]},
|
|
258
|
-
:species_file=>
|
|
259
|
-
{:should_include=>"true",
|
|
260
|
-
:description=>" file with input data",
|
|
261
|
-
:help=>" file with input data",
|
|
262
|
-
:code_name=>:species_file,
|
|
263
|
-
:must_pass=>
|
|
264
|
-
[{:test=>"kind_of? String",
|
|
265
|
-
:explanation=>"This variable must be a string."}],
|
|
266
|
-
:type=>:String,
|
|
267
|
-
:autoscanned_defaults=>["geo_file"]},
|
|
268
|
-
:species_time=>
|
|
243
|
+
:autoscanned_defaults=>[".false."]},
|
|
244
|
+
:grho_in=>
|
|
269
245
|
{:should_include=>"true",
|
|
270
|
-
:description=>"
|
|
271
|
-
:help=>"
|
|
272
|
-
:code_name=>:
|
|
246
|
+
:description=>" overrides the value of grho if > 0",
|
|
247
|
+
:help=>" overrides the value of grho if > 0",
|
|
248
|
+
:code_name=>:grho_in,
|
|
273
249
|
:must_pass=>
|
|
274
250
|
[{:test=>"kind_of? Numeric",
|
|
275
251
|
:explanation=>
|
|
276
252
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
277
253
|
:type=>:Float,
|
|
278
|
-
:autoscanned_defaults=>[
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
:must_pass=>
|
|
285
|
-
[{:test=>"kind_of? Integer",
|
|
286
|
-
:explanation=>"This variable must be an integer."}],
|
|
287
|
-
:type=>:Integer,
|
|
288
|
-
:autoscanned_defaults=>[2]},
|
|
289
|
-
:qi=>
|
|
254
|
+
:autoscanned_defaults=>[-1.0]}}},
|
|
255
|
+
:species=>
|
|
256
|
+
{:description=>"",
|
|
257
|
+
:should_include=>"true",
|
|
258
|
+
:variables=>
|
|
259
|
+
{:qi=>
|
|
290
260
|
{:should_include=>"true",
|
|
291
261
|
:description=>
|
|
292
|
-
"
|
|
293
|
-
:help=>
|
|
262
|
+
" outdated main ion charge (kept for backward compatibility) ",
|
|
263
|
+
:help=>
|
|
264
|
+
" outdated main ion charge (kept for backward compatibility) ",
|
|
294
265
|
:code_name=>:qi,
|
|
295
266
|
:must_pass=>
|
|
296
267
|
[{:test=>"kind_of? Numeric",
|
|
297
268
|
:explanation=>
|
|
298
269
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
299
270
|
:type=>:Float,
|
|
300
|
-
:autoscanned_defaults=>[1.0]},
|
|
271
|
+
:autoscanned_defaults=>[-1.0, 1.0]},
|
|
301
272
|
:mi=>
|
|
302
273
|
{:should_include=>"true",
|
|
303
|
-
:description=>
|
|
304
|
-
|
|
274
|
+
:description=>
|
|
275
|
+
" old variable for primary ion species mass (kept for backward compatibility)",
|
|
276
|
+
:help=>
|
|
277
|
+
" old variable for primary ion species mass (kept for backward compatibility)",
|
|
305
278
|
:code_name=>:mi,
|
|
306
279
|
:must_pass=>
|
|
307
280
|
[{:test=>"kind_of? Numeric",
|
|
308
281
|
:explanation=>
|
|
309
282
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
310
283
|
:type=>:Float,
|
|
311
|
-
:autoscanned_defaults=>[
|
|
284
|
+
:autoscanned_defaults=>[-1.0, 1.0]},
|
|
312
285
|
:zeff_in=>
|
|
313
286
|
{:should_include=>"true",
|
|
314
287
|
:description=>" effective charge",
|
|
@@ -331,7 +304,7 @@
|
|
|
331
304
|
[{:test=>"kind_of? Integer",
|
|
332
305
|
:explanation=>"This variable must be an integer."}],
|
|
333
306
|
:type=>:Integer,
|
|
334
|
-
:autoscanned_defaults=>[1]},
|
|
307
|
+
:autoscanned_defaults=>[-1]},
|
|
335
308
|
:tritium=>
|
|
336
309
|
{:should_include=>"true",
|
|
337
310
|
:description=>
|
|
@@ -343,7 +316,7 @@
|
|
|
343
316
|
[{:test=>"kind_of? Integer",
|
|
344
317
|
:explanation=>"This variable must be an integer."}],
|
|
345
318
|
:type=>:Integer,
|
|
346
|
-
:autoscanned_defaults=>[
|
|
319
|
+
:autoscanned_defaults=>[-1]},
|
|
347
320
|
:impurity=>
|
|
348
321
|
{:should_include=>"true",
|
|
349
322
|
:description=>
|
|
@@ -355,29 +328,122 @@
|
|
|
355
328
|
[{:test=>"kind_of? Integer",
|
|
356
329
|
:explanation=>"This variable must be an integer."}],
|
|
357
330
|
:type=>:Integer,
|
|
358
|
-
:autoscanned_defaults=>[
|
|
331
|
+
:autoscanned_defaults=>[-1]},
|
|
359
332
|
:mimp=>
|
|
360
333
|
{:should_include=>"true",
|
|
361
|
-
:description=>
|
|
362
|
-
|
|
334
|
+
:description=>
|
|
335
|
+
" old variable for main impurity mass (kept for backward compatibility)",
|
|
336
|
+
:help=>
|
|
337
|
+
" old variable for main impurity mass (kept for backward compatibility)",
|
|
363
338
|
:code_name=>:mimp,
|
|
364
339
|
:must_pass=>
|
|
365
340
|
[{:test=>"kind_of? Numeric",
|
|
366
341
|
:explanation=>
|
|
367
342
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
368
343
|
:type=>:Float,
|
|
369
|
-
:autoscanned_defaults=>[
|
|
344
|
+
:autoscanned_defaults=>[-1.0]},
|
|
370
345
|
:zimp=>
|
|
371
346
|
{:should_include=>"true",
|
|
372
|
-
:description=>
|
|
373
|
-
|
|
347
|
+
:description=>
|
|
348
|
+
" old variable for main impurity charge number (kept for backward compatibility)",
|
|
349
|
+
:help=>
|
|
350
|
+
" old variable for main impurity charge number (kept for backward compatibility)",
|
|
374
351
|
:code_name=>:zimp,
|
|
375
352
|
:must_pass=>
|
|
376
353
|
[{:test=>"kind_of? Numeric",
|
|
377
354
|
:explanation=>
|
|
378
355
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
379
356
|
:type=>:Float,
|
|
380
|
-
:autoscanned_defaults=>[
|
|
357
|
+
:autoscanned_defaults=>[-1.0]},
|
|
358
|
+
:n_ion_spec=>
|
|
359
|
+
{:should_include=>"true",
|
|
360
|
+
:description=>" number of ion species to evolve",
|
|
361
|
+
:help=>" number of ion species to evolve",
|
|
362
|
+
:code_name=>:n_ion_spec,
|
|
363
|
+
:must_pass=>
|
|
364
|
+
[{:test=>"kind_of? Integer",
|
|
365
|
+
:explanation=>"This variable must be an integer."}],
|
|
366
|
+
:type=>:Integer,
|
|
367
|
+
:autoscanned_defaults=>[1]},
|
|
368
|
+
:z_ion_1=>
|
|
369
|
+
{:should_include=>"true",
|
|
370
|
+
:description=>
|
|
371
|
+
" simulated primary ion species charge (in units of fundamental charge)",
|
|
372
|
+
:help=>
|
|
373
|
+
" simulated primary ion species charge (in units of fundamental charge)",
|
|
374
|
+
:code_name=>:z_ion_1,
|
|
375
|
+
:must_pass=>
|
|
376
|
+
[{:test=>"kind_of? Integer",
|
|
377
|
+
:explanation=>"This variable must be an integer."}],
|
|
378
|
+
:type=>:Integer,
|
|
379
|
+
:autoscanned_defaults=>[-1]},
|
|
380
|
+
:z_ion_2=>
|
|
381
|
+
{:should_include=>"true",
|
|
382
|
+
:description=>
|
|
383
|
+
" simulated secondary ion species charge (in units of fundamental charge)",
|
|
384
|
+
:help=>
|
|
385
|
+
" simulated secondary ion species charge (in units of fundamental charge)",
|
|
386
|
+
:code_name=>:z_ion_2,
|
|
387
|
+
:must_pass=>
|
|
388
|
+
[{:test=>"kind_of? Integer",
|
|
389
|
+
:explanation=>"This variable must be an integer."}],
|
|
390
|
+
:type=>:Integer,
|
|
391
|
+
:autoscanned_defaults=>[-1]},
|
|
392
|
+
:z_ion_3=>
|
|
393
|
+
{:should_include=>"true",
|
|
394
|
+
:description=>
|
|
395
|
+
" simulated tertiary ion species charge (in units of fundamental charge)",
|
|
396
|
+
:help=>
|
|
397
|
+
" simulated tertiary ion species charge (in units of fundamental charge)",
|
|
398
|
+
:code_name=>:z_ion_3,
|
|
399
|
+
:must_pass=>
|
|
400
|
+
[{:test=>"kind_of? Integer",
|
|
401
|
+
:explanation=>"This variable must be an integer."}],
|
|
402
|
+
:type=>:Integer,
|
|
403
|
+
:autoscanned_defaults=>[-1]},
|
|
404
|
+
:m_ion_1=>
|
|
405
|
+
{:should_include=>"true",
|
|
406
|
+
:description=>" simulated primary ion mass (in units of proton mass)",
|
|
407
|
+
:help=>" simulated primary ion mass (in units of proton mass)",
|
|
408
|
+
:code_name=>:m_ion_1,
|
|
409
|
+
:must_pass=>
|
|
410
|
+
[{:test=>"kind_of? Numeric",
|
|
411
|
+
:explanation=>
|
|
412
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
413
|
+
:type=>:Float,
|
|
414
|
+
:autoscanned_defaults=>[-1.0]},
|
|
415
|
+
:m_ion_2=>
|
|
416
|
+
{:should_include=>"true",
|
|
417
|
+
:description=>" simulated secondary ion mass (in units of proton mass)",
|
|
418
|
+
:help=>" simulated secondary ion mass (in units of proton mass)",
|
|
419
|
+
:code_name=>:m_ion_2,
|
|
420
|
+
:must_pass=>
|
|
421
|
+
[{:test=>"kind_of? Numeric",
|
|
422
|
+
:explanation=>
|
|
423
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
424
|
+
:type=>:Float,
|
|
425
|
+
:autoscanned_defaults=>[-1.0]},
|
|
426
|
+
:m_ion_3=>
|
|
427
|
+
{:should_include=>"true",
|
|
428
|
+
:description=>" simulated tertiary ion mass (in units of proton mass)",
|
|
429
|
+
:help=>" simulated tertiary ion mass (in units of proton mass)",
|
|
430
|
+
:code_name=>:m_ion_3,
|
|
431
|
+
:must_pass=>
|
|
432
|
+
[{:test=>"kind_of? Numeric",
|
|
433
|
+
:explanation=>
|
|
434
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
435
|
+
:type=>:Float,
|
|
436
|
+
:autoscanned_defaults=>[-1.0]},
|
|
437
|
+
:is_ref=>
|
|
438
|
+
{:should_include=>"true",
|
|
439
|
+
:description=>" index of reference species in flux calculation",
|
|
440
|
+
:help=>" index of reference species in flux calculation",
|
|
441
|
+
:code_name=>:is_ref,
|
|
442
|
+
:must_pass=>
|
|
443
|
+
[{:test=>"kind_of? Integer",
|
|
444
|
+
:explanation=>"This variable must be an integer."}],
|
|
445
|
+
:type=>:Integer,
|
|
446
|
+
:autoscanned_defaults=>[2]}}},
|
|
381
447
|
:time=>
|
|
382
448
|
{:description=>"",
|
|
383
449
|
:should_include=>"true",
|
|
@@ -391,7 +457,7 @@
|
|
|
391
457
|
[{:test=>"kind_of? Integer",
|
|
392
458
|
:explanation=>"This variable must be an integer."}],
|
|
393
459
|
:type=>:Integer,
|
|
394
|
-
:autoscanned_defaults=>[20]},
|
|
460
|
+
:autoscanned_defaults=>[10, 20]},
|
|
395
461
|
:niter=>
|
|
396
462
|
{:should_include=>"true",
|
|
397
463
|
:description=>" max number of newton iterations per time step",
|
|
@@ -412,7 +478,7 @@
|
|
|
412
478
|
:explanation=>
|
|
413
479
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
414
480
|
:type=>:Float,
|
|
415
|
-
:autoscanned_defaults=>[0.01]},
|
|
481
|
+
:autoscanned_defaults=>[0.01, 0.2]},
|
|
416
482
|
:ntdelt_max=>
|
|
417
483
|
{:should_include=>"true",
|
|
418
484
|
:description=>" maximum size of transport time step",
|
|
@@ -446,7 +512,7 @@
|
|
|
446
512
|
:explanation=>
|
|
447
513
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
448
514
|
:type=>:Float,
|
|
449
|
-
:autoscanned_defaults=>[0.2]},
|
|
515
|
+
:autoscanned_defaults=>[0.2, 1.0]},
|
|
450
516
|
:errflr=>
|
|
451
517
|
{:should_include=>"true",
|
|
452
518
|
:description=>" relative error below which we stop iterating",
|
|
@@ -457,7 +523,7 @@
|
|
|
457
523
|
:explanation=>
|
|
458
524
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
459
525
|
:type=>:Float,
|
|
460
|
-
:autoscanned_defaults=>[0.005]},
|
|
526
|
+
:autoscanned_defaults=>[0.005, 0.03]},
|
|
461
527
|
:flrfac=>
|
|
462
528
|
{:should_include=>"true",
|
|
463
529
|
:description=>
|
|
@@ -470,7 +536,7 @@
|
|
|
470
536
|
:explanation=>
|
|
471
537
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
472
538
|
:type=>:Float,
|
|
473
|
-
:autoscanned_defaults=>[2.0]},
|
|
539
|
+
:autoscanned_defaults=>[1.0, 2.0]},
|
|
474
540
|
:nensembles=>
|
|
475
541
|
{:should_include=>"true",
|
|
476
542
|
:description=>
|
|
@@ -495,7 +561,7 @@
|
|
|
495
561
|
[{:test=>"kind_of? String",
|
|
496
562
|
:explanation=>"This variable must be a string."}],
|
|
497
563
|
:type=>:String,
|
|
498
|
-
:autoscanned_defaults=>["default"]},
|
|
564
|
+
:autoscanned_defaults=>["default", "test1"]},
|
|
499
565
|
:flxmult=>
|
|
500
566
|
{:should_include=>"true",
|
|
501
567
|
:description=>" coefficient multiplying fluxes (for testing)",
|
|
@@ -562,16 +628,6 @@
|
|
|
562
628
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
563
629
|
:type=>:Float,
|
|
564
630
|
:autoscanned_defaults=>[0.1]},
|
|
565
|
-
:grad_option=>
|
|
566
|
-
{:should_include=>"true",
|
|
567
|
-
:description=>" option determining which equilibrium gradients to vary",
|
|
568
|
-
:help=>" option determining which equilibrium gradients to vary",
|
|
569
|
-
:code_name=>:grad_option,
|
|
570
|
-
:must_pass=>
|
|
571
|
-
[{:test=>"kind_of? String",
|
|
572
|
-
:explanation=>"This variable must be a string."}],
|
|
573
|
-
:type=>:String,
|
|
574
|
-
:autoscanned_defaults=>["default"]},
|
|
575
631
|
:dfprim=>
|
|
576
632
|
{:should_include=>"true",
|
|
577
633
|
:description=>" step size for R/Ln is -R/Ln * dfprim",
|
|
@@ -582,7 +638,7 @@
|
|
|
582
638
|
:explanation=>
|
|
583
639
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
584
640
|
:type=>:Float,
|
|
585
|
-
:autoscanned_defaults=>[0.1]},
|
|
641
|
+
:autoscanned_defaults=>[0.1, 1.0]},
|
|
586
642
|
:dtprim=>
|
|
587
643
|
{:should_include=>"true",
|
|
588
644
|
:description=>" step size for R/LT is R/LT * dtprim",
|
|
@@ -593,7 +649,7 @@
|
|
|
593
649
|
:explanation=>
|
|
594
650
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
595
651
|
:type=>:Float,
|
|
596
|
-
:autoscanned_defaults=>[0.1]},
|
|
652
|
+
:autoscanned_defaults=>[0.1, 1.0]},
|
|
597
653
|
:dgexb=>
|
|
598
654
|
{:should_include=>"true",
|
|
599
655
|
:description=>" step size for gexb is gexb * dgexb",
|
|
@@ -637,7 +693,7 @@
|
|
|
637
693
|
:explanation=>
|
|
638
694
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
639
695
|
:type=>:Fortran_Bool,
|
|
640
|
-
:autoscanned_defaults=>[".false."]},
|
|
696
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
641
697
|
:dflx_stencil=>
|
|
642
698
|
{:should_include=>"true",
|
|
643
699
|
:description=>" number of fluxes to use for flux derivatives",
|
|
@@ -717,29 +773,7 @@
|
|
|
717
773
|
:explanation=>
|
|
718
774
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
719
775
|
:type=>:Float,
|
|
720
|
-
:autoscanned_defaults=>[0.2]},
|
|
721
|
-
:dti=>
|
|
722
|
-
{:should_include=>"true",
|
|
723
|
-
:description=>" step size for Ti is Ti * dti",
|
|
724
|
-
:help=>" step size for Ti is Ti * dti",
|
|
725
|
-
:code_name=>:dti,
|
|
726
|
-
:must_pass=>
|
|
727
|
-
[{:test=>"kind_of? Numeric",
|
|
728
|
-
:explanation=>
|
|
729
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
730
|
-
:type=>:Float,
|
|
731
|
-
:autoscanned_defaults=>[0.2]},
|
|
732
|
-
:dte=>
|
|
733
|
-
{:should_include=>"true",
|
|
734
|
-
:description=>" step size for Te is Te * dte",
|
|
735
|
-
:help=>" step size for Te is Te * dte",
|
|
736
|
-
:code_name=>:dte,
|
|
737
|
-
:must_pass=>
|
|
738
|
-
[{:test=>"kind_of? Numeric",
|
|
739
|
-
:explanation=>
|
|
740
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
741
|
-
:type=>:Float,
|
|
742
|
-
:autoscanned_defaults=>[0.2]},
|
|
776
|
+
:autoscanned_defaults=>[0.0, 0.2]},
|
|
743
777
|
:dom=>
|
|
744
778
|
{:should_include=>"true",
|
|
745
779
|
:description=>
|
|
@@ -912,8 +946,8 @@
|
|
|
912
946
|
:autoscanned_defaults=>["default"]},
|
|
913
947
|
:nifspppl_initial=>
|
|
914
948
|
{:should_include=>"true",
|
|
915
|
-
:description=>" number of initial
|
|
916
|
-
:help=>" number of initial
|
|
949
|
+
:description=>" number of initial ifspppl_fluxes calls",
|
|
950
|
+
:help=>" number of initial ifspppl_fluxes calls",
|
|
917
951
|
:code_name=>:nifspppl_initial,
|
|
918
952
|
:must_pass=>
|
|
919
953
|
[{:test=>"kind_of? integer",
|
|
@@ -922,8 +956,8 @@
|
|
|
922
956
|
:autoscanned_defaults=>[-1]},
|
|
923
957
|
:n_gpus=>
|
|
924
958
|
{:should_include=>"true",
|
|
925
|
-
:description=>"
|
|
926
|
-
:help=>"
|
|
959
|
+
:description=>" For gryfx, number of avail gpus",
|
|
960
|
+
:help=>" For gryfx, number of avail gpus",
|
|
927
961
|
:code_name=>:n_gpus,
|
|
928
962
|
:must_pass=>
|
|
929
963
|
[{:test=>"kind_of? integer",
|
|
@@ -942,15 +976,25 @@
|
|
|
942
976
|
:autoscanned_defaults=>[""]},
|
|
943
977
|
:replay_filename=>
|
|
944
978
|
{:should_include=>"true",
|
|
945
|
-
:description=>
|
|
946
|
-
|
|
947
|
-
:help=>
|
|
948
|
-
"If running in replay mode, gives the filename of the trinity netcdf output file that contains the fluxes to be read.",
|
|
979
|
+
:description=>nil,
|
|
980
|
+
:help=>nil,
|
|
949
981
|
:code_name=>:replay_filename,
|
|
950
982
|
:must_pass=>
|
|
951
983
|
[{:test=>"kind_of? String",
|
|
952
984
|
:explanation=>"This variable must be a string."}],
|
|
953
|
-
:type=>:String
|
|
985
|
+
:type=>:String,
|
|
986
|
+
:autoscanned_defaults=>[""]},
|
|
987
|
+
:dtemp=>
|
|
988
|
+
{:should_include=>"true",
|
|
989
|
+
:description=>" step size for temperature is temperature * dtemp",
|
|
990
|
+
:help=>" step size for temperature is temperature * dtemp",
|
|
991
|
+
:code_name=>:dtemp,
|
|
992
|
+
:must_pass=>
|
|
993
|
+
[{:test=>"kind_of? Numeric",
|
|
994
|
+
:explanation=>
|
|
995
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
996
|
+
:type=>:Float,
|
|
997
|
+
:autoscanned_defaults=>[0.2]}}},
|
|
954
998
|
:init=>
|
|
955
999
|
{:description=>"",
|
|
956
1000
|
:should_include=>"true",
|
|
@@ -964,7 +1008,7 @@
|
|
|
964
1008
|
[{:test=>"kind_of? String",
|
|
965
1009
|
:explanation=>"This variable must be a string."}],
|
|
966
1010
|
:type=>:String,
|
|
967
|
-
:autoscanned_defaults=>["default"]},
|
|
1011
|
+
:autoscanned_defaults=>["analytic", "default"]},
|
|
968
1012
|
:init_file=>
|
|
969
1013
|
{:should_include=>"true",
|
|
970
1014
|
:description=>" file with input data",
|
|
@@ -986,17 +1030,6 @@
|
|
|
986
1030
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
987
1031
|
:type=>:Float,
|
|
988
1032
|
:autoscanned_defaults=>["geo_time"]},
|
|
989
|
-
:rln=>
|
|
990
|
-
{:should_include=>"true",
|
|
991
|
-
:description=>" initial R/Ln",
|
|
992
|
-
:help=>" initial R/Ln",
|
|
993
|
-
:code_name=>:rln,
|
|
994
|
-
:must_pass=>
|
|
995
|
-
[{:test=>"kind_of? Numeric",
|
|
996
|
-
:explanation=>
|
|
997
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
998
|
-
:type=>:Float,
|
|
999
|
-
:autoscanned_defaults=>[0.0, 1.0]},
|
|
1000
1033
|
:rlti=>
|
|
1001
1034
|
{:should_include=>"true",
|
|
1002
1035
|
:description=>" initial R/LTi",
|
|
@@ -1018,20 +1051,7 @@
|
|
|
1018
1051
|
:explanation=>
|
|
1019
1052
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1020
1053
|
:type=>:Float,
|
|
1021
|
-
:autoscanned_defaults=>[
|
|
1022
|
-
:nedge=>
|
|
1023
|
-
{:should_include=>"true",
|
|
1024
|
-
:description=>
|
|
1025
|
-
" initial density offset. if positive, override init_option for dens",
|
|
1026
|
-
:help=>
|
|
1027
|
-
" initial density offset. if positive, override init_option for dens",
|
|
1028
|
-
:code_name=>:nedge,
|
|
1029
|
-
:must_pass=>
|
|
1030
|
-
[{:test=>"kind_of? Numeric",
|
|
1031
|
-
:explanation=>
|
|
1032
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1033
|
-
:type=>:Float,
|
|
1034
|
-
:autoscanned_defaults=>[-1.0]},
|
|
1054
|
+
:autoscanned_defaults=>[4.0]},
|
|
1035
1055
|
:tiedge=>
|
|
1036
1056
|
{:should_include=>"true",
|
|
1037
1057
|
:description=>
|
|
@@ -1103,15 +1123,15 @@
|
|
|
1103
1123
|
:autoscanned_defaults=>[-1.0]},
|
|
1104
1124
|
:rll=>
|
|
1105
1125
|
{:should_include=>"true",
|
|
1106
|
-
:description=>
|
|
1107
|
-
:help=>
|
|
1126
|
+
:description=>" initial R/LL",
|
|
1127
|
+
:help=>" initial R/LL",
|
|
1108
1128
|
:code_name=>:rll,
|
|
1109
1129
|
:must_pass=>
|
|
1110
1130
|
[{:test=>"kind_of? Numeric",
|
|
1111
1131
|
:explanation=>
|
|
1112
1132
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1113
1133
|
:type=>:Float,
|
|
1114
|
-
:autoscanned_defaults=>[]},
|
|
1134
|
+
:autoscanned_defaults=>[0.0]},
|
|
1115
1135
|
:iternt_file=>
|
|
1116
1136
|
{:should_include=>"true",
|
|
1117
1137
|
:description=>
|
|
@@ -1192,7 +1212,47 @@
|
|
|
1192
1212
|
[{:test=>"kind_of? String",
|
|
1193
1213
|
:explanation=>"This variable must be a string."}],
|
|
1194
1214
|
:type=>:String,
|
|
1195
|
-
:autoscanned_defaults=>["restart.itercalib"]}
|
|
1215
|
+
:autoscanned_defaults=>["restart.itercalib"]},
|
|
1216
|
+
:rlni=>
|
|
1217
|
+
{:should_include=>"true",
|
|
1218
|
+
:description=>nil,
|
|
1219
|
+
:help=>nil,
|
|
1220
|
+
:code_name=>:rlni,
|
|
1221
|
+
:must_pass=>
|
|
1222
|
+
[{:test=>"kind_of? Numeric",
|
|
1223
|
+
:explanation=>
|
|
1224
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1225
|
+
:type=>:Float},
|
|
1226
|
+
:rlne=>
|
|
1227
|
+
{:should_include=>"true",
|
|
1228
|
+
:description=>nil,
|
|
1229
|
+
:help=>nil,
|
|
1230
|
+
:code_name=>:rlne,
|
|
1231
|
+
:must_pass=>
|
|
1232
|
+
[{:test=>"kind_of? Numeric",
|
|
1233
|
+
:explanation=>
|
|
1234
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1235
|
+
:type=>:Float},
|
|
1236
|
+
:niedge=>
|
|
1237
|
+
{:should_include=>"true",
|
|
1238
|
+
:description=>nil,
|
|
1239
|
+
:help=>nil,
|
|
1240
|
+
:code_name=>:niedge,
|
|
1241
|
+
:must_pass=>
|
|
1242
|
+
[{:test=>"kind_of? Numeric",
|
|
1243
|
+
:explanation=>
|
|
1244
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1245
|
+
:type=>:Float},
|
|
1246
|
+
:needge=>
|
|
1247
|
+
{:should_include=>"true",
|
|
1248
|
+
:description=>nil,
|
|
1249
|
+
:help=>nil,
|
|
1250
|
+
:code_name=>:needge,
|
|
1251
|
+
:must_pass=>
|
|
1252
|
+
[{:test=>"kind_of? Numeric",
|
|
1253
|
+
:explanation=>
|
|
1254
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1255
|
+
:type=>:Float}}},
|
|
1196
1256
|
:sources=>
|
|
1197
1257
|
{:description=>"",
|
|
1198
1258
|
:should_include=>"true",
|
|
@@ -1206,7 +1266,7 @@
|
|
|
1206
1266
|
[{:test=>"kind_of? String",
|
|
1207
1267
|
:explanation=>"This variable must be a string."}],
|
|
1208
1268
|
:type=>:String,
|
|
1209
|
-
:autoscanned_defaults=>["default"]},
|
|
1269
|
+
:autoscanned_defaults=>["analytic", "default"]},
|
|
1210
1270
|
:source_file=>
|
|
1211
1271
|
{:should_include=>"true",
|
|
1212
1272
|
:description=>" file with input data",
|
|
@@ -1228,17 +1288,6 @@
|
|
|
1228
1288
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1229
1289
|
:type=>:Float,
|
|
1230
1290
|
:autoscanned_defaults=>["geo_time"]},
|
|
1231
|
-
:powerin=>
|
|
1232
|
-
{:should_include=>"true",
|
|
1233
|
-
:description=>" external power input (in MW)",
|
|
1234
|
-
:help=>" external power input (in MW)",
|
|
1235
|
-
:code_name=>:powerin,
|
|
1236
|
-
:must_pass=>
|
|
1237
|
-
[{:test=>"kind_of? Numeric",
|
|
1238
|
-
:explanation=>
|
|
1239
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1240
|
-
:type=>:Float,
|
|
1241
|
-
:autoscanned_defaults=>[50.0]},
|
|
1242
1291
|
:psig=>
|
|
1243
1292
|
{:should_include=>"true",
|
|
1244
1293
|
:description=>
|
|
@@ -1262,17 +1311,6 @@
|
|
|
1262
1311
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1263
1312
|
:type=>:Float,
|
|
1264
1313
|
:autoscanned_defaults=>[0.0]},
|
|
1265
|
-
:src_ratio=>
|
|
1266
|
-
{:should_include=>"true",
|
|
1267
|
-
:description=>" fraction of external power going to ions",
|
|
1268
|
-
:help=>" fraction of external power going to ions",
|
|
1269
|
-
:code_name=>:src_ratio,
|
|
1270
|
-
:must_pass=>
|
|
1271
|
-
[{:test=>"kind_of? Numeric",
|
|
1272
|
-
:explanation=>
|
|
1273
|
-
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1274
|
-
:type=>:Float,
|
|
1275
|
-
:autoscanned_defaults=>[0.5]},
|
|
1276
1314
|
:densin=>
|
|
1277
1315
|
{:should_include=>"true",
|
|
1278
1316
|
:description=>" external density input",
|
|
@@ -1317,7 +1355,7 @@
|
|
|
1317
1355
|
:explanation=>
|
|
1318
1356
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1319
1357
|
:type=>:Fortran_Bool,
|
|
1320
|
-
:autoscanned_defaults=>[".true."]},
|
|
1358
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
1321
1359
|
:include_radiation=>
|
|
1322
1360
|
{:should_include=>"true",
|
|
1323
1361
|
:description=>" include bremstrahlung radiation",
|
|
@@ -1328,7 +1366,7 @@
|
|
|
1328
1366
|
:explanation=>
|
|
1329
1367
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1330
1368
|
:type=>:Fortran_Bool,
|
|
1331
|
-
:autoscanned_defaults=>[".true."]},
|
|
1369
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
1332
1370
|
:pioq=>
|
|
1333
1371
|
{:should_include=>"true",
|
|
1334
1372
|
:description=>" ratio of momentum to heat input",
|
|
@@ -1353,17 +1391,6 @@
|
|
|
1353
1391
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1354
1392
|
:type=>:Fortran_Bool,
|
|
1355
1393
|
:autoscanned_defaults=>[".false."]},
|
|
1356
|
-
:write_smooth=>
|
|
1357
|
-
{:should_include=>"true",
|
|
1358
|
-
:description=>" true writes out smoothed profiles",
|
|
1359
|
-
:help=>" true writes out smoothed profiles",
|
|
1360
|
-
:code_name=>:write_smooth,
|
|
1361
|
-
:must_pass=>
|
|
1362
|
-
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1363
|
-
:explanation=>
|
|
1364
|
-
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1365
|
-
:type=>:Fortran_Bool,
|
|
1366
|
-
:autoscanned_defaults=>[".false."]},
|
|
1367
1394
|
:nbi_mult=>
|
|
1368
1395
|
{:should_include=>"true",
|
|
1369
1396
|
:description=>
|
|
@@ -1450,7 +1477,49 @@
|
|
|
1450
1477
|
:explanation=>
|
|
1451
1478
|
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1452
1479
|
:type=>:Float,
|
|
1453
|
-
:autoscanned_defaults=>[-1.0]}
|
|
1480
|
+
:autoscanned_defaults=>[-1.0]},
|
|
1481
|
+
:e_powerin=>
|
|
1482
|
+
{:should_include=>"true",
|
|
1483
|
+
:description=>" external electron power input (in MW)",
|
|
1484
|
+
:help=>" external electron power input (in MW)",
|
|
1485
|
+
:code_name=>:e_powerin,
|
|
1486
|
+
:must_pass=>
|
|
1487
|
+
[{:test=>"kind_of? Numeric",
|
|
1488
|
+
:explanation=>
|
|
1489
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1490
|
+
:type=>:Float,
|
|
1491
|
+
:autoscanned_defaults=>[10.0]},
|
|
1492
|
+
:i_powerin_1=>
|
|
1493
|
+
{:should_include=>"true",
|
|
1494
|
+
:description=>" external primary ion power input (in MW)",
|
|
1495
|
+
:help=>" external primary ion power input (in MW)",
|
|
1496
|
+
:code_name=>:i_powerin_1,
|
|
1497
|
+
:must_pass=>
|
|
1498
|
+
[{:test=>"kind_of? Numeric",
|
|
1499
|
+
:explanation=>
|
|
1500
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1501
|
+
:type=>:Float,
|
|
1502
|
+
:autoscanned_defaults=>[40.0]},
|
|
1503
|
+
:i_powerin_2=>
|
|
1504
|
+
{:should_include=>"true",
|
|
1505
|
+
:description=>nil,
|
|
1506
|
+
:help=>nil,
|
|
1507
|
+
:code_name=>:i_powerin_2,
|
|
1508
|
+
:must_pass=>
|
|
1509
|
+
[{:test=>"kind_of? Numeric",
|
|
1510
|
+
:explanation=>
|
|
1511
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1512
|
+
:type=>:Float},
|
|
1513
|
+
:i_powerin_3=>
|
|
1514
|
+
{:should_include=>"true",
|
|
1515
|
+
:description=>nil,
|
|
1516
|
+
:help=>nil,
|
|
1517
|
+
:code_name=>:i_powerin_3,
|
|
1518
|
+
:must_pass=>
|
|
1519
|
+
[{:test=>"kind_of? Numeric",
|
|
1520
|
+
:explanation=>
|
|
1521
|
+
"This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
|
|
1522
|
+
:type=>:Float}}},
|
|
1454
1523
|
:physics=>
|
|
1455
1524
|
{:description=>"",
|
|
1456
1525
|
:should_include=>"true",
|
|
@@ -1467,7 +1536,7 @@
|
|
|
1467
1536
|
:explanation=>
|
|
1468
1537
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1469
1538
|
:type=>:Fortran_Bool,
|
|
1470
|
-
:autoscanned_defaults=>[".true."]},
|
|
1539
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
1471
1540
|
:temp_equil=>
|
|
1472
1541
|
{:should_include=>"true",
|
|
1473
1542
|
:description=>" set to false to neglect temperature equilibration",
|
|
@@ -1478,7 +1547,7 @@
|
|
|
1478
1547
|
:explanation=>
|
|
1479
1548
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1480
1549
|
:type=>:Fortran_Bool,
|
|
1481
|
-
:autoscanned_defaults=>[".true."]},
|
|
1550
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
1482
1551
|
:turb_heat=>
|
|
1483
1552
|
{:should_include=>"true",
|
|
1484
1553
|
:description=>" set to false to neglect turbulent heating",
|
|
@@ -1489,7 +1558,7 @@
|
|
|
1489
1558
|
:explanation=>
|
|
1490
1559
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1491
1560
|
:type=>:Fortran_Bool,
|
|
1492
|
-
:autoscanned_defaults=>[".true."]},
|
|
1561
|
+
:autoscanned_defaults=>[".false.", ".true."]},
|
|
1493
1562
|
:numult=>
|
|
1494
1563
|
{:should_include=>"true",
|
|
1495
1564
|
:description=>" multiplier of collision frequency for testing",
|
|
@@ -1511,4 +1580,64 @@
|
|
|
1511
1580
|
:explanation=>
|
|
1512
1581
|
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1513
1582
|
:type=>:Fortran_Bool,
|
|
1514
|
-
:autoscanned_defaults=>[".true."]}
|
|
1583
|
+
:autoscanned_defaults=>[".true."]},
|
|
1584
|
+
:evolve_density=>
|
|
1585
|
+
{:should_include=>"true",
|
|
1586
|
+
:description=>nil,
|
|
1587
|
+
:help=>nil,
|
|
1588
|
+
:code_name=>:evolve_density,
|
|
1589
|
+
:must_pass=>
|
|
1590
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1591
|
+
:explanation=>
|
|
1592
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1593
|
+
:type=>:Fortran_Bool},
|
|
1594
|
+
:evolve_temperature=>
|
|
1595
|
+
{:should_include=>"true",
|
|
1596
|
+
:description=>nil,
|
|
1597
|
+
:help=>nil,
|
|
1598
|
+
:code_name=>:evolve_temperature,
|
|
1599
|
+
:must_pass=>
|
|
1600
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1601
|
+
:explanation=>
|
|
1602
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1603
|
+
:type=>:Fortran_Bool},
|
|
1604
|
+
:evolve_flow=>
|
|
1605
|
+
{:should_include=>"true",
|
|
1606
|
+
:description=>nil,
|
|
1607
|
+
:help=>nil,
|
|
1608
|
+
:code_name=>:evolve_flow,
|
|
1609
|
+
:must_pass=>
|
|
1610
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1611
|
+
:explanation=>
|
|
1612
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1613
|
+
:type=>:Fortran_Bool},
|
|
1614
|
+
:te_equal_ti=>
|
|
1615
|
+
{:should_include=>"true",
|
|
1616
|
+
:description=>nil,
|
|
1617
|
+
:help=>nil,
|
|
1618
|
+
:code_name=>:te_equal_ti,
|
|
1619
|
+
:must_pass=>
|
|
1620
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1621
|
+
:explanation=>
|
|
1622
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1623
|
+
:type=>:Fortran_Bool},
|
|
1624
|
+
:equal_ion_temps=>
|
|
1625
|
+
{:should_include=>"true",
|
|
1626
|
+
:description=>nil,
|
|
1627
|
+
:help=>nil,
|
|
1628
|
+
:code_name=>:equal_ion_temps,
|
|
1629
|
+
:must_pass=>
|
|
1630
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1631
|
+
:explanation=>
|
|
1632
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1633
|
+
:type=>:Fortran_Bool},
|
|
1634
|
+
:te_fixed=>
|
|
1635
|
+
{:should_include=>"true",
|
|
1636
|
+
:description=>nil,
|
|
1637
|
+
:help=>nil,
|
|
1638
|
+
:code_name=>:te_fixed,
|
|
1639
|
+
:must_pass=>
|
|
1640
|
+
[{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
|
|
1641
|
+
:explanation=>
|
|
1642
|
+
"This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
|
|
1643
|
+
:type=>:Fortran_Bool}}}}
|
data/lib/trinitycrmod/trinity.rb
CHANGED
|
@@ -18,6 +18,8 @@ class CodeRunner
|
|
|
18
18
|
CodeRunner.setup_run_class('gryfx')
|
|
19
19
|
require 'trinitycrmod/trinity_gs2'
|
|
20
20
|
|
|
21
|
+
CodeRunner.setup_run_class('ecom')
|
|
22
|
+
|
|
21
23
|
# Where this file is
|
|
22
24
|
@code_module_folder = File.dirname(File.expand_path(__FILE__)) # i.e. the directory this file is in
|
|
23
25
|
|
|
@@ -29,6 +31,7 @@ class CodeRunner
|
|
|
29
31
|
require 'trinitycrmod/check_parameters'
|
|
30
32
|
require 'trinitycrmod/actual_parameter_values'
|
|
31
33
|
require 'trinitycrmod/chease'
|
|
34
|
+
require 'trinitycrmod/ecom'
|
|
32
35
|
require 'trinitycrmod/calib'
|
|
33
36
|
require 'trinitycrmod/flux_interpolator'
|
|
34
37
|
require 'trinitycrmod/read_netcdf'
|
|
@@ -68,7 +71,7 @@ class CodeRunner
|
|
|
68
71
|
@naming_pars = []
|
|
69
72
|
|
|
70
73
|
# Any folders which are a number will contain the results from flux simulations.
|
|
71
|
-
@excluded_sub_folders = (1...1000).to_a.map{|i| "flux_tube_" + i.to_s} + ['chease']
|
|
74
|
+
@excluded_sub_folders = (1...1000).to_a.map{|i| "flux_tube_" + i.to_s} + ['chease', 'ecom']
|
|
72
75
|
|
|
73
76
|
# A hook which gets called when printing the standard run information to the screen using the status command.
|
|
74
77
|
def print_out_line
|
|
@@ -166,7 +169,11 @@ class CodeRunner
|
|
|
166
169
|
if @restart_id
|
|
167
170
|
@runner.run_list[@restart_id].restart(self)
|
|
168
171
|
end
|
|
169
|
-
|
|
172
|
+
if uses_ecom?
|
|
173
|
+
setup_ecom
|
|
174
|
+
elsif uses_chease?
|
|
175
|
+
setup_chease
|
|
176
|
+
end
|
|
170
177
|
check_parameters
|
|
171
178
|
write_input_file
|
|
172
179
|
generate_flux_input_files if flux_gs2? or flux_gryfx?
|
data/trinitycrmod.gemspec
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
|
5
|
-
# stub: trinitycrmod 0.
|
|
5
|
+
# stub: trinitycrmod 0.8.0 ruby lib
|
|
6
6
|
|
|
7
7
|
Gem::Specification.new do |s|
|
|
8
8
|
s.name = "trinitycrmod"
|
|
9
|
-
s.version = "0.
|
|
9
|
+
s.version = "0.8.0"
|
|
10
10
|
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
12
12
|
s.require_paths = ["lib"]
|
|
13
13
|
s.authors = ["Edmund Highcock"]
|
|
14
|
-
s.date = "2015-
|
|
14
|
+
s.date = "2015-09-24"
|
|
15
15
|
s.description = "This module allows Trinity, the Multiscale Gyrokinetic Turbulent Transport solver for Fusion Reactors, to harness the power of CodeRunner, a framework for the automated running and analysis of simulations."
|
|
16
16
|
s.email = "edmundhighcock@sourceforge.net"
|
|
17
17
|
s.extra_rdoc_files = [
|
|
@@ -31,6 +31,7 @@ Gem::Specification.new do |s|
|
|
|
31
31
|
"lib/trinitycrmod/chease.rb",
|
|
32
32
|
"lib/trinitycrmod/check_parameters.rb",
|
|
33
33
|
"lib/trinitycrmod/deleted_variables.rb",
|
|
34
|
+
"lib/trinitycrmod/ecom.rb",
|
|
34
35
|
"lib/trinitycrmod/flux_interpolator.rb",
|
|
35
36
|
"lib/trinitycrmod/graphs.rb",
|
|
36
37
|
"lib/trinitycrmod/namelists.rb",
|
|
@@ -55,6 +56,8 @@ Gem::Specification.new do |s|
|
|
|
55
56
|
s.add_runtime_dependency(%q<text-data-tools>, [">= 1.1.6"])
|
|
56
57
|
s.add_runtime_dependency(%q<gs2crmod>, [">= 0.11.76"])
|
|
57
58
|
s.add_runtime_dependency(%q<gryfxcrmod>, [">= 0.1.9"])
|
|
59
|
+
s.add_runtime_dependency(%q<cheasecrmod>, [">= 0.1.0"])
|
|
60
|
+
s.add_runtime_dependency(%q<ecomcrmod>, [">= 0.1.0"])
|
|
58
61
|
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
|
59
62
|
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
|
60
63
|
s.add_development_dependency(%q<bundler>, ["> 1.0.0"])
|
|
@@ -64,6 +67,8 @@ Gem::Specification.new do |s|
|
|
|
64
67
|
s.add_dependency(%q<text-data-tools>, [">= 1.1.6"])
|
|
65
68
|
s.add_dependency(%q<gs2crmod>, [">= 0.11.76"])
|
|
66
69
|
s.add_dependency(%q<gryfxcrmod>, [">= 0.1.9"])
|
|
70
|
+
s.add_dependency(%q<cheasecrmod>, [">= 0.1.0"])
|
|
71
|
+
s.add_dependency(%q<ecomcrmod>, [">= 0.1.0"])
|
|
67
72
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
|
68
73
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
|
69
74
|
s.add_dependency(%q<bundler>, ["> 1.0.0"])
|
|
@@ -74,6 +79,8 @@ Gem::Specification.new do |s|
|
|
|
74
79
|
s.add_dependency(%q<text-data-tools>, [">= 1.1.6"])
|
|
75
80
|
s.add_dependency(%q<gs2crmod>, [">= 0.11.76"])
|
|
76
81
|
s.add_dependency(%q<gryfxcrmod>, [">= 0.1.9"])
|
|
82
|
+
s.add_dependency(%q<cheasecrmod>, [">= 0.1.0"])
|
|
83
|
+
s.add_dependency(%q<ecomcrmod>, [">= 0.1.0"])
|
|
77
84
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
|
78
85
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
|
79
86
|
s.add_dependency(%q<bundler>, ["> 1.0.0"])
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: trinitycrmod
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Edmund Highcock
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-
|
|
11
|
+
date: 2015-09-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: coderunner
|
|
@@ -66,6 +66,34 @@ dependencies:
|
|
|
66
66
|
- - ">="
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
68
|
version: 0.1.9
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: cheasecrmod
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - ">="
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: 0.1.0
|
|
76
|
+
type: :runtime
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - ">="
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: 0.1.0
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: ecomcrmod
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - ">="
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: 0.1.0
|
|
90
|
+
type: :runtime
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - ">="
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: 0.1.0
|
|
69
97
|
- !ruby/object:Gem::Dependency
|
|
70
98
|
name: shoulda
|
|
71
99
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -144,6 +172,7 @@ files:
|
|
|
144
172
|
- lib/trinitycrmod/chease.rb
|
|
145
173
|
- lib/trinitycrmod/check_parameters.rb
|
|
146
174
|
- lib/trinitycrmod/deleted_variables.rb
|
|
175
|
+
- lib/trinitycrmod/ecom.rb
|
|
147
176
|
- lib/trinitycrmod/flux_interpolator.rb
|
|
148
177
|
- lib/trinitycrmod/graphs.rb
|
|
149
178
|
- lib/trinitycrmod/namelists.rb
|