Espacios de nombres
Variantes
Acciones

std::cyl_neumann, std::cyl_neumannf, std::cyl_neumannl

De cppreference.com
 
 
 
 
Definido en el archivo de encabezado <cmath>
double      cyl_neumann( double ν, double x );

float       cyl_neumannf( float ν, float x  );

long double cyl_neumannl( long double ν, long double x );
(1) (desde C++17)
Promovido   cyl_neumann( Aritmético ν, Aritmético x );
(2) (desde C++17)
1) Calcula la función cilíndrica de Neumann (también conocida como función de Bessel de segunda especie o función de Weber) de ν y x.
2) Un conjunto de sobrecargas o una plantilla de función para todas las combinaciones de argumentos de tipo aritmético no cubiertas por (1). Si cualquier argumento tiene tipo entero, se convierte a 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.

Contenido

[editar] Parámetros

ν - El orden de la función.
x - El argumento de la función.

[editar] Valor de retorno

Si no se generan errores, devuelve el valor de la función cilíndrica de Neumann (función de Bessel de segunda especie) de ν y x; es decir N
ν
(x) =
J
ν
(x)cos(νπ)-J
(x)
sin(νπ)
(donde J
ν
(x)
es std::cyl_bessel_j(ν,x)) para x≥0 y ν no entera; para una ν entera se usa un límite.

[editar] 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 ν>=128, el comportamiento está definido por la implementación.

[editar] 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.

[editar] Ejemplo

#include <cassert>
#include <cmath>
#include <iostream>
#include <numbers>
 
const double π = std::numbers::pi; // or std::acos(-1) in pre C++20
 
// Para calcular la función cilíndrica de Neumann vía la función cilíndrica de Bessel de
// primera especie tenemos que implementar la J₋ᵥ, ya que la invocación directa de
// std::cyl_bessel_j(ν,x), de acuerdo con la fórmula anterior, genera 'std::domain_error'
// para una ν negativa.
// Mal argumento en __cyl_bessel_j.
 
double J₋ᵥ (double ν, double x) {
    return std::cos(-ν*π) * std::cyl_bessel_j(-ν,x)
          -std::sin(-ν*π) * std::cyl_neumann(-ν,x);
}
 
double J₊ᵥ (double ν, double x) { return std::cyl_bessel_j(ν,x); }
 
double Jᵥ (double ν, double x) { return ν < 0.0 ? J₋ᵥ(ν,x) : J₊ᵥ(ν,x); }
 
int main()
{
    std::cout << "verificaciones al azar para ν == 0.5\n" << std::fixed << std::showpos;
    double ν = 0.5;
    for (double x = 0.0; x <= 2.0; x += 0.333) {
        const double n = std::cyl_neumann(ν, x);
        const double j = (Jᵥ(ν, x)*std::cos(ν*π) - Jᵥ(-ν, x)) / std::sin(ν*π);
        std::cout << "N_.5(" << x << ") = " << n << ", calculado vía J = " << j << '\n';
        assert(n == j);
    }
}

Salida:

verificaciones al azar para ν == 0.5
N_.5(+0.000000) = -inf, calculado vía J = -inf
N_.5(+0.333000) = -1.306713, calculado vía J = -1.306713
N_.5(+0.666000) = -0.768760, calculado vía J = -0.768760
N_.5(+0.999000) = -0.431986, calculado vía J = -0.431986
N_.5(+1.332000) = -0.163524, calculado vía J = -0.163524
N_.5(+1.665000) = +0.058165, calculado vía J = +0.058165
N_.5(+1.998000) = +0.233876, calculado vía J = +0.233876

[editar] Véase también

Funciones cilíndricas de Bessel regulares modificadas.
(función) [editar]
Funciones cilíndricas de Bessel de primera especie.
(función) [editar]
Funciones cilíndricas de Bessel irregulares modificadas (o de segunda especie).
(función) [editar]

[editar] Enlaces externos

Weisstein, Eric W. "Función de Bessel de segunda especie." De MathWorld — Un recurso web de Wolfram.