Home > vbmeg > functions > tool_box > linear_connectome_dynamics_toolbox > lcd_generate_data.m

lcd_generate_data

PURPOSE ^

GENERATE DATA GIVEN MAR MODEL AND INPUTS

SYNOPSIS ^

function xx = lcd_generate_data(conMAR, u, xx0)

DESCRIPTION ^

 GENERATE DATA GIVEN MAR MODEL AND INPUTS

 [Input]
   conMAR : concatenated MAR coeffient matrix [Nv Nvxdmax]
    u     : input vectors [Nv Nt]
 [Optional Inputs]
   xx0    : initial values [Nv, dmax] 
           if not given, zero vectors are assumed.
 [Output]
   xx   : simulated data   [Nv Nt]

 2017/12/20 O.Yamashita

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function xx = lcd_generate_data(conMAR, u, xx0) 
0002 % GENERATE DATA GIVEN MAR MODEL AND INPUTS
0003 %
0004 % [Input]
0005 %   conMAR : concatenated MAR coeffient matrix [Nv Nvxdmax]
0006 %    u     : input vectors [Nv Nt]
0007 % [Optional Inputs]
0008 %   xx0    : initial values [Nv, dmax]
0009 %           if not given, zero vectors are assumed.
0010 % [Output]
0011 %   xx   : simulated data   [Nv Nt]
0012 %
0013 % 2017/12/20 O.Yamashita
0014 
0015 [Nv1,Ncol] = size(conMAR);
0016 dmax = Ncol/Nv1;  % maximum delay
0017 [Nv2,Nt] = size(u);
0018 
0019 if Nv1 ~= Nv2, error('incosistent matrix size, conMAR or u !'); end
0020 
0021 if nargin < 3
0022     xx0 = zeros(Nv1, dmax);
0023 end
0024 
0025 %
0026 x = [xx0 zeros(Nv1,Nt)];
0027 for tt = dmax+1 : Nt+dmax
0028     tt;
0029     x0 = x(:,tt-1:-1:tt-dmax);   
0030     x(:,tt) = conMAR*x0(:)+u(:,tt-dmax);
0031 end
0032 
0033 xx = x(:,dmax+1:end);

Generated on Mon 22-May-2023 06:53:56 by m2html © 2005