问题描述
在matlab写好函数,在matlab中使用没有任何问题,但打包成jar包后,调用报
错:错误使用 Simulink.standalone_sim 输入参数太多
- 定以的函数如下:用于根据训练好的bp模型对输入数据进行预测
参数:
- input_test:测试数据;
- inputps:存储归一化信息,用于归一化;
- net:训练好的bp神经网络
- 主要调用sim函数进行仿真,并把仿真结果返回
而报错就在sim()函数调用上,查了一下官方文档,这样调是完全没问题的,说参数过多,是把输入数据没当成一个数据?(猜测)
于是我想到java传过去的数据应该倍转化成指定类型,以便调用!
尝试
起初在java里强制转换,但是没用,最多就转换成MWStructArray类型,也不精确
解决
在matlab里面强制转换:
- struct(inputps)表示把inputps强转为struct
- network(net)表示把net强转为network
依据是:工作区