eph_bpn 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +16 -12
- data/exe/eph_bpn +14 -12
- data/lib/eph_bpn/compute.rb +11 -11
- data/lib/eph_bpn/ephemeris.rb +11 -2
- data/lib/eph_bpn/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 82ade37ba8efd0aa1c294324fddc96d79229a5cf
|
4
|
+
data.tar.gz: b4b1b3d03b1f41edc3f7596270100a1a88cc9f38
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4c885105a0264105eb4ce7143e65f6a76894ebda64c1666cd0d75298d2fc2bc0bd9ab03581be55937d5a2028c1d6dc291d83ecffdfb6de1e4f48915f0df9a08f
|
7
|
+
data.tar.gz: 9477203afe7ff658c6529fb2c00058cc553942cc746f8e0697c986754930aeb9b8c7ed771ef1b0a91cf44520762b77003135c026b3a99d2e615c92235f01e9db
|
data/README.md
CHANGED
@@ -24,6 +24,8 @@ Or install it yourself as:
|
|
24
24
|
|
25
25
|
### Instantiation
|
26
26
|
|
27
|
+
require 'eph_bpn'
|
28
|
+
|
27
29
|
e = EphBpn.new("20160723")
|
28
30
|
e = EphBpn.new("20160723123456")
|
29
31
|
e = EphBpn.new
|
@@ -33,18 +35,20 @@ Or install it yourself as:
|
|
33
35
|
|
34
36
|
### Calculation
|
35
37
|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
puts "
|
42
|
-
puts "
|
43
|
-
puts "
|
44
|
-
|
45
|
-
p
|
46
|
-
p
|
47
|
-
p
|
38
|
+
pos_g = [-0.50787065, 0.80728228, 0.34996714] # GCRS Coordinate
|
39
|
+
pos_b = e.apply_bias(pos_g) # Apply Bias
|
40
|
+
pos_p = e.apply_prec(pos_b) # Apply Precession
|
41
|
+
pos_n = e.apply_nut(pos_p) # Apply Nutation
|
42
|
+
pos_bp = e.apply_bias_prec(pos_g) # Apply Bias + Precession
|
43
|
+
puts "TDB: #{e.tdb}" #=> TDB: 2016-07-23 00:00:00 +0000
|
44
|
+
puts " JD: #{e.jd}" #=> JD: 2457592.5
|
45
|
+
puts " JC: #{e.jc}" #=> JC: 0.16557152635181382
|
46
|
+
puts "EPS: #{e.eps}" #=> EPS: 0.40905500411767176
|
47
|
+
p pos_g #=> [-0.50787065, 0.80728228, 0.34996714]
|
48
|
+
p pos_b #=> [-0.507870315369686, 0.8072824634004779, 0.34996720255697145]
|
49
|
+
p pos_p #=> [-0.5114180771311418, 0.8053955471104202, 0.34914730256926324]
|
50
|
+
p pos_n #=> [-0.5114180757959449, 0.8053955495119587, 0.34914729898526137]
|
51
|
+
p pos_bp #=> [-0.5114184398598124, 0.805395337986056, 0.3491472536550768]
|
48
52
|
|
49
53
|
## Development
|
50
54
|
|
data/exe/eph_bpn
CHANGED
@@ -3,16 +3,18 @@
|
|
3
3
|
require "eph_bpn"
|
4
4
|
|
5
5
|
e = EphBpn.new(ARGV[0])
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
puts "
|
12
|
-
puts "
|
13
|
-
puts "
|
14
|
-
|
15
|
-
p
|
16
|
-
p
|
17
|
-
p
|
6
|
+
pos_g = [-0.50787065, 0.80728228, 0.34996714] # GCRS Coordinate
|
7
|
+
pos_b = e.apply_bias(pos_g) # Apply Bias
|
8
|
+
pos_p = e.apply_prec(pos_b) # Apply Precession
|
9
|
+
pos_n = e.apply_nut(pos_p) # Apply Nutation
|
10
|
+
pos_bp = e.apply_bias_prec(pos_g) # Apply Bias + Precession
|
11
|
+
puts "TDB: #{e.tdb}" #=> TDB: 2016-07-23 00:00:00 +0000
|
12
|
+
puts " JD: #{e.jd}" #=> JD: 2457592.5
|
13
|
+
puts " JC: #{e.jc}" #=> JC: 0.16557152635181382
|
14
|
+
puts "EPS: #{e.eps}" #=> EPS: 0.40905500411767176
|
15
|
+
p pos_g #=> [-0.50787065, 0.80728228, 0.34996714]
|
16
|
+
p pos_b #=> [-0.507870315369686, 0.8072824634004779, 0.34996720255697145]
|
17
|
+
p pos_p #=> [-0.5114180771311418, 0.8053955471104202, 0.34914730256926324]
|
18
|
+
p pos_n #=> [-0.5114180757959449, 0.8053955495119587, 0.34914729898526137]
|
19
|
+
p pos_bp #=> [-0.5114184398598124, 0.805395337986056, 0.3491472536550768]
|
18
20
|
|
data/lib/eph_bpn/compute.rb
CHANGED
@@ -107,49 +107,49 @@ module EphBpn
|
|
107
107
|
# @param: <none>
|
108
108
|
# @return: r (回転行列)
|
109
109
|
#=========================================================================
|
110
|
-
def
|
111
|
-
r = r_x( -5.1 *
|
112
|
-
r = r_y(-17.3 *
|
113
|
-
r = r_z( 78.0 *
|
110
|
+
def r_bias
|
111
|
+
r = r_x( -5.1 * Const::MAS2R)
|
112
|
+
r = r_y(-17.3 * Const::MAS2R, r)
|
113
|
+
r = r_z( 78.0 * Const::MAS2R, r)
|
114
114
|
return r
|
115
115
|
rescue => e
|
116
116
|
raise
|
117
117
|
end
|
118
118
|
|
119
119
|
#=========================================================================
|
120
|
-
# Bias
|
120
|
+
# Bias + Precession 変換行列
|
121
|
+
#
|
122
|
+
# * IAU 2006 (Fukushima-Williams 4-angle formulation) 理論
|
121
123
|
#
|
122
124
|
# @param: <none>
|
123
125
|
# @return: r (変換行列)
|
124
126
|
#=========================================================================
|
125
127
|
def r_fw_iau_06
|
126
|
-
jc = jd2jc(2451545.0)
|
127
|
-
eps = compute_obliquity(jc)
|
128
128
|
gamma = (-0.052928 + \
|
129
129
|
(10.556378 + \
|
130
130
|
( 0.4932044 + \
|
131
131
|
(-0.00031238 + \
|
132
132
|
(-0.000002788 + \
|
133
133
|
( 0.0000000260) \
|
134
|
-
* jc) * jc) * jc) * jc) * jc) * Const::AS2R
|
134
|
+
* @jc) * @jc) * @jc) * @jc) * @jc) * Const::AS2R
|
135
135
|
phi = (84381.412819 + \
|
136
136
|
( -46.811016 + \
|
137
137
|
( 0.0511268 + \
|
138
138
|
( 0.00053289 + \
|
139
139
|
( -0.000000440 + \
|
140
140
|
( -0.0000000176) \
|
141
|
-
* jc) * jc) * jc) * jc) * jc) * Const::AS2R
|
141
|
+
* @jc) * @jc) * @jc) * @jc) * @jc) * Const::AS2R
|
142
142
|
psi = ( -0.041775 + \
|
143
143
|
(5038.481484 + \
|
144
144
|
( 1.5584175 + \
|
145
145
|
( -0.00018522 + \
|
146
146
|
( -0.000026452 + \
|
147
147
|
( -0.0000000148) \
|
148
|
-
* jc) * jc) * jc) * jc) * jc) * Const::AS2R
|
148
|
+
* @jc) * @jc) * @jc) * @jc) * @jc) * Const::AS2R
|
149
149
|
r = r_z(gamma)
|
150
150
|
r = r_x(phi, r)
|
151
151
|
r = r_z(-psi, r)
|
152
|
-
r = r_x(
|
152
|
+
r = r_x(-@eps, r)
|
153
153
|
return r
|
154
154
|
rescue => e
|
155
155
|
raise
|
data/lib/eph_bpn/ephemeris.rb
CHANGED
@@ -17,8 +17,7 @@ module EphBpn
|
|
17
17
|
# @return: pos_b (適用後直角座標)
|
18
18
|
#=========================================================================
|
19
19
|
def apply_bias(pos)
|
20
|
-
|
21
|
-
return rotate(r_fw_iau_06, pos) # IAU 2006 (Fukushima-Williams) 理論
|
20
|
+
return rotate(r_bias, pos)
|
22
21
|
end
|
23
22
|
|
24
23
|
#=========================================================================
|
@@ -31,6 +30,16 @@ module EphBpn
|
|
31
30
|
return rotate(r_prec, pos)
|
32
31
|
end
|
33
32
|
|
33
|
+
#=========================================================================
|
34
|
+
# Bias + Precession(歳差) 適用
|
35
|
+
#
|
36
|
+
# @param: pos (適用前直角座標)
|
37
|
+
# @return: pos_p (適用後直角座標)
|
38
|
+
#=========================================================================
|
39
|
+
def apply_bias_prec(pos)
|
40
|
+
return rotate(r_fw_iau_06, pos) # IAU 2006 (Fukushima-Williams) 理論
|
41
|
+
end
|
42
|
+
|
34
43
|
#=========================================================================
|
35
44
|
# Nutation(章動) 適用
|
36
45
|
#
|
data/lib/eph_bpn/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eph_bpn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- komasaru
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|