⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lmsimu2.m

📁 nnToolKit 神经网络工具包是基于 MATLAB 神经网络工具箱自行开发的一组神经网络算法函数库
💻 M
字号:
%此为一仿真程序
%首先读入权域值参数

function retdouble = LmSimu(ModelNo,NetPara,InputFun,OutputFun,DataDir)
NNTWARN OFF

%%%% 输入参数赋值开始 %%%%%%%%%%%%%%%%%%%%%%%
% 这部分代码主要是方便用户调试用
% ModelNo='1';
% NetPara(1)=7;
% NetPara(2)=6;
% NetPara(3)=1;
% NetPara(4)=2;
% DataDir='.';
% InputFun = 'tansig';
% OutputFun = 'purelin';
%%%% 输入参数赋值结束 %%%%%%%%%%%%%%%%%%%%%%%%
retdouble = -1;
olddir=pwd;
% 数据所在目录
cd(DataDir);

% 输入层到中间层的传递函数
if (length(InputFun)==0)
    InputFun = 'tansig';
end
% 中间层到输出层的传递函数  
if (length(OutputFun)==0)
    OutputFun = 'purelin'
end  
%读入训练好的神经网络的权域值参数
frw1=fopen(sprintf('w%s%s',ModelNo,'1.dat'),'r');
frb1=fopen(sprintf('b%s%s',ModelNo,'1.dat'),'r');
frw2=fopen(sprintf('w%s%s',ModelNo,'2.dat'),'r');
frb2=fopen(sprintf('b%s%s',ModelNo,'2.dat'),'r');
frminp=fopen(sprintf('minp%s%s','.dat'),'r');
frmaxp=fopen(sprintf('maxp%s%s','.dat'),'r');
frmint=fopen(sprintf('mint%s%s','.dat'),'r');
frmaxt=fopen(sprintf('maxt%s%s','.dat'),'r');
InputDim=NetPara(1);      %输入层节点数
MidDim=NetPara(2);        %中间层节点数
OutputDim=NetPara(3);       %输出层节点数 
test_num=NetPara(4);
[w1,count]=fscanf(frw1,'%f',[MidDim,InputDim]);
[b1,count]=fscanf(frb1,'%f',[MidDim,1]);
[w2,count]=fscanf(frw2,'%f',[OutputDim,MidDim]);
[b2,count]=fscanf(frb2,'%f',[OutputDim,1]);
minp=fscanf(frminp,'%f');
maxp=fscanf(frmaxp,'%f');
mint=fscanf(frmint,'%f');
maxt=fscanf(frmaxt,'%f');
fclose(frw1);
fclose(frb1);
fclose(frw2);
fclose(frb2);
fclose(frminp);
fclose(frmaxp);
fclose(frmint);
fclose(frmaxt);

frin=fopen(sprintf('simu_para%s%s',ModelNo,'.txt'),'r');      %输入数据文件
[p1,count]=fscanf(frin,'%f',[InputDim,test_num]);   %取输入数据 
fclose(frin);
[p1n,minp1,maxp1]=premnmx(p1);
%p1n= tramnmx(p1,minp,maxp);
%网络仿真
an=simuff(p1n,w1,b1,InputFun,w2,b2,OutputFun);
a= postmnmx(an,mint,maxt);

%将仿真结果写入文件
fwresult=fopen(sprintf('result%s%s',ModelNo,'.dat'),'w');
fprintf(fwresult,'%-15.6f\n',a);
fclose(fwresult);
retdouble = a;
logsig(1);
purelin(1);
tansig(1);
cd(olddir);


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -