亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? proc_model.m

?? matlab仿真的文件包然后寫出其具體功能(至少要20個字)。盡量不要讓站長把時間都花
?? M
?? 第 1 頁 / 共 2 頁
字號:
   set(g_mod,'UserData',uu); chg_model_type;
   if length(k0)==0
      ii=findobj('Tag','CtrlLABError_E');
      if length(ii)>0, set(ii,'UserData',g_mod); figure(ii); end
   end   
elseif key==1, open_system(uu0{3})   
elseif key==-1
   ii=findobj('Tag','CtrlLABError_E'); close(ii);
   warn_msg=str2mat('Sorry, the SIMLINK model no longer exist now.',...
      'You should start building it again.  To prevent ',...
      'future lose of model, you should save it before ','exiting from SIMULINK.');
   warndlg(warn_msg,'Warning: Model failed!');
   set(uu{1}(g_model),'UserData',[]); new_model('off');
end

%-------------------------------------------------------
%chg_model_type allows one to change model format
%-------------------------------------------------------
function chg_model_type(n)

uu=get(gcf,'UserData'); b=uu{2}; g_model=uu{3}; u_type=get(b(9),'Value'); 
h_main=findobj('Tag','CtrlLABMain'); uu0=get(h_main,'UserData');
ii=1:4; i=find(ii~=u_type);
set(uu0{3}(15+ii(i)),'Checked','off'); set(uu0{3}(15+u_type),'Checked','on');
uu1=get(h_main,'UserData'); u_model=uu1{1}(g_model); u_data=get(u_model,'UserData');
if g_model==4
   %sets the display/model entering to the delay block
   extra_funs(4,2,'Visible',[4:7],[10:13]);
   set(b(4),'String','Delay constant'); set(b(6),'String','Order of Pade Approximation');
   if length(u_data)==0, set(b(5),'String','1'); set(b(7),'String','3');
   else, set(b(5),'String',num2str(u_data{1})); set(b(7),'String',int2str(u_data{2})); end      
else   
   switch u_type
   case 1,  %set the transfer function input boxes
      extra_funs(4,2,'Visible',[4:7],[10:13]);
      set(b(4),'String','Numerator polynomial'); set(b(6),'String','Denominator Polynomial');
      if length(u_data)==0
         %if no model pre-exist, then set defaults
         set(b(5),'String','[1]'); set(b(7),'String','[1,1]');
      else   
         if u_data{1}==1
            %if TF model exists, then fill the data
            set(b(5),'String',u_data{3}); set(b(7),'String',u_data{4});
         else
            %if other model exists, then fill the data
            [num,den]=tfdata(u_data{2},'v');
            set(b(5),'String',mat2str(num)); set(b(7),'String',mat2str(den));
         end   
      end   
   case 2, %set the state space model input boxes
      set(b([4:7,10:13]),'Visible','on'); set(b(4),'String','Coefficient Matrix A');
      set(b(6),'String','Vector B'); set(b(10),'String','Vector C');
      if length(u_data)==0
         set(b(5),'String','[-1]'); set(b(7),'String','[1]');
         set(b(11),'String','[1]'); set(b(13),'String','[0]');
      else   
         if u_data{1}==2
            set(b(5),'String',u_data{3}); set(b(7),'String',u_data{4});
            set(b(11),'String',u_data{5}); set(b(13),'String',u_data{6});
         else
            g_mod=ss(u_data{2});
            set(b(5),'String',mat2str(g_mod.a)); set(b(7),'String',mat2str(g_mod.b));
            set(b(11),'String',mat2str(g_mod.c)); set(b(13),'String',mat2str(g_mod.d));
         end   
      end   
   case 3, %set the pole-zero-gain model input boxes
      extra_funs(4,2,'Visible',[4:7,10:11],[12:13]);
      set(b(4),'String','Zeros of the System'); set(b(6),'String','Poles of the System');
      set(b(10),'String','Gain');
      if length(u_data)==0
         set(b(5),'String','[]'); set(b(7),'String','[-1]'); set(b(11),'String','[1]');
      else   
         if u_data{1}==3
            set(b(5),'String',u_data{3}); set(b(7),'String',u_data{4}); set(b(11),'String',u_data{5});
         else
            [z,p,k]=zpkdata(u_data{2},'v'); set(b(5),'String',mat2str(z)); 
            set(b(7),'String',mat2str(p)); set(b(11),'String',mat2str(k));
         end   
      end   
   case 4, %set the SIMULINK model input boxes
      extra_funs(4,2,'Visible',[4:5],[6:7,10:13]); set(b(4),'String','SIMULINK Model Name');
      %check whether a SIMULINK model is present
      key=0;
      if length(u_data)>0, key=(u_data{1}==4); end
      if key==1, strMod=u_data{3}; %if exists, use the original model name
      else,   
         %if new, create a new model name
         i=0;
         while (1)
            if exist(['my_model',int2str(i)])~=4, break; end
            i=i+1;   
         end
         strMod=['my_model',int2str(i)];  
      end   
      set(b(5),'String',strMod);
   end
   uu{1}=u_type; set(gcf,'UserData',uu);
