OPENFLEX feedback on the completed zero-sensitivity experiment

Local transitions, temporary expenditure pulses and the Ξ cost-conversion channel

Author

LEEDS_MODEL research notes

Published

October 2, 2026

What this report establishes

The object is the completed EU/RoW OPENFLEX run with adaptive-expectations speed θ=1, portfolio return sensitivity σ=0, no scenario shock and 100 solved periods. The original trajectory is retained; this work solves selected periods and short disturbed branches from that cache. It does not repeat the 100-period run or change the accepted scenario grid.

Measured: local transitions contain growing price/activity directions at periods 10 and 20. Temporary economic expenditure pulses leave growing exchange-rate deviations after spending returns to its baseline. These results support amplification between periods in this experiment, beyond the accounting observation that residual bill supply outgrows foreign-bill demand. They do not yet identify a complete minimal causal loop or prove instability on the entire accounting manifold.

Measured concerning Ξ: independent production-price reconstruction and currency-unit checks find no orientation or conversion defect. The current exchange rate enters Ξ correctly. Freezing Ξ’s response to disturbances changes local wealth, value-added and exchange-rate responses materially. The comparisons below distinguish that dynamic contribution from an implementation error.

All scientific measurements below are from output/calibration/openflex_local_20261002/. The cache SHA-256 is 28c4842b7737420b7337621f3a0143423e7aea9976323dd3b89a9d4b5889f52e; the original launch settings and all 20 recorded source hashes were checked before loading it. Canonical engine equations, calibration, workbook, frozen manuscripts and accepted caches are unchanged.

The experiment now loads explicitly

The previous R/dynamics/arm_context.R used the registry baseline or its σ=1 period-ten fallback. That was a different experiment. It now accepts --rds, requires a launch-provenance JSON and a separate output directory, verifies hashes, arm, shock and horizon, and restores the recorded leeds.* settings. A deliberately incorrect cache hash is rejected. Custom matrix builds also reject lagged-support screens from different cache/settings signatures.

The local period solver uses the original price references, spin-up offset and under-relaxation, with fixed inner sweep counts and an outer exchange-rate secant solve. At periods 10 and 20, 65/130/260 sweeps reproduce saved states with maximum scaled discrepancies below 3.64e-12. Scale means division by max(abs(saved value),1) for each state row. The original bill-market residual remains about a few 10⁻⁷ in model currency; precision does not make it exactly zero.

Within-period clearing is different from feedback between periods

Let q be the current quote in RoW currency per EU currency. At a fixed lagged state, solve the period with q held fixed. Its residual foreign-bill supply S is in RoW currency, EU household demand D is in EU currency, and the clearing gap is H(q)=S(q)/D(q)−q. At σ=0, D=0.03 times EU wealth; the share is fixed, but wealth is endogenous.

Central differences at relative quote steps 10⁻⁴, 10⁻⁵ and 10⁻⁶, with 65/130/260 sweeps, give:

Period d(S/D)/dq Supply elasticity Demand elasticity d EU CAB/dq
5 10 -1.313034 -1.387428 -0.074394 116.79076
14 20 -1.182276 -1.253769 -0.071493 85.89829

A higher current quote reduces supply more strongly than it reduces demand. The fully solved fixed-quote ratio map has a negative slope with magnitude above one, explaining why direct iteration of that map oscillates. This is not a positive within-period runaway, and it is not the transition between economic periods. The secant solver clears the market accurately instead of iterating that ratio directly.

Both local current-account derivatives are positive. The observed appreciating trajectory therefore cannot be explained solely by saying that a higher current quote immediately worsens the EU current account at these early states. Lagged substitution, prices, wealth, fiscal balances and portfolio stocks evolve together.

Local modes use the same cache, but require accounting qualifications

For each active lagged state, the transition derivative includes the implicit response of the cleared quote. With P the fixed-quote period map, the derivative is P_lag−P_q H_lag/H_q. Representative columns were checked against complete outer re-clearing; the largest relative vector discrepancy is below 4×10⁻⁶ at each period. That selected-column check is not certification of every matrix entry.

Each matrix has 809 retained endogenous lagged coordinates. The structural activity/settlement restriction retains 703 and removes 106 downstream reporting coordinates. The raw leading modes have substantial price, employment and output loadings. Their normalized eigenvector magnitudes are coordinate-dependent descriptions, not variance shares or causal contributions.

The raw period-ten leading eigenvector violates the reciprocal-quote tangent at the previous state. A drifting trajectory has different input and output accounting tangents, so the eigenvalues of a frozen-time redundant-coordinate matrix need care. An additional transformation eliminates eleven exact identities: reciprocal quotes and σ=0 fixed-portfolio holdings. These identities were verified against the cache before reduction.

