equationoftime 4.1.5 → 4.1.6
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 +13 -5
 - data/.ruby-version +1 -1
 - data/Gemfile +8 -2
 - data/Gemfile.lock +18 -18
 - data/Manifest.txt +5 -1
 - data/README.rdoc +40 -17
 - data/Rakefile +3 -3
 - data/examples/{Equation_of_Time.jpg → Equation_of_Time.png} +0 -0
 - data/examples/my_lst.rb +3 -1
 - data/ext/eot/ceot.c +31 -6
 - data/ext/eot/ceot.h +4 -0
 - data/ext/eot/eot.c +19 -0
 - data/lib/eot.rb +12 -10
 - data/lib/eot/angle_displays.rb +3 -20
 - data/lib/eot/angles.rb +39 -19
 - data/lib/eot/constants.rb +2 -1
 - data/lib/eot/deltas.rb +1 -0
 - data/lib/eot/geo_lat_lng_smt.rb +1 -2
 - data/lib/eot/init.rb +41 -35
 - data/lib/eot/time_displays.rb +21 -4
 - data/lib/eot/times.rb +37 -65
 - data/lib/eot/trigonometric.rb +7 -7
 - data/lib/eot/utilities.rb +15 -2
 - data/lib/eot/version.rb +3 -1
 - data/run_tests_eclipse.rb +1 -0
 - data/test/eot/aliased_angles_spec.rb +45 -43
 - data/test/eot/aliased_displays_spec.rb +10 -9
 - data/test/eot/aliased_utilities_spec.rb +15 -13
 - data/test/eot/angles_spec.rb +130 -127
 - data/test/eot/constants_spec.rb +2 -1
 - data/test/eot/displays_spec.rb +54 -51
 - data/test/eot/geo_spec.rb +5 -5
 - data/test/eot/init_spec.rb +4 -4
 - data/test/eot/times_spec.rb +127 -65
 - metadata +42 -59
 - checksums.yaml.gz.sig +0 -0
 - data.tar.gz.sig +0 -1
 - metadata.gz.sig +0 -0
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
      
 2 
     | 
    
         
            +
            !binary "U0hBMQ==":
         
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: !binary |-
         
     | 
| 
      
 4 
     | 
    
         
            +
                YWNhMGU3ZGYzZWY3YjAxMzNmMTI5ZjY5YWQxY2VjNjRjNTc5ODRlMw==
         
     | 
| 
      
 5 
     | 
    
         
            +
              data.tar.gz: !binary |-
         
     | 
| 
      
 6 
     | 
    
         
            +
                ZTIwMDE4ODE3NGYyNmMyZjFkOGIzMGFkZTY0MGRkNGUwMmUyY2IwMw==
         
     | 
| 
       5 
7 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
      
 8 
     | 
    
         
            +
              metadata.gz: !binary |-
         
     | 
| 
      
 9 
     | 
    
         
            +
                YjZjMjU5NjBkMjcyMzRiYTcwM2FmYmI5ZGYwYjY2MzA0MmI3MjVjN2FhYzU3
         
     | 
| 
      
 10 
     | 
    
         
            +
                NzM2MjFjN2M3ZGNhNGQ2YWEwZmVlZTBiYzU3NTgwZDJhODg5NzA5ODUwZDhm
         
     | 
| 
      
 11 
     | 
    
         
            +
                Yzc4MjQzMDZmNWYzMGMzZWUwMmY4MjgyZjdjYmE2OWQ0OGY2MDc=
         
     | 
| 
      
 12 
     | 
    
         
            +
              data.tar.gz: !binary |-
         
     | 
| 
      
 13 
     | 
    
         
            +
                MjYxODJkODNhYzBjYjMyYjk2YzU2NzE3MzNhNzQ4NWY3NTc2Njk3NzFlN2Iz
         
     | 
| 
      
 14 
     | 
    
         
            +
                ZTZjZjZiNDY0MjNmYmExZTE0ZDg3OGRiNjcwYzA4YmEzOGVhNDRhMjFlZmU1
         
     | 
| 
      
 15 
     | 
    
         
            +
                MzYwYzQxMTA3MTlhNTM4ZGU2OGY4NTZiNDE0OWJhYzQzYWU5ODg=
         
     | 
    
        data/.ruby-version
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
      
 1 
     | 
    
         
            +
            1.9.3
         
     | 
    
        data/Gemfile
    CHANGED
    
    | 
         @@ -1,9 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            source 'https://rubygems.org'
         
     | 
| 
       2 
     | 
    
         
            -
            ruby ' 
     | 
| 
      
 2 
     | 
    
         
            +
            ruby '1.9.3'
         
     | 
| 
      
 3 
     | 
    
         
            +
            # ruby '2.0.0'
         
     | 
| 
      
 4 
     | 
    
         
            +
            # ruby '2.1.0'
         
     | 
| 
      
 5 
     | 
    
         
            +
            # ruby '2.1.1'
         
     | 
| 
      
 6 
     | 
    
         
            +
            # ruby '2.1.2'
         
     | 
| 
      
 7 
     | 
    
         
            +
            # ruby '2.1.3'
         
     | 
| 
      
 8 
     | 
    
         
            +
            # ruby '2.1.4'
         
     | 
| 
       3 
9 
     | 
    
         | 
| 
       4 
10 
     | 
    
         
             
            gemspec
         
     | 
| 
       5 
11 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            group :development do
         
     | 
