
% funge...?
% ... Porc!
% DOMATO! (MatLab demmerda!)
% Devo rivedere i valori iniziali [x(0)].

% Variabili
% x0 = [  c , N  ,  n ,  k , C  ,  i , v  ,  m , u  ,  q  ,  p  ,theta,  w  ,  L  ,  l  ,   Y  ,  r  ,  z  ,  e  ];
% x0 = [x(1),x(2),x(3),x(4),x(5),x(6),x(7),x(8),x(9),x(10),x(11),x(12),x(13),x(14),x(15),x(16) ,x(17),x(18),x(19)];

  x0 = [0.8; 0.7; 0.7; 0.9; 0.8; 0.0162; 0.081; 0.063; 0.1; 0.78; 0.78; 0.81; 0.8571; 0.2; 0.1685; 1.5; 0.015; 0.95; 0.05];
% x0 = [0.1; 0. 3; 0.01; 0.7; 0.1; 0.3; 0.7; 0; 1; 1; 0.5; 0.5; 1.5; 9; 1; 1; 1; 0.5; 0.5; 0.05; 0.3; 1; 1; 0; 0.01];
options=optimset('Display','iter','maxFunEvals',10000,'MaxIter',10000);   % Option to display output
[x,fval,output] = fsolve('Equilibrio',x0,options);  % Call optimizer

%  PRENDO GLI STESSI VALORI INIZIALI UTILIZZATI NEL FILE .mod
%  initval;
%  C=0.8;
%  c=1/C;
%  n=0.59;
%  k=0.9;
%  r=0.015;
%  y=10;
%  i=delta_k*k;
%  m=(delta/(1-delta))*0.6;
%  u=0.1;
%  q=0.78;
%  p=0.78;
%  v= m/p;
%  theta=v/u;
%  w= 1;  
%  L= 0.31;
%  l=H*(L^(-phi));
%  z=1;


% I valori delle nuove variabili in Stato Stazionario verranno caricate in:
% Marco RBC.mod file

% Le variabili "X(_)" sono le variabili in S.S.

 c_s1       =    x(1);       
 N_s1       =    x(2);       
 n_s1       =    x(3);       
 k_s1       =    x(4);
 C_s1       =    x(5);        
 i_s1       =    x(6);
 v_s1       =    x(7);      
 m_s1       =    x(8);       
 u_s1       =    x(9);
 q_s1       =    x(10);
 p_s1       =    x(11);
 theta_s1   =    x(12);
 w_s1       =    x(13);
 L_s1       =    x(14);
 l_s1       =    x(15);
 Y_s1       =    x(16);
 r_s1       =    x(17);
 z_s1       =    x(18);
 e_s1       =    x(19);
 % e ed z vanno a comporre lo shock, le considero normali variabili?
 
 %%% CON QUESTA ARRAY ATTRIBUIAMO IL NOME ALLE VARIABILI:
  Cellule(1,1) = {'c ='};
  Cellule(2,1) = {'N ='};
  Cellule(3,1) = {'n ='};
  Cellule(4,1) = {'k ='};
  Cellule(5,1) = {'C ='};
  Cellule(6,1) = {'i ='};
  Cellule(7,1) = {'v ='};
  Cellule(8,1) = {'m ='};
  Cellule(9,1) = {'u ='};
  Cellule(10,1) = {'q ='};
  Cellule(11,1) = {'p ='};
  Cellule(12,1) = {'theta ='};
  Cellule(13,1) = {'w ='};
  Cellule(14,1) = {'L ='};
  Cellule(15,1) = {'l ='};
  Cellule(16,1) = {'Y ='};
  Cellule(17,1) = {'r ='};
  Cellule(18,1) = {'z ='};
  Cellule(19,1) = {'e ='};
  

  %%% CON QUESTA ARRAY SI ATTRIBUISCONO I VALORI ALLE VARIABILI:
  Cellule(1,2) = {x(1)};
  Cellule(2,2) = {x(2)};
  Cellule(3,2) = {x(3)};
  Cellule(4,2) = {x(4)};
  Cellule(5,2) = {x(5)};
  Cellule(6,2) = {x(6)};
  Cellule(7,2) = {x(7)};
  Cellule(8,2) = {x(8)};
  Cellule(9,2) = {x(9)};
  Cellule(10,2) = {x(10)};
  Cellule(11,2) = {x(11)};
  Cellule(12,2) = {x(12)};
  Cellule(13,2) = {x(13)};
  Cellule(14,2) = {x(14)};
  Cellule(15,2) = {x(15)};
  Cellule(16,2) = {x(16)};
  Cellule(17,2) = {x(17)};
  Cellule(18,2) = {x(18)};
  Cellule(19,2) = {x(19)};
  
      
 
% Display the stationary state:

 S_State =  [x(1); 
            x(2);
            x(3);
            x(4); 
            x(5); 
            x(6); 
            x(7);
            x(8);
            x(9);
            x(11);
            x(12);
            x(13); 
            x(14);
            x(15);
            x(16);
            x(17);
            x(18);
            x(19)];

        

disp('Stationary state =');
%disp(S_State);
disp(Cellule);