我愿意计算一个不完全明确的函数的Frechet / Gateaux导数,我的问题是:最有效的方法是什么?您建议我使用哪种语言?
准确地说,我的问题是我有一个函数,比如F,它是多维函数对的乘积和(即从R ^ n到R ^ k)的欧几里德范数的平方。
AFAIK,如果我使用Maple或Maxima,他们会要求我明确公式中涉及的功能,而我想让它们抽象化。然后,我需要计算一个Frechet / Gateaux导数,以保持表达式的简单。实际上,当我按标准方式进行时,我开始将欧几里德范数的平方作为一个平方和开发,并且有很多索引。我的目标是使泰勒的发展具有三阶的整数余数,根据我的说法,这个表达式变得人性上不可行(公式长度超过A4页)。
所以我更倾向于使用Frechet / Gateaux衍生产品,这样我就可以保留标量产品而不是总和。
由于所调用的函数与其衍生函数有一些相似之处(由于存在指数),因此只需要知道少量规则。所以我认为我自己可以制作这样一个单一用途的计算机代数系统。
我开始学习LISP,因为我读到它会对我的问题有效,但我现在有点迷失,因为这种语言非常不同而且我仍然习惯用C / Python来思考/ Perl的...
这是另一个问题:你是否有一些关于如何进行符号计算的代数系统的课程或文章的链接(最好是在LISP中)?欢迎任何建议。
非常感谢您的回答。
答案 0 :(得分:0)
我的建议是使用千里马。 Maxima的灵感来自Lisp,并在Lisp中实现,因此使用Maxima将为您节省大量时间和麻烦。如果Lisp适合你的问题,Maxima更是如此。
Maxima允许您在表达式中使用未定义的术语;没有必要定义所有术语。
向Maxima邮件列表(maxima@math.utexas.edu)发送消息,要求提供具体建议。请详细说明您要完成的任务。