| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1616 人关注过本帖
标题:我在编程中碰到的一个问题
只看楼主 加入收藏
gyzjzj
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-4-28
收藏
 问题点数:0 回复次数:0 
我在编程中碰到的一个问题

大家好!!
我在编程中碰到一个问题,是关于非符号~的
这是一个simulink模型中的s函数:
function sys=mdlOutputs(t,x,u)
%输入u1为Tab时间内v1作用时间;u2为Tab时间内v2作用时间;u3为Tab零矢量;u4为Tac时间内v1作用时间;u5为Tac时间内v2作用时间; u6为Tac零矢量;u7为Tpwm时间

h=0;
if (mod(t,u(7))<=0+u(3)/2) %1
h=0;
elseif (mod(t,u(7))<=0+u(3)/2+u(1)) %3
h=~h;
elseif (mod(t,u(7))<=0+u(3)/2+u(1)+u(2)) %5
h=~h;
elseif (mod(t,u(7))<=u(1)+u(2)+u(3)+u(6)/2) %9
h=0;
elseif (mod(t,u(7))<=u(1)++u(2)+u(3)+u(6)/2+u(5)) %11
h=~h;
elseif (mod(t,u(7))<=u(1)++u(2)+u(3)+u(6)/2+u(4)+u(5)) %13
h=~h;
else %7
h=0;
end
end
sys=[h];
运行结果是提示:
Output returned by S-function 'unit_pulse_synchronism' in block 'sparse_rectify_inverter_with_idealsimple/Subsystem2/S-Function3' during flag=3 call must be a real vector of length 1

如果将h=~h改成h=1或者h=0程序就可以运行
按道理matlab 中是可以将这种单变量看成bool变量的,小弟百思不得其解,请哪位高人赐教,小弟在此叩首谢过!!

搜索更多相关主题的帖子: Tac Tab mod elseif 时间 
2006-04-28 22:34
快速回复:我在编程中碰到的一个问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011245 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved