曲面拟合 用MATLAB很容易 用 mathematica 就得从最小二基本原理 来做

原理引用:https://blog.csdn.net/weixin_43319685/article/details/103167458

Clear["Global`*"]  (* //Simplify  *)
b = {-0.0001067708, -0.0000664063, -0.0000480035, -0.0000348958, \
-0.0001170573, -0.0000865234, -0.0000750868, -0.0000685221, \
-0.0000901042, -0.0000675781, -0.0000601273, -0.0000556641, \
-0.0000672526, -0.0000515625, -0.0000462457, -0.0000412457};
deta = 40;
maxdata = 180;
ex11 = Table[{a1, b1}, {a1, deta, maxdata, 
    deta}, {b1, -deta, -maxdata, -deta}];
ex11 = Flatten[ex11, 1];
Length[ex11]
len = Length[b]
ex12 = Table[Flatten[{ex11[[num]], b[[num]]}], {num, 1, len, 1}]
show1 = ListPlot3D[ex12];  (* 原始数据 *)
m = 3;
ex1 = {Table[a1^n, {n, 0, m}], Table[b1^n, {n, 0, m}]};
ex2 = Flatten[ex1](* 生成多项式 *)
ex3 = Table[
   ex2, {a1, deta, maxdata, deta}, {b1, -deta, -maxdata, -deta}];
ex3 = Flatten[ex3, 1];
ex3 // MatrixForm(* 转矩阵查看 *)
Clear[a1, b1] 

a = Table[Flatten[{ex3[[num]], b[[num]]}], {num, 1, len, 1}];
x1 = {a1, b1, c1, d1, a2, b2, c2, d2, -1};
a = a.x1 
a // MatrixForm(* 转矩阵查看 *)
size = Length[a]

ex5 = \!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i = 
     1\), \(size\)]\(a[\([\)\(i\)\(]\)]^2\)\);   (* 求绝对值 最小 *)
ex51 = D[ex5, a1] // Simplify
ex52 = D[ex5, b1] // Simplify
ex53 = D[ex5, c1] // Simplify
ex54 = D[ex5, d1] // Simplify
ex61 = D[ex5, a2] // Simplify
ex62 = D[ex5, b2] // Simplify
ex63 = D[ex5, c2] // Simplify
ex64 = D[ex5, d2] // Simplify
ex70 = Solve[{ex51 == 0, ex52 == 0, ex53 == 0, ex54 == 0, ex61 == 0, 
   ex62 == 0, ex63 == 0, ex64 == 0}, {a1, b1, c1, d1, a2, b2, c2, d2}]
a1 = 0;
ex70

ex70 = {a1, b1, c1, d1, a2, b2, c2, d2} /. ex70
x2 = {1, id, id^2, id^3, 1, iq, iq^2, iq^3};
ex71 = ex70.x2 // Simplify
show1
show2 = Plot3D[ex71, {id, 0, 150}, {iq, 0, -150}, 
  ColorFunction -> "RustTones"]
Show[show1, show2]

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值