end

%-------------------------------------------------------
%enter_model allows one to enter system model
%
%   W_sys=enter_model(num_str,den_str)
%-------------------------------------------------------
function W_sys=enter_model(num_str,den_str)

h_main=findobj('Tag','CtrlLABMain');
if nargin==0
   figure(findobj('Name','Enter System Model'));
   uu=get(gcf,'UserData'); b=uu{2}; g_model=uu{3}; 
   uu=get(h_main,'UserData'); u_model=uu{1}(g_model);
   u_data=get(u_model,'UserData'); uu{1}(5)=g_model; set(h_main,'UserData',uu);
   
   key_model=0;
   if g_model==4, %enter the delay model
      Td=eval(get(b(5),'String')); nPade=eval(get(b(7),'String'));
      set(u_model,'UserData',{Td,nPade,[],[]}); u_type=0;
   else   
      u_type=get(b(9),'Value');
      switch u_type
      case 1
         num_str=get(b(5),'String'); den_str=get(b(7),'String');
         i1=find(num_str=='s'); i2=find(den_str=='s');
         if length(i1)==0, num=eval(num_str); 
         else, num=get_poly(num_str); end   
         if length(i2)==0, den=eval(den_str);
         else, den=get_poly(den_str); end
         num=real(num); den=real(den); 
         if nargout==0 & length(num)>length(den)
            key_model=1;
            errordlg('System not realizable, order of num higher than den!','Model enter failed!');
         else   
            g_sys=tf(reshape(num,1,length(num)),reshape(den,1,length(den)));
            set(u_model,'UserData',{1,g_sys,num_str,den_str});
         end   
      case 2
         A_str=get(b(5),'String'); B_str=get(b(7),'String');
         C_str=get(b(11),'String'); D_str=get(b(13),'String');
         A=real(eval(A_str)); B=real(eval(B_str)); 
         C=real(eval(C_str)); D=real(eval(D_str));
         str=abcdchk(A,B,C,D);
         if length(str)>0, 
            key_model=1; errordlg(str,'Model enter failed!');
         else   
            g_sys=ss(A,B,C,D); set(u_model,'UserData',{2,g_sys,A_str,B_str,C_str,D_str});
         end   
      case 3
         z_str=get(b(5),'String'); p_str=get(b(7),'String'); k_str=get(b(11),'String');
         z=eval(z_str); p=eval(p_str); k=eval(k_str);
         g_sys=zpk(reshape(z,length(z),1),reshape(p,length(p),1),k);
         set(u_model,'UserData',{3,g_sys,z_str,p_str,k_str});
      case 4
         sys_str=get(b(5),'String'); build_simu(sys_str);
         set(u_model,'UserData',{4,[],sys_str});
      end
   end  
   if key_model==0
      close(gcf);
      if u_type~=4
         uu{1}(6)=1; set(h_main,'UserData',uu);
         if g_model==1, ctrllab(0,1); elseif g_model==2, ctrllab(0,2); end
         disp_model(g_model, get(u_model,'UserData'));
      end   
   end   
else
   i1=find(num_str=='s'); i2=find(den_str=='s');
   if length(i1)==0, num=eval(num_str); else, num=get_poly(num_str); end   
   if length(i2)==0, den=eval(den_str); else, den=getpoly(den_str); end
   W_sys=tf(reshape(num,1,length(num)),reshape(den,1,length(den)));
end

