如何在matlab中定义两个输出量的函数呢?

例如函数是[x,favl]=fsolve(@(x)cos(0.5*x)*cosh(0.5*x)+1,6);用来求解方程cos(0.5*x)*cosh(0.5*x)+1=0在9附近的根和误差。在M-file中怎么写才对呢?

你的问题很模糊。
如果你是问fsolve求解0值方程的用法,是这样:
[输出变量列表,逗号分隔]=fsolve(函数句柄,[参数初值列表,逗号分隔],选项参数)
对照你写的语句:
[x,favl]=fsolve(@(x)cos(0.5*x)*cosh(0.5*x)+1,6)

你写的表达式中fsolve参数中的@句是匿名方式声明函数:
函数名 =@(变量列表)表达式

所以原句相当于在求解x0=6附近cos(0.5*x)*cosh(0.5*x)+1=0的解
实际不用;号结尾这一句在COMMAND下直接就可解出:
x = 3.7502 =>最近的解点
favl = -1.3868e-07 =>解点的函数值,很接近于0了哦。fsolve是数值解法。

要求解9附近的根和误差:
[x,favl]=fsolve(@(x)cos(0.5*x)*cosh(0.5*x)+1,9)
x = 9.3882
favl = 2.4299e-09

至于怎样为函数定义多个输入参数。。。。自己去随便搜点基础教程都有的。
看帮助也行阿,搜function declare arguments,第一个结果应该就是了

声明语法:
Declare function
Syntax
function [out1, out2, ...] = myfun(in1, in2, ...)

简明例子:
Example 1
The existence of a file on disk called stat.m containing this code defines a new function called stat that calculates the mean and standard deviation of a vector:
function [mean,stdev] = stat(x)
n = length(x);
mean = sum(x)/n;
stdev = sqrt(sum((x-mean).^2/n));

调用函数:Call the function, supplying two output variables on the left side of the equation:
[mean stdev] = stat([12.7 45.4 98.9 26.6 53/1])
mean = 47.3200
stdev = 29.4085
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-09
建立M文件:function y=f(x)
y=f(x);
end
然后就可以直接使用函数了。

如何在matlab中定义两个输出量的函数
out1=in1+in2+in3;out2=in1*in2*in3;这是一个三输入,两输出的函数,第一个输出是三个输入的和,第二个输出是三个输入的乘积 调用的时候比如:[a,b]=myfunction(1,3,5)就可以得到a=9,b=15

如何在matlab中定义两个输出量的函数呢?
[输出变量列表,逗号分隔]=fsolve(函数句柄,[参数初值列表,逗号分隔],选项参数)对照你写的语句:[x,favl]=fsolve(@(x)cos(0.5*x)*cosh(0.5*x)+1,6)你写的表达式中fsolve参数中的@句是匿名方式声明函数:函数名 =@(变量列表)表达式 所以原句相当于在求解x0=6附近cos(0.5*x)*cosh(0....

...在simulink的matlab fcn模块中怎么设置两个输出???
MATLAB Fcn的输出为向量,后面连接Demux模块把向量给分拆成多个输出;使用Embedded MATLAB Function模块;使用Level-2 M file S-Function模块。具体用法可查相关模块的帮助,如有问题欢迎追问。

请教Matlab多个输出变量的函数的问题
如果要输出两个值,就要严格按照函数定义的输出格式来写 你只写一个,默认就是第一个输出值 写成 x=2;[s1,s2]=ALLT(x)就会显示两个结果了

matlab中m函数文件怎么输出两个参数
直接在命令行输入 fun(...)那么其返回参数就会自动存放到变量ans里面 对于有两个返回参数以上的函数 直接在命令行输入 fun(...)那么其第一个返回参数会自动存放到变量ans里面,而后面其他的返回参数就会被忽略 如果想得到多返回参数函数的所有返回参数,必须将返回参数赋值给足够的变量储存起来 就像你的...

matlab如何定义函数
在MATLAB中定义函数的步骤:1. 打开MATLAB编辑器。2. 在编辑器中输入函数定义语句。基本格式是`function 输出 = 函数名`。例如,定义加法函数:`function result = myAdd`。这里的`result`就是函数的输出参数,可以是单个变量也可以是多个变量组成的向量或矩阵;`myAdd`是函数的名字;`x`和`y`是函数...

matlab怎么在一个m文件中写多个函数?
end matlab中如何定义函数 首先建立M文件或直接点击(File\/New\/Function)建立函数文件,其中函数文件的格式是:function [输出变量] = 函数名称(输入变量)注释 函数体 end 编写代码如下并保存文件,注意文件命名时不能以数字开头:function [s] = eg_sum( n )calculate the sum of 1..n s = 0...

我用Matlab写了个程序,定义了两个输出变量,运行成功后 workspace中却没...
因为你没有变量接受输出,如果函数原型为function [a,b]=f(),则在工作区输入[a,b]=f(),那么a,b就是要得到的输出了。

matlab如何定义函数
matlab如何定义函数:1、首先打开软件,在“新建”中创建一个函数。2、然后定义一个test函数,输入图中的数据,test是函数名,result是返回结果,a和b是输入参数。3、接着在命令行窗口输入“test(10,20)”,调用test,会出现返回结果30。4、也可以新建脚本,把函数写入脚本,用脚本调用函数,能直接...

matlab定义函数
在Matlab中定义函数是编程的基础,它有助于组织和重用代码。首先,创建函数的步骤如下:1. 新建函数文件: 可以通过“File\/New\/Function”选项创建M文件,函数的基本结构是 "function [输出变量] = 函数名称(输入变量) % 注释 % 函数体"。例如,一个简单的平方函数可以写为 "function y = f(x) ...

相似回答