【摘要】:对于残差较大且具有较强的非线性问题,用来代替使目标方程更容易收敛。因为敏感度矩阵是基于扰动理论计算的,所以,每一个迭代步都需要多次运行有限元模型。对于NP个待优化参数,每次迭代需要运行NP+1次有限元程序,因此,单独运行一次有限元程序的时间决定了整体优化所需要的时间。当优化过程停止时,利用优化后参数进行最后一次计算得到最后计算结果。
该程序采用加权最小二次方差方程来评估分析结果:
其中,b为需要优化的参数向量,y为实测结果向量,y′(b)为计算结果向量,ω为权重矩阵,e为残差向量。
非线性回归是该算法中的重要组成部分,本算法中采用修正高斯-牛顿方法来回归参数:
图4-1 优化过程流程图
(www.xing528.com)
其中,d r是用于计算b r+1的中间变量;r是迭代次数;X r是第r次迭代时的敏感度矩阵(X ij=∂y i/∂b j);C为量级对角阵,是用来优化回归过程的参数;ρr为阻尼系数。对于残差较大且具有较强的非线性问题,用来代替使目标方程更容易收敛。
因为敏感度矩阵是基于扰动理论计算的,所以,每一个迭代步都需要多次运行有限元模型。所谓扰动理论,就是在每个迭代步中,独立地对输入参数b-r进行微小的扰动,计算对应于参数变动的结果的扰动,然后根据向前或者中心差分计算敏感度。对于NP个待优化参数,每次迭代需要运行NP+1次有限元程序,因此,单独运行一次有限元程序的时间决定了整体优化所需要的时间。
该算法运用如下两条收敛准则来判断优化结果是否收敛以及何时停止迭代过程:
(1)迭代过程中,最大的参数变化值小于用户定义的数值,则该迭代收敛,停止迭代过程;
(2)目标方程的改变值小于用户定义的数值,则该迭代收敛,停止迭代过程。
当优化过程停止时,利用优化后参数进行最后一次计算得到最后计算结果。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。