1维电缆模型

20视图(30天)
凯特Heinzman
凯特Heinzman 2020年4月5日
评论道: darova 2020年4月6日
当我试图预先分配向量在for循环之前一直给了我一个错误,说大小的输入必须是整数,我困惑,为什么给我这个错误。然后如果我摆脱预先配置,它将抛出一个错误在Vm_num (j) = Vm_num (j) - E * dx;说该指数在位置1是无效的。我怎么解决这个问题?还在计算电缆的稳态方程的x值使用基于给定模型参数?
%脚本数值计算的变化Vm (x, t)产生的
%在一维均匀场电击单畴结构统一的被动的电缆
%的模型
清晰的所有
%模型参数
一个= 0.001;%细胞半径在cm中
L = 1;%在cm中电缆长度
Rm = 5000;%具体膜阻力欧姆*厘米^ 2
厘米= 0.001;%特定膜电容在mF /厘米^ 2
国际扶轮= 500;细胞内的电阻率百分比欧姆*厘米
E = 5;%冲击磁场强度在V /厘米
T = 50;在女士%冲击持续时间
dx = 0.01;%集成步骤在cm中
dt = 20;%我们集成一步
Tm = Rm *厘米;%的时间常数
lamda2 = * Rm / 2 *国际扶轮;
%的节点数量的电缆等于电缆长度除以
%的空间整合的步骤
N = L / dx;
%时间迭代冲击持续时间除以时间集成
%的步骤
TI = T / dt;
% Preallocate数值向量Vm和时间
Vm_num = 0 (N, TI);
时间= 0 (TI);
%我是相对应的索引节点的电缆
i = 1: N
% j是指数
j = 1: TI
%边界条件
如果我= = 1
Vm_num (j) = Vm_num (j) - E * dx;
%边界条件
elseif我= = N
Vm_num (N, j) = Vm_num (N - 1 j) + E * dx;
其他的
Vm_num (i, j + 1) = Vm_num (i, j) + (dt / Tm) * ((lambda2 / dx * dx) * (Vm_num (i + 1, j) 2 * Vm_num (i, j) + Vm_num(张,j)) -Vm_num (i, j));
结束
结束
时间(j + 1) = (j) + dt;
结束
%计算电缆方程的稳态
λ=√lambda2);
Vm_ana =(λ* E) * (sinh (x ? ? ? /λ)/ cosh (L / 2 *λ));
%的阴谋最终数值解Vm (x)和情节分析稳定
%的国家解决电缆方程Vm (x)在同一图
情节(时间,Vm_num);
持有
情节(时间,Vm_ana);
标题(比较分析和数值膜电位随时间的);
包含(“时间(ms)”);
ylabel (膜电位(mV)”);
传奇(“数字虚拟机”,分析虚拟机的);
2的评论
darova
darova 2020年4月6日
使用按钮代码插入

登录置评。

答案(1)

明星黾
明星黾 2020年4月5日
你是 计算 “N” “透明国际” 。他们可能 出现 是整数,但是他们不是。解决办法是强迫他们是整数 修复 功能:
% Preallocate数值向量Vm和时间
Vm_num = 0(修复(N),修复(TI));
时间= 0(1,修复(TI));
如有其他选项 装天花板 , 地板上 然而, 修复 可能是最合适的。
修正显示这个后运行您的代码:
lamda2 = * Rm / 2 *国际扶轮;
和变化:
lambda2 = * Rm / 2 *国际扶轮;
解决它。
然后用这条线发生错误:
Vm_ana =(λ* E) * (sinh (x ? ? ? /λ)/ cosh (L / 2 *λ));
我不知道要做什么。
我将乐意帮助(以及其他任何可能出现的问题)如果你的代码有问题后纠正 “Vm_ana” 计算。
5个评论
汤米
汤米 2020年4月6日
编辑:汤米 2020年4月6日
一些笔记,希望有帮助:
1。不要忘记单位。保持 修复() 是一个好主意,但总50毫秒时间和步骤20微秒的时间,你应该有2500的时间步骤,而不是2。看到我的评论。
2。“阴谋最终数值解Vm (x)和情节分析电缆方程的稳态解Vm (x)在同一图”让我觉得你应该情节Vm_ana / x,以及 最后 Vm_num / x。的意思
情节(x, Vm_num(:,结束));
持有
情节(x, Vm_ana);
而不是
情节(时间,Vm_num);
持有
情节(时间,Vm_ana);
3所示。目前填补Vm_num,你选择一个给定节点(i)和循环(j)的节点,然后移动到下一个节点。但Vm_num的价值(i, j + 1)取决于Vm_num (i + 1, j),这意味着你需要知道的 下一个 节点的Vm_num(从 以前的 时间)。我认为更有意义的所有节点遍历在给定的时间,然后移动到下一个时间,换句话说,开关的顺序循环。

登录置评。

类别

找到更多的在气体动力学帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的