| 
      
 12 
     | 
    
         
            +
            group :development, :test do
         
     | 
| 
       7 
13 
     | 
    
         
             
              gem 'rubocop'
         
     | 
| 
       8 
14 
     | 
    
         
             
              gem 'hoe'
         
     | 
| 
       9 
15 
     | 
    
         
             
              gem 'rake'
         
     | 
    
        data/Gemfile.lock
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            PATH
         
     | 
| 
       2 
2 
     | 
    
         
             
              remote: .
         
     | 
| 
       3 
3 
     | 
    
         
             
              specs:
         
     | 
| 
       4 
     | 
    
         
            -
                equationoftime (4.1. 
     | 
| 
      
 4 
     | 
    
         
            +
                equationoftime (4.1.6)
         
     | 
| 
       5 
5 
     | 
    
         
             
                  addressable (~> 2.3.6)
         
     | 
| 
       6 
6 
     | 
    
         
             
                  celes (~> 0.0.1)
         
     | 
| 
       7 
7 
     | 
    
         
             
                  rest-client
         
     | 
| 
         @@ -9,7 +9,7 @@ PATH 
     | 
|
| 
       9 
9 
     | 
    
         
             
            GEM
         
     | 
| 
       10 
10 
     | 
    
         
             
              remote: https://rubygems.org/
         
     | 
| 
       11 
11 
     | 
    
         
             
              specs:
         
     | 
| 
       12 
     | 
    
         
            -
                ZenTest (4. 
     | 
| 
      
 12 
     | 
    
         
            +
                ZenTest (4.11.0)
         
     | 
| 
       13 
13 
     | 
    
         
             
                addressable (2.3.6)
         
     | 
| 
       14 
14 
     | 
    
         
             
                ast (2.0.0)
         
     | 
| 
       15 
15 
     | 
    
         
             
                astrolabe (1.3.0)
         
     | 
| 
         @@ -19,9 +19,9 @@ GEM 
     | 
|
| 
       19 
19 
     | 
    
         
             
                  timers (~> 4.0.0)
         
     | 
| 
       20 
20 
     | 
    
         
             
                coderay (1.1.0)
         
     | 
| 
       21 
21 
     | 
    
         
             
                diff-lcs (1.2.5)
         
     | 
| 
       22 
     | 
    
         
            -
                ffi (1.9. 
     | 
| 
      
 22 
     | 
    
         
            +
                ffi (1.9.6)
         
     | 
| 
       23 
23 
     | 
    
         
             
                formatador (0.2.5)
         
     | 
| 
       24 
     | 
    
         
            -
                guard (2. 
     | 
| 
      
 24 
     | 
    
         
            +
                guard (2.8.1)
         
     | 
| 
       25 
25 
     | 
    
         
             
                  formatador (>= 0.2.4)
         
     | 
| 
       26 
26 
     | 
    
         
             
                  listen (~> 2.7)
         
     | 
| 
       27 
27 
     | 
    
         
             
                  lumberjack (~> 1.0)
         
     | 
| 
         @@ -31,19 +31,19 @@ GEM 
     | 
|
| 
       31 
31 
     | 
    
         
             
                  guard (~> 2.0)
         
     | 
| 
       32 
32 
     | 
    
         
             
                  minitest (>= 3.0)
         
     | 
| 
       33 
33 
     | 
    
         
             
                hitimes (1.2.2)
         
     | 
| 
       34 
     | 
    
         
            -
                hoe (3. 
     | 
| 
      
 34 
     | 
    
         
            +
                hoe (3.13.0)
         
     | 
| 
       35 
35 
     | 
    
         
             
                  rake (>= 0.8, < 11.0)
         
     | 
| 
       36 
36 
     | 
    
         
             
                json (1.8.1)
         
     | 
| 
       37 
     | 
    
         
            -
                listen (2.7. 
     | 
| 
      
 37 
     | 
    
         
            +
                listen (2.7.11)
         
     | 
| 
       38 
38 
     | 
    
         
             
                  celluloid (>= 0.15.2)
         
     | 
| 
       39 
39 
     | 
    
         
             
                  rb-fsevent (>= 0.9.3)
         
     | 
| 
       40 
40 
     | 
    
         
             
                  rb-inotify (>= 0.9)
         
     | 
| 
       41 
41 
     | 
    
         
             
                lumberjack (1.0.9)
         
     | 
| 
       42 
42 
     | 
    
         
             
                method_source (0.8.2)
         
     | 
| 
       43 
     | 
    
         
            -
                mime-types (2.3)
         
     | 
| 
       44 
     | 
    
         
            -
                minitest (5.4. 
     | 
| 
       45 
     | 
    
         
            -
                netrc (0. 
     | 
| 
       46 
     | 
    
         
            -
                parser (2.2.0.pre. 
     | 
| 
      
 43 
     | 
    
         
            +
                mime-types (2.4.3)
         
     | 
| 
      
 44 
     | 
    
         
            +
                minitest (5.4.2)
         
     | 
| 
      
 45 
     | 
    
         
            +
                netrc (0.8.0)
         
     | 
| 
      
 46 
     | 
    
         
            +
                parser (2.2.0.pre.7)
         
     | 
| 
       47 
47 
     | 
    
         
             
                  ast (>= 1.1, < 3.0)
         
     | 
| 
       48 
48 
     | 
    
         
             
                  slop (~> 3.4, >= 3.4.5)
         
     | 
| 
       49 
49 
     | 
    
         
             
                powerpack (0.0.9)
         
     | 
| 
         @@ -67,26 +67,26 @@ GEM 
     | 
|
| 
       67 
67 
     | 
    
         
             
                  rspec-core (~> 3.1.0)
         
     | 
| 
       68 
68 
     | 
    
         
             
                  rspec-expectations (~> 3.1.0)
         
     | 
| 
       69 
69 
     | 
    
         
             
                  rspec-mocks (~> 3.1.0)
         
     | 
| 
       70 
     | 
    
         
            -
                rspec-core (3.1. 
     | 
| 
      
 70 
     | 
    
         
            +
                rspec-core (3.1.7)
         
     | 
| 
       71 
71 
     | 
    
         
             
                  rspec-support (~> 3.1.0)
         
     | 
| 
       72 
     | 
    
         
            -
                rspec-expectations (3.1. 
     | 
| 
      
 72 
     | 
    
         
            +
                rspec-expectations (3.1.2)
         
     | 
| 
       73 
73 
     | 
    
         
             
                  diff-lcs (>= 1.2.0, < 2.0)
         
     | 
| 
       74 
74 
     | 
    
         
             
                  rspec-support (~> 3.1.0)
         
     | 
| 
       75 
     | 
    
         
            -
                rspec-mocks (3.1. 
     | 
| 
      
 75 
     | 
    
         
            +
                rspec-mocks (3.1.3)
         
     | 
| 
       76 
76 
     | 
    
         
             
                  rspec-support (~> 3.1.0)
         
     | 
| 
       77 
     | 
    
         
            -
                rspec-support (3.1. 
     | 
| 
       78 
     | 
    
         
            -
                rubocop (0. 
     | 
| 
      
 77 
     | 
    
         
            +
                rspec-support (3.1.2)
         
     | 
| 
      
 78 
     | 
    
         
            +
                rubocop (0.27.0)
         
     | 
| 
       79 
79 
     | 
    
         
             
                  astrolabe (~> 1.3)
         
     | 
| 
       80 
     | 
    
         
            -
                  parser (>= 2.2.0.pre. 
     | 
| 
      
 80 
     | 
    
         
            +
                  parser (>= 2.2.0.pre.6, < 3.0)
         
     | 
| 
       81 
81 
     | 
    
         
             
                  powerpack (~> 0.0.6)
         
     | 
| 
       82 
82 
     | 
    
         
             
                  rainbow (>= 1.99.1, < 3.0)
         
     | 
| 
       83 
83 
     | 
    
         
             
                  ruby-progressbar (~> 1.4)
         
     | 
| 
       84 
     | 
    
         
            -
                ruby-progressbar (1. 
     | 
| 
      
 84 
     | 
    
         
            +
                ruby-progressbar (1.7.0)
         
     | 
| 
       85 
85 
     | 
    
         
             
                slop (3.6.0)
         
     | 
| 
       86 
86 
     | 
    
         
             
                thor (0.19.1)
         
     | 
| 
       87 
87 
     | 
    
         
             
                timers (4.0.1)
         
     | 
| 
       88 
88 
     | 
    
         
             
                  hitimes
         
     | 
| 
       89 
     | 
    
         
            -
                yard (0.8.7. 
     | 
| 
      
 89 
     | 
    
         
            +
                yard (0.8.7.6)
         
     | 
| 
       90 
90 
     | 
    
         | 
| 
       91 
91 
     | 
    
         
             
            PLATFORMS
         
     | 
| 
       92 
92 
     | 
    
         
             
              ruby
         
     | 
    
        data/Manifest.txt
    CHANGED
    
    | 
         @@ -1,9 +1,12 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            .autotest
         
     | 
| 
       2 
2 
     | 
    
         
             
            .buildpath
         
     | 
| 
      
 3 
     | 
    
         
            +
            .git
         
     | 
| 
       3 
4 
     | 
    
         
             
            .minitest.rb
         
     | 
| 
       4 
5 
     | 
    
         
             
            .project
         
     | 
| 
      
 6 
     | 
    
         
            +
            .settings
         
     | 
| 
       5 
7 
     | 
    
         
             
            .rspec
         
     | 
| 
       6 
8 
     | 
    
         
             
            .ruby-version
         
     | 
| 
      
 9 
     | 
    
         
            +
            .yardoc
         
     | 
| 
       7 
10 
     | 
    
         
             
            CHANGELOG.rdoc
         
     | 
| 
       8 
11 
     | 
    
         
             
            Gemfile
         
     | 
| 
       9 
12 
     | 
    
         
             
            Gemfile.lock
         
     | 
| 
         @@ -14,7 +17,7 @@ Manifest.txt 
     | 
|
| 
       14 
17 
     | 
    
         
             
            README.rdoc
         
     | 
| 
       15 
18 
     | 
    
         
             
            Rakefile
         
     | 
| 
       16 
19 
     | 
    
         
             
            equationoftime.gemspec
         
     | 
| 
       17 
     | 
    
         
            -
            examples/Equation_of_Time. 
     | 
| 
      
 20 
     | 
    
         
            +
            examples/Equation_of_Time.png
         
     | 
| 
       18 
21 
     | 
    
         
             
            examples/my_lst.rb
         
     | 
| 
       19 
22 
     | 
    
         
             
            examples/use_addr.rb
         
     | 
| 
       20 
23 
     | 
    
         
             
            examples/use_ajd.rb
         
     | 
| 
         @@ -44,5 +47,6 @@ test/eot/displays_spec.rb 
     | 
|
| 
       44 
47 
     | 
    
         
             
            test/eot/geo_spec.rb
         
     | 
| 
       45 
48 
     | 
    
         
             
            test/eot/init_spec.rb
         
     | 
| 
       46 
49 
     | 
    
         
             
            test/eot/times_spec.rb
         
     | 
| 
      
 50 
     | 
    
         
            +
            run_tests_eclipse.rb
         
     | 
| 
       47 
51 
     | 
    
         
             
            wiki.md
         
     | 
| 
       48 
52 
     | 
    
         
             
            wiki2.md
         
     | 
    
        data/README.rdoc
    CHANGED
    
    | 
         @@ -2,7 +2,7 @@ 
     | 
|
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            Home    :: http://equationoftime.herokuapp.com/
         
     | 
| 
       4 
4 
     | 
    
         
             
            Code    :: https://github.com/DouglasAllen/equationoftime
         
     | 
| 
       5 
     | 
    
         
            -
            RDoc    :: http://rubydoc.info/gems/equationoftime/4.1. 
     | 
| 
      
 5 
     | 
    
         
            +
            RDoc    :: http://rubydoc.info/gems/equationoftime/4.1.5/frames
         
     | 
| 
       6 
6 
     | 
    
         
             
            Issues  :: https://github.com/DouglasAllen/equationoftime/issues
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         | 
| 
         @@ -22,36 +22,59 @@ Lots of examples to play with for learning about Eot. 
     | 
|
| 
       22 
22 
     | 
    
         
             
                    require 'eot'
         
     | 
| 
       23 
23 
     | 
    
         
             
                    eot = Eot.new
         
     | 
| 
       24 
24 
     | 
    
         
             
                    eot.string_eot          # todays eot
         
     | 
| 
       25 
     | 
    
         
            -
                    eot. 
     | 
| 
       26 
     | 
    
         
            -
                     
     | 
| 
      
 25 
     | 
    
         
            +
                    eot.ajd                 # was initialized to noon today ei. jd
         
     | 
| 
      
 26 
     | 
    
         
            +
                    # Try the real AJD
         
     | 
| 
      
 27 
     | 
    
         
            +
                    eot.ajd = DateTime.now.to_time.utc.to_datetime.ajd.to_f
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                    eot.string_eot          # nothing changes so...
         
     | 
| 
      
 30 
     | 
    
         
            +
                    eot.ma_ta_set           # recalculate ma and ta after initialization
         
     | 
| 
      
 31 
     | 
    
         
            +
                    eot.string_eot          # should be different than before
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                    # check and set a new address                        
         
     | 
| 
       27 
34 
     | 
    
         
             
                    geo = GeoLatLng.new
         
     | 
| 
       28 
     | 
    
         
            -
                    geo.addr 
     | 
| 
       29 
     | 
    
         
            -
                    geo. 
     | 
| 
       30 
     | 
    
         
            -
                     
     | 
| 
       31 
     | 
    
         
            -
                    eot. 
     | 
| 
       32 
     | 
    
         
            -
                    eot. 
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
                     
     | 
| 
      
 35 
     | 
    
         
            +
                    geo.addr
         
     | 
| 
      
 36 
     | 
    
         
            +
                    geo.addr = "houston, tx"     # set new location
         
     | 
| 
      
 37 
     | 
    
         
            +
                    geo.set_coordinates          # set new coordinates
         
     | 
| 
      
 38 
     | 
    
         
            +
                    eot.latitude = geo.lat       # set the Eot class attributes
         
     | 
| 
      
 39 
     | 
    
         
            +
                    eot.longitude = geo.lng
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                    # Be shure you have the date set right
         
     | 
| 
      
 42 
     | 
    
         
            +
                    eot.ajd = DateTime.new(2014,11,07).to_time.utc.to_datetime.jd.to_f
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
                    eot.ma_ta_set           # recalculate ma and ta after initialization
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                    eot.sunrise_jd          # the dates sunrise as a jd
         
     | 
| 
      
 47 
     | 
    
         
            +
                    eot.sunset_jd           # the dates sunset as a jd
         
     | 
| 
      
 48 
     | 
    
         
            +
                    eot.sunrise_dt          # the dates sunrise as DateTime
         
     | 
| 
      
 49 
     | 
    
         
            +
                    eot.sunset_dt           # the dates sunset as a DateTime
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
      
 52 
     | 
    
         
            +
                    eot.ajd += 1            # the days after times can be read
         
     | 
| 
      
 53 
     | 
    
         
            +
                    eot.ma_ta_set           # recalculate ma and ta after initialization 
         
     | 
| 
       35 
54 
     | 
    
         
             
                    eot.ajd = 2451545       # ajd set to 2001-01-01 12:00 
         
     | 
| 
       36 
55 
     | 
    
         | 
| 
       37 
56 
     | 
    
         | 
| 
      
 57 
     | 
    
         
            +
            == Gem patch:
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
              $ gem install eot
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
            After realizing this name was available I decided to use it.
         
     | 
| 
      
 62 
     | 
    
         
            +
            It installs the needed requirements as for some reason
         
     | 
| 
      
 63 
     | 
    
         
            +
            gem install equationoftime doesn't always. Hoe hoe hoe!
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
       38 
65 
     | 
    
         
             
            == REQUIREMENTS:
         
     | 
| 
       39 
66 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
      
 67 
     | 
    
         
            +
              $ bundle install
         
     | 
| 
       41 
68 
     | 
    
         | 
| 
       42 
69 
     | 
    
         
             
            == INSTALL:
         
     | 
| 
       43 
70 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
      
 71 
     | 
    
         
            +
              $ bundle exec rake install
         
     | 
| 
       45 
72 
     | 
    
         | 
| 
       46 
73 
     | 
    
         
             
            == DEVELOPERS:
         
     | 
| 
       47 
74 
     | 
    
         | 
| 
       48 
75 
     | 
    
         
             
            After checking out the source, run:
         
     | 
| 
       49 
76 
     | 
    
         | 
| 
       50 
     | 
    
         
            -
              $ rake newb
         
     | 
| 
       51 
     | 
    
         
            -
             
     | 
| 
       52 
     | 
    
         
            -
            Or use patch to install as gem
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
              $ gem install eot
         
     | 
| 
      
 77 
     | 
    
         
            +
              $ bundle exec rake newb
         
     | 
| 
       55 
78 
     | 
    
         | 
| 
       56 
79 
     | 
    
         
             
            This task will install any missing dependencies, run the tests/specs,
         
     | 
| 
       57 
80 
     | 
    
         
             
            and generate the RDoc.
         
     | 
    
        data/Rakefile
    CHANGED
    
    | 
         @@ -7,11 +7,11 @@ require 'rake/testtask' 
     | 
|
| 
       7 
7 
     | 
    
         
             
            require 'rdoc/task'
         
     | 
| 
       8 
8 
     | 
    
         
             
            require 'rspec/core/rake_task'
         
     | 
| 
       9 
9 
     | 
    
         
             
            require 'yard'
         
     | 
| 
       10 
     | 
    
         
            -
            # rake release VERSION=4.1. 
     | 
| 
      
 10 
     | 
    
         
            +
            # rake release VERSION=4.1.6
         
     | 
| 
       11 
11 
     | 
    
         
             
            Hoe.spec 'equationoftime' do
         
     | 
| 
       12 
12 
     | 
    
         
             
              developer('Douglas Allen', 'kb9agt@gmail.com')
         
     | 
| 
       13 
13 
     | 
    
         
             
              license('MIT')
         
     | 
| 
       14 
     | 
    
         
            -
              self.version = '4.1. 
     | 
| 
      
 14 
     | 
    
         
            +
              #self.version = '4.1.6'
         
     | 
| 
       15 
15 
     | 
    
         
             
              self.readme_file   = 'README.rdoc'
         
     | 
| 
       16 
16 
     | 
    
         
             
              self.history_file  = 'CHANGELOG.rdoc'
         
     | 
| 
       17 
17 
     | 
    
         
             
              self.extra_rdoc_files  = FileList['*.rdoc']
         
     | 
| 
         @@ -49,7 +49,7 @@ Rake::RDocTask.new(:rdox) do |rd| 
     | 
|
| 
       49 
49 
     | 
    
         | 
| 
       50 
50 
     | 
    
         
             
              rd.rdoc_dir = 'rdocs'
         
     | 
| 
       51 
51 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
              rd.rdoc_files.include 'lib/**/*.rb', 'README. 
     | 
| 
      
 52 
     | 
    
         
            +
              rd.rdoc_files.include 'lib/**/*.rb', 'README.rdoc', 'wiki.md'
         
     | 
| 
       53 
53 
     | 
    
         | 
| 
       54 
54 
     | 
    
         
             
              rd.options << '--line-numbers'
         
     | 
| 
       55 
55 
     | 
    
         | 
| 
         
            File without changes
         
     | 
    
        data/examples/my_lst.rb
    CHANGED
    
    | 
         @@ -3,7 +3,9 @@ eot = Eot.new 
     | 
|
| 
       3 
3 
     | 
    
         
             
            puts 'My Local Apparent Sidereal Time'
         
     | 
| 
       4 
4 
     | 
    
         
             
            loop do
         
     | 
| 
       5 
5 
     | 
    
         
             
              eot.ajd = DateTime.now.to_time.utc.to_datetime.ajd
         
     | 
| 
       6 
     | 
    
         
            -
               
     | 
| 
      
 6 
     | 
    
         
            +
              gst = eot.string_deg_to_time(eot.tl_aries - -88.75 * Eot::D2R)
         
     | 
| 
      
 7 
     | 
    
         
            +
              era = eot.string_deg_to_time(eot.era - -88.75 * Eot::D2R)
         
     | 
| 
      
 8 
     | 
    
         
            +
              puts "LST gst #{gst} LST era #{era}" 
         
     | 
| 
       7 
9 
     | 
    
         
             
              # the number is syncing my machine. machine may vary in this.
         
     | 
| 
       8 
10 
     | 
    
         
             
              sleep 0.99613381875
         
     | 
| 
       9 
11 
     | 
    
         
             
            end
         
     | 
    
        data/ext/eot/ceot.c
    CHANGED
    
    | 
         @@ -21,9 +21,7 @@ double eoe(double t) 
     | 
|
| 
       21 
21 
     | 
    
         
             
              double e;
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
       23 
23 
     | 
    
         
             
              /* Eccentricity of Earth orbit */
         
     | 
| 
       24 
     | 
    
         
            -
              e = (0.016708617 
     | 
| 
       25 
     | 
    
         
            -
                   t * (-0.000042037 +
         
     | 
| 
       26 
     | 
    
         
            -
                   t * -0.0000001235));
         
     | 
| 
      
 24 
     | 
    
         
            +
              e = (0.016708617 + t * (-0.000042037 + t *  -0.0000001235));
         
     | 
| 
       27 
25 
     | 
    
         | 
| 
       28 
26 
     | 
    
         
             
              return e; 
         
     | 
| 
       29 
27 
     | 
    
         
             
            }
         
     | 
| 
         @@ -72,6 +70,11 @@ double alSun(double ma, double t, double o) 
     | 
|
| 
       72 
70 
     | 
    
         
             
              return a;
         
     | 
| 
       73 
71 
     | 
    
         
             
            }
         
     | 
| 
       74 
72 
     | 
    
         | 
| 
      
 73 
     | 
    
         
            +
            double raSun(double y0, double cos_al_Sun)
         
     | 
| 
      
 74 
     | 
    
         
            +
            {
         
     | 
| 
      
 75 
     | 
    
         
            +
              return atan2(-y0, -cos_al_Sun);
         
     | 
| 
      
 76 
     | 
    
         
            +
            }
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
       75 
78 
     | 
    
         
             
            double cosZ(double zenith)
         
     | 
| 
       76 
79 
     | 
    
         
             
            {
         
     | 
| 
       77 
80 
     | 
    
         | 
| 
         @@ -107,7 +110,7 @@ double cos_lat(double lat) 
     | 
|
| 
       107 
110 
     | 
    
         | 
| 
       108 
111 
     | 
    
         
             
              double ca;
         
     | 
| 
       109 
112 
     | 
    
         | 
| 
       110 
     | 
    
         
            -
              ca = cos(lat);
         
     | 
| 
      
 113 
     | 
    
         
            +
              ca = cos(lat * 0.017453292519943295769236907684886);
         
     | 
| 
       111 
114 
     | 
    
         | 
| 
       112 
115 
     | 
    
         
             
              return ca;
         
     | 
| 
       113 
116 
     | 
    
         
             
            }                                   
         
     | 
| 
         @@ -157,7 +160,7 @@ double sin_lat(double lat) 
     | 
|
| 
       157 
160 
     | 
    
         | 
| 
       158 
161 
     | 
    
         
             
              double sa;
         
     | 
| 
       159 
162 
     | 
    
         | 
| 
       160 
     | 
    
         
            -
              sa = sin(lat);
         
     | 
| 
      
 163 
     | 
    
         
            +
              sa = sin(lat * 0.017453292519943295769236907684886);
         
     | 
| 
       161 
164 
     | 
    
         | 
| 
       162 
165 
     | 
    
         
             
              return sa;
         
     | 
| 
       163 
166 
     | 
    
         
             
            }                                   
         
     | 
| 
         @@ -182,4 +185,26 @@ double sin_to_earth(double to_earth) 
     | 
|
| 
       182 
185 
     | 
    
         
             
              return sa;
         
     | 
| 
       183 
186 
     | 
    
         
             
            } 
         
     | 
| 
       184 
187 
     | 
    
         | 
| 
       185 
     | 
    
         
            -
             
     | 
| 
      
 188 
     | 
    
         
            +
            double sun(double zenith, double dec_sun, double lat)
         
     | 
| 
      
 189 
     | 
    
         
            +
            {
         
     | 
| 
      
 190 
     | 
    
         
            +
              double cos1 = cosZ(zenith);
         
     | 
| 
      
 191 
     | 
    
         
            +
              double sin2 = sin_dec_sun(dec_sun);
         
     | 
| 
      
 192 
     | 
    
         
            +
              double sin3 = sin_lat(lat);
         
     | 
| 
      
 193 
     | 
    
         
            +
              double cos2 = cos_dec_sun(dec_sun);
         
     | 
| 
      
 194 
     | 
    
         
            +
              double cos3 = cos_lat(lat);
         
     | 
| 
      
 195 
     | 
    
         
            +
              double top  = cos1 - sin2 * sin3;
         
     | 
| 
      
 196 
     | 
    
         
            +
              double bot  = cos2 * cos3;
         
     | 
| 
      
 197 
     | 
    
         
            +
              double ca   = top / bot;
         
     | 
| 
      
 198 
     | 
    
         
            +
              double c;
         
     | 
| 
      
 199 
     | 
    
         
            +
              c = (ca > 1.0 || ca < -1.0) ? 1.0: ca;    
         
     | 
| 
      
 200 
     | 
    
         
            +
              return acos(c);
         
     | 
| 
      
 201 
     | 
    
         
            +
            }
         
     | 
| 
      
 202 
     | 
    
         
            +
             
     | 
| 
      
 203 
     | 
    
         
            +
            double sun_dec(double al_sun, double to_earth) 
         
     | 
| 
      
 204 
     | 
    
         
            +
            {
         
     | 
| 
      
 205 
     | 
    
         
            +
              double sin1 = sin_to_earth(to_earth);
         
     | 
| 
      
 206 
     | 
    
         
            +
              double sin2 = sin_al_sun(al_sun);
         
     | 
| 
      
 207 
     | 
    
         
            +
              double a   = asin(sin1 * sin2);
         
     | 
| 
      
 208 
     | 
    
         
            +
              return a;
         
     | 
| 
      
 209 
     | 
    
         
            +
            }
         
     | 
| 
      
 210 
     | 
    
         
            +
            //                                                       
         
     | 
    
        data/ext/eot/ceot.h
    CHANGED
    
    | 
         @@ -5,6 +5,7 @@ double eoe(double t); 
     | 
|
| 
       5 
5 
     | 
    
         
             
            double eqc(double ma, double t);
         
     | 
| 
       6 
6 
     | 
    
         
             
            double tlSun(double ma, double t);
         
     | 
| 
       7 
7 
     | 
    
         
             
            double alSun(double ma, double t, double o);
         
     | 
| 
      
 8 
     | 
    
         
            +
            double raSun(double y0, double cos_al_Sun);
         
     | 
| 
       8 
9 
     | 
    
         
             
            double cosZ(double zenith);
         
     | 
| 
       9 
10 
     | 
    
         
             
            double cos_al_sun(double al_sun);
         
     | 
| 
       10 
11 
     | 
    
         
             
            double cos_tl_sun(double tl_sun);
         
     | 
| 
         @@ -16,3 +17,6 @@ double sin_dec_sun(double dec_sun); 
     | 
|
| 
       16 
17 
     | 
    
         
             
            double cos_dec_sun(double dec_sun);
         
     | 
| 
       17 
18 
     | 
    
         
             
            double sin_lat(double lat);
         
     | 
| 
       18 
19 
     | 
    
         
             
            double cos_lat(double lat);
         
     | 
| 
      
 20 
     | 
    
         
            +
            double sun_dec(double al_sun, double to_earth);
         
     | 
| 
      
 21 
     | 
    
         
            +
            double sun(double zenith, double dec_sun, double lat);
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
    
        data/ext/eot/eot.c
    CHANGED
    
    | 
         @@ -87,6 +87,21 @@ VALUE func_cos_lat(VALUE klass, VALUE vlat) { 
     | 
|
| 
       87 
87 
     | 
    
         
             
              return DBL2NUM(cos_lat(NUM2DBL(vlat)));
         
     | 
| 
       88 
88 
     | 
    
         
             
            }
         
     | 
| 
       89 
89 
     | 
    
         | 
| 
      
 90 
     | 
    
         
            +
            VALUE func_sun(VALUE klass, VALUE vz, VALUE vds, VALUE vlat) {
         
     | 
| 
      
 91 
     | 
    
         
            +
              rb_ivar_set(klass, id_status, INT2FIX(0));
         
     | 
| 
      
 92 
     | 
    
         
            +
              return DBL2NUM(sun(NUM2DBL(vz), NUM2DBL(vds), NUM2DBL(vlat)));
         
     | 
| 
      
 93 
     | 
    
         
            +
            }
         
     | 
| 
      
 94 
     | 
    
         
            +
             
     | 
| 
      
 95 
     | 
    
         
            +
            VALUE func_sun_dec(VALUE klass, VALUE vals, VALUE vtoe) {
         
     | 
| 
      
 96 
     | 
    
         
            +
              rb_ivar_set(klass, id_status, INT2FIX(0));
         
     | 
| 
      
 97 
     | 
    
         
            +
              return DBL2NUM(sun_dec(NUM2DBL(vals), NUM2DBL(vtoe)));
         
     | 
| 
      
 98 
     | 
    
         
            +
            }
         
     | 
| 
      
 99 
     | 
    
         
            +
             
     | 
| 
      
 100 
     | 
    
         
            +
            VALUE func_sun_ra(VALUE klass, VALUE vy0, VALUE vcas) {
         
     | 
| 
      
 101 
     | 
    
         
            +
              rb_ivar_set(klass, id_status, INT2FIX(0));
         
     | 
| 
      
 102 
     | 
    
         
            +
              return DBL2NUM(raSun(NUM2DBL(vy0), NUM2DBL(vcas)));
         
     | 
| 
      
 103 
     | 
    
         
            +
            }
         
     | 
| 
      
 104 
     | 
    
         
            +
             
     | 
| 
       90 
105 
     | 
    
         
             
            VALUE cEot;
         
     | 
| 
       91 
106 
     | 
    
         
             
            void
         
     | 
| 
       92 
107 
     | 
    
         
             
            Init_eot(void) {
         
     | 
| 
         @@ -109,4 +124,8 @@ Init_eot(void) { 
     | 
|
| 
       109 
124 
     | 
    
         
             
              rb_define_method(cEot, "sin_dec_sun", func_sin_dec_sun, 1);
         
     | 
| 
       110 
125 
     | 
    
         
             
              rb_define_method(cEot, "cos_lat", func_cos_lat, 1);
         
     | 
| 
       111 
126 
     | 
    
         
             
              rb_define_method(cEot, "sin_lat", func_sin_lat, 1);
         
     | 
| 
      
 127 
     | 
    
         
            +
              rb_define_method(cEot, "sun_dec", func_sun_dec, 2);
         
     | 
| 
      
 128 
     | 
    
         
            +
              rb_define_method(cEot, "sun", func_sun, 3);
         
     | 
| 
      
 129 
     | 
    
         
            +
              rb_define_method(cEot, "sun_ra", func_sun_ra, 2);
         
     | 
| 
      
 130 
     | 
    
         
            +
              
         
     | 
| 
       112 
131 
     | 
    
         
             
            }
         
     | 
    
        data/lib/eot.rb
    CHANGED
    
    | 
         @@ -1,19 +1,21 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # eot.rb
         
     | 
| 
       2 
2 
     | 
    
         
             
            # require 'multi_xml'
         
     | 
| 
       3 
3 
     | 
    
         
             
            require 'addressable/uri'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'rest-client'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'json'
         
     | 
| 
       6 
4 
     | 
    
         
             
            require 'celes'
         
     | 
| 
       7 
5 
     | 
    
         
             
            require 'date'
         
     | 
| 
       8 
     | 
    
         
            -
            require ' 
     | 
| 
       9 
     | 
    
         
            -
            require ' 
     | 
| 
       10 
     | 
    
         
            -
            require 'eot/constants'
         
     | 
| 
       11 
     | 
    
         
            -
            require 'eot/init'
         
     | 
| 
       12 
     | 
    
         
            -
            require 'eot/utilities'
         
     | 
| 
      
 6 
     | 
    
         
            +
            require 'json'
         
     | 
| 
      
 7 
     | 
    
         
            +
            require 'rest-client'
         
     | 
| 
       13 
8 
     | 
    
         
             
            require 'eot/angles'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require 'eot/angle_displays'
         
     | 
| 
      
 10 
     | 
    
         
            +
            require 'eot/constants'
         
     | 
| 
       14 
11 
     | 
    
         
             
            require 'eot/deltas'
         
     | 
| 
       15 
     | 
    
         
            -
            require 'eot/ 
     | 
| 
      
 12 
     | 
    
         
            +
            require 'eot/delta_times'
         
     | 
| 
      
 13 
     | 
    
         
            +
            require 'eot/eot'
         
     | 
| 
      
 14 
     | 
    
         
            +
            require 'eot/geo_lat_lng_smt'
         
     | 
| 
      
 15 
     | 
    
         
            +
            require 'eot/init'
         
     | 
| 
      
 16 
     | 
    
         
            +
            require 'eot/jd_times'
         
     | 
| 
       16 
17 
     | 
    
         
             
            require 'eot/times'
         
     | 
| 
       17 
     | 
    
         
            -
            require 'eot/angle_displays'
         
     | 
| 
       18 
18 
     | 
    
         
             
            require 'eot/time_displays'
         
     | 
| 
       19 
     | 
    
         
            -
            require 'eot/ 
     | 
| 
      
 19 
     | 
    
         
            +
            require 'eot/trigonometric'
         
     | 
| 
      
 20 
     | 
    
         
            +
            require 'eot/utilities'
         
     | 
| 
      
 21 
     | 
    
         
            +
            require 'eot/version'
         
     | 
    
        data/lib/eot/angle_displays.rb
    CHANGED
    
    | 
         @@ -1,29 +1,12 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # class Eot file = angle_displays.rb
         
     | 
| 
      
 2 
     | 
    
         
            +
            # methods for display of angles
         
     | 
| 
       2 
3 
     | 
    
         
             
            class Eot
         
     | 
| 
       3 
     | 
    
         
            -
              def deg_string(sgn, d, m, s, ds)
         
     | 
| 
       4 
     | 
    
         
            -
                sgn +
         
     | 
| 
       5 
     | 
    
         
            -
                format('%03d', d) +
         
     | 
| 
       6 
     | 
    
         
            -
                        ':' +
         
     | 
| 
       7 
     | 
    
         
            -
                format('%02d', m) +
         
     | 
| 
       8 
     | 
    
         
            -
                        ':' +
         
     | 
| 
       9 
     | 
    
         
            -
                format('%02d', s) +
         
     | 
| 
       10 
     | 
    
         
            -
                        '.' +
         
     | 
| 
       11 
     | 
    
         
            -
                format('%3.3d', ds)
         
     | 
| 
       12 
     | 
    
         
            -
              end
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
4 
     | 
    
         
             
              # From displays.rb
         
     | 
| 
       15 
5 
     | 
    
         
             
              # String formatter for d:m:s display
         
     | 
| 
       16 
6 
     | 
    
         
             
              def degrees_to_s(radians = 0.0)
         
     | 
| 
       17 
7 
     | 
    
         
             
                radians.nil? ? radians = 0.0 : radians
         
     | 
| 
       18 
     | 
    
         
            -
                 
     | 
| 
       19 
     | 
    
         
            -
                 
     | 
| 
       20 
     | 
    
         
            -
                int_deg = Integer(deg)
         
     | 
| 
       21 
     | 
    
         
            -
                min = 60.0 * (deg - int_deg)
         
     | 
| 
       22 
     | 
    
         
            -
                int_min = Integer(min)
         
     | 
| 
       23 
     | 
    
         
            -
                sec = 60.0 * (min - int_min)
         
     | 
| 
       24 
     | 
    
         
            -
                int_sec = Integer(sec)
         
     | 
| 
       25 
     | 
    
         
            -
                int_ds = Integer(1000.0 * (sec - int_sec))
         
     | 
| 
       26 
     | 
    
         
            -
                deg_string(sign, int_deg, int_min, int_sec, int_ds)
         
     | 
| 
      
 8 
     | 
    
         
            +
                s, idmsf = Celes.a2af(3, radians)
         
     | 
| 
      
 9 
     | 
    
         
            +
                f_string(s, idmsf[0], idmsf[1], idmsf[2], idmsf[3])
         
     | 
| 
       27 
10 
     | 
    
         
             
              end
         
     | 
| 
       28 
11 
     | 
    
         | 
| 
       29 
12 
     | 
    
         
             
              # From displays.rb
         
     |