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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? eyesampl.m

?? 介紹了通信系統(tǒng)中各個(gè)通信模塊的MATLAB實(shí)現(xiàn)
?? M
?? 第 1 頁 / 共 2 頁
字號(hào):
function  [sys, x0, str, ts]  = eyesampl(t,x,u,flag,...
    timeRange, boundary, storeLength, eyeLine, scatterLine, sampleTime)
% EYESAMPL Simulink eye diagram and scatter plot --- sampled time version.
%   [SYS, X0, STR, TS]  = EYESAMPL(T,X,U,FLAG,TIMERANGE,BOUNDARY,STORELENGTH,EYELINE,SCATTERLINE,SAMPLETIME)
%
%   This M-file is designed to be used in a Simulink S-function block.
%   It plots eyediagram against time and the scatter plot.
%   The parameter for the block of this figure are:
%
%   timeRange    Time range = [Digit Sample Time, Plot offset, Decision offset]
%   boundary     Lower and upper boundary of the Y axis.
%   storeLength  Keep number of traces in storage for print purpose.
%   eyeLine      Line type for eye-pattern diagram (0 for no such plot)
%   scatterLine  Symbol type for scatter plot (0 for no such plot)
%   sampleTime   [Update sample time, update offset]
%   
%   This file takes scalar input or 2 dimensional vector input
%
%   Set this M-file up in an S-function block.
%   Set the function parameter up as a four element vector
%   which defines the axis of the graph. The line type must be in
%   quotes.
%
%   See also PLOT, SFUNYST, SFUNXY, EYEDIASI

%       Copyright 1996-2001 The MathWorks, Inc.
%       $Revision: 1.27 $ $Date: 2001/04/05 04:38:01 $ 

switch flag,

  %%%%%%%%%%%%%%%%%%
  % Initialization %
  %%%%%%%%%%%%%%%%%%
  case 0,
  [sys,x0,ts] = mdlInitializeSizes(...
      timeRange, boundary, storeLength, eyeLine, scatterLine, sampleTime);
  SetBlockCallbacks(gcbh);
  
  %%%%%%%%%%
  % Update %
  %%%%%%%%%%
  case 2,
  sys = mdlUpdate(t,x,u,...
      timeRange, boundary, storeLength, eyeLine, scatterLine, sampleTime);
  
  %%%%%%%%%%%%%%%%%%%
  % Next Sample Hit %
  %%%%%%%%%%%%%%%%%%%
  case 4,
  sys = mdlGetTimeOfNextVarHit(t, x, u);  
  
  %%%%%%%%%%%%%%%%%%%
  % Unhandled flags %
  %%%%%%%%%%%%%%%%%%%
  case {1, 3, 9 }
    sys=[];

  %%%%%%%%%
  % Start %
  %%%%%%%%%
  case 'Start'
  LocalBlockStartFcn

  %%%%%%%%
  % Stop %
  %%%%%%%%
  case 'Stop'
  LocalBlockStopFcn

  %%%%%%%%%%%%%%
  % NameChange %
  %%%%%%%%%%%%%%
  case 'NameChange'
  LocalBlockNameChangeFcn
    
  %%%%%%%%%%%%%
  % Load,Copy %
  %%%%%%%%%%%%%
  case { 'LoadBlock', 'CopyBlock' }
  LocalBlockLoadCopyFcn
    
  %%%%%%%%%%%%%%%
  % DeleteBlock %
  %%%%%%%%%%%%%%%
  case 'DeleteBlock'
  LocalBlockDeleteFcn
    
  %%%%%%%%%%%%%%%%
  % DeleteFigure %
  %%%%%%%%%%%%%%%%
  case 'DeleteFigure'
  LocalFigureDeleteFcn

  %%%%%%%%%%%%%%%%%%%%
  % Unexpected flags %
  %%%%%%%%%%%%%%%%%%%%
  otherwise
  if ischar(flag),
    errmsg=sprintf('Unhandled flag: '' 	%s''', flag);
  else
    errmsg=sprintf('Unhandled flag: 	%d', flag);
  end
  
  error(errmsg);
  
end


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%new%%%%%%%%%%%%%%
str = 1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% end eyesampl

