小编Pra*_*ava的帖子

做迭代方案的最佳方法

我希望以前没有问过,如果是的话,我道歉.

编辑:为清楚起见,将使用以下表示法:矩阵的粗体大写,矢量的粗体小写和标量的斜体.

假设x0是向量,AB是矩阵函数,f是向量函数.

我正在寻找在Mathematica中执行以下迭代方案的最佳方法:

A0 = A(x0), B0=B(x0), f0 = f(x0)
x1 = Inverse(A0)(B0.x0 + f0)

A1 = A(x1), B1=B(x1), f1 = f(x1)
x2 = Inverse(A1)(B1.x1 + f1)

...
Run Code Online (Sandbox Code Playgroud)

我知道for-loop可以做到这一点,但我对Mathematica并不熟悉,我担心这是最有效的方法.这是一个合理的担忧,因为我想定义一个函数u(N):=xN并在进一步的计算中使用它.

我想我的问题是:

什么是最有效的方案编程方式?

RecurrenceTable一种方法吗?

编辑

这比我想的要复杂一点.我提供了更多细节,以便获得更全面的回复.

在重复之前,我在理解如何编写函数A,Bf时遇到问题.

矩阵的时间步长的功能DT = 1/T和空间步骤DX = 1/M,其中Ť中号是点在{数0 <X <1 ,0 <T }区域.对于向量函数 …

iteration for-loop wolfram-mathematica

3
推荐指数
1
解决办法
363
查看次数

标签 统计

for-loop ×1

iteration ×1

wolfram-mathematica ×1