MATLAB中M文件编写

news/2025/2/16 2:55:20/

简介

所谓M文件就是将处理问题的各种命令融合到一个文件中,该文件以.m为扩展名。然后,由MATLAB系统编译M文件,得出相应的运行结果。M文件具有相当大的可开发性和扩展性。M文件有脚本文件和函数文件两种。脚本文件不需要输入参数,也不输出参数,而会按照文件中指定的顺序执行命令序列。而函数文件则接受其他数据为输入参数,并且可以返回结果。

脚本式M文件

避免用户输入较多命令,避免重复输入命令,打开该类M文件,单击运行或者按下F5按键,即可运行该类文件

a=2;
b=2; 
clf;
x=-a:0.2:a;y=-b:0.2:b;
for i=1:length(y)for j=1:length(x)if x(j)+y(i)>1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2-1.5*x(j));elseif x(j)+y(i)<=-1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2+1.5*x(j));else z(i,j)=0.7575*exp(-y(i)^2-6.*x(j)^2);endend
end
axis([-a,a,-b,b,min(min(z)),max(max(z))]);
colormap(flipud(winter));surf(x,y,z);

运行结果,参考如下图片

函数式M文件

函数式M文件比脚本式M文件相对复杂一些,脚本式M文件不需要输入变量,也不一定返回结果,而函数式M文件一般要输入变量,并且有返回结果。举例使用M文件计算向量的平均值。

输入如下代码,保存average.m

function y = average(x)
% AVERAGE Mean of vector elements.
% AVERAGE(X), where X is a vector, is the mean of vector
% elements. Nonvector input results in an error.
[m,n] = size(x);
if (~((m == 1) | (n == 1)) | (m == 1 & n == 1))error('Input must be a vector')                 %  错误信息
end
y = sum(x)/length(x);     

调用过程

A = 1:99

B = average(A)

结果如下图所示

实际代码存放以及编写如下图所示 


http://www.ppmy.cn/news/1096066.html

相关文章

单片机有哪些分类?

单片机有哪些分类? 1.AVR单片机-----速度快&#xff0c;一个时钟周期执行一条指令&#xff0c;而普通的51单片机需要12个时钟周期执行一条指令。当然&#xff0c;Atmel公司出品的AT89LP系列单片机也是一个时钟执行一条指令&#xff0c;但目前还未普及。AVR单片机比51单片机多…

《TCP/IP网络编程》阅读笔记--getsockopt和setsockopt的使用

目录 1--Socket的多种可选项 2--getsocketopt() 3--setsockopt() 4--代码实例 1--Socket的多种可选项 Socket 拥有多种可选项&#xff0c;其可分为 SOL_SOCKET 层&#xff0c;IPPROTO_IP 层和IPPROTO_TCP 层等&#xff0c;一般通过 getsocketopt() 和 setsockopt() 函数进行…

vue3+ts+vite项目引入echarts,vue3项目echarts组件封装

概述 技术栈&#xff1a;Vue3 Ts Vite Echarts 简介&#xff1a; 图文详解&#xff0c;教你如何在Vue3项目中引入Echarts&#xff0c;封装Echarts组件&#xff0c;并实现常用Echarts图例 文章目录 概述一、先看效果1.1 静态效果1.2 动态效果 二、话不多数&#xff0c;引入 …

Ubuntu之apt-get系列--安装JDK8--方法/教程

原文网址&#xff1a;Ubuntu之apt-get系列--安装JDK8--方法/教程_IT利刃出鞘的博客 简介 本文介绍如何在Ubuntu下安装JDK8。 验证是否安装 可以通过如下命令判断系统是否有安装ssh服务&#xff1a; 命令 java -version 结果 如上所示&#xff0c;表示还没有安装。 查看…

Java HashMap常见面试题

1、HashMap 是什么&#xff1f;它的特点是什么&#xff1f; HashMap 是 Java 集合框架中的一个实现类&#xff0c;它基于哈希表实现。HashMap 具有以下特点&#xff1a; 键值对存储&#xff1a;数据以键值对的形式存储&#xff0c;每个键都是唯一的。快速查找&#xff1a;通过…

离线安装docker-compose

系统环境 系统是centos7.6 离线安装docker 下载docker 下载地址&#xff1a;https://download.docker.com/linux/static/stable/x86_64/ docker-20.10.21.tgz安装docker tar -xvf docker-20.10.21.tgz cp docker/* /usr/bin 离线安装docker-compose 下载docker-compose 普…

前端的规范

假如团队中的小伙伴在提交代码时没有遵循规范要求&#xff0c;只写了一个"fix"或"update&#xff0c;这会给其他小伙伴造成困扰&#xff0c;不得不花时间查看代码和推测逻辑。 不仅会浪费了时间和精力&#xff0c;可能会导致项目以下问题&#xff1a; 可读性差…

伦敦金的走势高低的规律

伦敦金市场是一个流动性很强的市场&#xff0c;其价格走势会在诸多因素的影响下&#xff0c;出现反复的上下波动&#xff0c;如果投资者能够在这些高低走势中找到一定的规律&#xff0c;在相对有利的时机入场和离场&#xff0c;就能够通过不断的交易&#xff0c;累积大量的财富…