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

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

?? perioddoublingmap.m

?? 計算動力學系統的分岔圖
?? M
字號:
function out = perioddoublingmap
%
% Fixed point curve definition file for a problem in mapfile
% 
global cds pdmds
    out{1}  = @curve_func;
    out{2}  = @defaultprocessor;
    out{3}  = @options;
    out{4}  = @jacobian;
    out{5}  = @hessians;
    out{6}  = @testf;
    out{7}  = @userf;
    out{8}  = @process;
    out{9}  = @singmat;
    out{10} = @locate;
    out{11} = @init;
    out{12} = @done;
    out{13} = @adapt;
return

%----------------------------------------------------
function func = curve_func(arg)
  global cds pdmds
  n=pdmds.Niterations;
  [x,p] = rearr(arg); p = n2c(p);x1=x;
  jac = pdmjac(x,p,n);
  Bord=[jac+eye(pdmds.nphase) pdmds.borders.w;pdmds.borders.v' 0];
  bunit=[zeros(pdmds.nphase,1);1];
  vext=Bord\bunit;
  wext=Bord'\bunit;
  for i=1:pdmds.Niterations
  x1=feval(pdmds.func,0,x1,p{:});
  end
  func = [x1-x ; vext(end)];
  
  %---------------------------------------------------     
function jac = jacobian(varargin)
global cds pdmds
  n=pdmds.Niterations;
  nap = length(pdmds.ActiveParams);
  xo = varargin{1}; [x,p] = rearr(xo); p = n2c(p);
  nphase=size(x);
  jac = pdmjac(x,p,n)+eye(pdmds.nphase);
  Bord=[jac pdmds.borders.w;pdmds.borders.v' 0]; 
  bunit=[zeros(pdmds.nphase,1);1];
  vext=Bord\bunit;
  wext=Bord'\bunit;
  jac = [pdmjac(x,p,n)-eye(pdmds.nphase) pdmjacp(x,p,n)]; 
  wext=wext(1:pdmds.nphase);vext=vext(1:pdmds.nphase);
  x1=x;
  xit=zeros(nphase,n);xit(:,1)=x;
  AA=zeros(nphase,nphase,n);
  AA(:,:,1)=pdmjac(x1,p,1);
  for m=2:n
    x1=feval(pdmds.func,0,x1,p{:});
    xit(:,m)=x1;
    AA(:,:,m)=pdmjac(x1,p,1);
  end
  hh=pdvecthessvect(xit,p,vext,wext',AA,n); %
  for i=1:pdmds.nphase
   jac(pdmds.nphase+1,i)=hh(:,i);
  end
  ss=pdvecthesspvect(xit,p,vext,wext',AA,n);%
  for i=1:nap
   jac(pdmds.nphase+1,pdmds.nphase+i)=ss(:,i);
  end

%---------------------------------------------------
function hess = hessians(varargin)
  hess =[];
%---------------------------------------------------
function varargout = defaultprocessor(varargin)
global pdmds cds
n=pdmds.Niterations;
  if nargin > 2
    s = varargin{3};
    varargout{3} = s;
  end
 % compute eigenvalues?
  if (cds.options.Multipliers==1)
      xo = varargin{1}; [x,p] = rearr(xo); p = n2c(p);
      n=pdmds.Niterations;
      jac =pdmjac(x,p,n);
      varargout{2} = eig(jac);
  else
      varargout{2} = nan;
  end  

  % all done succesfully
  varargout{1} = 0;
%----------------------------------------------------  
function option = options
global pdmds cds
  option = contset;
  n=pdmds.Niterations;
  % Check for symbolic derivatives in mapfile
  
  symjac  = ~isempty(pdmds.Jacobian);
  symhes = ~isempty(pdmds.Hessians);
  symDer3 = ~isempty(pdmds.Der3);
  symDer4 = ~isempty(pdmds.Der4);
  symDer5 = ~isempty(pdmds.Der5);
  
  symord = 0; 
  if symjac, symord = 1; end
  if symhes, symord = 2; end
  if symDer3, symord = 3; end
  if symDer4, symord = 4; end
  if symDer5, symord = 5; end

  option = contset(option, 'SymDerivative', symord);
  option = contset(option, 'Workspace', 1);
  option = contset(option, 'Locators', [0 0 0]);

  symjacp = ~isempty(pdmds.JacobianP); 
  symhessp = ~isempty(pdmds.HessiansP); 
  symordp = 0;
  if symjacp,  symordp = 1; end
  if symhessp, symordp = 2;end
  option = contset(option,'SymDerivativeP',symordp);
  cds.symjac  = 1;%1
  cds.symhess = 1;%1

% -------------------------------------------------------
function [out, failed] = testf(id, x, v)
global cds pdmds 
   n=pdmds.Niterations;
   [x0,p] = rearr(x); p = n2c(p);
   nphase=size(x0,1);
   jac = pdmjac(x,p,n);%x,eig(jac),pause
   Bord=[jac+eye(nphase) pdmds.borders.w;pdmds.borders.v' 0];
    bunit=[zeros(pdmds.nphase,1);1];
    vext=Bord\bunit;
    vext=vext(1:pdmds.nphase);
    wext=Bord'\bunit;
    wext=wext(1:pdmds.nphase);
   jac = pdmjac(x0,p,n);
failed = [];

for i=id
  lastwarn('');
  
  switch i
    case 1 % R2
      out(1)=wext'*vext;
    case 2 % fold+flip
      out(2)=det(pdmjac(x,p,n)-eye(pdmds.nphase));
    case 3 % PDNS
      nphase = pdmds.nphase;
      BB= pdmjac(x,p,n);
      [bialt_M1,bialt_M2,bialt_M3,bialt_M4]=bialtaa(nphase);
      BBB=BB(bialt_M1).*BB(bialt_M2)-BB(bialt_M3).*BB(bialt_M4);
      BBB=BBB-eye(size(BBB,1)); 
      out(3) = det(BBB);
      
    case 4 %GPD
        vext4=vext/norm(vext);
        wext4=wext/(vext'*wext);
        out(4) = nf_PDm( pdmds.func,pdmds.Jacobian,pdmds.Hessians,pdmds.Der3,jac,vext4,wext4,nphase,x0,p,n);
        
    otherwise
    msg = sprintf('Could not evaluate tf %d\n', i);
    failed = [failed i];
  end
 end

%------------------------------------------------------
function [out, failed] = userf(userinf, id, x, v)
global cds pdmds
n=pdmds.Niterations;
dim =size(id,2);
failed = [];
for i=1:dim
  lastwarn('');
  [x0,p] = rearr(x); p = n2c(p);
  if (userinf(i).state==1)
      out(i)=feval(pdmds.user{id(i)},0,x0,p{:});
  else
      out(i)=0;
  end
  if ~isempty(lastwarn)
    msg = sprintf('Could not evaluate userfunction %s\n', id(i).name);
    failed = [failed i];
  end
end
%---------------------------------------------------------
function [failed,s] = process(id, x, v, s)
global cds pdmds
  n=pdmds.Niterations;
  [x0,p] = rearr(x); p = n2c(p);
  nphase=size(x0,1);
  jac = pdmjac(x0,p,n);%eig(jac),x0,pause
  Bord=[jac+eye(nphase) pdmds.borders.w;pdmds.borders.v' 0];
  bunit=[zeros(pdmds.nphase,1);1];
  vext=Bord\bunit;
  vext=vext(1:pdmds.nphase);
  wext=Bord'\bunit;
  wext=wext(1:pdmds.nphase); 
  failed = []; 

% WM: Removed SL array
fprintf('label = %s, x = ', s.label); printv(x);
switch id
  case 1 % R2
    [V,D]=eig(jac+eye(nphase));
    [Y,i]=min(abs(diag(D)));
    vext2=real(V(:,i));
    mu = norm(vext2); 
    vext2=vext2/mu;  
    [V,D]=eig(jac'+eye(nphase));
    [Y,i]=min(abs(diag(D)));
    wext2=real(V(:,i));
    Bord=[jac+eye(nphase) wext2; vext2' 0];
    genvext2=Bord\[vext2;0];
    genvext2=genvext2(1:nphase)/mu;
    genvext2 = genvext2 - (vext2'*genvext2)*vext2;
    genwext2=Bord'\[wext2;0];
    genwext2=genwext2(1:nphase);
    mu=vext2'*genwext2;
    wext2=wext2/mu;
    genvext2 = genvext2 - (genwext2'*genvext2)*vext2;
    genwext2=genwext2/mu;
    s.data.c=nf_R2m(pdmds.func,pdmds.Jacobian,pdmds.Hessians,pdmds.Der3,jac,vext2,genvext2,wext2,genwext2,nphase,x0,p,n);
    fprintf('Normal form coefficient for R2 :[c , d]= %d, %d\n',s.data.c),
    s.msg  = sprintf('Resonance 1:2');
  case 2 % LPPD
    A=jac;
    [X,D] = eig(A-eye(nphase));
    [Y,i] = min(abs(diag(D)));
    vext2 = real(X(:,i));
    [X,D] = eig(A'-eye(nphase));
    [Y,i] = min(abs(diag(D)));
    wext2 =real(X(:,i));
    q1 = vext/norm(vext);p1 = wext/(wext'*q1);
    q0 = vext2/norm(vext2);p0 = wext2/(wext2'*q0);   
    s.data.c=nf_LPPDm(pdmds.func,pdmds.Jacobian,pdmds.Hessians,pdmds.Der3,A,q0,p0,q1,p1,nphase,x0,p,n);   
   fprintf('Normal form coefficient for LPPD :[a/e , be]= %d, %d, \n',s.data.c(1:2));
   if s.data.c(2)>0
        fprintf('First Lyapunov coefficient for second iterate = %d, \n',s.data.c(2));
    end
    s.msg  = sprintf('LPPD'); 
    case 3 % PDNS
   
   s.data.process_NS = process_flipNS(x,jac);
   if strcmp(s.data.process_NS,'Neutral saddle')
     s.msg  = sprintf('Neutral saddle\n');
   else
      k1=process_flipNS(x,jac);
      d11=k1+sqrt(-1.0)*abs(sqrt(1-k1*k1));
      d22=conj(d11);
      [V,D]=eig(jac-d11*eye(nphase));
      [Y,i]=min(abs(diag(D)));
      vext1=V(:,i);
      [V,D]=eig(jac'-d22*eye(nphase));
      [Y,i]=min(abs(diag(D)));
      wext1=V(:,i);
      vext1=vext1/norm(vext1);
      wext1=wext1/(vext1'*wext1);
      [V,D]=eig(jac+eye(nphase));
      [Y,i]=min(abs(diag(D)));
      vext2=real(V(:,i));
      [V,D]=eig(jac'+eye(nphase));
      [Y,i]=min(abs(diag(D)));
      wext2=real(V(:,i)); 
      vext2=vext2/norm(vext2);
      wext2=wext2/(vext2'*wext2);
    s.data.c=nf_PDNSm(pdmds.func,pdmds.Jacobian,pdmds.Hessians,pdmds.Der3,jac,vext2,wext2,vext1,wext1,nphase,x0,p,n);
    fprintf('Normal form coefficient for PDNS :[a , b , c , d]= %d, %d, %d, %d\n',s.data.c);
     s.msg  = sprintf('Flip+Neimark_Sacker');
    end
  case 4 % GPD
      vext4=vext/norm(vext);
      wext4=wext/(wext'*vext4);       
      s.data.c=nf_DPDm(pdmds.func,pdmds.Jacobian,pdmds.Hessians,pdmds.Der3,pdmds.Der4,pdmds.Der5,jac,vext4,wext4,nphase,x0,p,n); 
      fprintf('Normal form coefficient of GPD = %s\n', s.data.c);     
      s.msg  = sprintf('Generalized Flip');
  otherwise
    s.msg = sprintf('there is not such bifurcation');
end

% Compute eigenvalues for every singularity
[x0,p] = rearr(x); p = n2c(p); 
J=pdmjac(x0,p,n); 
if ~issparse(J)
  [v,d]=eig(J);
else
  opt.disp=0;
  % WM: fixed a bug (incompatability between MatLab 6.0 and 5.5?)
  [v,d]=eigs(J,min(6,ndim-2),'lm',opt);
end

s.data.evec = v;
s.data.eval = diag(d)';

failed = 0;
%--------------------------------------------------------
function  [S,L] = singmat    
global pdmds cds
% 0: testfunction must vanish
% 1: testfunction must not vanish
% everything else: ignore this testfunction

  S = [  0 8 8 8 
         8 0 8 8
         1 8 0 8
         8 8 8 0 ]; 
  L = [ 'R2  '; 'LPPD'; 'PDNS'; 'GPD '];
  
%------------------------------------------------------
function [x,v] = locate(id, x1, v1, x2, v2)
msg = sprintf('No locator defined for singularity %d', id);
error(msg);
%------------------------------------------------------
function varargout = init(varargin)
global cds pdmds
  x = varargin{1};
  v = varargin{2};
  WorkspaceInit(x,v);

  % all done succesfully
  varargout{1} = 0;
%--------------------------------------------------------
function varargout = done
global pdmds cds
  WorkspaceDone;
%---------------------------------------------------------
function [res,x,v] = adapt(x,v)
global pdmds
[x1,p] =rearr(x); p = n2c(p);n=pdmds.Niterations; 
jac = pdmjac(x1,p,n)+eye(pdmds.nphase);
Bord=[jac pdmds.borders.w;pdmds.borders.v' 0];
bunit=[zeros(pdmds.nphase,1);1];
vext=Bord\bunit;
wext=Bord'\bunit;
%ERROR OR WARNING
pdmds.borders.v=vext(1:pdmds.nphase)/norm(vext(1:pdmds.nphase));
pdmds.borders.w=wext(1:pdmds.nphase)/norm(wext(1:pdmds.nphase));
res = []; % no re-evaluations needed




%----------------------------------------------------------------
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% ---------------------------------------------------------------
function [x,p] = rearr(x0)
%
% [x,p] = rearr(x0)
%
% Rearranges x0 into coordinates (x) and parameters (p)
global pdmds
p = pdmds.P0;
p(pdmds.ActiveParams) = x0((pdmds.nphase+1):end);
x = x0(1:pdmds.nphase);

    
% ---------------------------------------------------------

function WorkspaceInit(x,v)
global cds pdmds opt
n = pdmds.nphase;
  for i=1:cds.nActSing
    if (cds.ActSing(i)==3)&& (n<3) 
       % errordlg('Flip+Neimark-Sacker (PDNS) is impossible, ignore this singularity by setting opt=contset(opt,''IgnoreSingularity'',[3])');
        %stop
    end
    if ((cds.ActSing(i)==1)| (cds.ActSing(i)==2))&& (n <2) 
        %errordlg('R2 and fold+flip (LPPD) are impossible, it is better to ignore these singularities by setting opt=contset(opt,''IgnoreSingularity'',[1 2])');
        
    end
  end


% calculate some matrices to efficiently compute bialternate products (without loops)
a = reshape(1:(n^2),n,n);
b = zeros(n);
[bia,bin,bip] = bialt(a);
[pdmds.BiAlt_M1_I,pdmds.BiAlt_M1_J,pdmds.BiAlt_M1_V] = find(bip);
[pdmds.BiAlt_M2_I,pdmds.BiAlt_M2_J,pdmds.BiAlt_M2_V] = find(bin);
[pdmds.BiAlt_M3_I,pdmds.BiAlt_M3_J,pdmds.BiAlt_M3_V] = find(bia);

% ------------------------------------------------------

function WorkspaceDone

% -------------------------------------------------------
%SD:continues equilibrium of mapfile

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久色婷婷小香蕉久久| 国产精品久久久久影院亚瑟| 日韩专区在线视频| 欧美精品欧美精品系列| 日韩精品一二三四| 欧美α欧美αv大片| 国产sm精品调教视频网站| 午夜国产不卡在线观看视频| 国产在线精品不卡| 中文字幕一区二区三区色视频| 色综合中文字幕国产 | 色婷婷国产精品| 一区二区激情小说| 欧美一级免费大片| 成人久久视频在线观看| 亚洲午夜久久久久| 精品电影一区二区| 色综合视频一区二区三区高清| 亚洲国产成人91porn| 26uuu国产电影一区二区| bt7086福利一区国产| 首页综合国产亚洲丝袜| 久久亚洲精品小早川怜子| 91亚洲国产成人精品一区二三| 亚洲午夜在线视频| 国产人成亚洲第一网站在线播放 | 91精品国产91久久久久久一区二区| 狠狠狠色丁香婷婷综合激情 | 久久九九久久九九| 欧洲av在线精品| 国产精品自在欧美一区| 亚洲小说春色综合另类电影| 久久综合九色综合欧美就去吻| 91天堂素人约啪| 狠狠色2019综合网| 亚洲成av人**亚洲成av**| 国产日韩欧美高清在线| 911国产精品| 91女神在线视频| 国产乱码精品1区2区3区| 亚洲国产精品人人做人人爽| 欧美国产一区二区| 欧美一级爆毛片| 欧美最新大片在线看| 成人精品一区二区三区四区| 日本欧美一区二区| 亚洲伊人色欲综合网| 中文字幕亚洲在| 久久久蜜桃精品| 宅男在线国产精品| 欧美性受极品xxxx喷水| av电影一区二区| 国产成人精品影视| 国内成人自拍视频| 免费人成精品欧美精品| 午夜精品福利在线| 亚洲午夜激情网页| 一区二区三区在线免费| 日本sm残虐另类| 亚洲同性同志一二三专区| 国产欧美一区二区在线观看| 欧美大片在线观看一区| 欧美日韩电影在线| 欧洲一区二区三区在线| 91丝袜美女网| 99久精品国产| 不卡区在线中文字幕| 成人一区在线观看| 国产xxx精品视频大全| 国产高清成人在线| 国产经典欧美精品| 国产盗摄一区二区三区| 国产精品99精品久久免费| 国产美女精品人人做人人爽| 久久99国产精品久久99果冻传媒| 日韩1区2区3区| 免费人成黄页网站在线一区二区| 麻豆精品一区二区综合av| 麻豆国产精品视频| 紧缚捆绑精品一区二区| 国内精品久久久久影院色| 国产精品一区二区无线| 成人午夜电影网站| 99久久综合狠狠综合久久| 色综合天天综合狠狠| 在线看不卡av| 欧美精品视频www在线观看| 欧美一区二区三区免费大片| 欧美xingq一区二区| 欧美国产激情二区三区| 亚洲免费在线观看视频| 午夜一区二区三区视频| 久久精品免费看| 成人福利视频网站| 欧洲另类一二三四区| 日韩免费高清av| 国产免费成人在线视频| 一二三四社区欧美黄| 麻豆一区二区在线| 成人午夜av电影| 欧美亚洲国产一区二区三区| 日韩丝袜美女视频| 国产精品理论片| 午夜精品福利一区二区蜜股av| 麻豆国产欧美日韩综合精品二区 | 成人一二三区视频| 色八戒一区二区三区| 日韩一区二区免费视频| 国产精品你懂的| 天天影视网天天综合色在线播放| 国内精品久久久久影院一蜜桃| 97se狠狠狠综合亚洲狠狠| 91精品中文字幕一区二区三区| 国产女人18水真多18精品一级做| 亚洲综合丝袜美腿| 国产成人av电影| 91国产丝袜在线播放| 欧美α欧美αv大片| 一区二区三区四区亚洲| 国产在线视频精品一区| 欧美无人高清视频在线观看| 久久久精品tv| 日本中文字幕一区二区有限公司| 国产成人在线视频网站| 欧美日韩国产综合久久| 国产精品欧美一级免费| 日本不卡123| 欧美亚洲综合在线| 国产精品看片你懂得| 精品无人区卡一卡二卡三乱码免费卡| 色婷婷av一区二区三区gif| 国产视频一区二区在线| 日本一不卡视频| 欧洲视频一区二区| 国产精品乱码人人做人人爱| 蜜桃视频在线观看一区二区| 欧美性猛交xxxx乱大交退制版 | 欧美中文字幕不卡| 国产精品国产三级国产aⅴ中文| 麻豆国产欧美日韩综合精品二区| 色婷婷国产精品综合在线观看| 国产免费成人在线视频| 精品无码三级在线观看视频| 欧美精品日韩综合在线| 一区二区三区日韩| av在线一区二区三区| 国产日韩欧美亚洲| 国产精品一区二区视频| 精品成人一区二区三区| 美女视频免费一区| 日韩一区二区视频| 午夜精品爽啪视频| 欧美三级三级三级爽爽爽| 亚洲一区二区三区四区五区黄| 色综合久久99| 最新国产精品久久精品| 99这里只有精品| 国产精品久久夜| k8久久久一区二区三区 | 欧美精三区欧美精三区| 亚洲成av人影院| 欧美日韩aaa| 日韩精品成人一区二区三区| 欧美精三区欧美精三区| 丝袜亚洲另类丝袜在线| 欧美日韩成人一区| 偷拍自拍另类欧美| 欧美一区二区三区日韩| 老汉av免费一区二区三区| 欧美一二三四区在线| 九九国产精品视频| 久久精品视频免费| jlzzjlzz亚洲日本少妇| 亚洲码国产岛国毛片在线| 91高清视频免费看| 亚洲gay无套男同| 日韩一二三四区| 国产一区二区精品久久99| 亚洲国产成人自拍| 不卡视频免费播放| 亚洲一级二级三级| 日韩一级在线观看| 国产成人自拍在线| 亚洲欧美一区二区三区国产精品 | 中文在线免费一区三区高中清不卡| 成人一区二区视频| 亚洲欧美日韩国产成人精品影院| 欧美日韩久久一区| 美国三级日本三级久久99| 国产三级精品视频| 日本精品裸体写真集在线观看 | 日韩三区在线观看| 国产成人av资源| 亚洲黄色免费电影| 欧美一级精品在线| 国产凹凸在线观看一区二区| 亚洲国产精品麻豆| 精品国产乱码久久久久久蜜臀 | 欧美在线一二三| 久久国产精品72免费观看|