You will like have to use "randn(1,length(Tx_signal))" meaning your noise has to be real. In IM/DD the transmited signals are required to be "Real & Non-negative". The signal-independent noise n(t) is shot noise which is modelled as white and Gaussian and a double-sided power spectral density No/2, with
No/2 = q*I_b where I_b is the average photocurrent.
For more infos you can reference: "Performance of infrared transmission
systems under ambient light interference, IEEE Proceedings—Optoelectronics,
In on off keying the constellation points lies along one axes , only the amplitude is varied in binary form of logic 1 corresponds to certain amplitude and zero logic corresponding to zero amplitude. OOK is a spec ail case of PULSE AMPLITDE MODULATION.So the amplitude of the signal is real an so also the superposed noise on it.
If the constellation is two dimensional than the noise will be complex having an I -value and Q-value.