matlab函数中的选择性参数

2024-02-10 06:38
文章标签 参数 matlab 函数 选择性

本文主要是介绍matlab函数中的选择性参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.写在前面

许多的 MATLAB 函数都支持选择性输入参数和输出参数。例如,我们调用 plot 函数,输入参数既可以少到 2 个,也可以多到 7 个参数。从另一方面说,函数 max 既支持一个输出参数,也支持两个输出参数。如果只有一个输出参数,max 将会返回函数的最大值。如果有两个输出参数将会返回数组的最大值和最大值所在的位置。如何知道一个MATLAB 函数有几个输入输出参数呢,以及函数相应的功能呢?

在 MATLAB 中有八种专门的函数用于获取关于选择性参数的信息和用于报告这些参数的错误。这里进行一下介绍。

2.选择性参数的含义

参数含义
nargin返回调用这个函数时所需要的实际输入参数的个数
nargout返回调用这个函数时所需要的实际输出参数的个数
nargchk如要一个函数调用被调用时参数过多或过少,那么 nargchk 函数将返回一个标准错误信息
error显示错误信息,并中止函数以免它产生这个错误。如果参数错误是致命的,这个函数将会被调用。
warning显示警告信息并继续执行函数,如果参数错误不是致命的,执行还能继续,则这个将会被调用。
inputname返回对于特定参数个数的实际变量名。

3.利用选择性参数编写的函数例子

function [mag, angle] = polar_value(x, y) 
% POLAR_VALUE Converts(x, y) to (r, theta) 
% Punction POLAR_VALUE converts an input(x,y) 
% va1ue into (r, theta), with theta in degrees. 
% It illustrates the use of optional arguments. 
% Define variables: 
% angle --Angle in degrees 
% msg --Error message 
% mag --Magnitude 
% x --Input x value 
% y --Input y value(optional) 
% Record Of revisions: 
% Date Programmer Description of change 
% ======== ============== ======================== 
% 12/16/98 S.J.Chapman Original code 
% Check for a legal number of input arquments % 其中 min_args 是指参数的最小个数,max_args 是指数的最大个数,num_args 是指参数的实际个数。如果参数的个数不在允许的范围,将会产生一个标准的错误信息。如果参数的个数在允许的范围之内,那么这个函数将返回一个空字符。
msg = nargchk(1,2,nargin); % 函数 error 是用于显示标准的错误信息和用于中止导致错误信息的自定义函数的一种标准方式。
error(msg); % If the y argument is missing, set it to 0. 
% 只有一个参数的情况,那么函数就假设 y 值为 0
if nargin < 2 y = 0; 
end % Check for (0,0) input argument, and print out 
% a warning message. 
% x和y都是0的情况,输出警告信息
if x == 0 & y == 0 msg = 'Both x and y are zero: angle is meaningless!'; warning(msg); 
end 
% Now calculate the magnitude 
mag = sqrt(x .^2 + y .^2); % If the second output argument is present,calculate 
% angle in degrees 
if nargout == 2 angle = atan2(y,x) * 180/pi; 
end

测试:

1.未输入参数

>> [mag angle]=polar_value??? Error using ==> polar_value 
Not enough input arguments. 

2.输入过多参数

>> [mag angle]=polar_value(1,-1,1)??? Error using ==> polar_value 
Too many input arguments. 

3.输入一个参数

>> [mag angle]=polar_value(1)mag = 1 
angle = 0 

4.输入两个参数

>> [mag angle]=polar_value(1,-1)mag = 1.4142 
angle = -45 

5.输出一个参数

>> mag = polar_value(1,-1)mag = 1.4142 

6.输入x=0,y=0参数

>> [mag angle] = polar_value(0,0) Warning: Both x and y are zero: angle is meaningless! 
> In polar_value at 27 
mag = 0 
angle = 0 

通过上述例子加深对函数编写的理解,理解各个参数的含义,笔记摘录自:

[1] S.J.Chapman《MATLAB编程》中文版

这篇关于matlab函数中的选择性参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/696398

相关文章

pandas使用apply函数给表格同时添加多列

《pandas使用apply函数给表格同时添加多列》本文介绍了利用Pandas的apply函数在DataFrame中同时添加多列,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录一、Pandas使用apply函数给表格同时添加多列二、应用示例一、Pandas使用apply函

Python中Namespace()函数详解

《Python中Namespace()函数详解》Namespace是argparse模块提供的一个类,用于创建命名空间对象,它允许通过点操作符访问数据,比字典更易读,在深度学习项目中常用于加载配置、命... 目录1. 为什么使用 Namespace?2. Namespace 的本质是什么?3. Namesp

Java JAR 启动内存参数配置指南(从基础设置到性能优化)

《JavaJAR启动内存参数配置指南(从基础设置到性能优化)》在启动Java可执行JAR文件时,合理配置JVM内存参数是保障应用稳定性和性能的关键,本文将系统讲解如何通过命令行参数、环境变量等方式... 目录一、核心内存参数详解1.1 堆内存配置1.2 元空间配置(MetASPace)1.3 线程栈配置1.

MySQL中如何求平均值常见实例(AVG函数详解)

《MySQL中如何求平均值常见实例(AVG函数详解)》MySQLavg()是一个聚合函数,用于返回各种记录中表达式的平均值,:本文主要介绍MySQL中用AVG函数如何求平均值的相关资料,文中通过代... 目录前言一、基本语法二、示例讲解1. 计算全表平均分2. 计算某门课程的平均分(例如:Math)三、结合

SpringMVC配置、映射与参数处理​入门案例详解

《SpringMVC配置、映射与参数处理​入门案例详解》文章介绍了SpringMVC框架的基本概念和使用方法,包括如何配置和编写Controller、设置请求映射规则、使用RestFul风格、获取请求... 目录1.SpringMVC概述2.入门案例①导入相关依赖②配置web.XML③配置SpringMVC

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

python中的高阶函数示例详解

《python中的高阶函数示例详解》在Python中,高阶函数是指接受函数作为参数或返回函数作为结果的函数,下面:本文主要介绍python中高阶函数的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录1.定义2.map函数3.filter函数4.reduce函数5.sorted函数6.自定义高阶函数

Python中的sort方法、sorted函数与lambda表达式及用法详解

《Python中的sort方法、sorted函数与lambda表达式及用法详解》文章对比了Python中list.sort()与sorted()函数的区别,指出sort()原地排序返回None,sor... 目录1. sort()方法1.1 sort()方法1.2 基本语法和参数A. reverse参数B.

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型