我有一个.mat文件中的实验数据和一个用dymola编写的模型 . 我使用dymolaM.m文件将命令从matlab发送到dymola . 通过这种方式,我可以使用matlab来优化我的模型的参数 . Matlab从.mat文件中读取数据,以正确的方式初始化dymola,让dymola模拟模型,读取dymola的输出并将其与实验数据进行比较 .

这一切都适用于诡计,但如果我重复matlab dymola连接太多我总是得到以下错误:

??? Error using ==> ddeexec

The first argument 'channel' is not valid.

Error in ==> dymolaM at 59

status = ddeexec(DymolaChannel, deblank(command(i,:)), '', timeout);

我尝试重复完全相同的命令200次 . 我总是在迭代26得到错误 .

我该怎么办?这是dymolaM.m文件的代码

function res=dymolaM(command, value)

% Executes a command optionally followed by a value in Dymola.

% Dymola is started if not already running.

% Version 1.0, 1997-11-14

% Version 1.1, 1999-06-12

% Copyright (C) 1997-2001 Dynasim AB.

% All rights reserved.

DymolaChannel = ddeinit('dymola', ' ');

if DymolaChannel == 0,

pause(1);

DymolaChannel = ddeinit('dymola', ' ');

if DymolaChannel == 0,

dymola = getenv('DYMOLA');

v=version;

if (isempty(dymola) & v(1,1)>='5')

if v(1,1)>='7'

[st,I]=dbstack('-completenames');

else

[st,I]=dbstack;

end

if v(1,1)>='7'

currentfile=st(I).file;

else

currentfile=st(I).name;

end

