Gem representing Bitcoin reward eras.
100% BigDecimal arithmetic.
gem install 'bitcoin_reward_era'
require 'bitcoin_reward_era'
puts BitcoinRewardEra.report
Also installs an executable to demonstrate its usefulness.
bitcoin_reward_era
Block Reward Era BTC/block Year Start BTC BTC Added End BTC BTC % Increase End BTC % of Limit Supply Inflation Rate
0 : 1 : 50.00000000 : 2009.008 : 0.00000000 : 10500000.00000000 : 10500000.00000000 : Inf% : 50.00000006% : Inf%
210000 : 2 : 25.00000000 : 2013.000 : 10500000.00000000 : 5250000.00000000 : 15750000.00000000 : 50.00000000% : 75.00000008% : 10.66819197%
420000 : 3 : 12.50000000 : 2016.993 : 15750000.00000000 : 2625000.00000000 : 18375000.00000000 : 16.66666667% : 87.50000010% : 3.92898776%
630000 : 4 : 6.25000000 : 2020.986 : 18375000.00000000 : 1312500.00000000 : 19687500.00000000 : 7.14285714% : 93.75000010% : 1.73978273%
840000 : 5 : 3.12500000 : 2024.978 : 19687500.00000000 : 656250.00000000 : 20343750.00000000 : 3.33333333% : 96.87500011% : 0.82311468%
1050000 : 6 : 1.56250000 : 2028.971 : 20343750.00000000 : 328125.00000000 : 20671875.00000000 : 1.61290323% : 98.43750011% : 0.40080964%
1260000 : 7 : 0.78125000 : 2032.964 : 20671875.00000000 : 164062.50000000 : 20835937.50000000 : 0.79365079% : 99.21875011% : 0.19782490%
1470000 : 8 : 0.39062500 : 2036.957 : 20835937.50000000 : 82031.25000000 : 20917968.75000000 : 0.39370079% : 99.60937511% : 0.09828022%
1680000 : 9 : 0.19531250 : 2040.949 : 20917968.75000000 : 41015.62500000 : 20958984.37500000 : 0.19607843% : 99.80468761% : 0.04898361%
1890000 : 10 : 0.09765625 : 2044.942 : 20958984.37500000 : 20507.81250000 : 20979492.18750000 : 0.09784736% : 99.90234386% : 0.02445287%
2100000 : 11 : 0.04882812 : 2048.935 : 20979492.18750000 : 10253.90520000 : 20989746.09270000 : 0.04887585% : 99.95117198% : 0.01221672%
2310000 : 12 : 0.02441406 : 2052.927 : 20989746.09270000 : 5126.95260000 : 20994873.04530000 : 0.02442599% : 99.97558604% : 0.00610594%
2520000 : 13 : 0.01220703 : 2056.920 : 20994873.04530000 : 2563.47630000 : 20997436.52160000 : 0.01221001% : 99.98779307% : 0.00305236%
2730000 : 14 : 0.00610351 : 2060.913 : 20997436.52160000 : 1281.73710000 : 20998718.25870000 : 0.00610426% : 99.99389658% : 0.00152603%
2940000 : 15 : 0.00305175 : 2064.906 : 20998718.25870000 : 640.86750000 : 20999359.12620000 : 0.00305194% : 99.99694833% : 0.00076298%
3150000 : 16 : 0.00152587 : 2068.898 : 20999359.12620000 : 320.43270000 : 20999679.55890000 : 0.00152592% : 99.99847420% : 0.00038148%
3360000 : 17 : 0.00076293 : 2072.891 : 20999679.55890000 : 160.21530000 : 20999839.77420000 : 0.00076294% : 99.99923713% : 0.00019073%
3570000 : 18 : 0.00038146 : 2076.884 : 20999839.77420000 : 80.10660000 : 20999919.88080000 : 0.00038146% : 99.99961859% : 0.00009537%
3780000 : 19 : 0.00019073 : 2080.876 : 20999919.88080000 : 40.05330000 : 20999959.93410000 : 0.00019073% : 99.99980932% : 0.00004768%
3990000 : 20 : 0.00009536 : 2084.869 : 20999959.93410000 : 20.02560000 : 20999979.95970000 : 0.00009536% : 99.99990468% : 0.00002384%
4200000 : 21 : 0.00004768 : 2088.862 : 20999979.95970000 : 10.01280000 : 20999989.97250000 : 0.00004768% : 99.99995236% : 0.00001192%
4410000 : 22 : 0.00002384 : 2092.855 : 20999989.97250000 : 5.00640000 : 20999994.97890000 : 0.00002384% : 99.99997620% : 0.00000596%
4620000 : 23 : 0.00001192 : 2096.847 : 20999994.97890000 : 2.50320000 : 20999997.48210000 : 0.00001192% : 99.99998812% : 0.00000298%
4830000 : 24 : 0.00000596 : 2100.842 : 20999997.48210000 : 1.25160000 : 20999998.73370000 : 0.00000596% : 99.99999408% : 0.00000149%
5040000 : 25 : 0.00000298 : 2104.835 : 20999998.73370000 : 0.62580000 : 20999999.35950000 : 0.00000298% : 99.99999706% : 0.00000075%
5250000 : 26 : 0.00000149 : 2108.828 : 20999999.35950000 : 0.31290000 : 20999999.67240000 : 0.00000149% : 99.99999855% : 0.00000037%
5460000 : 27 : 0.00000074 : 2112.821 : 20999999.67240000 : 0.15540000 : 20999999.82780000 : 0.00000074% : 99.99999929% : 0.00000019%
5670000 : 28 : 0.00000037 : 2116.814 : 20999999.82780000 : 0.07770000 : 20999999.90550000 : 0.00000037% : 99.99999966% : 0.00000009%
5880000 : 29 : 0.00000018 : 2120.806 : 20999999.90550000 : 0.03780000 : 20999999.94330000 : 0.00000018% : 99.99999984% : 0.00000005%
6090000 : 30 : 0.00000009 : 2124.799 : 20999999.94330000 : 0.01890000 : 20999999.96220000 : 0.00000009% : 99.99999993% : 0.00000002%
6300000 : 31 : 0.00000004 : 2128.792 : 20999999.96220000 : 0.00840000 : 20999999.97060000 : 0.00000004% : 99.99999997% : 0.00000001%
6510000 : 32 : 0.00000002 : 2132.784 : 20999999.97060000 : 0.00420000 : 20999999.97480000 : 0.00000002% : 99.99999999% : 0.00000001%
6720000 : 33 : 0.00000001 : 2136.777 : 20999999.97480000 : 0.00210000 : 20999999.97690000 : 0.00000001% : 100.00000000% : 0.00000000%
6930000 : 34 : 0.00000000 : 2140.770 : 20999999.97690000 : 0.00000000 : 20999999.97690000 : 0.00000000% : 100.00000000% : 0.00000000%
Created to verify table "Projected Bitcoins Long Term"
Thanks to /u/QuasiSteve for help