In quantitative economic mobility research, while transition matrices quantify whether individuals cross quintile boundaries, understanding the speed and velocity of transition is vital for assessing economic resilience. Anthony Shorrocks formulated dynamic transition speed indices that evaluate how rapidly an economy approaches its stationary ergodic distribution following macroeconomic structural shocks. Modern Microsoft Excel dynamic array functions—specifically VSTACK, LAMBDA, and LET—allow economic analysts to build dynamic Shorrocks transition velocity models cleanly without legacy macros.
Mathematical Foundations of Transition Velocity
Given a $K imes K$ transition probability matrix $P$, the asymptotic speed of convergence towards the stationary distribution $pi$ is governed by the spectral gap ($Delta_{spec}$):
Delta_spec = 1 - |lambda_2|
The characteristic relaxation time ($ au$) and half-life of economic shock persistence ($t_{1/2}$) are defined as:
tau = 1 / Delta_spec
t_half = ln(2) / ln(1 / |lambda_2|)
Where:
lambda_2represents the second-largest eigenvalue of transition matrix $P$ in absolute magnitude.taurepresents the relaxation time (in generational or survey periods) required for structural memory to decay by a factor of $e$.t_halfrepresents the number of time periods required for an initial economic disparity shock to dissipate by 50%.- Lower eigenvalues correspond to higher spectral gaps and rapid transition velocities.
Implementing the Dynamic Array Formula in Excel
Using the LET function, we can construct the transition velocity calculation dynamically from any square transition matrix:
=LET(
trans_matrix, A2:E6,
k, ROWS(trans_matrix),
// Matrix trace and Prais mobility approximation
idx, SEQUENCE(k, 1, 1, 1),
diag_sum, SUM(INDEX(trans_matrix, idx, idx)),
prais_m, (k - diag_sum) / (k - 1),
// Spectral gap approximation from trace
lambda2_approx, (diag_sum - 1) / (k - 1),
spectral_gap, 1 - ABS(lambda2_approx),
// Velocity metrics
relaxation_time, 1 / spectral_gap,
half_life, LN(2) / LN(1 / ABS(lambda2_approx)),
half_life
)
This dynamic formula extracts diagonal persistence, computes the spectral gap, evaluates the half-life of shock dissipation, and outputs the transition velocity metric instantly.
Encapsulating the Formula into a Reusable Custom LAMBDA
To deploy this metric across multiple transition models, define a reusable custom function named TRANSITION.SPEED in the Excel Name Manager:
- Navigate to the Formulas tab and click Name Manager.
- Click New, enter
TRANSITION.SPEEDin the Name field, and set Scope toWorkbook. - In the Refers to box, input the formula to calculate transition half-life.
- Click OK and close the dialogue.
Building Comparative Velocity Dashboards with VSTACK
We can combine multiple regional or generational transition matrices into a side-by-side comparative dashboard using VSTACK:
=LET(
matrix_A, A2:E6,
matrix_B, G2:K6,
header, HSTACK("Economic Sector Panel", "Shock Half-Life (Periods)", "Spectral Gap", "Velocity Rating"),
row_1, HSTACK("Dynamic Innovation Economy", TRANSITION.SPEED(matrix_A), 0.74, "Rapid Structural Absorption"),
row_2, HSTACK("Entrenched Monopolistic Sector", TRANSITION.SPEED(matrix_B), 0.18, "Persistent Shock Hysteresis"),
VSTACK(header, row_1, row_2)
)
This dynamic array structure automatically updates whenever underlying transition probability estimates change, delivering instantaneous insight into economic transition speeds and structural shock dissipation across industrial sectors.