trinitycrmod 0.7.11 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 36119c68f3dac153b35dde5198b340eda02f49f6
4
- data.tar.gz: 5e6d7cc2337b08267e850e7249387ad65f4bc59f
3
+ metadata.gz: ca33529443aefcf8440c298ac4e3aad6af609da3
4
+ data.tar.gz: 91b67e9abd7f032f7bc91d612af62934661f699a
5
5
  SHA512:
6
- metadata.gz: 9b236b20bdf6cb600cf11d5b347b19eb8d4babb6660cbc138064e6c1a2a1ee4cea3c8d4597ccf57a126260d81024e351055ee96fd5f556e8894826af25bba4f8
7
- data.tar.gz: cc40887e2dc1640ff367ce171b2394bde5ca547bd980793d7d3bde685063a1b3e4313e0e6b885e299e5f37a50dd4fe84ff84ff76a378b5fe4c4f5cf61085936f
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.7.11
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=>[0.0]},
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=>[0.0]},
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
- :species=>
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=>" target time to sample experimental data (in seconds)",
271
- :help=>" target time to sample experimental data (in seconds)",
272
- :code_name=>:species_time,
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=>["geo_time"]},
279
- :ntspec=>
280
- {:should_include=>"true",
281
- :description=>" number of species to evolve (profiles)",
282
- :help=>" number of species to evolve (profiles)",
283
- :code_name=>:ntspec,
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
- " simulated ion species charge (in units of fundamental charge)",
293
- :help=>" simulated ion species charge (in units of fundamental charge)",
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=>" ion mass (in units of proton mass)",
304
- :help=>" ion mass (in units of proton mass)",
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=>[2.0]},
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=>[2]},
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=>[3]},
331
+ :autoscanned_defaults=>[-1]},
359
332
  :mimp=>
360
333
  {:should_include=>"true",
361
- :description=>" main impurity mass (in units of proton mass)",
362
- :help=>" main impurity mass (in units of proton mass)",
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=>[12.0]},
344
+ :autoscanned_defaults=>[-1.0]},
370
345
  :zimp=>
371
346
  {:should_include=>"true",
372
- :description=>" main impurity charge number",
373
- :help=>" main impurity charge number",
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=>[6.0]}}},
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 ifspppl runs",
916
- :help=>" number of initial ifspppl runs",
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=>" for gryfx, number of avail gpus",
926
- :help=>" for gryfx, number of avail gpus",
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
- "Name of the netcdf output file that contains the fluxes to be read.",
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=>[0.0, 4.0]},
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=>nil,
1107
- :help=>nil,
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}}}}
@@ -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
- setup_chease if uses_chease?
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.7.11 ruby lib
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.7.11"
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-07-30"
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.7.11
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-07-30 00:00:00.000000000 Z
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