违约修正(violate correction),理学-力学-动力学与控制-理论力学-多体系统动力学,在计算多体系统动力学方程的过程中对约束违约进行控制的方法。多体系统动力学的方程可以由动力学微分方程和约束代数方程联立表示,求解方法一般可以分为增广法和缩并法两类,在仿真过程中一般使用速度约束方程或加速度约束方程,随着积分过程中数值误差的积累,可能会产生位移或速度约束方程不满足的情况,称为违约。因此,必须在其数值计算过程中引入违约修正。违约修正方法可以分为两类:第一类方法是在原有动力学方程的积分格式中引入附加修正项,使得微分方程的积分格式能够与代数方程相容,提高算法的稳定性并减少约束违约,约束违约稳定法是该类方法的典型代表;第二类方法则是在一步或几步积分后,利用约束方程对当前所计算的状态变量进行直接修正,使之在可控精度内满足约束方程。其基本思路是利用约束方程建立状态变量修正量的代数方程,修正状态变量后继续进行数值积分。由于系统状态变量多于约束方程的个数,违约修正一般需要求解一组欠定的非线性方程,相应的求解方法有广义逆方法、最小二乘方法、零空间修正方法等。