我正在寻找一个迭代线性系统求解器来计算连续变化的场。为了使模拟正常工作,我需要为每个时间步长重新计算字段(可能需要多次)。幸运的是,我对每个时间步长都有一个很好的初始猜测,所以我最好能把它输入到迭代求解器中。系数矩阵是非常稠密的。
问题是,我在网上检查了几个迭代求解器,如Gmm++、IML++、ITL、DUNE/ISTL等。它们要么用于稀疏系统,要么不提供输入初始猜测的接口(我可能错了,因为我没有时间浏览所有文档)。
所以我有两个问题:1是否有这样的c++求解器可在线使用?2由于系数矩阵可以大到数千,直接求解器是否会比具有良好初始猜测的迭代求解器更快?
太好了,谢谢!
如果在IML++中检查共轭梯度的标头(http://math.nist.gov/iml++/cg.h.txt),你会发现你可以很容易地在你期望得到解决方案的变量中提供解决方案的初始猜测。