%-------------------------------------------------------
%get_poly converts a polynomial 's' string into a vector
%
%   [array,ikey]=get_poly(string)
%where 
%  string -- the 's' string representing a polynomial
%  array -- the vector converted
%  ikey -- if 1, then an error occur in conversion.
%-------------------------------------------------------
function [array,ikey]=get_poly(string)

string=string(find(string~=' ')); ikey=1;  nLen=length(string); array=1;
ii=find(string=='('); ij=find(string==')');
if length(ii)~=length(ij),
   warndlg('( and ) mismatching, string error!','Warning: Model failed!'); 
else, ii=[ii length(string)+1]; 
   if (ii(1)~=1), [array,ikey]=poly_evl(string(1:ii(1)-1)); end
   for i=1:length(ii)-1, 
      [array1,ikey]=poly_evl(string(ii(i)+1:ij(i)-1));
      if i~=length(ii), 
         if (ii(i+1)-1~=ij(i)), 
            k0 = str2num(string(ij(i)+1:ii(i+1)-1));
            if length(k0)==0, 
               warndlg(['Error in sub-string ',string(ij(i)+1:ii(i+1)-1)],'Warning: Model failed!'); 
               return;
            end
         else, k0=1; end
         for j=1:k0, array=conv(array,array1); end
      end
   end
end

%-------------------------------------------------------
%poly_evl is a supporting function for get_poly
%
%   [array,key]=poly_evl(string)
%where the arguments see above function.
%-------------------------------------------------------
function [array,key]=poly_evl(string)
str=string(2:length(string)); array=[]; key=0; i0=1; is0=[]; 
is=find(str=='+'|str=='-'); is=is+ones(size(1,length(is)));
for i=1:length(is), if (string(is(i)-1)~='e'), is0=[is0 is(i)]; end, end, 
is0 = [is0 length(string)+1]; 
for i=1:length(is0), 
   if (i0>1), if (string(i0-1)=='-'), i0=i0-1; end, end
   substr=string(i0:is0(i)-1); i0=is0(i)+1; is=find(substr=='s'|substr=='S');
   if length(is)==0, 
      k0=0; v1=str2num(substr);
      if isempty(v1)==1, key=1; end, if key==1, return; end
   elseif length(is)==1, 
      if (is==1), v1=1; 
      elseif (is==2&substr(1)=='-'), v1=-1; 
      else, v1 = str2num(substr(1:is-1));
         if isempty(v1)==1, key=1; end, if key==1, return; end
      end,
      if is==length(substr), k0=1;
      else, k0=str2num(substr(is+1:end));
      if isempty(k0)==1, key=1; end
         if key==1, return; end
         k0=floor(k0); 
      end
   else, 
      warndlg('Too many s''','Transfer function Failure!'); return; 
   end
   if (length(array)<k0+1),  array(k0+1)=v1;
   else, array(k0+1)=array(k0+1)+v1; 
   end, key=0; 
end
array=array(end:-1:1);

%-------------------------------------------------------------------------------
%build_simu is used to provide an template of SIMULINK model for the user to add 
%his own system model.
%-------------------------------------------------------------------------------
function build_simu(strMod)
open_system('simu_modlib'); sys=strMod;
if exist(sys)==4, open_system(sys);
else,
   new_system(sys); open_system(sys);
   set_param(sys,'Location',[197,131,618,343])
   add_block('built-in/Inport',[sys,'/','Input'])
   set_param([sys,'/','Input'],'Position',[65,80,85,100])
   add_block('built-in/Outport',[sys,'/','Output'])
   set_param([sys,'/','Output'],'Position',[355,80,375,100])
   add_line(sys,'Input/1','Output/1')
   new_system([sys,'/To CtrlLAB'])
   set_param([sys,'/To CtrlLAB'],'Mask Display','Return',...
      'OpenFcn','proc_model(9);','Position',[30,135,90,170]);
   %      'Mask Dialogue','eval(''proc_model(3);'')',...
end

%-----------------------------------------------------------------------------------
%mk_sim is used to process the SIMULINK model entered and display the final results.
%
%IMPORTANT NOTICE:-
%Due to the problem in SIMULINK, one should not click the Return block, instead, he 
%should type mk_sim under MATLAB prompt.  It is strange but we can do nothing about it.
%
%This function is not currently used.
%-----------------------------------------------------------------------------------
function mk_sim()

