coderunner 0.13.9 → 0.13.10

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.13.9
1
+ 0.13.10
data/coderunner.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "coderunner"
8
- s.version = "0.13.9"
8
+ s.version = "0.13.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Edmund Highcock"]
@@ -113,7 +113,7 @@ end
113
113
  # in namelist
114
114
 
115
115
  def self.known_code_variable?(namelist, var)
116
- return true if rcp.namelists[namelist] and rcp.namelists[namelist][:variables].map{|(v,h)| (h[:code_name] or v).to_s.downcase.to_sym}.include? var.to_s.downcase.to_sym
116
+ return true if rcp.namelists[namelist.to_s.downcase.to_sym] and rcp.namelists[namelist.to_s.downcase.to_sym][:variables].map{|(v,h)| (h[:code_name] or v).to_s.downcase.to_sym}.include? var.to_s.downcase.to_sym
117
117
  # end
118
118
  return false
119
119
  end
@@ -290,7 +290,7 @@ end
290
290
  # in the simulation code.
291
291
 
292
292
  def self.add_code_variable_to_namelist(namelist, var, value)
293
- code_name = var
293
+ code_name = var.to_s.downcase.to_sym
294
294
  var = var.to_s.downcase.to_sym
295
295
  namelist = namelist.to_s.sub(/_(?<num>\d+)$/, '').to_sym
296
296
  enum = $~ ? $~[:num] : nil
@@ -298,7 +298,7 @@ def self.add_code_variable_to_namelist(namelist, var, value)
298
298
  namelists = rcp.namelists
299
299
  namelist_file = 'namelists.rb'
300
300
  # end
301
- raise "This namelist: #{namelist} should have an enumerator and does not have one" if enum and not @namelists[namelist][:enumerator]
301
+ raise "This namelist: #{namelist} should have an enumerator and does not have one" if enum and (not rcp.namelists[namelist] or not rcp.namelists[namelist][:enumerator])
302
302
  unless ENV['CR_NON_INTERACTIVE']
303
303
  return unless Feedback.get_boolean("An unknown variable has been found in this input file: \n\n\t Namelist: #{namelist}, Name: #{code_name}, Sample Value: #{value.inspect}.\n\nDo you wish to add it to the CodeRunner module? (Recommended: answer yes as long as the variable is not a typo)")
304
304
  end
@@ -548,7 +548,7 @@ def self.parse_input_file(input_file, strict=true)
548
548
  regex = Regexp.new("#{rcp.matching_regex.to_s}\\s*(?:\\!(?<comment>.*))?\\n")
549
549
  #ep input_file
