gs2crmod 0.11.28 → 0.11.29

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9fc845a7af975cc8918d33678677d6a9daf3b3fe
4
+ data.tar.gz: 5911a0644a0aae45ee429a1f9b3370b5692629b7
5
+ SHA512:
6
+ metadata.gz: 9942d199a0ad3c657e0e5b5b80e4564a86aa0b85c3b13e0fe47475602027796ec2bbb5c6dcc74d30238e8d874a19e372e17e971c76e88fbec55ba68ba1f73f93
7
+ data.tar.gz: 1d16ca5efe84d2cc3fa3b9f4da55201416f70a80ab428d94ad13554bbca2234084ad6fcc2f6eb44626553ce232fdbf365e50311527fea92ae0d13058a8e3ad58
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.11.28
1
+ 0.11.29
data/gs2crmod.gemspec CHANGED
@@ -2,14 +2,17 @@
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: gs2crmod 0.11.29 ruby lib
6
+ # stub: ext/extconf.rb
5
7
 
6
8
  Gem::Specification.new do |s|
7
9
  s.name = "gs2crmod"
8
- s.version = "0.11.28"
10
+ s.version = "0.11.29"
9
11
 
10
12
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
13
+ s.require_paths = ["lib"]
11
14
  s.authors = ["Edmund Highcock", "Ferdinand van Wyk"]
12
- s.date = "2014-03-17"
15
+ s.date = "2014-03-18"
13
16
  s.description = "GS2 is a gyrokinetic flux tube initial value turbulence code which can be used for fusion or astrophysical plasmas. CodeRunner is a framework for the automated running and analysis of large simulations. This module allows GS2 (and its sister code AstroGK) to harness the power of the CodeRunner framework."
14
17
  s.email = "edmundhighcock@sourceforge.net"
15
18
  s.extensions = ["ext/extconf.rb"]
@@ -82,13 +85,12 @@ Gem::Specification.new do |s|
82
85
  ]
83
86
  s.homepage = "http://gs2crmod.sourceforge.net"
84
87
  s.licenses = ["GSLv3"]
85
- s.require_paths = ["lib"]
86
88
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.1")
87
- s.rubygems_version = "1.8.11"
89
+ s.rubygems_version = "2.2.1"
88
90
  s.summary = "Module to allow CodeRunner to run and analyse the GS2 and AstroGK codes."
89
91
 
90
92
  if s.respond_to? :specification_version then
91
- s.specification_version = 3
93
+ s.specification_version = 4
92
94
 
93
95
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
94
96
  s.add_runtime_dependency(%q<coderunner>, [">= 0.14.10"])
data/lib/gs2crmod/gs2.rb CHANGED
@@ -524,7 +524,7 @@ def restart(new_run)
524
524
  #(rcp.results + rcp.gs2_run_info).each{|result| new_run.set(result, nil)}
525
525
  new_run.is_a_restart = true
526
526
  new_run.ginit_option = "many"
527
- new_run.delt_option = "default"
527
+ new_run.delt_option = "check_restart"
528
528
  #if Dir.entries(@directory).include? "nc"
529
529
  #old_restart_run_name = (@restart_run_name or Dir.entries(@directory + '/nc').grep(/\.nc/)[0].sub(/\.nc\.\d+$/, ''))
530
530
  #new_run.restart_file = File.expand_path("#@directory/nc/#{old_restart_run_name}.nc")
@@ -542,6 +542,23 @@ def restart(new_run)
542
542
  new_run.update_submission_parameters(new_run.parameter_hash.inspect, false) if new_run.parameter_hash
543
543
  new_run.naming_pars.delete(:restart_id)
544
544
  new_run.generate_run_name
545
+ eputs 'Copying Restart files', ''
546
+ FileUtils.makedirs('nc')
547
+ #old_dir = File.dirname(@restart_file)
548
+ new_run.restart_file = "#@run_name.nc" #+ File.basename(@restart_file) #.sub(/\.nc/, '')
549
+ new_run.restart_dir = "nc"
550
+ #files = Dir.entries(old_dir).grep(/\.nc(?:\.\d|_ene)/)
551
+ #files = Dir.entries(old_dir).grep(/^\.\d+$/) if files.size == 0
552
+ files = list_of_restart_files.map do |file|
553
+ @directory + "/" + file
554
+ end
555
+ files.each_with_index do |file , index|
556
+ eputs "\033[2A" # Terminal jargon - go back one line
557
+ eputs "#{index+1} out of #{files.size}"
558
+ num = file.scan(/(?:\.\d+|_ene)$/)[0]
559
+ #FileUtils.cp("#{old_dir}/#{file}", "nc/#@restart_file#{num}")
560
+ FileUtils.cp(file, new_run.directory + "/nc/#@restart_file#{num}")
561
+ end
545
562
  #@runner.submit(new_run)
