matlab等值面误差:V必须是3D数组
我尝试使用等值面绘制由隐式函数描述的曲面:matlab等值面误差:V必须是3D数组,matlab,plot,3d,Matlab,Plot,3d,我尝试使用等值面绘制由隐式函数描述的曲面: dvdt0=@(v_i,s_i,w_i)0.1*(-65-v_i)+9*n_i_inf(v_i).^4.*(-90-v_i)... +35*m_i_inf(v_i).^3.*h_i_inf(v_i).*(55-v_i)... +(s_i).*(v_rev_i-v_i) ... +g_M*(w_i.*(-90-v_i)); [v,s,w]=meshgrid(-80:
dvdt0=@(v_i,s_i,w_i)0.1*(-65-v_i)+9*n_i_inf(v_i).^4.*(-90-v_i)...
+35*m_i_inf(v_i).^3.*h_i_inf(v_i).*(55-v_i)...
+(s_i).*(v_rev_i-v_i) ...
+g_M*(w_i.*(-90-v_i));
[v,s,w]=meshgrid(-80:0.1:50,0:0.01:1,1:0.01:1);
val=dvdt0(v,s,w);
fv=isosurface(v,s,w,val,0);
但是,我不断收到错误消息:
Error using isosurface (line 73)
V must be a 3D array.
Error in layer (line 9)
fv=isosurface(v,s,w,val,0);
由于“val”是通过在网格上计算函数得到的,我仔细检查了“val”与v、s、w的大小是否相同,因此我不确定是什么问题。考虑以下几行:
[v,s,w]=meshgrid(-80:0.1:50,0:0.01:1,1:0.01:1);
最后一个参数是1:0.01:1,等于1。
换成
1:0.01:2
比如说