Default to single sector and enable heterogeneous CES epsilon#65
Closed
vahid-ahmadi wants to merge 2 commits intoPSLmodels:mainfrom
Closed
Default to single sector and enable heterogeneous CES epsilon#65vahid-ahmadi wants to merge 2 commits intoPSLmodels:mainfrom
vahid-ahmadi wants to merge 2 commits intoPSLmodels:mainfrom
Conversation
Two changes:
1. Make single-sector (M=1) the default run mode. The 8-sector industry
calibration is now opt-in via `multi_sector=True` parameter on
solve_steady_state() and run_transition_path(), or via the
`multi-sector` CLI flag:
uv run python examples/run_oguk.py ss pooled # M=1
uv run python examples/run_oguk.py ss pooled multi-sector # M=8
2. Enable calibrated heterogeneous CES elasticities (epsilon) in the
8-sector mode. Previously forced to 1.0 (Cobb-Douglas) for all
sectors due to solver NaN issues — now uses literature values from
Chirinko (2008) and Knoblach et al. (2020):
Energy=0.50, Construction=0.70, Trade & Transport=1.00,
Info & Finance=1.20, Real Estate=0.40, Business Services=1.30,
Public & Other=0.90, Manufacturing=0.80
Supporting changes:
- Recalibrate TFP (Z) using CES Solow residuals instead of
Cobb-Douglas residuals when epsilon != 1
- Use hybr root-finder (Powell hybrid) instead of LM for
multi-sector SS — LM gets stuck at ~1e-5 residuals
- Relax mindist_SS and RC_SS to 1e-4 for multi-sector
Requires OG-Core PR PSLmodels/OG-Core#1096 (numerical guards for
CES production functions).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
multi_sector=Trueonsolve_steady_state()/run_transition_path(), ormulti-sectorCLI flag. This makes the default run faster and matches OG-Core's built-in M=1 defaults.Usage
Dependencies
Requires PSLmodels/OG-Core#1096 (numerical guards for CES production functions) to prevent NaN when ε<1 and inputs are near zero.
Test plan
🤖 Generated with Claude Code