`
华山剑
  • 浏览: 20580 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论
  • lyyf: 马马虎虎明白了点。但是,接口,搞成私有的,别的类能使用吗?
    线程安全

java和matlab混合编程

阅读更多

1. 从matlab 2006b版本起,开始提供javabuilder工具箱,以支持向java提供编程接口。

2. 安装matlab编译Runtime: MCR(例如:MATLAB/toolbox/compiler/deploy/win64/MCRInstaller.exe)。

3. 在matlab command window中使用deploytool命令打开deploy窗口。

    3.1 新建工程(将被编译为java中的一个Class)

    3.2 向工程添加m文件(每个m文件将被编译为一个method)

    3.3 build工程,matlab将于指定目录生成相应的jar包(例如MProj.jar)和javedoc文件。

4. 在eclipse中新建java工程,将matlab toolbox中javabuilder.jar和生成的MProj.jar置于java工程的类路径下。

5. OK,可以开始使用javabuiler.jar和MProj.jar提供的接口开始java编程了!javabuilder.jar的API javadoc可在matlab的帮助文档中查询,MProj.jar的API javadoc已在上面2.3中生成。

 

一个javabuilder工具箱中自带的例子:Compute Magicsquare square and print result

import com.mathworks.toolbox.javabuilder.*;
import magicsquare.*;

public class TestMatlab {
	public static void main(String[] args) {
		MWNumericArray n = null; /* Stores input value */
		Object[] result = null; /* Stores the result */
		Magicsquare theMagic = null; /* Stores magic class instance */
		try {
			/* If no input, exit */
			if (args.length == 0)
			{
				System.out.println("Error: must input a positive integer");
				return;
			}
			/* Convert and print input value */
			n = new MWNumericArray(Double.valueOf(args[0]), MWClassID.DOUBLE);
			System.out.println("Magic square of order " + n.toString());

			/* Create new magic object */
			theMagic = new Magicsquare();

			/* Compute Magicsquare square and print result */
			result = theMagic.makesqr(1, n);
			System.out.println(result[0]);
		} catch (Exception e) {
			System.out.println("Exception: " + e.toString());
		} finally {
			/* Free native resources */
			MWArray.disposeArray(n);
			MWArray.disposeArray(result);
			if (theMagic != null)
				theMagic.dispose();
		}
	}
}

 

6. 以上步骤已经可以搞定使用matlab接口编程的大多数情况,但目前为止(我用的是2009a),貌似matlab还不能编译训练模型的函数,如时间序列模型armax(),调用java程序报错:

Undefined function or method 'armax' for input arguments of type 'iddata'.

不知该如何在java中使用armax()这样的函数,企求高手不吝指点!先谢谢了:)

分享到:
评论

相关推荐

    JAVA和MATLAB混合编程及其应用.pdf

    【JAVA和MATLAB混合编程及其应用】 JAVA和MATLAB混合编程是一种有效利用两者优势的技术,旨在提高编程效率和处理速度。MATLAB是由MathWorks公司开发的高性能数值计算和可视化软件,以其简洁的编程语法、强大的矩阵...

    java和matlab混合编程及其应用

    java与matlab间的相互调用,使程序集合两者各自的优点,计算效率大幅提高

    Java和Matlab混合编程及其应用问题.zip

    Java和Matlab混合编程是一种将Java的高效能和丰富的库资源与Matlab的数值计算、图形处理和算法设计能力相结合的技术。这种编程模式允许开发者利用Java的系统级接口和跨平台特性,同时享受Matlab提供的便捷科学计算...

    Java和Matlab混合编程及其应用.pdf

    Java和Matlab混合编程是一种编程技术,通过将Java的跨平台性、可移植性等特性与Matlab强大的科学计算能力相结合,来实现更加复杂的应用开发。在该技术的应用中,Java和Matlab可以相互调用,Java可以调用Matlab的函数...

    JAVA和MATLAB混合编程及其应用

    JAVA和MATLAB混合编程及其应用,你值得参考

    java与matlab混合编程jsp调用matlab网页显示fig

    这是因为Matlab和Java的混合编程要求环境是一致的,同时我们之前使用的Matlab 2013a 32位版本会报错,Java和Matlab混合编程要求环境是统一的。 二、编写plotsin.m和plotcos.m文件 在这里,我们编写了两个Matlab...

    基于JAVA和MATLAB混合编程的水泵水轮机全特性构造系统.pdf

    基于JAVA和MATLAB混合编程的水泵水轮机全特性构造系统.pdf

    Java_MATLAB混合编程

    Java和MATLAB混合编程是一种强大的技术,它允许开发者利用MATLAB的强大数值计算和科学分析能力,同时结合Java的系统级集成和广泛应用的优势。在Java应用程序中嵌入MATLAB代码,可以实现复杂的数据处理和图形生成,而...

    Java和Matlab混合编程及其应用问题.pdf

    Java与Matlab混合编程是指将Java语言和Matlab语言结合使用,在同一个软件开发项目中发挥两种编程语言各自的优势。Java是一种面向对象的编程语言,以其跨平台、安全性以及丰富的类库著称,特别适合于开发网络应用和...

    java matlab混合编程 模拟信号发生器

    Java和Matlab混合编程是一种强大的技术,它允许开发者利用Matlab的强大计算能力与Java的广泛应用平台相结合。在“java matlab混合编程 模拟信号发生器”这个项目中,我们主要探讨的是如何通过Java调用Matlab编写的...

    java与matlab混合编程环境

    搭建java和matlab混合编程的环境要求,因为网上博客写的比较杂,而且win10上和win7、win8上环境搭建有些不同,故记录操作步骤。对于Java和matlab混合编程可见http://blog.csdn.net/ipad_li/article/details/44516089...

    Java与Matlab的混合编程

    这是一篇Linux系统下Java与Matlab混合编程及应用的论文

    Linux系统下Java与Matlab混合编程及应用.pdf

    Linux系统下Java与Matlab混合...综上所述,Linux系统下Java与Matlab混合编程的实现涉及多个环节,包括编程语言的选择、环境配置、工具使用和具体编程实践等。掌握混合编程技术对于提高软件开发效率和质量具有重要意义。

    基于Hadoop的Java调用Matlab混合编程的车牌识别.pdf

    基于Hadoop的Java调用Matlab混合编程的车牌识别技术是现代交通管理领域的一个重要应用,它结合了Hadoop的大数据处理能力以及Matlab强大的数值计算和图像处理能力,为车牌识别的准确性和实时性提供了新的解决方案。...

    Java和Maltab混合编程研究.doc

    Java 和 MATLAB 混合编程是一种有效利用两者优势的技术,旨在构建更为强大的科学计算环境。MATLAB 是一款广泛使用的数值计算软件,具有优秀的数学运算、矩阵处理和图形绘制能力,但在界面开发和独立运行程序方面存在...

    Java、Python和Matlab混合编程及其在气象中的应用.pdf

    此外,文档也介绍了使用Jython来实现Java与Python和Matlab混合编程的技术路径,其中Jython是Python的Java实现,能够无缝调用Java编写的类和Python脚本。 在数据处理方面,文献提到使用了美国国家环境预测中心(NCEP)...

    基于COM及Java-COM桥的Java与Matlab混合编程.pdf

    总结来说,基于COM及Java-COM桥的Java与Matlab混合编程为开发者提供了一个强大的工具集,使得开发者可以结合Java语言在应用开发方面的优势和Matlab在数值计算和算法实现方面的强大功能。通过桥接技术,解决了Java与...

    基于COM及Java-COM桥的Java与Matlab混合编程.zip

    3. **Java与Matlab混合编程**:Matlab是一款强大的数值计算和数据可视化工具,广泛应用于工程、科研等领域。然而,Matlab的运行环境并不像Java那样具有跨平台性。通过Java-COM桥,Java程序可以调用Matlab作为计算...

    java与matlab混合编程

    java与matlab混个编程实现在线演示的功能,图像的显示与matlab上的显示类似

    Java-Matlab混合编程的研究.pdf

    Java-Matlab混合编程的研究.pdf

Global site tag (gtag.js) - Google Analytics