Matlab 中 global 函数实例解析

Posted Jeossirey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab 中 global 函数实例解析相关的知识,希望对你有一定的参考价值。

目录

global 函数

案例分析 1

案例分析 2

使用golbal的优点

1. 传递大数据的参数

2. 过多的常量需要传递


global 函数

比如在主函数里面,你需要设置 Nc 这个变量是一个全局变量,就需要声明一下:

 global Nc;

 然后在子函数里面你又用到了 Nc 这个全局变量,你需要在子函数里面再次声明:

 global Nc;

 这样在子函数中,就可以使用 Nc 这个全局变量了。

案例分析 1

主函数中声明 MPC 相关参数

 

子函数中直接调用即可,无需再次声明给变量赋值

案例分析 2

%% 主函数 main.m
global Mat
Mat = 5;
Q = add(3);

%% 子函数 add.m
function sum = add(x)
global Mat;
sum=Mat1+x;

%% 输出结果: 
Q = 8

使用golbal的优点

1. 传递大数据的参数

如果通过函数传参数的方式的话,系统会浪费过多在复制数据上的时间,如果采用 global 的方式共享数据的话,代码的效率会大大提高。

2. 过多的常量需要传递

如果每个量都作为函数的参数传递的话,代码参数列表就会非常长,因为子函数括号里面需要调用太多的参数变量。如果采用 global 的话,代码的可读性提高,函数调用也方便! 

点击文末卡片,加入 HUI YUAN 全年无限制学习后台(MPC各矩阵的底层逻辑、MPC纵向控制、模型验证、MPC自适应巡航控制、非线性系统如何线性化及MPC动力学跟踪任何轨迹、约束添加及新求解器的求解、轨迹规划、纵向规划等80个系列)会员专享爆品课程及资源,同时获得分佣资格,可赚回自己的学费! 

以上是关于Matlab 中 global 函数实例解析的主要内容,如果未能解决你的问题,请参考以下文章

matlab global定义全局变量的问题

matlab中常见函数解析

在 Matlab 中使用 Globals 而不是传递大型数组

NodeJs中的this和global

20-matlab全排列-函数调用

如何用matlab求解二阶微分方程,以及程序实例