对于大字符串,matlab替代eval

时间:2013-05-01 21:10:09

标签: matlab eval

我需要在matlab中使用一个非常长的字符串来定义一个变量,让它调用它.S包含符号计算的结果,我想在我的matlab代码中使用该结果。 S太长,无法直接复制到代码中,所以我从文件中读取它。我可以使用eval评估S中的表达式,它可以正常工作,但它确实很慢(大约需要15秒)。我需要在1000s内获得不同变量值的S值,所以我需要一种更快的方法来做到这一点。任何想法都会很棒。

1 个答案:

答案 0 :(得分:1)

根据您的主要目标,您可以做几件事。

  • 将表达式转换为脚本并从您的函数中调用它(速度提升将取决于表达式)
  • 如果表达式是相对平滑的函数而没有奇异点,那么您可以为输入参数的多个值预先计算它。然后为剩余的点插入该表。无论如何应该快于15秒。
  • 您可以将两种方式与代码中的草稿/最终开关结合使用插值计算草稿和“最终”运行的确切代码(可能是一夜之间; o)