Period Raw feedback root Quote/portfolio reduced root
10 1.101486 1.094120
20 1.123540 1.110536

The reduced matrices contain 798 coordinates, including reporting states. Their leading price/activity directions remain above one, but this reduction does not impose every financial-market and balance-sheet constraint. In particular, the isolated EU debt root matching 1+its bill rate is not established as an admissible economic disturbance. Earlier accounting-residual debt diagnoses must not be reinstated from that root.

Independent central solved-period differences along the reduced leading directions check relative steps 10⁻⁴/10⁻⁵ and 130/260 sweeps:

t sweeps eps matrix_root directional_multiplier relative_vector_error
10 130 1e-04 1.094120 1.094121 7e-07
10 130 1e-05 1.094120 1.094121 7e-07
10 260 1e-04 1.094120 1.094121 7e-07
10 260 1e-05 1.094120 1.094121 7e-07
20 130 1e-04 1.110535 1.110536 8e-07
20 130 1e-05 1.110535 1.110536 8e-07
20 260 1e-04 1.110535 1.110536 8e-07
20 260 1e-05 1.110535 1.110536 8e-07

These tests validate the numerical action along the specified partial-accounting-reduced directions. Neither those roots nor 1.138 are acceptance targets for the trajectory’s fitted ordinary multiplier of approximately 1.148. The path is drifting, its derivatives change, and an individual local root is not the product of those changing transitions.

Temporary spending pulses demonstrate propagation after forcing stops

At period 9, increase EU or RoW real government consumption by 10⁻⁴ or 10⁻⁵ of that region’s baseline spending. At period 10, cancel the carried increment through the exogenous spending-increment row, so spending returns to its baseline. Thereafter solve the full disturbed states through period 20, carrying the updated technology array. This creates an economic direction through solved states instead of selecting an isolated wealth or bill coordinate.

All responses are (disturbed−own baseline)/initial spending increment, in level units per unit of real spending. They are not baseline percentages. The government spending response is zero from period 10 onward. Quote reciprocity, foreign-exchange clearing, fixed gold and the converted world current account are checked from the returned states. The small inherited redundant bill residual is retained and reported rather than silently projected away.

region t Z1_xr Z1_v Z1_va Z2_va
25 Z1 9 -0.001920 0.575528 1.993140 0.143209
26 Z1 10 -0.002379 0.700258 0.620111 -0.148535
31 Z1 15 -0.003452 0.877200 0.482049 -0.662089
36 Z1 20 -0.005464 1.175663 0.670898 -0.959243
37 Z2 9 0.000531 -0.043133 0.052762 2.010170
38 Z2 10 0.000693 -0.062082 -0.027231 0.651583
43 Z2 15 0.001018 -0.159759 -0.134164 0.234888
48 Z2 20 0.001603 -0.279790 -0.188448 0.321926

The exchange-rate deviation grows in magnitude from period 10 to period 20 for both pulse origins. Repeating with a tenfold smaller pulse gives closely agreeing responses per unit of spending. This supplies finite-window evidence of amplification reachable by an economic disturbance; it is stronger evidence than a raw off-manifold eigenvector. It does not establish every mode’s economic feasibility or the absence of later recovery.

Ξ converts currencies correctly and influences the response

Rows of the input-output matrix identify the supplying good; columns identify the using sector. The RoW-origin/EU-use block of Ξ contains the reciprocal quote times the EU’s CIF tariff factor. The EU-origin/RoW-use block contains q times the RoW factor. Domestic blocks equal one. An asymmetric three-sector tariff test checks row recycling and regional orientation explicitly.

Independent reconstruction uses the cache’s lagged origin buyer prices and period-one references to rebuild intermediate Armington coefficients, then the current quote and tariffs to form Ξ. It solves the same production-price system with the empirical replacement matrix and recorded wage costs/profit rate. Maximum scaled price-reconstruction error at periods 10/20/50 is 1.53e-16.

For a fixed technique and fixed tariffs, changing only currency units is a diagonal similarity transformation of the converted cost matrix. With U=diag(1 for EU goods, q for RoW goods), C(q)=U⁻¹C(1)U. Rescaling wage costs by U must rescale prices by U. Tests from q=0.5 to q≈12,951 preserve the cost matrix’s spectral radius to 3.44e-15 and currency covariance to 1.28e-11. A large quote alone therefore does not change that matrix’s eigenvalues when technique/tariffs are held fixed; this does not hold the model’s evolving Armington technique fixed over time.