550
550
  text.scan(/(?:(?:^|\A)\s*\!\s*(?<namelist_comment>[^\n]+)\n)?(?:^|\A)\&(?<namelist>\S+).*?^\//m) do
551
- namelist = $~[:namelist].to_sym
551
+ namelist = $~[:namelist].downcase.to_sym
552
552
  hash = namelist_hash[namelist] = {}
553
553
  #p $~
554
554
  scan_text_for_variables($~.to_s).each do |var, val|
@@ -557,7 +557,7 @@ def self.parse_input_file(input_file, strict=true)
557
557
  hash[var] = val
558
558
  end
559
559
  end
560
- pp 'inputfile', namelist_hash
560
+ #pp 'inputfile', namelist_hash
561
561
  namelist_hash
562
562
  end
563
563
 
@@ -568,7 +568,7 @@ def self.scan_text_for_variables(text)
568
568
  arr = []
569
569
  text.scan(regex) do
570
570
  match = $~
571
- var = match[:name].to_sym
571
+ var = match[:name].downcase.to_sym
572
572
  default = match[:default.to_sym]
573
573
  default = (match[:float] or match[:complex]) ? match[:default].gsub(/(\.)(\D|$)/, '\10\2').gsub(/[dD]/, 'e').gsub(/(\D|^)(\.)/, '\10\2') : match[:default]
574
574
  #ep 'default', default
@@ -1112,13 +1112,39 @@ def self.get_sample_value(source, var)
1112
1112
  return sample_val
1113
1113
  end
1114
1114
 
1115
+ # Add variables found in the given namelist file and delete variables not found in it.
1116
+ #
1117
+ def self.synchronise_variables_from_input_file(input_file = ARGV[2])
1118
+ namelists = parse_input_file(input_file)
1119
+ nms = {}
1120
+ all_variables_in_source = {}
1121
+ namelist_declarations = {}
1122
+ namelists.each do |nmlist, vars|
1123
+ all_variables_in_source[nmlist.to_s.sub(/_\d+/, '').to_sym] = []
1124
+ vars.each do |var, value|
1125
+ all_variables_in_source[nmlist.to_s.sub(/_\d+/, '').to_sym].push var
1126
+ p ['nmlist', nmlist, 'var', var]
1127
+ next if known_code_variable?(nmlist, var)
1128
+ add_code_variable_to_namelist(nmlist, var, value)
1129
+ end
1130
+ end
1131
+ delete_old_variables(all_variables_in_source)
1132
+ end
1133
+
1134
+
1115
1135
  # Find unknown input variables in the source code and add them to the database of namelists
1116
1136
  # Delete input variables which are no longer present in the source code
1117
1137
 
1118
1138
  def self.synchronise_variables(source_code_folder = ARGV[2])
1119
1139
  source = get_aggregated_source_code_text(source_code_folder)
1120
1140
  nms, all_variables_in_source, namelist_declarations = get_namelists_and_variables_from_source_code(source)
1141
+ process_synchronisation(nms, all_variables_in_source, namelist_declarations)
1142
+ end
1121
1143
  # ep source.size
1144
+
1145
+ # Delete variables unless they are still present in the source code
1146
+
1147
+ def self.delete_old_variables(all_variables_in_source)
1122
1148
  variables_to_delete = {}
1123
1149
  #pp 'namelists', rcp.namelists
1124
1150
  rcp.namelists.each do |namelist, namelist_hash|
@@ -1146,6 +1172,10 @@ def self.synchronise_variables(source_code_folder = ARGV[2])
1146
1172
  end
1147
1173
  end
1148
1174
  end
1175
+ end
1176
+
1177
+ def self.process_synchronisation(nms, all_variables_in_source, namelist_declarations)
1178
+ delete_old_variables(all_variables_in_source)
1149
1179
 
1150
1180
  raise "No namelists found" if nms.size == 0
1151
1181
  eputs nms.keys.zip(nms.values.map{|vs| vs.size})
@@ -533,7 +533,7 @@ class CodeRunner
533
533
  eputs "making film"
534
534
  frame_rate = (options[:frame_rate] or options[:fr] || 15)
535
535
  film_name = (options[:film_name] or options [:fn] or end_graphkit.file_name + '_film').gsub(/\s/, '_')
536
- puts `ffmpeg -y #{options[:bitrate] ? "-b #{options[:bitrate]}" : ""} -r #{frame_rate} -threads #{(@multiple_processes or 1)} -i film_frames/frame_%0#{fd}d#{extension} -sameq #{film_name}.mp4`
536
+ puts `ffmpeg -y #{options[:bitrate] ? "-b #{options[:bitrate]}" : ""} -r #{frame_rate} -threads #{(@multiple_processes or 1)} -i film_frames/frame_%0#{fd}d#{extension} -qscale 0 #{film_name}.mp4`
537
537
  end
538
538
  end
539
539
 
@@ -737,7 +737,7 @@ class CodeRunner
737
737
  eputs "making film"
738
738
  frame_rate = (options[:frame_rate] or options[:fr] || 15)
739
739
  film_name = (options[:film_name] or options [:fn] or graphkit_frame_array[0][1].file_name + '_film').gsub(/\s/, '_')
740
- puts `ffmpeg -y #{options[:bitrate] ? "-b #{options[:bitrate]}" : ""} -r #{frame_rate} -threads #{(@multiple_processes or 1)} -i film_frames/frame_%0#{fd}d#{extension} -sameq #{film_name}.mp4`
740
+ puts `ffmpeg -y #{options[:bitrate] ? "-b #{options[:bitrate]}" : ""} -r #{frame_rate} -threads #{(@multiple_processes or 1)} -i film_frames/frame_%0#{fd}d#{extension} -qscale 0 #{film_name}.mp4`
741
741
  end
742
742
  end
743
743
 
@@ -14,7 +14,7 @@ class CodeRunner
14
14
 
15
15
  def batch_script
16
16
  ppn_checks
17
- hours, minutes, seconds = hours_minutes_seconds
17
+ hours, mins, secs = hours_minutes_seconds
18
18
  <<EOF
19
19
  #!/bin/bash --login
20
20
  #PBS -N #{executable_name}.#{job_identifier}
@@ -80,7 +80,7 @@ module Moab
80
80
  raise "Please specify wall mins using the W flag"
81
81
  end
82
82
  eputs "Allotted wall time is " + sprintf("%02d:%02d:%02d", hours, mins, secs)
83
- return [hours, minutes, seconds]
83
+ return [hours, mins, secs]
84
84
  end
85
85
  def ppn_checks
86
86
  eputs "Warning: Underuse of nodes (#{ppn} cores per node instead of #{max_ppn})" if ppn.to_i < max_ppn
@@ -88,7 +88,7 @@ module Moab
88
88
  end
89
89
  def batch_script
90
90
  ppn_checks
91
- hours, minutes, seconds = hours_minutes_seconds
91
+ hours, mins, secs = hours_minutes_seconds
92
92
  <<EOF
93
93
  #!/bin/bash --login
94
94
  #PBS -N #{executable_name}.#{job_identifier}
@@ -27,4 +27,358 @@
27
27
  [{:test=>"kind_of? Numeric",
28
28
  :explanation=>
29
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}}
30
+ :type=>:Float},
31
+ :beta=>
32
+ {:should_include=>"true",
33
+ :description=>nil,
34
+ :help=>nil,
35
+ :code_name=>:beta,
36
+ :must_pass=>
37
+ [{:test=>"kind_of? Numeric",
38
+ :explanation=>
39
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
40
+ :type=>:Float},
41
+ :zeff=>
42
+ {:should_include=>"true",
43
+ :description=>nil,
44
+ :help=>nil,
45
+ :code_name=>:zeff,
46
+ :must_pass=>
47
+ [{:test=>"kind_of? Numeric",
48
+ :explanation=>
49
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
50
+ :type=>:Float},
51
+ :grid_option=>
52
+ {:should_include=>"true",
53
+ :description=>nil,
54
+ :help=>nil,
55
+ :code_name=>:grid_option,
56
+ :must_pass=>
57
+ [{:test=>"kind_of? String",
58
+ :explanation=>"This variable must be a string."}],
59
+ :type=>:String},
60
+ :aky=>
61
+ {:should_include=>"true",
62
+ :description=>nil,
63
+ :help=>nil,
64
+ :code_name=>:aky,
65
+ :must_pass=>
66
+ [{:test=>"kind_of? Numeric",
67
+ :explanation=>
68
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
69
+ :type=>:Float},
70
+ :akx=>
71
+ {:should_include=>"true",
72
+ :description=>nil,
73
+ :help=>nil,
74
+ :code_name=>:akx,
75
+ :must_pass=>
76
+ [{:test=>"kind_of? Numeric",
77
+ :explanation=>
78
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
79
+ :type=>:Float},
80
+ :ntheta=>
81
+ {:should_include=>"true",
82
+ :description=>nil,
83
+ :help=>nil,
84
+ :code_name=>:ntheta,
85
+ :must_pass=>
86
+ [{:test=>"kind_of? Integer",
87
+ :explanation=>"This variable must be an integer."}],
88
+ :type=>:Integer},
89
+ :nperiod=>
90
+ {:should_include=>"true",
91
+ :description=>nil,
92
+ :help=>nil,
93
+ :code_name=>:nperiod,
94
+ :must_pass=>
95
+ [{:test=>"kind_of? Integer",
96
+ :explanation=>"This variable must be an integer."}],
97
+ :type=>:Integer},
98
+ :eps=>
99
+ {:should_include=>"true",
100
+ :description=>nil,
101
+ :help=>nil,
102
+ :code_name=>:eps,
103
+ :must_pass=>
104
+ [{:test=>"kind_of? Numeric",
105
+ :explanation=>
106
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
107
+ :type=>:Float},
108
+ :epsl=>
109
+ {:should_include=>"true",
110
+ :description=>nil,
111
+ :help=>nil,
112
+ :code_name=>:epsl,
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
+ :shat=>
119
+ {:should_include=>"true",
120
+ :description=>nil,
121
+ :help=>nil,
122
+ :code_name=>:shat,
123
+ :must_pass=>
124
+ [{:test=>"kind_of? Numeric",
125
+ :explanation=>
126
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
127
+ :type=>:Float},
128
+ :pk=>
129
+ {:should_include=>"true",
130
+ :description=>nil,
131
+ :help=>nil,
132
+ :code_name=>:pk,
133
+ :must_pass=>
134
+ [{:test=>"kind_of? Numeric",
135
+ :explanation=>
136
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
137
+ :type=>:Float},
138
+ :shift=>
139
+ {:should_include=>"true",
140
+ :description=>nil,
141
+ :help=>nil,
142
+ :code_name=>:shift,
143
+ :must_pass=>
144
+ [{:test=>"kind_of? Numeric",
145
+ :explanation=>
146
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
147
+ :type=>:Float},
148
+ :equilibrium_option=>
149
+ {:should_include=>"true",
150
+ :description=>nil,
151
+ :help=>nil,
152
+ :code_name=>:equilibrium_option,
153
+ :must_pass=>
154
+ [{:test=>"kind_of? String",
155
+ :explanation=>"This variable must be a string."}],
156
+ :type=>:String},
157
+ :model_option=>
158
+ {:should_include=>"true",
159
+ :description=>nil,
160
+ :help=>nil,
161
+ :code_name=>:model_option,
162
+ :must_pass=>
163
+ [{:test=>"kind_of? String",
164
+ :explanation=>"This variable must be a string."}],
165
+ :type=>:String},
166
+ :ngauss=>
167
+ {:should_include=>"true",
168
+ :description=>nil,
169
+ :help=>nil,
170
+ :code_name=>:ngauss,
171
+ :must_pass=>
172
+ [{:test=>"kind_of? Integer",
173
+ :explanation=>"This variable must be an integer."}],
174
+ :type=>:Integer},
175
+ :negrid=>
176
+ {:should_include=>"true",
177
+ :description=>nil,
178
+ :help=>nil,
179
+ :code_name=>:negrid,
180
+ :must_pass=>
181
+ [{:test=>"kind_of? Integer",
182
+ :explanation=>"This variable must be an integer."}],
183
+ :type=>:Integer},
184
+ :gridfac=>
185
+ {:should_include=>"true",
186
+ :description=>nil,
187
+ :help=>nil,
188
+ :code_name=>:gridfac,
189
+ :must_pass=>
190
+ [{:test=>"kind_of? Numeric",
191
+ :explanation=>
192
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
193
+ :type=>:Float},
194
+ :omprimfac=>
195
+ {:should_include=>"true",
196
+ :description=>nil,
197
+ :help=>nil,
198
+ :code_name=>:omprimfac,
199
+ :must_pass=>
200
+ [{:test=>"kind_of? Numeric",
201
+ :explanation=>
202
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
203
+ :type=>:Float},
204
+ :boundary_option=>
205
+ {:should_include=>"true",
206
+ :description=>nil,
207
+ :help=>nil,
208
+ :code_name=>:boundary_option,
209
+ :must_pass=>
210
+ [{:test=>"kind_of? String",
211
+ :explanation=>"This variable must be a string."}],
212
+ :type=>:String},
213
+ :adiabatic_option=>
214
+ {:should_include=>"true",
215
+ :description=>nil,
216
+ :help=>nil,
217
+ :code_name=>:adiabatic_option,
218
+ :must_pass=>
219
+ [{:test=>"kind_of? String",
220
+ :explanation=>"This variable must be a string."}],
221
+ :type=>:String},
222
+ :g_exb=>
223
+ {:should_include=>"true",
224
+ :description=>nil,
225
+ :help=>nil,
226
+ :code_name=>:g_exb,
227
+ :must_pass=>
228
+ [{:test=>"kind_of? Numeric",
229
+ :explanation=>
230
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
231
+ :type=>:Float},
232
+ :nonad_zero=>
233
+ {:should_include=>"true",
234
+ :description=>nil,
235
+ :help=>nil,
236
+ :code_name=>:nonad_zero,
237
+ :must_pass=>
238
+ [{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
239
+ :explanation=>
240
+ "This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
241
+ :type=>:Fortran_Bool},
242
+ :field_option=>
243
+ {:should_include=>"true",
244
+ :description=>nil,
245
+ :help=>nil,
246
+ :code_name=>:field_option,
247
+ :must_pass=>
248
+ [{:test=>"kind_of? String",
249
+ :explanation=>"This variable must be a string."}],
250
+ :type=>:String},
251
+ :wstar_units=>
252
+ {:should_include=>"true",
253
+ :description=>nil,
254
+ :help=>nil,
255
+ :code_name=>:wstar_units,
256
+ :must_pass=>
257
+ [{:test=>"kind_of? String and FORTRAN_BOOLS.include? self",
258
+ :explanation=>
259
+ "This variable must be a fortran boolean. (In Ruby this is represented as a string: e.g. '.true.')"}],
260
+ :type=>:Fortran_Bool},
261
+ :fphi=>
262
+ {:should_include=>"true",
263
+ :description=>nil,
264
+ :help=>nil,
265
+ :code_name=>:fphi,
266
+ :must_pass=>
267
+ [{:test=>"kind_of? Numeric",
268
+ :explanation=>
269
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
270
+ :type=>:Float},
271
+ :fapar=>
272
+ {:should_include=>"true",
273
+ :description=>nil,
274
+ :help=>nil,
275
+ :code_name=>:fapar,
276
+ :must_pass=>
277
+ [{:test=>"kind_of? Numeric",
278
+ :explanation=>
279
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
280
+ :type=>:Float},
281
+ :faperp=>
282
+ {:should_include=>"true",
283
+ :description=>nil,
284
+ :help=>nil,
285
+ :code_name=>:faperp,
286
+ :must_pass=>
287
+ [{:test=>"kind_of? Numeric",
288
+ :explanation=>
289
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
290
+ :type=>:Float},
291
+ :delt=>
292
+ {:should_include=>"true",
293
+ :description=>nil,
294
+ :help=>nil,
295
+ :code_name=>:delt,
296
+ :must_pass=>
297
+ [{:test=>"kind_of? Numeric",
298
+ :explanation=>
299
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
300
+ :type=>:Float},
301
+ :nstep=>
302
+ {:should_include=>"true",
303
+ :description=>nil,
304
+ :help=>nil,
305
+ :code_name=>:nstep,
306
+ :must_pass=>
307
+ [{:test=>"kind_of? Integer",
308
+ :explanation=>"This variable must be an integer."}],
309
+ :type=>:Integer},
310
+ :delt_adj=>
311
+ {:should_include=>"true",
312
+ :description=>nil,
313
+ :help=>nil,
314
+ :code_name=>:delt_adj,
315
+ :must_pass=>
316
+ [{:test=>"kind_of? Numeric",
317
+ :explanation=>
318
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
319
+ :type=>:Float},
320
+ :delt_minimum=>
321
+ {:should_include=>"true",
322
+ :description=>nil,
323
+ :help=>nil,
324
+ :code_name=>:delt_minimum,
325
+ :must_pass=>
326
+ [{:test=>"kind_of? Numeric",
327
+ :explanation=>
328
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
329
+ :type=>:Float},
330
+ :layout=>
331
+ {:should_include=>"true",
332
+ :description=>nil,
333
+ :help=>nil,
334
+ :code_name=>:layout,
335
+ :must_pass=>
336
+ [{:test=>"kind_of? String",
337
+ :explanation=>"This variable must be a string."}],
338
+ :type=>:String},
339
+ :collision_model=>
340
+ {:should_include=>"true",
341
+ :description=>nil,
342
+ :help=>nil,
343
+ :code_name=>:collision_model,
344
+ :must_pass=>
345
+ [{:test=>"kind_of? String",
346
+ :explanation=>"This variable must be a string."}],
347
+ :type=>:String},
348
+ :nonlinear_mode=>
349
+ {:should_include=>"true",
350
+ :description=>nil,
351
+ :help=>nil,
352
+ :code_name=>:nonlinear_mode,
353
+ :must_pass=>
354
+ [{:test=>"kind_of? String",
355
+ :explanation=>"This variable must be a string."}],
356
+ :type=>:String},
357
+ :flow_mode=>
358
+ {:should_include=>"true",
359
+ :description=>nil,
360
+ :help=>nil,
361
+ :code_name=>:flow_mode,
362
+ :must_pass=>
363
+ [{:test=>"kind_of? String",
364
+ :explanation=>"This variable must be a string."}],
365
+ :type=>:String},
366
+ :cfl=>
367
+ {:should_include=>"true",
368
+ :description=>nil,
369
+ :help=>nil,
370
+ :code_name=>:cfl,
371
+ :must_pass=>
372
+ [{:test=>"kind_of? Numeric",
373
+ :explanation=>
374
+ "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
375
+ :type=>:Float},
376
+ :nspec=>
377
+ {:should_include=>"true",
378
+ :description=>nil,
379
+ :help=>nil,
380
+ :code_name=>:nspec,
381
+ :must_pass=>
382
+ [{:test=>"kind_of? Integer",
383
+ :explanation=>"This variable must be an integer."}],
384
+ :type=>:Integer}}
@@ -54,4 +54,25 @@
54
54
  :explanation=>
55
55
  "This variable must be a floating point number (an integer is also acceptable: it will be converted into a floating point number)."}],
56
56
  :type=>:Float,
57
- :autoscanned_defaults=>[1.0]}}}}
57
+ :autoscanned_defaults=>[1.0]}}},
58
+ :parameters=>{:description=>"", :should_include=>"true", :variables=>{}},
59
+ :kt_grids_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
60
+ :kt_grids_single_parameters=>
61
+ {:description=>"", :should_include=>"true", :variables=>{}},
62
+ :theta_grid_parameters=>
63
+ {:description=>"", :should_include=>"true", :variables=>{}},
64
+ :theta_grid_knobs=>
65
+ {:description=>"", :should_include=>"true", :variables=>{}},
66
+ :theta_grid_salpha_knobs=>
67
+ {:description=>"", :should_include=>"true", :variables=>{}},
68
+ :le_grids_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
69
+ :dist_fn_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
70
+ :fields_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
71
+ :knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
72
+ :reinit_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
73
+ :layouts_knobs=>{:description=>"", :should_include=>"true", :variables=>{}},
74
+ :collisions_knobs=>
75
+ {:description=>"", :should_include=>"true", :variables=>{}},
76
+ :nonlinear_terms_knobs=>
77
+ {:description=>"", :should_include=>"true", :variables=>{}},
78
+ :species_knobs=>{:description=>"", :should_include=>"true", :variables=>{}}}
@@ -21,7 +21,7 @@ $coderunner_command = "#{$ruby_command} -I lib/ lib/coderunner.rb"
21
21
  #raise "Couldn't build test program using #{string}" unless system string
22
22
  #end
23
23
 
24
- if true
24
+ if false
25
25
  class TestSubmission < Test::Unit::TestCase
26
26
  def setup
27
27
  string = $cpp_command + ' ../cubecalc.cc -o cubecalc'
@@ -363,7 +363,7 @@ end # if false/true
363
363
  #end
364
364
  #
365
365
  #
366
- ENV['CR_NON_INTERACTIVE'] = 'true'
366
+ #ENV['CR_NON_INTERACTIVE'] = 'true'
367
367
  class TestFortranNamelistC < Test::Unit::TestCase
368
368
  def setup
369
369
  end
@@ -372,6 +372,7 @@ class TestFortranNamelistC < Test::Unit::TestCase
372
372
  CodeRunner.setup_run_class('cubecalc', modlet: 'with_namelist')
373
373
  assert_equal(File.read('test/cubecalc_namelist.cc').size+1, CodeRunner::Cubecalc::WithNamelist.get_aggregated_source_code_text('test').size)
374
374
  CodeRunner::Cubecalc::WithNamelist.synchronise_variables('test')
375
+ CodeRunner::Cubecalc::WithNamelist.synchronise_variables_from_input_file('test/cubecalc.in')
375
376
  CodeRunner::Cubecalc::WithNamelist.update_defaults_from_source_code('test')
376
377
  end
377
378
  def test_mediawiki_write
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coderunner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.9
4
+ version: 0.13.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: