CHECK_STABILITY

CHECK_STABILITY

function stability = check_stability(rho,psi,gamma,lambda,epsilon,R1)
        

This function checks the stability of periodic orbits computed from 2D polar reduced dynamics by evaluation of the Jacobian of the hyperbolic fixedpoints of their polar odes.

stability = CHECK_STABILITY(rho,psi,gamma,lambda,epsilon,R1)

See also: FRC_JACOBIAN, FRC_LEVEL_SET

nRho = length(rho);
stability = zeros(size(rho));
for j = 1:nRho
        

The stability is assesed by the eigenvalues of the Jacobian

$$J(\rho)=\left[\begin{array}{cc}\partial_{\rho}a(\rho) & -\rho\left[b(\rho)-m\Omega\right]\\\partial_{\rho}b(\rho)+\frac{\left[b(\rho)-m\Omega\right]}{\rho}
& \frac{a(\rho)}{\rho}\end{array}\right]$$

    if numel(epsilon)>1
        J = frc_Jacobian(rho(j),psi(j),gamma,lambda,epsilon(j),R1);
    else
        J = frc_Jacobian(rho(j),psi(j),gamma,lambda,epsilon,R1);
    end
    trJ = trace(J);
    detJ = det(J);
        

Routh Stability criterion

    if detJ>0 && trJ<0 % asymptotically stable
        stability(j) = 1;
    else % not asymptotically stable
        stability(j) = 0;
    end
        
end
stability = logical(stability);
        
end