gs2crmod 0.11.35 → 0.11.36

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f661dc2bf1a80c9e9f7b18ab69761e427ef70c5f
4
+ data.tar.gz: a6b052352a440b0b0618e409d9d7ad82a2b41dff
5
+ SHA512:
6
+ metadata.gz: d81a214c19e7ffa023f532f6952e2dd3897922e65ddc83dcca56f0c7f6d3b4ec4a5e4c61d235faf19aed1e6d3d92cf5d305c3595cc27b3f0ef3e5a217e3cf63f
7
+ data.tar.gz: e8505a545ebb2080c7584444435669973d129a30bfb61a8c872c48fdf7d178ea917a1480a79872b4ddcaf96e0a2b755d17b05adf4eba42decb85c47c59fb6059
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.11.35
1
+ 0.11.36
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.36 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.35"
10
+ s.version = "0.11.36"
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-20"
15
+ s.date = "2014-03-27"
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
@@ -1245,6 +1245,11 @@ end
1245
1245
  raise 'Please specify correlation_type as perp/par/time/full'
1246
1246
  end
1247
1247
  end
1248
+
1249
+ def input_file_extension
1250
+ '.in'
1251
+ end
1252
+
1248
1253
  end # class GS2
1249
1254
  # For backwards compatibility
1250
1255
 
@@ -47,8 +47,21 @@ class NetcdfSmartReader
47
47
  end
48
48
  def read_variable(varname, options)
49
49
  #start = get_start(dims, options)
50
+ if varname == 's' # dummy response for species index
51
+ return NArray.float(@nspec||1)
52
+ end
50
53
  dims = dimensions(varname)
51
54
  narray = @file.var(varname).get('start'=>starts(dims, options), 'end'=>ends(dims, options))
55
+ if options[:modify_variable]
56
+ dimhash = dims.inject({}){|hash, dim|
57
+ opts = options.dup
58
+ opts[:modify_variable] = nil
59
+ dimval = read_variable(dimension_variable_name(dim.name), opts)
60
+ hash[dim.name] = dimval
61
+ hash
62
+ }
63
+ narray = options[:modify_variable].call(varname, narray, hash)
64
+ end
52
65
  shape = narray.shape
53
66
  shape.delete_if{|i| i==1}
54
67
  #p 'shape', shape; STDIN.gets
@@ -108,6 +121,8 @@ class NetcdfSmartReader
108
121
  'hermite'
109
122
  when 'p'
110
123
  'hankel'
124
+ when 's'
125
+ 's'
111
126
  else
112
127
  raise "Unknown dimension #{n}"
113
128
  end
@@ -177,4 +192,85 @@ def old_smart_graphkit(options)
177
192
  end
178
193
  end
179
194
 
195
+ def hyperviscosity_graphkit(options)
196
+ raise "This only works for spectrogk" unless spectrogk?
197
+ options[:modify_variable] = Proc.new do |varname, narray, dimhash|
198
+ #dimnames = dimhash.keys
199
+ ky = gsl_vector('ky')
200
+ kx = gsl_vector('kx').to_box_order
201
+ shape = narray.shape
202
+ if varname == "gnew2_ta"
203
+ shape = narray.shape
204
+ for ig in 0...shape[0]
205
+ for ik in 0...shape[1]
206
+ for it in 0...shape[2]
207
+ for il in 0...shape[3]
208
+ for ie in 0...shape[4]
209
+ for is in 0...shape[5]
210
+ narray[ig,ik,it,il,ie,is]*=(ky(ik)**2.0 + kx(it)**2.0)*@d_hypervsic
211
+ end
212
+ end
213
+ end
214
+ end
215
+ end
216
+ end
217
+ end
218
+ narray
219
+ end
220
+ options[:graphkit_name] = 'cdf_gnew2_ta'
221
+ kit = smart_graphkit(options)
222
+ end
223
+ def hypercoll_graphkit(options)
224
+ raise "This only works for spectrogk" unless spectrogk?
225
+ options[:modify_variable] = Proc.new do |varname, narray, dimhash|
226
+ #dimnames = dimhash.keys
227
+ if varname == "gnew2_ta"
228
+ shape = narray.shape
229
+ p 'shape',shape
230
+ for ig in 0...shape[0]
231
+ for ik in 0...shape[1]
232
+ for it in 0...shape[2]
233
+ for il in 0...shape[3]
234
+ for ie in 0...shape[4]
235
+ for is in 0...shape[5]
236
+ narray[ig,ik,it,il,ie,is]*=send(:nu_h_ + (is+1).to_sym)*(il/(shape[3]-1))**send(:nexp_h_ + (is+1).to_sym)
237
+ end
238
+ end
239
+ end
240
+ end
241
+ end
242
+ end
243
+ end
244
+ narray
245
+ end
246
+ options[:graphkit_name] = 'cdf_gnew2_ta'
247
+ kit = smart_graphkit(options)
248
+ end
249
+ def lenardbern_graphkit(options)
250
+ raise "This only works for spectrogk" unless spectrogk?
251
+ options[:modify_variable] = Proc.new do |varname, narray, dimhash|
252
+ #dimnames = dimhash.keys
253
+ if varname == "gnew2_ta"
254
+ shape = narray.shape
255
+ for ig in 0...shape[0]
256
+ for ik in 0...shape[1]
257
+ for it in 0...shape[2]
258
+ for il in 0...shape[3]
259
+ for ie in 0...shape[4]
260
+ for is in 0...shape[5]
261
+ narray[ik,it,il,ie,is]*=send(:nu_ + (is+1).to_sym)*il
262
+ end
263
+ end
264
+ end
265
+ end
266
+ end
267
+ end
268
+ end
269
+ narray
270
+ end
271
+ options[:graphkit_name] = 'cdf_gnew2_ta'
272
+ kit = smart_graphkit(options)
273
+ end
274
+
275
+
180
276
  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.35
5
- prerelease:
4
+ version: 0.11.36
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-20 00:00:00.000000000 Z
12
+ date: 2014-03-27 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: coderunner
17
- requirement: &10662240 !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: *10662240
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: &10281960 !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: *10281960
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: &10281020 !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: *10281020
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: &10280180 !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: *10280180
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: &10279640 !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: *10279640
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: &10279000 !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: *10279000
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: &10278300 !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: *10278300
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: []