I=find(currentfile=='\' | currentfile=='/');

currentfile=currentfile(1:(max([1,I(1:end-1)])-1));

dymola=currentfile;

end

if ~isempty(dymola)

dymola=[dymola,'\bin\'];

end

disp('Starting Dymola - Wait');

fquote = '';

if strcmp(computer, 'PCWIN') | strcmp(computer, 'PCWIN64')

fquote = '"';

end;

dos([fquote,dymola,'Dymola',fquote,' &']);

pause(10);

DymolaChannel = ddeinit('dymola', ' ');

disp('Dymola started');

else

disp('Worked around problem communicating with Dymola');

end

end

if nargout>0

res=zeros(size(command,1),1);

end

if DymolaChannel == 0,

disp('Error starting Dymola');

elseif nargin > 0,

for i=1:size(command,1)

timeout=4000*1000; % Can always kill dymola

if nargin == 1,

status = ddeexec(DymolaChannel, deblank(command(i,:)), '', timeout);

elseif nargin == 2,

status = ddeexec(DymolaChannel, [deblank(command(i,:)), num2str(value(i))], '', timeout);

end

if nargout==0

if status == 0,

error('Invalid Dymola command.');

end

else

res(i)=status;

end;

end

ddeterm(DymolaChannel);

end

matlab使用一段时间后,matlab dymola连接失败一段时间后相关推荐

  1. wifi连接一段时间才能上网_Win7连接Wifi一段时间后就掉线的解决方法

    智能时代,使用笔记本电脑.手机.平板的人们越来越多,想要让这些设备都能上网,就需要用到Wifi无线网络,因此很多家庭都会安装无线路由器,但是无线网络的掉线问题一直是不好解决,特别是在Win7系统下,不 ...

  2. 【ubuntu20.04】安装百度输入法和搜狗输入法之后,有登陆界面,登陆之后黑屏,只有鼠标可以移动,点击无效,长时间等待提示“连接失败,请注销后重试”

    参考文章 https://blog.csdn.net/hgtjcxy/article/details/90645838 步骤如下: ctrl+alt+F4 进入命令行的界面,备注:F2-F7 自己尝试 ...

  3. mysql装完后navicat无法连接_重装mysql后导致Navicat连接失败

    今天重装了mysql数据库,然后再使用navicat去连接数据库的时候,一直报错 1251 Client does not support authentication protocol reques ...

  4. 安装网站+服务器连接失败,为什么我都安装完成后是服务器连接失败啊

    解决用友T3格式与数据的切换,关键字里的录入是灰化解决用友T3格式与数据的切换,关键字里的录入是灰化 用友T3格式与数据的切换,关键字里的录入是灰化.碰到这种问题,怎么办?首先,我们在碰到这种情况下, ...

  5. 安装宝塔面板后原ssh连接失败问题及解决

    问题: 安装宝塔面板后发现原ssh连接失败 原因: 宝塔面板自带一个单独的防火墙, 默认只放行22端口作为ssh 连接端口,如果之前为了服务器安全改过ssh连接端口,那么该端口就会被这第二个防火墙的放 ...

  6. navicat premium连接失败-修改ssh密码后,解决mysql 连接 ssh 的时候出现错误

    mac navicat 修改连接ssh时提示 "The server key has changed. Either you are under attack or the administ ...

  7. WindowsServer2012修改用户名后远程桌面连接失败

    为了安全,将WindowsServer2012的内置管理员Administrator名字改掉了. 修改之前,远程桌面连接是正常的. 修改之后,提示"发生身份验证错误.给函数提供的标志无效&q ...

  8. nginx重启后重新连接提示连接失败

    一看到网站连接失败是绝望的.一开始还以为是nginx停止的原因,那nginx重启了一遍又一遍发现无济于事 /usr/local/webserver/nginx/sbin/nginx -s reload ...

  9. matlab如何找到音乐节拍,beatTrackMaster matlab实现的节拍感知音乐工具。可以 较有 规律的一小段 当做ma 238万源代码下载- www.pudn.com...

    文件名称: beatTrackMaster下载 收藏√  [ 5  4  3  2  1 ] 开发工具: matlab 文件大小: 4455 KB 上传时间: 2013-04-30 下载次数: 11 ...

最新文章

  1. 易生信群体和单细胞转录组专题第6期于5月10日在北京开课了
  2. Python数据处理篇之Matplotlib系列(六)---plt.hist()与plt.hist参数详解
  3. vue方法传值到data_vue组件传值的几种方式
  4. VUE—从入门到飞起(五)
  5. k8s提交镜像到harbor仓库
  6. 备份mysql的批处理命令
  7. superslide 学习笔记
  8. halcon rectangle1_domain缩减图像域为矩形
  9. 汇编语言之标志寄存器
  10. 处理百万级以上的数据提高查询速度的方法
  11. 中国电信学院c语言题库,电脑题库试题精编版.doc
  12. 95-10-080-启动-replicaManager副本管理器
  13. VS2008 Qt Designer 中自定义信号槽
  14. shiro 同时实现url和按钮的拦截_Shiro是如何拦截未登录请求的(一)
  15. 小银行忍痛放弃资管业务? 转型渠道代销是大势所趋
  16. 刚入职就写了个bug,把几万用户搞蓝屏了···
  17. 富途最新股权曝光:腾讯持股21% 李华有67.4%投票权
  18. C语言表达式是运算符和,C语言之运算符和表达式
  19. 上饶师范学院C语言试卷,13级普通科试卷A卷.doc
  20. python3操作USB设备

热门文章

  1. 22中山大学人工智能学院 上岸经验分享帖
  2. 对容器运行时runc的简单理解
  3. 关于PX4中的高度若干问题
  4. SpringBoot项目报错解决:“Error starting ApplicationContext. To display the conditions report re-run ...”
  5. vs2017工具箱_2017工具箱的8种新鲜设计工具和资源
  6. 数据库版本控制Flyway
  7. 巴比特 | 元宇宙每日必读:从自研硬件领域撤退后,腾讯被传或将在国内独家代理Meta旗下VR产品Quest...
  8. 数控车床对刀及建立工件坐标系的方法,建议收藏!!!
  9. html制作进销存,手把手教你定制属于自己的进销存软件
  10. Spring scheduled 执行 2 次原因