在 MATLAB 中求解约束线性和非线性方程组

计算科学 matlab 有限元 非线性方程 约束优化
2021-12-06 00:48:24

在 MATLAB 中求解约束线性和非线性方程组

我正在使用直接刚度法在 MATLAB 中解决 FEM 问题。该问题现在被表述为一个由 nn 个线性方程组组成的系统:

KU=F要么CF=UC=K1.

该问题以 3-Dd 形式表示,并具有 200 多个节点。该模型用作变形估计器,力始终是输入和变形输出。所以有很多线性方程。现在这个问题需要扩展,需要实现两种类型的约束。一些节点必须受到约束,以便它们只能围绕给定点做圆周运动。并且某些节点必须以最大变形量绑定。

总共将有数百个方程形式的方程:

a1X(1)+a2X(2)+F(1)=0

大约 10 个非线性形式的等式约束,例如(也可以是正弦曲线):

X(1)2+X(2)2=L

和形式的 10 个不等式约束:

X(1)<30π/180

同时求解具有此类约束的非线性方程组的最佳方法是什么?可以使用 fsolve 吗?还是fmincon?我一直在研究求解器,但我找不到关于什么求解器可以同时处理所有这些方程类型以及什么在计算时间方面最有效的可靠结论。

0个回答
没有发现任何回复~