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

lsqcurvefit 拟合

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
对于代码画出来的图如何使用lsqcurvefit 拟合?代码中c为X轴,FF为y轴
! _. v$ P1 i* K function FF0dian_TDdyTC1 @$ h; a3 @: {5 ^2 s, @# A
clc
. v' ?4 o7 \# |5 E1 K4 |+ O* u' XTC=283:367;) S6 e# c5 K  ^7 q
% 0.025<vaDaRE<14  0.3<eps<0.55  0.29<dtad0<0.7  32<活化能<42  Co=UDa/eps
7 C7 o. t: W8 }" `VADARE=14;+ L, C: D7 ?, o( i  N
EPS=0.55;dtad0=0.29;UDA=10*EPS;5 X1 P4 j$ d9 |% R
RH=1;Y=36;
( O- C6 V& G0 @8 BTR=300;TD=TC; ) |/ S" {7 X7 O3 f  @  j6 }
YD=TD/TR;
# `7 |* d! t* M) x* C6 E0 o4 U8 Nfor i=1:85, O" {- k$ W, \3 Z7 ^
start_t=0;end_t=2;
0 n) p% G# K" d0 U" Roptions=odeset('RelTol',1e-8,'AbsTol',[1e-9 1e-9]);3 T, [& h  T3 N! q
[T,y]=ode45(@SBR1,[start_t end_t],[0,277/300],options,TC(i));* H0 m& h8 ]1 d" ?7 G3 C+ d$ b
a=max(y(:,2));0 _9 C& }; O, ~4 W; R
b=y(:,2)==a;
' k# P- Y7 C; h6 m# r) y/ Mc=TC(i)./TR;( N7 ^3 f- m# z7 b1 I' K
T(b);
0 U( ^3 G9 Q, O4 e; e% Z$ X  E if T(b)<=12 C; l9 f( I! N( I0 C) D6 o* c
     YTA=c+1.05*dtad0/(UDA*(1+EPS*T(b))+EPS*RH);4 I2 x2 h: \9 D& `
     FF(i)=a-YTA;% ~) f! s5 Y( }) C
else3 T3 Z0 D' E  {8 w2 C4 o
     YTA=c+1.05*dtad0/(UDA*(1+EPS)+EPS*RH);
" z% S5 l, w6 j9 h4 ~     FF(i)=a-YTA;* S9 ]. o* ~2 D
end+ k" |2 Y  ^5 r2 j3 R
end
) @  V  {. t2 a$ x4 F* M! lfigure;( t1 U( v- E3 G9 R0 f# K8 n1 I
plot(TC/TR,FF,'.');hold on8 d. v8 C5 V# M1 ]8 v# b
end
( H! T: M. Y' T
2 R8 v0 \' j8 f7 Zfunction dy= SBR1(t,y,TC)- _/ n1 q; V; c/ Z. u# B& m
dy=zeros(2,1);
# x3 q4 I. H4 E8 j, P4 X6 nVADARE=14;
& J9 h8 G1 |! T! iEPS=0.55;dtad0=0.29;UDA=10*EPS;# q4 ~3 [# p2 Q- V% t9 j$ K0 s1 N
RH=1;Y=36;9 J4 B- r6 G% I/ ~1 i
TR=300;TD=TC; YD=TD/TR;
4 {' `: `+ M; A, e! ~2 \if t<=1
7 k" @6 m  k! o+ Q% N    YCE=((UDA*(1+EPS*t)*TC+RH*EPS*TD)/(UDA*(1+EPS*t)+RH*EPS))/TR;
- q8 N* |# l) c    dy(1) = VADARE*(t-y(1))*(1-y(1))*exp(Y*(1-1/y(2)));
$ `- Q2 P4 X/ y" v8 M/ V    dy(2) = ((dtad0*dy(1)-(UDA*(1+EPS*t)+RH*EPS)*(y(2)-YCE)))/(1+RH*EPS*t);% o8 F/ x1 M' a# R7 {( h
end/ c7 D) ]0 p8 v/ E/ T" X
if t>10 T' S, _8 [" D
   YCE=((UDA*(1+EPS)*TC+RH*EPS*TD)/(UDA*(1+EPS)+RH*EPS))/TR;
: K( K- T- u% ]: p   dy(1) = VADARE*(1-y(1))*(1-y(1))*exp(Y*(1-1/y(2)));
4 d; _' ?! B0 C# }   dy(2) = ((dtad0*dy(1)-(UDA*(1+EPS)+RH*EPS)*(y(2)-YCE)))/(1+RH*EPS);7 o0 ~. D8 W; y( ~; G& P3 p% o
end
4 f8 N  N' K3 D% Y4 P; p1 Qend
1 H) `8 g4 s2 K/ U6 K
, G- S, j' {0 O' ^9 N4 x4 @; h1 X8 R' J" 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产生的误差最小。
. p9 `/ V- Y: g: X
6 n, y/ j) Z% D4 J" q6 `1 v最简单的例子,已知模型:电压U = 电阻R * 电流I,且不知道接在某简单电路上的电阻到底是多大。那么通过若干组实验,以电流I为输入(比如调整滑动变阻器来控制该电路中的电流数值),同时测量这个电阻两端的电压U作为输出,通过这若干组U与I的数值,可以估计出一个满足模型的电阻R值。控制输入I、测量输出U、以此二者来估计参数R。& [, x+ T* u7 c; H0 M  l: j
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-6 11:17 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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