使用JAVA调用MATLAB算法程序方式——使用复杂算例进行完整说明,包括参数传递

使用Java调用Matlab算法程序的方法有多种,在这里介绍一种在实际平台开发中较为方便做法:将MATLAB脚本程序打jar包,再使用Java程序调用。一、处理MATLAB脚本1.处理算法程序脚本,将其封装为函数形式SpringBoot项目开发人员不一定也同时负责MATLAB算法程序的编写,而是使用已有的MATLAB算法程序。因此,在拿到MATLAB算法程序后,大概率应该要对算法程序脚本进行处理,将其写成方法体、也就是函数的形式。首次拿到的MATLAB算法程序,是以程序流的形式编写的,运算后工作区中
摘要由CSDN通过智能技术生成

使用Java调用Matlab算法程序的方法有多种,在这里介绍一种在实际平台开发中较为方便做法:将MATLAB脚本程序打jar包,再使用Java程序调用。

一、处理MATLAB脚本

1.处理算法程序脚本,将其封装为函数形式

SpringBoot项目开发人员不一定也同时负责MATLAB算法程序的编写,而是使用已有的MATLAB算法程序。因此,在拿到MATLAB算法程序后,大概率应该要对算法程序脚本进行处理,将其写成方法体、也就是函数的形式。

首次拿到的MATLAB算法程序,是以程序流的形式编写的,运算后工作区中可以看到所有变量的值,包括输入值、中间变量、结果值。如下图所示:
在这里插入图片描述
拿到以上算法程序后,首先检验其是否能正常运行,然后根据需要将输入参数和输出结果值的变量名找到,使用function end将算法程序包裹起来,形成方法体(函数)程序。如下图所示。
在这里插入图片描述在这里插入图片描述

其中,function后方括号中的参数为所需的结果值,等号后的“danji”为自定义的方法名,方法名后小括号中内容为方法所需的输入参数。
注意:如果程序开头有clear,clc命令,需要在写成方法体后将其注释或删除,避免该命令运行后将传入的输入参数清空。
在改写方法体时,可以首先不设置输入参数,而是在源程序相应位置写成固定的参数值,以便检验改写为方法体后,程序是否能正常运行。
改写成方法体后,运行程序,工作区中不再会出现中间变量,输入参数的内容。成功运行后,可以加上输入参数。

2.将方法体算法程序打成jar包

这一操作相对简单,只需要注意以下几个细节即可:

  • 版本匹配与兼容的要求:经过查询资料和实际使用测试,电脑环境是JDK1.8,则对应MATLAB2017b版本,如版本不对应,则打包时会报错。
    查看本地计算机中MATLAB对应的JDK版本方式如下:
    在命令行中输入
version -java

在这里插入图片描述
这里显示MATLAB内置的JDK版本为1.8.0,只需要大版本一致即可,即JDK1.8。理论上也可以修改内置的JDK,有兴趣的同学可以自行探索具体操作,这里不展开。

  • 打包过程的注意事项:如果这编写算法程序的过程中引用了MATLAB库以及其他文件,则需要在打包工程中将其加入。打包过程如下:
    在这里插入图片描述
    APP–>Library–>Java Package–>选择需要打包的.m文件–>根据需要修改类名–>
  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值