https://github.com/cran/ftsa
Raw File
Tip revision: 415368d78ea30230e9017d72e83432baec81b1c9 authored by Han Lin Shang on 11 May 2010, 00:00:00 UTC
version 1.7
Tip revision: 415368d
admissible.r
admissible = function (alpha, beta, gamma, phi, m)
{
    if (is.null(phi))
        phi <- 1
    if (phi < 0 | phi > 1 + 1e-08)
        return(0)
    if (is.null(gamma)) {
        if (alpha < 1 - 1/phi | alpha > 1 + 1/phi)
            return(0)
        if (!is.null(beta)) {
            if (beta < alpha * (phi - 1) | beta > (1 + phi) *
                (2 - alpha))
                return(0)
        }
    }
    else {
        if (is.null(beta))
            beta <- 0
        if (gamma < max(1 - 1/phi - alpha, 0) | gamma > 1 + 1/phi -
            alpha)
            return(0)
        if (alpha < 1 - 1/phi - gamma * (1 - m + phi + phi *
            m)/(2 * phi * m))
            return(0)
        if (beta < -(1 - phi) * (gamma/m + alpha))
            return(0)
        P <- c(phi * (1 - alpha - gamma), alpha + beta - alpha *
            phi + gamma - 1, rep(alpha + beta - alpha * phi,
            m - 2), (alpha + beta - phi), 1)
        roots <- polyroot(P)
        if (max(abs(roots)) > 1 + 1e-10)
            return(0)
    }
    return(1)
}
back to top