matlab基础——在工作区内显示函数内的变量

这篇具有很好参考价值的文章主要介绍了matlab基础——在工作区内显示函数内的变量。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意:在通常情况下,matlab的工作区中不会显示函数内的变量。

以如下的SEIR模型为例:


function SEIR(xN,xE,xI,xR,xr,xr2,xB,xB2,xa,xy)

%第一阶段fun1(837300,0,1,0,10,10,0.045,0.045,0.1,0.9)
N = xN;     %总人数                                                             
E = xE;        %潜伏人数                                                          
I = xI;          %感染人数                                                                                                          
R = xR;          %康复人数 
S = N - I-R;       %易感人数  

r = xr;        %一个感染者的接触人数  
r2 =  xr2 ;     %一个潜伏者的接触人数 
B = xB;%x1;%0.045;      %接触感染者,易感到潜伏的传染率                                          
B2 = xB2; %接触潜伏者,易感到潜伏的传染率
a = xa;      %潜伏到感染的传染率                                                   
y = xy;      %感染者的治愈率                                                          


T = 1:150;%天数
for i = 1:length(T)-1 %也就是1:149
   
     S(i+1) = S(i) - r*B*S(i)*I(i)/N-r2*B2*S(i)*E(i)/N ;
     E(i+1) = E(i) + r*B*S(i)*I(i)/N(1)+r2*B2*S(i)*E(i)/N(1)-a*E(i);
     I(i+1) = I(i) + a*E(i) - y*I(i);
     R(i+1) = R(i) + y*I(i);
     Y(i+1)=I(i+1)+I(i)+ R(i+1);
    
end


subplot(1,2,1);
plot(T,Y,'r');grid on;%绘制多条曲线并显示网格

hold on;
subplot(1,2,2);
plot(T,I,'r');grid on;%绘制多条曲线并显示网格
hold on;
end


执行代码发现工作区不显示数组Y,I,T的值: 

matlab基础——在工作区内显示函数内的变量 

解决方法:

以函数输出的形式定义希望输出的变量:

function [A1,B1,C1]=SEIR(xN,xE,xI,xR,xr,xr2,xB,xB2,xa,xy)
% 
%   xr,xr2大于0     xB,xB2,xa,xy都属于[0,1]
%第一阶段fun1(837300,0,1,0,10,10,0.045,0.045,0.1,0.9)
N = xN;     %总人数                                                             
E = xE;        %潜伏人数                                                          
I = xI;          %感染人数                                                                                                          
R = xR;          %康复人数 
S = N - I-R;       %易感人数  

r = xr;        %一个感染者的接触人数  
r2 =  xr2 ;     %一个潜伏者的接触人数 
B = xB;%x1;%0.045;      %接触感染者,易感到潜伏的传染率                                          
B2 = xB2; %接触潜伏者,易感到潜伏的传染率
a = xa;      %潜伏到感染的传染率                                                   
y = xy;      %感染者的治愈率                                                          


T = 1:150;%天数
for i = 1:length(T)-1 %也就是1:149
   
     S(i+1) = S(i) - r*B*S(i)*I(i)/N-r2*B2*S(i)*E(i)/N ;
     E(i+1) = E(i) + r*B*S(i)*I(i)/N(1)+r2*B2*S(i)*E(i)/N(1)-a*E(i);
     I(i+1) = I(i) + a*E(i) - y*I(i);
     R(i+1) = R(i) + y*I(i);
     Y(i+1)=I(i+1)+I(i)+ R(i+1);
    
end

% 
%经典SEIR模型的差分方程(间隔为1天)
A1 = Y;
B1 = I;
C1 = T;
subplot(1,2,1);
plot(T,Y,'r');grid on;%绘制多条曲线并显示网格

hold on;
subplot(1,2,2);
plot(T,I,'r');grid on;%绘制多条曲线并显示网格
hold on;
end

改变的地方在这:

matlab基础——在工作区内显示函数内的变量 matlab基础——在工作区内显示函数内的变量

matlab基础——在工作区内显示函数内的变量 

 参考文章

 文章来源地址https://www.toymoban.com/news/detail-506938.html

 

 

