'Return a normalized version of the Wavefunction
Examples
>>> from sympy import symbols, pi
>>> from sympy.functions import sqrt, sin
>>> from sympy.physics.quantum.state import Wavefunction
>>> x = symbols(\'x\', real=True)
>>> L = symbols(\'L\', positive=True)
>>> n = symbols(\'n\', integer=True, positive=True)
>>> g = sin(n*pi*x/L)
>>> f = Wavefunction(g, (x, 0, L))
>>> f.normalize()
Wavefunction(sqrt(2)*sin(pi*n*x/L)/sqrt(L), (x, 0, L))'

def normalize(self):

    const = self.norm
    if (const == oo):
        raise NotImplementedError('The    function    is    not    normalizable!')
    else:
        return Wavefunction(((const ** (-1)) * self.expr), *self.args[1:])
