【GPenSIM】pnstruct()报错:无法执行赋值,因为此类型的变量不支持使用点进行索引。 出错 png_process_DEF_files_extract_elements (第 51 行)

BUG描述

写了一个helloworld级别的petri_net结构定义的静态文件,名为 simple_petri_net.m
根据教程兴高采烈的执行 pns = pnstruct(‘simple_petri_net’);

然后报错:

无法执行赋值,因为此类型的变量不支持使用点进行索引。

出错 png_process_DEF_files_extract_elements (第 51 行)
PN.No_of_modules = module_number;

出错 png_process_DEF_files (第 14 行)
    png_process_DEF_files_extract_elements(fileNames);

出错 pnstruct (第 29 行)
[global_set_of_As, global_set_of_Is] = png_process_DEF_files(fileNames);

结论

直接进报错的文件进去调试一通,发现一个global的PN有问题。输出一看,他是个char,再看他的内容,赫然写着一个'-h' ????

一通调试加思考,发现原因是,

我刚打开Matlab之后,记得装好的gpensim的验证方式是在命令行打一个gpensim,然后他就会弹版本号。然后我寻思着:这gensim咋用啊?于是习惯性的打了一个 gpensim -h在命令行,果然报错了,说明不是这么看用法的,遂去看手册,才知道直接创建文件用就行。

结果这个 gpensim -h 暗搓搓把它里面的全局变量PN改成了-h????
不是?虽然我确实不怎么接触过Matlab,但是这命令怎么还能没原子性呢?(不熟Matlab,不知道有没有必要叫Reggie修一下……)

解决方案

1.重启 Matlab

重启就正常了。

2.手动把PN复位

在命令行打:

>>> global PN
>>> PN = []

强行复位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值