figure(findobj('Tag','CtrlLABMain')); uu0=get(gcf,'UserData'); 
g_model=extra_funs(5,3,'Checked',10:13);   
uu=get(uu0{1}(g_model),'UserData'); %get model name

%getting the linearized model
strMod=uu{3}; [xx,ux,yy,dx]=trim(strMod); 
[a,b,c,d]=linmod2(strMod,xx,ux); uu{2}=ss(a,b,c,d);  

%save system model to the block
set(uu0{1}(g_model),'UserData',uu);

%display the linearized model
disp_model(6,uu);

%----------------------------------------------------------
%is_delay checks whether there is delay in the whole system
%----------------------------------------------------------
function key=is_delay()
key=0; uu0=get(findobj('Tag','CtrlLABMain'),'UserData');
g4=get(uu0{1}(4),'UserData');
if g4{1}>0; key=1; end

%---------------------------------------------------------
%is_simu checks whether there is delay in the whole system
%---------------------------------------------------------
function key=is_simu()
key=0;
uu0=get(findobj('Tag','CtrlLABMain'),'UserData');
for i=1:3
   eval(['g=get(uu0{1}(' int2str(i), '),''UserData'');']);
   if length(g)>0, if g{1}==4, key=1; break; end, end
end

%---------------------------------------------------------
%clear_model clears the current model.
%---------------------------------------------------------
function clear_model()
close(gcf);
uu0=get(findobj('Tag','CtrlLABMain'),'UserData');
g_model=extra_funs(5,3,'Checked',10:13);
switch g_model
case 1
   set(uu0{1}(1),'UserData',[]);  
   set([uu0{3}([5:8,13,15]),uu0{4}(1),uu0{5}(1)],'Enable','off');
case 2, set(uu0{1}(2),'UserData',[]); set(uu0{4}(26),'Enable','off','Checked','off');
case 3, set(uu0{1}(3),'UserData',[]);  
case 4, set(uu0{1}(4),'UserData',{0,3});  
end      

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月天精品一区二区三区| 亚洲少妇30p| 国产一区二区0| 天堂va蜜桃一区二区三区漫画版| 中文字幕精品在线不卡| 日韩一区二区免费在线电影 | 久久蜜桃av一区二区天堂 | 天天综合网天天综合色| 亚洲精品欧美激情| 最新不卡av在线| 久久久av毛片精品| 欧美大胆人体bbbb| 欧美精品一区男女天堂| 欧美午夜一区二区| 欧美综合视频在线观看| 精品处破学生在线二十三| 日韩欧美中文一区二区| 精品成a人在线观看| 国产拍揄自揄精品视频麻豆| 91偷拍与自偷拍精品| 国产精品灌醉下药二区| 亚洲电影你懂得| 在线看国产一区| 国产欧美视频在线观看| 亚洲韩国一区二区三区| 制服丝袜日韩国产| 另类人妖一区二区av| 日韩三级.com| 成人性生交大片免费看中文 | 懂色av一区二区三区免费观看| 欧美午夜视频网站| 欧美女孩性生活视频| 久久久亚洲精品石原莉奈| 国产精品久久久久影院色老大| 一区二区三区日本| 亚洲成av人片在www色猫咪| 日本欧美一区二区| 免费看欧美女人艹b| 国产成人精品亚洲午夜麻豆| 久久不见久久见免费视频1| 欧美美女网站色| 久久免费国产精品| 免费人成在线不卡| 日韩三级在线免费观看| 国产精品电影一区二区| 精品一区二区三区欧美| 欧美日本不卡视频| 亚洲自拍都市欧美小说| 成人精品视频一区二区三区| 欧美日韩亚洲综合| 国产精品色哟哟网站| 激情综合色丁香一区二区| 56国语精品自产拍在线观看| 肉肉av福利一精品导航| 2023国产精华国产精品| 午夜欧美大尺度福利影院在线看 | 国产精品99久久久久久久女警| 极品少妇一区二区三区精品视频| 波多野结衣亚洲| 国产精品视频一二三| 91社区在线播放| 国产乱码精品一区二区三区五月婷| 欧美午夜片在线观看| 欧洲av一区二区嗯嗯嗯啊| 三级久久三级久久久| av毛片久久久久**hd| 经典三级视频一区| 亚洲一区中文日韩| 欧美精品一区二区高清在线观看| 99re视频这里只有精品| 激情图片小说一区| 国产精品免费视频网站| 麻豆91免费观看| 精品久久国产97色综合| 国产成人av自拍| 尤物av一区二区| 欧美亚洲日本国产| 国产精品国产自产拍高清av| av午夜一区麻豆| 亚洲不卡在线观看| 久久精品一区二区三区av| 国产成人免费在线视频| 亚洲激情中文1区| 欧美一区二区福利在线| 成人精品国产免费网站| 午夜影院在线观看欧美| 国产肉丝袜一区二区| 精东粉嫩av免费一区二区三区| 精品日韩99亚洲| 欧美日韩亚洲综合在线 | 一区二区三区在线不卡| 777欧美精品| 五月婷婷另类国产| 天堂在线一区二区| 91精品欧美久久久久久动漫| 国产精品久久久久久久裸模| 国产传媒欧美日韩成人| 亚洲成av人片一区二区三区| 一区二区欧美在线观看| 粉嫩欧美一区二区三区高清影视| 久久久.com| 91麻豆国产自产在线观看| 成人福利在线看| 国产一区二区视频在线| 国内成人精品2018免费看| 国产最新精品精品你懂的| 国产河南妇女毛片精品久久久| 国产精选一区二区三区| 国产成人在线视频免费播放| 成人激情黄色小说| 亚洲视频资源在线| 国产午夜精品福利| 欧美人伦禁忌dvd放荡欲情| 在线观看www91| 在线精品视频小说1| 成人免费看视频| 99久久精品免费| 亚洲v中文字幕| 日本亚洲一区二区| 麻豆一区二区在线| 免费精品视频最新在线| 欧美一区二区三区成人| 欧美区一区二区三区| 91精品国产美女浴室洗澡无遮挡| 欧美本精品男人aⅴ天堂| 亚洲日本韩国一区| 国产酒店精品激情| 欧美二区在线观看| 亚洲欧洲精品一区二区精品久久久 | 麻豆久久久久久久| 91丝袜美女网| 久久久久国产精品厨房| 亚洲综合色网站| 成人性生交大片免费看在线播放 | 成人av动漫在线| 日韩一区二区三区免费观看| 国产精品美女久久久久aⅴ国产馆| 日韩电影在线免费| 色88888久久久久久影院野外| 欧美www视频| 日欧美一区二区| 91黄色小视频| 中文字幕日韩一区| 国产成人av电影| 欧美精品一区二区久久婷婷| 五月激情综合色| 色狠狠桃花综合| 国产精品免费视频网站| 国产a区久久久| 精品国产乱码久久久久久闺蜜| 日日夜夜免费精品视频| 欧美性生交片4| 夜色激情一区二区| 99热这里都是精品| 中文字幕一区二区视频| 国产伦精品一区二区三区免费迷 | 午夜欧美电影在线观看| 91官网在线免费观看| 136国产福利精品导航| 国产99久久精品| 国产精品污www在线观看| 国产乱淫av一区二区三区| 欧美va在线播放| 国产一区二区三区在线看麻豆| 欧美三级在线视频| 国产一区在线看| 中文字幕一区二区三| 91小视频免费看| 亚洲第四色夜色| 久久精品亚洲一区二区三区浴池| 欧美专区亚洲专区| 乱一区二区av| 亚洲高清不卡在线| 久久夜色精品国产噜噜av| 99精品黄色片免费大全| 午夜av电影一区| 亚洲精选一二三| 久久网这里都是精品| 欧美午夜寂寞影院| 国产精品一线二线三线| 亚洲午夜羞羞片| 国产精品免费久久久久| 欧美一区2区视频在线观看| 风间由美一区二区三区在线观看 | 午夜视黄欧洲亚洲| 午夜精品一区二区三区电影天堂| 欧美bbbbb| 国产欧美久久久精品影院| 成人免费看的视频| 韩国中文字幕2020精品| 亚洲综合一二区| 一区二区三区在线视频免费| 美日韩一区二区三区| 欧美一级片在线| 免费看精品久久片| 日韩亚洲欧美中文三级| 亚洲不卡一区二区三区| 精品欧美久久久| 色综合天天综合| 蜜桃av一区二区三区电影|