std::ellint_2, std::ellint_2f, std::ellint_2l
| Definido en el archivo de encabezado <cmath>
|
||
double ellint_2( double k, double φ );
float ellint_2f( float k, float φ );
long double ellint_2l( long double k, long double φ );
|
(1) | (desde C++17) |
Promovido ellint_2( Aritmético k, Aritmético φ );
|
(2) | (desde C++17) |
double. Si cualquier argumento es long double, entonces el tipo de retorno Promovido también es long double, de lo contrario el tipo de retorno es siempre double.Parámetros
| k | - | Módulo elíptico o excentricidad (un valor de punto flotante o tipo entero). |
| φ | - | Amplitud de Jacobi (un valor de punto flotante o tipo entero, medido en radianes). |
Valor de retorno
Si no se generan errores, devuelve el valor de la integral elíptica incompleta de segunda especie de k y φ, es decir ∫φ
0√1-k2
sin2
θdθ.
Manejo de errores
Los errores se pueden informar como se especifica en math_errhandling.
- Si el argumento es NaN, se devuelve NaN y no se informa de un error de dominio.
- Si |k|>1, puede generarse un error de dominio.
Notas
Las implementaciones que no son compatibles con C++17, pero son compatibles con ISO 29124:2010, proporcionan esta función si __STDCPP_MATH_SPEC_FUNCS__ está definida por la implementación a un valor de al menos 201003L y si el usuario define __STDCPP_WANT_MATH_SPEC_FUNCS__ antes de incluir cualquier archivo de encabezado de la biblioteca estándar.
Las implementaciones que no son compatibles con ISO 29124:2010 pero son compatibles con TR 19768:2007 (TR1), proporcionan esta función en el archivo de encabezado tr1/cmath y el espacio de nombres std::tr1.
Una implementación de esta función también se encuentra disponible en Boost.Math.
Ejemplo
#include <cmath>
#include <iostream>
int main()
{
double hpi = std::acos(-1)/2;
std::cout << "E(0,π/2) = " << std::ellint_2(0, hpi) << '\n'
<< "E(0,-π/2) = " << std::ellint_2(0, -hpi) << '\n'
<< "π/2 = " << hpi << '\n'
<< "E(0.7,0) = " << std::ellint_2(0.7, 0) << '\n'
<< "E(1,π/2) = " << std::ellint_2(1, hpi) << '\n';
}
Salida:
F(0,π/2) = 1.5708
F(0,-π/2) = -1.5708
π/2 = 1.5708
F(0.7,0) = 0
E(1,π/2) = 1
Véase también
(C++17)(C++17)(C++17) |
Integral elíptica completa de segunda especie. (función) |
Enlaces externos
Weisstein, Eric W. "Integral elíptica de segunda especie." De MathWorld — Un recurso web de Wolfram.