546
563
  new_run
547
564
  end
@@ -778,25 +795,8 @@ end
778
795
  def generate_input_file(&block)
779
796
  raise CRFatal("No Input Module File Given or Module Corrupted") unless methods.include? (:input_file_text)
780
797
  run_namelist_backwards_compatibility
781
- if @restart_id
798
+ if @restart_id and not @is_a_restart # The second test checks that the restart function has not been called manually earlier (e.g. in Trinity)
782
799
  @runner.run_list[@restart_id].restart(self)
783
- eputs 'Copying Restart files', ''
784
- FileUtils.makedirs('nc')
785
- #old_dir = File.dirname(@restart_file)
786
- @restart_file = "#@restart_run_name.nc" #+ File.basename(@restart_file) #.sub(/\.nc/, '')
787
- @restart_dir = "nc"
788
- #files = Dir.entries(old_dir).grep(/\.nc(?:\.\d|_ene)/)
789
- #files = Dir.entries(old_dir).grep(/^\.\d+$/) if files.size == 0
790
- files = @runner.run_list[@restart_id].list_of_restart_files.map do |file|
791
- @runner.run_list[@restart_id].directory + "/" + file
792
- end
793
- files.each_with_index do |file , index|
794
- eputs "\033[2A" # Terminal jargon - go back one line
795
- eputs "#{index+1} out of #{files.size}"
796
- num = file.scan(/(?:\.\d+|_ene)$/)[0]
797
- #FileUtils.cp("#{old_dir}/#{file}", "nc/#@restart_file#{num}")
798
- FileUtils.cp(file, "nc/#@restart_file#{num}")
799
- end
800
800
  elsif @save_for_restart and @save_for_restart.fortran_true?
801
801
  @restart_dir = "nc"
802
802
  #if CODE_OPTIONS[:gs2] and CODE_OPTIONS[:gs2][:list]
@@ -36,7 +36,11 @@ if ENV['GS2_EXEC']
36
36
  FileUtils.rm_r(tfolder)
37
37
  end
38
38
  def test_submission
39
- CodeRunner.submit(C: 'gs2', X: ENV['GS2_EXEC'], D: 'test_gs2crmod', n: '1', Y: tfolder, p: '{write_moments: ".true.", write_line: ".true."}')
39
+ CodeRunner.submit(C: 'gs2', X: ENV['GS2_EXEC'], D: 'test_gs2crmod', n: '2', Y: tfolder, p: '{write_moments: ".true.", write_line: ".true.", save_for_restart: ".true.", nsave: 40}')
40
+ CodeRunner.submit(C: 'gs2', X: ENV['GS2_EXEC'], D: 'test_gs2crmod', n: '2', Y: tfolder, p: '{restart_id: 1}')
41
+ runs = CodeRunner.fetch_runner(Y: tfolder).run_list
42
+ assert_equal(50, runs[1].completed_timesteps)
43
+ assert_equal(runs[1].gsl_vector('phi2tot_over_time')[-1].round(4), runs[2].gsl_vector('phi2tot_over_time')[0].round(4))
40
44
  CodeRunner.status(Y: tfolder)
41
45
  end
42
46
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gs2crmod
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.28
5
- prerelease:
4
+ version: 0.11.29
6
5
  platform: ruby
7
6
  authors:
8
7
  - Edmund Highcock
@@ -10,85 +9,106 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-03-17 00:00:00.000000000 Z
12
+ date: 2014-03-18 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: coderunner
17
- requirement: &17007920 !ruby/object:Gem::Requirement
18
- none: false
16
+ requirement: !ruby/object:Gem::Requirement
19
17
  requirements:
20
- - - ! '>='
18
+ - - ">="
21
19
  - !ruby/object:Gem::Version
22
20
  version: 0.14.10
23
21
  type: :runtime
24
22
  prerelease: false
25
- version_requirements: *17007920
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: 0.14.10
26
28
  - !ruby/object:Gem::Dependency
27
29
  name: rubyhacks
28
- requirement: &16911540 !ruby/object:Gem::Requirement
29
- none: false
30
+ requirement: !ruby/object:Gem::Requirement
30
31
  requirements:
31
- - - ! '>='
32
+ - - ">="
32
33
  - !ruby/object:Gem::Version