到了这里,关于matlab基础——在工作区内显示函数内的变量的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VScode 工作区配置 和 用户配置

    通常不同的项目都有不同的配置,我一般都是使用eslint和prettier一起用,所以经常会有这几个文件: 这里简单介绍一下这几个文件的作用吧。 一般有两个文件,extensions.json和settings.json。 extensions.json 文件是用来配置推荐安装的 VS Code 插件的文件。在这个文件中,你可以列出你

    2024年01月24日
    浏览(40)
  • go work 笔记 (多模块工作区)

    go 1.18 引入了功能泛型 (Generics), 同时还引入的多模块工作区 (Workspaces) 和模糊测试 (Fuzzing)。 Go 多模块工作区能够使开发者能够更容易地同时处理多个模块的工作, 如: 方便进行依赖的代码调试(打断点、修改代码)、排查依赖代码 bug 方便同时进行多个仓库/模块并行开发调试 通

    2024年02月12日
    浏览(33)
  • vscode如何修改工作区(workspaces)目录

    首先 ctrl+shift+P 调出搜索框 其次搜索Workspace settings (json),并打开 打开以后将\\\"path\\\"后的路径由之前的默认路径修改为目标文件夹的完成路径即可。  

    2024年02月11日
    浏览(38)
  • git工作区删除了文件想更新回来

    删除了本地dev分支的几个文件,本地dev对应远端dev分支,想更新回来 法一、如果你知道文件夹名称或者文件名称: 法二、工作区的修改,其中就包括删除,这其实都会被git认为正常的操作,即使是你误操作 而针对你的操作,git提供了回退操作,如下图 法三,直接将本地库整

    2024年02月11日
    浏览(51)
  • Git——三大分区【工作区 / 暂存区 / 版本区】

    前言 :Git作为一个版本管理工具,最核心组成思想是它的三个分区:工作区、暂存区和工作区。   Git的工作区也就是我们平时编辑代码的目录文件夹。   暂存区就是一个 暂时放置修改文件记录 的地方。以往仓库中放货物为例,向仓库中放货物总是一车车的拉,因为如

    2024年02月06日
    浏览(48)
  • Azure 机器学习 - 如何使用模板创建安全工作区

    本教程介绍如何使用 [Microsoft Bicep]和 [Hashicorp Terraform]模板创建以下 Azure 资源: Azure 虚拟网络。 以下资源在此 VNet 后面进行保护: Azure 机器学习工作区 Azure 机器学习计算实例 Azure 机器学习计算群集 Azure 存储帐户 Azure Key Vault Azure Application Insights Azure 容器注册表 Azure Bastion

    2024年02月04日
    浏览(38)
  • idea将文件移出git的工作区

    之前使用idea在commit项目时候,忘记添加.gitignore文件了,导致提交了很多无关的文件进入远程仓库,网上有教程是使用git - reset head 方法,但是这个方法只是将上一次的commit文件覆盖当前的暂存区文件,而非移除暂存区文件,所以没有用   但是在idea工具好像并没有提供将文件移

    2024年02月13日
    浏览(36)
  • 注册claude AI账号 slack工作区账号

    Claude 是建立在 slack工作区的一个AI人工助手,更像是将chatgpt集成到了会议模式,一个账号实际上拥有了你的会议室和你的AI助手,你可以让你的朋友和同事进入你的房间体验。 Claude是不是openai的产物?目前还不知道,不过就从回复速度来看,他比chatgpt和通过api调用的第三方

    2023年04月18日
    浏览(74)
  • git 将其它分支的文件检出到工作区

    主要是使用如下命令: 覆盖与 pathspec 匹配的文件的内容。当没有给出 tree-ish (通常是一个commit)时,用 index 中的内容覆盖工作树。当给出 tree-ish 时,用 tree-ish 处的内容同时覆盖 index 和工作树。 由于前一个的合并失败,index 可能包含未合并的条目。默认情况下,如果您试图从

    2023年04月09日
    浏览(28)
  • git在工作区和本地库的操作命令

     本文介绍一些开发时,常用的在工作区和本地库之间的操作命令 工作树的修改内容要提交到本地库,首先需要先添加到缓存区stage,在commit到本地库。 你开发了一段时间,可能已经忘记了修改过那几个文件 可以使用 git status 查看 工作区和缓存区的内容 ,即修改过的文件和

    2024年02月15日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包