def psf_at_energy_and_theta(self, energy, theta):
    '\n        Get `~gammapy.modeling.models.MultiGauss2D` model for given energy and theta.\n\n        No interpolation is used.\n\n        Parameters\n        ----------\n        energy : `~astropy.units.u.Quantity`\n            Energy at which a PSF is requested.\n        theta : `~astropy.coordinates.Angle`\n            Offset angle at which a PSF is requested.\n\n        Returns\n        -------\n        psf : `~gammapy.utils.gauss.MultiGauss2D`\n            Multigauss PSF object.\n        '
    energy = u.Quantity(energy)
    theta = u.Quantity(theta)
    (sigmas, norms) = ([], [])
    pars = {'A_1': 1}
    for interp_sigma in self._interp_sigmas:
        sigma = interp_sigma((theta, energy))
        sigmas.append(sigma)
    for (name, interp_norm) in zip(['scale', 'A_2', 'A_3'], self._interp_norms):
        pars[name] = interp_norm((theta, energy))
    for (idx, sigma) in enumerate(sigmas):
        a = pars[f'A_{(idx + 1)}']
        norm = (((pars['scale'] * 2) * a) * (sigma ** 2))
        norms.append(norm)
    m = MultiGauss2D(sigmas, norms)
    m.normalize()
    return m
Get `~gammapy.modeling.models.MultiGauss2D` model for given energy and theta.

No interpolation is used.

Parameters
----------
energy : `~astropy.units.u.Quantity`
    Energy at which a PSF is requested.
theta : `~astropy.coordinates.Angle`
    Offset angle at which a PSF is requested.

Returns
-------
psf : `~gammapy.utils.gauss.MultiGauss2D`
    Multigauss PSF object.
def psf_at_energy_and_theta(self, energy, theta):
    '\n        Get `~gammapy.modeling.models.MultiGauss2D` model for given energy and theta.\n\n        No interpolation is used.\n\n        Parameters\n        ----------\n        energy : `~astropy.units.u.Quantity`\n            Energy at which a PSF is requested.\n        theta : `~astropy.coordinates.Angle`\n            Offset angle at which a PSF is requested.\n\n        Returns\n        -------\n        psf : `~gammapy.utils.gauss.MultiGauss2D`\n            Multigauss PSF object.\n        '
    energy = u.Quantity(energy)
    theta = u.Quantity(theta)
    (sigmas, norms) = ([], [])
    pars = {'A_1': 1}
    for interp_sigma in self._interp_sigmas:
        sigma = interp_sigma((theta, energy))
        sigmas.append(sigma)
    for (name, interp_norm) in zip(['scale', 'A_2', 'A_3'], self._interp_norms):
        pars[name] = interp_norm((theta, energy))
    for (idx, sigma) in enumerate(sigmas):
        a = pars[f'A_{(idx + 1)}']
        norm = (((pars['scale'] * 2) * a) * (sigma ** 2))
        norms.append(norm)
    m = MultiGauss2D(sigmas, norms)
    m.normalize()
    return m