Add shock discretization functionality #206
Open
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.
This PR is duplicate of #170. Merging the previous PR with the main branch became unfeasible because there were too many merge conflicts.
This PR will add a way to specify multiple common shock types directly through the interface of LCM.
To accomplish this, a new
ShockGridgrid class will be added. To make the values of this grid depend on parameters, the values will be calculated dynamically once the user provides them. During the solution the shocks will be discretized like a normal ContinousGrid, but during the simulation, the next values will be drawn from the shocks undiscretized probability distribution. Here the shocks transition probabilities will be linearly interpolated, as the discretized transition probabilities are only calculated at the gridpoints, but subjects can land between gridpoints.