Bug fix in growth neutrality correction.

An index was used instead of a parameter value when modifying the
correction (for handling models with non optimizing agents and/or models with
exogenous variables).
time-shift
Stéphane Adjemian (Charybdis) 2019-05-17 12:27:15 +02:00
parent 75945a62ac
commit 9be7568c94
1 changed files with 3 additions and 3 deletions

View File

@ -167,7 +167,7 @@ for e=1:number_of_pac_eq
if isnan(equations.(eqtag).optim_additive.params(i)) && equations.(eqtag).optim_additive.bgp(i)
tmp = tmp + equations.(eqtag).optim_additive.scaling_factor(i);
elseif ~isnan(equations.(eqtag).optim_additive.params(i)) && equations.(eqtag).optim_additive.bgp(i)
tmp = tmp + equations.(eqtag).optim_additive.params(i)*equations.(eqtag).optim_additive.scaling_factor(i);
tmp = tmp + DynareModel.params(equations.(eqtag).optim_additive.params(i))*equations.(eqtag).optim_additive.scaling_factor(i);
end
end
cc = cc - gamma*tmp;
@ -178,7 +178,7 @@ for e=1:number_of_pac_eq
if isnan(equations.(eqtag).non_optimizing_behaviour.params(i)) && equations.(eqtag).non_optimizing_behaviour.bgp(i)
tmp = tmp + equations.(eqtag).non_optimizing_behaviour.scaling_factor(i);
elseif ~isnan(equations.(eqtag).non_optimizing_behaviour.params(i)) && equations.(eqtag).non_optimizing_behaviour.bgp(i)
tmp = tmp + equations.(eqtag).non_optimizing_behaviour.params(i)*equations.(eqtag).non_optimizing_behaviour.scaling_factor(i);
tmp = tmp + DynareModel.params(equations.(eqtag).non_optimizing_behaviour.params(i))*equations.(eqtag).non_optimizing_behaviour.scaling_factor(i);
end
end
cc = cc - (1.0-gamma)*tmp;
@ -189,7 +189,7 @@ for e=1:number_of_pac_eq
if isnan(equations.(eqtag).additive.params(i)) && equations.(eqtag).additive.bgp(i)
tmp = tmp + equations.(eqtag).additive.scaling_factor(i);
elseif ~isnan(equations.(eqtag).additive.params(i)) && equations.(eqtag).additive.bgp(i)
tmp = tmp + equations.(eqtag).additive.params(i)*equations.(eqtag).additive.scaling_factor(i);
tmp = tmp + DynareModel.params(equations.(eqtag).additive.params(i))*equations.(eqtag).additive.scaling_factor(i);
end
end
cc = cc - tmp;