%
%=============================================================================
% mdlInitializeSizes
% Return the sizes, initial conditions, and sample times for the S-function.
%=============================================================================
%
function [sys,x0,ts] = mdlInitializeSizes(...
	timeRange, boundary, storeLength, eyeLine, scatterLine, sampleTime);

%
% call simsizes for a sizes structure, fill it in and convert it to a sizes array.
%
sizes = simsizes;

sizes.NumContStates  = 0;
sizes.NumDiscStates  = 3;   % 3 discrete states
sizes.NumOutputs     = 0;
sizes.NumInputs      = -1;  % dynamically sized input vector
sizes.DirFeedthrough = 0;   % the meter does not have direct feedthrough
sizes.NumSampleTimes = 1;

sys = simsizes(sizes);

%
% initialize the initial condition
%
x0 = [0, 0, 0]; 			% figure handle, u[last] input, last_mod_time

% x(1), the figure handle.
if isempty(sampleTime)
  sampleTime = [-1 0];
end;
if length(sampleTime) < 2
  sampleTime(2) = 0;
end
ts = [sampleTime(1), sampleTime(2)];

%
% str is always an empty matrix
%
str = [];

% end mdlInitializeSizes

%
%============================================================================
% mdlGetTimeOfNextVarHit
% Return the time of the next hit for this block. Note that the result 
% is absolute time.
%============================================================================
%
function sys = mdlGetTimeOfNextVarHit(t, x, u);  

if sampleTime(1) > 0
  sys = t + sampleTime(1);
else
  sys = [];
end;

% end mdlGetTimeOfNextVarHit

%
%=============================================================================
% mdlUpdate
% Handle discrete state updates, sample time hits, and major time step
% requirements.
%=============================================================================
%
function sys = mdlUpdate(t,x,u,...
   timeRange, boundary, storeLength, eyeLine, scatterLine, sampleTime);

%
% Locate the figure window associated with this block. If it's not a valid
% handle (it may have been closed by the user), then return.
%
figureHandle = GetEyesamplFigure(gcbh);
if ~ishandle(figureHandle)
  return;
end;  

threshold = .2;
eye_plot = ~((eyeLine(1)==0) + (eyeLine(1)=='0'));
scatter_plot = ~((scatterLine(1)==0) + (scatterLine(1) == '0'));
len_u = length(u);

if scatter_plot & (len_u > 2)
  sl_name = get_param(0,'CurrentSystem'); 
  block = get_param(sl_name ,'CurrentBlock'); 
  error(['Please set scatter plot line type to be zero in block ', sl_name, '/', block]);
  if len_u > 2
    error('The input signal length should be no larger than two.')
  end;
end;

plot_type = eye_plot + scatter_plot;
% in case of no plot
if plot_type <= 0
  return;
end;

if length(timeRange) < 2
  timeRange(2) = 0;
else
  timeRange(2) = rem(rem(timeRange(2), timeRange(1)) + timeRange(1), timeRange(1));
end;

if length(timeRange) < 3
  timeRange(3) = timeRange(1)/2 + timeRange(2);
end;