To measure the current-price channel, freeze only Ξ’s exchange-rate arguments at the period’s own cleared baseline quote, leaving every other current-quote reader active. The baseline mapping remains unchanged to below 10⁻¹² in scaled error. Central derivatives give:

t mode ratio_slope d_wealth1_dq d_va1_dq d_va2_dq d_cab1_dq
2 10 live_Xi -1.313034 -145.01628 -130.59765 244.41098 116.79076
5 10 frozen_current_Xi -1.639439 -58.27047 93.45104 -46.41837 105.59039
8 20 live_Xi -1.182276 -112.82317 -98.06883 215.00281 85.89829
11 20 frozen_current_Xi -1.474796 -49.41759 64.92183 -46.05259 77.87079

With live Ξ, a higher quote lowers EU money prices and raises RoW money prices at these states. Freezing Ξ removes that immediate price response and reverses the sign of the local nominal value-added derivatives. It also makes the clearing-ratio response more negative. Thus Ξ is an important transmission channel, but switching it off is not demonstrated to fix either the period solver or economic propagation.

Following the Ξ channel between periods

For the temporary pulses, a second diagnostic makes Ξ follow the unperturbed quote at each period, while the rest of the disturbed economy still solves at its own quote. The baseline path is preserved; the intervention removes Ξ’s response to deviations. This is a channel ablation, not an admissible alternative calibration: it deliberately breaks the production-price equation’s normal relation to the actual currency conversion. It must not become a canonical arm or a scenario comparator.

pulse_region period live_Xi_quote_response frozen_Xi_quote_response
Z1 10 -0.0023790 -0.0020374
Z1 20 -0.0054637 -0.0051930
Z2 10 0.0006928 0.0005941
Z2 20 0.0016032 0.0015242

Quote deviations per unit of temporary spending: the expenditure forcing is removed at period 10. Freezing Ξ is diagnostic surgery, not a calibrated model.

The exchange-rate amplification survives the Ξ ablation. Between periods 10 and 20 the absolute quote response grows by factors of 2.297 (EU pulse) and 2.314 (RoW pulse) with live Ξ, and by 2.549 and 2.566 when Ξ follows the reference path. The reference quote itself rises over this window, but by a smaller factor, so the quote deviations also grow relative to that quote. At period 20 the ablated quote responses are only about 5% smaller in magnitude, while the EU wealth responses change sign.

This is evidence against Ξ’s response to deviations being necessary for these early pulse amplifications. It is not a counterfactual rerun of the original divergence: the reference-path Ξ itself still changes with time. It neither identifies a sole cause of the original divergence nor establishes that removing currency conversion produces an economically acceptable model. Wealth revaluation, foreign equity, current accounts and fiscal/bank balances remain active in both calculations.

External equation mapping and remaining work

The independent research article by Carnevali identifies G&L 12.91FL as the fixed foreign-reserve condition, agreeing with the Leeds frozen foreign-bill reserves. This closes the narrower missing independent identification of that equation’s role. It is not a full retrieval/audit of the original textbook equation system. The original EViews companion download still returned HTTP 403. Carnevali, Metroeconomica, notes 3–4.

The supported next investigation is to impose the remaining financial constraints on the state representation, trace the observed price/activity disturbance through lagged substitution and fiscal/portfolio balances, and compare the products of changing transitions or longer admissible disturbed paths. Any stabilization experiment should use an isolated test configuration and preserve the accepted calibration. No enterprise-premium recalibration decision follows from the Ξ checks.

The previous report qmd/reports/2026-10-02-openflex-diagnostics-results.qmd remains a dated account of the full trajectory. This report supersedes its statements that custom-cache loading and early same-cache local calculations had not yet been implemented. The knowledge base should be refreshed through /update-project-context; this report does not rewrite it.

Reproduction and artifacts

Use --arm revised_openflex --rds output/scenarios/arms/revised_openflex/runs/baseline_theta1_sigma0.RDS --provenance output/calibration/openflex_decompose_20261002_provenance.json --out-dir output/calibration/openflex_local_20261002 on the context-based commands.

  • dependency_graph.R, then screen_lagged.R 10 / 20, then transition_matrix.R build 10 4 / 20 4 with --sweeps 130 --eps 1e-6.
  • openflex_local_summary.R <output directory> <period> and openflex_reduce_coordinates.R <output directory> <period> export spectra and the partial coordinate reduction.
  • openflex_local_feedback.R, openflex_feasible_pulse.R, openflex_xi_check.R and openflex_mode_precision.R produce the checks and responses above. Add --freeze-xi to the pulse entry point for the Ξ ablation.

All entry points live under R/dynamics/. Large local matrices stay in the separate output directory; durable numerical tables and provenance accompany this report. No publication or coauthor message was made.