Impact Multipliers - imp
This sheet defines the impact multipliers used by the model: their names, ranges, sampling distributions, and the operation used to combine each multiplier with organization characteristics.
Terminology
| Term | Meaning |
|---|---|
Impact Differentiator |
The multiplier name defined in this sheet. |
SOW |
State of the World. In implementation terms, this is the sampled multiplier value for a given differentiator and simulation. |
OC |
Organization Characteristic. This is the organization-specific value from the fos sheet for the same differentiator. |
Accepted Structure
Example:
| Impact Differentiator | Min | Max | Distribution | Weight Type | Category |
|---|---|---|---|---|---|
| Hedginess | 0.2 | 2.5 | lognormal | OC ^ SOW | WorldModel |
| FundingAdditionality | 0.4 | 2.0 | lognormal | SOW x OC | Funding |
| PolicyAdditionality | 0.6 | 1.4 | normal | SOW x OC | Intervention |
| DiscountAllYears | 0.95 | 0.95 | normal | TempModifier-Compounded | Time |
| CruxMultiplier | 1.0 | 1.0 | unity | SOW x OC | Derived |
Recognized columns:
| Column | Required | Meaning |
|---|---|---|
Impact Differentiator |
Yes | Multiplier name. Spaces and dots are removed internally for matching. |
Min |
Yes | Lower numeric input used by the distribution. Its exact meaning depends on Distribution. |
Max |
Yes | Upper numeric input used by the distribution. Its exact meaning depends on Distribution. |
Distribution |
Yes | Distribution family. See supported values below. |
Weight Type |
No | User-facing alias for the internal Type column. |
Category |
No | Optional metadata used by some downstream grouping utilities and plots; it is not part of the core sampling logic. |
Supported Distributions
The current parser accepts these distribution labels:
| Distrib name | Description | Min/Max application |
|---|---|---|
normal |
Samples from a normal distribution whose 5th percentile is Min and 95th percentile is Max. |
Interpreted as p05 and p95, not as hard bounds. |
lognormal |
Samples from a lognormal distribution whose 5th percentile is Min and 95th percentile is Max. |
Interpreted as p05 and p95 on the original scale, not as hard bounds. Bounds must be strictly positive unless Min = Max, in which case the row is treated as a constant. |
uniform |
Samples uniformly between two endpoints. | Used as literal lower and upper bounds. |
custom |
Reads empirical values from a separate sheet whose name matches the normalized Impact Differentiator, then samples from that empirical distribution. |
Used only to filter the empirical values before sampling. |
formula |
Placeholder distribution for multipliers computed from the formulas sheet rather than sampled directly. |
Not used for formula-based multipliers. |
unity |
Always returns 1. |
Ignored. |
Important note:
- If
Min = Maxfor a sampled distribution such asnormal,lognormal, oruniform, the engine treats the multiplier as a constant internally. This does not apply tocustom,formula, orunity. - For
normal, the engine solves formeanandsdso thatqnorm(0.05, mean, sd) = Minandqnorm(0.95, mean, sd) = Max. - For
lognormal, the engine solves formeanlogandsdlogso thatqlnorm(0.05, meanlog, sdlog) = Minandqlnorm(0.95, meanlog, sdlog) = Max.
Supported Weight Types
The current parser accepts these multiplier types:
SOW x OCOC ^ SOWSOW ^ OCTempModifier-CompoundedTempModifier-SingleYearUtilityDeclineParameter
How these types are used:
| Type | Role in the model |
|---|---|
SOW x OC |
Used in the base expected-value calculation. |
OC ^ SOW |
Used in the base expected-value calculation. |
SOW ^ OC |
Used in the base expected-value calculation. |
TempModifier-Compounded |
Applied later when expected values are propagated across years. |
TempModifier-SingleYear |
Applied later as a year-specific adjustment when expected values are propagated across years. |
UtilityDeclineParameter |
Used later in bracket-level utility adjustment for portfolio optimization. |
See Expected Value Computation for a fuller explanation of:
- how
SOW x OC,OC ^ SOW, andSOW ^ OCfeed into base expected values, - how temporal modifiers affect later years, and
- how
UtilityDeclineParameterinteracts with bracket-level utility adjustment.
Defaults And Backward Compatibility
- If
Weight Typeis missing, the parser defaults non-temporal rows toSOW x OC. - The parser accepts several user-written aliases such as
OC x SOW,sow*oc,Multiplier, andExponent, then normalizes them to the current internal type labels. - Older templates may still use
Class; the parser recognizes temporal modifier values there and maps them intoWeight Typewith a warning. - If no compounded temporal modifier exists, the engine adds a default row equivalent to
TempModifier-Compounded = 1. - If an unknown weight type is supplied, the parser warns and replaces it with
SOW x OC.
Validation Behavior
The parser currently does the following:
- Removes duplicate
Impact Differentiatorrows, keeping the first occurrence and recording an error. - Rejects multiple
TempModifier-Compoundedrows. - Rejects multiple
UtilityDeclineParameterrows. - Reads custom distributions only for rows where
Distribution = custom. - Keeps
Categoryif it exists.
Notes For Agents
- Internal matching is name-normalized: spaces and dots are removed from
Impact Differentiatorvalues. Categoryis preserved inmultiplier_rangeand is used by some category-based helper functions and plots, but not by the core multiplier-generation logic.- For
custom, the engine looks for a separate sheet with name equal to the normalizedImpact Differentiator. - Formula-generated multipliers can be added later if they are referenced from the
fossheet; if a formula-generated multiplier reuses an existing multiplier name, the formula overrides the original distribution. - The app preview shows this sheet under the
Multiplierssection