?? tfar_llfe.m
字號:
function l= tfar_llfe(AB, y, re_im)% function l= tfar_llfe(AB, y, re_im)% This file is part of the TFPM toolbox v1.0 (c)% michael.jachan@tuwien.ac.at and underlies the GPL.% % Computation of the NEGATIVE exact log-likelihood function of% Gaussian TFAR(M, L; N; 1/2) models with parameters AB= [Aml% B0l]. Takes care of re_im! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%clear;tfpm;N = 256;MAR = 7;LAR = 5;MMA = 0;LMA = LAR;re_im= 'r';mo_no= 'n';tfpm_file_gen;%-------------beta = 1/2;y= tfarma_gen(randn(N, 1), Aml, Bml, beta);Aml0= Aml;B0l0= Bml;Amlref= Aml;B0lref= Bml;if(re_im=='r') y= real(y); Aml0= param_hermite(Aml0); Aml0= [real(Aml0(1:LAR+1, 2:end)); imag(Aml0(LAR+2:end, 2:end))];else Aml0= [real(Aml0(:, 2:end)) imag(Aml0(:, 2:end))];end;B0l0= param_hermite(B0l0);B0l0= [real(B0l0(1:LAR+1, :)); imag(B0l0(LAR+2:end, :))];AB= [Aml0 B0l0];%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Dimensions:N= length(y);% Check for re_im:if(re_im=='r') [MAR, LAR]= param_dim(AB);% Split up AB, add a_{0, l}: Aml= [[zeros(LAR, 1); 1; zeros(LAR, 1)] AB(:, 1:end-1)]; Aml= [Aml(1:LAR+1, :); flipud(Aml(1:LAR, :))] + j*[flipud(-Aml(LAR+2:end, :)); zeros(1, MAR+1); Aml(LAR+2:end, :)];else [MAR, LAR]= param_dim(AB);MAR= MAR/2; Aml= [[zeros(LAR, 1); 1; zeros(LAR, 1)] AB(:, 1:MAR)] + j*[zeros(2*LAR+1, 1) AB(:, MAR+1:2*MAR)];end;B0l= AB(:, end);B0l= [B0l(1:LAR+1); flipud(B0l(1:LAR))] + j*[flipud(-B0l(LAR+2:end)); 0; B0l(LAR+2:end)];%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Amlref-AmlB0lref-B0l%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Anm= param_expand(Aml, N);% Check for re_im:if(re_im=='r') [MAR, LAR]= param_dim(AB);% Split up AB, add a_{0, l}: Aml= [[zeros(LAR, 1); 1; zeros(LAR, 1)] AB(:, 1:end-1)]; Aml= [Aml(1:LAR+1, :); flipud(Aml(1:LAR, :))] + j*[flipud(-Aml(LAR+2:end, :)); zeros(1, MAR+1); Aml(LAR+2:end, :)];else [MAR, LAR]= param_dim(AB);MAR= MAR/2; Aml= [[zeros(LAR, 1); 1; zeros(LAR, 1)] AB(:, 1:MAR)] + j*[zeros(2*LAR+1, 1) AB(:, MAR+1:2*MAR)];end;B0l= AB(:, end);B0l= [B0l(1:LAR+1); flipud(B0l(1:LAR))] + j*[flipud(-B0l(LAR+2:end)); 0; B0l(LAR+2:end)];Bn0= real(param_expand(B0l, N));e= tvarma_gen(y, ones(N, 1), Anm)./Bn0;l= (N*log(2*pi) + 2*sum(log(Bn0)) + real(e'*e))/2;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Slow, exact reference:Anm= param_expand(Aml, N);Bn0= real(param_expand(B0l, N));H= tvarma_impr(Anm, Bn0);R= H*H';lref= (N*log(2*pi) + log(real(det(R))) + real(y'*inv(R)*y))/2;[l lref]%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -