%NCC.M clc clear all format compact %Deep parameters and steady-state values [RSTAR, SIG, OMEGA, BETTA1, ALFA, MU, z, PAIZ, Kss, QQss, Css, Hss, LAss, Ass, Yss, BETTAss] = ncc_ss;; zL = z(1); zH = z(2); DH =20;% KAPA*Kss; %upper bound on debt DL = -10; %lower bound on debt m = 1000; %number of grid points n = 50; %number of regressors a = chebygrid(DL,DH,m); %debt grid in levels X = chebyreg(m,n); %regressors D = inv(X'*X); %Regression Parameters Low state aL = zeros(n,1); aL(1) = log(LAss/RSTAR);%log(LAss/RSTAR*.5); %Regression Parameters High state aH = aL; dist=1; iter =1; while dist>1e-12 laL_o_rL = exp(X*aL) ; laH_o_rH = exp(X*aH); [rL, rH, laH, laL, hL, hH, yL, yH, cL, cH, apL, apH, bettaL, bettaH] = ncc_variables(laL_o_rL, laH_o_rH,a, DL, DH); WL = chebyreg2(apL,DL,DH,n); WH = chebyreg2(apH,DL,DH,n); lapLH = exp(WL*aH) * RSTAR; lapLL = exp(WL*aL)*RSTAR; lapL = [lapLL lapLH] * PAIZ(1,:)'; lapHL = exp(WH*aL)*RSTAR; lapHH = exp(WH*aH)*RSTAR; lapH = [lapHL lapHH] * PAIZ(2,:)'; rhsL = log (bettaL .* lapL); rhsH = log (bettaH .* lapH); aLold = aL; aHold = aH; aold = [aLold;aHold]; aLnew = D*X'*rhsL; aHnew = D*X'*rhsH; anew = [aLnew;aHnew]; aL = aLnew; aH = aHnew; dist = max(abs(anew-aold)) iter = iter+1 end save 1000_50