************************************************************************ ************************************************************************ ************************************************************************ DOUBLE PRECISION FUNCTION QQ(V) C Returns the square of Q(V); this is done for numerical purposes, C so that appropriate action (necessary because of roundoff error) C can be taken if QQ=Q**2 is negative. C Code written by Phillip Helbig, Hamburg Observatory, Sep 1995. ************************************************************************ ************************************************************************ C Declarations ************************************************************************ C input variables from the calling routine (parameter list) C (1 + z) DOUBLE PRECISION V ************************************************************************ C variables in common block C cosmological variables DOUBLE PRECISION LAMBDA, OMEGA, ETA, K COMMON /COSMOL/ LAMBDA, OMEGA, ETA, K C save until the next call SAVE /COSMOL/ ************************************************************************ ************************************************************************ C calculations C Calculates the square of fuction Q(v) needed by the ANGSIZ routine C itself and by ASDRHS; in addition, INICOS uses QQ to make sure C that ZMAX isn't too large due to roundoff error. QQ = OMEGA*V**3 - K*V**2 + LAMBDA ************************************************************************ ************************************************************************ END