Exemplo n.º 1
0
    def __init__(self,
                 nu_max: DistLike,
                 log_tau: DistLike,
                 phi: DistLike = None):
        super().__init__(nu_max, log_tau=log_tau, phi=phi)

        self.units = {
            "a_cz": u.microhertz**3,
            "tau_cz": u.megasecond,
            "phi_cz": u.rad,
        }
        self.symbols = {
            "a_cz": r"$a_\mathrm{BCZ}$",
            "tau_cz": r"$\tau_\mathrm{BCZ}$",
            "phi_cz": r"$\phi_\mathrm{BCZ}$",
        }

        # log units
        for k in ["a_cz", "tau_cz"]:
            log_k = f"log_{k}"
            self.units[log_k] = u.LogUnit(self.units[k])
            self.symbols[log_k] = r"$\log\," + self.symbols[k][1:]

        log_numax = jnp.log10(distribution(nu_max).mean)
        # Rough guess of glitch params
        self.log_a: dist.Distribution = dist.Normal(-4.544 + 2.995 * log_numax,
                                                    0.52)
Exemplo n.º 2
0
    def __init__(self,
                 nu_max: DistLike,
                 log_tau: DistLike,
                 phi: DistLike = None):
        super().__init__(nu_max, log_tau=log_tau, phi=phi)
        self.units = {
            "a_he": u.dimensionless_unscaled,
            "b_he": u.megasecond**2,
            "tau_he": u.megasecond,
            "phi_he": u.rad,
        }
        self.symbols = {
            "a_he": r"$a_\mathrm{He}$",
            "b_he": r"$b_\mathrm{He}$",
            "tau_he": r"$\tau_\mathrm{He}$",
            "phi_he": r"$\phi_\mathrm{He}$",
        }
        # log units
        for k in ["a_he", "b_he", "tau_he"]:
            log_k = f"log_{k}"
            self.units[log_k] = u.LogUnit(self.units[k])
            self.symbols[log_k] = r"$\log\," + self.symbols[k][1:]

        log_numax = jnp.log10(distribution(nu_max).mean)
        # Attempt rough guess of glitch params
        self.log_a: dist.Distribution = dist.Normal(-2.119 + 0.005 * log_numax,
                                                    0.378)
        self.log_b: dist.Distribution = dist.Normal(0.024 - 1.811 * log_numax,
                                                    0.138)
Exemplo n.º 3
0
    def __init__(self, ):
        super().__init__()
        self.introduces_correlated_errors = False
        self.add_param(
            maskParameter(
                name="EFAC",
                units="",
                aliases=["T2EFAC", "TNEF"],
                description="A multiplication factor on"
                " the measured TOA uncertainties,",
            ))

        self.add_param(
            maskParameter(
                name="EQUAD",
                units="us",
                aliases=["T2EQUAD"],
                description="An error term added in "
                "quadrature to the scaled (by"
                " EFAC) TOA uncertainty.",
            ))

        self.add_param(
            maskParameter(
                name="TNEQ",
                units=u.LogUnit(physical_unit=u.second),
                description="An error term added in "
                "quadrature to the scaled (by"
                " EFAC) TOA uncertainty in "
                " the unit of log10(second).",
            ))
        self.covariance_matrix_funcs += [self.sigma_scaled_cov_matrix]
        self.scaled_toa_sigma_funcs += [self.scale_toa_sigma]
Exemplo n.º 4
0
    def __init__(self, ):
        super(ScaleToaError, self).__init__()
        self.category = 'scale_toa_error'
        self.add_param(p.maskParameter(name ='EFAC', units="",
                                       aliases=['T2EFAC', 'TNEF'],
                                       description="A multiplication factor on" \
                                                   " the measured TOA uncertainties,"))

        self.add_param(p.maskParameter(name='EQUAD', units="us",\
                                       aliases=['T2EQUAD'],
                                       description="An error term added in "
                                                  "quadrature to the scaled (by"
                                                  " EFAC) TOA uncertainty."))

        self.add_param(p.maskParameter(name='TNEQ', \
                                       units=u.LogUnit(physical_unit=u.second),\
                                       description="An error term added in "
                                                  "quadrature to the scaled (by"
                                                  " EFAC) TOA uncertainty in "
                                                  " the unit of log10(second)."))
        self.covariance_matrix_funcs += [
            self.sigma_scaled_cov_matrix,
        ]
        self.scaled_sigma_funcs += [
            self.scale_sigma,
        ]
Exemplo n.º 5
0
    def __init__(
        self,
        nu_max: DistLike,
        delta_nu: DistLike,
        teff: Optional[DistLike] = None,
        epsilon: Optional[DistLike] = None,
        seed: int = 0,
        window_width: Union[str, float] = "full",
    ):
        super().__init__(nu_max, delta_nu, teff, epsilon, seed, window_width)

        self._prefix = "null"
        self._divider = "."

        units = {
            "log_k": u.LogUnit(u.dimensionless_unscaled),
        }

        symbols = {"log_k": r"$\log(k)$"}

        null_vars = ["nu", "nu_obs", "nu_bkg"]
        for var_name in null_vars:
            key = self._divider.join([self._prefix, var_name])
            units[key] = self.units[var_name]
            symbols[key] = self.symbols[var_name]

        self.units.update(units)
        self.symbols.update(symbols)