Class: GSL::Vector
- Inherits:
-
Object
- Object
- GSL::Vector
- Defined in:
- lib/gs2crmod/gsl_tools.rb,
lib/gs2crmod/astrogk/gsl_tools.rb
Instance Method Summary collapse
Instance Method Details
#from_box_order ⇒ Object
36 37 38 39 40 41 42 43 |
# File 'lib/gs2crmod/gsl_tools.rb', line 36 def from_box_order size = self.size if size < 3 return self.dup end v1, v2 = self.subvector(0, (size+2)/2), self.subvector((size+2)/2, (size-1)/2) return v2.connect(v1) end |
#pieces(no_pieces) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/gs2crmod/gsl_tools.rb', line 17 def pieces(no_pieces) ans = [] piece_sizes = [] for i in 0...no_pieces ans.push []; piece_sizes[i] = 0 end for j in 0...size piece_sizes[j % no_pieces] += 1 end # p ans, piece_sizes accum = 0 piece_sizes.each_with_index do |piece_size, piece| ans[piece] = self.subvector(accum, piece_size) accum += piece_size end return ans end |
#to_box_order ⇒ Object
44 45 46 47 48 49 50 51 |
# File 'lib/gs2crmod/gsl_tools.rb', line 44 def to_box_order size = self.size if size < 3 return self.dup end v1, v2 = self.subvector(0, (size-1)/2), self.subvector((size-1)/2, (size+2)/2) return v2.connect(v1) end |