Add a method (empty) for preSolve called checkRestrictions that can b… #324
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…e overwritten in classes inheriting from AgentType to check for illegal parameter values.
Fixes #204 by providing infrastructure for checking parameter restrictions.
This way of calling
AgentType.preSolve(self)
should be fine right @mnwhite ? Currently, all the classes that defined apreSolve
failed to check for length time varying things for example, unlessAgentType.preSolve
was called somewhere I cannot see. The idea is basically that if you have any important restrictions such as values of CRRA, DiscFac, or something else, you write your owncheckRestrictions
method and raise an exception if the input fails to meet the requirements.This way still allow users to construct the models,
checkRestrictions
is simply guarding calls tosolve()
.