请教大家一个关于多非线性约束下拟合的问题,
![1stopt 非线性约束拟合]()
自变量: theta
应变量:V
参数: c11, c12, c13, c33, c44
常数: ro
1stopt (v1.5) 的代码如下:
Parameter c11=53.872,c12=10,c13=15,c33=47.424,c44=19.968;
Constant ro=2080;
Function y=sqrt((c44+c11*sin(x)^2+c33*cos(x)^2+sqrt(((c11-c44)^2*sin(x)^2+(c44-c33)^2*cos(x)^2)^2+(c13+c44)^2*sin(2*x)^2))/(2*ro));
c11>c12;
c12>0;
c44>0;
(c11+c12)*c33>2*c13^2;
Data;
0 22.8
0.382227106186758 22.2
0.911061869541040 29.2
1.22696646415201 25.0
1.54461638801498 22.8
1.57079632679490 25.9
拟合结果:
迭代数: 16
计算用时(时:分:秒:微秒): 00:00:00:63
优化算法: 麦夸特法(Levenberg-Marquardt) + 通用全局优化法
计算结束原因: 达到收敛判断标准
均方差(RMSE): 23.7738301499779
残差平方和(SSE): 3391.17
相关系数(R): 0
相关系数之平方(R^2): 0
决定系数(DC): -95.2443593018306
卡方系数(Chi-Square): 130.843543616615
F统计(F-Statistic): 0
参数 最佳估算
---------- -------------
c11 53.872
c12 10
c13 15
c33 47.424
====== 结果输出 =====
No 实测值y 计算值y
1 22.8 1.0000000
2 22.2 1.0000000
3 29.2 1.0000000
4 25 1.0000000
5 22.8 1.0000000
6 25.9 1.0000000
参数拟合结果明显是错误的,而且没有参数c44的估算,计算值y都是1.00。
请问是多个约束条件命令不对吗? |