精华内容
下载资源
问答
  • 不管matlab函数如何编写(如:有不同的多个输入参数),但在通过deploytool工具将该.m函数build后,生成.jar文件,其中的java类中只包含三个同名的固定接口的方法,而没有与.m函数相对应的方法。举例:如用matlab编写...

    icon1.gif !!急求!!用Java调用matlab的函数

    !!急求!!用Java调用matlab的函数

    用Java调用matlab的函数时,不管matlab函数如何编写(如:有不同的多个输入参

    数),但在通过deploytool工具将该.m函数build后,生成.jar文件,其中的java类

    中只包含三个同名的固定接口的方法,而没有与.m函数相对应的方法。

    举例:如用matlab编写了HelloWorld(a b c)函数,其中a,b,c都是int型,但

    build后生成HelloWorld.java中却没有相应的方法,只有如下三个同名方法:

    public Object[] HelloWorld(int nargout, Object... rhs) throws

    MWException

    {

    Object[] lhs = new Object[nargout];

    fMCR.invoke(Arrays.asList(lhs), MWMCR.getRhsCompat(rhs,

    sludecompSignature), sludecompSignature);

    return lhs;}

    public void HelloWorld(Object[] lhs, Object[] rhs) throws MWException

    {

    fMCR.invoke(Arrays.asList(lhs), Arrays.asList(rhs),

    sludecompSignature);

    }

    public void HelloWorld(List lhs, List rhs) throws MWException

    {

    fMCR.invoke(lhs, rhs, sludecompSignature);

    }

    这样并不能使用HelloWorld(a b c)函数,请问这种情况该如何解决?十分感谢!

    版本:matlab2007b, eclipse3.3, jdk1.6

    展开全文
  • 本帖最后由 VincentMeng 于 2014-10-13 12:43 编辑 function getresume... 函数能够运行不出错,但是工作空间没有变量,就是说等他运行完以后,在命令行输入函数内部的任何一个变量都显示未定义。这是怎么回事?

    本帖最后由 VincentMeng 于 2014-10-13 12:43 编辑

    function getresume(resumedate_start,resumedate_end)

    getdays1314;

    for i=1:size(BusinessDays,1)

    if datenum(resumedate_start,'yyyymmdd')==datenum(BusinessDays(i,:))

    resume_start_date=i;

    elseif datenum(resumedate_start,'yyyymmdd')>datenum(BusinessDays(i,:))&&datenum(resumedate_start,'yyyymmdd')

    resume_start_date=i+1;

    end

    end

    for i=1:size(BusinessDays,1)

    if datenum(resumedate_end,'yyyymmdd')==datenum(BusinessDays(i,:))

    resume_end_date=i;

    elseif datenum(resumedate_end,'yyyymmdd')>datenum(BusinessDays(i,:))&&datenum(resumedate_end,'yyyymmdd')

    resume_end_date=i+1;

    end

    end

    EarningDays=cell(resume_end_date-resume_start_date+1,1);

    Count_Days=0;

    for i=resume_start_date:resume_end_date

    Count_Days=Count_Days+1;

    EarningDays{Count_Days}=BusinessDays(i,:);

    end

    EarningDays(Count_Days+1:end,:)=[];

    for d=1:Count_Days

    count=0;

    codelist=cell(Count_Days*15,2);

    date=EarningDays{d};

    for i=1:2

    url=['**********************************************************************************'];

    [json, status] = urlread(url, 'get', '','charset','utf-8');

    warning off all;

    output = parse_json(json);

    for j=1:numel(output{1}.list)

    if strcmp(output{1}.list{j}.NTRAD7,date)

    count=count+1;

    codelist{count,1}=output{1}.list{j}.SYMBOL;

    codelist{count,2}=EarningDays{d};

    end

    end

    end

    end

    codelist(count+1:end,:)=[];

    end

    开始赋值参数resumedate_start=‘20141013’;resumedate_end='20141013'。

    函数能够运行不出错,但是工作空间没有变量,就是说等他运行完以后,在命令行输入函数内部的任何一个变量都显示未定义。这是怎么回事?

    展开全文
  • matlab函数定义详解

    万次阅读 2014-06-28 16:23:49
    matlab中,函数的概念或许没有其他语言那么广泛,特性没有那么丰富,但基本的功能都已具备。  在数学中,定义一个函数,我们需要明确定义域、值域、表达式。在matlab中,则对应为输入参数,输出参数,函数体。...

    但凡经过编程熏陶的人,在学习其他一门陌生的编程语言时,往往会与已经学过的语言相比较。而语法的比较往往是情不自禁的。在matlab中,函数的概念或许没有其他语言那么广泛,特性没有那么丰富,但基本的功能都已具备。

             在数学中,定义一个函数,我们需要明确定义域、值域、表达式。在matlab中,则对应为输入参数,输出参数,函数体。实际上,matlab支持多输入多输出,函数的返回值可以为一个向量,矩阵,或者多个元素。为了让函数可以调用,需要对函数进行命名。

             即包含:

    • 输入参数
    • 输出参数
    • 函数名
    • 函数体

             我们以求两个数的最小公倍数,最大公约数为例,来演示matlab的函数的定义。打开matl,选择file->new->M-file


    在弹出的窗口中,输入以下代码


    回到主窗口,在Command Window中,输入test(3,4)


    而如果我们输入[x, y] = test(3, 4),则显示如下


    这说明,如果对于多参数输出的函数,如果没有指明接受参数,那么系统只默认接收第一个参数并存至ans变量中。

    (未完待续)


    展开全文
  • matlab 函数调用和修改传入参…

    千次阅读 2017-04-14 16:46:28
    matlab里需要调用函数的情况: 1)新建文件,保存到和主文件同一路径下,就能调用了。也不需要什么引用。 2)函数文件本身:  eg.... function ... 上面这个没有返回值,没多少意义。        
    matlab里需要调用函数的情况:

    1)新建文件,保存到和主文件同一路径下,就能调用了。也不需要什么引用。

    2)函数文件本身:
        eg.         function  getX(x)
                                  x =5;
                      end;
        上面这个没有返回值,没多少意义。
                                                         
       如果希望能够改变引入的参数的值。把需要返回的参数的值放到左边的方框里就行了。
      
        function [x,y]= fun(x,y)
                 x = x+1;
                 y = y+1;
        end;
       在主函数里引用的时候:
       [x,y]=fun(x,y);
    展开全文
  • Matlab函数中如何实现按引用传递参数?(原创)-- by benbenknightMatlab中函数的参数都是采用按值传递的方式,没有按引用传递的方式,这让C++程序员很不习惯,很多时候我们可能会需要“在函数内实际修改参数的值”...
  • Matlab利用函数句柄实现函数嵌套

    千次阅读 2017-07-25 11:53:49
    作为基础不牢固的小白,今天写Matlab...其实是利用函数句柄时没有给自变量的值,类似这种写法@f,本身时没有具体的返回值的,但是这在一些工具箱函数中经常用到,比如可以用来提供目标函数,例如:[x,fval]=gamultiob
  • Matlab函数的参数都是采用按值传递的方式,没有按引用传递的方式,这让C++程序员很不习惯,很多时候我们可能会需要“在函数内实际 修改参数的值”,尤其在当传入参数是一个类或结构体时。 几经摸索,总算被俺...
  • 常用函数 randperm --> 类似于python中的shuffle isempty --> 判断向量或者矩阵的是否为空(里面没有任何内容) 参数1: vec 或者 matrix 返回值: 1: 表示为空 0: 表示不为空 exist --> 判断变量是否...
  • 原因:自定义函数没有设置返回值 如果出现代码为 A = MyFuc(3)这类的调用自定义函数并赋值,这里就会提示Too many output arguments.,因为你自定义的函数的值并没有返回,所以无法进行赋值给A其他变量 例如下面...
  • matlab中,通过函数改变变量值

    千次阅读 2019-09-08 22:09:23
    首先:matlab中只能是值传递,没有地址传递。也就是说,当你把实参传给形参,只是建立了一个新变量,而且这是一个局部变量,无论我们在函数中怎么改变这个变量,都不会改变实参的值。 所以可以采用的办法是将形参...
  • 函数式文件可以有返回值,也可以没有函数式文件执行之后,只保留最后结果,不保留任何中间过程,所定义的变量也仅在函数内部起作用,并随着调用的结束而被清除。即除无特殊声明外,其变量均为局部变量。 ...
  • 函数的基本格式:function[返回参数1,返回参数2...]=functionname(形参1,形参2...)%注意这里的函数名称和变量命名方式一致,没有形参时候 圆括号也不能省略。可以有多个返回值,让只有一个返回值的时候方括号可以...
  • 对于系统状态方程:A,B,C,D size(A):可以获取矩阵A的行数与列数 rank(A):求矩阵A的秩 ...注意:该函数返回值没有约分 [A,B,C,D]=tf2ss(num,den):将传递函数化为状态空间表达式;返回值...
  • 今天学习了定义matlab函数 我在开头是这么写的:function K = background(I,i) 这其实定义了函数的返回值,但是后来我写函数的过程中没有用到K ,所以导致 出现如下错误 Output argument "K" (and maybe others)...
  • matlab常见错误归类

    2012-03-11 00:51:53
    1. One or more output arguments not assigned during call to  函数返回值没有赋值,最大可能是返回值名字写错了。
  • 拉格朗日插值法基本原理构造一组基函数Lagrange插值函数因为matlab没有提供Lagrange插值函数,故需要自己构造。x0,y0为原始坐标点,维度必须相同。x为待插值的点。y是返回值,是最终插值结果。function y=lagrange...
  • Halcon 函数的创建流程

    千次阅读 2017-09-02 10:52:30
    初次接触Halcon 12,在其自带的集成开发环境中做一些小的实验,由于其编程语法和以前使用的c/c++ matlab 很大不一样,自成一体,感觉很别扭,严重的几点有:语句结束标志没有分号;变量赋值要是用:=;函数返回值...
  • 我正在研究连接触觉机器人和眼动仪的过程.因此,两者都有自己的编程要求,即眼动仪软件基于python,是我编程的主要语言....但是,当我查询机器人的位置坐标时,我在python类中实现ctypes的事情并没有给我预期的返回值....
  • 第六部分 MATLAB 优化算法 一线性规划算法 调用格式[x, fval, exitflag] linprog(f,A,b, Aeq,beq,lb,ub, x0) 说明返回值x为最优解向量fval为最优值若没有不等式约束则令A []b [] lb,ub 为变量x 的下界和上界x0为初值...
  • Matlab中,删除数组A中数组B的...思路1为:使用ismember函数判断B是否为A中元素,返回值为0/1逻辑值L,取A(~L)即为剔除B中的结果。 思路2为:使用setdiff函数,返回在A中有,而B中没有的值,结果向量将以升序排序返回。
  • 第六部分 MATLAB 优化算法 一 线性规划算法 调用格式 [x, fval, exitflag]= linprog(f,A,b, Aeq,beq,lb,ub, x0) 说明 返回值 x 为最优解向量 fval 为最优值若没有不 等式约束则令 A=[ ] b=[ ] lb ,ub 为变量 x 的...
  • 早知道有向图和无向图差别没有想象中的大我就写到一起了。  函数中使用的arrow画箭头函数是在这个网站下的。 %函数名netplot %使用方法输入请help netplot %无返回值 %函数只能处理有向图 %作者:tiandsp ...
  • matlab线性规划与非线性规划

    千次阅读 2018-10-12 23:18:19
    函数调用的形式为 [x,fval] = linprog(f,A,b,Aeq,beq,lb,ub,x0) [x,fval]返回值中x为最优解,fval为最优值. lb和ub 分别表示自变量的上下界组成的向量,如果没有上下界,该选项用[]表示,如果只有部分变量有上下...
  • 所以打算自己DIY一个家庭监控系统,全部使用MATLAB自带的函数功能。使用MATLAB GUIDE设计一个操作界面,使用MATLAB图像采集/处理/机器人视觉工具箱来检测物体。 需要的硬件: 1:家里有网络(一般使用无线摄像头...
  • 所以打算自己DIY一个家庭监控系统,全部使用MATLAB自带的函数功能。使用MATLAB GUIDE设计一个操作界面,使用MATLAB图像采集/处理/机器人视觉工具箱来检测物体。 需要的硬件: 1:家里有网络(一般使用无线摄像头...
  • 所以打算自己DIY一个家庭监控系统,全部使用MATLAB自带的函数功能。使用MATLAB GUIDE设计一个操作界面,使用MATLAB图像采集/处理/机器人视觉工具箱来检测物体。 需要的硬件: 1:家里有网络(一般使用无线摄像头...
  • 所以打算自己DIY一个家庭监控系统,全部使用MATLAB自带的函数功能。使用MATLAB GUIDE设计一个操作界面,使用MATLAB图像采集/处理/机器人视觉工具箱来检测物体。 需要的硬件: 1:家里有网络(一般使用无线摄像头...

空空如也

空空如也

1 2
收藏数 38
精华内容 15
关键字:

matlab函数没有返回值

matlab 订阅