Class: GitFit::Elevation::Train::Fitter
- Inherits:
-
Object
- Object
- GitFit::Elevation::Train::Fitter
- Defined in:
- lib/git_fit/elevation/train/fitter.rb
Instance Method Summary collapse
- #fit ⇒ Object
-
#initialize(samples) ⇒ Fitter
constructor
A new instance of Fitter.
- #write_msgpack(path) ⇒ Object
Constructor Details
#initialize(samples) ⇒ Fitter
Returns a new instance of Fitter.
10 11 12 |
# File 'lib/git_fit/elevation/train/fitter.rb', line 10 def initialize(samples) @samples = samples end |
Instance Method Details
#fit ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/git_fit/elevation/train/fitter.rb', line 14 def fit return nil if @samples.empty? ridge_h = fit_ridge_h norms = compute_norms pav_h = fit_pav_h lookup = build_lookup = { ridge_h: ridge_h, norms: norms, pav_h: pav_h, lookup: lookup, meta: , } end |
#write_msgpack(path) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/git_fit/elevation/train/fitter.rb', line 32 def write_msgpack(path) model = fit return false unless model dir = File.dirname(path) FileUtils.mkdir_p(dir) tmp = "#{path}.tmp" File.write(tmp, model.to_msgpack) File.rename(tmp, path) true end |