当前位置:首页 » 编程软件 » matlab与java混合编程

matlab与java混合编程

发布时间: 2022-04-01 09:41:04

A. 您好我在网上看到了您的那篇java与matlab的混合编程,在result = operation(4,a,b)这行是出现这个函数

MATLAB非常实用!具体和导师讨论,看看他希望你做的哪些地方需要知道哪些知识,一定会让你直接咨询

B. 如何实现Java和matlab的混合编程,用java做交互界面,调用matlab做计算有实例请发给我参考下,十分谢谢

部署好了就行了。环境部署网上都有。直接搜索Java与matlab混编就行。我也在做混编,部署完了,使用matlab中的deploytool将.m文件编译为class文件,就可以在Java中当成类的一个方法调用。实例发给你,你也参考不了什么。

C. MATLAB JAVA混合编程效率问题

因为java在打包成为字节码后是被jvm解释执行的。

D. Java在matlab里的用途和用法:

机器中装有Eclipse和Matlab,并配置好环境变量。
小魏装的是Eclipse 3.7.1 和Matlab7.11.0 (R2010b)。当然要装有JDK,Eclipse的配置不多说了,网上有许多,至于Matlab,最好在classpath中添加:
%matlabInstallRoot%\R2010b\toolbox\javabuilder\jar\javabuilder.jar
这里说“最好”,是因为不添加,只在项目中引用,貌似也是可行的。
P.S. 如果是VC++中调用MATLAB,一定要在path中添加:
%matlabInstallRoot%\R2010b\bin\win32

E. matlab与java混合编程有什么作用

Java和matlab混合编程

如果用Matlab和java混合编程开发Windows的应用程序则可以实现优势互补,缩短开发时间,降低程序设计的复杂度。同时程序可以脱离Matlab环境独立运行,在工程计算和教学实践中都具有实际意义。
1.使用java调用Maltab函数的基本方法是:通过Java Builder实现Java调用Matlab。在Java环境中直接调用Matlab所生成的Jar包。

下面以在Java中产生任意维数的魔方矩阵,计算任意矩阵的特征向量和特征值,对两组数据进
行拟合并绘制拟合曲线三个实例来说明通过Java
Builder实现Java调用Matlab的过程。传统的纯Java编程实现上述实例非常复杂,甚至很难完成。这一问题在Matlab中只需要调用几个
函数即可完成。

1.1、将Matlab函数包装成Java类

首先在Matlab中编写三个M文件:

Eig.m

function [v,d]=Eig(input)

format long

[v,d]=eig(input);

End

Magic.m

function f =Magic( input )

f=magic(input);

end

Plot.m

function Plot(x,y )

p=polyfit(x,y,3);

t=min(x):max(x)/100:max(x);

s=polyval(p,t);

plot(x,y,'*',t,s);

title('数据拟合结果');

xlabel('x');

ylabel('y');

end

其次,在Matlab中新建一个Deployment
Project,名称为MyProject.prj,类型为Java
package。在Project中新建三个Class,分别为GetEig,GetMagic,PolyFit。将
Eig.m,Magic.m,plot.m分别添加到上述Class中。之后点击Builder the project,等待编译成功即可。

1.2、在Java中调用Matlab函数

新建一个Java类JavaMatlab,并引入相关的包。

import com.mathworks.toolbox.javabuilder.*;//引入Matlab相关包

import MyProject.*;//引入建立的包及类

调用时Java与Matlab之间的参数传递需要通过MWNumericArray完成。具体的调用代码如下:

package org.genius.ExpandJava;

import MyProject.*;

import com.mathworks.toolbox.javabuilder.*;

