function [ ys,check ] = Neoclassical_Model_SP_Indivisible_steadystate( ys,exo )
% function [ ys,check ] = Neoclassical_Model_SP_Indivisible_steadystate( ys,exo )
% computes the steady state for the Neoclassical_Model_SP_Indivisible.mod and uses a numerical
% solver to do so
% Inputs:
% - ys [vector] vector of initial values for the steady state of the
% endogenous vaiables
% - exo [vector] vector of values for the exogenous variables
%
% Output:
% - ys  [vector] vector of steady state values for the endogenous variables
% - check  [scalar] set to 0 if steady state computation worked and to 1 if
% not (allows to impose restriction on parameters)

global M_

% read out parameters to access them with their name 
NumberOfParameters = M_.param_nbr;
for ii = 1:NumberOfParameters
    paramname = deblank(M_.param_names(ii,:));
    eval([paramname ' = M_.params(' int2str(ii) ');']);
end
% initialize indicator
check = 0;

%% Enter model equations here
l = aa*(1 - alppha)*(1-(((1/betta) - (1 - delta))/(alppha*delta)));
k = ((alppha/(1/betta - (1 - delta)))^(1/(1 - alppha)))*l;
invest = delta*k;
y = (k^alppha)*(l^(1-alppha));
c = y - invest;
y_l = y/l;
z = 0;
log_y=log(y);
log_invest=log(invest);
log_c=log(c);
log_l=log(l);
log_k=log(k);
log_y_l=log(y_l);
%% end own model equations

for iter = 1:length(M_.params) %update parameters set in the file
    eval([ 'M_.params(' num2str(iter) ') = ' M_.param_names(iter,:) ';'])
end

NumberOfEndogenousVariables = M_.orig_endo_nbr; %auxiliary variables are set automatically
for ii = 1:NumberOfEndogenousVariables
    varname = deblank(M_.endo_names(ii,:));
    eval (['ys(' int2str(ii) ') = ' varname ';']);
end


end

