// Here are the functions off the top of my head.
// Please test them and let me know of any errors.

/**
  * compute secant
  * @param theta angle in radians
  * @return secant of theta.
  */
public double sec ( double theta )
  {
  return 1.0 / Math.cos( theta );
  }

/**
  * compute cosecant
  * @param theta angle in radians
  * @return cosecant of theta.
  */
public double csc ( double theta )
  {
  return 1.0 / Math.sin( theta );
  }

/**
  * compute cotangent
  * @param theta angle in radians
  * @return cosecant of theta.
  */
public double cot ( double theta )
  {
  return 1.0 / Math.tan( theta );
  }

/**
  * compute arcsecant
  * @param value pure number.
  * @return arcsecant of value in radians
  */
public double asec ( double value )
  {
  return  Math.acos( 1.0 / value );
  }

/**
  * compute arccosecant
  * @param value pure number.
  * @return arccosecant of value in radians.
  */
public double acsc ( double value )
  {
  return Math.asin( 1.0 / value );
  }

/**
  * compute arccotangent
  * @param value pure number.
  * @return cosecant of value in radians.
  */
public double acot ( double value )
  {
  return Math.atan( 1.0 / value );
  }