ELWE 3CW "01 March 2010" "mathcw-1.00"

Table of contents


NAME

elwef, elwe, elwel, elwew, elweq, elwell, elwedf, elwed, elwedl, elwedll - Weierstrass elliptic function support routines

SYNOPSIS

cc [ flags ] -I/usr/local/include file(s) -L/usr/local/lib -lmcw [ ... ]

#include <mathcw.h>

extern void elwef (float *pe1, float *pe2, float g2, float g3);

extern void elwe (double *pe1, double *pe2, double g2, double g3);

extern void elwel (long double *pe1, long double *pe2, long double g2, long double g3);

extern void elwew (__float80 *pe1, __float80 *pe2, __float80 g2, __float80 g3);

extern void elweq (__float128 *pe1, __float128 *pe2, __float128 g2, __float128 g3);

extern void elwell (long_long_double *pe1, long_long_double *pe2,
                    long_long_double g2, long_long_double g3);

extern void elwedf (decimal_float *pe1, decimal_float *pe2,
                    decimal_float g2, decimal_float g3);

extern void elwed (decimal_double *pe1, decimal_double *pe2,
                   decimal_double g2, decimal_double g3);

extern void elwedl (decimal_long_double *pe1, decimal_long_double *pe2,
                    decimal_long_double g2, decimal_long_double g3);

extern void elwedll (decimal_long_long_double *pe1, decimal_long_long_double *pe2,
                    decimal_long_long_double g2, decimal_long_long_double g3);

NB: Functions with prototypes containing underscores in type names may be available only with certain extended compilers.


DESCRIPTION

Given g2 and g3, which are the coefficients in the Weierstrass cubic polynomial C(t) = 4 * t**3 - g2 * t - g3, where the sum of the roots is zero, compute the two largest roots e1 and e2. The third root is then implicitly determined from -(e1 + e2).

For the reverse conversion, see elwg(3CW0.

See M. Abramowitz & I. A. Stegun, Handbook of Mathematical Functions, Chapter 18, for definitions of the Weierstrass elliptic, sigma, and zeta functions.


RETURN VALUES

Return the roots e1 and e2 through the pointer arguments, but suppress storage if the corresponding pointer is NULL.

ERRORS

If any argument is a NaN, set errno to EDOM and set the two results to that argument.

SEE ALSO

elk(3CW), elkm1(3CW), elq(3CW), elq1p(3CW), elqc(3CW), elqc1p(3CW), elwdp(3CW), elwg(3CW), elwip(3CW), elwk(3CW), elwo(3CW), elwp(3CW), elws(3CW), elwz(3CW),