【发布时间】:2011-10-15 17:08:11
【问题描述】:
我需要在 Mathematica 函数 Series[ ] 中输入一个变量,比如 var,如下所示:Series[A^2+B^2+C^2, var]。 Series[ ] 的语法如下:
Series[f, {x, x_0, n}] 为 f 生成一个关于点 x=x_0 的幂级数展开以阶 n.
Series[f, {x, x_0, n}, {y, y_0, m}, ...] 依次找到关于 x、y 等的级数展开式。
因为我并不总是在一维中计算 Series[ ](即,B 和 C 在每次迭代中并不总是变量),var 必须正确格式化以适应维度需求。需要注意的是,Mathematica 喜欢列表,因此任何退化的表都会有一组外部 {}。
假设我之前的代码生成了以下两组集合:
表[1]= {{A, 0, n}};
表[2]= {{A, 0, n}, {B, 0, m}}; .
我最好的想法是使用字符串操作(对于 i= 2):
string = ToString[table[i]]; .
str = StringReplacePart[string, {" ", " "}, {{1}, {StringLength[string], StringLength[string]}}]
下一步是将str 转换为var 之类的表达式并通过var= ToExpression[str] 执行Series[A^2 + B^2 + C^2, var],但这会返回以下错误:
ToExpression::sntx:“{A, 0, n}, {B, 0, m}”中或之前的语法无效。
$失败
帮助将str 正确地转换为表达式或提出另一种处理此问题的方法。
【问题讨论】:
标签: string wolfram-mathematica expression multidimensional-array taylor-series