No tengo idea de cómo utilizar la programación en C para realizar la derivación de funciones elementales.
Las funciones elementales son funciones potencia, funciones exponenciales, funciones logarítmicas, funciones trigonométricas, funciones trigonométricas inversas y constantes mediante un número limitado de operaciones racionales (suma, resta, multiplicación, división, exponenciación de números racionales, números racionales A función que se genera por el compuesto de la tercera raíz) y funciones de orden finito y se puede expresar mediante una expresión analítica en el dominio de la definición.
Entonces los tipos de funciones se enumeran como:
monomial_type, exp_type, ln_type, sin_type, cos_type, tan_type, arcsin_type, arccos_type, arctan_tpye (solo se consideran aquellas que tienen e como base aquí por el momento) Funciones exponenciales y logarítmicas)
Utilice - para separar cada parte (la función de coincidencia construida por (ln(x))-2*x^2 3, analizada en sin(ln( x)) y -2*x^2 y 3
La estructura de datos es similar:
{número de partes, parámetros de la primera parte, parámetros de la segunda parte... .}
Entonces la estructura de datos de cada parte es similar a {número de capas, {coeficiente de la primera capa, tipo de función de la primera capa, tipo de función de la primera capa Grado de potencia}, {segundo coeficiente de nivel, tipo de función de segundo nivel, grado de potencia de primer nivel}.... }
Entonces f(x)=sin(ln(x))-2 hace un momento *x^2 3 es un ejemplo
sin(-0.5*ln(x)):
{2, {1, tipo_sin, 0, 1}, {-0.5, tipo_ln,1},{1,tipo_monomio ,2}}
-2*x^2:
{1,{-2,monomial_type,2}}
3:
{1, {3, monomial_type, 0}}
PD: Las constantes se pueden clasificar como funciones de potencia con grado 0.
Equivalente a la estructura de datos correspondiente a f(x)=sin(ln(x))-2*x^2 3:
{3, {2, {1, sin_type ,0,1},{-0.5,ln_type,1},{1,monomial_type,2}}, {1,{-2,monomial_type,2}},{1,{3,monomial_type,0}}}
Luego opere estas estructuras de datos de adentro hacia afuera de acuerdo con las reglas de derivación
Similar a la estructura de datos que se describe a continuación usando c struct:
struct elem_function;
struct elem_func_part;
struct elem_func_layer;
struct elem_function
{
unsigned int part_cnt
p>elem_func_part partes[MAX_SIZE];
};
struct elem_func_part
{
unsigned int Layer_cnt
p>capas elem_func_layer[MAX_SIZE];
}
estructura elem_func_layer
{
doble coef;
p>
tipo de func_type;
doble exp;
}
typedef unsigned int func_type;
#define monomial_type 0x0;
#define exp_type 0x1;
....