These calculations include a normalization of the arc distance on the Earth’s surface. (The arc distance represents the visible area of the earth from space. It’s expressed as a distance in order to simplify the calculations. Actually the area could calculated as well because we are computing the viewing angle, but just expressing this in 2D as a distance instead of 3d as an area) Note that the normalization concept means that the distance for each satellite is expressed as a fraction of the sum of distances for all satellites in the constellation.

Typically, just as a reminder, we have a number of satellites which represent a constellation. In a constellation, all satellites work together as a system instead of individually. For us this means that the fields of view add together. The goal of this problem is to express each individual field of view in relation to the system field of view.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
def ranger(n_sats, satellite_alt): j=0 for z in range(n_sats): r_earth = 12756.14330 pi_pan = 3.141592653589793238462643383 r_vect = satellite_alt[j]+r_earth arc_sat = r_vect/r_earth arc_sat_deg = 180*arc_sat/pi_pan arc_sat_distance = arc_sat_deg * (pi_pan/180)*r_vect narc_sat_distance = n_sats*arc_sat_deg * (pi_pan/180)*r_vect angle_earth = narc_sat_distance / r_earth angle_earth_deg = 180*(angle_earth)/pi_pan angle_earth_deg dist_earth = n_sats*angle_earth*r_earth j = j+1 return dist_earth def siddartha3(alt): r_earth = 12756.14330 pi_pan = 3.141592653589793238462643383 r_vect = alt+r_earth arc_sat = r_vect/r_earth arc_sat_deg = 180*arc_sat/pi_pan arc_sat_distance = arc_sat_deg * (pi_pan/180)*r_vect angle_earth = arc_sat_distance / r_earth dist_earth = angle_earth*r_earth return dist_earth satellite_alt = [450,430,540] input_data = satellite_alt[k] output1=siddartha3(450) output2=siddartha3(430) output3=siddartha3(540) total=ranger(3,satellite_alt) dpoint1=output1/total dpoint2=output2/total dpoint3=output3/total out=[dpoint1, dpoint2, dpoint3] print(out) |