eph_bpn 0.1.0

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.
@@ -0,0 +1,45 @@
1
+ module EphBpn
2
+ class Ephemeris
3
+ attr_reader :tdb, :jd, :jc, :eps
4
+ include Compute
5
+
6
+ def initialize(tdb)
7
+ @tdb = tdb # 太陽系力学時
8
+ @jd = gc2jd(@tdb) # TDB -> JD(ユリウス日)
9
+ @jc = jd2jc(@jd) # ユリウス世紀
10
+ @eps = compute_obliquity(@jc) # 平均黄道傾斜角
11
+ end
12
+
13
+ #=========================================================================
14
+ # Bias 適用
15
+ #
16
+ # @param: pos (適用前直角座標)
17
+ # @return: pos_b (適用後直角座標)
18
+ #=========================================================================
19
+ def apply_bias(pos)
20
+ #return rotate(r_generic, pos) # 一般的な理論
21
+ return rotate(r_fw_iau_06, pos) # IAU 2006 (Fukushima-Williams) 理論
22
+ end
23
+
24
+ #=========================================================================
25
+ # Precession(歳差) 適用
26
+ #
27
+ # @param: pos (適用前直角座標)
28
+ # @return: pos_p (適用後直角座標)
29
+ #=========================================================================
30
+ def apply_prec(pos)
31
+ return rotate(r_prec, pos)
32
+ end
33
+
34
+ #=========================================================================
35
+ # Nutation(章動) 適用
36
+ #
37
+ # @param: pos (適用前直角座標)
38
+ # @return: pos_n (適用後直角座標)
39
+ #=========================================================================
40
+ def apply_nut(pos)
41
+ return rotate(r_nut, pos)
42
+ end
43
+ end
44
+ end
45
+
@@ -0,0 +1,3 @@
1
+ module EphBpn
2
+ VERSION = "0.1.0"
3
+ end
data/lib/eph_bpn.rb ADDED
@@ -0,0 +1,15 @@
1
+ require 'date'
2
+ require "eph_bpn/version"
3
+ require "eph_bpn/argument"
4
+ require "eph_bpn/compute"
5
+ require "eph_bpn/consts"
6
+ require "eph_bpn/ephemeris"
7
+
8
+ module EphBpn
9
+ def self.new(arg)
10
+ arg ||= Time.now.strftime("%Y%m%d%H%M%S")
11
+ tdb = EphBpn::Argument.new(arg).get_tdb
12
+ return unless tdb
13
+ return EphBpn::Ephemeris.new(tdb)
14
+ end
15
+ end
metadata ADDED
@@ -0,0 +1,105 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: eph_bpn
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - komasaru
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2016-07-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.12'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.12'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ description: EphBpn is a ephemeris(Bias, Precession, Nutation) calculation tool.
56
+ email:
57
+ - masaru@mk-mode.com
58
+ executables:
59
+ - eph_bpn
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - ".gitignore"
64
+ - ".rspec"
65
+ - ".travis.yml"
66
+ - Gemfile
67
+ - Guardfile
68
+ - LICENSE.txt
69
+ - README.md
70
+ - Rakefile
71
+ - bin/console
72
+ - bin/setup
73
+ - eph_bpn.gemspec
74
+ - exe/eph_bpn
75
+ - lib/eph_bpn.rb
76
+ - lib/eph_bpn/argument.rb
77
+ - lib/eph_bpn/compute.rb
78
+ - lib/eph_bpn/consts.rb
79
+ - lib/eph_bpn/ephemeris.rb
80
+ - lib/eph_bpn/version.rb
81
+ homepage: https://github.com/komasaru/eph_bpn
82
+ licenses:
83
+ - MIT
84
+ metadata: {}
85
+ post_install_message:
86
+ rdoc_options: []
87
+ require_paths:
88
+ - lib
89
+ required_ruby_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ required_rubygems_version: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ requirements: []
100
+ rubyforge_project:
101
+ rubygems_version: 2.6.6
102
+ signing_key:
103
+ specification_version: 4
104
+ summary: Ephemeris(Bias, Precession, Nutation) calculation tool.
105
+ test_files: []