% initialize the figure
if x(1) == 0
  h_fig = x(1);
  % Initialize graph
  sl_name = gcs;
  block = get_param(sl_name,'CurrentBlock'); 
  sl_name_gcs = sl_name;
  if ~isempty(find(sl_name=='/'))
    sl_name = sl_name(find(sl_name=='/')+1 : length(sl_name));
  end;    

  [n_b, m_b]= size(block);
  if n_b < 1
    error('Cannot delete block while simulating');
  elseif n_b > 1
    error('Something wrong in get_param, You don''t have the current Simulink')
  end;
  
  %  if new_figure | old_figure
  %  generate a new figure here.
  x(1) = figureHandle;
  if plot_type == 1
    %open a single window figure
    delete(allchild(x(1)));
    figurePosition = get(x(1),'Position');
    figurePosition(3) = 360;	
    set(x(1), ...
	'Visible','on',...
	'Position', figurePosition );	  
    plt(1) = axes('Unit','norm',...
	'Pos',[.08, .08 .87,.87],...
	'Clipping', 'on',...
	'Parent', x(1),...
	'NextPlot','Add' ,...
	'HandleVisibility', 'off');
  elseif plot_type == 2
    % open a double window figure
    delete(allchild(x(1)));
    figurePosition = get(x(1),'Position');
    figurePosition(3) = 660;	
    set(x(1), ...
	'Visible','on',...
	'Position', figurePosition );	  
    plt(1) = axes('Unit','norm',...
	'Pos',[.08, .08 .8/2,.87],...
	'Clipping', 'on',...
	'Parent', x(1),...
	'NextPlot','Add',...
	'HandleVisibility', 'Off');
    plt(2) = axes('Unit','norm',...
	'Pos',[.08+.5, .08 .8/2,.87],...
	'Parent', x(1),...
	'NextPlot','Add',...
	'HandleVisibility', 'Off');
  end;
  
  i = 1;
  if eye_plot
    eye_plot = plt(i);
    i = i+1;
    set(x(1),'CurrentAxes',eye_plot);
    ax = [];
    lines = eyeLine;
    for j = 1:len_u+1;
      [col, lines] = strtok(lines, '/');
      if length(col) <= 1
	col = 'k-';
      end;
      if lower(col(1)) == 'n'
	ax(j) = 0
      else
	[linest, markst] = LineTypeSeparation(col(2:length(col)));
	ax(j) = plot(0,0,col,...    
	    'Erasemode','none',...
	    'Color',col(1),...
	    'LineStyle',linest,...
	    'Marker', markst,...
	    'Parent', eye_plot);
	set(ax(j), 'XData', [], 'YData', []);
      end;
    end;
    
    set(eye_plot,...
	'Xlim',[rem(timeRange(2)/timeRange(1),1)...
	    *timeRange(1), timeRange(1)+timeRange(2)], ...
	'Ylim',[boundary(1), boundary(2)], 'Clipping', 'on');
    set(eye_plot,'UserData',[ax, 0  ]);
    %                        |   | |==>space for time points
    %                        |   |==> number of NaN added
    %                        |===> have size of length(u)
  end;
  if (scatter_plot)
    scatter_plot = plt(i);
    i = i + 1;
    set(x(1),'CurrentAxes',scatter_plot);
    ax = [];
    lines = scatterLine;
    for j = 1:len_u
      [col, lines] = strtok(lines, '/');
      if length(col) <= 1
	col = 'k-';
      end;
      if ((len_u == 2) & (j == 2))
	ax(j) = 0;
      else
	if lower(col(1)) == 'n'
	  ax(j) = 0
	else
	  [linest, markst] = LineTypeSeparation(col(2:length(col)));
	  ax(j) = plot(0,0,col,...
	      'Erasemode','none',...
	      'Color',col(1),...
	      'LineStyle',linest,...
	      'Marker', markst,...
	      'Parent', scatter_plot);
	  if col(2) == '.'
	    set(ax(j), 'MarkerSize', 10);
	  end;
	  set(ax(j), 'XData', [], 'YData', []);
	end;
      end;
    end;
    if len_u == 2
      set(scatter_plot,...
	  'Xlim',[boundary(1), boundary(2)], ...
	  'Ylim',[boundary(1), boundary(2)]);
    else
      set(scatter_plot,...
	  'Xlim',[-1, 1],...
	  'Ylim',[boundary(1), boundary(2)]);
    end;
    set(scatter_plot,'UserData',[ax, abs(scatterLine)]);
  end;
  set(x(1),'UserData',[eye_plot, scatter_plot, timeRange, boundary, abs(eyeLine)]);
  %                    1         2             3           6         8
  set_param(sl_name_gcs, 'userdata', x(1));
  %  end;
elseif x(1) < 0
  % figure has been closed.
  return;
end;

plot_flag_test = allchild(0);
if isempty(plot_flag_test)
  return;
elseif isempty(find(plot_flag_test == x(1)))
  x(1) = -1;
  return;
end;

handles = get(x(1), 'UserData');
len_u = length(u);
changed_boundary   = 0;
if max(boundary ~= handles(6:7)) > 0
  changed_boundary = 1;
