// cos().
// General includes.
-#include "cl_sysdep.h"
+#include "base/cl_sysdep.h"
// Specification.
#include "cln/float.h"
// Implementation.
-#include "cl_F_tran.h"
-#include "cl_F.h"
+#include "float/transcendental/cl_F_tran.h"
+#include "float/cl_F.h"
#include "cln/integer.h"
#include "cln/lfloat.h"
-#include "cl_LF.h"
+#include "float/lfloat/cl_LF.h"
namespace cln {
const cl_F cos (const cl_F& x)
{
// Methode:
-// Genauigkeit erhöhen,
-// (q,r) := (round x (float pi x)), so daß |r|<=pi/2.
+// Genauigkeit erhöhen,
+// (q,r) := (round x (float pi x)), so daß |r|<=pi/2.
// e := Exponent aus (decode-float r), d := (float-digits r)
// Bei r=0.0 oder e<=-d/2 liefere 1.0
// (denn bei e<=-d/2 ist r^2/2 < 2^(-d)/2 = 2^(-d-1), also
// (sin(s)/s)^2 errechnen, cos(r) = 1-r*s*(sin(s)/s)^2 errechnen.
// Falls q ungerade: Vorzeichenwechsel.
- // Rechengenauigkeit erhöhen und durch pi dividieren:
+ // Rechengenauigkeit erhöhen und durch pi dividieren:
var cl_F cos_r;
if (longfloatp(x)) {
DeclareType(cl_LF,x);