public class JavaMatlab {

public static void main(String[] args) {

MWNumericArray a = null; // 用于保存矩阵

MWNumericArray ax = null; // 用于保存矩阵

MWNumericArray ay = null; // 用于保存矩阵

Object[] result = null; // 用于保存计算结果

GetEig getEig = null;

GetMagic getMagic=null;

PolyFit polyFit=null;

int r = 4; // 魔方矩阵维数

int array[][]={{50,-20,0},{-20,80,60},{0,60,-70}};

double x[]={0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1};

double y[]={-0.447,1.978,3.28,6.16,7.08,7.34,7.66,9.56,9.48,9.3,11.2};

try {

//产生魔方矩阵并打印

a = new MWNumericArray(r, MWClassID.DOUBLE);

getMagic = new GetMagic();

result = getMagic.Magic(1,a);

System.out.println("产生的四维魔方矩阵:");

System.out.println(result[0]);

MWArray.disposeArray(result);

//计算所给矩阵的特征向量和特征值并打印结果

a = new MWNumericArray(array, MWClassID.DOUBLE);

getEig = new GetEig();

result = getEig.Eig(2, a);

System.out.println("原始矩阵:");

System.out.println(a.toString());

System.out.println("得到的特征向量:");

System.out.println(result[0]);

System.out.println("得到的特征值:");

System.out.println(result[1]);

MWArray.disposeArray(result);

ax = new MWNumericArray(x, MWClassID.DOUBLE);

ay = new MWNumericArray(y, MWClassID.DOUBLE);

polyFit = new PolyFit();

result=polyFit.Plot(ax,ay);

polyFit.waitForFigures();

} catch (Exception e) {

System.out.println("Exception: " + e.toString());

}

finally {

// 释放本地资源

MWArray.disposeArray(a);

MWArray.disposeArray(ax);

MWArray.disposeArray(ay);

MWArray.disposeArray(result);

getEig.dispose();

getMagic.dispose();

polyFit.dispose();

}

}

}

F. java要调用matlab,但是matlab要用到很多其他m文件和包请问如何一起Build打jar包

Java和MATLAB混合编程,Java调用MATLAB代码

资料来源:http://blog.csdn.net/cs_fang_dn/article/details/50239115

G. 如何在matlab中使用java-Java

1、需要将相关jar包地址添加到matlab的classpath.txt文件中
2、在matlab中创建一个JFrame窗口对象:下面都是在matlab命令行的操作,%表示相关命令的解释
>> import javax.swing.JFrame; %引入相关类
>> import %import命令用来查询已经引入的类
ans =
'javax.swing.JFrame'

>> frame=JFrame('title') %创建JFrame对象,名字为frame

frame =
javax.swing.JFrame[frame0,0,0,0x0,invalid,hidden,layout=java.awt.BorderLayout,title=title,resizable,normal,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,0,0,0x0,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
>> setSize(frame,200,200) %给frame对象创建大小

>> show(frame) %显示frame对象

H. java与matlab混合编程报错

你是java调用matlab还是matlab调用java?
有些功能是不支持混合调用的,比如matlab中sym等函数。

I. vs与matlab混合编程怎么使用

可以去官网看介绍,我记得要专业版的才行,就是要付费(或者激活)的那种,我之前就试了2013专业版的,因为2015支持的最低版本就是VS2013

热点内容
iptables允许ip访问 发布:2025-01-24 16:19:58 浏览:931
安卓80如何识别存储卡权限 发布:2025-01-24 16:19:54 浏览:231
存储介质价格 发布:2025-01-24 16:19:18 浏览:150
删除多个表sql 发布:2025-01-24 16:10:57 浏览:595
安卓设备版本哪里看 发布:2025-01-24 16:06:00 浏览:549
编译错误参数不可选 发布:2025-01-24 16:00:51 浏览:289
仓储软件用什么服务器 发布:2025-01-24 16:00:03 浏览:626
android协议分析 发布:2025-01-24 15:58:41 浏览:320
电脑配置512显卡有什么用 发布:2025-01-24 15:54:10 浏览:604
易语言图片源码 发布:2025-01-24 15:52:17 浏览:98