使用fortran()从MATLAB符号表达式生成FORTRAN代码时出现问题

时间:2015-04-13 22:35:43

标签: matlab fortran

我做了一些符号操作并获得了我的变量z的表达式。我使用以下代码为z生成FORTRAN代码:

fortran(z,'file','FTRN_2Mkt_dfpa1');

程序在大约10分钟后停止,我收到以下错误消息:

??? Error using ==> mupadmex

Error in MuPAD command: Recursive definition [See ?MAXDEPTH]; during evaluation of 'generate::CFformatting'

Error in ==> sym.sym>sym.generateCode at 2169 tk = mupadmex(['generate::' lang], expr, 0);

Error in ==> sym.fortran at 43 generateCode(sym(t),'fortran',opts);

我认为问题是z表达式太长了。 MuPAD软件将这个长表达式视为无限递归操作。我猜测fortran()源文件中的MAXDEPTH设置的级别小于将z表达式转换为FORTRAN所需的级别。如果我的猜测是正确的,有没有办法在fortran()源代码中更改MAXDEPTH?

如果我猜错了,我该怎么做才能为z表达式生成FORTRAN代码?

我真的需要用于z的符号表达式的FORTRAN代码。如果你能帮助我,那就太好了。提前感谢一百万!

Best,Limin

0 个答案:

没有答案