24小时热门版块排行榜    

查看: 990  |  回复: 0

jbsxh

铜虫 (小有名气)

[求助] Matlab 求解微信方程组,遇到反卷积的问题

数据处理的最后一步,是解一个3个微分方程联立的方程组的多个系数。  每一个独立方程中的Y都是实验采集到的随时间变化的信号CA,CB, CC,该信号隐含了仪器响应函数IRF.   如果忽略IRF,直接使用CA,CB, CC去接微分方程组,得到的系数与报道值差别非常大。请问这种情况下,应该如何处理,才能获得正确的微分方程系数?

dCAdt = -k0 * CA;           
dCBdt = k1 *CA - k2*CB+k3CC;  dCCdt = k2 *CA + k2*CB- k3CC;  k1+k2=2.3; k3+k4=5

另一种思路是对CA,CB, CC先进行去卷积的操作。目前又被去卷积的问题困住了。

求大神指点,谢谢!

反卷积的问题如下:

问题简化如下:


步骤1. 成功
用一个指数衰减函数E与一个高斯函数G进行卷积,得到目标函数 F1=conv(E,G).
然后反卷积【q,r】=deconv(F1,G)也可以顺利得到指数函数E;

步骤2. 失败
目标函数F2采用解析方式获得: 同样是用E和G进行卷积。但是奇怪的是,F2和F1在x值较小的位置并不重合。这个感觉很奇怪!原因也不知道。
然后进行反卷积【q,r】=deconv(F2,G),得到的q竟然与原来的F2非常相似,仅是在X轴上进行了移动。

步骤3.失败
对实验数据进行去卷积操作deconv,发现均是无法实现获得正常的结果。

代码如下:
clc
clear all

dx=0.001;
xx=-0.5:dx:10;
xt=0.0:dx:7;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  exponential decay
k1=1/0.179;
PY= (exp(-k1.*(xx))) ;
size(PY)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  gaussian
c=0.0857/2.355;
xc=+0.0233;  
a=1/sqrt(2*pi)/c;
GS_Y = a.*exp(-1.*(xt-xc).*(xt-xc)/2/c/c);
size(GS_Y);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  convolution with E decay and gaussian
x_GS = (xx(1)+xt(1)):dx: ((length(xx)+length(xt)-2)*dx+(xx(1)+xt(1)));
conv_Y = conv(PY,GS_Y); Max_Y = max(abs(conv_Y));  conv_Y = (conv_Y) / Max_Y;      
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  convolution with equation,
X_data = -0.5:dx:10;
KIT_parameters_PRE        =[ 1;       0.0857;    0;            xc; 0.179];

for II=1:length(X_data)
     YY(II) =  KIT_parameters_PRE(3)+KIT_parameters_PRE(1)*(1-erf(-(1.6651/KIT_parameters_PRE(2)).*(X_data(II)-KIT_parameters_PRE(4))+(1.0/KIT_parameters_PRE(5))/(2*(1.6651/KIT_parameters_PRE(2))))).*exp(-(1.0/KIT_parameters_PRE(5)).*(X_data(II)-KIT_parameters_PRE(4))+(1.0/KIT_parameters_PRE(5)).*(1.0/KIT_parameters_PRE(5))./(4*(1.6651/KIT_parameters_PRE(2)).*(1.6651/KIT_parameters_PRE(2))));
end
MAX_YY = max(YY); YY=YY/MAX_YY;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  plot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
[q,r] = deconv(YY,   GS_Y);
X_data_GS = (xt(1)+X_data(1)): dx: ((length(X_data)-length(xt))*dx+(xt(1)+X_data(1)));
subplot(3,1,1)
plot(X_data_GS,q/max(abs(q)),'ro',X_data,YY,'ko' )
axis([-1 2 -0.1 1])

%by curve fitting
[q,r] = deconv(conv_Y,   GS_Y);
X_data_GS = (xt(1)+x_GS(1)): dx: ((length(x_GS)-length(xt))*dx+(xt(1)+x_GS(1)));
subplot(3,1,2)
plot(X_data_GS,q/max(abs(q)),'ro',x_GS,conv_Y,'ko' )
axis([-1 2 -0.1 1])

%compare
subplot(3,1,3)
plot(X_data,YY,'k',x_GS,conv_Y,'r' )
axis([-1 2 -0.1 1])
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jbsxh 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 估计是周四 +3 archvillain 2026-08-18 3/150 2026-08-21 01:48 by jnhyjjm
[基金申请] 基金啊基金 +3 longfie172 2026-08-20 3/150 2026-08-21 00:04 by wuchongjun
[基金申请] 科研孤儿太难了 +14 我4大白菜 2026-08-20 15/750 2026-08-20 22:33 by 袁向阳007
[基金申请] 时间戳又变了 +12 wuchongjun 2026-08-20 17/850 2026-08-20 20:05 by spzhao
[基金申请] 今天系统多次维护,明天很可能放榜! +10 zju2000 2026-08-16 11/550 2026-08-20 20:02 by cl479861084
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 放榜前的不淡定 40+3 snowwithsea 2026-08-19 12/600 2026-08-20 15:56 by lfy8008
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[教师之家] 为什么余额宝的年化利率越来越低?主要原因有哪些? +5 瞬息宇宙 2026-08-15 5/250 2026-08-19 20:23 by super2002521
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见