是否有用于计算和离散欧拉-拉格朗日方程的软件包?

计算科学 优化
2021-12-13 20:12:37

我有一个能量函数,我想使用变分法进行优化。是否有任何软件包可以自动执行此操作?

据我所知,Maple 和 Mathematic 有一些相关的功能,它们也可以生成 C 代码。但是,我找不到一个可行的例子。是否有任何使用 Mathematica 的可用工作示例?

是否有任何其他专门的软件包可以解决这些问题?

2个回答

当然,问题完全取决于你有什么样的问题。如果你有一个描述悬挂在弹簧上的重物位置的能量泛函,那么欧拉-拉格朗日方程就是一个代数方程。另一方面,如果您有一个使用 ODE 描述的能量方程,例如,当重力作用于链时,链从其端点悬挂的位置,那么您将得到一个两点边值问题。最后,如果你有一个多维问题,那么欧拉-拉格朗日方程就是偏微分方程。

我想说的是,您在欧拉-拉格朗日方程中遇到的问题类型在很大程度上取决于您正在考虑的情况,因此如果不了解更多上下文,就无法回答使用哪种离散化方法的问题。

Mathematica 有VariationalMethods你可能想看看的包: http ://reference.wolfram.com/mathematica/VariationalMethods/tutorial/VariationalMethods.html

有关如何为问题建立 Euler-Lagrange 方程然后使用 Mathematica 解决它们的示例,请参见此处的第一个示例: http ://reference.wolfram.com/mathematica/VariationalMethods/ref/EulerEquations.html