Adds the index of equations (M_.blocksEQU) for a block decomposed model without bytecode option and use this index in resid.m to retrieve the residuals

time-shift
Ferhat Mihoubi 2012-03-08 15:28:17 +01:00
parent 8c4f2c79b7
commit dfbd6c8f2a
2 changed files with 10 additions and 5 deletions

View File

@ -72,11 +72,7 @@ if options_.block && ~options_.bytecode
oo_.steady_state,...
[oo_.exo_steady_state; ...
oo_.exo_det_steady_state], M_.params);
if isempty(M_.blocksMFS{i})
idx = var_indx;
else
idx = M_.blocksMFS{i};
end
idx = M_.blocksEQU{i};
z(idx) = r;
end
elseif options_.bytecode

View File

@ -1502,6 +1502,15 @@ StaticModel::writeOutput(ostream &output, bool block) const
output << "];" << endl;
}
output << "M_.blocksEQU = cell(" << nb_blocks << ", 1);" << endl;
for (int b = 0; b < (int) nb_blocks; b++)
{
unsigned int block_size = getBlockSize(b);
output << "M_.blocksEQU{" << b+1 << "} = [ ";
for (int i = 0; i < (int) block_size; i++)
output << getBlockEquationID(b, i)+1 << "; ";
output << "];" << endl;
}
}
SymbolType