def diff_prof(step):
rbot, rtop = misc.get_rbounds(step)<EOL>rad = step.rprof['<STR_LIT:r>'].values + rbot<EOL>tprof = step.rprof['<STR_LIT>'].values<EOL>diff = (tprof[:-<NUM_LIT:1>] - tprof[<NUM_LIT:1>:]) / (rad[<NUM_LIT:1>:] - rad[:-<NUM_LIT:1>])<EOL>diff = np.insert(diff, <NUM_LIT:0>, (<NUM_LIT:1> - tprof[<NUM_LIT:0>]) / (rad[<NUM_LIT:0>] - rbot))<EOL>diff = np.append(diff, tprof[-<NUM_LIT:1>] / (rtop - rad[-<NUM_LIT:1>]))<EOL>return diff, np.append(rad, rtop)<EOL>
Diffusion.

    Args:
        step (:class:`~stagpy.stagyydata._Step`): a step of a StagyyData
            instance.
    Returns:
        tuple of :class:`numpy.array`: the diffusion and the radial position
        at which it is evaluated.