With the optics features of nextnano++, the optical absorption spectrum can be calculated for various polarization directions.
The absorption rate in a semiconductor can be written as
\[ R_{ba} = \frac{2}{V} \sum_{k_a} \sum_{k_b} \frac{2 \pi}{ \hbar} |H_{ba}| ^2 \delta(E_b - E_a -\hbar \omega)(1-f_a) \cdot f_b, \]
where the matrix element $|H_{ba}|$ depends on the polarization of light and the $\bf k$ vector.
The transition matrix element $H_{ab}({\bf k})$ is plotted as a function of ${\bf k}=(k_x,k_y)$ for a quantum well structure (1D simulation) in figure 1