Algoritmia - derivacion numerica y diferenciacion numerica

 
Vista:

derivacion numerica y diferenciacion numerica

Publicado por caterine (2 intervenciones) el 20/10/2006 18:10:13
por favor necesitos estos dos programas en c++ o C urgentemente de diferenciacion numerica y derivacion numerica si tienen la de la formula de los 5 puntos mejor. o cualquiera . urgente



caterine
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Programas de diferenciación y derivación numérica en C++: Fórmula de 5 puntos y estándar

Publicado por Alejandro (307 intervenciones) el 07/03/2024 00:14:26
Programa de diferenciación numérica en C++:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <cmath>
 
using namespace std;
 
double calcularDerivadaNumerica(double (*func)(double), double x, double h) {
    return (func(x + h) - func(x - h)) / (2 * h);
}
 
int main() {
    // Función de ejemplo (puedes cambiarla)
    auto f = [](double x) { return x * x; };
 
    // Punto de evaluación y tamaño del paso
    double x = 2.0;
    double h = 0.001;
 
    // Calcular la derivada numérica
    double derivada = calcularDerivadaNumerica(f, x, h);
 
    // Mostrar resultado
    cout << "Derivada numérica en x = " << x << ": " << derivada << endl;
 
    return 0;
}

Programa de derivación numérica con la fórmula de los 5 puntos en C++:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <cmath>
 
using namespace std;
 
double calcularDerivadaNumerica5Puntos(double (*func)(double), double x, double h) {
    return (-func(x + 2 * h) + 8 * func(x + h) - 8 * func(x - h) + func(x - 2 * h)) / (12 * h);
}
 
int main() {
    // Función de ejemplo (puedes cambiarla)
    auto f = [](double x) { return sin(x); };
 
    // Punto de evaluación y tamaño del paso
    double x = 1.0;
    double h = 0.001;
 
    // Calcular la derivada numérica con la fórmula de los 5 puntos
    double derivada5Puntos = calcularDerivadaNumerica5Puntos(f, x, h);
 
    // Mostrar resultado
    cout << "Derivada numérica (fórmula de 5 puntos) en x = " << x << ": " << derivada5Puntos << endl;
 
    return 0;
}

Estos programas en C++ implementan la diferenciación numérica estándar y la derivación numérica utilizando la fórmula de los 5 puntos. Puedes cambiar la función `f` según tus necesidades. ¡Espero que te sean útiles, Caterine!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar