📄 svlin.m
字号:
function [out]=svlin(fname,inc,maxx,minx,maxy,miny,cfs,ply,flt)
%
%
% Saves a neural network type model to file
%
% fname = file name
% inc = matrix of included variables
% maxx = maximum x-values
% minx = minimum x-values
% maxy = maximum y-value
% miny = minimum y-value
% cfs = regression coefficients
% ply = polynomial powers
% flt = filter constants
%
%
% Open the file. If none is supplied, then put
% up a dialog box
%
if fname == []
[df_name df_path]=uiputfile('*.mod','Please select a model file');
if df_name ~= 0
%
% Change to the directory
%
[D L]=size(df_path);
if L == 3
if df_path ~= 'C:\'
df_path=df_path(:,1:L-1);
end
else
df_path=df_path(:,1:L-1);
end
eval(['cd ' num2str(df_path)]);
fname=df_name;
else
fname=[];
end
end
if fname ~= []
%
% Calculate various parameters
%
% *** Output MUST be first column!
% *** MUST be only one output
%
[D L]=size(inc);
inc=inc(:,2:L);
num_inc=sum(inc);
tot_var=L-1;
f=fopen(fname,'w');
%
% Header
%
fprintf(f,['[' num2str(hostid) ']']);
fprintf(f,'\n');
fprintf(f,'\n');
fprintf(f,'[Linear type 1 model]');
fprintf(f,'\n');
%
% Total variables
%
fprintf(f,'[Total variables]');
fprintf(f,'\n');
fprintf(f,num2str(tot_var));
fprintf(f,'\n');
fprintf(f,'\n');
%
% Included variables
%
fprintf(f,'[Included variables]');
fprintf(f,'\n');
fprintf(f,num2str(num_inc));
fprintf(f,'\n');
fprintf(f,'\n');
%
% Minimum x-values for scaling
%
count=1;
fprintf(f,'[Minimum values]');
fprintf(f,'\n');
for i=1:tot_var
if inc(i)==1
fprintf(f,num2str(minx(count)));
fprintf(f,'\n');
count=count+1;
end
end
fprintf(f,'\n');
%
% Maximum x-values for scaling
%
count=1;
fprintf(f,'[Maximum values]');
fprintf(f,'\n');
for i=1:tot_var
if inc(i)==1
fprintf(f,num2str(maxx(count)));
fprintf(f,'\n');
count=count+1;
end
end
fprintf(f,'\n');
%
% Included variables
%
fprintf(f,'[Included variables]');
fprintf(f,'\n');
for i=1:tot_var
fprintf(f,num2str(inc(i)));
fprintf(f,'\n');
end
fprintf(f,'\n');
%
% Regression constants
%
fprintf(f,'[Regression constants]');
fprintf(f,'\n');
for i=1:num_inc
fprintf(f,num2str(cfs(i)));
fprintf(f,'\n');
end
fprintf(f,'\n');
%
% Filter constants
%
fprintf(f,'[Filter constants]');
fprintf(f,'\n');
for i=1:num_inc
fprintf(f,num2str(flt(i)));
fprintf(f,'\n');
end
fprintf(f,'\n');
%
% Polynomial powers
%
fprintf(f,'[Polynomial powers]');
fprintf(f,'\n');
for i=1:num_inc
fprintf(f,num2str(ply(i)));
fprintf(f,'\n');
end
fprintf(f,'\n');
%
% Maximum y-value for re-scaling
%
fprintf(f,'[Maximum output]');
fprintf(f,'\n');
fprintf(f,num2str(maxy));
fprintf(f,'\n');
fprintf(f,num2str(miny));
fprintf(f,'\n');
fprintf(f,'\n');
%
% Close the file
%
fprintf(f,'[END]');
fclose(f);
out=1;
else
out=0;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -