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

📄 update_ds.m

📁 关于混沌系统的李氏指数计算等混沌系统中重要参数计算的代码
💻 M
字号:
function update_ds;
% Updating menu items and information fields
global DS;
global calculation_progress;


nn=size(DS(1).jacobian);
nn=nn(1);
if nn==0
   set(DS(1).mainwin.text11,'String','Numerically');
else
   set(DS(1).mainwin.text11,'String','Symbolically');
end;

set(DS(1).mainwin.mSystem_text,'String',DS(1).name);
   

if calculation_progress==1
   set(DS(1).mainwin.mCompute,'Enable','off');
%   set(DS(1).mainwin.mWindow,'Enable','off');
   set(DS(1).mainwin.mFile,'Enable','off');
   set(DS(1).mainwin.mResearch,'Enable','off');
   set(DS(1).mainwin.mSystem,'Enable','off');
   set(DS(1).mainwin.mIntegrationdata,'Enable','off');
else
   set(DS(1).mainwin.mCompute,'Enable','on');
%   set(DS(1).mainwin.mWindow,'Enable','on');
   set(DS(1).mainwin.mFile,'Enable','on');
   set(DS(1).mainwin.mResearch,'Enable','on');
   set(DS(1).mainwin.mSystem,'Enable','on');
   set(DS(1).mainwin.mIntegrationdata,'Enable','on');
end;

if calculation_progress==2
   set(DS(1).mainwin.mSystem,'Enable','off');
   set(DS(1).mainwin.mIntegrationdata,'Enable','off');
end;

if calculation_progress==1
   set(DS(1).mainwin.mStatus_text,'String',' busy...');
end;
if calculation_progress==0
   set(DS(1).mainwin.mStatus_text,'String',' ready');
end;
if calculation_progress==2
   set(DS(1).mainwin.mStatus_text,'String',' pause');
end;

if DS(1).method_int == 1 
   set(DS(1).mainwin.mMethod_text,'String','ode113' );
end;
if DS(1).method_int == 2 
   set(DS(1).mainwin.mMethod_text,'String','ode15s' );
end;
if DS(1).method_int == 3 
   set(DS(1).mainwin.mMethod_text,'String','ode23' );
end;
if DS(1).method_int == 4 
   set(DS(1).mainwin.mMethod_text,'String','ode23s' );
end;
if DS(1).method_int == 5 
   set(DS(1).mainwin.mMethod_text,'String','ode23t' );
end;
if DS(1).method_int == 6 
   set(DS(1).mainwin.mMethod_text,'String','ode23tb' );
end;
if DS(1).method_int == 7 
   set(DS(1).mainwin.mMethod_text,'String','ode45' );
end;
if DS(1).method_int == 8 
   set(DS(1).mainwin.mMethod_text,'String','ode78' );
end;
if DS(1).method_int == 9 
   set(DS(1).mainwin.mMethod_text,'String','ode87' );
end;

if DS(1).time_indication==1
    set(DS(1).mainwin.mTimeIndication,'Checked','on');
else
    set(DS(1).mainwin.mTimeIndication,'Checked','off');
end;

if DS(1).n_lyapunov>0
    set(DS(1).mainwin.mLyapunov,'Checked','on');
else
    set(DS(1).mainwin.mLyapunov,'Checked','off');
end;


% Task string
stringtask = 'Trajectory';

if ~isempty(DS(1).poincare_map)
    stringtask=[stringtask '+' 'Pnc'];
end;
if DS(1).n_lyapunov>0
    stringtask=[stringtask '+' 'Lyap'];
end;
set(DS(1).mainwin.mTask_text,'String',stringtask );


set(DS(1).mainwin.mError_text,'String',num2str(DS(1).rel_error) );
set(DS(1).mainwin.mMaxstep_text,'String',num2str(DS(1).max_step) );

   tmpstr = [];
   if length(DS(1).currfile)>25
      ss=findstr(DS(1).currfile,filesep);
      j=length(ss);
      k=1;
      while (ss(k)<20) & (k<j)
             k=k+1;
      end;
      tmpstr{1}=[DS(1).currfile(1:(ss(k)-1)) '..'];
      tmpstr{2}=[DS(1).currfile( (ss(k)):length(DS(1).currfile) ) '.*'];
   else
      tmpstr{1}=DS(1).currfile;
   end;      

   set(DS(1).mainwin.mDuration_text,'String',tmpstr);   

%   set(DS(1).mainwin.mEquilibrium,'Enable','off');
   set(DS(1).mainwin.mPeriodicSol,'Enable','off');
   set(DS(1).mainwin.mPoincare,'Enable','on');

%    Poincare map menu parameters
   if isempty(DS(1).poincare_map)
      set(DS(1).mainwin.mPoincare,'Checked','off');
   else
      set(DS(1).mainwin.mPoincare,'Checked','on');    
   end;
      
%   set(DS(1).mainwin.mLyapunov,'Enable','off');
%   set(DS(1).mainwin.mOut_text,'Enable','off');
   set(DS(1).mainwin.mInformation,'Enable','off');
   set(DS(1).mainwin.mMethods,'Enable','off');

% Check Options menu - current trajectory

   if DS(1).currenttrajectory == 1;
      set(DS(1).mainwin.mLast_point,'Checked','on');
   else
      set(DS(1).mainwin.mLast_point,'Checked','off');
   end;

% Ckeck Option menu - regime of text output   
  if DS(1).trj_text_out == 0
     set(DS(1).mainwin.mOut_text,'Checked','off');
  else 
     set(DS(1).mainwin.mOut_text,'Checked','on');
  end;

if isfield(DS(1),'poincare_do')
    if DS(1).poincare_do == 1
        DS(1).poincare_cur = DS(1).time_start; 
    end
end
  


DS(1).mainwin;

⌨️ 快捷键说明

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