我想优化网格中的顶点位置,并在相关三角形上使用给定的成本函数。该论文给出了一个成本函数,它通过对网格中的三角形求和来评估为实数,这些三角形将顶点连接到一个有效的单纯复形。他们建议使用 L-BFGS 求解器,我想使用 PETSc 进行计算。
PETSc 中的 L-BFGS(和一些其他算法)的求解器接口获取具有当前值的向量,并具有指向残差值的输出向量的指针,具有相同的基数。
如何根据成本函数设计成本函数和残差向量,以根据生成的三角形评估顶点位置的成本?
我像这样填充 f 向量:.
它在返回的向量中放入了什么以获得好的解决方案?我试过了 ...
- 全都一样:(
VecSet(r, cost)
.) - 和作为所有三角形的集合和关系什么时候是三角形的一个顶点.
两者都没有得到好的解决方案。此外,我猜想残差可能需要在 x、y、z 上有所不同,才能获得用于移动顶点的有用梯度。