
1matlab在work根目录下新建一个m文件,然后在m文件里面写入s-function程序。
2更改该m文件的名称,设置成你所需的,比如testm
3在simulink编辑环境下,拖入S-function模块,双击该模块,在s-function
Name一栏填入test
4点击后面的按钮Edit,如果能进入testm,表明s-function模块与程序正确的链接上了。
你可以先生成net网络,经训练后即可调用gensim函数。我给你看一个例子吧:
%训练样本集
%输入向量
P=[7565745 7653261 7629077 7627337 7780583 7684183 7533221 754777 8691892 8378081 850121 8717502 8869313 8967662 8442693 878671 936677 9535296 9369523 9727305 9696961 9668402 9673992 9919504;
20 20 20 20 45 45 45 45 20 20 20 20 45 45 45 45 20 20 20 20 45 45 45 45];
%目标向量
T=[750 750 750 750 750 750 750 750 850 850 850 850 850 850 850 850 950 950 950 950 950 950 950 950];
%输入向量、目标向量归一化
p=(P-[750;20]ones(1,24))/([950;45]ones(1,24)-[750;20]ones(1,24));
t=(T-750)/(950-750);
%创建BP网络:网络含5个隐层和一个输出层
net=newff([0,1;0,1],[5,1],{'tansig','logsig'},'trainlm');
%对网络进行训练
net=train(net,p,t);
%保存网络
save cellnet net
%生成模块
gensim(net,-1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
首先需要指出的是,newff函数是用来产生新的网络的,使用时输入向量的维数可以是任意的。
下面是我写的几行命令,newff命令中的minmax(X)决定了新生成网络的输入为5维
%输入向量
X=[0 05398 05325 05324;
0 -09341 09339 -09327;
0 -64617 08567 08850;
0 103576 -101934 89586;
0 109531 311317 512697];
%目标向量
T=[0 109630 311417 512796];
%输入向量、目标向量归一化:你自己补充一下
%创建BP网络:假设网络含5个隐层和一个输出层
net=newff(minmax(X),[5,1],{'tansig','logsig'},'trainlm');
%对网络进行训练
net=train(net,X,T);
%生成模块
gensim(net,-1)
%需要指出的是,上面调用的newff函数的用法是基于MATLABR2007或者早些版本的。MATLABR2008a上调用时会稍微有所不同。你可以用help看看
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
输入输出都是按行归一化的。每一个输入矩阵中,每一列都是一个训练或测试样本,对列输入没有意义的。
我用的是MATLABR2008版的,你的那段程序在语法上除了归一化不正确导致的一些问题和newff调用警告外好像没有其他的bug
Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。那么如何使用matlab上建立simulink仿真呢?本文小编带你建立simulink仿真程序。
方法步骤:打开matlab2014a程序
建立方法之一:
在主工具栏里边找到新建,然后选择simulink model,点击即可建立。
建立方法之二:
在主工具栏里点击simulink库,进入simulink库界面。
2在simulink库界面工具栏中选择file--new--model,或者直接按ctrl+N即可建立
无法生成。
Simulink是一种可视化仿真工具软件。
Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证,不能生成dll文件。
简单的说:
1matlab在work根目录下新建一个m文件,然后在m文件里面写入s-function程序。
2更改该m文件的名称,设置成你所需的,比如testm
3在simulink编辑环境下,拖入S-function模块,双击该模块,在s-function
Name一栏填入test
4点击后面的按钮Edit,如果能进入testm,表明s-function模块与程序正确的链接上了。
以上就是关于simulink 如何在是function中加入程序(程序是M文件)全部的内容,包括:simulink 如何在是function中加入程序(程序是M文件)、神经网络程序如何生成simulink模块、如何用matlab2014a建立simulink仿真等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)