0001
0002
0003
0004
0005
0006
0007 function [TEBD,params] = TEBD_GetAlgorithm(args)
0008 params.vers = 2;
0009 params.subvers = 2;
0010 if nargin == 0 || isempty(args)
0011 TEBD = @TEBD_NC_v2_2;
0012 return;
0013 end
0014
0015 if ~any(strcmp(args,'NC')) && any(strcmp(args,'C'))
0016 NC = 0;
0017 else
0018 NC = 1;
0019 end
0020
0021 if ~any(strcmp(args,'v2.2')) && any(strcmp(args,'v2.1'))
0022 params.subvers = 1;
0023 else
0024 params.subvers = 2;
0025 end
0026
0027 algstr = 'TEBD';
0028 if NC
0029 algstr = [algstr,'_NC'];
0030 end
0031 algstr = [algstr,'_v',num2str(params.vers),'_',num2str(params.subvers)];
0032 eval(['TEBD = @',algstr,';']);
0033
0034