33
34
  version: 0.1.2
34
35
  type: :runtime
35
36
  prerelease: false
36
- version_requirements: *16911540
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: 0.1.2
37
42
  - !ruby/object:Gem::Dependency
38
43
  name: ruby-netcdf-updated
39
- requirement: &16910940 !ruby/object:Gem::Requirement
40
- none: false
44
+ requirement: !ruby/object:Gem::Requirement
41
45
  requirements:
42
- - - ! '>='
46
+ - - ">="
43
47
  - !ruby/object:Gem::Version
44
48
  version: 0.6.6.1
45
49
  type: :runtime
46
50
  prerelease: false
47
- version_requirements: *16910940
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.6.6.1
48
56
  - !ruby/object:Gem::Dependency
49
57
  name: shoulda
50
- requirement: &16910320 !ruby/object:Gem::Requirement
51
- none: false
58
+ requirement: !ruby/object:Gem::Requirement
52
59
  requirements:
53
- - - ! '>='
60
+ - - ">="
54
61
  - !ruby/object:Gem::Version
55
62
  version: '0'
56
63
  type: :development
57
64
  prerelease: false
58
- version_requirements: *16910320
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
59
70
  - !ruby/object:Gem::Dependency
60
71
  name: rdoc
61
- requirement: &16909700 !ruby/object:Gem::Requirement
62
- none: false
72
+ requirement: !ruby/object:Gem::Requirement
63
73
  requirements:
64
- - - ~>
74
+ - - "~>"
65
75
  - !ruby/object:Gem::Version
66
76
  version: '3.12'
67
77
  type: :development
68
78
  prerelease: false
69
- version_requirements: *16909700
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - "~>"
82
+ - !ruby/object:Gem::Version
83
+ version: '3.12'
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: bundler
72
- requirement: &16909060 !ruby/object:Gem::Requirement
73
- none: false
86
+ requirement: !ruby/object:Gem::Requirement
74
87
  requirements:
75
- - - ! '>'
88
+ - - ">"
76
89
  - !ruby/object:Gem::Version
77
90
  version: 1.0.0
78
91
  type: :development
79
92
  prerelease: false
80
- version_requirements: *16909060
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">"
96
+ - !ruby/object:Gem::Version
97
+ version: 1.0.0
81
98
  - !ruby/object:Gem::Dependency
82
99
  name: jeweler
83
- requirement: &16907780 !ruby/object:Gem::Requirement
84
- none: false
100
+ requirement: !ruby/object:Gem::Requirement
85
101
  requirements:
86
- - - ! '>='
102
+ - - ">="
87
103
  - !ruby/object:Gem::Version
88
104
  version: 1.8.4
89
105
  type: :development
90
106
  prerelease: false
91
- version_requirements: *16907780
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: 1.8.4
92
112
  description: GS2 is a gyrokinetic flux tube initial value turbulence code which can
93
113
  be used for fusion or astrophysical plasmas. CodeRunner is a framework for the automated
94
114
  running and analysis of large simulations. This module allows GS2 (and its sister
@@ -102,7 +122,7 @@ extra_rdoc_files:
102
122
  - README.md
103
123
  - README.rdoc
104
124
  files:
105
- - .document
125
+ - ".document"
106
126
  - Gemfile
107
127
  - LICENSE.txt
108
128
  - README.md
@@ -165,26 +185,25 @@ files:
165
185
  homepage: http://gs2crmod.sourceforge.net
166
186
  licenses:
167
187
  - GSLv3
188
+ metadata: {}
168
189
  post_install_message:
169
190
  rdoc_options: []
170
191
  require_paths:
171
192
  - lib
172
193
  required_ruby_version: !ruby/object:Gem::Requirement
173
- none: false
174
194
  requirements:
175
- - - ! '>='
195
+ - - ">="
176
196
  - !ruby/object:Gem::Version
177
197
  version: 1.9.1
178
198
  required_rubygems_version: !ruby/object:Gem::Requirement
179
- none: false
180
199
  requirements:
181
- - - ! '>='
200
+ - - ">="
182
201
  - !ruby/object:Gem::Version
183
202
  version: '0'
184
203
  requirements: []
185
204
  rubyforge_project:
186
- rubygems_version: 1.8.11
205
+ rubygems_version: 2.2.1
187
206
  signing_key:
188
- specification_version: 3
207
+ specification_version: 4
189
208
  summary: Module to allow CodeRunner to run and analyse the GS2 and AstroGK codes.
190
209
  test_files: []