def calculate_coherence(self, pulse_in, fiber, 
                            num_trials=5, random_seed=None, noise_type='one_photon_freq',
                            n_steps=50, output_power=None, reload_fiber_each_step=False):
        """
        This function runs :func:`pynlo.interactions.FourWaveMixing.SSFM.propagate` several times (given by num_trials),
        each time adding random noise to the pulse. By comparing the electric fields of the different pulses,
        and estimate of the coherence can be made.