Switch to side-by-side view

--- a
+++ b/Supporting Functions/ARMA_BIC.m
@@ -0,0 +1,32 @@
+%GET ARMA PARAMS.
+function [arma_mod] = ARMA_BIC(x,op,oq)
+
+    %Compute the autocorrelation coefficients.
+    %[d1,p1] = aryule(x(:,1),3);
+    
+    %Brockwell and Davis recommend using AICc for finding p-AR and q-MA
+
+    LOGL = zeros(op,oq);
+    PQ = zeros(op,oq);
+    for p = 1:op
+        parfor q = 1:oq
+            mod = arima(p,0,q);
+            [fit,~,logL] = estimate(mod,x,'print',false);
+            LOGL(p,q) = logL;
+            PQ(p,q) = p+q;
+         end
+    end
+    
+    %Find the values that minimize the BIC
+    LOGL = reshape(LOGL,size(LOGL,1)*size(LOGL,2),1);
+    PQ = reshape(PQ,size(PQ,1)*size(PQ,2),1);
+    [~,bic] = aicbic(LOGL,PQ+1,100);
+    bicmat = reshape(bic,op,oq);
+    [p_val,q_val] =find(bicmat ==  min(min(bicmat)));
+   
+    %Extract the parameters for the AR_model
+    mod = arima(p_val,0,q_val)
+    arma_mod = estimate(mod,x)
+    %armax(x,[p_val,qval])
+
+end
\ No newline at end of file