找回密码
 注册
关于网站域名变更的通知
查看: 510|回复: 3
打印 上一主题 下一主题

lsqcurvefit 拟合

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-2-22 11:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
对于代码画出来的图如何使用lsqcurvefit 拟合?代码中c为X轴,FF为y轴; p. h5 Y0 Y# {9 b3 ?  C
function FF0dian_TDdyTC0 a+ i2 o9 G( v3 x5 P0 b; v
clc% E: _. ?9 K6 W6 H( c
TC=283:367;
- i+ g3 e/ X5 _: E* G  m1 y% 0.025<vaDaRE<14  0.3<eps<0.55  0.29<dtad0<0.7  32<活化能<42  Co=UDa/eps
3 `( k5 W/ p7 {0 i' ?1 XVADARE=14;
! v( \' ]5 M. F6 pEPS=0.55;dtad0=0.29;UDA=10*EPS;
/ A& a, t4 G+ hRH=1;Y=36;
" `1 {0 X- @. zTR=300;TD=TC; ( h% U) E$ M* G, A# W
YD=TD/TR;
& Q6 |) N& i% e9 A8 J6 ~for i=1:85
+ @, v, }% G* D, Z9 H% Nstart_t=0;end_t=2;
: W2 ^1 t. P/ v: B+ z$ Foptions=odeset('RelTol',1e-8,'AbsTol',[1e-9 1e-9]);- X  c: W, I. G, C1 q
[T,y]=ode45(@SBR1,[start_t end_t],[0,277/300],options,TC(i));
) X& o$ {( @7 ~. U* S2 {' ca=max(y(:,2));( U" B9 V" U0 H) A" l" a0 K
b=y(:,2)==a;
, H0 l0 P+ k+ f8 ]3 L9 Rc=TC(i)./TR;1 E+ B# y& l+ V9 W6 y. D
T(b);) C3 m( R$ Y0 i7 b0 l: u
if T(b)<=11 Q1 ]7 w& ~; T- l& F/ r
     YTA=c+1.05*dtad0/(UDA*(1+EPS*T(b))+EPS*RH);) t' V+ y0 S) k
     FF(i)=a-YTA;3 ~  J; M# y( w# b3 ~
else  K$ P" D5 d) U( D2 F
     YTA=c+1.05*dtad0/(UDA*(1+EPS)+EPS*RH);
9 s- Q4 K) D: g. `* j     FF(i)=a-YTA;
' n0 Q3 Z3 b, z3 b end
: \: L9 L! U! I/ m# cend
. H  h" a5 ~7 B! L2 O+ Sfigure;
2 J3 U3 M9 A8 d) rplot(TC/TR,FF,'.');hold on9 p/ Q1 C: l6 A1 d8 U
end; l" s) s2 X! c7 T7 W

4 m/ P' v; I6 Z* y6 x, q% d: L4 ffunction dy= SBR1(t,y,TC)9 d: L* [6 G0 h% P' E/ {3 ?5 b
dy=zeros(2,1);3 }, d% Z& X4 f% p* s) @6 U( b" c
VADARE=14;
0 Z. Y' M3 w* X2 w) iEPS=0.55;dtad0=0.29;UDA=10*EPS;
! H/ b/ r. f  b; RRH=1;Y=36;
; c$ J9 M" g: Z# n2 B0 `TR=300;TD=TC; YD=TD/TR;% p& y7 u9 H: M# v* L4 o
if t<=1
% w- e4 \: u  ^8 g7 O    YCE=((UDA*(1+EPS*t)*TC+RH*EPS*TD)/(UDA*(1+EPS*t)+RH*EPS))/TR;6 ~- l  d6 l* y6 K- b$ u! P
    dy(1) = VADARE*(t-y(1))*(1-y(1))*exp(Y*(1-1/y(2)));
7 f1 i# H- y0 L3 S! s    dy(2) = ((dtad0*dy(1)-(UDA*(1+EPS*t)+RH*EPS)*(y(2)-YCE)))/(1+RH*EPS*t);' R! c- i: G4 u, m
end
: X+ X6 ?8 l; a, \5 _if t>1; W+ C$ B' d2 {, M
   YCE=((UDA*(1+EPS)*TC+RH*EPS*TD)/(UDA*(1+EPS)+RH*EPS))/TR; / J" P0 k4 j" @9 N7 _1 A7 c- c
   dy(1) = VADARE*(1-y(1))*(1-y(1))*exp(Y*(1-1/y(2)));# z$ \( ]( j. h& [) `6 [
   dy(2) = ((dtad0*dy(1)-(UDA*(1+EPS)+RH*EPS)*(y(2)-YCE)))/(1+RH*EPS);# _+ k0 n6 G) z$ n/ Z
end$ \+ s5 x5 X+ x6 ], Y
end
& n# s6 p9 O7 [) e
- l0 O( W1 m6 y4 j" \- o) H
$ k; \1 V$ V2 W. H4 O: s

该用户从未签到

2#
发表于 2021-2-22 13:02 | 只看该作者
帮你顶一下

该用户从未签到

3#
发表于 2021-2-22 13:04 | 只看该作者
请把待拟合的数据、哪些是待拟合参数等等都给出

该用户从未签到

4#
发表于 2021-2-22 13:15 | 只看该作者
所谓拟合,指的是已知形如 Output_Y = Function( Input_X, Parameters_C ) 这样的函数关系(其中Input_X为实验的若干控制变量,同时也是函数的输入;Parameters_C为待拟合参数;Output_Y为实验结果,同时也是函数的输出),给出Input_X与Output_Y 作为已知,求一组合适的Parameters_C数值使模型Function产生的误差最小。
2 [: N! J4 T3 A. s4 Q, a$ I0 u3 e; }. M; Z# Y: i# R3 k" W) r
最简单的例子,已知模型:电压U = 电阻R * 电流I,且不知道接在某简单电路上的电阻到底是多大。那么通过若干组实验,以电流I为输入(比如调整滑动变阻器来控制该电路中的电流数值),同时测量这个电阻两端的电压U作为输出,通过这若干组U与I的数值,可以估计出一个满足模型的电阻R值。控制输入I、测量输出U、以此二者来估计参数R。
' z, @0 \- S# i) ^3 b) \
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 23:42 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表