practical_astronomy_rust/
binarydata.rs1pub struct BinaryInfo {
11 pub name: String,
12 pub period: f64,
13 pub epoch_peri: f64,
14 pub long_peri: f64,
15 pub ecc: f64,
16 pub axis: f64,
17 pub incl: f64,
18 pub pa_node: f64,
19}
20
21pub fn get_binary_info_vector(binary_name: String) -> (BinaryInfo, String) {
27 let mut binary_info_vector: Vec<BinaryInfo> = Vec::new();
28
29 binary_info_vector.push(BinaryInfo {
30 name: "eta-Cor".to_string(),
31 period: 41.623,
32 epoch_peri: 1934.008,
33 long_peri: 219.907,
34 ecc: 0.2763,
35 axis: 0.907,
36 incl: 59.025,
37 pa_node: 23.717,
38 });
39
40 binary_info_vector.push(BinaryInfo {
41 name: "gamma-Vir".to_string(),
42 period: 171.37,
43 epoch_peri: 1836.433,
44 long_peri: 252.88,
45 ecc: 0.8808,
46 axis: 3.746,
47 incl: 146.05,
48 pa_node: 31.78,
49 });
50
51 binary_info_vector.push(BinaryInfo {
52 name: "eta-Cas".to_string(),
53 period: 480.0,
54 epoch_peri: 1889.6,
55 long_peri: 268.59,
56 ecc: 0.497,
57 axis: 11.9939,
58 incl: 34.76,
59 pa_node: 278.42,
60 });
61
62 binary_info_vector.push(BinaryInfo {
63 name: "zeta-Ori".to_string(),
64 period: 1508.6,
65 epoch_peri: 2070.6,
66 long_peri: 47.3,
67 ecc: 0.07,
68 axis: 2.728,
69 incl: 72.0,
70 pa_node: 155.5,
71 });
72
73 binary_info_vector.push(BinaryInfo {
74 name: "alpha-CMa".to_string(),
75 period: 50.09,
76 epoch_peri: 1894.13,
77 long_peri: 147.27,
78 ecc: 0.5923,
79 axis: 7.5,
80 incl: 136.53,
81 pa_node: 44.57,
82 });
83
84 binary_info_vector.push(BinaryInfo {
85 name: "delta-Gem".to_string(),
86 period: 1200.0,
87 epoch_peri: 1437.0,
88 long_peri: 57.19,
89 ecc: 0.11,
90 axis: 6.9753,
91 incl: 63.28,
92 pa_node: 18.38,
93 });
94
95 binary_info_vector.push(BinaryInfo {
96 name: "alpha-Gem".to_string(),
97 period: 420.07,
98 epoch_peri: 1965.3,
99 long_peri: 261.43,
100 ecc: 0.33,
101 axis: 6.295,
102 incl: 115.94,
103 pa_node: 40.47,
104 });
105
106 binary_info_vector.push(BinaryInfo {
107 name: "aplah-CMi".to_string(),
108 period: 40.65,
109 epoch_peri: 1927.6,
110 long_peri: 269.8,
111 ecc: 0.4,
112 axis: 4.548,
113 incl: 35.7,
114 pa_node: 284.3,
115 });
116
117 binary_info_vector.push(BinaryInfo {
118 name: "alpha-Cen".to_string(),
119 period: 79.92,
120 epoch_peri: 1955.56,
121 long_peri: 231.56,
122 ecc: 0.516,
123 axis: 17.583,
124 incl: 79.24,
125 pa_node: 204.868,
126 });
127
128 binary_info_vector.push(BinaryInfo {
129 name: "alpha Sco".to_string(),
130 period: 900.0,
131 epoch_peri: 1889.0,
132 long_peri: 0.0,
133 ecc: 0.0,
134 axis: 3.21,
135 incl: 86.3,
136 pa_node: 273.0,
137 });
138
139 for i in binary_info_vector {
140 if i.name == binary_name {
141 return (i, "OK".to_string());
142 }
143 }
144
145 return (
146 BinaryInfo {
147 name: binary_name,
148 period: 0.0,
149 epoch_peri: 0.0,
150 long_peri: 0.0,
151 ecc: 0.0,
152 axis: 0.0,
153 incl: 0.0,
154 pa_node: 0.0,
155 },
156 "NotFound".to_string(),
157 );
158}