Elevation of any object as seen from ground stations.
[elev] = CL_gm_stationElevation(pos_ter,stations,[er,[obla]])
Computes the elevations (elev) of any object as seen from one or several locations (stations).
The position of the object (pos_ter) is given in cartesian coordinates in a frame tied to the planet (that is in the same frame as stations).
See below for detailed examples
positions in the rotating frame, in cartesian coordinates [X;Y;Z] [m] (3xM)
stations positions in the same rotating frame, in elliptical (geodetic) coordinates [long,lat,alt] [rad,m] (3xN)
(optional) planet equatorial radius (default is %CL_eqRad) [m] (1x1)
(optional) planet oblateness (default is %CL_obla) (1x1)
elevations from each stations and each object position. elev(row=i,column=j) is the elevation of object j from station i. [rad] (NxM)
CNES - DCT/SB
//secular J2 propagation cjd0 = 21915; pas = 10./86400.0; cjd = cjd0 : pas : cjd0+1; kep0 = [7070.e3 ; 0.001 ; CL_deg2rad([98;90;10;15])]; kep = CL_ex_secularJ2(cjd0, kep0, cjd); //conversion to terrestrial frame [pos_car,vel_car] = CL_oe_kep2car(kep); pos_ter = CL_fr_G502ter(cjd,pos_car); //stations definition sta1 = [CL_deg2rad(2);CL_deg2rad(70);200]; // high latitude sta2 = [CL_deg2rad(20);CL_deg2rad(0);400]; // equator stations = [sta1,sta2]; //elevations computation [elev] = CL_gm_stationElevation(pos_ter,stations); // elevation in function of time scf(); plot2d((cjd-cjd0)*24,CL_rad2deg(elev(1,:)),2) //station 1 plot2d((cjd-cjd0)*24,CL_rad2deg(elev(2,:)),3) //station 2 // visibility duration if station's mask is 5 degrees : ind_1 = find(elev(1,:) > CL_deg2rad(5)); //station 1 ind_2 = find(elev(2,:) > CL_deg2rad(5)); //station 2 dur_1_minutes = pas*length(ind_1)*1440.0 dur_2_minutes = pas*length(ind_2)*1440.0 | ![]() | ![]() |