end;

mod_time = rem((t - timeRange(2))/timeRange(1), 1) * timeRange(1) + timeRange(2);
triggered = 0;
if (mod_time >= timeRange(3)) & (x(2) < timeRange(3))
  triggered = 1;
end;
x(2) = mod_time;

if handles(1) & eye_plot
  %eye_pattern plot
  sub_han = get(handles(1),'UserData');
  changed_timeRange = 0;
  if max(timeRange ~= handles(3:5)) > 0
    changed_timeRange = 1;
  end;
  if changed_boundary
    set(handles(1), 'Ylim', boundary);
  end;
  if changed_timeRange
    %this is a complicated process. Deal it later.
  end;
  len_h_userdata = length(handles);
  changed_line_type = 0;
  if (length(eyeLine) ~= len_h_userdata-7)
    changed_line_type = 1;
  elseif max(abs(eyeLine) ~= handles(8:len_h_userdata))
    changed_line_type = 1;
  else
    changed_line_type = 0;
  end;
  if changed_line_type
    lines = eyeLine;
    for i = 1 : len_u+1
      [col, lines] = strtok(lines, '/');
      if length(col) <= 1
	col = 'k-';
      end;
      if sub_han(i)
	[linest, markst] = LineTypeSeparation(col(2:length(col)));
	set(sub_han(i), ...
	    'Color',col(1),...
	    'LineStyle',linest,...
	    'Marker', markst);
      end;
    end;
    set(x(1),'UserData',[handles(1:7), abs(eyeLine)]);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频一区二区在线观看| 国产在线播放一区| 欧美本精品男人aⅴ天堂| 不卡高清视频专区| 激情亚洲综合在线| 亚洲愉拍自拍另类高清精品| 久久久久国产免费免费| 欧美日韩国产综合一区二区| 成人激情av网| 久久精品999| 首页综合国产亚洲丝袜| 日韩理论电影院| 国产欧美一区二区精品秋霞影院 | 久久精品视频在线看| 一区二区三区不卡视频| 精品少妇一区二区三区免费观看| 成人激情午夜影院| 国内精品写真在线观看| 日韩电影在线一区二区| 亚洲自拍都市欧美小说| 中文字幕中文字幕在线一区 | 秋霞av亚洲一区二区三| 亚洲三级在线免费| 中文字幕成人网| 久久久久久久久免费| 欧美色国产精品| 成人精品电影在线观看| 国产精品一区二区无线| 极品瑜伽女神91| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲激情六月丁香| 亚洲欧美日韩国产手机在线| 国产精品美女久久久久久久| 国产日韩影视精品| 久久精品亚洲精品国产欧美kt∨| 欧美成人一级视频| www国产精品av| 精品成a人在线观看| 日韩欧美的一区| 欧美r级电影在线观看| 日韩欧美激情四射| 精品日韩一区二区三区| 精品少妇一区二区三区免费观看 | www.亚洲人| 94色蜜桃网一区二区三区| 成人黄色网址在线观看| 成人一区二区三区| av动漫一区二区| 色美美综合视频| 欧美日韩一区视频| 日韩一级大片在线观看| 日韩精品最新网址| 久久免费美女视频| 国产精品久久精品日日| 亚洲精品五月天| 亚洲成人资源网| 看电影不卡的网站| 国产91丝袜在线观看| 97久久人人超碰| 欧美日韩高清不卡| 欧美zozozo| 国产精品久久久久久久蜜臀| 亚洲精品老司机| 日韩精品色哟哟| 国产精品亚洲а∨天堂免在线| 不卡的av在线| 欧美老女人在线| 国产亚洲成av人在线观看导航| 中文字幕在线观看一区| 亚洲成a人片在线观看中文| 蜜臀国产一区二区三区在线播放 | 久久不见久久见免费视频7| 国产成人在线免费观看| 91麻豆精品秘密| 337p亚洲精品色噜噜狠狠| 久久伊99综合婷婷久久伊| 亚洲素人一区二区| 日韩福利视频网| 成人免费视频视频| 欧美丰满高潮xxxx喷水动漫| 精品国产区一区| 一区二区三区国产精华| 久久精品国产亚洲一区二区三区| 成人激情免费视频| 日韩一二三区视频| 亚洲精品自拍动漫在线| 狠狠色狠狠色合久久伊人| 91亚洲精品久久久蜜桃网站| 5月丁香婷婷综合| 中文字幕一区二区在线播放| 日韩精品1区2区3区| 成人免费视频视频在线观看免费 | 国产精品国产自产拍高清av王其| 日韩1区2区3区| eeuss鲁片一区二区三区在线看| 717成人午夜免费福利电影| 国产精品国产三级国产普通话99| 日韩av电影免费观看高清完整版在线观看| 丰满少妇久久久久久久| 欧美一区二区成人6969| 亚洲激情图片小说视频| 福利电影一区二区| 精品精品国产高清a毛片牛牛| 亚洲精品日日夜夜| 成人性生交大片免费看视频在线| 91精品婷婷国产综合久久| 亚洲精品伦理在线| 国产一区二区精品久久99| 日韩一区二区电影网| 一区二区三区.www| 99精品热视频| 欧美激情资源网| 国产一二精品视频| 日韩免费电影一区| 日韩国产成人精品| 欧美剧情片在线观看| 一区二区三区在线影院| 成人做爰69片免费看网站| 久久美女高清视频| 久久精品国产99| 欧美一级一级性生活免费录像| 亚洲第一会所有码转帖| 色综合天天综合网国产成人综合天| 久久精品无码一区二区三区| 国内久久婷婷综合| 欧美成人猛片aaaaaaa| 青青草原综合久久大伊人精品优势| 欧美日韩一级视频| 亚洲国产精品久久人人爱蜜臀| 色婷婷久久久综合中文字幕| 综合激情成人伊人| 91偷拍与自偷拍精品| 亚洲欧洲成人精品av97| 99久久精品一区| 亚洲人成在线播放网站岛国| 99久久精品免费看国产 | 免费看日韩精品| 欧美一区二区视频免费观看| 午夜精品久久久久久久99樱桃| 欧美亚洲一区二区三区四区| 亚洲自拍偷拍网站| 欧美日韩另类一区| 日韩激情视频在线观看| 日韩欧美国产一区二区三区| 捆绑紧缚一区二区三区视频| 久久先锋影音av| 成人一区二区三区在线观看| 亚洲欧美一区二区三区国产精品| 一本久久综合亚洲鲁鲁五月天 | 亚洲精品免费在线观看| 在线看一区二区| 天天av天天翘天天综合网 | 亚洲欧美日韩国产综合在线| 色综合久久综合网欧美综合网| 夜夜嗨av一区二区三区四季av | 国产二区国产一区在线观看| 国产人伦精品一区二区| 丁香婷婷综合网| 亚洲激情图片一区| 4438成人网| 国产成人精品综合在线观看| 亚洲少妇中出一区| 这里只有精品免费| 国产在线不卡一区| 亚洲精品久久嫩草网站秘色| 69堂精品视频| 国产+成+人+亚洲欧洲自线| 亚洲美女电影在线| 日韩欧美国产高清| 99热在这里有精品免费| 亚洲成av人片在线观看| 亚洲精品在线观看网站| 成人一区二区三区视频在线观看| 亚洲一区二区精品视频| 日韩欧美视频在线| 91原创在线视频| 美女高潮久久久| 亚洲色图20p| 精品毛片乱码1区2区3区| 91在线精品一区二区三区| 秋霞国产午夜精品免费视频| 国产精品蜜臀在线观看| 717成人午夜免费福利电影| 成人动漫一区二区三区| 蜜臀99久久精品久久久久久软件| 中文字幕欧美国产| 日韩一区二区在线观看视频| www.欧美日韩| 精品亚洲欧美一区| 亚洲国产wwwccc36天堂| 久久精品网站免费观看| 91精品国产综合久久久久久 | 日韩一区二区在线播放| 99久久免费精品高清特色大片| 天天色天天爱天天射综合| 午夜精品免费在线| 中文字幕一区二区三区蜜月| 精品电影一区二区三区 | 26uuu另类欧美| 欧美日韩卡一卡二|