# Path: blond/utils/bmath.py
# def use_mpi():
# def mpiMode():
# def use_fftw():
# def use_precision(_precision='double'):
# def update_active_dict(new_dict):


from builtins import range, object
from scipy.constants import c, physical_constants
from scipy.special import gamma as gamma_func
from scipy.special import kv, airy, polygamma
from scipy import integrate
from ..utils import bmath as bm
import numpy as np
import mpmath
        self.__omega_R = 2 * np.pi * frequency_R

    # Resonant angular frequency in rad/s
    @property
    def omega_R(self):
        return self.__omega_R

    @omega_R.setter
    def omega_R(self, omega_R):
        self.__frequency_R = omega_R / 2 / np.pi
        self.__omega_R = omega_R

    def wake_calc(self, time_array):
        r"""
        Wake calculation method as a function of time.

        Parameters
        ----------
        time_array : float array
            Input time array in s

        Attributes
        ----------
        time_array : float array
            Input time array in s
        wake : float array
            Output wake in :math:`\Omega / s`
        """

        self.time_array = time_array

# Path: blond/utils/bmath.py
# def use_mpi():
# def mpiMode():
# def use_fftw():
# def use_precision(_precision='double'):
# def update_active_dict(new_dict):


# Path: blond/impedances/impedance_sources.py
from builtins import range, object
from scipy.constants import c, physical_constants
from scipy.special import gamma as gamma_func
from scipy.special import kv, airy, polygamma
from scipy import integrate
from ..utils import bmath as bm
import numpy as np
import mpmath

        self.__omega_R = 2 * np.pi * frequency_R

    # Resonant angular frequency in rad/s
    @property
    def omega_R(self):
        return self.__omega_R

    @omega_R.setter
    def omega_R(self, omega_R):
        self.__frequency_R = omega_R / 2 / np.pi
        self.__omega_R = omega_R

    def wake_calc(self, time_array):
        r"""
        Wake calculation method as a function of time.

        Parameters
        ----------
        time_array : float array
            Input time array in s

        Attributes
        ----------
        time_array : float array
            Input time array in s
        wake : float array
            Output wake in :math:`\Omega / s`
        """

        self.time_array = time_array

        self.wake = np.zeros(self.time_array.shape, dtype=bm.precision.real_t, order='C')