## 5 Numerical Results  
In this section, we provide the simulation results of Algorithms 2 and 3 in the downlink MU-PhC-MIMO VLC system. The indoor space size we consider is \(5\times 5\times 3\) m\({}^{3}\). We assume the center of the ceiling to be \((2.5,2.5)\) m and evenly place \(N\) LED arrays with a grid size of \((\Delta x,\Delta y)=(0.1,0.1)\) m on the ceiling [36]. All receiving users are located on the same flat floor with a height of 0.85 m. For the sake of generality, we assume uniformity in the weight parameters of all users during the weight-setting process, i.e., \(\mu_{k}=1,\forall k\). The specific numerical values for the other parameters involved in the simulation process are presented in Table 1. The wavelength falls within the blue light range of the visible spectrum and is supported by current manufacturing processes for LEDs. The symbol duration is set to 1 us to disregard the impact of dead time effects [32]. The remaining parameter settings are adopted from [24,37]. \begin{table}
\begin{tabular}{c c} \hline \hline
**Parameter** & **Value** \\ \hline Visible light wavelength (\(\
u\)) & 450 nm \\ Symbol duration (\(\tau\)) & 1 us \\ The receiving area of the PD (\(A_{r}\)) & 1 cm\({}^{2}\) \\ PD field of view (\(\psi_{\text{FOV}}\)) & 60\({}^{\circ}\) \\ LED semi-angle (\(\varphi_{1/2}\)) & 60\({}^{\circ}\) \\ Optical filter gain \(\big{(}T(\psi_{k,k})\big{)}\) & 1 \\ Refractive index (\(\phi\)) & 1.5 \\ Quantum efficiency (\(\zeta\)) & 0.54 \\ Background radiation power per slot (\(R_{\text{b}}\)) & \(-75\) dBm [38] \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Simulation parameters of the system [24,37]. To the best of our knowledge, there is currently no literature exploring the achievable rates of MIMO systems affected by signal-dependent Poison shot noises, as presented in this paper. Hence, we borrow the classic ZF precoding design and repetition coding scheme from AWGN systems as benchmarks for our algorithms:  
* ZF precoding [5]: We adopt the commonly used ZF precoding scheme under AWGN systems. The specific calculation method is as follows: \(\mathbf{W}_{\text{ZF}}=\mathbf{G}^{T}(\mathbf{G}\mathbf{G}^{T})^{-1}\) and \(\mathbf{G}=[\mathbf{g}_{1},\cdots,\mathbf{g}_{K}]^{T}\). We rigorously check that \(\mathbf{W}_{\text{ZF}}\) complies with the constraints C1-C4 in (16). If it does not meet the requirements, we normalize \(\mathbf{W}_{\text{ZF}}\), i.e., \(\mathbf{W}_{\text{ZF}}=\frac{\mathbf{W}_{\text{ZF}}}{||\mathbf{W}_{\text{ZF}}||_{\infty}}\). By substituting \(\mathbf{W}_{\text{ZF}}\) into (15), the corresponding (weighted) sum rate can be obtained. * Repetition coding [39]: We select the user with the best channel condition and utilize all LED arrays to transmit single-stream data to that user. This configuration establishes a MIMO framework serving a single user. Figure 2 compares the performance of the system's (weighted) sum rate using different algorithms as the peak power per symbol \(P_{\text{s}}\) increases, where \(N=8\) and \(K=4\). We set the upper limit of the LED's transmission power to \(P_{\text{max}}=5\) dBm, the bias power to \(P_{\text{d}}=-5\) dBm, and \(\mathbf{d}\) can be obtained based on \(\mathbf{d}=\frac{P_{\text{d}}\tau}{\hbar\tau}\). We can observe that the proposed Algorithms 2 and 3 are better than the ZF precoding and repetition coding schemes because the classic schemes are not suitable for MIMO systems limited by Poisson shot noises. In the case of low \(P_{\text{s}}\), Algorithms 2 and 3 can improve by 2.5 dB compared to the ZF precoding method. The repetition coding scheme tends to a fixed value as \(P_{\text{s}}\) continues to increase. This is because this scheme serves a single user and has an upper limit on the achievable rate. On the other hand, we can observe that the proposed Algorithms 2 and 3 are almost consistent, indicating that Algorithm 3 can play a certain role in simplifying Algorithm 2.