es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Julia Symbolics no puede simplificar expresiones derivadas.

Estoy utilizando el paquete Symbolics en Julia, y parece que no simplifica las derivadas de expresiones.

Por ejemplo:

@variables r
Dr = Differential(r)
simplify(expand_derivatives(Dr((2/r)^2)))

resulta en

(-4(2 / (r^2))) / r

Si en cambio creo la expresión de la derivada manualmente, entonces simplify funciona muy bien.

simplify((-4*(2 / (r^2))) / r)

da como resultado

-8 / (r^3)

como se esperaba.

¿Por qué simplify no funciona correctamente en expresiones creadas a partir de la diferenciación?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El paquete Symbolics en Julia utiliza la técnica de diferenciación automática para generar expresiones derivadas. Sin embargo, este enfoque no siempre resulta en expresiones simplificadas al usar la función simplify. Esto se debe a que simplify está diseñado para trabajar con expresiones algebraicas, y la técnica de diferenciación automática utilizada por Symbolics puede resultar en expresiones complejas que no son algebraicas.

    En tales casos, se recomienda crear manualmente la expresión derivada y luego aplicar simplify para obtener el resultado deseado. Alternativamente, podría intentar usar otras funciones de simplificación proporcionadas por Symbolics u otros paquetes como SymPy.jl para simplificar la expresión generada por la diferenciación automática.

Comments are closed.