# An Observation Scheduling System for Radio Telescope Array
## 3 The Overall Architecture of the System
### Target Trajectory Prediction Module  
The target trajectory prediction module is designed to compute the relative elevation (\(\theta_{\text{el}}\)) and azimuth (\(\theta_{\text{az}}\)) angles of a celestial target with respect to the radio telescope array over a specified duration. This calculation is based on the array's geographical coordinates and the target's celestial coordinates, including right ascension (\(RA\)) and declination (\(DEC\)). Therefore, for effective tracking and observation within a given time interval, the radio telescope array must adjust its observational pointing continuously, which requires predicting the target's trajectory relative to the telescope. The module then visualizes these calculated angles on the system interface, facilitating the accurate alignment of the array with the celestial target. This module operates through a three-step process, as depicted in Figure 3. Initially, the module retrieves essential data: the target information, which includes the right ascension (\(RA\)) and declination (\(DEC\)) coordinates, along with the observation time range, from a target list file. Concurrently, it gathers the geographical latitude (\(\varphi\)) and longitude (\(\lambda_{\text{long}}\)) of the telescope array. Subsequently, the module employs these data to compute the target's \(\theta_{\text{el}}\) and \(\theta_{\text{az}}\) values throughout the observation period. Ultimately, it projects the target's trajectory onto the horizontal coordinate system for the subsequent 24 h, commencing from a specific observation time, and presents this trajectory on the system interface, enabling users to visualize and track the target's movement in relation to the telescope array.  
Figure 3: Flow chart of the target trajectory prediction module.  
In this module, the \(\theta_{\text{el}}\) and \(\theta_{\text{az}}\) were calculated by [8]:  
\[\left\{\begin{array}{l}\theta_{\text{el}}=\arcsin(\sin(DEC)\sin(\varphi)+\cos( DEC)\cos(\varphi)\cos(H))\\ \theta_{\text{az}}=\left\{\begin{array}{l}\arccos((\sin(DEC)-\sin(\theta_{ \text{el}})\sin(\varphi))/(\cos(\theta_{\text{el}})\cos(\varphi))),\quad\text{ if }\sin(H)<0\\ 360-\arccos((\sin(DEC)-\sin(\theta_{\text{el}})\sin(\varphi))/(\cos(\theta_{ \text{el}})\cos(\varphi))),\quad\text{otherwise}\end{array}\right.\\ \text{where }H=LST-DEC\) is the hour angle. \(LST\) represents the Local Sideral Time, which is calculated by the \(\varphi\) and \(\lambda_{\text{long}}\) of the telescope array and the international standard time, which is given as [8]  
\[LST=100.46+0.985647D+\lambda_{\text{long}}+15 UT, \tag{2}\]  
where \(UT\) is the Universal Time, and \(D\) is the number of days since J2000.0. For instance, the \(LST\) for the telescope array (\(\lambda_{\text{long}}=106.67^{\circ}\), \(\varphi=26.44^{\circ}\)) at 16:50 on 10 October 2023, is calculated using Equation (2) to be 17h11m30.932s.  
Utilizing Equation (1), we can calculate and predict the elevation (\(\theta_{\text{el}}\)) and azimuth (\(\theta_{\text{az}}\)) angles of a celestial target for the 24-h period following a given moment, and plot the target's trajectory change curve within this timeframe. It is common for targets with lower \(\theta_{\text{az}}\) angles to have larger calibration errors and poorer signal quality in the telescope array. As a result, data from these targets is typically discarded. This function enables observers to identify the observable time range within the following 24 h for a target, based on a minimum threshold of \(\theta_{\text{el}}\), known as the visible time range. With this information, managers can optimize the observation sequence according to the visible time ranges of different targets. For further details on this process, refer to the section on the intelligent scheduling module.