## 2 The FNA Method
### The Solution of the Nominal Acceleration  
According to the position sequence \(\mathbf{Q}_{i}\) obtained above, the nominal acceleration can be solved. Taking the X-axis as an example, the first-order difference calculation of the \(q_{x}(i)\) in \(\mathbf{Q}_{i}\) can be performed to obtain the feedrate sequence as  
\[\left[ \begin{array}{c}f_{x}(0)\\ f_{x}(1)\\ \vdots\\ f_{x}(N-2)\\ f_{x}(N-1)\end{array} \right]=\overbrace{\left[ \begin{array}{cccccccc}-1&1&0& \cdots&\cdots&\cdots&0\\ -\frac{1}{2}&0&\frac{1}{2}&0&\cdots&\cdots&0\\ 0&-\frac{1}{2}&0&\frac{1}{2}&0&\cdots&0\\ \vdots&\vdots&\vdots&\ddots&\vdots&\vdots&\vdots\\ 0&\cdots&0&-\frac{1}{2}&0&\frac{1}{2}&0\\ 0&\cdots&\cdots&0&-\frac{1}{2}&0&\frac{1}{2}\\ 0&\cdots&\cdots&\cdots&0&-1&1\end{array} \right]}_{N\times N}\left[ \begin{array} []{c}q_{x}(0)\\ q_{x}(1)\\ \vdots\\ q_{x}(N-2)\\ q_{x}(N-1)\end{array} \right]}^{\text{ (36)}}\]  
Similarly, the acceleration sequence \(a_{x}(i)\) can be obtained from Equation (36) as  
\[\left[ \begin{array}{c}a_{x}(0)\\ a_{x}(1)\\ \vdots\\ a_{x}(N-2)\\ a_{x}(N-1)\end{array} \right]=\frac{\mathbf{M}_{1}^{2}}{T_{s}^{2}}\left[ \begin{array} []{c}q_{x}(0)\\ q_{x}(1)\\ \vdots\\ q_{x}(N-2)\\ q_{x}(N-1)\end{array} \right] \tag{37}\]  
The process of calculating the acceleration sequence \(a_{x}(i)\) is shown in Figure 4a. The midpoint of the sequence is the X-axis component \(\hat{A}_{x}\) of the acceleration at point \(O\). However, since the above differential calculation only uses the position data of a few adjacent interpolation cycles around point \(O\), the value of \(\hat{A}_{x}\) may fluctuate greatly, which will affect the stability of the final nominal acceleration. For this reason, a FIR low-pass filter will be used, as shown in Figure 4b, to process the acceleration sequence \(a_{x}(i)\) of the sampling interval, so as to reduce the fluctuation and obtain a more stable and reasonable nominal acceleration. Figure 4: The process of solving the acceleration of X-axis: (**a**) the process of calculating the acceleration sequence; (**b**) the process of filtering the acceleration sequence. First, the design of the FIR low-pass filter needs to be carried out, which means obtaining the value of \(h(i)\) in Figure 4b. Let the frequency characteristics of the ideal linear-phase FIR low-pass filter be  
\[H_{\text{d}}\left(e^{i\omega}\right)=\left\{ \begin{array}{c}e^{-j\omega\tau}, \left|\omega\right|\leq\omega_{\text{c}}\\ 0,\text{ otherwise}\end{array} \right. \tag{38}\]  
where \(j\) is an imaginary unit, \(\omega_{\text{c}}\) is the cutoff frequency, and \(\tau\) is the group delay. By the Fourier inverse transform of \(H_{\text{d}}\left(e^{j\omega}\right)\), the unit impulse response of the filter can be obtained as  
\[ \begin{array}{c}h_{\text{d}}(i)=\frac{1}{2\pi}\int_{-\pi}^{\pi}H_{\text{d}} \left(e^{j\omega}\right)e^{i\omega\text{d}}\omega=\frac{1}{2\pi}\int_{-\omega _{\text{c}}}^{\omega_{\text{c}}}e^{j\omega(i-\tau)}\text{d}\omega\\ =\frac{\sin\left[\omega_{\text{c}}(i-\tau)\right]}{\pi(i-\tau)},\ i\
eq\tau \text{ or }\frac{\omega}{\pi},i=\tau\end{array}  \tag{39}\]  
Since \(i\) in the formula can be taken as any integer, \(h_{\text{d}}(i)\) is an infinitely long non-causal sequence, which cannot be used in the actual calculation. In this case, a window function [35; 36] needs to be used to truncate \(h_{\text{d}}(i)\). From the data in Table 1, the stopband attenuation \(\delta_{\text{stop}}\) in this paper is \(-40\) dB.